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

# List Plans

> Retrieve all pricing plans for a project

Returns all pricing plans in a project, including their associated features with full feature details.

## Endpoint

```
GET /api/v1/projects/{slug}/plans
```

## Authentication

<ParamField header="Authorization" type="string" required>
  Bearer token with your API key. Requires `read` or `read_write` permission.
</ParamField>

## Path Parameters

<ParamField path="slug" type="string" required>
  The project's URL-friendly slug identifier.
</ParamField>

## Response

<ResponseField name="plans" type="array">
  List of plan objects.

  <Expandable title="Plan object">
    <ResponseField name="id" type="number">
      Unique plan ID
    </ResponseField>

    <ResponseField name="name" type="string">
      Plan display name
    </ResponseField>

    <ResponseField name="description" type="string">
      Plan description
    </ResponseField>

    <ResponseField name="basePrice" type="number">
      Monthly base price of the plan
    </ResponseField>

    <ResponseField name="isPopular" type="boolean">
      Whether this plan is marked as "Popular"
    </ResponseField>

    <ResponseField name="isVisible" type="boolean">
      Whether this plan is visible on the pricing page
    </ResponseField>

    <ResponseField name="isFree" type="boolean">
      Whether this is a free plan
    </ResponseField>

    <ResponseField name="planFeatures" type="array">
      Features assigned to this plan
    </ResponseField>

    <ResponseField name="planFeatures[].id" type="number">
      Plan-feature association ID
    </ResponseField>

    <ResponseField name="planFeatures[].multiplier" type="number">
      Feature multiplier for this plan (e.g. `2` means 2x the base amount)
    </ResponseField>

    <ResponseField name="planFeatures[].feature" type="object">
      Full feature object with `id`, `name`, `featureType`, `basePrice`, etc.
    </ResponseField>

    <ResponseField name="createdAt" type="string">
      ISO 8601 creation timestamp
    </ResponseField>

    <ResponseField name="updatedAt" type="string">
      ISO 8601 last-updated timestamp
    </ResponseField>
  </Expandable>
</ResponseField>

## Example

```bash theme={null}
curl https://cuprice.io/api/v1/projects/my-saas-app/plans \
  -H "Authorization: Bearer cpk_your_key_here"
```

```json theme={null}
{
  "plans": [
    {
      "id": 200,
      "name": "Starter",
      "description": "For individuals and small projects",
      "basePrice": 0,
      "isPopular": false,
      "isVisible": true,
      "isFree": true,
      "planFeatures": [
        {
          "id": 300,
          "multiplier": 1,
          "feature": {
            "id": 101,
            "name": "AI Prompts",
            "featureType": "Limits",
            "basePrice": 10
          }
        }
      ],
      "createdAt": "2025-09-16T08:00:00.000Z",
      "updatedAt": "2025-09-16T08:00:00.000Z"
    },
    {
      "id": 201,
      "name": "Pro",
      "description": "For growing teams",
      "basePrice": 29,
      "isPopular": true,
      "isVisible": true,
      "isFree": false,
      "planFeatures": [
        {
          "id": 301,
          "multiplier": 5,
          "feature": {
            "id": 101,
            "name": "AI Prompts",
            "featureType": "Limits",
            "basePrice": 10
          }
        },
        {
          "id": 302,
          "multiplier": 1,
          "feature": {
            "id": 102,
            "name": "Team Members",
            "featureType": "Standart",
            "basePrice": 5
          }
        },
        {
          "id": 303,
          "multiplier": 1,
          "feature": {
            "id": 104,
            "name": "Priority Support",
            "featureType": "Standart",
            "basePrice": 20
          }
        }
      ],
      "createdAt": "2025-09-16T08:05:00.000Z",
      "updatedAt": "2025-11-20T14:30:00.000Z"
    },
    {
      "id": 202,
      "name": "Enterprise",
      "description": "For large organizations",
      "basePrice": 99,
      "isPopular": false,
      "isVisible": true,
      "isFree": false,
      "planFeatures": [
        {
          "id": 304,
          "multiplier": 20,
          "feature": {
            "id": 101,
            "name": "AI Prompts",
            "featureType": "Limits",
            "basePrice": 10
          }
        },
        {
          "id": 305,
          "multiplier": 10,
          "feature": {
            "id": 102,
            "name": "Team Members",
            "featureType": "Standart",
            "basePrice": 5
          }
        },
        {
          "id": 306,
          "multiplier": 1,
          "feature": {
            "id": 104,
            "name": "Priority Support",
            "featureType": "Standart",
            "basePrice": 20
          }
        }
      ],
      "createdAt": "2025-09-16T08:10:00.000Z",
      "updatedAt": "2025-11-20T14:30:00.000Z"
    }
  ]
}
```

## Errors

| Status | Description                           |
| ------ | ------------------------------------- |
| `401`  | Invalid or missing API key            |
| `404`  | Project with the given slug not found |
