Commet
  • Pricing
Log InTry out
Adjust balance POSTCancel subscription POSTChange plan POSTCreate a recovery payment link for a past due subscription POSTCreate subscription POSTGet active subscription GETGet subscription by ID GETList subscriptions GETPreview plan change POSTReactivate a past due or canceled subscription POSTTop up balance POSTRevert scheduled cancellation POSTUpdate payment method POST
DocumentationKnowledge BaseBuild with AIAPI ReferenceWebhooks

List subscriptions

List all subscriptions. Filter by customer ID or status.

GET
/subscriptions

List all subscriptions. Filter by customer ID or status.

Authorization

ApiKeyAuth
x-api-key<token>

In: header

Query Parameters

customerId?string
status?string

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/subscriptions"
{  "success": true,  "data": [    {      "id": "string",      "customerId": "string",      "plan": {        "id": "string",        "name": "string",        "basePrice": 0      },      "name": "string",      "description": "string",      "status": "draft",      "billingInterval": "weekly",      "consumptionModel": "metered",      "trialEndsAt": "2019-08-24T14:15:22Z",      "currentPeriod": {        "start": "2019-08-24T14:15:22Z",        "end": "2019-08-24T14:15:22Z",        "daysRemaining": 0      },      "features": [        {          "code": "string",          "name": "string",          "type": "boolean",          "enabled": true,          "usage": {            "current": 0,            "included": 0,            "overageQuantity": 0,            "overageUnitPrice": 0          }        }      ],      "credits": {        "remaining": 0,        "included": 0,        "purchased": 0      },      "balance": {        "remaining": 0,        "included": 0,        "currency": "string"      },      "cancellation": {        "scheduledAt": "2019-08-24T14:15:22Z",        "reason": "string",        "effectiveAt": "2019-08-24T14:15:22Z"      },      "cancelAtPeriodEnd": true,      "scheduledPlanChange": {        "changeType": "plan_downgrade",        "newPlanId": "string",        "newPlanName": "string",        "newBillingInterval": "string",        "scheduledFor": "2019-08-24T14:15:22Z"      },      "discount": {        "type": "percentage",        "value": 0,        "name": "string",        "endsAt": "2019-08-24T14:15:22Z"      },      "startDate": "2019-08-24T14:15:22Z",      "endDate": "2019-08-24T14:15:22Z",      "billingDayOfMonth": -9007199254740991,      "nextBillingDate": "2019-08-24T14:15:22Z",      "checkoutUrl": "string",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z",      "object": "subscription",      "livemode": true    }  ]}
{  "success": false,  "error": {    "type": "string",    "code": "string",    "message": "string",    "param": "string",    "details": null,    "doc_url": "string"  }}
{  "success": false,  "error": {    "type": "string",    "code": "string",    "message": "string",    "param": "string",    "details": null,    "doc_url": "string"  }}
{  "success": false,  "error": {    "type": "string",    "code": "string",    "message": "string",    "param": "string",    "details": null,    "doc_url": "string"  }}
{  "success": false,  "error": {    "type": "string",    "code": "string",    "message": "string",    "param": "string",    "details": null,    "doc_url": "string"  }}

Get subscription by ID GET

Get a subscription by its public ID, regardless of status (including pending_payment and past_due).

Preview plan change POST

Preview proration details for an immediate plan change (an upgrade or a longer interval) without applying it. Returns credit, charge, and net amount. Downgrades — a cheaper plan in the same group, or a shorter interval — are scheduled for the end of the current period instead of being prorated, so they return a 400 with code `plan_change_scheduled`; apply those via the change-plan endpoint.