Skip to main content
GET

Response

  • totals — churned memberships and the distinct customers behind them (a customer can hold several memberships), plus the voluntary/involuntary split and percentages.
  • reasons — one row per terminal membership status, with its share of churn and average/median tenure. voluntary is a member-initiated cancellation; involuntary is a payment or authorizer failure.
  • tenure — days from signup to cancellation, overall and by churn type, plus day-range buckets.

Notes

Tenure is reported only for members with a known signup date — read tenure.*.membersWithKnownTenure as that subset’s size. A membership counts as churned once its terminal status is anything other than active, suspended, or an in-progress card update.

Errors

  • 400 — cancellation analytics are not available for this organization.
  • 401 — missing or invalid API key.

Authorizations

Authorization
string
header
required

Clerk tenant API key. The organizationId encoded by the key is the exact and only tenant scope.

Query Parameters

start
string<date-time>

Inclusive lower bound on the date (ISO 8601 date or datetime). Invalid values are ignored. Omit for all-time.

end
string<date-time>

Inclusive upper bound on the date (ISO 8601 date or datetime). Invalid values are ignored. Omit for all-time.

Response

Cancellation analytics for the tenant-scoped organization.

organizationId
string
required
dateRange
Date range · object
required
source
enum<string>
required
Available options:
membership_status
available
boolean
required
totals
Cancellation totals · object
required
reasons
Cancellation reason row · object[]
required
tenure
object
required