The REST API is in beta. This endpoint’s response shape may change.
Request
Headers
Trialing customers retain full API access, including brokerage endpoints, regardless of trial plan.
Query parameters
Use the List Accounts endpoint to get account IDs. Mixing a brokerage
accountId into the request fails the entire request, not per-account. To tell banking and brokerage accounts apart, join each account’s connectionId to List Connections and check the connection’s category; route brokerage IDs to /v1/holdings.Response
Balances may be served from a short-lived server-side cache for up to 30 minutes; see Caching for purge and opt-out behaviour. Returned in the order the provider responds (iterates by provider, then by each provider’s response ordering, so accounts on different providers are interleaved per-provider); not guaranteed to match the input order.Balance object
Error responses
Errors use the standard envelope{ "error": { "message": string, "code"?: string, "details"?: string[] } }. The optional code field is set for the structured cases below — clients should branch on code rather than parsing message.
Example error body: