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

# Web component settings

> Retrieve the web-components display settings for the storefront, grouped into layout, labels, collection, product, checkout, cart, product display, account and tracking option groups.



## OpenAPI

````yaml /api-reference/openapi.json get /settings/components
openapi: 3.0.0
info:
  title: Marzipan API
  version: 1.0.0
servers:
  - url: https://api.marzipan.co/v1
security:
  - tenantAuth: []
tags:
  - name: Account
    description: >-
      Account management endpoints including registration, login, and user
      details
  - name: Carts
    description: Shopping cart management endpoints
  - name: Products
    description: Product catalog and search endpoints
  - name: Subscriptions
    description: Subscription management and renewal endpoints
  - name: CMS
    description: Content management system endpoints
  - name: Messaging
    description: Message and communication endpoints
  - name: Search
    description: Search functionality endpoints
  - name: Settings
    description: >-
      Storefront settings and market detection used to configure the web
      components and checkout.
  - name: Analytics
    description: Storefront visit and attribution tracking.
  - name: Rewards
    description: >-
      Loyalty and rewards programme endpoints for the authenticated customer,
      covering points balance, tier status, perks, exclusive products and
      transaction history.
  - name: Forms
    description: Render and submit dynamic storefront forms defined in the CMS.
  - name: Events
    description: >-
      Check event availability, browse occurrences and recurring dates, generate
      ticket QR codes, and manage event waitlists (join, leave, check status,
      and claim promoted spots).
paths:
  /settings/components:
    get:
      tags:
        - Settings
      summary: Web component settings
      description: >-
        Retrieve the web-components display settings for the storefront, grouped
        into layout, labels, collection, product, checkout, cart, product
        display, account and tracking option groups.
      parameters: []
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebComponentSettings'
              example:
                cssVariables:
                  '--mz-primary-color': '#111827'
                  '--mz-radius': 0.5rem
                layout:
                  collectionColumnsMobile: 2
                  collectionColumnsTablet: 3
                  collectionColumnsDesktop: 4
                  logoPosition: left
                  logoHeight: 3rem
                  productCardStyle: minimal
                  productCardAlignment: center
                  productImageRadius: 0.5rem
                labels:
                  subscriberPriceLabel: Subscriber price
                  saleBadgeText: Sale
                  subscriberBadgeText: null
                  addToCartText: Add to cart
                  bundleText: null
                  waitlistText: null
                  salesClosedText: Tickets no longer available
                  showMoreText: null
                  backInStockText: Notify me when available
                collection:
                  columnsMobile: 2
                  columnsTablet: 3
                  columnsDesktop: 4
                  productCardStyle: minimal
                  productCardAlignment: center
                  productImageRadius: 0.5rem
                  showQuantity: false
                  showMoreLink: null
                  showDescription: null
                  showSubscriberPricing: null
                  redirectToCart: false
                product:
                  backInStockEnabled: true
                  showSubscriberPricing: null
                  showQuantity: null
                  redirectToCart: false
                checkout:
                  logoPosition: left
                  logoHeight: 3rem
                  phoneRequired: false
                  referralSources:
                    enabled: true
                    allowOther: true
                    options:
                      - label: Instagram
                        followUp: null
                      - label: Friend
                        followUp: Who referred you?
                cart:
                  relatedProductsEnabled: true
                  relatedProductsCount: 4
                  relatedProductsTitle: You may also like
                  freeShippingNotificationEnabled: true
                  freeShippingMessages:
                    qualified: You've unlocked free shipping!
                  freeShippingThresholds:
                    9b1c2d3e-4f5a-6b7c-8d9e-0a1b2c3d4e5f: 5000
                  backgroundEnabled: false
                  backgroundColor: '#ffffff'
                  borderEnabled: false
                  borderColor: '#e5e7eb'
                productDisplay:
                  quickAttributes:
                    enabled: true
                    maxCount: 4
                    maxLength: 30
                    attributeNames:
                      - Weight
                      - Origin
                  accordion:
                    enabled: true
                    sections:
                      - id: ingredients
                        title: Ingredients
                        type: attribute
                        enabled: true
                        attributeNames: []
                        attributeName: ingredients
                        textContent: null
                        defaultOpen: false
                  sections:
                    - id: reviews
                      enabled: true
                    - id: awards
                      enabled: true
                    - id: press
                      enabled: true
                  thumbnailPosition: side
                  showImageOverlay: true
                  billingFrequencyStyle: worded
                  events:
                    defaultView: list
                    occurrenceCount: 14
                account:
                  subscriptionUpsell:
                    enabled: false
                    collectionId: null
                    heading: null
                    message: null
                    columns:
                      mobile: 1
                      tablet: 2
                      desktop: 3
                tracking:
                  fathomSiteId: ABCDEFGH
components:
  schemas:
    WebComponentSettings:
      type: object
      description: >-
        Web-component display settings for the tenant's storefront, grouped by
        area. Nested option groups control styling and behaviour of the
        embeddable components.
      properties:
        cssVariables:
          type: object
          additionalProperties:
            type: string
          description: >-
            CSS custom properties applied to the web components (colours, radii,
            fonts, etc.).
        layout:
          type: object
          description: Legacy layout options, retained for backward compatibility.
          properties:
            collectionColumnsMobile:
              type: integer
            collectionColumnsTablet:
              type: integer
            collectionColumnsDesktop:
              type: integer
            logoPosition:
              type: string
            logoHeight:
              type: string
            productCardStyle:
              type: string
            productCardAlignment:
              type: string
            productImageRadius:
              type: string
        labels:
          type: object
          description: Shared, site-wide display label strings.
          properties:
            subscriberPriceLabel:
              type: string
              nullable: true
            saleBadgeText:
              type: string
              nullable: true
            subscriberBadgeText:
              type: string
              nullable: true
            addToCartText:
              type: string
              nullable: true
            bundleText:
              type: string
              nullable: true
            waitlistText:
              type: string
              nullable: true
            salesClosedText:
              type: string
              nullable: true
            showMoreText:
              type: string
              nullable: true
            backInStockText:
              type: string
              nullable: true
        collection:
          type: object
          description: Collection component layout and behaviour.
          properties:
            columnsMobile:
              type: integer
            columnsTablet:
              type: integer
            columnsDesktop:
              type: integer
            productCardStyle:
              type: string
            productCardAlignment:
              type: string
            productImageRadius:
              type: string
            showQuantity:
              type: boolean
            showMoreLink:
              type: string
              nullable: true
            showDescription:
              type: boolean
              nullable: true
            showSubscriberPricing:
              type: boolean
              nullable: true
            redirectToCart:
              type: boolean
        product:
          type: object
          description: Product component behaviour.
          properties:
            backInStockEnabled:
              type: boolean
            showSubscriberPricing:
              type: boolean
              nullable: true
            showQuantity:
              type: boolean
              nullable: true
            redirectToCart:
              type: boolean
        checkout:
          type: object
          description: Checkout component options.
          properties:
            logoPosition:
              type: string
            logoHeight:
              type: string
            phoneRequired:
              type: boolean
            referralSources:
              type: object
              nullable: true
              description: >-
                Referral-source ('how did you hear about us') configuration, or
                null when disabled.
              properties:
                enabled:
                  type: boolean
                allowOther:
                  type: boolean
                options:
                  type: array
                  items:
                    type: object
                    properties:
                      label:
                        type: string
                      followUp:
                        type: string
                        nullable: true
        cart:
          type: object
          description: >-
            Cart component options, including related products and free-shipping
            notifications.
          properties:
            relatedProductsEnabled:
              type: boolean
            relatedProductsCount:
              type: integer
            relatedProductsTitle:
              type: string
              nullable: true
            freeShippingNotificationEnabled:
              type: boolean
            freeShippingMessages:
              type: object
            freeShippingThresholds:
              type: object
              description: >-
                Map of market id to free-shipping threshold in minor units
                (integer), or null.
              additionalProperties:
                type: integer
                nullable: true
            backgroundEnabled:
              type: boolean
            backgroundColor:
              type: string
            borderEnabled:
              type: boolean
            borderColor:
              type: string
        productDisplay:
          type: object
          description: >-
            Product detail display configuration (quick attributes, accordion
            sections, events).
          properties:
            quickAttributes:
              type: object
              properties:
                enabled:
                  type: boolean
                maxCount:
                  type: integer
                maxLength:
                  type: integer
                attributeNames:
                  type: array
                  items:
                    type: string
            accordion:
              type: object
              properties:
                enabled:
                  type: boolean
                sections:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                      title:
                        type: string
                      type:
                        type: string
                      enabled:
                        type: boolean
                      attributeNames:
                        type: array
                        items:
                          type: string
                      attributeName:
                        type: string
                        nullable: true
                      textContent:
                        type: string
                        nullable: true
                      defaultOpen:
                        type: boolean
            sections:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                  enabled:
                    type: boolean
            thumbnailPosition:
              type: string
            showImageOverlay:
              type: boolean
            billingFrequencyStyle:
              type: string
            events:
              type: object
              properties:
                defaultView:
                  type: string
                occurrenceCount:
                  type: integer
        account:
          type: object
          description: Customer account area options.
          properties:
            subscriptionUpsell:
              type: object
              properties:
                enabled:
                  type: boolean
                collectionId:
                  type: string
                  format: uuid
                  nullable: true
                heading:
                  type: string
                  nullable: true
                message:
                  type: string
                  nullable: true
                columns:
                  type: object
                  properties:
                    mobile:
                      type: integer
                    tablet:
                      type: integer
                    desktop:
                      type: integer
        tracking:
          type: object
          properties:
            fathomSiteId:
              type: string
              nullable: true
  securitySchemes:
    tenantAuth:
      type: http
      scheme: bearer
      description: >-
        Bearer authentication header of the form `Bearer <token>`, where
        `<token>` is your API token.
      bearerFormat: JWT

````