Skip to main content
The CLI picks a format from where its output is going, and four global flags override that choice. They work on every command. If more than one is set, the precedence is --toon, then --quiet, then --json, then pretty.

Pretty

The default on a terminal. Arrays render as tables, single records as key-value blocks, and list commands print a pagination summary and breadcrumbs to related commands underneath.
Tables show at most seven columns, chosen from the fields the API returned and trimmed to your terminal width. Which columns appear is therefore not stable across resources or terminals. Use --json for anything you intend to parse, which is the format every sample in the command reference uses.

JSON envelope

Used automatically when output is piped or redirected, and forced with --json. The payload is wrapped in an envelope:
data holds the resource body. breadcrumbs is omitted when there are none, and pagination appears only on list commands.

Quiet

--quiet drops the envelope and prints the payload alone, which is what you want inside a script:
For commands that create or update a record it prints just the identifier, and for delete it prints success. That makes a new record’s id easy to capture:

TOON

--toon emits TOON, which carries the same data as JSON with the repeated keys factored out. It is meant for handing results to an AI assistant, where it costs noticeably fewer tokens than the equivalent JSON.
Read it as the JSON it stands for: a header names the fields once, and each following line is one record’s values in that order.

Pagination

List commands take --page (1-indexed, default 1) and --page-size (maximum 100). The envelope’s pagination block reports current_page_number, total_pages, total_records and page_size, so a script can walk every page by incrementing --page until it reaches total_pages.