---
title: "Change the paid plan"
description: "Changes Starter or Pro and interval for an existing subscription."
canonical: "https://verbafy.io/docs/api/billing/change-billing-plan"
last-updated: "2026-09-23"
---

# Change the paid plan

Changes Starter or Pro and interval for an existing subscription.

`POST /api/v1/billing/change-plan`

OpenAPI operation `changeBillingPlan`. Authenticate with a Clerk session JWT (`Authorization: Bearer {jwt}`) or the `verbafy_guest_session` cookie. `{jwt}` is a Clerk session token after you sign in on the website. Verbafy does not issue that token and does not show it in Settings. For scripts and agents, sign in, create an API key at [Settings → API keys](/app/settings/api-keys), and call Remote MCP with `Authorization: Bearer sk-…`. Credential setup: [Auth.md](/auth.md). Machine-readable contract: [OpenAPI](/openapi.json).

## curl

```curl
curl -X POST 'https://verbafy.io/api/v1/billing/change-plan' \
  -H 'Authorization: Bearer {jwt}' \
  -H 'Content-Type: application/json' \
  -d '{"plan":"starter","interval":"monthly"}'
```

## JavaScript

```javascript
const response = await fetch('https://verbafy.io/api/v1/billing/change-plan', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer {jwt}',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({"plan":"starter","interval":"monthly"})
});
```

## Python

```python
import httpx

response = httpx.post(
    "https://verbafy.io/api/v1/billing/change-plan",
    headers={"Authorization":"Bearer {jwt}","Content-Type":"application/json"},
    json={"plan":"starter","interval":"monthly"},
)
```

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://verbafy.io/#organization",
      "name": "Verbafy",
      "url": "https://verbafy.io",
      "inLanguage": "en",
      "knowsAbout": [
        "YouTube transcription",
        "Spotify episode transcription",
        "Meeting recording transcription",
        "Speaker diarization",
        "Transcript export"
      ],
      "hasOfferCatalog": {
        "@id": "https://verbafy.io/pricing#offers"
      },
      "contactPoint": {
        "@type": "ContactPoint",
        "contactType": "customer support",
        "email": "support@verbafy.io",
        "url": "https://verbafy.io/contact"
      }
    },
    {
      "@type": "TechArticle",
      "@id": "https://verbafy.io/docs/api/billing/change-billing-plan#page",
      "name": "Change the paid plan",
      "description": "Changes Starter or Pro and interval for an existing subscription.",
      "url": "https://verbafy.io/docs/api/billing/change-billing-plan",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://verbafy.io/#website"
      },
      "publisher": {
        "@id": "https://verbafy.io/#organization"
      }
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://verbafy.io"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Change the paid plan",
          "item": "https://verbafy.io/docs/api/billing/change-billing-plan"
        }
      ]
    }
  ]
}
```
