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

# Replace product variants in a subscription contract

> Replaces existing product variants with new ones in a subscription contract. This endpoint supports both regular subscription products and one-time products, allowing you to swap products, update quantities, and manage the product mix in a subscription.

**Key Features:**
- **Bulk Replace**: Replace multiple products at once by providing lists of old and new variants
- **Line-Specific Replace**: Target a specific line item using oldLineId for precise replacement
- **Quantity Management**: Set new quantities for replaced products
- **One-Time Products**: Add or remove one-time purchase products independently
- **Discount Preservation**: Configurable discount carry-forward logic

**Discount Carry Forward Options:**
- **PRODUCT_THEN_EXISTING**: First tries to apply the new product's selling plan discount, then falls back to existing discount
- **PRODUCT_PLAN**: Always uses the new product's selling plan discount
- **EXISTING_PLAN**: Maintains the existing product's discount structure

**Important Notes:**
- At least one regular subscription product must remain in the contract
- One-time products and free products don't count towards the minimum product requirement
- The system automatically handles pricing adjustments based on billing/delivery intervals
- Shipping prices are automatically recalculated after changes

**Use Cases:**
- Product upgrades/downgrades (e.g., switching coffee blend or size)
- Quantity adjustments during product swap
- Adding limited-time or seasonal products as one-time purchases
- Bulk product replacements for subscription migrations

**Authentication:** Requires valid X-API-Key header



## OpenAPI

````yaml /subscription/storefront-api-swagger.json post /subscriptions/cp/api/subscription-contract-details/replace-variants-v3
openapi: 3.0.1
info:
  description: >-
    Comprehensive API documentation for the customer-facing subscription portal.
    These APIs enable customers to manage their subscriptions, update billing
    information, modify delivery schedules, and access their account details
    through your storefront.


    **Important**: These APIs must be called from your shop's domain (e.g.,
    https://www.myshop.com/apps/subscriptions/cp/api/**) and require customer
    authentication. Unauthenticated requests will return a 401 Unauthorized
    error.
  title: Storefront APIs
  version: 0.0.1
servers:
  - url: https://www.myshop.com/apps
security: []
tags:
  - description: >-
      Core customer portal APIs for managing customer account settings,
      authentication, and portal configurations.
    name: Customer Portal
  - description: >-
      APIs for customers to view and manage their subscription contracts
      including status updates, frequency changes, and cancellations.
    name: Subscription Management
  - description: >-
      APIs for retrieving and updating subscription contract details — delivery
      schedules, line items, addresses, billing cycles.
    name: Subscription Contracts
  - description: >-
      APIs for retrieving available subscription plans and selling plan
      configurations exposed to customers.
    name: Subscription Plans
  - description: >-
      APIs for managing one-time add-on products that can be purchased alongside
      recurring subscription items.
    name: Subscription One-Time Products
  - description: >-
      APIs for retrieving aggregated subscription data and account-level
      subscription information for the signed-in customer.
    name: Subscription Data
  - description: >-
      APIs for managing customizable product boxes and bundles where customers
      can select multiple items.
    name: Build-a-Box & Bundles
  - description: >-
      APIs for managing payment methods, billing information, and processing
      subscription payments.
    name: Billing & Payments
  - description: >-
      APIs for retrieving product information, selling plans, variant data, and
      subscription-enabled products available to customers.
    name: Product Catalog
  - description: >-
      APIs for managing delivery schedules, shipping addresses, delivery
      methods, and tracking order status.
    name: Delivery & Shipping
  - description: >-
      APIs for handling subscription cancellations, retention activities, and
      customer feedback management.
    name: Customer Retention
  - description: >-
      APIs for integrating loyalty programs with subscriptions including points
      redemption and earning options.
    name: Loyalty Integration
  - description: >-
      APIs for accessing portal customization settings, translations, and theme
      configurations.
    name: Customization
  - description: >-
      APIs for retrieving promotional campaigns shown in the customer portal,
      tracking banner engagement, and redeeming campaign offers.
    name: Campaigns
  - description: >-
      APIs for local pickup and click-and-collect — listing pickup locations and
      resolving eligible pickup dates and time slots.
    name: Store Pickup
paths:
  /subscriptions/cp/api/subscription-contract-details/replace-variants-v3:
    post:
      tags:
        - Subscription Management
        - Subscription Contracts
      summary: Replace product variants in a subscription contract
      description: >-
        Replaces existing product variants with new ones in a subscription
        contract. This endpoint supports both regular subscription products and
        one-time products, allowing you to swap products, update quantities, and
        manage the product mix in a subscription.


        **Key Features:**

        - **Bulk Replace**: Replace multiple products at once by providing lists
        of old and new variants

        - **Line-Specific Replace**: Target a specific line item using oldLineId
        for precise replacement

        - **Quantity Management**: Set new quantities for replaced products

        - **One-Time Products**: Add or remove one-time purchase products
        independently

        - **Discount Preservation**: Configurable discount carry-forward logic


        **Discount Carry Forward Options:**

        - **PRODUCT_THEN_EXISTING**: First tries to apply the new product's
        selling plan discount, then falls back to existing discount

        - **PRODUCT_PLAN**: Always uses the new product's selling plan discount

        - **EXISTING_PLAN**: Maintains the existing product's discount structure


        **Important Notes:**

        - At least one regular subscription product must remain in the contract

        - One-time products and free products don't count towards the minimum
        product requirement

        - The system automatically handles pricing adjustments based on
        billing/delivery intervals

        - Shipping prices are automatically recalculated after changes


        **Use Cases:**

        - Product upgrades/downgrades (e.g., switching coffee blend or size)

        - Quantity adjustments during product swap

        - Adding limited-time or seasonal products as one-time purchases

        - Bulk product replacements for subscription migrations


        **Authentication:** Requires valid X-API-Key header
      operationId: replaceVariantsV3
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReplaceVariantsInfoV3'
        required: true
      responses:
        '200':
          content:
            application/json:
              examples:
                Success Response:
                  description: Success Response
                  value:
                    id: gid://shopify/SubscriptionContract/123456789
                    lines:
                      edges:
                        - node:
                            currentPrice:
                              amount: '35.99'
                              currencyCode: USD
                            id: gid://shopify/SubscriptionLine/999999
                            pricingPolicy:
                              basePrice:
                                amount: '39.99'
                                currencyCode: USD
                              cycleDiscounts:
                                - adjustmentType: PERCENTAGE
                                  adjustmentValue:
                                    percentage: 10
                                  afterCycle: 1
                            quantity: 3
                            title: Premium Coffee - Dark Roast
                            variantId: gid://shopify/ProductVariant/888888
                            variantTitle: 1kg / Whole Bean
                        - node:
                            currentPrice:
                              amount: '9.99'
                              currencyCode: USD
                            customAttributes:
                              - key: _one_time_product
                                value: 'true'
                            id: gid://shopify/SubscriptionLine/777777
                            quantity: 1
                            title: Coffee Filters - Pack of 100
                            variantId: gid://shopify/ProductVariant/666666
                    nextBillingDate: '2024-02-15T00:00:00Z'
                    status: ACTIVE
              schema:
                $ref: '#/components/schemas/SubscriptionContract'
          description: Products successfully replaced
        '400':
          content:
            application/json:
              examples:
                Last Product Removal:
                  description: Last Product Removal
                  value:
                    detail: >-
                      This operation would remove all subscription products from
                      the contract
                    status: 400
                    title: >-
                      UserGeneratedError:Cannot remove line item. Atleast one
                      subscription product must be present in a subscription
                    type: https://example.com/errors/bad-request
                No Variants Specified:
                  description: No Variants Specified
                  value:
                    detail: You must specify at least one variant to add or remove
                    status: 400
                    title: UserGeneratedError:No variants to add or remove
                    type: https://example.com/errors/bad-request
                Product Not Found:
                  description: Product Not Found
                  value:
                    detail: The new variant ID does not exist in your store
                    status: 400
                    title: >-
                      Product Variant not found for ID:
                      gid://shopify/ProductVariant/999999
                    type: https://example.com/errors/bad-request
                Same Source and Destination:
                  description: Same Source and Destination
                  value:
                    detail: You cannot replace a variant with itself
                    status: 400
                    title: >-
                      UserGeneratedError:Source and destination variants cannot
                      be same
                    type: https://example.com/errors/bad-request
                Variant Not Found:
                  description: Variant Not Found
                  value:
                    detail: >-
                      The specified old variant IDs do not exist in the
                      subscription
                    status: 400
                    title: >-
                      UserGeneratedError:Old variants didn't match with the
                      existing variants
                    type: https://example.com/errors/bad-request
          description: Invalid request parameters or business rule violation
        '401':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SubscriptionContract'
          description: Authentication required - missing or invalid API key
        '403':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SubscriptionContract'
          description: Insufficient permissions to modify subscription contracts
components:
  schemas:
    ReplaceVariantsInfoV3:
      description: >-
        Product replacement configuration for subscription contracts. Allows
        replacing existing subscription products with new ones, managing
        quantities, and handling one-time purchases.
      properties:
        babParentVariantId:
          description: >-
            When set, this is treated as a fixed-price Build-a-Box child swap:
            the numeric variant ID of the parent bundle line whose child
            products will be replaced. When present, babReplaceSubVariantDetails
            is applied instead of the line-item variant swap.
          example: 42549172011164
          format: int64
          type: integer
        babReplaceSubVariantDetails:
          description: >-
            Old-to-new child variant mappings applied to the parent bundle
            line's child products when babParentVariantId is set.
          items:
            $ref: '#/components/schemas/ReplaceSubVariantDetails'
          type: array
        babRequireAllSourceVariants:
          default: false
          description: >-
            When true and babParentVariantId is set, a bundle line is only
            updated when every oldVariantId from babReplaceSubVariantDetails is
            present in the box. Default is false (each old-to-new mapping
            applies independently).
          example: false
          type: boolean
        carryForwardDiscount:
          description: >-
            Determines how discounts are applied to new products when replacing
            variants. If not specified, uses the merchant's default setting.
          enum:
            - NONE
            - EXISTING_PLAN
            - PRODUCT_PLAN
            - PRODUCT_THEN_EXISTING
            - PRODUCT_THEN_EXISTING
            - PRODUCT_PLAN
            - EXISTING_PLAN
          example: PRODUCT_THEN_EXISTING
          type: string
        contractId:
          description: The ID of the subscription contract to modify
          example: 123456789
          format: int64
          type: integer
        eventSource:
          enum:
            - CUSTOMER_PORTAL
            - MERCHANT_PORTAL
            - SHOPIFY_EVENT
            - SYSTEM_EVENT
            - MERCHANT_PORTAL_BULK_AUTOMATION
            - SCHEDULED_BULK_AUTOMATION
            - MERCHANT_EXTERNAL_API
            - SHOPIFY_FLOW
          type: string
        newOneTimeVariants:
          additionalProperties:
            description: >-
              Map of one-time product variant IDs to add with their quantities.
              These products will be charged only once with the next order and
              won't recur. Useful for add-ons, samples, or limited-time offers.
            format: int32
            type: integer
          description: >-
            Map of one-time product variant IDs to add with their quantities.
            These products will be charged only once with the next order and
            won't recur. Useful for add-ons, samples, or limited-time offers.
          example:
            '42549172066666': 1
            '42549172077777': 2
          type: object
        newVariants:
          additionalProperties:
            description: >-
              Map of new variant IDs to their quantities. Key is the numeric
              Shopify variant ID, value is the desired quantity. If a variant
              already exists in the subscription and the system is configured to
              update existing quantities, the quantity will be added to the
              existing quantity.
            format: int32
            type: integer
          description: >-
            Map of new variant IDs to their quantities. Key is the numeric
            Shopify variant ID, value is the desired quantity. If a variant
            already exists in the subscription and the system is configured to
            update existing quantities, the quantity will be added to the
            existing quantity.
          example:
            '42549172033333': 2
            '42549172044444': 1
          type: object
        oldLineId:
          description: >-
            Specific subscription line ID to replace. Use this for targeted
            replacement of a single line item. When provided, oldVariants should
            be empty. Format: gid://shopify/SubscriptionLine/[ID]
          example: gid://shopify/SubscriptionLine/987654321
          type: string
        oldOneTimeVariants:
          description: >-
            List of one-time product variant IDs to remove from the
            subscription. Only removes one-time products that haven't been
            fulfilled yet.
          example:
            - 42549172055555
            - 42549172088888
          items:
            description: >-
              List of one-time product variant IDs to remove from the
              subscription. Only removes one-time products that haven't been
              fulfilled yet.
            format: int64
            type: integer
          type: array
        oldVariants:
          description: >-
            List of variant IDs to remove from the subscription. These are
            numeric Shopify variant IDs. Either provide oldVariants OR
            oldLineId, not both.
          example:
            - 42549172011164
            - 42549172022222
          items:
            description: >-
              List of variant IDs to remove from the subscription. These are
              numeric Shopify variant IDs. Either provide oldVariants OR
              oldLineId, not both.
            format: int64
            type: integer
          type: array
        shop:
          description: The Shop of the subscription contract to modify
          example: abcStore.myshopify.com
          type: string
        stopSwapEmails:
          default: false
          description: >-
            If true, suppresses email notifications about the product swap.
            Default is false (emails will be sent).
          example: false
          type: boolean
      required:
        - contractId
        - shop
      type: object
    SubscriptionContract:
      properties:
        billingAttempts:
          $ref: '#/components/schemas/BillingAttempts'
        billingPolicy:
          $ref: '#/components/schemas/BillingPolicy'
        createdAt:
          type: object
        customAttributes:
          items:
            $ref: '#/components/schemas/CustomAttribute1'
          type: array
        customer:
          $ref: '#/components/schemas/Customer'
        customerPaymentMethod:
          $ref: '#/components/schemas/CustomerPaymentMethod'
        deliveryMethod:
          $ref: '#/components/schemas/DeliveryMethod'
        deliveryPolicy:
          $ref: '#/components/schemas/DeliveryPolicy'
        deliveryPrice:
          $ref: '#/components/schemas/DeliveryPrice'
        discounts:
          $ref: '#/components/schemas/Discounts'
        get__typename:
          type: string
        id:
          type: string
        lastPaymentStatus:
          enum:
            - SUCCEEDED
            - FAILED
            - $UNKNOWN
          type: string
        lines:
          $ref: '#/components/schemas/Lines'
        nextBillingDate:
          type: object
        note:
          type: string
        originOrder:
          $ref: '#/components/schemas/OriginOrder'
        status:
          enum:
            - ACTIVE
            - PAUSED
            - CANCELLED
            - EXPIRED
            - FAILED
            - $UNKNOWN
          type: string
        updatedAt:
          type: object
      type: object
    ReplaceSubVariantDetails:
      description: >-
        Old-to-new child variant mappings applied to the parent bundle line's
        child products when babParentVariantId is set.
      properties:
        newVariantId:
          format: int64
          type: integer
        newVariantQuantity:
          format: int32
          type: integer
        newVariantTitle:
          type: string
        oldVariantId:
          format: int64
          type: integer
        oldVariantQuantity:
          format: int32
          type: integer
        oldVariantTitle:
          type: string
      type: object
    BillingAttempts:
      properties:
        get__typename:
          type: string
        nodes:
          items:
            $ref: '#/components/schemas/Node3'
          type: array
      type: object
    BillingPolicy:
      properties:
        anchors:
          items:
            $ref: '#/components/schemas/Anchor'
          type: array
        get__typename:
          type: string
        interval:
          enum:
            - DAY
            - WEEK
            - MONTH
            - YEAR
            - $UNKNOWN
          type: string
        intervalCount:
          format: int32
          type: integer
        maxCycles:
          format: int32
          type: integer
        minCycles:
          format: int32
          type: integer
      type: object
    CustomAttribute1:
      properties:
        get__typename:
          type: string
        key:
          type: string
        value:
          type: string
      type: object
    Customer:
      properties:
        displayName:
          type: string
        email:
          deprecated: true
          type: string
        firstName:
          type: string
        get__typename:
          type: string
        id:
          type: string
        lastName:
          type: string
        phone:
          deprecated: true
          type: string
      type: object
    CustomerPaymentMethod:
      properties:
        get__typename:
          type: string
        id:
          type: string
        instrument:
          $ref: '#/components/schemas/Instrument'
        revokedAt:
          type: object
        revokedReason:
          enum:
            - AUTHORIZE_NET_GATEWAY_NOT_ENABLED
            - AUTHORIZE_NET_RETURNED_NO_PAYMENT_METHOD
            - FAILED_TO_UPDATE_CREDIT_CARD
            - STRIPE_API_AUTHENTICATION_ERROR
            - STRIPE_API_INVALID_REQUEST_ERROR
            - STRIPE_GATEWAY_NOT_ENABLED
            - STRIPE_RETURNED_NO_PAYMENT_METHOD
            - STRIPE_PAYMENT_METHOD_NOT_CARD
            - BRAINTREE_API_AUTHENTICATION_ERROR
            - BRAINTREE_GATEWAY_NOT_ENABLED
            - BRAINTREE_RETURNED_NO_PAYMENT_METHOD
            - BRAINTREE_PAYMENT_METHOD_NOT_CARD
            - PAYMENT_METHOD_VERIFICATION_FAILED
            - THREE_D_SECURE_FLOW_IN_VERIFICATION_NOT_IMPLEMENTED
            - MANUALLY_REVOKED
            - FAILED_TO_RETRIEVE_BILLING_ADDRESS
            - MERGED
            - CUSTOMER_REDACTED
            - TOO_MANY_CONSECUTIVE_FAILURES
            - CVV_ATTEMPTS_LIMIT_EXCEEDED
            - $UNKNOWN
          type: string
      type: object
    DeliveryMethod:
      properties:
        get__typename:
          type: string
      type: object
    DeliveryPolicy:
      properties:
        anchors:
          items:
            $ref: '#/components/schemas/Anchor1'
          type: array
        get__typename:
          type: string
        interval:
          enum:
            - DAY
            - WEEK
            - MONTH
            - YEAR
            - $UNKNOWN
          type: string
        intervalCount:
          format: int32
          type: integer
      type: object
    DeliveryPrice:
      properties:
        amount:
          type: object
        currencyCode:
          enum:
            - USD
            - EUR
            - GBP
            - CAD
            - AFN
            - ALL
            - DZD
            - AOA
            - ARS
            - AMD
            - AWG
            - AUD
            - BBD
            - AZN
            - BDT
            - BSD
            - BHD
            - BIF
            - BYN
            - BZD
            - BMD
            - BTN
            - BAM
            - BRL
            - BOB
            - BWP
            - BND
            - BGN
            - MMK
            - KHR
            - CVE
            - KYD
            - XAF
            - CLP
            - CNY
            - COP
            - KMF
            - CDF
            - CRC
            - HRK
            - CZK
            - DKK
            - DJF
            - DOP
            - XCD
            - EGP
            - ERN
            - ETB
            - FKP
            - XPF
            - FJD
            - GIP
            - GMD
            - GHS
            - GTQ
            - GYD
            - GEL
            - GNF
            - HTG
            - HNL
            - HKD
            - HUF
            - ISK
            - INR
            - IDR
            - ILS
            - IRR
            - IQD
            - JMD
            - JPY
            - JEP
            - JOD
            - KZT
            - KES
            - KID
            - KWD
            - KGS
            - LAK
            - LVL
            - LBP
            - LSL
            - LRD
            - LYD
            - LTL
            - MGA
            - MKD
            - MOP
            - MWK
            - MVR
            - MRU
            - MXN
            - MYR
            - MUR
            - MDL
            - MAD
            - MNT
            - MZN
            - NAD
            - NPR
            - ANG
            - NZD
            - NIO
            - NGN
            - NOK
            - OMR
            - PAB
            - PKR
            - PGK
            - PYG
            - PEN
            - PHP
            - PLN
            - QAR
            - RON
            - RUB
            - RWF
            - WST
            - SHP
            - SAR
            - RSD
            - SCR
            - SLL
            - SGD
            - SDG
            - SOS
            - SYP
            - ZAR
            - KRW
            - SSP
            - SBD
            - LKR
            - SRD
            - SZL
            - SEK
            - CHF
            - TWD
            - THB
            - TJS
            - TZS
            - TOP
            - TTD
            - TND
            - TRY
            - TMT
            - UGX
            - UAH
            - AED
            - UYU
            - UZS
            - VUV
            - VES
            - VND
            - XOF
            - YER
            - ZMW
            - USDC
            - BYR
            - STD
            - STN
            - VED
            - VEF
            - XXX
            - $UNKNOWN
          type: string
        get__typename:
          type: string
      type: object
    Discounts:
      properties:
        get__typename:
          type: string
        nodes:
          items:
            $ref: '#/components/schemas/Node2'
          type: array
        pageInfo:
          $ref: '#/components/schemas/PageInfo2'
      type: object
    Lines:
      properties:
        get__typename:
          type: string
        nodes:
          items:
            $ref: '#/components/schemas/Node'
          type: array
        pageInfo:
          $ref: '#/components/schemas/PageInfo'
      type: object
    OriginOrder:
      properties:
        fulfillmentOrders:
          $ref: '#/components/schemas/FulfillmentOrders'
        get__typename:
          type: string
        id:
          type: string
        name:
          type: string
      type: object
    Node3:
      properties:
        completedAt:
          type: object
        createdAt:
          type: object
        get__typename:
          type: string
        id:
          type: string
        idempotencyKey:
          type: string
        ready:
          deprecated: true
          type: boolean
      type: object
    Anchor:
      properties:
        cutoffDay:
          format: int32
          type: integer
        day:
          format: int32
          type: integer
        get__typename:
          type: string
        month:
          format: int32
          type: integer
        type:
          enum:
            - WEEKDAY
            - MONTHDAY
            - YEARDAY
            - $UNKNOWN
          type: string
      type: object
    Instrument:
      properties:
        get__typename:
          type: string
      type: object
    Anchor1:
      properties:
        cutoffDay:
          format: int32
          type: integer
        day:
          format: int32
          type: integer
        get__typename:
          type: string
        month:
          format: int32
          type: integer
        type:
          enum:
            - WEEKDAY
            - MONTHDAY
            - YEARDAY
            - $UNKNOWN
          type: string
      type: object
    Node2:
      properties:
        get__typename:
          type: string
        id:
          type: string
        recurringCycleLimit:
          format: int32
          type: integer
        rejectionReason:
          enum:
            - NOT_FOUND
            - NO_ENTITLED_LINE_ITEMS
            - QUANTITY_NOT_IN_RANGE
            - PURCHASE_NOT_IN_RANGE
            - CUSTOMER_NOT_ELIGIBLE
            - USAGE_LIMIT_REACHED
            - CUSTOMER_USAGE_LIMIT_REACHED
            - CURRENTLY_INACTIVE
            - NO_ENTITLED_SHIPPING_LINES
            - INCOMPATIBLE_PURCHASE_TYPE
            - INTERNAL_ERROR
            - $UNKNOWN
          type: string
        targetType:
          enum:
            - LINE_ITEM
            - SHIPPING_LINE
            - $UNKNOWN
          type: string
        title:
          type: string
        type:
          enum:
            - MANUAL
            - CODE_DISCOUNT
            - AUTOMATIC_DISCOUNT
            - $UNKNOWN
          type: string
        usageCount:
          format: int32
          type: integer
        value:
          $ref: '#/components/schemas/Value'
      type: object
    PageInfo2:
      properties:
        endCursor:
          type: string
        get__typename:
          type: string
        hasNextPage:
          type: boolean
        hasPreviousPage:
          type: boolean
        startCursor:
          type: string
      type: object
    Node:
      properties:
        currentPrice:
          $ref: '#/components/schemas/CurrentPrice'
        customAttributes:
          items:
            $ref: '#/components/schemas/CustomAttribute'
          type: array
        discountAllocations:
          items:
            $ref: '#/components/schemas/DiscountAllocation'
          type: array
        get__typename:
          type: string
        id:
          type: string
        lineDiscountedPrice:
          $ref: '#/components/schemas/LineDiscountedPrice'
        pricingPolicy:
          $ref: '#/components/schemas/PricingPolicy'
        productId:
          type: string
        quantity:
          format: int32
          type: integer
        sellingPlanId:
          type: string
        sellingPlanName:
          type: string
        sku:
          type: string
        taxable:
          type: boolean
        title:
          type: string
        variantId:
          type: string
        variantImage:
          $ref: '#/components/schemas/VariantImage'
        variantTitle:
          type: string
      type: object
    PageInfo:
      properties:
        endCursor:
          type: string
        get__typename:
          type: string
        hasNextPage:
          type: boolean
        hasPreviousPage:
          type: boolean
        startCursor:
          type: string
      type: object
    FulfillmentOrders:
      properties:
        get__typename:
          type: string
        nodes:
          items:
            $ref: '#/components/schemas/Node1'
          type: array
        pageInfo:
          $ref: '#/components/schemas/PageInfo1'
      type: object
    Value:
      properties:
        get__typename:
          type: string
      type: object
    CurrentPrice:
      properties:
        amount:
          type: object
        currencyCode:
          enum:
            - USD
            - EUR
            - GBP
            - CAD
            - AFN
            - ALL
            - DZD
            - AOA
            - ARS
            - AMD
            - AWG
            - AUD
            - BBD
            - AZN
            - BDT
            - BSD
            - BHD
            - BIF
            - BYN
            - BZD
            - BMD
            - BTN
            - BAM
            - BRL
            - BOB
            - BWP
            - BND
            - BGN
            - MMK
            - KHR
            - CVE
            - KYD
            - XAF
            - CLP
            - CNY
            - COP
            - KMF
            - CDF
            - CRC
            - HRK
            - CZK
            - DKK
            - DJF
            - DOP
            - XCD
            - EGP
            - ERN
            - ETB
            - FKP
            - XPF
            - FJD
            - GIP
            - GMD
            - GHS
            - GTQ
            - GYD
            - GEL
            - GNF
            - HTG
            - HNL
            - HKD
            - HUF
            - ISK
            - INR
            - IDR
            - ILS
            - IRR
            - IQD
            - JMD
            - JPY
            - JEP
            - JOD
            - KZT
            - KES
            - KID
            - KWD
            - KGS
            - LAK
            - LVL
            - LBP
            - LSL
            - LRD
            - LYD
            - LTL
            - MGA
            - MKD
            - MOP
            - MWK
            - MVR
            - MRU
            - MXN
            - MYR
            - MUR
            - MDL
            - MAD
            - MNT
            - MZN
            - NAD
            - NPR
            - ANG
            - NZD
            - NIO
            - NGN
            - NOK
            - OMR
            - PAB
            - PKR
            - PGK
            - PYG
            - PEN
            - PHP
            - PLN
            - QAR
            - RON
            - RUB
            - RWF
            - WST
            - SHP
            - SAR
            - RSD
            - SCR
            - SLL
            - SGD
            - SDG
            - SOS
            - SYP
            - ZAR
            - KRW
            - SSP
            - SBD
            - LKR
            - SRD
            - SZL
            - SEK
            - CHF
            - TWD
            - THB
            - TJS
            - TZS
            - TOP
            - TTD
            - TND
            - TRY
            - TMT
            - UGX
            - UAH
            - AED
            - UYU
            - UZS
            - VUV
            - VES
            - VND
            - XOF
            - YER
            - ZMW
            - USDC
            - BYR
            - STD
            - STN
            - VED
            - VEF
            - XXX
            - $UNKNOWN
          type: string
        get__typename:
          type: string
      type: object
    CustomAttribute:
      properties:
        get__typename:
          type: string
        key:
          type: string
        value:
          type: string
      type: object
    DiscountAllocation:
      properties:
        amount:
          $ref: '#/components/schemas/Amount'
        discount:
          $ref: '#/components/schemas/Discount'
        get__typename:
          type: string
      type: object
    LineDiscountedPrice:
      properties:
        amount:
          type: object
        currencyCode:
          enum:
            - USD
            - EUR
            - GBP
            - CAD
            - AFN
            - ALL
            - DZD
            - AOA
            - ARS
            - AMD
            - AWG
            - AUD
            - BBD
            - AZN
            - BDT
            - BSD
            - BHD
            - BIF
            - BYN
            - BZD
            - BMD
            - BTN
            - BAM
            - BRL
            - BOB
            - BWP
            - BND
            - BGN
            - MMK
            - KHR
            - CVE
            - KYD
            - XAF
            - CLP
            - CNY
            - COP
            - KMF
            - CDF
            - CRC
            - HRK
            - CZK
            - DKK
            - DJF
            - DOP
            - XCD
            - EGP
            - ERN
            - ETB
            - FKP
            - XPF
            - FJD
            - GIP
            - GMD
            - GHS
            - GTQ
            - GYD
            - GEL
            - GNF
            - HTG
            - HNL
            - HKD
            - HUF
            - ISK
            - INR
            - IDR
            - ILS
            - IRR
            - IQD
            - JMD
            - JPY
            - JEP
            - JOD
            - KZT
            - KES
            - KID
            - KWD
            - KGS
            - LAK
            - LVL
            - LBP
            - LSL
            - LRD
            - LYD
            - LTL
            - MGA
            - MKD
            - MOP
            - MWK
            - MVR
            - MRU
            - MXN
            - MYR
            - MUR
            - MDL
            - MAD
            - MNT
            - MZN
            - NAD
            - NPR
            - ANG
            - NZD
            - NIO
            - NGN
            - NOK
            - OMR
            - PAB
            - PKR
            - PGK
            - PYG
            - PEN
            - PHP
            - PLN
            - QAR
            - RON
            - RUB
            - RWF
            - WST
            - SHP
            - SAR
            - RSD
            - SCR
            - SLL
            - SGD
            - SDG
            - SOS
            - SYP
            - ZAR
            - KRW
            - SSP
            - SBD
            - LKR
            - SRD
            - SZL
            - SEK
            - CHF
            - TWD
            - THB
            - TJS
            - TZS
            - TOP
            - TTD
            - TND
            - TRY
            - TMT
            - UGX
            - UAH
            - AED
            - UYU
            - UZS
            - VUV
            - VES
            - VND
            - XOF
            - YER
            - ZMW
            - USDC
            - BYR
            - STD
            - STN
            - VED
            - VEF
            - XXX
            - $UNKNOWN
          type: string
        get__typename:
          type: string
      type: object
    PricingPolicy:
      properties:
        basePrice:
          $ref: '#/components/schemas/BasePrice'
        cycleDiscounts:
          items:
            $ref: '#/components/schemas/CycleDiscount'
          type: array
        get__typename:
          type: string
      type: object
    VariantImage:
      properties:
        get__typename:
          type: string
        url:
          type: object
      type: object
    Node1:
      properties:
        fulfillAt:
          type: object
        get__typename:
          type: string
        id:
          type: string
        status:
          enum:
            - OPEN
            - IN_PROGRESS
            - CANCELLED
            - INCOMPLETE
            - CLOSED
            - SCHEDULED
            - ON_HOLD
            - $UNKNOWN
          type: string
      type: object
    PageInfo1:
      properties:
        endCursor:
          type: string
        get__typename:
          type: string
        hasNextPage:
          type: boolean
        hasPreviousPage:
          type: boolean
        startCursor:
          type: string
      type: object
    Amount:
      properties:
        amount:
          type: object
        currencyCode:
          enum:
            - USD
            - EUR
            - GBP
            - CAD
            - AFN
            - ALL
            - DZD
            - AOA
            - ARS
            - AMD
            - AWG
            - AUD
            - BBD
            - AZN
            - BDT
            - BSD
            - BHD
            - BIF
            - BYN
            - BZD
            - BMD
            - BTN
            - BAM
            - BRL
            - BOB
            - BWP
            - BND
            - BGN
            - MMK
            - KHR
            - CVE
            - KYD
            - XAF
            - CLP
            - CNY
            - COP
            - KMF
            - CDF
            - CRC
            - HRK
            - CZK
            - DKK
            - DJF
            - DOP
            - XCD
            - EGP
            - ERN
            - ETB
            - FKP
            - XPF
            - FJD
            - GIP
            - GMD
            - GHS
            - GTQ
            - GYD
            - GEL
            - GNF
            - HTG
            - HNL
            - HKD
            - HUF
            - ISK
            - INR
            - IDR
            - ILS
            - IRR
            - IQD
            - JMD
            - JPY
            - JEP
            - JOD
            - KZT
            - KES
            - KID
            - KWD
            - KGS
            - LAK
            - LVL
            - LBP
            - LSL
            - LRD
            - LYD
            - LTL
            - MGA
            - MKD
            - MOP
            - MWK
            - MVR
            - MRU
            - MXN
            - MYR
            - MUR
            - MDL
            - MAD
            - MNT
            - MZN
            - NAD
            - NPR
            - ANG
            - NZD
            - NIO
            - NGN
            - NOK
            - OMR
            - PAB
            - PKR
            - PGK
            - PYG
            - PEN
            - PHP
            - PLN
            - QAR
            - RON
            - RUB
            - RWF
            - WST
            - SHP
            - SAR
            - RSD
            - SCR
            - SLL
            - SGD
            - SDG
            - SOS
            - SYP
            - ZAR
            - KRW
            - SSP
            - SBD
            - LKR
            - SRD
            - SZL
            - SEK
            - CHF
            - TWD
            - THB
            - TJS
            - TZS
            - TOP
            - TTD
            - TND
            - TRY
            - TMT
            - UGX
            - UAH
            - AED
            - UYU
            - UZS
            - VUV
            - VES
            - VND
            - XOF
            - YER
            - ZMW
            - USDC
            - BYR
            - STD
            - STN
            - VED
            - VEF
            - XXX
            - $UNKNOWN
          type: string
        get__typename:
          type: string
      type: object
    Discount:
      properties:
        get__typename:
          type: string
      type: object
    BasePrice:
      properties:
        amount:
          type: object
        currencyCode:
          enum:
            - USD
            - EUR
            - GBP
            - CAD
            - AFN
            - ALL
            - DZD
            - AOA
            - ARS
            - AMD
            - AWG
            - AUD
            - BBD
            - AZN
            - BDT
            - BSD
            - BHD
            - BIF
            - BYN
            - BZD
            - BMD
            - BTN
            - BAM
            - BRL
            - BOB
            - BWP
            - BND
            - BGN
            - MMK
            - KHR
            - CVE
            - KYD
            - XAF
            - CLP
            - CNY
            - COP
            - KMF
            - CDF
            - CRC
            - HRK
            - CZK
            - DKK
            - DJF
            - DOP
            - XCD
            - EGP
            - ERN
            - ETB
            - FKP
            - XPF
            - FJD
            - GIP
            - GMD
            - GHS
            - GTQ
            - GYD
            - GEL
            - GNF
            - HTG
            - HNL
            - HKD
            - HUF
            - ISK
            - INR
            - IDR
            - ILS
            - IRR
            - IQD
            - JMD
            - JPY
            - JEP
            - JOD
            - KZT
            - KES
            - KID
            - KWD
            - KGS
            - LAK
            - LVL
            - LBP
            - LSL
            - LRD
            - LYD
            - LTL
            - MGA
            - MKD
            - MOP
            - MWK
            - MVR
            - MRU
            - MXN
            - MYR
            - MUR
            - MDL
            - MAD
            - MNT
            - MZN
            - NAD
            - NPR
            - ANG
            - NZD
            - NIO
            - NGN
            - NOK
            - OMR
            - PAB
            - PKR
            - PGK
            - PYG
            - PEN
            - PHP
            - PLN
            - QAR
            - RON
            - RUB
            - RWF
            - WST
            - SHP
            - SAR
            - RSD
            - SCR
            - SLL
            - SGD
            - SDG
            - SOS
            - SYP
            - ZAR
            - KRW
            - SSP
            - SBD
            - LKR
            - SRD
            - SZL
            - SEK
            - CHF
            - TWD
            - THB
            - TJS
            - TZS
            - TOP
            - TTD
            - TND
            - TRY
            - TMT
            - UGX
            - UAH
            - AED
            - UYU
            - UZS
            - VUV
            - VES
            - VND
            - XOF
            - YER
            - ZMW
            - USDC
            - BYR
            - STD
            - STN
            - VED
            - VEF
            - XXX
            - $UNKNOWN
          type: string
        get__typename:
          type: string
      type: object
    CycleDiscount:
      properties:
        adjustmentType:
          enum:
            - PERCENTAGE
            - FIXED_AMOUNT
            - PRICE
            - $UNKNOWN
          type: string
        adjustmentValue:
          $ref: '#/components/schemas/AdjustmentValue'
        afterCycle:
          format: int32
          type: integer
        computedPrice:
          $ref: '#/components/schemas/ComputedPrice'
        get__typename:
          type: string
      type: object
    AdjustmentValue:
      properties:
        get__typename:
          type: string
      type: object
    ComputedPrice:
      properties:
        amount:
          type: object
        currencyCode:
          enum:
            - USD
            - EUR
            - GBP
            - CAD
            - AFN
            - ALL
            - DZD
            - AOA
            - ARS
            - AMD
            - AWG
            - AUD
            - BBD
            - AZN
            - BDT
            - BSD
            - BHD
            - BIF
            - BYN
            - BZD
            - BMD
            - BTN
            - BAM
            - BRL
            - BOB
            - BWP
            - BND
            - BGN
            - MMK
            - KHR
            - CVE
            - KYD
            - XAF
            - CLP
            - CNY
            - COP
            - KMF
            - CDF
            - CRC
            - HRK
            - CZK
            - DKK
            - DJF
            - DOP
            - XCD
            - EGP
            - ERN
            - ETB
            - FKP
            - XPF
            - FJD
            - GIP
            - GMD
            - GHS
            - GTQ
            - GYD
            - GEL
            - GNF
            - HTG
            - HNL
            - HKD
            - HUF
            - ISK
            - INR
            - IDR
            - ILS
            - IRR
            - IQD
            - JMD
            - JPY
            - JEP
            - JOD
            - KZT
            - KES
            - KID
            - KWD
            - KGS
            - LAK
            - LVL
            - LBP
            - LSL
            - LRD
            - LYD
            - LTL
            - MGA
            - MKD
            - MOP
            - MWK
            - MVR
            - MRU
            - MXN
            - MYR
            - MUR
            - MDL
            - MAD
            - MNT
            - MZN
            - NAD
            - NPR
            - ANG
            - NZD
            - NIO
            - NGN
            - NOK
            - OMR
            - PAB
            - PKR
            - PGK
            - PYG
            - PEN
            - PHP
            - PLN
            - QAR
            - RON
            - RUB
            - RWF
            - WST
            - SHP
            - SAR
            - RSD
            - SCR
            - SLL
            - SGD
            - SDG
            - SOS
            - SYP
            - ZAR
            - KRW
            - SSP
            - SBD
            - LKR
            - SRD
            - SZL
            - SEK
            - CHF
            - TWD
            - THB
            - TJS
            - TZS
            - TOP
            - TTD
            - TND
            - TRY
            - TMT
            - UGX
            - UAH
            - AED
            - UYU
            - UZS
            - VUV
            - VES
            - VND
            - XOF
            - YER
            - ZMW
            - USDC
            - BYR
            - STD
            - STN
            - VED
            - VEF
            - XXX
            - $UNKNOWN
          type: string
        get__typename:
          type: string
      type: object

````