{
  "data": {
    "a": {
      "slug": "binance",
      "name": "Binance API",
      "vendor": "Binance",
      "vendorUrl": "https://developers.binance.com/",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Binance's API covers spot, margin and futures trading, market data and account endpoints over REST, WebSocket and FIX, with a free spot testnet and a remote MCP server, documented on 30 October 2026, that trades inside a dedicated Agentic sub-account.",
      "url": "https://www.anchorterminal.com/tools/binance",
      "markdownUrl": "https://www.anchorterminal.com/tools/binance.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/binance.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/binance.json",
      "dns": "binance.grade.anchorterminal.com",
      "repo": "https://github.com/binance/binance-spot-api-docs",
      "license": "Proprietary hosted service under Binance's Terms of Use, which load by script and weren't read. The API docs, connectors, CLI and Skills Hub are open on GitHub under MIT",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://agent.binance.com/mcp/agentic",
      "packages": [],
      "auth": "mixed",
      "authNotes": "API key with an HMAC secret, or a self-generated RSA or Ed25519 key pair whose public key is registered, sent as X-MBX-APIKEY with a signed query and timestamp (recvWindow 5000 ms by default). Permissions are reading, spot and margin trading, futures and withdrawals; an HMAC key without an IP restriction can only read since 30 January 2023, and withdrawals need an IP restriction. Only Verified Plus accounts can create keys. The MCP server uses OAuth in a desktop browser with four scopes (market data, account, trade, transfer) on a dedicated Agentic sub-account and no withdrawal scope (https://www.binance.com/en/support/faq/detail/360002502072, https://developers.binance.com/en/docs/agent-native/mcp-server/agentic, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "The API costs nothing to call. Spot trades carry a standard fee of 0.1 per cent for regular users per the fee FAQ; the maker and taker table on the fee page loads by script and wasn't read, nor were futures fees. Public market data and the spot testnet need no account; the testnet needs a GitHub login.",
      "priceSummary": "0.1% fee",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the exchange API or the MCP server in the docs read (checked 2026-11-03). A separate Binance x402 product is named in press coverage of Agent OS, which wasn't read first-hand.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 4903,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://developers.binance.com/docs/binance-spot-api-docs/README",
      "llmsTxt": "https://developers.binance.com/en/docs/llms.txt",
      "capabilities": [
        "exchange.spot-trading",
        "exchange.market-data",
        "exchange.derivatives",
        "exchange.balances",
        "exchange.transfers",
        "exchange.staking",
        "market.crypto"
      ],
      "tags": [
        "hosted",
        "official",
        "closed-source",
        "api-key",
        "oauth",
        "mcp",
        "remote-mcp",
        "llms-txt",
        "sandbox",
        "python",
        "typescript",
        "java",
        "go",
        "cli",
        "usage-priced",
        "no-card"
      ],
      "lastRelease": "2026-10-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.2,
        "grade": "B",
        "agentReady": false,
        "rank": 448,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 6,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 76,
          "maintenance": 81,
          "payments": 35,
          "reliability": 45,
          "schema": 86,
          "security": 72,
          "transparency": 43
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Binance publishes numeric rate limits, a free testnet with FIX, connectors in eight languages and, since late October 2026, a remote MCP server that trades only in a dedicated sub-account with no withdrawal scope. There is no status page, the terms and privacy notice could not be read, and the MCP tool list is not published.",
        "bestFor": "An agent trading a funded Binance account outside the prohibited countries, with the deepest set of markets in this group and a free testnet.",
        "strengths": [
          "Rate limits published as per-endpoint weights with 6,000 a minute, 50 orders per 10 seconds and Retry-After on 429 and 418",
          "Spot testnet with REST, WebSocket and FIX endpoints, virtual balances and production limits, free with a GitHub login",
          "Official remote MCP server with OAuth scopes, an isolated Agentic sub-account, no withdrawal scope and confirmation before writes",
          "Keys with reading, trading, futures and withdrawal permissions; unrestricted-IP HMAC keys can only read and withdrawals need an IP restriction",
          "Dated changelog since 2018 with retirement dates announced months ahead, llms.txt and llms-full.txt"
        ],
        "weaknesses": [
          "No status page or incident history found on binance.com or in the API docs",
          "The Terms of Use and privacy notice load by script and weren't read, so what they say about bots and API use is unknown",
          "The MCP server's tool list and schemas are not published; the docs describe four scopes",
          "The maker and taker fee table loads by script; only the 0.1 per cent standard rate in a FAQ was read",
          "binance-api-swagger was last pushed in October 2024, so the machine-readable spec lags the docs"
        ],
        "agentNotes": [
          "Read the X-MBX-USED-WEIGHT and X-MBX-ORDER-COUNT headers and stop on 429 for the Retry-After seconds; a 418 ban runs 2 minutes to 3 days",
          "Treat a 5xx on an order as unknown, not failed, and query the order by origClientOrderId before retrying",
          "Use an Ed25519 key with an IP restriction and only the reading and trading permissions; never enable withdrawals for an agent key",
          "Develop on testnet.binance.vision with BINANCE_API_ENV=testnet; it resets about monthly without notice",
          "For the MCP route, the person must fund the Agentic sub-account from the web UI first; the agent cannot move funds in from the main account"
        ],
        "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.2
          }
        ],
        "editorialScores": {
          "ergonomics": 76,
          "maintenance": 81,
          "payments": 35,
          "reliability": 45,
          "schema": 86,
          "security": 72,
          "transparency": 31
        },
        "provenanceScore": 54,
        "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://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT",
        "claudeCode": "claude mcp add binance-mcp-server --transport http https://agent.binance.com/mcp/agentic",
        "config": {
          "mcpServers": {
            "binance-mcp-server": {
              "url": "https://agent.binance.com/mcp/agentic"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/exchange.spot-trading",
        "tool": "https://letme.dev/binance"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Spot trade, regular user",
          "unit": "pct",
          "usd": 0.1,
          "note": "standard fee per the fee FAQ; maker and taker table not read"
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "binance.com",
        "domainRegistered": "2017-04-01",
        "endpointOnVendorDomain": true,
        "terms": "https://www.binance.com/en/terms",
        "privacy": "https://www.binance.com/en-GB/about-legal/privacy-portal",
        "statusPage": "",
        "changelog": "https://developers.binance.com/docs/binance-spot-api-docs/CHANGELOG",
        "securityTxt": "unknown",
        "checked": "2026-11-03",
        "notes": [
          "The Terms of Use and the privacy pages answered our reader with navigation and footer only, so no contracting entity, governing law or data-handling statement was read. The about page names three ADGM entities as regulated subsidiaries, not as the contracting party.",
          "RDAP gives binance.com a registration date of 1 April 2017.",
          "https://www.binance.com/.well-known/security.txt has a Contact line (security@binance.com) and no Expires or Policy line, so its validity is unknown under RFC 9116.",
          "No status page was found. www.binance.com/robots.txt allows the pages read and disallows */api/, */bapi/ and */my/; developers.binance.com and agent.binance.com have no robots.txt (404); api.binance.com and testnet.binance.vision disallow all crawlers, so no API call was made to either.",
          "The spot API changelog is dated, newest 30 October 2026."
        ],
        "score": 54
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/binance.json",
      "live": {
        "slug": "binance",
        "probe": {
          "target": "https://agent.binance.com/mcp/agentic",
          "method": "get",
          "lastAt": "2026-11-04T20:04:53.146241263Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 554,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 474,
          "p95ms24h": 582,
          "samples24h": 48,
          "samples30d": 48,
          "days": [
            {
              "date": "2026-11-04",
              "probes": 48,
              "ok": 48
            }
          ]
        },
        "githubStars": 4902,
        "securityTxt": {
          "url": "https://binance.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-11-04T15:53:46.658619838Z"
        },
        "updatedAt": "2026-11-04T20:04:53.146241263Z"
      }
    },
    "answer": "Binance API scores 63.2 (B) on agent readiness against Upbit Open API's 54.7 (C), and leads in 5 of 7 scored categories. Upbit Open API leads on transparency \u0026 trust.",
    "b": {
      "slug": "upbit",
      "name": "Upbit Open API",
      "vendor": "Dunamu Inc.",
      "vendorUrl": "https://docs.upbit.com",
      "kind": "http-api",
      "category": "crypto-exchanges",
      "summary": "Upbit, the Korean exchange run by Dunamu, has a REST and WebSocket Open API for KRW, BTC and USDT market data, orders, balances, deposits and withdrawals, with official SDKs, a CLI and agent skills but no MCP server.",
      "url": "https://www.anchorterminal.com/tools/upbit",
      "markdownUrl": "https://www.anchorterminal.com/tools/upbit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/upbit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/upbit.json",
      "dns": "upbit.grade.anchorterminal.com",
      "repo": "https://github.com/upbit-official",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@upbit-official/upbit-cli"
        },
        {
          "registry": "pypi",
          "name": "upbit-sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "Access and secret keys issued on the PC web site under My Page \u003e Open API Management after identity verification and two-factor authentication. At issuance the person picks the functions the key may use and must register at least one public IPv4 address, since the allow-list is mandatory. Each request carries a JWT signed with HMAC SHA512 over the access key, a fresh nonce and a SHA512 hash of the query, as a Bearer token. A key with withdrawal permission gets a withdrawal safe-lock by default that is lifted only in the mobile app. Up to 10 keys on the main pocket and 5 per sub-pocket; expired keys answer expired_access_key (https://docs.upbit.com/kr/docs/api-key.md, checked 2026-11-03).",
      "pricing": "usage",
      "pricingNotes": "Trading fees per fill. The fee schedule is on upbit.com, whose robots.txt disallows every path for our crawler, so no rate is recorded. Public quotation endpoints need no key and no account (https://upbit.com/robots.txt, checked 2026-11-03).",
      "priceSummary": "Pay per use",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, llms.txt, the SDK licence or the CLI docs (checked 2026-11-03). Fees are taken from each fill.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": 91,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docs.upbit.com/kr/reference/api-overview",
      "llmsTxt": "https://docs.upbit.com/llms.txt",
      "capabilities": [
        "exchange.market-data",
        "exchange.spot-trading",
        "exchange.balances",
        "exchange.transfers",
        "market.crypto"
      ],
      "tags": [
        "hosted",
        "api-key",
        "closed-source",
        "usage-priced",
        "cli",
        "agent-skills",
        "llms-txt",
        "python",
        "typescript",
        "go",
        "no-status-page"
      ],
      "lastRelease": "2026-10-20",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 54.7,
        "grade": "C",
        "agentReady": false,
        "rank": 860,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 14,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 70,
          "maintenance": 83,
          "payments": 15,
          "reliability": 42,
          "schema": 66,
          "security": 59,
          "transparency": 54
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Upbit's Open API has a mandatory IP allow-list, scoped keys with a default withdrawal lock, per-group rate limits with 429 and 418 signalling, an order-test endpoint, official SDKs, a CLI and agent skills with a CONFIRM gate. There is no MCP server, sandbox or status page, and the fees and terms sit on a host our crawler may not read.",
        "bestFor": "KRW-market trading for agents acting for a verified Korean account, with first-party SDKs, a CLI and skills but no MCP.",
        "strengths": [
          "Keys need a registered public IP, carry only the chosen functions and get a withdrawal safe-lock by default that only the mobile app lifts",
          "Rate limits published per group with numbers, a Remaining-Req header on every response, 429 then 418 with a stated block length",
          "POST /v1/orders/test checks an order and the pair's state at no cost, and the skills run it before a live order",
          "Official Python, TypeScript and Go SDKs at v1.1.0 (20 October 2026), a CLI with JSON output and agent skills that require a typed CONFIRM before any write",
          "Notices carry effective dates, such as the path-format change of 16 November 2026"
        ],
        "weaknesses": [
          "No MCP server; the agent route is the CLI through skills, which need a terminal",
          "No sandbox or testnet beyond the order-test endpoint, and no status page or SLA",
          "Keys can only be issued on the PC web site after Korean identity verification and 2FA, and the exchange serves the Korean market",
          "The fee schedule, user terms and Open API terms are on upbit.com, which disallows every crawler path, so none is recorded first-hand",
          "The SDK licence page says the SDK material is not open source while the GitHub repositories carry Apache-2.0"
        ],
        "agentNotes": [
          "Ask the person for a key with only the functions the task needs and your server's public IPv4 address registered; a private or unregistered IP is refused",
          "Sign every request with a fresh JWT (HS512, new nonce, SHA512 query hash) and branch on error.name, not error.message",
          "Run POST /v1/orders/test before a live order; it costs nothing and shares the 8-a-second order-test group",
          "Read Remaining-Req and keep orders under 12 a second per pocket; on 429 wait for the next second and on 418 wait out the stated block",
          "Leave the withdrawal safe-lock on unless the person lifts it in the app, and send paths with single slashes and no trailing slash before 16 November 2026"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 54.7
          }
        ],
        "editorialScores": {
          "ergonomics": 70,
          "maintenance": 83,
          "payments": 15,
          "reliability": 42,
          "schema": 66,
          "security": 59,
          "transparency": 42
        },
        "provenanceScore": 66,
        "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": "npm install -g @upbit-official/upbit-cli",
        "http": "curl 'https://api.upbit.com/v1/ticker?markets=KRW-BTC'"
      },
      "letme": {
        "capability": "https://letme.dev/exchange.market-data",
        "tool": "https://letme.dev/upbit"
      },
      "area": "payments",
      "provenance": {
        "legalEntity": "Dunamu Inc.",
        "domain": "upbit.com",
        "domainRegistered": "2004-01-10",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "https://docs.upbit.com/kr/page/privacy_policy_v1_5.md",
        "statusPage": "",
        "changelog": "https://docs.upbit.com/kr/changelog",
        "securityTxt": "unknown",
        "checked": "2026-11-03",
        "notes": [
          "Dunamu Inc. is named as the licensor in the Upbit Developer SDK License v1.0 and as the company in the developer centre's privacy policy V1.5 (from 18 May 2026).",
          "upbit.com/robots.txt disallows every path for User-agent * (a second group adds /terms_and_policy and others), allowing only Googlebot, MSNBot, Yeti and Daumoa; sg.upbit.com and www.dunamu.com do the same. The user terms, the Open API terms, the fee schedule and security.txt on those hosts were therefore not fetched; the terms URL is left empty.",
          "docs.upbit.com/robots.txt allows everything but edit, login and api-next paths and points to llms.txt, with Content-Signal ai-train=yes, search=yes, ai-input=yes.",
          "RDAP gives upbit.com a registration date of 10 January 2004.",
          "No status page found; the API has a service-status (wallet status) endpoint and an announcements WebSocket stream."
        ],
        "score": 66
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/upbit.json",
      "live": {
        "slug": "upbit",
        "securityTxt": {
          "url": "https://upbit.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:53:27.560288922Z"
        },
        "updatedAt": "2026-11-04T15:53:27.560288922Z"
      }
    },
    "edges": [
      {
        "by": 20,
        "category": "schema",
        "leads": "binance",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "The docs are Markdown in a public repository with a Postman collection and a Swagger spec, but the spec was last pushed in October 2024 (20 of 25). llms.txt and llms-full.txt on developers.binance.com (10). Each endpoint states its weight, parameters and notes on behaviour, with less on when not to use one (15 of 20). Enums for order types, time in force and symbol filters, required columns in the parameter tables (12 of 15). Request and response examples throughout and an error code list with messages (14 of 15). A dated changelog since 2018 with retirements announced months ahead, such as the 2 September 2026 field removal notified on 2 December 2025 (15). 20 + 10 + 15 + 12 + 14 + 15 = 86.",
          "b": "No OpenAPI found; the reference is a readme.io site with a Markdown twin of every page (5 of 25). llms.txt on docs.upbit.com and a kr/llms.txt index (10). Each reference page states what the endpoint does, its group and its errors, with warnings such as market_offline after maintenance (14 of 20). Typed parameters with enums for order type, side and time in force and required flags (11 of 15). Recipes in Python, Java and Node.js and an error format of error.name and error.message with HTTP statuses (13 of 15). Feature versions in page histories (v1.6.1) and dated notices with effective dates, no single API version (13 of 15). 5 + 10 + 14 + 11 + 13 + 13 = 66."
        },
        "scores": {
          "a": 86,
          "b": 66
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "binance",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No machine payment protocol (0). A 0.1 per cent standard spot fee is stated in the fee FAQ; the maker and taker table and futures fees load by script and weren't read (15 of 20). Public market data needs no key and the testnet is free with a GitHub login (20). A person signs up, passes Verified Plus verification, deposits and mints a key (0). 0 + 15 + 20 + 0 = 35.",
          "b": "No machine payment protocol (0). The fee schedule is on upbit.com, which disallows every crawler path, so no price is recorded (0 of 20, unchecked). Public quotation endpoints need no key, card or account; trading needs a verified Korean account. Judgement call (15 of 20). A person must sign up, pass identity checks and issue keys on the PC web site (0). 0 + 0 + 15 + 0 = 15."
        },
        "scores": {
          "a": 35,
          "b": 15
        }
      },
      {
        "by": 13,
        "category": "security",
        "leads": "binance",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "API keys with HMAC, RSA or Ed25519 signatures, permissions for reading, trading, futures and withdrawals, an IP restriction, revocation in API Management, and OAuth with four scopes on the MCP server; no key expiry found (28 of 30). Read-only keys, sub-accounts, withdrawals only with an IP restriction, and the MCP server's isolated Agentic sub-account with no withdrawal scope and confirmation before writes (18 of 20). The API returns no untrusted content (10). Keys are listed in API Management and used weight is returned per call, but no per-call log for the operator was found (6 of 15). security.txt with a contact and no expiry, a Bugcrowd programme named in the proof-of-solvency repository, no certification read (10 of 20). 28 + 18 + 10 + 6 + 10 = 72.",
          "b": "Keys limited to chosen functions, a mandatory public IPv4 allow-list, a JWT per request with a fresh nonce, keys listed with expiry through the API, and a withdrawal safe-lock on by default (27 of 30). Read-only keys, the default withdrawal lock lifted only in the app, and skills that require a typed CONFIRM before writes (17 of 20). The API returns exchange data and announcements, no third-party content (10 of 15). An API key list endpoint; no per-call log for the operator (5 of 15). No disclosure policy, bug bounty or certification found; security.txt on upbit.com could not be fetched under its robots.txt (0 of 20). 27 + 17 + 10 + 5 + 0 = 59."
        },
        "scores": {
          "a": 72,
          "b": 59
        }
      },
      {
        "by": 11,
        "category": "transparency",
        "leads": "upbit",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "The editorial half. A closed service whose Terms of Use couldn't be read; the docs, connectors, CLI and skills are MIT on GitHub (10 of 30). The privacy notice couldn't be read, so no retention or subprocessor statement was checked; the prohibited-countries list is public and dated (5 of 30). The changelog gives retirement dates for SBE schemas and FIX fields months ahead (16 of 20). No subprocessor or data-location statement read (0 of 20). 10 + 5 + 16 + 0 = 31.",
          "b": "The editorial half. A closed service whose user and Open API terms could not be fetched under upbit.com's robots.txt, and whose SDK licence page calls the SDK material not open source while the repositories carry Apache-2.0 (8 of 30). The developer centre's privacy policy names Dunamu Inc., gives retention periods and names Zendesk in Japan; the main privacy policy was not read (14 of 30). Notices with effective dates, including the path-format change and the deprecated Remaining-Req min field (12 of 20). Zendesk and Google Analytics named with a location for the developer centre only (8 of 20). 8 + 14 + 12 + 8 = 42."
        },
        "scores": {
          "a": 43,
          "b": 54
        }
      },
      {
        "by": 6,
        "category": "ergonomics",
        "leads": "binance",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "limit on depth, trades and klines, a symbols filter on exchangeInfo and tickers, and SBE encoding, though fields cannot be selected (16 of 25). fromId, startTime, endTime and limit on history endpoints (16 of 20). Error codes with messages an agent can branch on, such as the rate limit and timestamp errors (17 of 20). newClientOrderId on orders, a cancel-replace endpoint and the 5xx unknown-status rule, but no idempotency key on other writes (12 of 20). Connectors in nine languages, a CLI with testnet and demo profiles, and a timestamped HMAC or Ed25519 signature on every private call (15). 16 + 16 + 17 + 12 + 15 = 76.",
          "b": "Graded on the REST API with the CLI. Candle counts, list limits and the CLI's --max-items and --transform size responses (16 of 25). Paging and filters on orders and history (15 of 20). error.name codes to branch on, which the November 2026 notice tells clients to use, and 418 with its block length (15 of 20). An order-test endpoint and a CONFIRM gate in the skills; an order identifier for idempotent placement was not checked (11 of 20). Few required parameters, SDKs in three languages and a CLI, but keys need the PC web site and a registered IP (13 of 15). 16 + 15 + 15 + 11 + 13 = 70."
        },
        "scores": {
          "a": 76,
          "b": 70
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Binance",
        "b": "Dunamu Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://agent.binance.com/mcp/agentic",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary hosted service under Binance's Terms of Use, which load by script and weren't read. The API docs, connectors, CLI and Skills Hub are open on GitHub under MIT",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "0",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-30",
        "b": "2026-10-20",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "couldn't be read",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "not read yet",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "not read yet",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "not read yet",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "not read yet",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "not read yet",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "4.9k stars",
        "b": "91 stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Binance API scores 63.2 (B) on agent readiness against Upbit Open API's 54.7 (C), and leads in 5 of 7 scored categories. Upbit Open API leads on transparency \u0026 trust.",
        "question": "Which is better for AI agents, Binance API or Upbit Open API?"
      },
      {
        "answer": "Binance API takes an API key or an OAuth sign-in. Upbit Open API needs an API key.",
        "question": "Do Binance API and Upbit Open API need an API key?"
      },
      {
        "answer": "Binance API has a hosted endpoint at https://agent.binance.com/mcp/agentic. No hosted endpoint is listed for Upbit Open API.",
        "question": "Can an agent call Binance API and Upbit Open API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 86 against 66",
          "Agent ergonomics, 76 against 70",
          "Security \u0026 auth, 72 against 59",
          "Payments \u0026 pricing, 35 against 15"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "Free to start without a card"
        ],
        "goodFor": "An agent trading a funded Binance account outside the prohibited countries, with the deepest set of markets in this group and a free testnet.",
        "slug": "binance",
        "watchFor": "No status page or incident history found on binance.com or in the API docs"
      },
      {
        "aheadOn": [
          "Transparency \u0026 trust, 54 against 43"
        ],
        "also": null,
        "goodFor": "KRW-market trading for agents acting for a verified Korean account, with first-party SDKs, a CLI and skills but no MCP.",
        "slug": "upbit",
        "watchFor": "No MCP server; the agent route is the CLI through skills, which need a terminal"
      }
    ],
    "history": null,
    "job": {
      "capability": "exchange.spot-trading",
      "name": "Exchange spot trading"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/bitfinex-vs-upbit.json",
        "title": "Bitfinex API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bitfinex-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitget-vs-upbit.json",
        "title": "Bitget vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bitget-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bithumb-vs-upbit.json",
        "title": "Bithumb Open API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bithumb-vs-upbit"
      },
      {
        "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-upbit.json",
        "title": "Bybit vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/bybit-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-upbit.json",
        "title": "Crypto.com Exchange API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/crypto-com-exchange-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deribit-vs-upbit.json",
        "title": "Deribit vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/deribit-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dydx-vs-upbit.json",
        "title": "dYdX vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/dydx-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gate-io-vs-upbit.json",
        "title": "Gate vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/gate-io-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-exchange-vs-upbit.json",
        "title": "Gemini Exchange API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/gemini-exchange-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/htx-vs-upbit.json",
        "title": "HTX trading API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/htx-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperliquid-vs-upbit.json",
        "title": "Hyperliquid vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/hyperliquid-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kucoin-vs-upbit.json",
        "title": "KuCoin vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/kucoin-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mexc-vs-upbit.json",
        "title": "MEXC API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/mexc-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-bitfinex.json",
        "title": "Binance API vs Bitfinex API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bitfinex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-bitget.json",
        "title": "Binance API vs Bitget",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bitget"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-bithumb.json",
        "title": "Binance API vs Bithumb Open API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bithumb"
      },
      {
        "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-bybit.json",
        "title": "Binance API vs Bybit",
        "url": "https://www.anchorterminal.com/compare/binance-vs-bybit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-coinbase-advanced-trade.json",
        "title": "Binance API vs Coinbase Advanced Trade API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-coinbase-advanced-trade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-coinbase-mcp.json",
        "title": "Binance API vs Coinbase MCP server (Coinbase for Agents)",
        "url": "https://www.anchorterminal.com/compare/binance-vs-coinbase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-crypto-com-exchange.json",
        "title": "Binance API vs Crypto.com Exchange API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-crypto-com-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-deribit.json",
        "title": "Binance API vs Deribit",
        "url": "https://www.anchorterminal.com/compare/binance-vs-deribit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-gate-io.json",
        "title": "Binance API vs Gate",
        "url": "https://www.anchorterminal.com/compare/binance-vs-gate-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-gemini-exchange.json",
        "title": "Binance API vs Gemini Exchange API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-gemini-exchange"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-htx.json",
        "title": "Binance API vs HTX trading API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-htx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-hyperliquid.json",
        "title": "Binance API vs Hyperliquid",
        "url": "https://www.anchorterminal.com/compare/binance-vs-hyperliquid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-kraken.json",
        "title": "Binance API vs Kraken API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-kraken"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-kucoin.json",
        "title": "Binance API vs KuCoin",
        "url": "https://www.anchorterminal.com/compare/binance-vs-kucoin"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-mexc.json",
        "title": "Binance API vs MEXC API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-mexc"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-okx.json",
        "title": "Binance API vs OKX API",
        "url": "https://www.anchorterminal.com/compare/binance-vs-okx"
      },
      {
        "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-upbit.json",
        "title": "Coinbase Advanced Trade API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-upbit.json",
        "title": "Coinbase MCP server (Coinbase for Agents) vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/coinbase-mcp-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kraken-vs-upbit.json",
        "title": "Kraken API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/kraken-vs-upbit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/okx-vs-upbit.json",
        "title": "OKX API vs Upbit Open API",
        "url": "https://www.anchorterminal.com/compare/okx-vs-upbit"
      },
      {
        "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"
      },
      {
        "json": "https://www.anchorterminal.com/compare/binance-vs-dydx.json",
        "title": "Binance API vs dYdX",
        "url": "https://www.anchorterminal.com/compare/binance-vs-dydx"
      }
    ],
    "panel": null,
    "scores": [
      {
        "binance": 45,
        "by": 3,
        "edge": "binance",
        "key": "reliability",
        "name": "Reliability",
        "upbit": 42,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "binance": 86,
        "by": 20,
        "edge": "binance",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "upbit": 66,
        "weight": 13
      },
      {
        "binance": 76,
        "by": 6,
        "edge": "binance",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "upbit": 70,
        "weight": 13
      },
      {
        "binance": 72,
        "by": 13,
        "edge": "binance",
        "key": "security",
        "name": "Security \u0026 auth",
        "upbit": 59,
        "weight": 14
      },
      {
        "binance": 35,
        "by": 20,
        "edge": "binance",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "upbit": 15,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "binance": 81,
        "by": 2,
        "edge": "upbit",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "upbit": 83,
        "weight": 7
      },
      {
        "binance": 43,
        "by": 11,
        "edge": "upbit",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "upbit": 54,
        "weight": 7
      }
    ],
    "summary": "Binance API scores 63.2 (B) on agent readiness against Upbit Open API's 54.7 (C), and leads in 5 of 7 scored categories. Upbit Open API leads on transparency \u0026 trust. Both do exchange spot trading.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "binance": "Binance publishes numeric rate limits, a free testnet with FIX, connectors in eight languages and, since late October 2026, a remote MCP server that trades only in a dedicated sub-account with no withdrawal scope. There is no status page, the terms and privacy notice could not be read, and the MCP tool list is not published.",
      "upbit": "Upbit's Open API has a mandatory IP allow-list, scoped keys with a default withdrawal lock, per-group rate limits with 429 and 418 signalling, an order-test endpoint, official SDKs, a CLI and agent skills with a CONFIRM gate. There is no MCP server, sandbox or status page, and the fees and terms sit on a host our crawler may not read."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/binance-vs-upbit",
    "json": "https://www.anchorterminal.com/compare/binance-vs-upbit.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/binance-vs-upbit.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/binance-vs-upbit.min.md"
  },
  "markdown": "Binance API scores 63.2 (B) on agent readiness against Upbit Open API's 54.7 (C), and leads in 5 of 7 scored categories. Upbit Open API leads on transparency \u0026 trust. Both do exchange spot trading.\n\n- Binance API: grade B, 63.2/100, rank #448 of 1349. Markdown https://www.anchorterminal.com/tools/binance.md · JSON https://www.anchorterminal.com/api/v1/tools/binance.json\n- Upbit Open API: grade C, 54.7/100, rank #860 of 1349. Markdown https://www.anchorterminal.com/tools/upbit.md · JSON https://www.anchorterminal.com/api/v1/tools/upbit.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### Binance API (B)\n\nGood for: An agent trading a funded Binance account outside the prohibited countries, with the deepest set of markets in this group and a free testnet.\n\nAhead on:\n- Schema \u0026 documentation, 86 against 66\n- Agent ergonomics, 76 against 70\n- Security \u0026 auth, 72 against 59\n- Payments \u0026 pricing, 35 against 15\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- Free to start without a card\n\nWatch for: No status page or incident history found on binance.com or in the API docs\n\n### Upbit Open API (C)\n\nGood for: KRW-market trading for agents acting for a verified Korean account, with first-party SDKs, a CLI and skills but no MCP.\n\nAhead on:\n- Transparency \u0026 trust, 54 against 43\n\nWatch for: No MCP server; the agent route is the CLI through skills, which need a terminal\n\n\n## Why the edge\n\n### Schema \u0026 documentation: Binance API +20\n\n- Binance API (86): The docs are Markdown in a public repository with a Postman collection and a Swagger spec, but the spec was last pushed in October 2024 (20 of 25). llms.txt and llms-full.txt on developers.binance.com (10). Each endpoint states its weight, parameters and notes on behaviour, with less on when not to use one (15 of 20). Enums for order types, time in force and symbol filters, required columns in the parameter tables (12 of 15). Request and response examples throughout and an error code list with messages (14 of 15). A dated changelog since 2018 with retirements announced months ahead, such as the 2 September 2026 field removal notified on 2 December 2025 (15). 20 + 10 + 15 + 12 + 14 + 15 = 86.\n- Upbit Open API (66): No OpenAPI found; the reference is a readme.io site with a Markdown twin of every page (5 of 25). llms.txt on docs.upbit.com and a kr/llms.txt index (10). Each reference page states what the endpoint does, its group and its errors, with warnings such as market_offline after maintenance (14 of 20). Typed parameters with enums for order type, side and time in force and required flags (11 of 15). Recipes in Python, Java and Node.js and an error format of error.name and error.message with HTTP statuses (13 of 15). Feature versions in page histories (v1.6.1) and dated notices with effective dates, no single API version (13 of 15). 5 + 10 + 14 + 11 + 13 + 13 = 66.\n\n### Payments \u0026 pricing: Binance API +20\n\n- Binance API (35): No machine payment protocol (0). A 0.1 per cent standard spot fee is stated in the fee FAQ; the maker and taker table and futures fees load by script and weren't read (15 of 20). Public market data needs no key and the testnet is free with a GitHub login (20). A person signs up, passes Verified Plus verification, deposits and mints a key (0). 0 + 15 + 20 + 0 = 35.\n- Upbit Open API (15): No machine payment protocol (0). The fee schedule is on upbit.com, which disallows every crawler path, so no price is recorded (0 of 20, unchecked). Public quotation endpoints need no key, card or account; trading needs a verified Korean account. Judgement call (15 of 20). A person must sign up, pass identity checks and issue keys on the PC web site (0). 0 + 0 + 15 + 0 = 15.\n\n### Security \u0026 auth: Binance API +13\n\n- Binance API (72): API keys with HMAC, RSA or Ed25519 signatures, permissions for reading, trading, futures and withdrawals, an IP restriction, revocation in API Management, and OAuth with four scopes on the MCP server; no key expiry found (28 of 30). Read-only keys, sub-accounts, withdrawals only with an IP restriction, and the MCP server's isolated Agentic sub-account with no withdrawal scope and confirmation before writes (18 of 20). The API returns no untrusted content (10). Keys are listed in API Management and used weight is returned per call, but no per-call log for the operator was found (6 of 15). security.txt with a contact and no expiry, a Bugcrowd programme named in the proof-of-solvency repository, no certification read (10 of 20). 28 + 18 + 10 + 6 + 10 = 72.\n- Upbit Open API (59): Keys limited to chosen functions, a mandatory public IPv4 allow-list, a JWT per request with a fresh nonce, keys listed with expiry through the API, and a withdrawal safe-lock on by default (27 of 30). Read-only keys, the default withdrawal lock lifted only in the app, and skills that require a typed CONFIRM before writes (17 of 20). The API returns exchange data and announcements, no third-party content (10 of 15). An API key list endpoint; no per-call log for the operator (5 of 15). No disclosure policy, bug bounty or certification found; security.txt on upbit.com could not be fetched under its robots.txt (0 of 20). 27 + 17 + 10 + 5 + 0 = 59.\n\n### Transparency \u0026 trust: Upbit Open API +11\n\n- Binance API (43): The editorial half. A closed service whose Terms of Use couldn't be read; the docs, connectors, CLI and skills are MIT on GitHub (10 of 30). The privacy notice couldn't be read, so no retention or subprocessor statement was checked; the prohibited-countries list is public and dated (5 of 30). The changelog gives retirement dates for SBE schemas and FIX fields months ahead (16 of 20). No subprocessor or data-location statement read (0 of 20). 10 + 5 + 16 + 0 = 31.\n- Upbit Open API (54): The editorial half. A closed service whose user and Open API terms could not be fetched under upbit.com's robots.txt, and whose SDK licence page calls the SDK material not open source while the repositories carry Apache-2.0 (8 of 30). The developer centre's privacy policy names Dunamu Inc., gives retention periods and names Zendesk in Japan; the main privacy policy was not read (14 of 30). Notices with effective dates, including the path-format change and the deprecated Remaining-Req min field (12 of 20). Zendesk and Google Analytics named with a location for the developer centre only (8 of 20). 8 + 14 + 12 + 8 = 42.\n\n### Agent ergonomics: Binance API +6\n\n- Binance API (76): limit on depth, trades and klines, a symbols filter on exchangeInfo and tickers, and SBE encoding, though fields cannot be selected (16 of 25). fromId, startTime, endTime and limit on history endpoints (16 of 20). Error codes with messages an agent can branch on, such as the rate limit and timestamp errors (17 of 20). newClientOrderId on orders, a cancel-replace endpoint and the 5xx unknown-status rule, but no idempotency key on other writes (12 of 20). Connectors in nine languages, a CLI with testnet and demo profiles, and a timestamped HMAC or Ed25519 signature on every private call (15). 16 + 16 + 17 + 12 + 15 = 76.\n- Upbit Open API (70): Graded on the REST API with the CLI. Candle counts, list limits and the CLI's --max-items and --transform size responses (16 of 25). Paging and filters on orders and history (15 of 20). error.name codes to branch on, which the November 2026 notice tells clients to use, and 418 with its block length (15 of 20). An order-test endpoint and a CONFIRM gate in the skills; an order identifier for idempotent placement was not checked (11 of 20). Few required parameters, SDKs in three languages and a CLI, but keys need the PC web site and a registered IP (13 of 15). 16 + 15 + 15 + 11 + 13 = 70.\n\n## Score by category\n\n| Category | Weight | Binance API | Upbit Open API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 45 | 42 | Binance API +3 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 66 | Binance API +20 |\n| Agent ergonomics | 13% (16.2 this run) | 76 | 70 | Binance API +6 |\n| Security \u0026 auth | 14% (17.5 this run) | 72 | 59 | Binance API +13 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 15 | Binance API +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 81 | 83 | Upbit Open API +2 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 43 | 54 | Upbit Open API +11 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **63.2 · B** | **54.7 · C** | |\n\n## Facts side by side\n\n| Fact | Binance API | Upbit Open API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Binance | Dunamu Inc. |\n| Hosted endpoint | `https://agent.binance.com/mcp/agentic` | no (local only) |\n| Transports | Streamable HTTP |  |\n| Auth | OAuth or key | API key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary hosted service under Binance's Terms of Use, which load by script and weren't read. The API docs, connectors, CLI and Skills Hub are open on GitHub under MIT | none |\n| Tools exposed | none | 0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-30 | 2026-10-20 |\n| Terms last updated | couldn't be read | no document linked |\n| Privacy policy last updated | couldn't be read | no date given |\n| Customer content may train models | couldn't be read | not read yet |\n| Terms restrict automated access | couldn't be read | not read yet |\n| Terms restrict benchmarking | couldn't be read | not read yet |\n| Terms or service can change without notice | couldn't be read | not read yet |\n| Arbitration or class-action waiver | couldn't be read | not read yet |\n| Popularity | 4.9k stars | 91 stars |\n\n## Verdicts\n\n**Binance API.** Binance publishes numeric rate limits, a free testnet with FIX, connectors in eight languages and, since late October 2026, a remote MCP server that trades only in a dedicated sub-account with no withdrawal scope. There is no status page, the terms and privacy notice could not be read, and the MCP tool list is not published.\n\n**Upbit Open API.** Upbit's Open API has a mandatory IP allow-list, scoped keys with a default withdrawal lock, per-group rate limits with 429 and 418 signalling, an order-test endpoint, official SDKs, a CLI and agent skills with a CONFIRM gate. There is no MCP server, sandbox or status page, and the fees and terms sit on a host our crawler may not read.\n\n## Before you call either\n\n### Binance API\n\n1. Read the X-MBX-USED-WEIGHT and X-MBX-ORDER-COUNT headers and stop on 429 for the Retry-After seconds; a 418 ban runs 2 minutes to 3 days\n2. Treat a 5xx on an order as unknown, not failed, and query the order by origClientOrderId before retrying\n3. Use an Ed25519 key with an IP restriction and only the reading and trading permissions; never enable withdrawals for an agent key\n4. Develop on testnet.binance.vision with BINANCE_API_ENV=testnet; it resets about monthly without notice\n5. For the MCP route, the person must fund the Agentic sub-account from the web UI first; the agent cannot move funds in from the main account\n\n### Upbit Open API\n\n1. Ask the person for a key with only the functions the task needs and your server's public IPv4 address registered; a private or unregistered IP is refused\n2. Sign every request with a fresh JWT (HS512, new nonce, SHA512 query hash) and branch on error.name, not error.message\n3. Run POST /v1/orders/test before a live order; it costs nothing and shares the 8-a-second order-test group\n4. Read Remaining-Req and keep orders under 12 a second per pocket; on 429 wait for the next second and on 418 wait out the stated block\n5. Leave the withdrawal safe-lock on unless the person lifts it in the app, and send paths with single slashes and no trailing slash before 16 November 2026\n\n## Questions\n\n### Which is better for AI agents, Binance API or Upbit Open API?\n\nBinance API scores 63.2 (B) on agent readiness against Upbit Open API's 54.7 (C), and leads in 5 of 7 scored categories. Upbit Open API leads on transparency \u0026 trust.\n\n### Do Binance API and Upbit Open API need an API key?\n\nBinance API takes an API key or an OAuth sign-in. Upbit Open API needs an API key.\n\n### Can an agent call Binance API and Upbit Open API without installing anything?\n\nBinance API has a hosted endpoint at https://agent.binance.com/mcp/agentic. No hosted endpoint is listed for Upbit Open API.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/binance-vs-upbit.json, and with the fewest tokens: https://www.anchorterminal.com/compare/binance-vs-upbit.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"binance\", \"b\": \"upbit\"}`. From a terminal: `anchor compare binance upbit`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/binance.json and https://www.anchorterminal.com/api/v1/tools/upbit.json\n\n## Other comparisons with Binance API or Upbit Open API\n\n- [Bitfinex API vs Upbit Open API](https://www.anchorterminal.com/compare/bitfinex-vs-upbit.md)\n- [Bitget vs Upbit Open API](https://www.anchorterminal.com/compare/bitget-vs-upbit.md)\n- [Bithumb Open API vs Upbit Open API](https://www.anchorterminal.com/compare/bithumb-vs-upbit.md)\n- [Bitstamp API vs Upbit Open API](https://www.anchorterminal.com/compare/bitstamp-vs-upbit.md)\n- [Bybit vs Upbit Open API](https://www.anchorterminal.com/compare/bybit-vs-upbit.md)\n- [Crypto.com Exchange API vs Upbit Open API](https://www.anchorterminal.com/compare/crypto-com-exchange-vs-upbit.md)\n- [Deribit vs Upbit Open API](https://www.anchorterminal.com/compare/deribit-vs-upbit.md)\n- [dYdX vs Upbit Open API](https://www.anchorterminal.com/compare/dydx-vs-upbit.md)\n- [Gate vs Upbit Open API](https://www.anchorterminal.com/compare/gate-io-vs-upbit.md)\n- [Gemini Exchange API vs Upbit Open API](https://www.anchorterminal.com/compare/gemini-exchange-vs-upbit.md)\n- [HTX trading API vs Upbit Open API](https://www.anchorterminal.com/compare/htx-vs-upbit.md)\n- [Hyperliquid vs Upbit Open API](https://www.anchorterminal.com/compare/hyperliquid-vs-upbit.md)\n- [KuCoin vs Upbit Open API](https://www.anchorterminal.com/compare/kucoin-vs-upbit.md)\n- [MEXC API vs Upbit Open API](https://www.anchorterminal.com/compare/mexc-vs-upbit.md)\n- [Binance API vs Bitfinex API](https://www.anchorterminal.com/compare/binance-vs-bitfinex.md)\n- [Binance API vs Bitget](https://www.anchorterminal.com/compare/binance-vs-bitget.md)\n- [Binance API vs Bithumb Open API](https://www.anchorterminal.com/compare/binance-vs-bithumb.md)\n- [Binance API vs Bitstamp API](https://www.anchorterminal.com/compare/binance-vs-bitstamp.md)\n- [Binance API vs Bybit](https://www.anchorterminal.com/compare/binance-vs-bybit.md)\n- [Binance API vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/binance-vs-coinbase-advanced-trade.md)\n- [Binance API vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/binance-vs-coinbase-mcp.md)\n- [Binance API vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/binance-vs-crypto-com-exchange.md)\n- [Binance API vs Deribit](https://www.anchorterminal.com/compare/binance-vs-deribit.md)\n- [Binance API vs Gate](https://www.anchorterminal.com/compare/binance-vs-gate-io.md)\n- [Binance API vs Gemini Exchange API](https://www.anchorterminal.com/compare/binance-vs-gemini-exchange.md)\n- [Binance API vs HTX trading API](https://www.anchorterminal.com/compare/binance-vs-htx.md)\n- [Binance API vs Hyperliquid](https://www.anchorterminal.com/compare/binance-vs-hyperliquid.md)\n- [Binance API vs Kraken API](https://www.anchorterminal.com/compare/binance-vs-kraken.md)\n- [Binance API vs KuCoin](https://www.anchorterminal.com/compare/binance-vs-kucoin.md)\n- [Binance API vs MEXC API](https://www.anchorterminal.com/compare/binance-vs-mexc.md)\n- [Binance API vs OKX API](https://www.anchorterminal.com/compare/binance-vs-okx.md)\n- [Binance API vs Uniswap Trading API](https://www.anchorterminal.com/compare/binance-vs-uniswap.md)\n- [Coinbase Advanced Trade API vs Upbit Open API](https://www.anchorterminal.com/compare/coinbase-advanced-trade-vs-upbit.md)\n- [Coinbase MCP server (Coinbase for Agents) vs Upbit Open API](https://www.anchorterminal.com/compare/coinbase-mcp-vs-upbit.md)\n- [Kraken API vs Upbit Open API](https://www.anchorterminal.com/compare/kraken-vs-upbit.md)\n- [OKX API vs Upbit Open API](https://www.anchorterminal.com/compare/okx-vs-upbit.md)\n- [Uniswap Trading API vs Upbit Open API](https://www.anchorterminal.com/compare/uniswap-vs-upbit.md)\n- [Binance API vs dYdX](https://www.anchorterminal.com/compare/binance-vs-dydx.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": "Binance API vs Upbit Open API",
        "url": ""
      }
    ],
    "description": "Binance scores 63.2 (B) to Upbit Open's 54.7 (C) for exchange spot trading. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Binance API B 63.2",
      "Upbit Open API C 54.7",
      "scores"
    ],
    "h1": "Binance API vs Upbit Open API",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/binance-vs-upbit",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Binance vs Upbit Open for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-03",
    "url": "https://www.anchorterminal.com/compare/binance-vs-upbit"
  },
  "tokens": {
    "markdown": 4400,
    "slim": 2280
  },
  "version": 1
}
