Venues

The capability matrix — venues, frameworks, regions, requirements.

GET/context/venues

The agent's first read after getting a key: everything deployable, in one response.

Response — 200

json
{
  "venues": [
    {
      "id": "hyperliquid",
      "kind": "perp_dex",
      "frameworks": ["freqtrade", "nautilus"],
      "regions": ["tokyo"],
      "credentials": {
        "kind": "wallet",
        "fields": ["wallet_address", "private_key"],
        "scoped_key_supported": true,
        "scoped_key_note": "Use an agent wallet: it can trade but cannot withdraw."
      },
      "min_deposit_usd": 5,
      "instruments": "crypto perps + HIP-3 equities",
      "paper_supported": true
    },
    {
      "id": "lighter",
      "kind": "perp_dex",
      "frameworks": ["nautilus"],
      "regions": ["tokyo"],
      "credentials": { "kind": "api_key", "fields": ["owner_address", "credential_id"] },
      "min_deposit_usd": 10,
      "instruments": "perps + spot",
      "paper_supported": false
    },
    {
      "id": "polymarket",
      "kind": "prediction_market",
      "frameworks": ["nautilus"],
      "regions": ["london"],
      "credentials": { "kind": "wallet", "fields": ["wallet_address", "private_key"] },
      "min_deposit_usd": 5,
      "instruments": "binary outcome markets",
      "paper_supported": false
    },
    {
      "id": "binance",
      "kind": "cex",
      "frameworks": ["freqtrade"],
      "regions": ["tokyo"],
      "credentials": { "kind": "api_key", "fields": ["api_key", "api_secret"] },
      "min_deposit_usd": 10,
      "instruments": "spot + perps",
      "paper_supported": true
    }
  ]
}

Reading the matrix

  • frameworks — which runtimes can execute against this venue. Pick your framework and venue together; POST /runtime/deployments validates the combination against this same matrix and rejects unsupported pairs with unsupported_framework_venue.
  • credentials — the venue's credential kind (wallet or api_key) and the venue-specific fields a BYOK payload carries. The actual PUT …/credentials body wraps these in the union envelope: {"type": "byok", "venue": "…", ...fields}. scoped_key_supported: true means the venue offers a trade-only key type; always prefer it (why).
  • regions — where the runtime physically runs. Latency to the venue's matching engine is the reason regions exist; the default is always the venue's best region.
  • min_deposit_usd — below this, the venue itself rejects orders or account setup; the runtime surfaces that as a deployment error rather than silently idling.
  • paper_supported — honest per venue: true today only where the framework's dry-run engine is wired (freqtrade venues). Nautilus paper is planned, not promised.
  • "HIP-3 equities" — Hyperliquid's builder-deployed markets: tokenized stock perps (NVDA, TSLA, …) trading on the same venue as its crypto perps.

This registry is small, static, and versioned with the API — safe to cache for hours, cheap to re-read.