Skip to content

Subscription.unsubscribed

Emitted each time a Subscription is unsubscribed.

Subscription.unsubscribe emits Subscription.unsubscribed when it completes on a Subscription.

PropertyValue
Emitted bySubscription.unsubscribe
NounSubscription
MovesCustomer trialing to churned when it ends its last active Subscription; Customer activated to churned when it ends its last active Subscription; Customer atRisk to churned when it ends its last active Subscription; Customer wonBack to churned when it ends its last active Subscription; Subscription incomplete to canceled; Subscription trialing to canceled; Subscription active to canceled; Subscription paused to canceled
WakesSave and win back

Payload

Each delivery is an Event record. data holds what Subscription.unsubscribe returns, and previous holds the state it left.

FieldTypeRequiredDescription
namestringrequiredSubscription.unsubscribed.
atdatetimerequiredWhen it happened.
seqintegerIts position in the namespace, one more than the Event before; any seq is a cursor into the history.
datajsonrequiredThe Thing as the Action left it.
data.subscriptionSubscriptionrequiredThe Subscription, ending.
data.subscription.statusstringrequiredOne of active, trialing, pastDue, paused, incomplete, or canceled.
data.subscription.renewsAtdatetimeWhen it next renews.
data.subscription.quantityintegerHow many units of the Offer’s Price it holds, such as 12 members; 1 by default.
data.subscription.trialEndsAtdatetimeWhen a trial ends and the first paid period starts.
data.subscription.termEndsAtdatetimeWhen a committed term ends; the Renewal and the renewal notice read it.
data.previous.statusstringrequiredThe status before this Event: incomplete.

Example

JSON
{
  "$id": "https://api.sb/routewise.dev/events/event_1",
  "$type": "Event",
  "name": "Subscription.unsubscribed",
  "at": "2026-10-22T12:00:00Z",
  "data": {
    "subscription": {
      "$id": "https://api.sb/routewise.dev/subscriptions/subscription_1",
      "$type": "Subscription",
      "status": "canceled",
      "renewsAt": "2026-10-22T12:00:00Z",
      "quantity": 1,
      "trialEndsAt": "2026-10-22T12:00:00Z",
      "termEndsAt": "2026-10-22T12:00:00Z"
    },
    "previous": {
      "status": "incomplete"
    }
  },
  "seq": 1
}