Skip to main content

Kwery CLI

76 commands. JSON, CSV, or table output. Designed to pipe into Python, pandas, and shell scripts.

Install

npm install -g kwery-cli

Setup

kwery login your_api_key_here   # saves key to ~/.config/kwery/config.json
kwery limits                    # verify connection + show plan
💡Persistent key

The key persists across sessions. Run kwery logout to clear it.

Quick Examples

# Polymarket candles to CSV
kwery polymarket candles --token-id 0x123abc --interval 1h --format csv > btc_pm.csv

# Kalshi prices as JSON
kwery kalshi prices --market-id BTCUSD-23DEC --interval 1h

# Binance funding with date range
kwery binance funding --symbol BTCUSDT --start 2024-01-01 --end 2024-03-01

# Binance liquidations — long side only
kwery binance liquidations --symbol BTCUSDT --side long

# Pipe to Python
kwery kalshi prices --market-id BTCUSD-23DEC --format csv | python3 analyze.py

# Check data ingestion health
kwery status

All Commands

account

CommandArgsDescription
kwery login <key>API keySave API key to config
kwery logout—Remove saved API key
kwery limits—Show plan limits and credit balance

discovery

CommandArgsDescription
kwery sources—List all available data sources
kwery status—API health check
kwery markets--query, --sourceSearch markets across all platforms
kwery market <id>Market IDGet metadata for a single market

polymarket

CommandArgsDescription
kwery polymarket markets--query, --limitList/search Polymarket markets
kwery polymarket market <id>Market IDGet a single market
kwery polymarket candles--token-id, --market-id, --intervalOHLCV candles
kwery polymarket trades--token-id, --market-idRaw trade history
kwery polymarket snapshots--token-id, --intervalOrder book snapshot series
kwery polymarket snapshot-at--token-id, --time or --intervalOrder book at a point in time

kalshi

CommandArgsDescription
kwery kalshi markets--query, --limitList/search Kalshi markets
kwery kalshi prices--market-id, --intervalPrice history (cents, 0–100)
kwery kalshi orderbook--market-idCurrent order book
kwery kalshi snapshots--market-id, --intervalOrder book snapshot series
kwery kalshi snapshot-at--market-id, --time or --intervalOrder book at a point in time

hyperliquid

CommandArgsDescription
kwery hyperliquid markets—List Hyperliquid perp markets
kwery hyperliquid candles--symbol, --intervalOHLCV candles
kwery hyperliquid trades--symbolRaw trade history
kwery hyperliquid funding--symbolFunding rate history
kwery hyperliquid oi--symbolOpen interest history
kwery hyperliquid snapshots--symbol, --intervalOrder book snapshot series
kwery hyperliquid snapshot-at--symbol, --time or --intervalOrder book at a point in time

binance

CommandArgsDescription
kwery binance candles--symbol, --interval, --sourceSpot or futures OHLCV
kwery chainlink candles--symbol, --intervalChainlink oracle price candles
kwery binance ticker--symbol1-second ticker
kwery binance flow--symbolSpot buy/sell flow (buy_ratio)
kwery binance funding--symbolFutures funding rate history
kwery binance oi--symbolOpen interest history
kwery binance liquidations--symbol, --sideLiquidation history

config

CommandDescription
kwery config set <key> <value>Set a config value
kwery config get <key>Get a config value
kwery config listShow all config values
kwery config resetReset config to defaults

Universal Flags

FlagTypeDefaultDescription
--formatjson|csv|tablejsonOutput format
--limitnumber500Max rows per page
--startISO 8601—Start timestamp (inclusive)
--endISO 8601—End timestamp
--afterstring—Cursor for next page

Output Formats

All three formats from the same command:

# JSON (default)
kwery binance funding --symbol BTCUSDT

# CSV — pipe to file
kwery binance funding --symbol BTCUSDT --format csv > funding.csv

# ASCII table — terminal viewing
kwery binance funding --symbol BTCUSDT --format table

JSON — one object with a data array and a meta object containing next_cursor.

CSV — headers on the first line. Pipe to a file with > or directly into Python.

Table — ASCII-formatted for terminal viewing. Not suitable for piping.

Pagination

Fetch all pages with a shell loop:

CURSOR=""
while true; do
  RESULT=$(kwery kalshi prices --market-id BTCUSD-23DEC --limit 500 ${CURSOR:+--after $CURSOR} --format json)
  echo "$RESULT" >> all_prices.jsonl
  CURSOR=$(echo "$RESULT" | jq -r '.meta.next_cursor')
  [ "$CURSOR" = "null" ] && break
done

Error Reference

Exit codeMeaning
0Success
1API error (check stderr for message)
1No API key found — run kwery login your_api_key_here

Links

  • MCP Server — Use Kwery tools directly in Claude
  • Skills — Reasoning guides for Claude workflows
  • npm — kwery-cli package