{"openapi":"3.1.0","info":{"title":"Binance US (BYOK) API","version":"0.1.0","description":"Binance US (BYOK) lets an AI assistant read your own Binance US data through the Binance US API with a key you supply (Binance.US API key (read-only, no trading permission needed)). Read-only: 11 tools (get_server_time, get_symbol_info, get_prices, get_book_ticker, get_ticker_24h, get_average_price, get_order_book, list_recent_trades, list_old_trades, list_aggregate_trades, get_klines). The BYOK...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-binance-us.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-binance-us/docs"},"termsOfService":"https://connectorbay.com/byok-binance-us/terms"},"servers":[{"url":"https://byok-binance-us.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-binance-us/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_server_time":{"post":{"operationId":"get_server_time","summary":"Get Binance.US's current server time in milliseconds since the Unix epoch. Use for \"What is the current Binance.US serve","description":"Get Binance.US's current server time in milliseconds since the Unix epoch. Use for \"What is the current Binance.US server time\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_server_timeArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_symbol_info":{"post":{"operationId":"get_symbol_info","summary":"Get the trading rules of one spot pair: status, base and quote asset, precision, order types allowed and trading permiss","description":"Get the trading rules of one spot pair: status, base and quote asset, precision, order types allowed and trading permissions. Binance.US limits requests per IP address and bans clients that keep going after HTTP 429. Use for \"What are the trading rules and status of BTCUSDT on Binance.US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"}},"required":["symbol"],"title":"get_symbol_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_prices":{"post":{"operationId":"get_prices","summary":"Get the latest price of one or more spot pairs. Pass the pairs as a JSON array in text, for example [\"BTCUSDT\",\"ETHUSDT\"","description":"Get the latest price of one or more spot pairs. Pass the pairs as a JSON array in text, for example [\"BTCUSDT\",\"ETHUSDT\"]. Use for \"What are the latest Binance.US prices of BTCUSDT and ETHUSDT\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbols":{"description":"JSON array of pair names in capitals, for example [\"BTCUSDT\",\"ETHUSDT\"] (up to 100).","maxLength":1000,"title":"Symbols","type":"string"}},"required":["symbols"],"title":"get_pricesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_book_ticker":{"post":{"operationId":"get_book_ticker","summary":"Get the best bid and ask price and size on the order book of one spot pair. Use for \"What is the best bid and ask for BT","description":"Get the best bid and ask price and size on the order book of one spot pair. Use for \"What is the best bid and ask for BTCUSDT on Binance.US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"}},"required":["symbol"],"title":"get_book_tickerArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_ticker_24h":{"post":{"operationId":"get_ticker_24h","summary":"Get 24 hour rolling statistics for one spot pair: price change, high, low, volume, quote volume, last price and trade co","description":"Get 24 hour rolling statistics for one spot pair: price change, high, low, volume, quote volume, last price and trade count. Use for \"How did BTCUSDT move on Binance.US over the last 24 hours\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"}},"required":["symbol"],"title":"get_ticker_24hArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_average_price":{"post":{"operationId":"get_average_price","summary":"Get the average price of a spot pair over the last few minutes (the window length is returned in mins). Use for \"What is","description":"Get the average price of a spot pair over the last few minutes (the window length is returned in mins). Use for \"What is the current 5 minute average price of ETHUSDT on Binance.US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"}},"required":["symbol"],"title":"get_average_priceArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_order_book":{"post":{"operationId":"get_order_book","summary":"Get the order book of one spot pair: bids and asks as [price, quantity] pairs. Weight grows with depth, so ask for as fe","description":"Get the order book of one spot pair: bids and asks as [price, quantity] pairs. Weight grows with depth, so ask for as few levels as needed. Binance.US limits requests per IP address and bans clients that keep going after HTTP 429. Use for \"Show the top 20 bids and asks of BTCUSDT on Binance.US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"},"limit":{"anyOf":[{"maximum":500,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"Levels per side, 1 to 500 (default 100).","title":"Limit"}},"required":["symbol"],"title":"get_order_bookArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_recent_trades":{"post":{"operationId":"list_recent_trades","summary":"List the most recent trades of one spot pair with price, quantity, time and whether the buyer was the maker. Use for \"Wh","description":"List the most recent trades of one spot pair with price, quantity, time and whether the buyer was the maker. Use for \"What were the latest trades of BTCUSDT on Binance.US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many trades to return, 1 to 1000 (default 500).","title":"Limit"}},"required":["symbol"],"title":"list_recent_tradesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_old_trades":{"post":{"operationId":"list_old_trades","summary":"List older trades of one spot pair, starting from a trade id. This endpoint requires the API key. Use for \"Show older BT","description":"List older trades of one spot pair, starting from a trade id. This endpoint requires the API key. Use for \"Show older BTCUSDT trades from trade id 5000000 on Binance.US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many trades to return, 1 to 1000 (default 500).","title":"Limit"},"from_id":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Trade id to start from; the most recent trades when omitted.","title":"From Id"}},"required":["symbol"],"title":"list_old_tradesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_aggregate_trades":{"post":{"operationId":"list_aggregate_trades","summary":"List aggregate trades (fills of one taker order at one price merged) of a spot pair, newest first or within a time windo","description":"List aggregate trades (fills of one taker order at one price merged) of a spot pair, newest first or within a time window. Use for \"Show aggregate BTCUSDT trades on Binance.US between two times\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"},"start_time":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Only trades from this time, in milliseconds since the Unix epoch.","title":"Start Time"},"end_time":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Only trades up to this time, in milliseconds since the Unix epoch.","title":"End Time"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many trades to return, 1 to 1000 (default 500).","title":"Limit"}},"required":["symbol"],"title":"list_aggregate_tradesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_klines":{"post":{"operationId":"get_klines","summary":"Get candlesticks of a spot pair. Each row is an array: open time, open, high, low, close, volume, close time, quote volu","description":"Get candlesticks of a spot pair. Each row is an array: open time, open, high, low, close, volume, close time, quote volume, trade count, taker buy base volume, taker buy quote volume, unused. Use for \"Show the last 24 hourly candles of ETHUSDT on Binance.US\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"symbol":{"description":"Spot trading pair in capitals without a separator, for example BTCUSDT or ETHBTC.","maxLength":20,"title":"Symbol","type":"string"},"interval":{"description":"Candle size.","enum":["1m","3m","5m","15m","30m","1h","2h","4h","6h","8h","12h","1d","3d","1w","1M"],"title":"Interval","type":"string"},"start_time":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Only candles opening from this time, in milliseconds since the Unix epoch.","title":"Start Time"},"end_time":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Only candles opening up to this time, in milliseconds since the Unix epoch.","title":"End Time"},"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many candles to return, 1 to 1000 (default 500).","title":"Limit"}},"required":["symbol","interval"],"title":"get_klinesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}