Churn Events
Churn events represent customer cancellations and failed payments. Each event triggers AI-powered recovery workflows.Event Status Lifecycle
Every churn event moves through a defined lifecycle:Create a Churn Event
Create a new churn event manually (alternative to webhooks).Request Body
Customer’s email address.
Customer’s display name.
Type of churn:
cancellation or payment_failed.Free-text reason for cancellation. Drives AI strategy selection.
Monthly recurring revenue in cents.
ISO 4217 currency code. Defaults to
usd.Subscription plan name.
Days the customer has been subscribed.
Example Request
Example Response
List Churn Events
Retrieve a paginated list of churn events for a project.Query Parameters
Page number.
Items per page (max 100).
Filter by status:
new, processing, variants_generated, email_sent, recovered, lost.Filter by type:
cancellation or payment_failed.Example Request
Example Response
Get a Churn Event
Retrieve a single churn event by ID.Example Request
Example Response
Mark as Recovered
Mark a churn event as recovered when the customer reactivates.Example Request
Example Response
Stripe and Razorpay integrations automatically mark events as recovered when a
payment_succeeded or payment.captured event is received.Update Cancel Reason
Update the cancel reason on an existing churn event. Useful when the reason is collected after the event is created.Request Body
The updated cancel reason.