Skip to content

Cancel Subscription

Schedules a cancellation at the end of the current billing period. No refund is issued — the subscription keeps running at the current tier until current_period_end, then the tenant is dropped to FREE and the subscription is closed.

DELETE /v1/subscriptions

Authentication

Authorization: Bearer <api-key>

Requires an ACTIVE subscription and a production API key — sandbox tenants must promote first. If you want to move to a lower paid tier instead of cancelling entirely, use POST /v1/subscriptions/change-tier.

How it works

Calling this endpoint sets pending_tier = 'FREE' on your active subscription and returns immediately — it does not cancel access on the spot. The subscription continues as normal until current_period_end. The provider's daily scheduled job (POST /v1/admin/jobs/subscriptions) then applies the cancellation: your tier drops to FREE, your document_quota resets to the FREE allowance, and the subscription status becomes CANCELLED.

There is no refund for the remaining time in the current period.

Request body

None.

Response

200 OK

json
{
  "ok": true,
  "subscription": {
    "id": "00000000-0000-0000-0000-000000000012",
    "tenant_id": 4,
    "tier": "STARTER",
    "billing_interval": "MONTHLY",
    "status": "ACTIVE",
    "pending_tier": "FREE",
    "current_period_start": "2026-06-15T00:00:00.000Z",
    "current_period_end": "2026-07-15T00:00:00.000Z"
  },
  "effectiveAt": "2026-07-15T00:00:00.000Z"
}

effectiveAt is the current_period_end at which the cancellation will be applied. Your subscription's pending_tier field will read "FREE" until then.

What happens next

There is no notification when the cancellation is applied — poll GET /v1/subscriptions/me to confirm the status flipped to CANCELLED, or GET /v1/tenants/me to confirm your tier and quota dropped to the FREE values.

No renewal reminder will be issued for a pending-cancellation subscription.

Errors

StatusCodeWhen
401UNAUTHORIZEDMissing or invalid API key
403REQUIRES_PRODUCTIONTenant is still in sandbox — promote to production first
409NO_ACTIVE_SUBSCRIPTIONYou have no ACTIVE subscription to cancel
409CANCELLATION_ALREADY_PENDINGA cancellation is already scheduled for this subscription
409TIER_CHANGE_ALREADY_PENDINGA paid-tier downgrade is already scheduled, or an upgrade payment is already in flight — resolve it first
429TOO_MANY_REQUESTSRate limit exceeded

Comprobify API Documentation