> ## 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.

# Remove product from subscription

> Removes a specific product line item from an existing subscription contract. Can optionally retain prorated discounts associated with the removed product.

**Key Features:**
- Validates minimum subscription requirements before removal
- Handles discount cleanup for line-specific discounts
- Enforces minimum cycle commitments on products
- Supports Build-a-Box quantity validation
- Automatic retry on concurrent modification conflicts
- Email notifications for subscription changes

**Validation Rules:**
- At least one recurring subscription product must remain after removal
- One-time products and free products don't count toward the minimum
- Products with minimum cycle commitments cannot be removed until fulfilled
- Build-a-Box subscriptions validate against minimum/maximum quantity rules

**Discount Handling:**
When `removeDiscount=true` (default):
- Discounts applied only to the removed line item are deleted
- Discounts applied to multiple line items are retained
- System automatically identifies which discounts to remove

**Retry Mechanism:**
The endpoint automatically retries in these scenarios:
- Concurrent modification detected (another process updated the subscription)
- Invalid discount code errors (removes problematic discount and retries)
- This ensures reliable operation in high-traffic environments

**Post-Removal Actions:**
- Activity log created for audit trail
- Email notification sent to customer
- Shipping price recalculated asynchronously
- Build-a-Box discounts resynced if applicable
- Product-specific discounts resynced

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



## OpenAPI

````yaml /subscription/admin-api-swagger.json put /api/external/v2/subscription-contracts-remove-line-item
openapi: 3.0.1
info:
  description: >-
    Comprehensive API documentation for managing subscriptions, payments, and
    related operations. These APIs allow you to programmatically manage
    subscription lifecycles, handle payments, configure products, and integrate
    subscription functionality into your applications.
  title: Admin APIs
  version: 0.0.1
servers:
  - url: https://subscription-admin.appstle.com
security: []
tags:
  - description: >-
      Core APIs for managing the complete subscription lifecycle including
      creation, updates, pausing, resuming, and cancellation of subscriptions.
    name: Subscription Management
  - description: >-
      APIs for managing subscription payment methods, processing payments,
      handling payment retries, and updating billing information.
    name: Subscription Payments
  - description: >-
      APIs for managing subscription contracts including delivery schedules,
      pricing, order notes, billing cycles, and shipping addresses.
    name: Subscription Contracts
  - description: >-
      APIs for managing products within subscriptions including adding,
      removing, updating quantities, and swapping products.
    name: Subscription Products
  - description: >-
      APIs for handling billing operations, payment processing, and financial
      transactions related to subscriptions.
    name: Billing & Payments
  - description: >-
      APIs for managing discounts and promotional codes applied to
      subscriptions.
    name: Subscription Discounts
  - 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 managing subscription plans, pricing tiers, and plan
      configurations.
    name: Subscription Plans
  - description: >-
      APIs for managing customizable product boxes and bundles where customers
      can select multiple items.
    name: Build-a-Box & Bundles
  - description: >-
      APIs for managing the product catalog including product information,
      variants, and inventory.
    name: Product Catalog
  - description: >-
      APIs for managing operational settings, configurations, and administrative
      functions.
    name: Operations & Settings
  - description: >-
      APIs powering the customer-facing portal where subscribers can manage
      their own subscriptions.
    name: Customer Portal
  - description: APIs for managing customer information, profiles, and account details.
    name: Customers
  - description: >-
      APIs for retrieving aggregated subscription data, customer subscription
      history, and account-level subscription information.
    name: Subscription Data
  - description: >-
      APIs for managing delivery profiles, shipping rates, free shipping
      configuration, and delivery method options on subscriptions.
    name: Delivery & Shipping
  - description: >-
      APIs for managing storefront customization including custom CSS, theme
      settings, label translations, and merchant-defined widget configuration.
    name: Customization
  - description: >-
      APIs for configuring cancellation flows, retention offers, cancellation
      reason management, and win-back automation.
    name: Customer Retention
paths:
  /api/external/v2/subscription-contracts-remove-line-item:
    put:
      tags:
        - Subscription Products
        - Subscription Contracts
      summary: Remove product from subscription
      description: >-
        Removes a specific product line item from an existing subscription
        contract. Can optionally retain prorated discounts associated with the
        removed product.


        **Key Features:**

        - Validates minimum subscription requirements before removal

        - Handles discount cleanup for line-specific discounts

        - Enforces minimum cycle commitments on products

        - Supports Build-a-Box quantity validation

        - Automatic retry on concurrent modification conflicts

        - Email notifications for subscription changes


        **Validation Rules:**

        - At least one recurring subscription product must remain after removal

        - One-time products and free products don't count toward the minimum

        - Products with minimum cycle commitments cannot be removed until
        fulfilled

        - Build-a-Box subscriptions validate against minimum/maximum quantity
        rules


        **Discount Handling:**

        When `removeDiscount=true` (default):

        - Discounts applied only to the removed line item are deleted

        - Discounts applied to multiple line items are retained

        - System automatically identifies which discounts to remove


        **Retry Mechanism:**

        The endpoint automatically retries in these scenarios:

        - Concurrent modification detected (another process updated the
        subscription)

        - Invalid discount code errors (removes problematic discount and
        retries)

        - This ensures reliable operation in high-traffic environments


        **Post-Removal Actions:**

        - Activity log created for audit trail

        - Email notification sent to customer

        - Shipping price recalculated asynchronously

        - Build-a-Box discounts resynced if applicable

        - Product-specific discounts resynced


        **Authentication:** Requires valid X-API-Key header
      operationId: removeLineItemV2
      parameters:
        - description: >-
            Subscription contract ID to remove product from. Provide the numeric
            ID without the gid:// prefix
          example: 123456789
          in: query
          name: contractId
          required: true
          schema:
            pattern: ^[0-9]+$
            type: string
        - deprecated: true
          description: API Key (Deprecated - Use X-API-Key header instead)
          in: query
          name: api_key
          required: false
          schema:
            type: string
        - description: API Key for authentication
          example: sk_live_1234567890abcdef
          in: header
          name: X-API-Key
          required: true
          schema:
            type: string
        - description: >-
            Line item ID of the product to remove. Must be the full GraphQL ID
            including the gid:// prefix
          example: gid://shopify/SubscriptionLine/123456789
          in: query
          name: lineId
          required: true
          schema:
            type: string
        - description: >-
            Controls whether to remove discounts that apply only to this line
            item. When true (default), line-specific discounts are removed. When
            false, attempts to retain discounts where possible. Note: Discounts
            that apply to multiple lines are always retained regardless of this
            setting
          example: true
          in: query
          name: removeDiscount
          required: false
          schema:
            default: true
            type: boolean
      responses:
        '200':
          content:
            application/json:
              examples:
                Success Response:
                  description: Success Response
                  value:
                    billingPolicy:
                      interval: MONTH
                      intervalCount: 1
                    customer:
                      email: customer@example.com
                      firstName: John
                      id: gid://shopify/Customer/987654321
                      lastName: Doe
                    deliveryPolicy:
                      interval: MONTH
                      intervalCount: 1
                    discounts:
                      edges:
                        - node:
                            id: gid://shopify/SubscriptionManualDiscount/999999
                            targetType: ALL_LINES
                            title: 10% OFF SUBSCRIPTION
                            value:
                              percentage: 10
                    id: gid://shopify/SubscriptionContract/123456789
                    lines:
                      edges:
                        - node:
                            currentPrice:
                              amount: '29.99'
                              currencyCode: USD
                            id: gid://shopify/SubscriptionLine/111111
                            quantity: 2
                            sellingPlanId: gid://shopify/SellingPlan/123456
                            sellingPlanName: Deliver every month
                            variantId: gid://shopify/ProductVariant/42549172011164
                    nextBillingDate: '2024-03-01T00:00:00Z'
                    status: ACTIVE
              schema:
                $ref: '#/components/schemas/SubscriptionContract'
          description: Product successfully removed from subscription
        '400':
          content:
            application/json:
              examples:
                Build-a-Box Validation Error:
                  description: Build-a-Box Validation Error
                  value:
                    detail: >-
                      Build-a-Box subscriptions must maintain minimum item
                      quantities
                    status: 400
                    title: >-
                      UserGeneratedError:Removing this item would violate the
                      minimum quantity requirement for your Build-a-Box
                      subscription
                    type: https://example.com/errors/bad-request
                Invalid Line ID Format:
                  description: Invalid Line ID Format
                  value:
                    detail: >-
                      Line ID must be in format:
                      gid://shopify/SubscriptionLine/[numeric_id]
                    status: 400
                    title: Invalid line item ID format
                    type: https://example.com/errors/bad-request
                Last Product Removal Attempt:
                  description: Last Product Removal Attempt
                  value:
                    detail: >-
                      Cannot remove the last recurring product from the
                      subscription
                    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
                Line Item Not Found:
                  description: Line Item Not Found
                  value:
                    detail: >-
                      The specified line item does not exist in this
                      subscription
                    status: 400
                    title: Couldn't find LineId=gid://shopify/SubscriptionLine/999999
                    type: https://example.com/errors/bad-request
                Minimum Cycles Not Met:
                  description: Minimum Cycles Not Met
                  value:
                    detail: >-
                      Product has a minimum cycle requirement that has not been
                      fulfilled
                    status: 400
                    title: >-
                      UserGeneratedError:This product requires a minimum
                      commitment of {{minCycles}} billing cycles before removal
                    type: https://example.com/errors/bad-request
          description: Invalid request parameters or business rule violation
        '401':
          content:
            application/json:
              example:
                detail: Valid API key is required to access this endpoint
                status: 401
                title: Authentication required
                type: https://example.com/errors/unauthorized
          description: Authentication required - missing or invalid API key
        '403':
          content:
            application/json:
              example:
                detail: >-
                  API key does not have permission to modify subscription
                  contracts
                status: 403
                title: Insufficient permissions
                type: https://example.com/errors/forbidden
          description: Insufficient permissions to modify subscription
        '404':
          content:
            application/json:
              example:
                detail: Subscription contract with ID 123456789 not found
                status: 404
                title: Resource not found
                type: https://example.com/errors/not-found
          description: Subscription contract not found
        '422':
          content:
            application/json:
              examples:
                Concurrent Modification:
                  description: Concurrent Modification
                  value:
                    detail: >-
                      Another process modified the subscription. The system will
                      automatically retry.
                    status: 422
                    title: >-
                      The subscription contract has changed. Retry the
                      operation.
                    type: https://example.com/errors/unprocessable-entity
                Draft Commit Error:
                  description: Draft Commit Error
                  value:
                    detail: 'Shopify API error: Billing attempt in progress'
                    status: 422
                    title: UserGeneratedError:Unable to commit subscription changes
                    type: https://example.com/errors/unprocessable-entity
          description: Unable to process the removal due to Shopify API constraints
components:
  schemas:
    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
    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

````