Skip to main content
WEBHOOK
billing.updated
{
  "type": "billing.updated",
  "data": {
    "object": "billing.updated",
    "customer_id": "cus_123",
    "plan_changes": [
      {
        "action": "activated",
        "subscription": {
          "plan_id": "pro",
          "status": "active",
          "past_due": false,
          "started_at": 1779000000000,
          "canceled_at": null,
          "expires_at": null,
          "trial_ends_at": null,
          "current_period_start": 1779000000000,
          "current_period_end": 1781592000000
        },
        "previous_attributes": null,
        "item_changes": []
      },
      {
        "action": "expired",
        "subscription": {
          "plan_id": "free",
          "status": "expired",
          "past_due": false,
          "started_at": 1776000000000,
          "canceled_at": 1779000000000,
          "expires_at": 1779000000000,
          "trial_ends_at": null,
          "current_period_start": null,
          "current_period_end": null
        },
        "previous_attributes": {
          "status": "active"
        },
        "item_changes": []
      }
    ],
    "tags": []
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.useautumn.com/llms.txt

Use this file to discover all available pages before exploring further.

Payload Fields

object
string
required
customer_id
string
required
The ID of the customer whose plans changed.
entity_id
string | null
The ID of the entity, if the changes are scoped to a specific entity.
plan_changes
object[]
required
The plans that were activated, scheduled, updated, or expired.
tags
string[]
required
Reason tags describing why this event fired (e.g. ‘trial_ended’, ‘phase_changed’). Always present; empty when no specific reason applies.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
type
string
required

The webhook event type.

Allowed value: "billing.updated"
data
object
required
Example:
{
  "object": "billing.updated",
  "customer_id": "cus_123",
  "plan_changes": [
    {
      "action": "activated",
      "subscription": {
        "plan_id": "pro",
        "status": "active",
        "past_due": false,
        "started_at": 1779000000000,
        "canceled_at": null,
        "expires_at": null,
        "trial_ends_at": null,
        "current_period_start": 1779000000000,
        "current_period_end": 1781592000000
      },
      "previous_attributes": null,
      "item_changes": []
    },
    {
      "action": "expired",
      "subscription": {
        "plan_id": "free",
        "status": "expired",
        "past_due": false,
        "started_at": 1776000000000,
        "canceled_at": 1779000000000,
        "expires_at": 1779000000000,
        "trial_ends_at": null,
        "current_period_start": null,
        "current_period_end": null
      },
      "previous_attributes": { "status": "active" },
      "item_changes": []
    }
  ],
  "tags": []
}

Response

200

Webhook received successfully.