Overview
Sandbox mode lets you exercise the full Scope3 media buying workflow — advertiser creation, account registration, campaign execution — without triggering real platform operations or real spend. All ADCP calls for a sandbox advertiser route through the ADCP sandbox environment automatically.Safe Integration Testing
Validate your agent workflows end-to-end before going live. No real bids, no real spend.
Full Workflow Coverage
Sandbox follows the same code paths as production — advertiser, account registration, and media buy execution.
How It Works
When a sandbox advertiser executes a media buy, the API automatically:- Detects the advertiser is sandboxed via the
seat_sandboxrecord - Verifies the sales agent declares sandbox support in
get_adcp_capabilities - Looks up the registered sandbox account for the sales agent
- Injects the sandbox
account_idinto the ADCPcreate_media_buyrequest
account reference (sandbox or production) and includes it in every get_media_buy_delivery call. This ensures delivery data is fetched from the correct environment and prevents sandbox results from appearing alongside production data.
Creating a Sandbox Advertiser
Via API
Setsandbox: true in the create advertiser request body:
Via UI
When creating an advertiser in the dashboard, toggle the Sandbox switch before saving. Sandbox advertisers are shown with a badge in the advertiser list for easy identification.Registering a Sandbox Account
Before executing media buys, a sandbox credential must be registered for the sales agent. Use the standard account registration endpoint, passing the sandbox advertiser’s ID asadvertiserId. The API reads the advertiser’s sandbox flag and marks the credential as sandbox automatically.
| Field | Required | Description |
|---|---|---|
advertiserId | Yes | The numeric advertiser seat ID. The API validates ownership and reads the sandbox flag. |
accountIdentifier | Yes | The account identifier recognized by the sales agent. |
auth | Depends | Auth credentials. Required for API_KEY/JWT agents; omit for OAUTH (redirect flow). |
list_accounts, they are stored in adcp_agent_accounts with sandbox = true and used automatically during media buy execution. Sandbox accounts are strictly isolated — a sandbox advertiser can only link sandbox accounts, and a production advertiser can only link production accounts.
The sales agent must declare sandbox support in
get_adcp_capabilities (via the extensions array or _raw.sandbox field). Media buy execution will fail if the agent does not support sandbox mode.Executing Media Buys in Sandbox
Once a sandbox account is registered, media buy execution is identical to production — the API handles sandbox routing transparently:- Reads the
seat_idfrom the media buy record - Checks
seat_sandbox— detectssandbox: true - Calls
get_adcp_capabilitieson the sales agent (cached 24 h) — verifies the agent declares sandbox support via theextensionsarray or_raw.sandboxfield - Queries
adcp_agent_accounts(joined throughadcp_agent_credentials) for an active sandbox account for the sales agent - Injects
account_idinto the ADCPcreate_media_buyrequest
Identifying and Filtering Sandbox Advertisers
Thesandbox field is returned on every advertiser response. Use the optional sandbox query parameter to filter the list:
Product Discovery in Sandbox
Product discovery (GET /bundles/discover-products) also respects sandbox status. When a sandbox advertiser is passed as advertiserId, the API:
- Calls
sync_accounts(forimplicit_from_syncagents) with the sandbox credential to ensure the seller has provisioned an account for that advertiser - Looks up the registered sandbox
account_idfor each eligible sales agent - Injects that
account_idinto theget_productsADCP call
get_adcp_capabilities are automatically excluded from product discovery results for sandbox advertisers. This ensures only sandbox-capable agents surface products during integration testing.
Key Constraints
| Constraint | Detail |
|---|---|
| Immutable flag | sandbox cannot be changed after creation |
| Agent capability required | The sales agent must declare sandbox support in get_adcp_capabilities |
| Sandbox account required | Media buy execution fails explicitly if no sandbox account is discovered |
| Strict account isolation | Sandbox accounts are tracked via sandbox = true in adcp_agent_accounts. A sandbox advertiser can only list and link sandbox accounts; a production advertiser can only list and link production accounts. |
| Delivery scoped to account | get_media_buy_delivery always includes the resolved account reference — sandbox advertisers get their sandbox account_id, production advertisers get their production account. |
| Full workflow required | You must register a credential and have accounts discovered before executing media buys |