{
  "data": {
    "a": {
      "slug": "bitstamp",
      "name": "Bitstamp API",
      "vendor": "Bitstamp Ltd.",
      "vendorUrl": "https://www.bitstamp.net",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Bitstamp's HTTP API v2 for spot and derivatives trading, balances, deposits and withdrawals, with WebSocket and FIX feeds and a sandbox at sandbox.bitstamp.net. Bitstamp is a Robinhood company since June 2025.",
      "url": "https://www.anchorterminal.com/tools/bitstamp",
      "markdownUrl": "https://www.anchorterminal.com/tools/bitstamp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bitstamp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bitstamp.json",
      "dns": "bitstamp.grade.anchorterminal.com",
      "license": "Proprietary hosted API under Bitstamp's terms of use, which our reader couldn't load",
      "transports": [],
      "packages": [],
      "auth": "api-key",
      "authNotes": "API key and secret made in the Bitstamp account after a browser signup, sent as `X-Auth: BITSTAMP {key}` with an HMAC-SHA256 `X-Auth-Signature` over the verb, host, path, query, nonce, timestamp and body, a 36-character single-use nonce and a timestamp within 150 seconds. Keys carry per-endpoint permissions (error API0003 names a missing permission) and an IP allow-list (API0002), and `X-Auth-Subaccount-Id` targets a sub-account. `POST /api/v2/revoke_all_api_keys/` is a kill switch for every key. Responses carry an `X-Server-Auth-Signature` to verify (https://www.bitstamp.net/api/, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API itself costs nothing. Trading fees are maker and taker by 30-day volume per the API's fees endpoints, but the fee schedule page at bitstamp.net/fee-schedule/ draws its table by script and loaded empty for our reader, so the rates are unchecked. Commercial use of exchange data needs a Data License Agreement through partners@bitstamp.net. The sandbox at sandbox.bitstamp.net needs no money (https://www.bitstamp.net/api/, checked 2026-11-03).",
      "priceSummary": "Pay per use",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API documentation (checked 2026-11-03). Fees are taken from the account; onboarding is a browser signup.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://www.bitstamp.net/api/",
      "capabilities": [
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.derivatives",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto"
      ],
      "tags": [
        "official",
        "hosted",
        "api-key",
        "sandbox",
        "status-page",
        "usage-priced",
        "eu",
        "uk"
      ],
      "lastRelease": "2026-08-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.4,
        "grade": "D",
        "agentReady": false,
        "rank": 948,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 18,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 58,
          "maintenance": 28,
          "payments": 20,
          "reliability": 63,
          "schema": 51,
          "security": 60,
          "transparency": 53
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Bitstamp documents its v2 API on one static page with numeric rate limits, per-endpoint key permissions, an IP allow-list, a kill switch and a sandbox. There is no official MCP server, duplicate client order ids are allowed, and the fee schedule, terms, privacy policy and country list render by script and could not be read.",
        "bestFor": "An agent that needs a long-running regulated spot venue in the EU, UK and US with a sandbox and per-endpoint key permissions, and can do its own signing.",
        "strengths": [
          "Rate limits with numbers (400 requests a second, 10,000 per 10 minutes) and named error codes for client and market limits",
          "Keys carry per-endpoint permissions and an IP allow-list, and one call revokes every key on the account",
          "A sandbox at sandbox.bitstamp.net with the same v2 paths, plus order-data endpoints to recover gaps after a dropped WebSocket",
          "A dated API changelog from 2023 to 28 August 2026 and a Statuspage feed with per-market incidents",
          "Signed responses (`X-Server-Auth-Signature`) let a client verify what the server returned"
        ],
        "weaknesses": [
          "No official MCP server, SDK, llms.txt or OpenAPI file; the registry's Bitstamp servers are third parties proxying public market data",
          "Duplicate client order ids are allowed since November 2023, so a retried order can execute twice",
          "The fee schedule, terms of use, privacy policy, about page and FAQ load empty without a browser, so fees, retention and the bot clauses are unchecked",
          "A 3-hour withdrawal failure across 14 networks on 21 August 2026 and a 39-minute halt of all markets on 5 August 2026",
          "security.txt expired on 12 July 2026, and no SLA was found"
        ],
        "agentNotes": [
          "Mint a key with only the endpoint permissions the task needs and an IP allow-list; keep `revoke_all_api_keys` in reach as a kill switch",
          "Treat `client_order_id` as a label, not a guard. On a timeout (500.016) fetch the order by client id before resending, because duplicates are accepted",
          "Use a fresh 36-character nonce and a timestamp within 150 seconds of server time on every request, or expect API0004 and API0017",
          "Stay under 400 requests a second and 10,000 per 10 minutes; 400.002 and 400.067 mean back off, and open-orders answers are cached for 10 seconds",
          "Start on sandbox.bitstamp.net with the same paths, and read the fee schedule in a browser before quoting costs, since it is unreadable to a plain fetch"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.4
          }
        ],
        "editorialScores": {
          "ergonomics": 58,
          "maintenance": 28,
          "payments": 20,
          "reliability": 63,
          "schema": 51,
          "security": 60,
          "transparency": 16
        },
        "provenanceScore": 90,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl https://www.bitstamp.net/api/v2/ticker/btcusd/"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/bitstamp"
      },
      "area": "payments",
      "provenance": {
        "legalEntity": "Bitstamp Ltd.",
        "domain": "bitstamp.net",
        "domainRegistered": "2011-07-04",
        "endpointOnVendorDomain": true,
        "terms": "https://www.bitstamp.net/terms-of-use/",
        "privacy": "https://www.bitstamp.net/privacy-policy/",
        "statusPage": "https://status.bitstamp.net",
        "changelog": "https://www.bitstamp.net/api/",
        "securityTxt": "expired",
        "checked": "2026-11-03",
        "notes": [
          "Bitstamp Ltd. is named in Robinhood's newsroom post of 2 June 2025 on closing the acquisition; the terms of use and privacy policy pages loaded empty for our reader, so the entities they name are unconfirmed.",
          "RDAP gives bitstamp.net a registration date of 4 July 2011.",
          "https://www.bitstamp.net/.well-known/security.txt names HackerOne's Robinhood programme as Contact and Policy and expired on 12 July 2026.",
          "www.bitstamp.net/robots.txt allows /api/ itself and disallows /api/*, /account/, /trade/ and others; only /api/ was read under it. status.bitstamp.net disallows /api/ and /embed/, so the history feed was read. support.bitstamp.net did not resolve.",
          "The API changelog is a section of the API documentation page; there is no separate changelog URL."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bitstamp.json",
      "live": {
        "slug": "bitstamp",
        "vendorStatus": {
          "page": "https://status.bitstamp.net",
          "indicator": "minor",
          "summary": "Partially Degraded Service",
          "checkedAt": "2026-11-04T20:38:43.0107081Z"
        },
        "securityTxt": {
          "url": "https://bitstamp.net/.well-known/security.txt",
          "state": "expired",
          "expires": "2026-07-12T11:59:00.000Z",
          "checkedAt": "2026-11-04T15:53:31.314157297Z"
        },
        "updatedAt": "2026-11-04T20:38:43.0107081Z"
      }
    },
    "answer": "Uniswap Trading API scores 63.3 (B) on agent readiness against Bitstamp API's 50.4 (D), and leads in 6 of 7 scored categories. Bitstamp API leads on reliability.",
    "b": {
      "slug": "uniswap",
      "name": "Uniswap Trading API",
      "vendor": "Uniswap Labs",
      "vendorUrl": "https://developers.uniswap.org",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Uniswap Labs' Trading API quotes and builds swap, bridge and liquidity transactions across Uniswap v2, v3, v4 and UniswapX on 21 chains. The caller signs with its own wallet and broadcasts; the API is free behind an API key.",
      "url": "https://www.anchorterminal.com/tools/uniswap",
      "markdownUrl": "https://www.anchorterminal.com/tools/uniswap.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/uniswap.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/uniswap.json",
      "dns": "uniswap.grade.anchorterminal.com",
      "repo": "https://github.com/Uniswap/uniswap-ai",
      "license": "The Trading API is a proprietary hosted service under Uniswap Labs' API Terms of Use, which we couldn't read; the SDKs and the uniswap-ai skills are MIT. Swaps execute on the open-source Uniswap protocol contracts on chain",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@uniswap/v4-sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "An API key from the Uniswap Developer Platform dashboard, sent as `x-api-key` on every request; the docs say to keep it server-side. The API never holds funds or keys. `/quote` returns `permitData` the user signs as EIP-712 typed data, `/swap` returns calldata the caller signs and broadcasts, and `/order` takes a signed UniswapX order. An optional `X-Agent-Info` header with `decision_origin` of `autonomous` or `human_mediated` attributes agent traffic (https://developers.uniswap.org/docs/trading/swapping-api/start-building/integration-guide, checked 2026-11-03).",
      "pricing": "free",
      "pricingNotes": "The API is free, with no subscription or per-call charge, per the FAQ and the Developer Platform post of 16 April 2026. Swaps pay the pool fee and gas on chain; UniswapX orders are gasless for the swapper. Integrators may add up to 4 fee entries totalling at most 500 bips. Each key is limited to 6 requests a second (https://developers.uniswap.org/docs/trading/swapping-api/faqs, checked 2026-11-03).",
      "priceSummary": "Free",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the API's endpoints (checked 2026-11-03). The uniswap-ai repository's `pay-with-any-token` skill helps an agent pay HTTP 402 challenges (MPP or x402) by swapping tokens through Uniswap, which is a buyer-side skill, not a paid endpoint.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": 236,
        "npmWeekly": 153782,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://developers.uniswap.org/docs/trading/overview",
      "llmsTxt": "https://developers.uniswap.org/llms.txt",
      "openapi": "https://trade-api.gateway.uniswap.org/v1/api.json",
      "capabilities": [
        "exchange.spot-trading",
        "exchange.market-data",
        "market.crypto",
        "wallet.onchain"
      ],
      "tags": [
        "official",
        "hosted",
        "closed-source",
        "openapi",
        "llms-txt",
        "api-key",
        "free",
        "no-card",
        "typescript",
        "agent-skills",
        "no-status-page",
        "security-txt",
        "rest"
      ],
      "lastRelease": "2026-10-22",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.3,
        "grade": "B",
        "agentReady": false,
        "rank": 470,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 5,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 72,
          "maintenance": 88,
          "payments": 40,
          "reliability": 42,
          "schema": 90,
          "security": 63,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "The Trading API is free, documented by an OpenAPI file with stable error codes, holds no keys since the caller signs every swap, and posts sunset notices 30 days ahead. There is no official MCP server, status page or sandbox, the key is a plain header secret at 6 requests a second, and the API terms refused our reader.",
        "bestFor": "An agent swapping or bridging tokens from its own wallet on 21 EVM chains, or managing liquidity positions, with routing done for it.",
        "strengths": [
          "OpenAPI 3.0 file, llms.txt, llms-full.txt and Markdown twins, with 400, 401, 404 and 429 schemas and a stable `errorCode` enum",
          "The API builds calldata and never holds funds or keys; the caller signs `permitData` and the transaction with its own wallet",
          "Free with no per-call charge, 21 chains for classic swaps and UniswapX on 10 of them",
          "Dated changelog notices with a 30-day minimum sunset policy, and the uniswap-ai skills (MIT) for coding agents",
          "A documented `X-Agent-Info` header for autonomous and human-mediated traffic, and retry guidance per error code"
        ],
        "weaknesses": [
          "No official MCP server; the registry's Uniswap entries are third parties",
          "No status page, no SLA and no sandbox; tests use production endpoints on testnets",
          "A single `x-api-key` per key with 6 requests a second and no scopes; the dashboard is disallowed by robots.txt so key management is unchecked",
          "The API Terms of Use and Uniswap Labs' terms and privacy policy are on a help centre that answered 403 or draw by script, so restricted countries and data handling are unchecked",
          "No official client library for the API; the TypeScript SDKs cover the protocol and quoting, not the API"
        ],
        "agentNotes": [
          "Call `/check_approval` first, then `/quote`; if `permitData` is non-null sign it as EIP-712 and send `signature` and `permitData` together to `/swap` or `/order`, never one without the other",
          "Route on the quote's `routing`: `CLASSIC`, `WRAP`, `UNWRAP` and `BRIDGE` go to `/swap`, `DUTCH_V2`, `DUTCH_V3` and `PRIORITY` to `/order`, `CHAINED` to `/plan`",
          "Refresh any quote older than 30 seconds before broadcasting, and on 429 pause every request from the key before retrying",
          "Retry unchanged only on `UpstreamTimeoutError`; `NoRouteFoundError` and `QuoteAmountTooLowError` need a different amount, token or `protocols` list",
          "Send `X-Agent-Info` with `decision_origin: autonomous` and keep `x-api-key` server-side"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.3
          }
        ],
        "editorialScores": {
          "ergonomics": 72,
          "maintenance": 88,
          "payments": 40,
          "reliability": 42,
          "schema": 90,
          "security": 63,
          "transparency": 35
        },
        "provenanceScore": 74,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npx skills add Uniswap/uniswap-ai",
        "http": "curl -X POST https://trade-api.gateway.uniswap.org/v1/quote -H 'x-api-key: YOUR_UNISWAP_API_KEY' -H 'Content-Type: application/json' -d '{\"tokenIn\":\"0x0000000000000000000000000000000000000000\",\"tokenOut\":\"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",\"tokenInChainId\":1,\"tokenOutChainId\":1,\"type\":\"EXACT_INPUT\",\"amount\":\"1000000000000000000\",\"swapper\":\"0xYourWallet\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.spot-trading",
        "tool": "https://letme.dev/uniswap"
      },
      "area": "payments",
      "provenance": {
        "legalEntity": "Uniswap Labs",
        "domain": "uniswap.org",
        "domainRegistered": "2018-11-26",
        "endpointOnVendorDomain": true,
        "terms": "https://support.uniswap.org/hc/en-us/articles/43018872248589-API-Terms-of-Use",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://developers.uniswap.org/docs/changelog",
        "securityTxt": "valid",
        "checked": "2026-11-03",
        "notes": [
          "Uniswap Labs is the name on the uniswap-ai licence and the blog; the API Terms of Use (support.uniswap.org, answered 403) are said in a search snippet to name Universal Navigation, Inc., which was not read first-hand.",
          "RDAP gives uniswap.org a registration date of 26 November 2018, registrar Cloudflare.",
          "app.uniswap.org/.well-known/security.txt lists a Cantina bounty and security@uniswap.org with no Expires field; uniswap.org redirects to the app.",
          "status.uniswap.org redirects to app.uniswap.org/swap, so no status page is recorded.",
          "The privacy policy at app.uniswap.org draws by script and was not read. developers.uniswap.org/robots.txt disallows /dashboard, /api/ and /oauth/, so the key dashboard was not fetched; trade-api.gateway.uniswap.org has no robots.txt (404)."
        ],
        "score": 74
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/uniswap.json",
      "live": {
        "slug": "uniswap",
        "securityTxt": {
          "url": "https://uniswap.org/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:53:09.573484239Z"
        },
        "updatedAt": "2026-11-04T15:53:09.573484239Z"
      }
    },
    "edges": [
      {
        "by": 60,
        "category": "maintenance",
        "leads": "uniswap",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed service. The last dated API change is 28 August 2026, 67 days before the check (20). Only one dated entry in the last 90 days, after 1 July and 12 June (0). No public repository or issue tracker, support pages did not load and support.bitstamp.net did not resolve; a changelog exists (8 of 25). No official SDKs and no MCP registry presence of Bitstamp's own (0). No package to assess (0). 20 + 0 + 8 + 0 + 0 = 28.",
          "b": "Read as a closed hosted service. The newest changelog notice is dated 22 October 2026 (30). Notices of 20 August, 21 September and 22 October 2026, three in 90 days (20). A help form for developer support that says it won't debug integrators' code, and uniswap-ai with 6 open issues and a push on 26 October (14 of 25). Official TypeScript SDKs current (@uniswap/v4-sdk 2.4.4 with provenance) and the uniswap-ai skills, though no client for the API itself; no MCP registry entry (15). Trusted publishing with provenance on npm, CI and lint hooks on uniswap-ai (9 of 10). Total 88."
        },
        "scores": {
          "a": 28,
          "b": 88
        }
      },
      {
        "by": 39,
        "category": "schema",
        "leads": "uniswap",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "No OpenAPI or other machine-readable contract was found on the API page or elsewhere (0). No llms.txt or Markdown docs (0). The single documentation page describes each endpoint's purpose and parameters, with notes such as the 10-second cache on open orders and the Travel Rule fields, but not when to use one endpoint over another (14 of 20). Parameters are typed with enumerations (margin mode CROSS or ISOLATED, margin multiplier 1 to 25, order types) and required fields marked (11 of 15). Signing examples in Python, Java and C++, and error families with numbered codes and explanations (13 of 15). Version v2 in the path and header, a dated changelog from 7 April 2023 to 28 August 2026, and a 410.001 code for deprecated endpoints, with no stated notice period (13 of 15). 0 + 0 + 14 + 11 + 13 + 13 = 51.",
          "b": "OpenAPI 3.0 file (Token Trading 1.0.0) for the Trading and LP APIs, about 33 paths with `x-internal` markers on the margin and 4337 operations (25). llms.txt, llms-full.txt and a Markdown twin of every docs page (10). Operation summaries are one line, but the guides say which routing types go to `/swap`, `/order` and `/plan`, when UniswapX quotes are returned and when a 404 means change the request (14 of 20). Enums for routing types, urgency and position statuses, required fields and bounded integers such as `limit` 1 to 20 (12 of 15). Examples on every guide page and error schemas for 400, 401, 404 and 429 with a stable `errorCode` enum and per-code retry advice (14 of 15). A /v1 path, a changelog with posted and effective dates and a 30-day minimum sunset policy (15). Total 90."
        },
        "scores": {
          "a": 51,
          "b": 90
        }
      },
      {
        "by": 21,
        "category": "reliability",
        "leads": "bitstamp",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the hosted lines on the HTTP API v2 at www.bitstamp.net/api/v2/. status.bitstamp.net is a Statuspage site with component history (20). Its feed for 5 August to 3 November 2026 has 17 entries, among them withdrawals failing on 14 networks for about 3 hours on 21 August, database maintenance with login failures and intermittent trading interruptions for about 1 hour 44 minutes on 23 September, a 39-minute halt of all markets on 5 August, and delistings and single-asset suspensions. One major (10). Rate limits with numbers, 400 a second and 10,000 per 10 minutes (15). Limit errors are named (400.002, 400.067, 400.068) but there is no Retry-After or backoff guidance, duplicate client order ids are allowed, and the only retry guidance is to check the order after a 500.016 timeout (8 of 15). No SLA found (0). Generally available (10). 20 + 10 + 15 + 8 + 0 + 10 = 63.",
          "b": "Read with the hosted lines on the Trading API. status.uniswap.org redirects to the swap app and the docs link no status page (0). No readable history (5). Rate limit documented as 6 requests a second per key (15). The errors page says to pause all requests from the key on 429, retry 500 and 503 with backoff and refresh quotes after 30 seconds; swaps are signed transactions, so idempotency rests on the chain nonce (12 of 15). No SLA (0). The API is generally available; Guidestar routing is a beta notice (10). 0 + 5 + 15 + 12 + 0 + 10 = 42."
        },
        "scores": {
          "a": 63,
          "b": 42
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "uniswap",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No machine payment protocol (0). The fee schedule page loaded empty, the API's fee endpoints need a key, and no rate could be read, so fees are scored as not published (0, unchecked). The API is free, public endpoints need no key and the sandbox needs no money (20). A person must sign up in a browser with identity checks and mint the key (0). 0 + 0 + 20 + 0 = 20.",
          "b": "No machine payment protocol on the API's endpoints; the `pay-with-any-token` skill lets an agent pay other services' 402 challenges by swapping, which earns nothing here (0). The API is free, stated in the FAQ and the 16 April 2026 post, and integrator fees are capped at 500 bips (20). No card and no plan (20). A person creates an account in the dashboard to get a key (0). Total 40."
        },
        "scores": {
          "a": 20,
          "b": 40
        }
      },
      {
        "by": 14,
        "category": "ergonomics",
        "leads": "uniswap",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Graded on the REST API. Order book grouping and transaction time windows size responses, but there is no field selection and no MCP surface (15 of 25). Offset, limit, since and sort on transaction history, `until_id` windows on order-data replay (14 of 20). `response_code` and `response_explanation` name the failure, such as 400.009 insufficient balance, 403.004 trading blocked and 500.025 insufficient liquidity (16 of 20). No idempotency, since `client_order_id` duplicates are allowed since November 2023 and the docs say only to check the order id after a timeout; the kill switch limits damage (8 of 20). Few required parameters, but no official SDK in any language (5 of 15). 15 + 14 + 16 + 8 + 5 = 58.",
          "b": "An API, read for response sizing. Quotes and calldata are compact and `/tokens` takes a limit; the quote can carry the swap calldata to save a call (20 of 25). `GET /orders` and `GET /swaps` poll status by id, `/swappable_tokens` and `/tokens` filter by chain and sort, with little pagination elsewhere (12 of 20). Stable `errorCode` values with a `detail` string and a `requestId`, and the docs say which codes to retry (18 of 20). No idempotency key; a swap is a signed transaction whose nonce prevents a double spend, and the docs warn about nonce collisions with pending transactions (12 of 20). Few required fields on `/quote`, defaults for slippage and urgency, but no official client library for the API and signing needs ethers.js, viem or web3.js (10 of 15). Total 72."
        },
        "scores": {
          "a": 58,
          "b": 72
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Bitstamp Ltd.",
        "b": "Uniswap Labs",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary hosted API under Bitstamp's terms of use, which our reader couldn't load",
        "b": "The Trading API is a proprietary hosted service under Uniswap Labs' API Terms of Use, which we couldn't read; the SDKs and the uniswap-ai skills are MIT. Swaps execute on the open-source Uniswap protocol contracts on chain",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "0",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-08-28",
        "b": "2026-10-22",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "couldn't be read",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "236 stars, 154k npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Uniswap Trading API scores 63.3 (B) on agent readiness against Bitstamp API's 50.4 (D), and leads in 6 of 7 scored categories. Bitstamp API leads on reliability.",
        "question": "Which is better for AI agents, Bitstamp API or Uniswap Trading API?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Bitstamp API and Uniswap Trading API need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Bitstamp API. No hosted endpoint is listed for Uniswap Trading API.",
        "question": "Can an agent call Bitstamp API and Uniswap Trading API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 63 against 42"
        ],
        "also": null,
        "goodFor": "An agent that needs a long-running regulated spot venue in the EU, UK and US with a sandbox and per-endpoint key permissions, and can do its own signing.",
        "slug": "bitstamp",
        "watchFor": "No official MCP server, SDK, llms.txt or OpenAPI file; the registry's Bitstamp servers are third parties proxying public market data"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 90 against 51",
          "Agent ergonomics, 72 against 58",
          "Payments \u0026 pricing, 40 against 20",
          "Maintenance \u0026 community, 88 against 28"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "An agent swapping or bridging tokens from its own wallet on 21 EVM chains, or managing liquidity positions, with routing done for it.",
        "slug": "uniswap",
        "watchFor": "No official MCP server; the registry's Uniswap entries are third parties"
      }
    ],
    "history": null,
    "job": {
      "capability": "exchange.market-data",
      "name": "Exchange market data"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-bitstamp.json",
        "title": "Bitfinex API vs Bitstamp API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-bitstamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-uniswap.json",
        "title": "Bitfinex API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-bitstamp.json",
        "title": "Bitget vs Bitstamp API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-bitstamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-uniswap.json",
        "title": "Bitget vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-bitstamp.json",
        "title": "Bithumb Open API vs Bitstamp API",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-bitstamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-uniswap.json",
        "title": "Bithumb Open API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-bybit.json",
        "title": "Bitstamp API vs Bybit",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-bybit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-coinbase-advanced-trade.json",
        "title": "Bitstamp API vs Coinbase Advanced Trade API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-coinbase-advanced-trade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-coinbase-mcp.json",
        "title": "Bitstamp API vs Coinbase MCP server (Coinbase for Agents)",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-coinbase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-crypto-com-exchange.json",
        "title": "Bitstamp API vs Crypto.com Exchange API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-crypto-com-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-deribit.json",
        "title": "Bitstamp API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-dydx.json",
        "title": "Bitstamp API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-dydx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-gate-io.json",
        "title": "Bitstamp API vs Gate",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-gemini-exchange.json",
        "title": "Bitstamp API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-htx.json",
        "title": "Bitstamp API vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-hyperliquid.json",
        "title": "Bitstamp API vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-kraken.json",
        "title": "Bitstamp API vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-kucoin.json",
        "title": "Bitstamp API vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-mexc.json",
        "title": "Bitstamp API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-okx.json",
        "title": "Bitstamp API vs OKX API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-okx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitstamp-vs-upbit.json",
        "title": "Bitstamp API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bitstamp-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bybit-vs-uniswap.json",
        "title": "Bybit vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-uniswap.json",
        "title": "Crypto.com Exchange API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-uniswap.json",
        "title": "dYdX vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-uniswap.json",
        "title": "Gate vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-uniswap.json",
        "title": "Gemini Exchange API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/htx-vs-uniswap.json",
        "title": "HTX trading API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/htx-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kucoin-vs-uniswap.json",
        "title": "KuCoin vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/kucoin-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mexc-vs-uniswap.json",
        "title": "MEXC API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/mexc-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-bitstamp.json",
        "title": "Binance API vs Bitstamp API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bitstamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-uniswap.json",
        "title": "Binance API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-uniswap.json",
        "title": "Coinbase Advanced Trade API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-uniswap.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-uniswap.json",
        "title": "Deribit vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperliquid-vs-uniswap.json",
        "title": "Hyperliquid vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/hyperliquid-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kraken-vs-uniswap.json",
        "title": "Kraken API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/kraken-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/okx-vs-uniswap.json",
        "title": "OKX API vs Uniswap Trading API",
        "url": "https://www.anchorterminal.com/compare/okx-vs-uniswap"
      },
      {
        "json": "https://www.anchorterminal.com/compare/uniswap-vs-upbit.json",
        "title": "Uniswap Trading API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/uniswap-vs-upbit"
      }
    ],
    "panel": null,
    "scores": [
      {
        "bitstamp": 63,
        "by": 21,
        "edge": "bitstamp",
        "key": "reliability",
        "name": "Reliability",
        "uniswap": 42,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bitstamp": 51,
        "by": 39,
        "edge": "uniswap",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "uniswap": 90,
        "weight": 13
      },
      {
        "bitstamp": 58,
        "by": 14,
        "edge": "uniswap",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "uniswap": 72,
        "weight": 13
      },
      {
        "bitstamp": 60,
        "by": 3,
        "edge": "uniswap",
        "key": "security",
        "name": "Security \u0026 auth",
        "uniswap": 63,
        "weight": 14
      },
      {
        "bitstamp": 20,
        "by": 20,
        "edge": "uniswap",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "uniswap": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bitstamp": 28,
        "by": 60,
        "edge": "uniswap",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "uniswap": 88,
        "weight": 7
      },
      {
        "bitstamp": 53,
        "by": 2,
        "edge": "uniswap",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "uniswap": 55,
        "weight": 7
      }
    ],
    "summary": "Uniswap Trading API scores 63.3 (B) on agent readiness against Bitstamp API's 50.4 (D), and leads in 6 of 7 scored categories. Bitstamp API leads on reliability. Both do exchange market data.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "bitstamp": "Bitstamp documents its v2 API on one static page with numeric rate limits, per-endpoint key permissions, an IP allow-list, a kill switch and a sandbox. There is no official MCP server, duplicate client order ids are allowed, and the fee schedule, terms, privacy policy and country list render by script and could not be read.",
      "uniswap": "The Trading API is free, documented by an OpenAPI file with stable error codes, holds no keys since the caller signs every swap, and posts sunset notices 30 days ahead. There is no official MCP server, status page or sandbox, the key is a plain header secret at 6 requests a second, and the API terms refused our reader."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bitstamp-vs-uniswap",
    "json": "https://www.anchorterminal.com/compare/bitstamp-vs-uniswap.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bitstamp-vs-uniswap.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/bitstamp-vs-uniswap.min.md"
  },
  "markdown": "Uniswap Trading API scores 63.3 (B) on agent readiness against Bitstamp API's 50.4 (D), and leads in 6 of 7 scored categories. Bitstamp API leads on reliability. Both do exchange market data.\n\n- Bitstamp API: grade D, 50.4/100, rank #948 of 1349. Markdown https://www.anchorterminal.com/tools/bitstamp.md · JSON https://www.anchorterminal.com/api/v1/tools/bitstamp.json\n- Uniswap Trading API: grade B, 63.3/100, rank #470 of 1349. Markdown https://www.anchorterminal.com/tools/uniswap.md · JSON https://www.anchorterminal.com/api/v1/tools/uniswap.json\n- Best crypto exchange APIs and MCP servers for AI agents: https://www.anchorterminal.com/best/crypto-exchanges/index.md\n- All 210 exchanges comparisons: https://www.anchorterminal.com/compare/crypto-exchanges/index.md\n\n## Which one, for what\n\n### Bitstamp API (D)\n\nGood for: An agent that needs a long-running regulated spot venue in the EU, UK and US with a sandbox and per-endpoint key permissions, and can do its own signing.\n\nAhead on:\n- Reliability, 63 against 42\n\nWatch for: No official MCP server, SDK, llms.txt or OpenAPI file; the registry's Bitstamp servers are third parties proxying public market data\n\n### Uniswap Trading API (B)\n\nGood for: An agent swapping or bridging tokens from its own wallet on 21 EVM chains, or managing liquidity positions, with routing done for it.\n\nAhead on:\n- Schema \u0026 documentation, 90 against 51\n- Agent ergonomics, 72 against 58\n- Payments \u0026 pricing, 40 against 20\n- Maintenance \u0026 community, 88 against 28\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No official MCP server; the registry's Uniswap entries are third parties\n\n\n## Why the edge\n\n### Maintenance \u0026 community: Uniswap Trading API +60\n\n- Bitstamp API (28): Read as a closed service. The last dated API change is 28 August 2026, 67 days before the check (20). Only one dated entry in the last 90 days, after 1 July and 12 June (0). No public repository or issue tracker, support pages did not load and support.bitstamp.net did not resolve; a changelog exists (8 of 25). No official SDKs and no MCP registry presence of Bitstamp's own (0). No package to assess (0). 20 + 0 + 8 + 0 + 0 = 28.\n- Uniswap Trading API (88): Read as a closed hosted service. The newest changelog notice is dated 22 October 2026 (30). Notices of 20 August, 21 September and 22 October 2026, three in 90 days (20). A help form for developer support that says it won't debug integrators' code, and uniswap-ai with 6 open issues and a push on 26 October (14 of 25). Official TypeScript SDKs current (@uniswap/v4-sdk 2.4.4 with provenance) and the uniswap-ai skills, though no client for the API itself; no MCP registry entry (15). Trusted publishing with provenance on npm, CI and lint hooks on uniswap-ai (9 of 10). Total 88.\n\n### Schema \u0026 documentation: Uniswap Trading API +39\n\n- Bitstamp API (51): No OpenAPI or other machine-readable contract was found on the API page or elsewhere (0). No llms.txt or Markdown docs (0). The single documentation page describes each endpoint's purpose and parameters, with notes such as the 10-second cache on open orders and the Travel Rule fields, but not when to use one endpoint over another (14 of 20). Parameters are typed with enumerations (margin mode CROSS or ISOLATED, margin multiplier 1 to 25, order types) and required fields marked (11 of 15). Signing examples in Python, Java and C++, and error families with numbered codes and explanations (13 of 15). Version v2 in the path and header, a dated changelog from 7 April 2023 to 28 August 2026, and a 410.001 code for deprecated endpoints, with no stated notice period (13 of 15). 0 + 0 + 14 + 11 + 13 + 13 = 51.\n- Uniswap Trading API (90): OpenAPI 3.0 file (Token Trading 1.0.0) for the Trading and LP APIs, about 33 paths with `x-internal` markers on the margin and 4337 operations (25). llms.txt, llms-full.txt and a Markdown twin of every docs page (10). Operation summaries are one line, but the guides say which routing types go to `/swap`, `/order` and `/plan`, when UniswapX quotes are returned and when a 404 means change the request (14 of 20). Enums for routing types, urgency and position statuses, required fields and bounded integers such as `limit` 1 to 20 (12 of 15). Examples on every guide page and error schemas for 400, 401, 404 and 429 with a stable `errorCode` enum and per-code retry advice (14 of 15). A /v1 path, a changelog with posted and effective dates and a 30-day minimum sunset policy (15). Total 90.\n\n### Reliability: Bitstamp API +21\n\n- Bitstamp API (63): Read with the hosted lines on the HTTP API v2 at www.bitstamp.net/api/v2/. status.bitstamp.net is a Statuspage site with component history (20). Its feed for 5 August to 3 November 2026 has 17 entries, among them withdrawals failing on 14 networks for about 3 hours on 21 August, database maintenance with login failures and intermittent trading interruptions for about 1 hour 44 minutes on 23 September, a 39-minute halt of all markets on 5 August, and delistings and single-asset suspensions. One major (10). Rate limits with numbers, 400 a second and 10,000 per 10 minutes (15). Limit errors are named (400.002, 400.067, 400.068) but there is no Retry-After or backoff guidance, duplicate client order ids are allowed, and the only retry guidance is to check the order after a 500.016 timeout (8 of 15). No SLA found (0). Generally available (10). 20 + 10 + 15 + 8 + 0 + 10 = 63.\n- Uniswap Trading API (42): Read with the hosted lines on the Trading API. status.uniswap.org redirects to the swap app and the docs link no status page (0). No readable history (5). Rate limit documented as 6 requests a second per key (15). The errors page says to pause all requests from the key on 429, retry 500 and 503 with backoff and refresh quotes after 30 seconds; swaps are signed transactions, so idempotency rests on the chain nonce (12 of 15). No SLA (0). The API is generally available; Guidestar routing is a beta notice (10). 0 + 5 + 15 + 12 + 0 + 10 = 42.\n\n### Payments \u0026 pricing: Uniswap Trading API +20\n\n- Bitstamp API (20): No machine payment protocol (0). The fee schedule page loaded empty, the API's fee endpoints need a key, and no rate could be read, so fees are scored as not published (0, unchecked). The API is free, public endpoints need no key and the sandbox needs no money (20). A person must sign up in a browser with identity checks and mint the key (0). 0 + 0 + 20 + 0 = 20.\n- Uniswap Trading API (40): No machine payment protocol on the API's endpoints; the `pay-with-any-token` skill lets an agent pay other services' 402 challenges by swapping, which earns nothing here (0). The API is free, stated in the FAQ and the 16 April 2026 post, and integrator fees are capped at 500 bips (20). No card and no plan (20). A person creates an account in the dashboard to get a key (0). Total 40.\n\n### Agent ergonomics: Uniswap Trading API +14\n\n- Bitstamp API (58): Graded on the REST API. Order book grouping and transaction time windows size responses, but there is no field selection and no MCP surface (15 of 25). Offset, limit, since and sort on transaction history, `until_id` windows on order-data replay (14 of 20). `response_code` and `response_explanation` name the failure, such as 400.009 insufficient balance, 403.004 trading blocked and 500.025 insufficient liquidity (16 of 20). No idempotency, since `client_order_id` duplicates are allowed since November 2023 and the docs say only to check the order id after a timeout; the kill switch limits damage (8 of 20). Few required parameters, but no official SDK in any language (5 of 15). 15 + 14 + 16 + 8 + 5 = 58.\n- Uniswap Trading API (72): An API, read for response sizing. Quotes and calldata are compact and `/tokens` takes a limit; the quote can carry the swap calldata to save a call (20 of 25). `GET /orders` and `GET /swaps` poll status by id, `/swappable_tokens` and `/tokens` filter by chain and sort, with little pagination elsewhere (12 of 20). Stable `errorCode` values with a `detail` string and a `requestId`, and the docs say which codes to retry (18 of 20). No idempotency key; a swap is a signed transaction whose nonce prevents a double spend, and the docs warn about nonce collisions with pending transactions (12 of 20). Few required fields on `/quote`, defaults for slippage and urgency, but no official client library for the API and signing needs ethers.js, viem or web3.js (10 of 15). Total 72.\n\n## Score by category\n\n| Category | Weight | Bitstamp API | Uniswap Trading API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 63 | 42 | Bitstamp API +21 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 51 | 90 | Uniswap Trading API +39 |\n| Agent ergonomics | 13% (16.2 this run) | 58 | 72 | Uniswap Trading API +14 |\n| Security \u0026 auth | 14% (17.5 this run) | 60 | 63 | Uniswap Trading API +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 40 | Uniswap Trading API +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 28 | 88 | Uniswap Trading API +60 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 53 | 55 | Uniswap Trading API +2 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **50.4 · D** | **63.3 · B** | |\n\n## Facts side by side\n\n| Fact | Bitstamp API | Uniswap Trading API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Bitstamp Ltd. | Uniswap Labs |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | API key | API key |\n| Pricing | Pay per use | Free |\n| x402 | no | no |\n| Licence | Proprietary hosted API under Bitstamp's terms of use, which our reader couldn't load | The Trading API is a proprietary hosted service under Uniswap Labs' API Terms of Use, which we couldn't read; the SDKs and the uniswap-ai skills are MIT. Swaps execute on the open-source Uniswap protocol contracts on chain |\n| Tools exposed | none | 0 |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-08-28 | 2026-10-22 |\n| Terms last updated | couldn't be read | couldn't be read |\n| Privacy policy last updated | couldn't be read | no document linked |\n| Customer content may train models | couldn't be read | couldn't be read |\n| Terms restrict automated access | couldn't be read | couldn't be read |\n| Terms restrict benchmarking | couldn't be read | couldn't be read |\n| Terms or service can change without notice | couldn't be read | couldn't be read |\n| Arbitration or class-action waiver | couldn't be read | couldn't be read |\n| Popularity | none | 236 stars, 154k npm/wk |\n\n## Verdicts\n\n**Bitstamp API.** Bitstamp documents its v2 API on one static page with numeric rate limits, per-endpoint key permissions, an IP allow-list, a kill switch and a sandbox. There is no official MCP server, duplicate client order ids are allowed, and the fee schedule, terms, privacy policy and country list render by script and could not be read.\n\n**Uniswap Trading API.** The Trading API is free, documented by an OpenAPI file with stable error codes, holds no keys since the caller signs every swap, and posts sunset notices 30 days ahead. There is no official MCP server, status page or sandbox, the key is a plain header secret at 6 requests a second, and the API terms refused our reader.\n\n## Before you call either\n\n### Bitstamp API\n\n1. Mint a key with only the endpoint permissions the task needs and an IP allow-list; keep `revoke_all_api_keys` in reach as a kill switch\n2. Treat `client_order_id` as a label, not a guard. On a timeout (500.016) fetch the order by client id before resending, because duplicates are accepted\n3. Use a fresh 36-character nonce and a timestamp within 150 seconds of server time on every request, or expect API0004 and API0017\n4. Stay under 400 requests a second and 10,000 per 10 minutes; 400.002 and 400.067 mean back off, and open-orders answers are cached for 10 seconds\n5. Start on sandbox.bitstamp.net with the same paths, and read the fee schedule in a browser before quoting costs, since it is unreadable to a plain fetch\n\n### Uniswap Trading API\n\n1. Call `/check_approval` first, then `/quote`; if `permitData` is non-null sign it as EIP-712 and send `signature` and `permitData` together to `/swap` or `/order`, never one without the other\n2. Route on the quote's `routing`: `CLASSIC`, `WRAP`, `UNWRAP` and `BRIDGE` go to `/swap`, `DUTCH_V2`, `DUTCH_V3` and `PRIORITY` to `/order`, `CHAINED` to `/plan`\n3. Refresh any quote older than 30 seconds before broadcasting, and on 429 pause every request from the key before retrying\n4. Retry unchanged only on `UpstreamTimeoutError`; `NoRouteFoundError` and `QuoteAmountTooLowError` need a different amount, token or `protocols` list\n5. Send `X-Agent-Info` with `decision_origin: autonomous` and keep `x-api-key` server-side\n\n## Questions\n\n### Which is better for AI agents, Bitstamp API or Uniswap Trading API?\n\nUniswap Trading API scores 63.3 (B) on agent readiness against Bitstamp API's 50.4 (D), and leads in 6 of 7 scored categories. Bitstamp API leads on reliability.\n\n### Do Bitstamp API and Uniswap Trading API need an API key?\n\nBoth need an API key.\n\n### Can an agent call Bitstamp API and Uniswap Trading API without installing anything?\n\nNo hosted endpoint is listed for Bitstamp API. No hosted endpoint is listed for Uniswap Trading API.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bitstamp-vs-uniswap.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bitstamp-vs-uniswap.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bitstamp\", \"b\": \"uniswap\"}`. From a terminal: `anchor compare bitstamp uniswap`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bitstamp.json and https://www.anchorterminal.com/api/v1/tools/uniswap.json\n\n## Other comparisons with Bitstamp API or Uniswap Trading API\n\n- [Bitfinex API vs Bitstamp API](https://www.anchorterminal.com/compare/bitfinex-vs-bitstamp.md)\n- [Bitfinex API vs Uniswap Trading API](https://www.anchorterminal.com/compare/bitfinex-vs-uniswap.md)\n- [Bitget vs Bitstamp API](https://www.anchorterminal.com/compare/bitget-vs-bitstamp.md)\n- [Bitget vs Uniswap Trading API](https://www.anchorterminal.com/compare/bitget-vs-uniswap.md)\n- [Bithumb Open API vs Bitstamp API](https://www.anchorterminal.com/compare/bithumb-vs-bitstamp.md)\n- [Bithumb Open API vs Uniswap Trading API](https://www.anchorterminal.com/compare/bithumb-vs-uniswap.md)\n- [Bitstamp API vs Bybit](https://www.anchorterminal.com/compare/bitstamp-vs-bybit.md)\n- [Bitstamp API vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/bitstamp-vs-coinbase-advanced-trade.md)\n- [Bitstamp API vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/bitstamp-vs-coinbase-mcp.md)\n- [Bitstamp API vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/bitstamp-vs-crypto-com-exchange.md)\n- [Bitstamp API vs Deribit](https://www.anchorterminal.com/compare/bitstamp-vs-deribit.md)\n- [Bitstamp API vs dYdX](https://www.anchorterminal.com/compare/bitstamp-vs-dydx.md)\n- [Bitstamp API vs Gate](https://www.anchorterminal.com/compare/bitstamp-vs-gate-io.md)\n- [Bitstamp API vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitstamp-vs-gemini-exchange.md)\n- [Bitstamp API vs HTX trading API](https://www.anchorterminal.com/compare/bitstamp-vs-htx.md)\n- [Bitstamp API vs Hyperliquid](https://www.anchorterminal.com/compare/bitstamp-vs-hyperliquid.md)\n- [Bitstamp API vs Kraken API](https://www.anchorterminal.com/compare/bitstamp-vs-kraken.md)\n- [Bitstamp API vs KuCoin](https://www.anchorterminal.com/compare/bitstamp-vs-kucoin.md)\n- [Bitstamp API vs MEXC API](https://www.anchorterminal.com/compare/bitstamp-vs-mexc.md)\n- [Bitstamp API vs OKX API](https://www.anchorterminal.com/compare/bitstamp-vs-okx.md)\n- [Bitstamp API vs Upbit Open API](https://www.anchorterminal.com/compare/bitstamp-vs-upbit.md)\n- [Bybit vs Uniswap Trading API](https://www.anchorterminal.com/compare/bybit-vs-uniswap.md)\n- [Crypto.com Exchange API vs Uniswap Trading API](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-uniswap.md)\n- [dYdX vs Uniswap Trading API](https://www.anchorterminal.com/compare/dydx-vs-uniswap.md)\n- [Gate vs Uniswap Trading API](https://www.anchorterminal.com/compare/gate-io-vs-uniswap.md)\n- [Gemini Exchange API vs Uniswap Trading API](https://www.anchorterminal.com/compare/gemini-exchange-vs-uniswap.md)\n- [HTX trading API vs Uniswap Trading API](https://www.anchorterminal.com/compare/htx-vs-uniswap.md)\n- [KuCoin vs Uniswap Trading API](https://www.anchorterminal.com/compare/kucoin-vs-uniswap.md)\n- [MEXC API vs Uniswap Trading API](https://www.anchorterminal.com/compare/mexc-vs-uniswap.md)\n- [Binance API vs Bitstamp API](https://www.anchorterminal.com/compare/binance-vs-bitstamp.md)\n- [Binance API vs Uniswap Trading API](https://www.anchorterminal.com/compare/binance-vs-uniswap.md)\n- [Coinbase Advanced Trade API vs Uniswap Trading API](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-uniswap.md)\n- [Coinbase MCP server (Coinbase for Agents) vs Uniswap Trading API](https://www.anchorterminal.com/compare/coinbase-mcp-vs-uniswap.md)\n- [Deribit vs Uniswap Trading API](https://www.anchorterminal.com/compare/deribit-vs-uniswap.md)\n- [Hyperliquid vs Uniswap Trading API](https://www.anchorterminal.com/compare/hyperliquid-vs-uniswap.md)\n- [Kraken API vs Uniswap Trading API](https://www.anchorterminal.com/compare/kraken-vs-uniswap.md)\n- [OKX API vs Uniswap Trading API](https://www.anchorterminal.com/compare/okx-vs-uniswap.md)\n- [Uniswap Trading API vs Upbit Open API](https://www.anchorterminal.com/compare/uniswap-vs-upbit.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Bitstamp API vs Uniswap Trading API",
        "url": ""
      }
    ],
    "description": "Uniswap Trading scores 63.3 (B) to Bitstamp's 50.4 (D) for exchange market data. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Bitstamp API D 50.4",
      "Uniswap Trading API B 63.3",
      "scores"
    ],
    "h1": "Bitstamp API vs Uniswap Trading API",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/bitstamp-vs-uniswap",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Bitstamp vs Uniswap Trading for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-04",
    "url": "https://www.anchorterminal.com/compare/bitstamp-vs-uniswap"
  },
  "tokens": {
    "markdown": 4650,
    "slim": 2330
  },
  "version": 1
}
