GET /api/v2/storefront/readiness
Checks whether your storefront is ready to go live. Returns blocking checks for
inventory sources, agent status, agent auth, and the confirmed settlement
currency (currency_confirmed), plus a per-source sourceDiagnostics[] array
used by setup surfaces. Poll this while you connect sources to see what is still
missing.
The currency_confirmed check is always a blocker and stays missing until you
set a settlement currency with PUT /api/v2/storefront { "defaultCurrency": "USD" } (ISO-4217). It is independent of Stripe billing — connecting Stripe
Connect does not satisfy it.
Request
curl
Response
Response fields
| Field | Type | Description |
|---|---|---|
platformId | string | Your storefront’s public slug |
status | enum | Overall readiness: ready or blocked |
checks[] | array | Top-level readiness checks (see below) |
sourceDiagnostics[] | array | Per-inventory-source diagnostics (see below) |
setupMode | object | null | Per-source composition classification and aggregate verdict used by setup surfaces. Fields: sources[], managedSalesAgents[], composition ({ required, sourceCount }), passthrough ({ sourceCount }), unknown ({ sourceCount }), recommendation ("composition" | "passthrough" | "mixed" | "undecided"). null when inference fails (e.g. cold cache). |
checks[]
| Field | Type | Description |
|---|---|---|
id, name, description, category | string | Check identity and grouping |
status | enum | complete, partial, missing, or optional. optional checks are explicitly skipped (e.g. billing in non-production) and never block |
isBlocker | boolean | Whether this check blocks going live |
method | string | How the check was evaluated. Optional |
details | string | Human-readable detail. Optional |
compliance[] | array | Per-agent compliance results (present on agent_connectivity checks) |
sourceDiagnostics[]
| Field | Type | Description |
|---|---|---|
id, sourceId | string | null | Surrogate id and storefront-scoped source id |
name | string | Inventory source display name |
executionType, sourceStatus | string | Source type and current source lifecycle status |
agentId, agentStatus, endpointUrl, protocol | string | null | Linked agent identity and transport |
auth | object | { required, configured, type } — whether auth is needed, set, and which type |
capabilities | object | Support state for products, createMediaBuy, updateMediaBuy, signals, wholesaleProducts — each supported, unsupported, or unknown |
productBuilder | object | null | { mode (composition|passthrough|unknown), wholesaleProductCount, signalCount, catalogCacheCold, declaredUnsupportedIngredients } |
compliance | object | null | { passed, summary, checkedAt, trackCounts: { total, passing, partial, failing } } |
debug | object | Sanitized capability metadata: advertised tools, supportedBillings, channels, publisherDomains, version, syntheticCapabilities, requireOperatorAuth |
lastActivity | object | null | Latest setup activity { action, resourceType, resourceId, resourceName, description, timestamp } |
health | object | { status (healthy|degraded|unhealthy|unknown), lastError, lastErrorCode, lastErrorAt, lastSuccessAt, lastCheckedAt } |
Errors
401 UNAUTHORIZED— missing or invalid bearer token.
Related
Storefront overview
Readiness, marketplace review, and AAO gating.
Inventory sources
Connect the sources readiness checks against.
Diagnose third-party sales agents
Interpret source health and recent ADCP activity.
Discover agents
Inspect the AAO registry for your operator domain.