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

# Packages

> List packages and view their purchases.

A package bundles a number of bookings that a client buys upfront. See the [API reference](/api-reference/packages/list) for the full resource shape.

## List packages

```bash theme={"system"}
neetocal packages list
neetocal packages list --page 1 --page-size 20
```

| Flag          | Type  | Required | Default | Description              |
| ------------- | ----- | -------- | ------- | ------------------------ |
| `--page`      | `int` |          | `0`     | Page number              |
| `--page-size` | `int` |          | `0`     | Items per page (max 100) |

```json Sample output (--json) theme={"system"}
{
  "data": [
    {
      "id": "aff17ff8-1bf8-4e77-a3c5-2f86104f9a20",
      "name": "Consultation Package",
      "slug": "consultation-package",
      "status": "enabled",
      "duration": 7200,
      "fee": {
        "id": "1b217cc5-69b5-4fb1-a13c-c22f9c14e7f9",
        "amount": "120.0",
        "currency": "usd",
        "kind": "fixed",
        "payment_provider": "stripe"
      }
    }
  ],
  "pagination": { "total_records": 1, "total_pages": 1, "current_page_number": 1, "page_size": 30 }
}
```

Mirrors [List packages](/api-reference/packages/list) in the API.

## Show a package

```bash theme={"system"}
neetocal packages show <id>
```

```json Sample output (--json) theme={"system"}
{
  "data": {
    "package": {
      "id": "aff17ff8-1bf8-4e77-a3c5-2f86104f9a20",
      "name": "Consultation Package",
      "slug": "consultation-package",
      "status": "enabled",
      "duration": 7200,
      "fee": {
        "id": "1b217cc5-69b5-4fb1-a13c-c22f9c14e7f9",
        "amount": "120.0",
        "currency": "usd",
        "kind": "fixed",
        "payment_provider": "stripe",
        "amount_in_smallest_currency_unit": 12000
      }
    }
  }
}
```

Returns the package details. Mirrors [Get package](/api-reference/packages/get) in the API.

## List purchases for a package

```bash theme={"system"}
neetocal packages purchases list <package-id>
```

| Flag          | Type  | Required | Default | Description              |
| ------------- | ----- | -------- | ------- | ------------------------ |
| `--page`      | `int` |          | `0`     | Page number              |
| `--page-size` | `int` |          | `0`     | Items per page (max 100) |

```json Sample output (--json) theme={"system"}
{
  "data": [
    {
      "id": "1b217cc5-69b5-4fb1-a13c-c22f9c14e7f9",
      "name": "Oliver Smith",
      "email": "oliver@example.com",
      "purchase_code": "PUR-123456",
      "duration_remaining": 3600,
      "status": "confirmed",
      "notes": null,
      "package_id": "aff17ff8-1bf8-4e77-a3c5-2f86104f9a20",
      "duration": 7200,
      "created_at": "2026-05-01T10:00:00Z",
      "updated_at": "2026-05-01T10:30:00Z"
    }
  ],
  "pagination": { "total_records": 1, "total_pages": 1, "current_page_number": 1, "page_size": 30 }
}
```

Mirrors [List package purchases](/api-reference/packages/list-purchases) in the API.

## Show a package purchase

```bash theme={"system"}
neetocal packages purchases show <package-id> <purchase-id>
```

```json Sample output (--json) theme={"system"}
{
  "data": {
    "purchase": {
      "id": "1b217cc5-69b5-4fb1-a13c-c22f9c14e7f9",
      "name": "Oliver Smith",
      "email": "oliver@example.com",
      "purchase_code": "PUR-123456",
      "duration_remaining": 3600,
      "status": "confirmed",
      "notes": null,
      "package_id": "aff17ff8-1bf8-4e77-a3c5-2f86104f9a20",
      "duration": 7200,
      "created_at": "2026-05-01T10:00:00Z",
      "updated_at": "2026-05-01T10:30:00Z",
      "payment": {
        "amount": "120.0",
        "currency": "usd",
        "status": "successful",
        "payment_provider": "stripe",
        "payment_at": "2026-05-01T10:30:00Z"
      }
    }
  }
}
```

Returns a single purchase for the package. Mirrors [Get package purchase](/api-reference/packages/get-purchase) in the API.
