Skip to main content
POST /api/v2/media-company-intake/confirm The Media Company pre-application identity, seller-product, and billing-country Task (see Confirming your company) confirms four things in one call: the company name and domain, its mutable seller product, the ISO billing country of the contracting company, and baseline Terms of Service acceptance with Privacy Policy disclosure. This endpoint is gated to the early-access cohort enrolled in the media-company-intake rollout; an unenrolled caller never reaches it (see Start intake below). Reusing the sign-up email’s verified domain unedited marks identity VERIFIED; correcting the domain to anything else is recorded as an unverified applicant claim (CLAIMED) — never treated as proof of control. The billing country is the sole input to billingMarket.derivedPlanCurrency. There is no currency picker and no silent USD fallback: an unsupported country returns 422 BILLING_COUNTRY_UNSUPPORTED instead of a currency. operatingMode is LISTING_ONLY or AGENTIC_MEDIA_COMPANY. Listing is included in both choices. LISTING_ONLY lists and manages inventory without Scope3 merchandising, using an agent operated by the company, a partner, or another provider. The agent can be connected during setup; it does not need to exist at signup. AGENTIC_MEDIA_COMPANY adds Scope3’s hosted Merchandising Agent, which the company trains for its business; its inventory can come from an ad server, modular source, external Agent, or linked Storefront. The choice can be changed later in Account settings or with PATCH /api/v2/storefront. The initial capability state commits atomically with this intake revision. The intake response remains the original audit answer after onboarding; GET /api/v2/storefront is the authority for the current setting. It does not describe who authored an Agent, choose a package, or change how an individual inventory Source is treated.

Request

curl

Response

200 confirmed
A RESEARCHING status starts a short, usually few-second, admission check. Poll GET /api/v2/media-company-intake (below) to observe the transition to APPROVED or another terminal/interactive status; refreshing or re-calling this Task always resumes the same durable state rather than restarting it.

Errors

  • 400 VALIDATION_ERROR — malformed request body.
  • 403 FEATURE_NOT_ENABLED — the caller is not enrolled in Media Company intake.
  • 409 CONFLICT — either no intake application exists yet (call POST /api/v2/media-company-intake first) or expectedRevision does not match the current durable revision (optimistic-concurrency conflict — re-read with GET /api/v2/media-company-intake and retry with the current revision).
  • 422 BILLING_COUNTRY_UNSUPPORTED — the confirmed billing country is not yet supported for plan billing. The response includes the rejected countryAlpha2 in details; no currency is guessed.
See Errors for the full error contract.

Start or resume intake

POST /api/v2/media-company-intake is the Task’s idempotent open action — call it first to create (or replay) the durable application seeded from the verified sign-up email domain. It returns the same view shape as this endpoint’s 200 response above, and returns 403 FEATURE_NOT_ENABLED when the caller is not enrolled. GET /api/v2/media-company-intake reads the current durable state without creating one — use it to poll a RESEARCHING application, or to resume after a page refresh or re-login. Returns 404 NOT_FOUND when no application exists yet.

Storefront tasks

All core storefront operations.

Get readiness

Check whether your storefront is ready to go live, once admitted.