v62
latestOpenAPI 3.1.0Dual (AGPL3.0, Commercial License Available)raw.githubusercontent.com2026-08-03211303932.5 KBbilling
internal
Cancel subscription
In-app cancel modal endpoint. Sets Stripe cancel_at to the current period end (via Stripe's MaxPeriodEnd sentinel), stashes the canonical Scanopy reason in subscription metadata, returns the period end so the modal can render the retention disclosure.
post/api/billing/cancel
Request body
Response
Cancellation initiated
Example response
{
"meta": {
"api_version": 1,
"server_version": "0.17.7"
}
}