---
title: "Change Plan"
method: POST
path: "/api/billing/change-plan"
tags: ["billing"]
---

# Change Plan

`POST /api/billing/change-plan`

## Request

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

Switch plans. An active subscriber is moved in place (prorated) at the
provider; a workspace with no live subscription gets a checkout link.

## Headers

- `authorization` string, nullable
- `x-workspace-id` string, nullable

## Request body

- ChangePlanIn
  - `tier` 'starter' | 'pro' | 'superior' | 'enterprise', required
  - `interval` 'monthly' | 'annual'

## Response `200`

Successful Response

- ChangePlanOut
  - `changed` boolean
  - `checkout_url` string, nullable
  - `mode` string
  - `session_id` string, nullable

## Other responses

- `422`: Validation Error

---

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