datapress-cli 0.4.24

Command-line client for a DataPress dataset server, built on datapress-client.
datapress-cli-0.4.24 is not a library.

datapress-cli

Command-line client for a DataPress dataset server, built on datapress-client.

Install

cargo install datapress-cli

Connection

Set once via environment, or pass per-command flags:

Env var Flag Default
DATAPRESS_URL --url http://127.0.0.1:8000
DATAPRESS_TOKEN --bearer-token
DATAPRESS_ADMIN_TOKEN --admin-token
--api-base /api/v1
--timeout — (seconds)

Add --pretty to pretty-print JSON (default is compact, single-line).

Commands

# List datasets
datapress-cli datasets

# Schema
datapress-cli schema accidents

# Count (repeatable --where "col:op[:val]")
datapress-cli count accidents --where Severity:gte:3

# Structured query
datapress-cli query accidents \
  --select State,Severity \
  --where Severity:gte:3 \
  --order-by Severity:desc \
  --page-size 1000

# Group-by with aggregation + HAVING
datapress-cli query accidents \
  --group-by State \
  --agg count:n \
  --agg avg:Severity:mean_sev \
  --having n:gt:1000 \
  --order-by n:desc

# Render an ASCII table (fetches via Arrow IPC)
datapress-cli query accidents --select State,Severity --page-size 20 --table

# Save raw Arrow IPC stream to a file ( - for stdout)
datapress-cli query accidents --select State,Severity --arrow-out out.arrow

# Raw SQL (endpoint must be enabled server-side)
datapress-cli sql "SELECT State, COUNT(*) AS n FROM accidents GROUP BY State" --max-rows 100

# Admin
datapress-cli reload accidents --admin-token "$DATAPRESS_ADMIN_TOKEN"

# Probes
datapress-cli health
datapress-cli ready

Mini-syntax

  • --where / --having: col:op[:val], e.g. Severity:gte:3, State:eq:CA, Notes:is_null. The value is parsed as JSON when possible (numbers, booleans, arrays for in), else treated as a string. Ops: eq | neq | gt | gte | lt | lte | like | ilike | in | is_null | is_not_null.
  • --agg: op:col[:alias] (e.g. avg:Severity:mean_sev) or count[:alias]. Ops: count | sum | avg | min | max.
  • --order-by: col, col:asc, or col:desc.
  • --select / --group-by: comma-separated and/or repeatable.

License

MIT