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

# Update quantity of a one-time add-on



## OpenAPI

````yaml /subscription/storefront-api-swagger.json put /subscriptions/cp/api/subscription-contract-one-offs-update-quantity
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-one-offs-update-quantity:
    put:
      tags:
        - Subscription One-Time Products
      summary: Update quantity of a one-time add-on
      operationId: updateOneOffQuantity
      parameters:
        - in: query
          name: contractId
          required: true
          schema:
            format: int64
            type: integer
        - in: query
          name: billingAttemptId
          required: true
          schema:
            format: int64
            type: integer
        - in: query
          name: variantId
          required: true
          schema:
            format: int64
            type: integer
        - in: query
          name: quantity
          required: true
          schema:
            format: int32
            type: integer
      responses:
        '200':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SubscriptionContractOneOffDTO'
          description: OK
components:
  schemas:
    SubscriptionContractOneOffDTO:
      description: >-
        Represents a one-time product added to a subscription contract for a
        specific billing attempt
      properties:
        billingAttemptId:
          description: >-
            The billing attempt ID this one-time product is associated with.
            This determines which upcoming order will include this product.
          example: 54321
          format: int64
          minimum: 1
          type: integer
        id:
          description: Unique identifier of the one-time product record
          example: 12345
          format: int64
          readOnly: true
          type: integer
        price:
          description: >-
            The price per unit of this product in the shop's base currency. This
            may include any applicable discounts.
          example: 19.99
          format: double
          maximum: 999999.99
          minimum: 0
          type: number
        quantity:
          description: The quantity of this product to include in the order
          example: 2
          format: int32
          maximum: 999
          minimum: 1
          type: integer
        shop:
          description: The Shopify store domain that owns this subscription
          example: example-store.myshopify.com
          pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*\.myshopify\.com$
          type: string
        subscriptionContractId:
          description: The subscription contract ID this one-time product belongs to
          example: 98765
          format: int64
          minimum: 1
          type: integer
        variantHandle:
          description: >-
            The handle/slug of the product variant for URL-friendly
            identification
          example: premium-coffee-blend-500g
          pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
          type: string
        variantId:
          description: The Shopify product variant ID for this one-time product
          example: 42549172011164
          format: int64
          minimum: 1
          type: integer
      required:
        - shop
      type: object

````