> ## Documentation Index
> Fetch the complete documentation index at: https://docs.interchange.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Confirm Media Company identity and billing country

> Confirms or corrects the proposed company name and domain, confirms the ISO billing country of the contracting company, and records baseline Terms of Service acceptance and Privacy Policy disclosure, all in one call. Reusing the verified sign-up email domain marks identity VERIFIED; any other domain is recorded as an unverified applicant claim. The billing country is the sole input to the derived plan currency (`billingMarket.derivedPlanCurrency`) — there is no currency picker and no silent USD fallback. An unsupported country returns 422 with `code: BILLING_COUNTRY_UNSUPPORTED` instead of a currency.



## OpenAPI

````yaml /v2/storefront-api-v2.yaml post /media-company-intake/confirm
openapi: 3.0.0
info:
  title: Scope3 Storefront API
  version: 2.0.0
  description: >-
    REST API for partners to manage Seller Accounts, inventory sources, and
    billing.


    ## Authentication


    All endpoints require a Bearer token in the Authorization header:

    ```

    Authorization: Bearer your-api-key

    ```


    ## Base URL


    `https://api.interchange.io/api/v2/storefront`


    ## For AI Agents


    AI agents can use the MCP endpoint at `/mcp/v2/storefront` with three tools:

    - `initialize`: Start an MCP session

    - `api_call`: Make REST API calls

    - `ask_about_capability`: Learn about API features
servers:
  - url: https://api.interchange.io/api/v2/storefront
    description: Production server
security: []
tags:
  - name: Account
    description: Account management, service tokens, and preferences
  - name: Asks
    description: >-
      What you are waiting on Scope3 for — support, product, and supply asks in
      one list
  - name: Storefront
    description: Manage storefront and inventory sources
  - name: Storefront Agents
    description: List and manage registered sales, signals, and outcomes agents
  - name: Storefront Activity
    description: Audit log of configuration and inventory changes on the storefront
  - name: Storefront Billing
    description: Payout bank details and billing configuration for Seller Accounts
  - name: AI Usage
    description: Seller Account AI token usage visibility by model
  - name: MCP
    description: Model Context Protocol endpoints
paths:
  /media-company-intake/confirm:
    servers:
      - url: https://api.interchange.io/api/v2
        description: Production server
    post:
      tags:
        - Account
      summary: Confirm Media Company identity and billing country
      description: >-
        Confirms or corrects the proposed company name and domain, confirms the
        ISO billing country of the contracting company, and records baseline
        Terms of Service acceptance and Privacy Policy disclosure, all in one
        call. Reusing the verified sign-up email domain marks identity VERIFIED;
        any other domain is recorded as an unverified applicant claim. The
        billing country is the sole input to the derived plan currency
        (`billingMarket.derivedPlanCurrency`) — there is no currency picker and
        no silent USD fallback. An unsupported country returns 422 with `code:
        BILLING_COUNTRY_UNSUPPORTED` instead of a currency.
      operationId: confirmMediaCompanyIdentity
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                expectedRevision:
                  type: integer
                  minimum: 1
                  maximum: 9007199254740991
                companyName:
                  type: string
                  minLength: 1
                  maxLength: 320
                companyDomain:
                  type: string
                  maxLength: 253
                  pattern: >-
                    ^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)+$
                billingCountryAlpha2:
                  type: string
                  minLength: 2
                  maxLength: 2
                operatingMode:
                  type: string
                  enum:
                    - LISTING_ONLY
                    - AGENTIC_MEDIA_COMPANY
                acceptedTermsOfService:
                  type: boolean
                  enum:
                    - true
              required:
                - expectedRevision
                - companyName
                - companyDomain
                - billingCountryAlpha2
                - acceptedTermsOfService
      responses:
        '200':
          description: Confirm Media Company identity and billing country
          content:
            application/json:
              schema:
                type: object
                properties:
                  applicationId:
                    type: string
                  expectedRevision:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                  status:
                    type: string
                    enum:
                      - AWAITING_IDENTITY_CONFIRMATION
                      - RESEARCHING
                      - NEEDS_APPLICANT_INPUT
                      - EXCEPTION_REVIEW
                      - APPROVED
                      - DENIED
                  identity:
                    type: object
                    properties:
                      proposedName:
                        type: string
                      proposedDomain:
                        type: string
                      confirmedName:
                        nullable: true
                        type: string
                      confirmedDomain:
                        nullable: true
                        type: string
                      verificationState:
                        nullable: true
                        type: string
                        enum:
                          - VERIFIED
                          - CLAIMED
                          - CONFLICTING
                      userConfirmed:
                        type: boolean
                    required:
                      - proposedName
                      - proposedDomain
                      - confirmedName
                      - confirmedDomain
                      - verificationState
                      - userConfirmed
                    additionalProperties: false
                  billingMarket:
                    type: object
                    properties:
                      suggestedCountryAlpha2:
                        nullable: true
                        type: string
                      confirmedCountryAlpha2:
                        nullable: true
                        type: string
                      userConfirmed:
                        type: boolean
                      derivedPlanCurrency:
                        nullable: true
                        type: string
                        enum:
                          - USD
                          - EUR
                          - GBP
                          - AUD
                    required:
                      - suggestedCountryAlpha2
                      - confirmedCountryAlpha2
                      - userConfirmed
                      - derivedPlanCurrency
                    additionalProperties: false
                  operatingMode:
                    nullable: true
                    type: string
                    enum:
                      - LISTING_ONLY
                      - AGENTIC_MEDIA_COMPANY
                  unresolvedQuestion:
                    nullable: true
                    type: string
                required:
                  - applicationId
                  - expectedRevision
                  - status
                  - identity
                  - billingMarket
                  - operatingMode
                  - unresolvedQuestion
                additionalProperties: false
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: >-
            expectedRevision does not match the current durable revision
            (optimistic-concurrency conflict).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: The confirmed billing country is not yet supported for plan billing.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - bearerAuth: []
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        data:
          type: string
          nullable: true
          enum:
            - null
        error:
          $ref: '#/components/schemas/ApiError'
      required:
        - data
        - error
      additionalProperties: false
      description: Standard error response
    ApiError:
      type: object
      properties:
        code:
          type: string
          description: Machine-readable error code
        message:
          type: string
          description: Human-readable error message
        field:
          description: Field path associated with the error
          type: string
        details:
          description: Additional error context
          type: object
          additionalProperties: {}
      required:
        - code
        - message
      additionalProperties: false
      description: Structured error object
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key or access token

````