---
title: "Return a short-lived billing portal URL (plan changes, card, invoices, cancellation) for a paid key"
method: POST
path: "/v1/billing/portal"
---

# Return a short-lived billing portal URL (plan changes, card, invoices, cancellation) for a paid key

`POST /v1/billing/portal`

## Request

- Base URL: `https://shotkiln.com`
- URL: `https://shotkiln.com/v1/billing/portal`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

## Response `200`

{ url }

## Other responses

- `400`: no_subscription: the key is not on a paid plan
- `401`: Invalid or revoked API key
- `502`: billing_error

## Changes

- **2026-10-20** `8123a05b6719`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/shotkiln/apis/shotkiln-api/changes/v1/billing/portal/post.md)

---

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