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

# Get Promotion

> Returns a promotion by id

<Note>
  **OAuth scope:** `promotions_read`

  API keys have full access to this endpoint.
</Note>


## OpenAPI

````yaml GET /open-api/v1.0/promotions/{promotionId}
openapi: 3.1.0
info:
  title: Fourthwall APIs
  description: Service used for management of orders, carts, and payments.
  termsOfService: https://fourthwall.com/terms-of-service
  contact:
    name: Backend team
    url: https://fourthwall.com
    email: backend@fourthwall.com
  version: unspecified
servers:
  - url: https://api.fourthwall.com
    description: Production server
security: []
externalDocs:
  description: OpenAPI documentation
  url: https://docs.fourthwall.com
paths:
  /open-api/v1.0/promotions/{promotionId}:
    get:
      tags:
        - Promotions
      summary: Get a promotion by id
      description: Returns a promotion by id
      operationId: get-promotion
      parameters:
        - name: promotionId
          in: path
          required: true
          schema:
            type: string
          example: 00aa4abd-5778-4199-8161-0b49b2f212e5
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/com.fourthwall.openapi.model.promotions.AutoApplyingShopPromotionV1
                  - $ref: >-
                      #/components/schemas/com.fourthwall.openapi.model.promotions.MultiMembershipsPromotionV1
                  - $ref: >-
                      #/components/schemas/com.fourthwall.openapi.model.promotions.MultiShopPromotionV1
                  - $ref: >-
                      #/components/schemas/com.fourthwall.openapi.model.promotions.SingleMembershipsPromotionV1
                  - $ref: >-
                      #/components/schemas/com.fourthwall.openapi.model.promotions.SingleShopPromotionV1
        '400':
          description: 'Possible errors: `CHECKOUT_PROMOTION_DOES_NOT_EXISTS`'
          content:
            application/json:
              examples:
                checkout-promotion-does-not-exists:
                  value:
                    code: CHECKOUT_PROMOTION_DOES_NOT_EXISTS
                    id: <promotionid>
      security:
        - oauth:
            - promotions_read
        - basicAuth: []
      externalDocs:
        url: >-
          https://docs.fourthwall.com/api-reference/platform/promotions/get-promotion
components:
  schemas:
    com.fourthwall.openapi.model.promotions.AutoApplyingShopPromotionV1:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionV1
        - type: object
          properties:
            id:
              type: string
            title:
              type: string
            code:
              type: string
            discount:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FixedAmount
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeShipping
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.Percentage
            status:
              type: string
              enum:
                - Live
                - Ended
                - Archived
                - AllUsed
            requirements:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionRequirementsV1.Shop
            usageCount:
              type: integer
              format: int32
            limits:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionLimitsV1
            appliesTo:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrder
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrderWithExcludedProducts
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.SelectedProducts
            type:
              type: string
              const: SHOP_AUTO_APPLYING
      required:
        - appliesTo
        - code
        - discount
        - id
        - limits
        - requirements
        - status
        - title
        - type
        - usageCount
      title: Auto Applying Shop Promotion
    com.fourthwall.openapi.model.promotions.MultiMembershipsPromotionV1:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionV1
        - type: object
          properties:
            id:
              type: string
            title:
              type: string
            codes:
              type: array
              items:
                $ref: >-
                  #/components/schemas/com.fourthwall.openapi.model.promotions.MultiPromoSubCodeV1
            discount:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsDiscountTypeV1.Percentage
            status:
              type: string
              enum:
                - Live
                - Ended
                - Archived
                - AllUsed
            requirements:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionRequirementsV1.Memberships
            usageCount:
              type: integer
              format: int32
            subscriptionType:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AllMembers
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AnnualMembersOnly
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.MonthlyMembersOnly
            tiers:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.AllTiers
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.SelectedTiers
            type:
              type: string
              const: MEMBERSHIPS_MULTI
      required:
        - codes
        - discount
        - id
        - requirements
        - status
        - subscriptionType
        - tiers
        - title
        - type
        - usageCount
      title: Multi Memberships Promotion
    com.fourthwall.openapi.model.promotions.MultiShopPromotionV1:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionV1
        - type: object
          properties:
            id:
              type: string
            title:
              type: string
            codes:
              type: array
              items:
                $ref: >-
                  #/components/schemas/com.fourthwall.openapi.model.promotions.MultiPromoSubCodeV1
            discount:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FixedAmount
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeShipping
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.Percentage
            status:
              type: string
              enum:
                - Live
                - Ended
                - Archived
                - AllUsed
            requirements:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionRequirementsV1.Shop
            limits:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionLimitsV1
            usageCount:
              type: integer
              format: int32
            appliesTo:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrder
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrderWithExcludedProducts
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.SelectedProducts
            type:
              type: string
              const: SHOP_MULTI
      required:
        - appliesTo
        - codes
        - discount
        - id
        - limits
        - requirements
        - status
        - title
        - type
        - usageCount
      title: Multi Shop Promotion
    com.fourthwall.openapi.model.promotions.SingleMembershipsPromotionV1:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionV1
        - type: object
          properties:
            id:
              type: string
            code:
              type: string
            discount:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsDiscountTypeV1.Percentage
            status:
              type: string
              enum:
                - Live
                - Ended
                - Archived
                - AllUsed
            requirements:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionRequirementsV1.Memberships
            usageCount:
              type: integer
              format: int32
            subscriptionType:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AllMembers
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AnnualMembersOnly
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.MonthlyMembersOnly
            tiers:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.AllTiers
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.SelectedTiers
            type:
              type: string
              const: MEMBERSHIPS_SINGLE
      required:
        - code
        - discount
        - id
        - requirements
        - status
        - subscriptionType
        - tiers
        - type
        - usageCount
      title: Single Memberships Promotion
    com.fourthwall.openapi.model.promotions.SingleShopPromotionV1:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionV1
        - type: object
          properties:
            id:
              type: string
            code:
              type: string
            discount:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FixedAmount
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeShipping
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.Percentage
            status:
              type: string
              enum:
                - Live
                - Ended
                - Archived
                - AllUsed
            requirements:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionRequirementsV1.Shop
            usageCount:
              type: integer
              format: int32
            limits:
              $ref: >-
                #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionLimitsV1
            appliesTo:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrder
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrderWithExcludedProducts
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.SelectedProducts
            type:
              type: string
              const: SHOP_SINGLE
      required:
        - appliesTo
        - code
        - discount
        - id
        - limits
        - requirements
        - status
        - type
        - usageCount
      title: Single Shop Promotion
    com.fourthwall.openapi.model.promotions.PromotionV1:
      discriminator:
        propertyName: type
        mapping:
          SHOP_SINGLE:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.SingleShopPromotionV1
          SHOP_MULTI:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.MultiShopPromotionV1
          SHOP_AUTO_APPLYING:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.AutoApplyingShopPromotionV1
          MEMBERSHIPS_SINGLE:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.SingleMembershipsPromotionV1
          MEMBERSHIPS_MULTI:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.MultiMembershipsPromotionV1
      properties:
        type:
          type: string
      required:
        - type
      title: Promotion
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FixedAmount:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1
        - type: object
          properties:
            money:
              $ref: '#/components/schemas/Money'
            freeShipping:
              type: boolean
        - type: object
          properties:
            type:
              type: string
              const: FLAT_RATE
      required:
        - freeShipping
        - money
      title: Fixed Amount
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1
        - type: object
          properties:
            freeProductsType:
              oneOf:
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type.AutoAdded
                - $ref: >-
                    #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type.ManuallyAdded
            freeShipping:
              type: boolean
        - type: object
          properties:
            type:
              type: string
              const: FREE_PRODUCTS
      required:
        - freeProductsType
        - freeShipping
      title: Free Products
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeShipping:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1
        - type: object
          properties:
            lowestOnly:
              type: boolean
        - type: object
          properties:
            type:
              type: string
              const: FREE_SHIPPING
      required:
        - lowestOnly
      title: Free Shipping
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.Percentage:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1
        - type: object
          properties:
            percentage:
              type: number
            shippingOption:
              type: string
              enum:
                - Included
                - Excluded
                - Free
                - FreeLowestOnly
        - type: object
          properties:
            type:
              type: string
              const: PERCENTAGE
      required:
        - percentage
      title: Percentage
    com.fourthwall.openapi.model.promotions.PromotionRequirementsV1.Shop:
      type: object
      properties:
        minimumOrderValue:
          $ref: '#/components/schemas/Money'
      title: Shop
    com.fourthwall.openapi.model.promotions.PromotionLimitsV1:
      type: object
      properties:
        maximumUsesNumber:
          type: integer
          format: int32
        oneUsePerCustomer:
          type: boolean
      title: Promotion Limits
    com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrder:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1
        - type: object
          properties:
            type:
              type: string
              const: ENTIRE_ORDER
      title: Entire Order
    com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrderWithExcludedProducts:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1
        - type: object
          properties:
            excludedProducts:
              type: array
              items:
                type: string
                format: uuid
        - type: object
          properties:
            type:
              type: string
              const: ENTIRE_ORDER_WITH_EXCLUDED_PRODUCTS
      required:
        - excludedProducts
      title: Entire Order With Excluded Products
    com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.SelectedProducts:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1
        - type: object
          properties:
            products:
              type: array
              items:
                type: string
                format: uuid
            oncePerOrder:
              type: boolean
        - type: object
          properties:
            type:
              type: string
              const: SELECTED_PRODUCTS
      required:
        - oncePerOrder
        - products
      title: Selected Products
    com.fourthwall.openapi.model.promotions.MultiPromoSubCodeV1:
      type: object
      properties:
        id:
          type: string
        code:
          type: string
        usageCount:
          type: integer
          format: int32
        status:
          type: string
          enum:
            - Live
            - Ended
            - Archived
            - AllUsed
      required:
        - code
        - id
        - status
        - usageCount
      title: Multi Promo Sub Code
    com.fourthwall.openapi.model.promotions.PromotionMembershipsDiscountTypeV1.Percentage:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsDiscountTypeV1
        - type: object
          properties:
            percentage:
              type: number
        - type: object
          properties:
            type:
              type: string
              const: MEMBERSHIPS_PERCENTAGE
      required:
        - percentage
      title: Percentage
    com.fourthwall.openapi.model.promotions.PromotionRequirementsV1.Memberships:
      type: object
      properties:
        newMembersOnly:
          type: boolean
      required:
        - newMembersOnly
      title: Memberships
    com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AllMembers:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1
        - type: object
          properties:
            type:
              type: string
              const: ALL
      title: All Members
    com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AnnualMembersOnly:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1
        - type: object
          properties:
            type:
              type: string
              const: ANNUAL
      title: Annual Members Only
    com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.MonthlyMembersOnly:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1
        - type: object
          properties:
            type:
              type: string
              const: MONTHLY
      title: Monthly Members Only
    com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.AllTiers:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1
        - type: object
          properties:
            type:
              type: string
              const: ALL
      title: All Tiers
    com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.SelectedTiers:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1
        - type: object
          properties:
            tiersIds:
              type: array
              items:
                type: string
        - type: object
          properties:
            type:
              type: string
              const: SELECTED
      required:
        - tiersIds
      title: Selected Tiers
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1:
      discriminator:
        propertyName: type
        mapping:
          PERCENTAGE:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.Percentage
          FLAT_RATE:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FixedAmount
          FREE_SHIPPING:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeShipping
          FREE_PRODUCTS:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts
      properties:
        type:
          type: string
      required:
        - type
      title: Promotion Shop Discount Type
    Money:
      type: object
      properties:
        value:
          type: number
          example: 10
          minimum: 0
        currency:
          type: string
          example: USD
      required:
        - currency
        - value
      title: Money
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type.AutoAdded:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type
        - type: object
          properties:
            products:
              type: array
              items:
                $ref: >-
                  #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.AutoAddedFreeProduct
        - type: object
          properties:
            type:
              type: string
              const: AUTO_ADDED
      required:
        - products
      title: Auto Added
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type.ManuallyAdded:
      allOf:
        - $ref: >-
            #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type
        - type: object
          properties:
            products:
              type: array
              items:
                $ref: >-
                  #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.ManuallyAddedFreeProduct
        - type: object
          properties:
            type:
              type: string
              const: MANUALLY_ADDED
      required:
        - products
      title: Manually Added
    com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1:
      discriminator:
        propertyName: type
        mapping:
          ENTIRE_ORDER:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrder
          SELECTED_PRODUCTS:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.SelectedProducts
          ENTIRE_ORDER_WITH_EXCLUDED_PRODUCTS:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopAppliesToV1.EntireOrderWithExcludedProducts
      properties:
        type:
          type: string
      required:
        - type
      title: Promotion Shop Applies To
    com.fourthwall.openapi.model.promotions.PromotionMembershipsDiscountTypeV1:
      discriminator:
        propertyName: type
        mapping:
          MEMBERSHIPS_PERCENTAGE:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsDiscountTypeV1.Percentage
      properties:
        type:
          type: string
      required:
        - type
      title: Promotion Memberships Discount Type
    com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1:
      discriminator:
        propertyName: type
        mapping:
          ALL:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AllMembers
          MONTHLY:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.MonthlyMembersOnly
          ANNUAL:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsSubscriptionTypeAppliesToV1.AnnualMembersOnly
      properties:
        type:
          type: string
      required:
        - type
      title: Promotion Memberships Subscription Type Applies To
    com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1:
      discriminator:
        propertyName: type
        mapping:
          ALL:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.AllTiers
          SELECTED:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionMembershipsTiersAppliesToV1.SelectedTiers
      properties:
        type:
          type: string
      required:
        - type
      title: Promotion Memberships Tiers Applies To
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type:
      discriminator:
        propertyName: type
        mapping:
          AUTO_ADDED:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type.AutoAdded
          MANUALLY_ADDED:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.Type.ManuallyAdded
      properties:
        type:
          type: string
      required:
        - type
      title: Type
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.AutoAddedFreeProduct:
      type: object
      properties:
        variantId:
          type: string
        quantity:
          type: integer
          format: int32
      required:
        - quantity
        - variantId
      title: Auto Added Free Product
    com.fourthwall.openapi.model.promotions.PromotionShopDiscountTypeV1.FreeProducts.ManuallyAddedFreeProduct:
      type: object
      properties:
        availableVariantIds:
          type: array
          items:
            type: string
            format: uuid
        quantity:
          type: integer
          format: int32
      required:
        - availableVariantIds
        - quantity
      title: Manually Added Free Product
  securitySchemes:
    oauth:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: >-
            https://auth.staging.fourthwall.com/auth/realms/Fourthwall/protocol/openid-connect/auth
          scopes:
            donation_read: donation_read
            order_read: order_read
            order_write: order_write
            fulfillment_write: fulfillment_write
            giveaway_read: giveaway_read
            giveaway_write: giveaway_write
            memberships_read: memberships_read
            memberships_write: memberships_write
            promotions_write: promotions_write
            promotions_read: promotions_read
            offer_read: offer_read
            offer_write: offer_write
            shop_read: shop_read
            thankyou_read: thankyou_read
            thankyou_write: thankyou_write
            webhook_read: webhook_read
            webhook_write: webhook_write
            media_read: media_read
            media_write: media_write
            analytics_read: analytics_read
            samples_read: samples_read
            samples_write: samples_write
            dns_read: dns_read
            dns_write: dns_write
            settings_read: settings_read
            payout_read: payout_read
            integrations_read: integrations_read
    basicAuth:
      type: http
      scheme: basic

````