---
title: "Change Plan"
method: PUT
path: "/api/v1/subscriptions/me"
tags: ["Subscriptions"]
---

# Change Plan

`PUT /api/v1/subscriptions/me`

## Request

- Base URL: `https://api.gemina.co` (the document declares no server; this is the origin it was published from)
- URL: `https://api.gemina.co/api/v1/subscriptions/me`
- Auth: OAuth 2 (password, token URL `token`)

## Request body

- SubscribeInDTO
  - `planId` string, uuid, required

## Response `200`

Successful Response

- union
  - CheckoutOutDTO
    - `createdAt` string, date-time, nullable
    - `createdAtTimestamp` number, nullable
    - `checkoutUrl` string, nullable
    - `subscriptionId` string, uuid, nullable
    - `paddleTransactionId` string, nullable
    - `status` 'checkout_ready' | 'payment_processing'
  - SubscriptionOutDTO
    - `createdAt` string, date-time, nullable
    - `createdAtTimestamp` number, nullable
    - `id` string, uuid, required
    - `userId` string, uuid, required
    - `userEmail` string, nullable
    - `planId` string, uuid, required
    - `planName` string, nullable
    - `status` 'initializing' | 'pending' | 'active' | 'paused' | 'cancelled' | 'expired', required
    - `paddleSubscriptionId` string, nullable
    - `currentPeriodStart` string, date-time, nullable
    - `currentPeriodEnd` string, date-time, nullable
    - `cancelScheduledAt` string, date-time, nullable
    - `creditsRemaining` string, required
    - `priceSnapshotCents` integer, required
    - `creditsSnapshot` integer, required
    - `monthlyFiletagCredits` integer, required
    - `maxTemplates` integer, required
    - `maxDataRetentionPeriod` 'one_day' | 'three_days' | 'seven_days' | 'one_month' | 'three_months' | 'six_months' | 'one_year' | 'always', required
    - `webhooksEnabled` boolean, required
    - `dataResidencyEnabled` boolean, required
    - `ipAllowlistEnabled` boolean, required
    - `enhancedPrivacyEnabled` boolean, required
    - `supportLevel` 'email' | 'personal' | 'dedicated', required
    - `documentIntelligenceEnabled` boolean
    - `chatIncludedPerCycle` integer
    - `chatCreditCost` string
    - `indexCreditCost` string
    - `retrievalRateLimitPerSecond` integer
    - `storageCreditCostPerGbMonth` string
    - `storageIncludedGb` string

## Other responses

- `404`: The resource does not exist, or is not visible to the caller. Ownership failures are deliberately indistinguishable from a missing resource.
- `422`: Validation Error

---

[API](https://skmtc.dev/gemina/apis/gemina-api.md) · [All operations](https://skmtc.dev/gemina/apis/gemina-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gemina/apis/gemina-api/revisions/152fd3f6f6ec?raw)
