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

# Output formats

> Pretty tables, the JSON envelope, quiet mode, and TOON.

Four output modes are available on every command. They are selected with the global flags
`--json`, `--quiet`, and `--toon`.

Precedence when more than one is set: `--toon` > `--quiet` > `--json` > pretty.

## Pretty

The default when standard output is a terminal. Arrays render as aligned tables, objects as
key-value pairs, and related commands are appended as breadcrumbs.

```bash theme={"system"}
neetoinvoice whoami
```

```
Authenticated as oliver@example.com on acme.neetoinvoice.com (default).
```

Column choice, column order, and truncation all adapt to the terminal width, so pretty output
is meant for humans to read. Do not parse it. Use `--json` or `--toon` for anything that
consumes the output programmatically.

## JSON envelope

Used automatically when output is piped or redirected, and forced on a terminal with `--json`.

```bash theme={"system"}
neetoinvoice projects list --client-id 7c1f5e2a9b --json
```

```json theme={"system"}
{
  "data": {
    "projects": [
      {
        "id": "f627c399-379d-4d07-a6f6-90b7c9470ac0",
        "identifier": "89d1b47d9f36af3c9ecf",
        "name": "Website Redesign",
        "client_id": "3f0c0f87-ddc7-45f4-ad7a-c3690fa04963",
        "status": "active",
        "requires_daily_entry": false
      }
    ]
  },
  "breadcrumbs": [
    { "label": "Show", "command": "neetoinvoice projects show <project-id>" }
  ]
}
```

`breadcrumbs` is omitted when empty. `pagination` is present only on list commands that
paginate.

## Quiet

`--quiet` drops the envelope and emits the payload alone. On action commands it prints just
the identifier, which is what makes it useful in a pipeline.

```bash theme={"system"}
CLIENT_ID=$(neetoinvoice clients create --name "Acme Corp" --quiet)
neetoinvoice recipients create \
  --client "$CLIENT_ID" \
  --name "Sam Smith" \
  --email sam@example.com \
  --user-email oliver@example.com
```

`delete` commands print `success` in quiet mode.

## TOON

`--toon` emits Token-Optimized Output Notation: the same data as JSON with keys and whitespace
compressed, typically 30 to 60 percent fewer tokens. Prefer it when piping list or show output
into an AI assistant.

```bash theme={"system"}
neetoinvoice time-entries list --client 7c1f5e2a9b --project 89d1b47d9f36af3c9ecf --toon
```

Parse it by reading keys the way you would with JSON.

## Pagination

List commands that paginate accept `--page` (1-indexed) and `--page-size` (maximum 100). The
envelope's `pagination` object always exposes `current_page_number`, `total_pages`, and
`total_records`.

```bash theme={"system"}
neetoinvoice time-entries list \
  --client 7c1f5e2a9b \
  --project 89d1b47d9f36af3c9ecf \
  --page 2 \
  --page-size 50
```

To walk every page, increment `--page` until `current_page_number` equals `total_pages`.

## Exit codes and errors

Every command exits non-zero on failure and writes a single line to standard error. See
[Troubleshooting](/cli/troubleshooting) for the common messages.
