Commet
  • Pricing
Log InTry out
Introduction

Subscription Events

subscription.createdsubscription.activatedsubscription.canceledsubscription.updatedsubscription.plan_changedsubscription.cancellation_scheduledsubscription.cancellation_revokedsubscription.plan_change_scheduledsubscription.plan_change_revokedsubscription.past_due

Trial Events

trial.startedtrial.convertedtrial.expiredtrial.will_endtrial.checkout_ready

Checkout Events

checkout.ready

Payment Events

payment.receivedpayment.failedpayment.recoveredpayment.refundedpayment.disputedpayment.dispute_resolved

Invoice Events

invoice.createdinvoice.upcominginvoice.overdueinvoice.voided

Payment Method Events

payment_method.attachedpayment_method.updated

Customer Events

customer.createdcustomer.updatedcustomer.state_changed

Credits & Balance Events

credits.grantedcredits.purchasedcredits.lowcredits.depletedcredits.expiredbalance.topped_upbalance.lowbalance.depleted

Quota & Usage Events

quota.threshold_reachedquota.exceededusage.recorded

Seat Events

seats.updatedseats.limit_reached

Add-on Events

addon.activatedaddon.deactivated

Payout Events

payout.availablepayout.createdpayout.paidpayout.failed
DocumentationKnowledge BaseBuild with AIAPI ReferenceWebhooks

subscription.cancellation_revoked

Fired when a scheduled cancellation is reverted before it executes. The subscription continues normally.

Payload

All webhook payloads follow a consistent top-level structure with event-specific data nested within the data object.

subscriptionIdstring

The subscription ID.

customerIdstring

The customer ID. Returns your externalId if you provided one when creating the customer, otherwise returns the Commet publicId.

statusstring

Current status — typically "active". The scheduled cancellation no longer applies.

currentPeriodEndstring | null

ISO 8601 end of the current billing period, which continues normally.

{
  "event": "subscription.cancellation_revoked",
  "timestamp": "2026-04-22T09:00:00.000Z",
  "organizationId": "org_abc123",
  "mode": "live",
  "apiVersion": "2026-05-25",
  "data": {
    "subscriptionId": "sub_1a2b3c4d",
    "customerId": "user_123",
    "status": "active",
    "currentPeriodEnd": "2026-04-25T00:00:00.000Z"
  }
}

When this fires

A customer (or your team, from the dashboard) reverts a cancellation that was scheduled for the end of the billing period. The scheduled cancel is removed and the subscription renews normally at currentPeriodEnd.

If your UI shows an "ending on" notice from subscription.cancellation_scheduled, remove it when you receive this event. subscription.updated also fires at this moment for backward compatibility.

This event never fires after subscription.canceled — once a cancellation has executed it cannot be reverted.

How is this guide?

subscription.cancellation_scheduled

Fired when a cancellation is scheduled for the end of the billing period. Do NOT revoke access yet.

subscription.plan_change_scheduled

Fired when a downgrade or interval change is scheduled for the end of the billing period.