> ## 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.

# Get storefront liveness for accounts

> Batched storefront liveness for the requested seller customer ids — one derived verdict per storefront (setup, live, live_attention, or live_critical) computed from persisted signals, powering the per-storefront status dot in the account switcher. Ids the caller cannot access are silently omitted.



## OpenAPI

````yaml /v2/storefront-api-v2.yaml get /accounts/liveness
openapi: 3.0.0
info:
  title: Scope3 Storefront API
  version: 2.0.0
  description: |-
    REST API for partners to manage storefronts, 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: 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 storefronts
  - name: AI Usage
    description: Storefront AI token usage visibility by model
  - name: MCP
    description: Model Context Protocol endpoints
paths:
  /accounts/liveness:
    servers:
      - url: https://api.interchange.io/api/v2
        description: Production server
    get:
      tags:
        - Account
      summary: Get storefront liveness for accounts
      description: >-
        Batched storefront liveness for the requested seller customer ids — one
        derived verdict per storefront (setup, live, live_attention, or
        live_critical) computed from persisted signals, powering the
        per-storefront status dot in the account switcher. Ids the caller cannot
        access are silently omitted.
      operationId: getAccountsLiveness
      parameters:
        - in: query
          name: customerIds
          schema:
            description: >-
              Comma-separated seller customer ids to resolve liveness for (e.g.
              "123,456"). Ids the caller cannot access are silently omitted from
              the response; when absent or empty the response map is empty.
            type: string
          description: >-
            Comma-separated seller customer ids to resolve liveness for (e.g.
            "123,456"). Ids the caller cannot access are silently omitted from
            the response; when absent or empty the response map is empty.
      responses:
        '200':
          description: Get storefront liveness for accounts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorefrontLivenessBatchResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          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:
    StorefrontLivenessBatchResponse:
      description: >-
        Cheap, batched liveness verdicts for every storefront in the caller’s
        account list — powers the storefront switcher dot without one full
        readiness computation per storefront.
      type: object
      properties:
        liveness:
          description: >-
            Storefront liveness keyed by seller customer id (as a string).
            Entries are omitted for customer ids the caller cannot access or
            that have no storefront.
          type: object
          additionalProperties:
            $ref: '#/components/schemas/StorefrontLiveness'
      required:
        - liveness
      additionalProperties: false
    ErrorResponse:
      description: Standard error response
      type: object
      properties:
        data:
          type: string
          nullable: true
          enum:
            - null
        error:
          $ref: '#/components/schemas/ApiError'
      required:
        - data
        - error
      additionalProperties: false
    StorefrontLiveness:
      description: >-
        The projected storefront liveness verdict (AI-4698) — one derived status
        computed centrally and consumed by readiness, the seller-setup widget,
        and the storefront switcher.
      type: object
      properties:
        state:
          type: string
          enum:
            - setup
            - live
            - live_attention
            - live_critical
        reasonCode:
          type: string
          enum:
            - archived
            - paused_before_live
            - paused_after_live
            - setup_incomplete
            - settlement_ineligible
            - catalog_empty_live
            - go_live_requirement_regressed
            - degraded_source
            - trafficking_error
            - healthy
        reason:
          description: >-
            Human-readable line pairing with the dot, e.g. "Live — attention:
            pricing feed expires in 5 days" or "Not live — 2 steps remaining".
            Never shown without the dot naming the state (status-color-language
            rule 6).
          type: string
        remainingSteps:
          description: >-
            Open go-live blocker count, present only for state "setup". Null for
            every other state.
          nullable: true
          type: integer
          minimum: 0
          maximum: 9007199254740991
        actionPath:
          description: >-
            Application path (relative to the customer root, e.g.
            "/inventory-sources") of the surface that owns the fix, sourced from
            the readiness CHECK_ROUTING table. Null when the fix lives on the
            customer home surface (chat / seller-setup widget). Clients navigate
            to it; they never invent their own routing.
          nullable: true
          type: string
      required:
        - state
        - reasonCode
        - reason
        - remainingSteps
        - actionPath
      additionalProperties: false
    ApiError:
      description: Structured error object
      type: object
      properties:
        code:
          description: Machine-readable error code
          type: string
        message:
          description: Human-readable error message
          type: string
        field:
          description: Field path associated with the error
          type: string
        details:
          description: Additional error context
          type: object
          additionalProperties: {}
      required:
        - code
        - message
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key or access token

````