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

# List web domains

> Lists the authorized origins for the authenticated Account and key mode, oldest first.



## OpenAPI

````yaml /openapi/web_domains.yaml get /web_domains
openapi: 3.0.3
info:
  title: Ionic Web Domains API
  version: '2026-09-02'
  description: |
    Manage the website origins allowed to embed Ionic Checkout and register
    eligible domains for Apple Pay.

    Domains are scoped to the Account and to the secret key's test or live
    mode. Use a direct Account secret key; these endpoints do not accept the
    `Ionic-Account` header. A domain is an origin—scheme, host, and optional
    non-default port—not a full page URL. Public domains must use HTTPS; HTTP
    is accepted only for loopback development origins.
servers:
  - url: '{baseUrl}/v1'
    variables:
      baseUrl:
        default: https://api.ionicfi.com
        description: API base URL for your environment.
security:
  - secretKey: []
tags:
  - name: Web Domains
    description: Origins authorized for embedded checkout and browser SDK calls.
  - name: Apple Pay Domains
    description: Apple Pay registration state for an authorized web domain.
paths:
  /web_domains:
    get:
      tags:
        - Web Domains
      summary: List web domains
      description: >-
        Lists the authorized origins for the authenticated Account and key mode,
        oldest first.
      operationId: listWebDomains
      responses:
        '200':
          description: The Account's authorized web domains.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebDomainList'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/ReadForbidden'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          $ref: '#/components/responses/InternalError'
      security:
        - secretKey:
            - web_domains:read
components:
  schemas:
    WebDomainList:
      type: object
      additionalProperties: false
      required:
        - object
        - data
      properties:
        object:
          type: string
          enum:
            - list
        data:
          type: array
          items:
            $ref: '#/components/schemas/WebDomain'
    WebDomain:
      type: object
      additionalProperties: false
      required:
        - id
        - object
        - domain
        - livemode
        - apple_pay
      properties:
        id:
          type: string
          pattern: ^wd_[0-9A-Za-z]{14}$
        object:
          type: string
          enum:
            - web_domain
        domain:
          type: string
          description: Canonical browser origin.
          example: https://shop.example.com
        livemode:
          type: boolean
        apple_pay:
          $ref: '#/components/schemas/ApplePayDomainState'
        created_at:
          type: integer
          format: int64
          description: Unix epoch seconds.
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
          properties:
            code:
              type: string
            message:
              type: string
    ApplePayDomainState:
      type: object
      additionalProperties: false
      required:
        - status
      properties:
        status:
          type: string
          enum:
            - not_registered
            - pending
            - registered
            - failed
        registered_at:
          type: integer
          format: int64
          description: Unix epoch seconds of the successful registration.
        error:
          type: string
          description: >-
            Actionable reason supplied when the latest registration attempt
            failed.
  responses:
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    ReadForbidden:
      description: A direct Account key with `web_domains:read` is required.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    RateLimited:
      description: Too many requests.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    InternalError:
      description: Unexpected server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    secretKey:
      type: http
      scheme: bearer
      description: 'An Account secret key (`sk_…`) sent as `Authorization: Bearer <key>`.'

````