> ## Documentation Index
> Fetch the complete documentation index at: https://developers.supapost.so/llms.txt
> Use this file to discover all available pages before exploring further.

# List Plans

> Retrieve the public plan catalog.

Returns every active plan a team can subscribe to. Use it to render pricing pages or to let an agent reason about the upgrade path when credits run low.

## Response

```json 200 theme={null}
[
  {
    "id": "plan-uuid",
    "slug": "starter",
    "name": "Starter",
    "description": "For hobbyists",
    "is_active": true,
    "price_cents": 1200,
    "currency": "usd",
    "monthly_credits": 200,
    "allowed_models": ["fal:nano-banana-2"],
    "allowed_features": ["influencer"],
    "stripe_product_id": "prod_...",
    "stripe_price_id": "price_...",
    "sort_order": 10
  }
]
```

### Fields

<ResponseField name="slug" type="string">
  URL-safe identifier. Stable across renames of `name`.
</ResponseField>

<ResponseField name="price_cents" type="integer">
  Monthly price in the smallest currency unit (cents for USD).
</ResponseField>

<ResponseField name="monthly_credits" type="integer">
  Credits granted at each billing cycle. Resets `credits_remaining`
  on `/billing/subscription`.
</ResponseField>

<ResponseField name="allowed_models" type="string[]">
  Model ids this plan can call. A generation request against a model
  not in this list returns 403.
</ResponseField>

<ResponseField name="allowed_features" type="string[]">
  Feature surfaces (e.g. `influencer`, `slides`, `broll`, `export`)
  the plan includes. Separate from models.
</ResponseField>

## Example

```bash cURL theme={null}
curl https://api.supapost.so/billing/plans \
  -H "Authorization: Bearer YOUR_API_KEY"
```
