---
title: "Billing Change"
method: POST
path: "/billing/change"
tags: ["billing"]
---

# Billing Change

`POST /billing/change`

## Request

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

Change an existing subscriber's tier in-app (no portal round-trip).

Called via fetch from the plans page, so it returns JSON (not a redirect).
Switches the tier within the SAME billing interval via the Polar merchant
API (proration applied immediately); switching monthly<->annual stays in
the portal. Uncancels first if the sub was scheduled to cancel.

## Query parameters

- `tier` string, required
- `billing` string

## Cookies

- `sentinelx_dash_session` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/sentinelx/apis/sentinelx-hub.md) · [All operations](https://skmtc.dev/sentinelx/apis/sentinelx-hub/llms.txt) · [OpenAPI document](https://skmtc.dev/sentinelx/apis/sentinelx-hub/revisions/d1f84924795e?raw)
