Skip to main content
Output is a table when you’re at a terminal and JSON when piped, so channel3 ... | jq works without a flag. Choose explicitly with --format:
--format accepts json, table, yaml, csv, jsonl, raw, and http. jsonl emits one compact JSON value per line and flattens arrays; raw emits the server’s bytes unmodified; http prints the full response with status line and headers, like curl -i.

Extracting fields

--query takes a JMESPath expression applied to the response before formatting. Extract only product titles:
Extract the first offer price:
Compare retailer offers:
--query is the projection flag, not the search term. The search term is --query-param. In CLI versions up to 0.4.1, --query meant the search term, so old scripts must be updated or they will fail.

Migrating from --transform

Versions up to 0.4.1 used --transform with GJSON. That flag is gone; --query replaces it, using JMESPath syntax: The rule of thumb: .#. becomes [], and a numeric index like .0. becomes [0]. --format-error and --transform-error, which formatted and projected error output separately, have no equivalent.

Pagination

--page-all follows pagination and streams every result as NDJSON, up to --page-limit pages (default 10):