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

# Retrieve website

> Retrieves information about the current site, identified by the Client ID.
The response contains information about all the available offerings, configuration for the experiences
(e.g. paygates and buttons), and some other metadata.

<div class="flex items-baseline border-b pb-2.5 border-gray-100 dark:border-gray-800 w-full">
  <h4 class="flex-1 mb-0">Required Scopes</h4>
</div>

`capi:read` - Read access to Customer API resources


## OpenAPI

````yaml get /site
openapi: 3.1.0
info:
  title: FastAPI
  version: '2025-04-01'
servers:
  - url: /capi
security: []
paths:
  /site:
    get:
      tags:
        - Customer
      summary: Retrieve inventory available for sale.
      description: >-
        Retrieves information about the current site, identified by the Client
        ID.

        The response contains information about all the available offerings,
        configuration for the experiences

        (e.g. paygates and buttons), and some other metadata.
      operationId: retrieve-site
      parameters:
        - name: x-api-version
          in: header
          required: false
          schema:
            type: string
            format: date
            title: Customer API version
            description: The version of the Customer API you are using.
            default: '2025-04-01'
          description: The version of the Customer API you are using.
          examples:
            default:
              value: '2025-04-01'
        - name: x-supertab-client-id
          in: header
          required: true
          schema:
            title: Client Id
            type: string
            format: tagged_id
            examples:
              - live_client.4df706b5-297a-49c5-a4cd-2a10eca12ff9
              - test_client.4df706b5-297a-49c5-a4cd-2a10eca12ff9
          description: >-
            Your Client ID with Supertab. Used to identify the website on which
            Customer is making a Purchase.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Site'
        '401':
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: A codename for the error
                      message:
                        type: string
                        description: A human-readable error message
                type: object
                title: Unauthorized
              example:
                error:
                  message: Invalid authentication credentials
                  code: invalid_credentials
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: A codename for the error
                      message:
                        type: string
                        description: A human-readable error message
                type: object
                title: Forbidden
              example:
                error:
                  message: >-
                    The Bearer token does not match the x-supertab-client-id
                    header | Missing or invalid x-supertab-client-id | Invalid
                    subject type {request_subject_type} found,
                    {expected_token_type} expected
                  code: >-
                    client_id_mismatch | missing_or_invalid_x_supertab_client_id
                    | invalid_subject_type
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: A codename for the error
                      message:
                        type: string
                        description: A human-readable error message
                type: object
                title: Not Found
              example:
                error:
                  message: >-
                    Currency not found | No offering price found | Site not
                    found.
                  code: >-
                    currency_not_found | offering_price_not_found |
                    site_not_found
          description: Not Found
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: array
                    description: >-
                      A general error code and message accompanied by the list
                      of attributes that failed validation
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          description: A short generic error code
                        message:
                          type: string
                          description: A human-readable error message
                        errors:
                          type: array
                          description: A list of attributes that failed validation
                          items:
                            type: object
                            properties:
                              attribute:
                                type: string
                                description: >-
                                  The path to the attribute that failed
                                  validation
                              code:
                                type: string
                                description: >-
                                  An error code of this attribute's specific
                                  validation error
                              message:
                                type: string
                                description: >-
                                  A human-readable error message of this
                                  attribute's specific validation error
                type: object
                title: Validation Error
              example:
                error:
                  - code: validation_error
                    message: Validation Error
                    errors:
                      - attribute: query -> subject
                        code: missing
                        message: field required
      security:
        - oauth:
            - capi:read
components:
  schemas:
    Site:
      properties:
        name:
          type: string
          title: Name
          description: The name of the site
        url:
          type: string
          minLength: 1
          format: uri
          title: Url
          description: >-
            URL of the site. Supertab will not authenticate customers unless
            this matches the domain you are serving from.
          examples:
            - https://supertab.co
        auth_redirect_uri:
          type: string
          minLength: 1
          format: uri
          title: Auth Redirect Uri
          description: Passed to Supertab when authenticating customers on this site
          examples:
            - https://signon.supertab.co/auth-proxy
        logo_url:
          anyOf:
            - type: string
              minLength: 1
              format: uri
            - type: 'null'
          title: Logo Url
          description: The URL of the logo for this site provided to Supertab
        content_keys:
          items:
            type: string
          type: array
          title: Content Keys
          description: List of content_keys to use when checking entitlement to your site.
        offerings:
          items:
            $ref: '#/components/schemas/Offering'
          type: array
          title: Offerings
          description: >-
            Offerings are what is available for customers to purchase.


            You can define your available offerings in the [Supertab Business
            Portal](https://business.supertab.co/).
        experiences:
          items:
            $ref: '#/components/schemas/Experience'
          type: array
          title: Experiences
          description: >-
            When using Supertab to manage your sales UI, this list of
            experiences contains the information we use to display an Experience
            to your customers.
        test_mode:
          type: boolean
          title: Test Mode
          description: >-
            See Test Mode's
            [Documentation](https://docs.supertab.co/supertab-experiences/test-mode)
            for details
        white_label:
          type: boolean
          title: White Label
          description: >-
            Whether the merchant has the white-label option enabled. When True,
            Supertab surfaces (paywall, button, checkout) should render the
            white-labelled version with Supertab branding removed.
          default: false
      type: object
      required:
        - name
        - url
        - auth_redirect_uri
        - logo_url
        - content_keys
        - offerings
        - experiences
        - test_mode
        - white_label
      title: Site
      description: >-
        A site is any website, SaaS product or any other place you deploy
        Supertab.


        It is the top level object in your inventory and contains all offerings.
    Offering:
      properties:
        id:
          type: string
          title: Id
          examples:
            - offering.cf637646-71a4-430d-aaea-a66f1a48a83c
        description:
          type: string
          title: Description
          description: Customer facing name for the offering.
          examples:
            - 1 week access to theleek.com
        entitlement_details:
          anyOf:
            - $ref: '#/components/schemas/Entitlement'
            - type: 'null'
          description: >-
            Specifies the nature and duration of purchased entitlement.


            Where you have chosen to have Supertab manage entitlements for you,
            customer's purchasing such an offering will be granted entitlement
            to the content associated with the offering for the length of time
            specified.
          examples:
            - content_key: site.cf637646-71a4-430d-aaea-a66f1a48a83c
              duration: 1w
              is_recurring: false
            - content_key: site.cf637646-71a4-430d-aaea-a66f1a48a83c
              duration: 1M
              is_recurring: true
        price:
          $ref: '#/components/schemas/Price'
          description: >-
            The price of this offering.


            The available price is customer-aware when possible, Supertab
            restricts some customers to certain currencies depending on their
            location and prior interactions with Supertab.
        is_pay_now:
          type: boolean
          title: Is Pay Now
          description: >-
            Offering requires upfront payment, customer will be taken to
            checkout immediately on purchase.


            Used to control Call To Action during purchase confirmation.
        guest_checkout_available:
          type: boolean
          title: Guest Checkout Available
          description: >-
            Whether this offering is eligible for guest checkout in the
            displayed currency. When True, the frontend can initiate a guest
            checkout session for this offering.
      type: object
      required:
        - id
        - description
        - entitlement_details
        - price
        - is_pay_now
        - guest_checkout_available
      title: Offering
    Experience:
      properties:
        id:
          type: string
          title: Id
          description: The experience ID
          examples:
            - experience.cf637646-71a4-430d-aaea-a66f1a48a83c
        name:
          type: string
          title: Name
          description: The experience name
        type:
          $ref: '#/components/schemas/ExperienceType'
          description: >-
            The type of the experience, used by Supertab to determine how to
            display the experience UI
        offerings:
          items:
            type: string
            format: tagged_id
            examples:
              - offering.4df706b5-297a-49c5-a4cd-2a10eca12ff9
          type: array
          title: Offerings
          description: >-
            List of offering IDs attached to this experience.


            This includes all possible offerings sold by this experience,
            details of how to display these to customers are found in
            `ui_config`.
        configuration:
          $ref: '#/components/schemas/ExperienceConfiguration'
      type: object
      required:
        - id
        - name
        - type
        - offerings
        - configuration
      title: Experience
    Entitlement:
      properties:
        duration:
          type: string
          maxLength: 9
          minLength: 2
          pattern: ^\d*[s|m|h|d|w|M|y]$
          title: Duration
          description: |-
            Duration of the timepass, as `{length}{unit}`.

            Possible units:

            | **Directive** | **Meaning**   |
            | ------------- | ------------- |
            | y             | years         |
            | M             | months        |
            | w             | weeks         |
            | d             | days          |
            | h             | hours         |
            | m             | minutes       |
            | s             | seconds       |

            Examples:

            ```
            {
              // 1 year
              "duration": "1y",
              // 2 months
              "duration": "2M",
              // 3 weeks
              "duration": "3w",
              // 4 days
              "duration": "4d",
              // 5 hours
              "duration": "5h",
              // 6 minutes
              "duration": "6m",
              // 7 seconds
              "duration": "7s"
            }
            ```
        is_recurring:
          type: boolean
          title: Is Recurring
          description: Is entitlement sold on a recurring (subscription) basis
        content_key:
          type: string
          title: Content Key
          description: >-
            The content key being purchased, if you have chosen to have Supertab
            manage customer entitlement for you.
      type: object
      required:
        - duration
        - is_recurring
        - content_key
      title: Entitlement
      description: >-
        Specifies the nature and duration of purchased entitlement. Where you
        have chosen to have Supertab manage

        entitlements for you, customer's purchasing such an offering will be
        granted access to the content

        associated with the offering for the length of time specified.
    Price:
      properties:
        amount:
          type: integer
          title: Amount
          description: Price amount expressed in currency base units
          examples:
            - 50
        currency:
          $ref: '#/components/schemas/Currency'
          description: The price's currency
      type: object
      required:
        - amount
        - currency
      title: Price
      description: An amount of money
    ExperienceType:
      type: string
      enum:
        - basic_paygate
        - basic_supertab_button
        - rich_paygate
        - rich_supertab_button
      title: ExperienceType
    ExperienceConfiguration:
      properties:
        ui_config:
          additionalProperties: true
          type: object
          title: Ui Config
          description: Used by Supertab to control look, feel & branding
        on_close:
          anyOf:
            - type: string
            - type: 'null'
          title: On Close
          description: Used by Supertab to control experience dismissal behaviour
        upsells:
          items:
            $ref: '#/components/schemas/Upsell'
          type: array
          title: Upsells
          default: []
          deprecated: true
      type: object
      required:
        - ui_config
        - on_close
        - upsells
      title: ExperienceConfiguration
    Currency:
      properties:
        code:
          type: string
          title: Code
          description: ISO2417 currency code
          examples:
            - USD
        name:
          type: string
          title: Name
          description: Full name
          examples:
            - US Dollar
        symbol:
          type: string
          title: Symbol
          description: Unicode currency symbol
          examples:
            - $
        base_unit:
          type: integer
          title: Base Unit
          description: >-
            The relationship between the currency's minor and major unit.


            For most currencies including USD & EUR this will be `100`. For
            currencies which do not use decimals (e.g JPY) this will `1`
          examples:
            - 100
      type: object
      required:
        - code
        - name
        - symbol
        - base_unit
      title: Currency
      description: Supertab is available in many currencies.
    Upsell:
      properties:
        main_offering:
          type: string
          format: tagged_id
          title: Main Offering
          examples:
            - offering.4df706b5-297a-49c5-a4cd-2a10eca12ff9
        upsell_offering:
          type: string
          format: tagged_id
          title: Upsell Offering
          examples:
            - offering.4df706b5-297a-49c5-a4cd-2a10eca12ff9
        discount:
          type: number
          title: Discount
      type: object
      required:
        - main_offering
        - upsell_offering
        - discount
      title: Upsell
  securitySchemes:
    oauth:
      type: oauth2
      description: >-
        Supertab OAuth2 flow for CAPI. See
        [Authentication](/customer-api/authentication).
      flows:
        authorizationCode:
          scopes:
            capi:read: Access to view capi
            capi:write: Access to write for capi
          authorizationUrl: https://auth.supertab.co/oauth2/auth
          tokenUrl: https://auth.supertab.co/oauth2/token

````