# dYdX (slim)

> dYdX is a perpetuals exchange on its own Cosmos chain. Agents read markets and accounts from the indexer REST and WebSocket API at indexer.dydx.trade and place orders as signed chain transactions through the official TypeScript, Python and Rust clients.

- Full: https://www.anchorterminal.com/tools/dydx.md (~9,650 tokens) · this version ~2,480 tokens · JSON https://www.anchorterminal.com/tools/dydx.json · canonical https://www.anchorterminal.com/tools/dydx
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-04 · pricing https://www.anchorterminal.com/tools/dydx#pricing · reviews https://www.anchorterminal.com/tools/dydx#reviews
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

**B · 69.5/100 · rank #221 of 1349 · #3 in Crypto exchanges · not agent-ready · confidence medium**


Assessment: dYdX gives an agent keyless indexer reads, permissioned keys limited by message type, subaccount and market, a Statuspage with a clean 90 days, published fees and a testnet with a faucet. There is no official MCP server or OpenAPI file, orders are chain transactions signed by the clients, and no one entity operates the hosted endpoints.

## Facts

- Kind: HTTP API · vendor: dYdX Trading Inc. · category: Crypto exchanges · legal entity: dYdX Trading Inc. · provenance 50/100
- Packages: npm `@dydxprotocol/v4-client-js`, pypi `dydx-v4-client`
- Auth: OAuth or key · pricing: Pay per use · x402: no · licence: The clients are AGPL-3.0 with a use condition tied to the v4 Terms of Use; the chain software (dydxprotocol/v4-chain) carries a custom licence GitHub cannot classify. The hosted indexer at indexer.dydx.trade and the front end are run by third parties, not dYdX Trading Inc.
- Probe metrics: not measured yet (probes haven't run)
- Surface listed: The indexer REST and WebSocket API at indexer.dydx.trade/v4 for reads, and the official clients (TypeScript, Python, Rust) that sign and broadcast chain messages to validator nodes for orders, read from docs.dydx.xyz, the v4-clients repository, npm, PyPI, status.dydx.trade and the terms on 3 November 2026. No wallet was created and no transaction was sent
- MCP server: None found. Checked docs.dydx.xyz (no mention), the dydxprotocol GitHub organisation (first 18 repositories by push date, none an MCP server) and the official MCP registry, whose search returns only io.github.alekskram/dydx-agent-gateway 0.3.1 and 0.3.2, a third party's PyPI stdio analytics server that holds no keys and is not dYdX's
- What runs on chain: dYdX Chain is a CometBFT and Cosmos SDK proof-of-stake chain. Orders are chain messages; validators hold the order book in memory outside consensus, the proposer matches and the matches commit in the next block. Short-term orders live at most 20 blocks (about 30 seconds), long-term orders up to 95 days. The indexer, the front ends and the Order Entry Gateway are off chain; the docs say dYdX Trading Inc. runs none of them
- Key permissions: Authenticators (permissioned keys) added by the owner with the trader's public key and filters, MessageFilter by gRPC message type, SubaccountFilter and ClobPairIdFilter, composed with AllOf or AnyOf. Withdrawals and transfers can be excluded. No position size, order size or margin limits. Removed by `remove_authenticator`. The dydx.trade interface issues an API wallet with default permission to trade all cross-margin pairs
- Rate limits: Indexer 100 requests per 10 seconds per IP; WebSocket channel caps of 256 (accounts) and 32 (candles, markets, orderbook, trades) per connection. Per account, 2 stateful order placements a block and 20 per 100 blocks; 4,000 short-term placements and cancellations per 5 blocks; failed attempts count. Public node endpoints from Polkachu (300 a minute) and KingNodes (350 a minute). Current values at /dydxprotocol/clob/block_rate
- Testnet: indexer.v4testnet.dydx.exchange (HTTP and WebSocket) with public testnet nodes and a faucet at faucet.v4testnet.dydx.exchange. The docs' examples use the testnet indexer
- Countries: The v4 Terms of Use exclude persons who reside in, are located in, are incorporated in or are controlled from the United States, Canada or the United Kingdom for the perpetuals software, plus Iran, Cuba, North Korea, Syria, Myanmar, Crimea, Donetsk, Luhansk and sanctioned parties. Integrators must geo-block themselves; `/v4/geo` and `/v4/compliance/screen/{address}` answer with a blocked flag and a compliance status
- Fees: Tier 1 (under $1 million of 30-day volume) 5.0 bps taker and 1.0 bps maker, down to 3.5 bps taker at $25 million or more and 0.5 bps maker at the $5 million tier, set by the governance community, uniform across markets. Gas on each transaction. Fees and gas go to staking rewards for validators and delegators
- WebSocket and FIX: wss://indexer.dydx.trade/v4/ws with subaccount, orderbook, trades, candles, markets and block-height channels; compression (permessage-deflate) required since 26 October 2026. Full-node gRPC streaming for order book state. No FIX
- Terms on automated trading: dYdX Trading Inc.'s v4 Terms of Use (12 March 2026) don't mention APIs or bots; MegaVault's annex describes automated strategies. dYdX International Ltd's site terms (6 June 2025) forbid any robot, spider, crawler, scraper or other automated means or interface not provided by us, and ask users to keep API keys confidential
- Errors: Indexer responses document 400 (malformed or invalid) and 404 (not found) by status only; order rejections come back as chain transaction results. No error code list or 429 guidance found
- SDKs: @dydxprotocol/v4-client-js 3.6.0 (AGPL-3.0, Node 24, trusted publishing with SLSA provenance, 86,394 weekly downloads), dydx-v4-client 1.1.6 on PyPI (12 February 2026) and a Rust client, the Python and Rust ones developed by Nethermind inside the official repository (119 stars, 36 open issues). A C++ client is a third-party grant project
- Legal entity: dYdX Trading Inc. (dba dYdX Labs) licenses the software and sponsors the bug bounty; dYdX International Ltd, Cayman Islands, runs dydx.xyz; the dydx.trade front end is operated by the dYdX Operations subDAO per the docs' compliance page and app listings. No entity is named for indexer.dydx.trade
- Prices: Taker fee, tier 1 0.05% percentage fee

- Scores: Reliability 83, Performance pending, Schema & documentation 58, Agent ergonomics 66, Security & auth 78, Payments & pricing 60, Task success pending, Maintenance & community 83, Transparency & trust 50 · total over the 7 assessed categories
- Why: Reliability, Read with the hosted lines on the indexer API and the chain endpoints the clients submit to. · Schema & documentation, No OpenAPI file found for the indexer; the docs publish a types reference of about 200 pages (OrderSide, TimeInForce, OrderStatus and the re… · Agent ergonomics, An API, read for response sizing. · Security & auth, Orders are signed by the account key or by a permissioned key the owner adds as an authenticator, limited by message type, subaccount and ma… · Payments & pricing, No machine payment protocol (0). · Maintenance & community, Read on the clients and the chain. · Transparency & trust, The editorial half.
- Sources: 28, open questions: 8, both in the full twin
- Capabilities: exchange.derivatives, exchange.market-data, exchange.balances, exchange.transfers, exchange.staking, market.crypto, wallet.onchain
- JSON: https://www.anchorterminal.com/api/v1/tools/dydx.json
- Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/dydx.svg` or a link to https://www.anchorterminal.com/tools/dydx from a page on dydx.xyz or one of its subdomains, or the README at the root of github.com/dydxprotocol/v4-clients, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin.
- Support: Discord https://discord.com/invite/dydx; https://help.dydx.trade/en/; https://docs.dydx.xyz/; more in the full twin

## Before you call it

1. Ask the account owner for an authenticator limited to `/dydxprotocol.clob.MsgPlaceOrder` and `MsgCancelOrder` on one subaccount, and keep its private key out of prompts
2. Set a unique 32-bit `clientId` on every order and look it up on `/v4/orders` after a timeout; short-term orders expire with `goodTilBlock` (at most 20 blocks ahead)
3. Stay under 2 stateful orders a block and 20 per 100 blocks; failed placements count, so use short-term orders for active trading
4. Enable permessage-deflate on the indexer WebSocket; since 26 October 2026 connections without compression may be refused with 426
5. Check `/v4/geo` and the compliance screen before trading for a person, since the terms exclude the United States, Canada and the United Kingdom

## Connect

```bash
npm install @dydxprotocol/v4-client-js
```

```bash
curl https://indexer.dydx.trade/v4/orderbooks/perpetualMarket/ETH-USD
```
Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/dydx

## Similar tools

| Tool | Grade | Score | Shared capabilities | Slim |
| --- | --- | --- | --- | --- |
| Hyperliquid | D | 50 | exchange.derivatives, exchange.market-data, exchange.balances, exchange.transfers, exchange.staking, market.crypto, wallet.onchain | https://www.anchorterminal.com/tools/hyperliquid.min.md |
| Gemini Exchange API | BB | 74.6 | exchange.market-data, exchange.derivatives, exchange.balances, exchange.transfers, exchange.staking, market.crypto | https://www.anchorterminal.com/tools/gemini-exchange.min.md |
| Kraken API | BB | 71 | exchange.market-data, exchange.derivatives, exchange.balances, exchange.transfers, exchange.staking, market.crypto | https://www.anchorterminal.com/tools/kraken.min.md |
| OKX API | B | 64.3 | exchange.market-data, exchange.derivatives, exchange.balances, exchange.transfers, exchange.staking, market.crypto | https://www.anchorterminal.com/tools/okx.min.md |
| Binance API | B | 63.2 | exchange.market-data, exchange.derivatives, exchange.balances, exchange.transfers, exchange.staking, market.crypto | https://www.anchorterminal.com/tools/binance.min.md |


## Panel reviews (0, desk reviews from public material, no calls made)

