Get portfolio
The address and balance of every asset your api client is enabled for, in one call — what a portfolio screen needs instead of one /addresses call plus one /balance per asset. Takes no assetId.
One unavailable asset never fails the call: a balance that cannot be read comes back "0", and every other asset is still returned. So a "0" here is not proof the wallet is empty — confirm with /balance before acting on it. An asset with an empty address is on a chain that was unavailable when the user was created; backfill it with /extend.
Authentication
A 15-minute token from /auth. Required on every endpoint except /auth.
Headers
Correlation id. Generated if omitted, echoed on every response, and written to the audit log. /send is the exception — there it is required, and it doubles as the idempotency key.
Optional. When present it overrides any userId in the body.
Request
24-character hex id, returned by /create.
Response
Echo of the inbound X-Request-Id, or a generated one.