{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/subotiz-com/json-schema/subotiz-com-update-subscription-request-schema.json",
  "title": "UpdateSubscriptionRequest",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/subotiz-com-openapi.yml#/components/schemas/UpdateSubscriptionRequest",
  "type": "object",
  "properties": {
    "subscription_id": {
      "type": "string",
      "description": "Subscription ID"
    },
    "merchant_id": {
      "type": "string",
      "description": "Merchant unique identifier"
    },
    "price_id": {
      "type": "string",
      "description": "Target pricing ID"
    },
    "effective_type": {
      "type": "string",
      "description": "Effective date\n - end_of_period: End of current period.\n - immediate: Immediate."
    },
    "proration": {
      "type": "string",
      "description": "Proration settings\n none: Do not invoice prorated amount. (The price difference is ignored and a full invoice for the new pricing will be generated at the end of the current billing cycle.)\n immediate: Invoice prorated amount immediately. (A prorated credit or charge will be invoiced based on the price difference.)"
    },
    "quantity": {
      "type": "string",
      "description": "Updated subscription quantity (number of seats, 1-999999999). This pricing-change endpoint doubles as the quantity-change entry point; only supported for subscriptions with billing_dimension=quantity.\n Write-only command (takes effect next cycle, no preview). Providing a value starts a quantity change; omitting it keeps the current quantity. For a preview, use the read-only PreviewSubscriptionQuantity endpoint."
    }
  }
}