Skip to main content
POST
/
v1
/
plans.list
Typescript (SDK)
import { Autumn } from 'autumn-js'

const autumn = new Autumn()

const result = await autumn.plans.list({});
{
  "list": [
    {
      "id": "pro",
      "name": "Pro Plan",
      "description": null,
      "group": null,
      "version": 1,
      "addOn": false,
      "autoEnable": false,
      "price": {
        "amount": 10,
        "interval": "month",
        "display": {
          "primaryText": "$10",
          "secondaryText": "per month"
        }
      },
      "items": [
        {
          "featureId": "messages",
          "included": 100,
          "unlimited": false,
          "reset": {
            "interval": "month"
          },
          "price": {
            "amount": 0.5,
            "interval": "month",
            "billingUnits": 100,
            "billingMethod": "usage_based",
            "maxPurchase": null
          },
          "display": {
            "primaryText": "100 messages",
            "secondaryText": "then $0.5 per 100 messages"
          }
        },
        {
          "featureId": "users",
          "included": 0,
          "unlimited": false,
          "reset": null,
          "price": {
            "amount": 10,
            "interval": "month",
            "billingUnits": 1,
            "billingMethod": "prepaid",
            "maxPurchase": null
          },
          "display": {
            "primaryText": "$10 per Users"
          }
        }
      ],
      "createdAt": 1771513979217,
      "env": "sandbox",
      "archived": false,
      "baseVariantId": null
    }
  ]
}
Lists all plans in the current environment.
Pass a customer_id to include customer-specific eligibility info like whether a free trial is available and the attach scenario (new, upgrade, downgrade).

Common Use Cases

const plans = await autumn.plans.list();

Body Parameters

Response

{
  "list": [
    {
      "id": "pro",
      "name": "Pro Plan",
      "description": null,
      "group": null,
      "version": 1,
      "addOn": false,
      "autoEnable": false,
      "price": {
        "amount": 10,
        "interval": "month",
        "display": {
          "primaryText": "$10",
          "secondaryText": "per month"
        }
      },
      "items": [
        {
          "featureId": "messages",
          "included": 100,
          "unlimited": false,
          "reset": {
            "interval": "month"
          },
          "price": {
            "amount": 0.5,
            "interval": "month",
            "billingUnits": 100,
            "billingMethod": "usage_based",
            "maxPurchase": null
          },
          "display": {
            "primaryText": "100 messages",
            "secondaryText": "then $0.5 per 100 messages"
          }
        },
        {
          "featureId": "users",
          "included": 0,
          "unlimited": false,
          "reset": null,
          "price": {
            "amount": 10,
            "interval": "month",
            "billingUnits": 1,
            "billingMethod": "prepaid",
            "maxPurchase": null
          },
          "display": {
            "primaryText": "$10 per Users"
          }
        }
      ],
      "createdAt": 1771513979217,
      "env": "sandbox",
      "archived": false,
      "baseVariantId": null
    }
  ]
}

Authorizations

Authorization
string
header
required

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

Headers

x-api-version
string
default:2.1
required

Body

application/json
customer_id
string

Customer ID to include eligibility info (trial availability, attach scenario).

entity_id
string

Entity ID for entity-scoped plans.

include_archived
boolean

If true, includes archived plans in the response.

Response

200 - application/json

OK

list
object[]
required