Skip to main content

Overview

By default, the Arcus API returns only references (UUIDs) for related resources. Use ?expand[]=<field> to hydrate those references inline in a single request, eliminating N+1 API calls. This is identical to Stripe’s expand behavior.

Basic usage

Response comparison

Multiple expansions

Pass expand[] multiple times to hydrate multiple fields:

Nested expansion

Use dot notation to expand nested relations (up to 4 levels deep):

List endpoints: the data. prefix

On list endpoints, all expand paths require the data. prefix:
Omitting the data. prefix on a list endpoint returns 400 Bad Request with code: invalid_expand_list_requires_data_prefix.

Limits

Scope requirements

Each expand path requires the corresponding read scope on your API key. For example, expanding customer on an order requires the accounts:read scope. Missing scope returns 403 Forbidden with code: insufficient_scope and required: accounts:read.

SDK usage

Available expand paths per resource

Valid expand paths are documented on each endpoint’s reference page under the Expandable fields section. Requesting an invalid path returns 400 Bad Request with code: invalid_expand_unknown_field and a list of valid paths.