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

# Plane CLI commands

> Use supported Plane CLI commands for authentication and read-only API resources.

This page documents the supported Plane CLI commands. The CLI supports
authentication, read-only resource inspection, and the existing payment creation
command.

## Authentication Commands

Use the top-level auth commands to manage your Plane CLI session.

```bash theme={null}
plane login
plane whoami
plane logout
```

### Login Options

```bash theme={null}
plane login --browser
plane login --api-key
```

* `--browser` starts browser-based authentication and is the default.
* `--api-key` prompts for API key entry in the terminal.

<Warning>
  Do not pass `--browser` and `--api-key` together.
</Warning>

## Read-Only Resource Commands

Most resource groups support `list` and `get`. List commands accept the shared
pagination options documented below.

| Resource                   | Commands                                                                                                                       |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| Benefit elections          | `plane benefit-elections list`, `plane benefit-elections get ID`                                                               |
| Benefit enrollments        | `plane benefit-enrollments list`, `plane benefit-enrollments get ID`                                                           |
| Benefit events             | `plane benefit-events list`, `plane benefit-events get ID`                                                                     |
| Benefit plans              | `plane benefit-plans list`, `plane benefit-plans get ID`                                                                       |
| Benefit programs           | `plane benefit-programs list`, `plane benefit-programs get ID`                                                                 |
| Charges                    | `plane charges list`, `plane charges get ID [--expand FIELD]`                                                                  |
| Classifications            | `plane classifications list`, `plane classifications get ID`                                                                   |
| Compensations              | `plane compensations list`, `plane compensations get ID`                                                                       |
| Employments                | `plane employments list`, `plane employments get ID`                                                                           |
| Events                     | `plane events list`, `plane events get ID`                                                                                     |
| Labor taxes                | `plane labor-taxes list`, `plane labor-taxes get ID`                                                                           |
| Leave balance transactions | `plane leave-balance-transactions list --leave-balance-id ID`, `plane leave-balance-transactions get ID --leave-balance-id ID` |
| Leave balances             | `plane leave-balances list`, `plane leave-balances get ID`                                                                     |
| Leave entitlements         | `plane leave-entitlements list`, `plane leave-entitlements get ID`                                                             |
| Leave policies             | `plane leave-policies list`, `plane leave-policies get ID`                                                                     |
| Leave requests             | `plane leave-requests list`, `plane leave-requests get ID`                                                                     |
| Leaves                     | `plane leaves list`, `plane leaves get ID`                                                                                     |
| Locations                  | `plane locations list`, `plane locations get ID`                                                                               |
| Payment requests           | `plane payment-requests list`, `plane payment-requests get ID [--expand FIELD]`                                                |
| Payments                   | `plane payments list`, `plane payments get ID [--expand FIELD]`                                                                |
| Payrolls                   | `plane payrolls list`, `plane payrolls get ID [--expand FIELD]`                                                                |
| Positions                  | `plane positions list`, `plane positions get ID`                                                                               |
| Refunds                    | `plane refunds list`, `plane refunds get ID`                                                                                   |
| Reportings                 | `plane reportings list`, `plane reportings get ID`                                                                             |
| Roles                      | `plane roles list`, `plane roles get ID`                                                                                       |
| Sandboxes                  | `plane sandboxes list`, `plane sandboxes get ID`                                                                               |
| Time entries               | `plane time-entries list`, `plane time-entries get ID`                                                                         |
| Worker addresses           | `plane worker-addresses list`, `plane worker-addresses get ID`                                                                 |
| Worker beneficiaries       | `plane worker-beneficiaries list`, `plane worker-beneficiaries get ID`                                                         |
| Worker contacts            | `plane worker-contacts list`, `plane worker-contacts get ID`                                                                   |
| Worker dependents          | `plane worker-dependents list`, `plane worker-dependents get ID`                                                               |
| Workers                    | `plane workers list`, `plane workers get ID [--expand FIELD]`                                                                  |
| Workforce calculations     | `plane workforce-calculations get ID`                                                                                          |
| Workforce plans            | `plane workforce-plans list`, `plane workforce-plans get ID`                                                                   |

Examples:

```bash theme={null}
plane workers list --limit 25
plane payment-requests get pr_abc123 --expand worker
plane benefit-plans list --json | jq
```

## Payment Creation

Create a payment:

```bash theme={null}
plane payments create \
  --worker wr_abc123 \
  --amount 1000 \
  --currency usd
```

Create a payment with optional fields:

```bash theme={null}
plane payments create \
  --worker wr_abc123 \
  --amount 1500 \
  --currency usd \
  --account ba_abc123 \
  --date 2026-04-22 \
  --reference "APR-2026-BONUS" \
  --note "Project completion bonus" \
  --period-start 2026-04-01 \
  --period-end 2026-04-30
```

Required options:

* `--worker`
* `--amount`
* `--currency`

Optional options:

* `--account`
* `--date`
* `--reference`
* `--note`
* `--period-start` inclusive start date for an associated period (`YYYY-MM-DD`)
* `--period-end` inclusive end date for an associated period (`YYYY-MM-DD`)

<Note>
  When you provide a period, pass both `--period-start` and `--period-end` together.
</Note>

## Pagination Options

These options apply to list commands:

* `--limit` maximum results (`1-100`)
* `--cursor` pagination cursor
* `--starting-after` return results after an ID
* `--ending-before` return results before an ID

Example:

```bash theme={null}
plane workers list --limit 25 --starting-after wr_100
```

## Resource-Specific Filters

Some list commands support filters beyond pagination.

| Command                                 | Filters                                                                          |
| --------------------------------------- | -------------------------------------------------------------------------------- |
| `plane benefit-elections list`          | `--worker`, `--plan`, `--enrollment`, `--status`                                 |
| `plane benefit-enrollments list`        | `--worker`, `--event`, `--status`                                                |
| `plane benefit-events list`             | `--program`, `--entity`, `--worker`, `--type`                                    |
| `plane benefit-plans list`              | `--program`, `--provider`, `--type`, `--status`                                  |
| `plane benefit-programs list`           | `--entity`, `--year`, `--status`                                                 |
| `plane charges list`                    | `--updated-after`                                                                |
| `plane compensations list`              | `--worker`, `--status`                                                           |
| `plane labor-taxes list`                | `--country`, `--subdivision`, `--code`, `--category`, `--classification`, `--on` |
| `plane leave-balance-transactions list` | `--leave-balance-id` (required), `--type`, `--status`                            |
| `plane leave-balances list`             | `--worker`, `--policy`, `--type`                                                 |
| `plane leave-entitlements list`         | `--worker`, `--policy`, `--type`                                                 |
| `plane leave-policies list`             | `--workspace`, `--type`                                                          |
| `plane leave-requests list`             | `--starts`, `--ends`, `--status`, `--worker`, `--leave`                          |
| `plane leaves list`                     | `--starts`, `--ends`, `--worker`, `--status`, `--type`                           |
| `plane payment-requests list`           | `--status`                                                                       |
| `plane payments list`                   | `--updated-after`                                                                |
| `plane positions list`                  | `--plan`, `--status`                                                             |
| `plane refunds list`                    | `--status`                                                                       |
| `plane worker-addresses list`           | `--worker`, `--purpose`, `--current`                                             |
| `plane worker-beneficiaries list`       | `--worker`, `--type`, `--status`                                                 |
| `plane worker-contacts list`            | `--worker`, `--purpose`, `--status`                                              |
| `plane worker-dependents list`          | `--worker`, `--relationship`, `--status`                                         |
| `plane workers list`                    | `--query`, `--email`, `--updated-after`, `--type`, `--country`                   |
| `plane workforce-plans list`            | `--status`                                                                       |

## Expandable Get Commands

Some get commands support `--expand FIELD` to include nested resources in the
response. Pass multiple fields as separate values after `--expand`.

| Command                         | Option     |
| ------------------------------- | ---------- |
| `plane charges get ID`          | `--expand` |
| `plane payment-requests get ID` | `--expand` |
| `plane payments get ID`         | `--expand` |
| `plane payrolls get ID`         | `--expand` |
| `plane workers get ID`          | `--expand` |

Example:

```bash theme={null}
plane payments get pt_abc123 --expand worker
```

## Output Format

The CLI prints human-readable output by default.

```bash theme={null}
plane workers list
```

For machine-readable output, pass `--json` to functional commands:

```bash theme={null}
plane workers list --json | jq
```

JSON mode always returns a deterministic envelope (`status` with either `data`
or `error`) and excludes CLI UI artifacts.
