On this page
Quick Start
- Create an API key
Artery API keys are scoped (
read/trade/stream) and tier-based (free/builder/pro/enterprise).bash
curl -X POST https://api.artery.questflow.ai/keys \ -H "Content-Type: application/json" \ -d '{"name":"my-bot","userId":"u-1","scopes":["read"]}'The response includes a
plaintexttoken of the formart_live_<id>.<secret>. Copy it now — it will not be shown again. - List markets across providers
Every data endpoint accepts the same Bearer token shape:
bash
TOKEN="art_live_..." curl "https://api.artery.questflow.ai/v1/polymarket/markets?active=true&limit=5" \ -H "Authorization: Bearer $TOKEN" curl "https://api.artery.questflow.ai/v1/kalshi/exchange/status" \ -H "Authorization: Bearer $TOKEN" curl "https://api.artery.questflow.ai/v1/hyperliquid/info/meta" \ -H "Authorization: Bearer $TOKEN" - Inspect the wire format
Every response is
{ native, meta }. The upstream raw shape lives innative;metacarries provider name, fetch timestamp, and source (live / indexed):json
{ "native": [ /* Polymarket Gamma JSON */ ], "meta": { "provider": "polymarket", "fetchedAt": "2026-05-05T07:30:00.000Z", "source": "live" } }NoteA future release will add an optional
normalizedfield on responses where semantics align across providers. Thenativeshape is preserved indefinitely. - Browse the live API reference
Open api.artery.questflow.ai/docs for a Swagger UI you can call directly with your token.
What's next
Bearer tokens, scopes, and rate limits
Per-platform endpoint catalogs
WebSocket subscriptions across all providers
Recipe: monitor Polymarket vs Kalshi spreads