---
title: "Billing Subscription Change"
method: POST
path: "/api/billing/subscription/change"
---

# Billing Subscription Change

`POST /api/billing/subscription/change`

## Request

- Base URL: `https://api.animgen.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.animgen.com/api/billing/subscription/change`
- Auth: none declared

## Request body

- BillingSubscriptionChangeRequest
  - `targetPlanCode` 'basic' | 'expert' | 'ultra', required
  - `idempotencyKey` string, required
  - `quoteId` string, nullable

## Response `200`

Successful Response

- BillingSubscriptionChangeOut
  - `requestId` string, uuid, required
  - `status` string, required
  - `changeType` 'upgrade' | 'downgrade', required
  - `applyMode` 'immediate' | 'next_period', required
  - `currentPlanCode` string, required
  - `targetPlanCode` string, required
  - `requestedAt` string, required
  - `effectiveAt` string, nullable
  - `processedAt` string, nullable
  - `immediateChargeAmountMinor` integer
  - `immediateChargeCurrency` string, nullable
  - `settlementAmountMinor` integer
  - `settlementCurrency` string, nullable
  - `reason` string, nullable
  - `paymentFailed` boolean
  - `paymentFailureCode` string, nullable
  - `submissionUnknown` boolean

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/animgen/apis/aianimgenbackend.md) · [All operations](https://skmtc.dev/animgen/apis/aianimgenbackend/llms.txt) · [OpenAPI document](https://skmtc.dev/animgen/apis/aianimgenbackend/revisions/ac3744fbb14e?raw)
