Heurist Logo
Back to Skill Marketplace
binance

binance-web3-spot

VerifiedCryptoaccess level:low

Binance Spot request using the Binance API. Authentication requires API key and secret key. Supports testnet and mainnet.

Install

npx @heurist-network/skills add binance-web3-spot

Installs

12

Stars

464

Timeline

Updated Mar 8, 2026

Created Mar 4, 2026

Source

Verification

Reviewed and verified

SHA256: 4945dbb7b3605bed...

Approved Mar 4, 2026 by admin

Access Level

low

External APIs

Binance

Files (1)

SKILL.md

Summary

license
MIT
metadata
author: Binanceversion: 1.0.1

SKILL.md

Binance Spot Skill

Spot request on Binance using authenticated API endpoints. Requires API key and secret key for certain endpoints. Return the result in JSON format.

Quick Reference

EndpointDescriptionRequiredOptionalAuthentication
/api/v3/exchangeInfo (GET)Exchange informationNonesymbol, symbols, permissions, showPermissionSets, symbolStatusNo
/api/v3/ping (GET)Test connectivityNoneNoneNo
/api/v3/time (GET)Check server timeNoneNoneNo
/api/v3/aggTrades (GET)Compressed/Aggregate trades listsymbolfromId, startTime, endTime, limitNo
/api/v3/avgPrice (GET)Current average pricesymbolNoneNo
/api/v3/depth (GET)Order booksymbollimit, symbolStatusNo
/api/v3/historicalTrades (GET)Old trade lookupsymbollimit, fromIdNo
/api/v3/klines (GET)Kline/Candlestick datasymbol, intervalstartTime, endTime, timeZone, limitNo
/api/v3/ticker (GET)Rolling window price change statisticsNonesymbol, symbols, windowSize, type, symbolStatusNo
/api/v3/ticker/24hr (GET)24hr ticker price change statisticsNonesymbol, symbols, type, symbolStatusNo
/api/v3/ticker/bookTicker (GET)Symbol order book tickerNonesymbol, symbols, symbolStatusNo
/api/v3/ticker/price (GET)Symbol price tickerNonesymbol, symbols, symbolStatusNo
/api/v3/ticker/tradingDay (GET)Trading Day TickerNonesymbol, symbols, timeZone, type, symbolStatusNo
/api/v3/trades (GET)Recent trades listsymbollimitNo
/api/v3/uiKlines (GET)UIKlinessymbol, intervalstartTime, endTime, timeZone, limitNo
/api/v3/openOrders (DELETE)Cancel All Open Orders on a SymbolsymbolrecvWindowYes
/api/v3/openOrders (GET)Current open ordersNonesymbol, recvWindowYes
/api/v3/order (POST)New ordersymbol, side, typetimeInForce, quantity, quoteOrderQty, price, newClientOrderId, strategyId, strategyType, stopPrice, trailingDelta, icebergQty, newOrderRespType, selfTradePreventionMode, pegPriceType, pegOffsetValue, pegOffsetType, recvWindowYes
/api/v3/order (DELETE)Cancel ordersymbolorderId, origClientOrderId, newClientOrderId, cancelRestrictions, recvWindowYes
/api/v3/order (GET)Query ordersymbolorderId, origClientOrderId, recvWindowYes
/api/v3/order/amend/keepPriority (PUT)Order Amend Keep Prioritysymbol, newQtyorderId, origClientOrderId, newClientOrderId, recvWindowYes
/api/v3/order/cancelReplace (POST)Cancel an Existing Order and Send a New Ordersymbol, side, type, cancelReplaceModetimeInForce, quantity, quoteOrderQty, price, cancelNewClientOrderId, cancelOrigClientOrderId, cancelOrderId, newClientOrderId, strategyId, strategyType, stopPrice, trailingDelta, icebergQty, newOrderRespType, selfTradePreventionMode, cancelRestrictions, orderRateLimitExceededMode, pegPriceType, pegOffsetValue, pegOffsetType, recvWindowYes
/api/v3/order/oco (POST)New OCO - Deprecatedsymbol, side, quantity, price, stopPricelistClientOrderId, limitClientOrderId, limitStrategyId, limitStrategyType, limitIcebergQty, trailingDelta, stopClientOrderId, stopStrategyId, stopStrategyType, stopLimitPrice, stopIcebergQty, stopLimitTimeInForce, newOrderRespType, selfTradePreventionMode, recvWindowYes
/api/v3/order/test (POST)Test new ordersymbol, side, typecomputeCommissionRates, timeInForce, quantity, quoteOrderQty, price, newClientOrderId, strategyId, strategyType, stopPrice, trailingDelta, icebergQty, newOrderRespType, selfTradePreventionMode, pegPriceType, pegOffsetValue, pegOffsetType, recvWindowYes
/api/v3/orderList (DELETE)Cancel Order listsymbolorderListId, listClientOrderId, newClientOrderId, recvWindowYes
/api/v3/orderList (GET)Query Order listNoneorderListId, origClientOrderId, recvWindowYes
/api/v3/orderList/oco (POST)New Order list - OCOsymbol, side, quantity, aboveType, belowTypelistClientOrderId, aboveClientOrderId, aboveIcebergQty, abovePrice, aboveStopPrice, aboveTrailingDelta, aboveTimeInForce, aboveStrategyId, aboveStrategyType, abovePegPriceType, abovePegOffsetType, abovePegOffsetValue, belowClientOrderId, belowIcebergQty, belowPrice, belowStopPrice, belowTrailingDelta, belowTimeInForce, belowStrategyId, belowStrategyType, belowPegPriceType, belowPegOffsetType, belowPegOffsetValue, newOrderRespType, selfTradePreventionMode, recvWindowYes
/api/v3/orderList/opo (POST)New Order List - OPOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingType, pendingSidelistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingClientOrderId, pendingPrice, pendingStopPrice, pendingTrailingDelta, pendingIcebergQty, pendingTimeInForce, pendingStrategyId, pendingStrategyType, pendingPegPriceType, pendingPegOffsetType, pendingPegOffsetValue, recvWindowYes
/api/v3/orderList/opoco (POST)New Order List - OPOCOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingSide, pendingAboveTypelistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingAboveClientOrderId, pendingAbovePrice, pendingAboveStopPrice, pendingAboveTrailingDelta, pendingAboveIcebergQty, pendingAboveTimeInForce, pendingAboveStrategyId, pendingAboveStrategyType, pendingAbovePegPriceType, pendingAbovePegOffsetType, pendingAbovePegOffsetValue, pendingBelowType, pendingBelowClientOrderId, pendingBelowPrice, pendingBelowStopPrice, pendingBelowTrailingDelta, pendingBelowIcebergQty, pendingBelowTimeInForce, pendingBelowStrategyId, pendingBelowStrategyType, pendingBelowPegPriceType, pendingBelowPegOffsetType, pendingBelowPegOffsetValue, recvWindowYes
/api/v3/orderList/oto (POST)New Order list - OTOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingType, pendingSide, pendingQuantitylistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingClientOrderId, pendingPrice, pendingStopPrice, pendingTrailingDelta, pendingIcebergQty, pendingTimeInForce, pendingStrategyId, pendingStrategyType, pendingPegPriceType, pendingPegOffsetType, pendingPegOffsetValue, recvWindowYes
/api/v3/orderList/otoco (POST)New Order list - OTOCOsymbol, workingType, workingSide, workingPrice, workingQuantity, pendingSide, pendingQuantity, pendingAboveTypelistClientOrderId, newOrderRespType, selfTradePreventionMode, workingClientOrderId, workingIcebergQty, workingTimeInForce, workingStrategyId, workingStrategyType, workingPegPriceType, workingPegOffsetType, workingPegOffsetValue, pendingAboveClientOrderId, pendingAbovePrice, pendingAboveStopPrice, pendingAboveTrailingDelta, pendingAboveIcebergQty, pendingAboveTimeInForce, pendingAboveStrategyId, pendingAboveStrategyType, pendingAbovePegPriceType, pendingAbovePegOffsetType, pendingAbovePegOffsetValue, pendingBelowType, pendingBelowClientOrderId, pendingBelowPrice, pendingBelowStopPrice, pendingBelowTrailingDelta, pendingBelowIcebergQty, pendingBelowTimeInForce, pendingBelowStrategyId, pendingBelowStrategyType, pendingBelowPegPriceType, pendingBelowPegOffsetType, pendingBelowPegOffsetValue, recvWindowYes
/api/v3/sor/order (POST)New order using SORsymbol, side, type, quantitytimeInForce, price, newClientOrderId, strategyId, strategyType, icebergQty, newOrderRespType, selfTradePreventionMode, recvWindowYes
/api/v3/sor/order/test (POST)Test new order using SORsymbol, side, type, quantitycomputeCommissionRates, timeInForce, price, newClientOrderId, strategyId, strategyType, icebergQty, newOrderRespType, selfTradePreventionMode, recvWindowYes
/api/v3/account (GET)Account informationNoneomitZeroBalances, recvWindowYes
/api/v3/account/commission (GET)Query Commission RatessymbolNoneYes
/api/v3/allOrderList (GET)Query all Order listsNonefromId, startTime, endTime, limit, recvWindowYes
/api/v3/allOrders (GET)All orderssymbolorderId, startTime, endTime, limit, recvWindowYes
/api/v3/myAllocations (GET)Query AllocationssymbolstartTime, endTime, fromAllocationId, limit, orderId, recvWindowYes
/api/v3/myFilters (GET)Query relevant filterssymbolrecvWindowYes
/api/v3/myPreventedMatches (GET)Query Prevented MatchessymbolpreventedMatchId, orderId, fromPreventedMatchId, limit, recvWindowYes
/api/v3/myTrades (GET)Account trade listsymbolorderId, startTime, endTime, fromId, limit, recvWindowYes
/api/v3/openOrderList (GET)Query Open Order listsNonerecvWindowYes
/api/v3/order/amendments (GET)Query Order Amendmentssymbol, orderIdfromExecutionId, limit, recvWindowYes
/api/v3/rateLimit/order (GET)Query Unfilled Order CountNonerecvWindowYes

Parameters

Common Parameters

  • symbol: Symbol to query (e.g., BNBUSDT)
  • symbols: List of symbols to query
  • permissions: List of permissions to query
  • showPermissionSets: Controls whether the content of the permissionSets field is populated or not. Defaults to true (e.g., true)
  • symbol: (e.g., BNBUSDT)
  • fromId: ID to get aggregate trades from INCLUSIVE. (e.g., 1)
  • startTime: Timestamp in ms to get aggregate trades from INCLUSIVE. (e.g., 1735693200000)
  • endTime: Timestamp in ms to get aggregate trades until INCLUSIVE. (e.g., 1735693200000)
  • limit: Default: 500; Maximum: 1000. (e.g., 500)
  • timeZone: Default: 0 (UTC)
  • recvWindow: The value cannot be greater than 60000. Supports up to three decimal places of precision (e.g., 6000.346) so that microseconds may be specified. (e.g., 5000)
  • timestamp: (e.g., 1)
  • quantity: (e.g., 1)
  • quoteOrderQty: (e.g., 1)
  • price: (e.g., 400)
  • newClientOrderId: A unique id among open orders. Automatically generated if not sent. Orders with the same newClientOrderID can be accepted only when the previous one is filled, otherwise the order will be rejected.
  • strategyId: (e.g., 1)
  • strategyType: The value cannot be less than 1000000. (e.g., 1)
  • stopPrice: Used with STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, and TAKE_PROFIT_LIMIT orders. (e.g., 1)
  • trailingDelta: See Trailing Stop order FAQ. (e.g., 1)
  • icebergQty: Used with LIMIT, STOP_LOSS_LIMIT, and TAKE_PROFIT_LIMIT to create an iceberg order. (e.g., 1)
  • pegOffsetValue: Priceleveltopegthepriceto(max:100). SeePeggedOrdersInfo (e.g., 1)
  • orderId: (e.g., 1)
  • origClientOrderId:
  • newQty: newQty must be greater than 0 and less than the order's quantity. (e.g., 1)
  • cancelNewClientOrderId: Used to uniquely identify this cancel. Automatically generated by default.
  • cancelOrigClientOrderId: Either cancelOrderId or cancelOrigClientOrderId must be sent. </br> If both cancelOrderId and cancelOrigClientOrderId parameters are provided, the cancelOrderId is searched first, then the cancelOrigClientOrderId from that result is checked against that order. </br> If both conditions are not met the request will be rejected.
  • cancelOrderId: Either cancelOrderId or cancelOrigClientOrderId must be sent. </br>If both cancelOrderId and cancelOrigClientOrderId parameters are provided, the cancelOrderId is searched first, then the cancelOrigClientOrderId from that result is checked against that order. </br>If both conditions are not met the request will be rejected. (e.g., 1)
  • listClientOrderId: A unique Id for the entire orderList
  • quantity: (e.g., 1)
  • limitClientOrderId: A unique Id for the limit order
  • price: (e.g., 1)
  • limitStrategyId: (e.g., 1)
  • limitStrategyType: The value cannot be less than 1000000. (e.g., 1)
  • limitIcebergQty: Used to make the LIMIT_MAKER leg an iceberg order. (e.g., 1)
  • stopClientOrderId: A unique Id for the stop loss/stop loss limit leg
  • stopPrice: (e.g., 1)
  • stopStrategyId: (e.g., 1)
  • stopStrategyType: The value cannot be less than 1000000. (e.g., 1)
  • stopLimitPrice: If provided, stopLimitTimeInForce is required. (e.g., 1)
  • stopIcebergQty: Used with STOP_LOSS_LIMIT leg to make an iceberg order. (e.g., 1)
  • computeCommissionRates: Default: false See Commissions FAQ to learn more.
  • orderListId: Either orderListId or listClientOrderId must be provided (e.g., 1)
  • aboveClientOrderId: Arbitrary unique ID among open orders for the above order. Automatically generated if not sent
  • aboveIcebergQty: Note that this can only be used if aboveTimeInForce is GTC. (e.g., 1)
  • abovePrice: Can be used if aboveType is STOP_LOSS_LIMIT , LIMIT_MAKER, or TAKE_PROFIT_LIMIT to specify the limit price. (e.g., 1)
  • aboveStopPrice: Can be used if aboveType is STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, TAKE_PROFIT_LIMIT. Either aboveStopPrice or aboveTrailingDelta or both, must be specified. (e.g., 1)
  • aboveTrailingDelta: See Trailing Stop order FAQ. (e.g., 1)
  • aboveStrategyId: Arbitrary numeric value identifying the above order within an order strategy. (e.g., 1)
  • aboveStrategyType: Arbitrary numeric value identifying the above order strategy. Values smaller than 1000000 are reserved and cannot be used. (e.g., 1)
  • abovePegOffsetValue: (e.g., 1)
  • belowClientOrderId: Arbitrary unique ID among open orders for the below order. Automatically generated if not sent
  • belowIcebergQty: Note that this can only be used if belowTimeInForce is GTC. (e.g., 1)
  • belowPrice: Can be used if belowType is STOP_LOSS_LIMIT, LIMIT_MAKER, or TAKE_PROFIT_LIMIT to specify the limit price. (e.g., 1)
  • belowStopPrice: Can be used if belowType is STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT or TAKE_PROFIT_LIMIT Either belowStopPrice or belowTrailingDelta or both, must be specified. (e.g., 1)
  • belowTrailingDelta: See Trailing Stop order FAQ. (e.g., 1)
  • belowStrategyId: Arbitrary numeric value identifying the below order within an order strategy. (e.g., 1)
  • belowStrategyType: Arbitrary numeric value identifying the below order strategy. Values smaller than 1000000 are reserved and cannot be used. (e.g., 1)
  • belowPegOffsetValue: (e.g., 1)
  • workingClientOrderId: Arbitrary unique ID among open orders for the working order. Automatically generated if not sent.
  • workingPrice: (e.g., 1)
  • workingQuantity: Sets the quantity for the working order. (e.g., 1)
  • workingIcebergQty: This can only be used if workingTimeInForce is GTC, or if workingType is LIMIT_MAKER. (e.g., 1)
  • workingStrategyId: Arbitrary numeric value identifying the working order within an order strategy. (e.g., 1)
  • workingStrategyType: Arbitrary numeric value identifying the working order strategy. Values smaller than 1000000 are reserved and cannot be used. (e.g., 1)
  • workingPegOffsetValue: (e.g., 1)
  • pendingClientOrderId: Arbitrary unique ID among open orders for the pending order. Automatically generated if not sent.
  • pendingPrice: (e.g., 1)
  • pendingStopPrice: (e.g., 1)
  • pendingTrailingDelta: (e.g., 1)
  • pendingIcebergQty: This can only be used if pendingTimeInForce is GTC or if pendingType is LIMIT_MAKER. (e.g., 1)
  • pendingStrategyId: Arbitrary numeric value identifying the pending order within an order strategy. (e.g., 1)
  • pendingStrategyType: Arbitrary numeric value identifying the pending order strategy. Values smaller than 1000000 are reserved and cannot be used. (e.g., 1)
  • pendingPegOffsetValue: (e.g., 1)
  • pendingAboveClientOrderId: Arbitrary unique ID among open orders for the pending above order. Automatically generated if not sent.
  • pendingAbovePrice: Can be used if pendingAboveType is STOP_LOSS_LIMIT , LIMIT_MAKER, or TAKE_PROFIT_LIMIT to specify the limit price. (e.g., 1)
  • pendingAboveStopPrice: Can be used if pendingAboveType is STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, TAKE_PROFIT_LIMIT (e.g., 1)
  • pendingAboveTrailingDelta: See Trailing Stop FAQ (e.g., 1)
  • pendingAboveIcebergQty: This can only be used if pendingAboveTimeInForce is GTC or if pendingAboveType is LIMIT_MAKER. (e.g., 1)
  • pendingAboveStrategyId: Arbitrary numeric value identifying the pending above order within an order strategy. (e.g., 1)
  • pendingAboveStrategyType: Arbitrary numeric value identifying the pending above order strategy. Values smaller than 1000000 are reserved and cannot be used. (e.g., 1)
  • pendingAbovePegOffsetValue: (e.g., 1)
  • pendingBelowClientOrderId: Arbitrary unique ID among open orders for the pending below order. Automatically generated if not sent.
  • pendingBelowPrice: Can be used if pendingBelowType is STOP_LOSS_LIMIT or TAKE_PROFIT_LIMIT to specify limit price (e.g., 1)
  • pendingBelowStopPrice: Can be used if pendingBelowType is STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT or TAKE_PROFIT_LIMIT. Either pendingBelowStopPrice or pendingBelowTrailingDelta or both, must be specified. (e.g., 1)
  • pendingBelowTrailingDelta: (e.g., 1)
  • pendingBelowIcebergQty: This can only be used if pendingBelowTimeInForce is GTC, or if pendingBelowType is LIMIT_MAKER. (e.g., 1)
  • pendingBelowStrategyId: Arbitrary numeric value identifying the pending below order within an order strategy. (e.g., 1)
  • pendingBelowStrategyType: Arbitrary numeric value identifying the pending below order strategy. Values smaller than 1000000 are reserved and cannot be used. (e.g., 1)
  • pendingBelowPegOffsetValue: (e.g., 1)
  • pendingQuantity: Sets the quantity for the pending order. (e.g., 1)
  • omitZeroBalances: When set to true, emits only the non-zero balances of an account. Default value: false
  • fromAllocationId: (e.g., 1)
  • timestamp: (e.g., 1)
  • preventedMatchId: (e.g., 1)
  • fromPreventedMatchId: (e.g., 1)
  • orderId: (e.g., 1)
  • fromExecutionId: (e.g., 1)
  • limit: Default:500; Maximum: 1000 (e.g., 500)

Enums

  • interval: 1s | 1m | 3m | 5m | 15m | 30m | 1h | 2h | 4h | 6h | 8h | 12h | 1d | 3d | 1w | 1M
  • windowSize: 1m | 2m | 3m | 4m | 5m | 6m | 7m | 8m | 9m | 10m | 11m | 12m | 13m | 14m | 15m | 16m | 17m | 18m | 19m | 20m | 21m | 22m | 23m | 24m | 25m | 26m | 27m | 28m | 29m | 30m | 31m | 32m | 33m | 34m | 35m | 36m | 37m | 38m | 39m | 40m | 41m | 42m | 43m | 44m | 45m | 46m | 47m | 48m | 49m | 50m | 51m | 52m | 53m | 54m | 55m | 56m | 57m | 58m | 59m | 1h | 2h | 3h | 4h | 5h | 6h | 7h | 8h | 9h | 10h | 11h | 12h | 13h | 14h | 15h | 16h | 17h | 18h | 19h | 20h | 21h | 22h | 23h | 1d | 2d | 3d | 4d | 5d | 6d
  • type: FULL | MINI
  • type: MARKET | LIMIT | STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT | LIMIT_MAKER | NON_REPRESENTABLE
  • selfTradePreventionMode: NONE | EXPIRE_TAKER | EXPIRE_MAKER | EXPIRE_BOTH | DECREMENT | NON_REPRESENTABLE
  • symbolStatus: TRADING | END_OF_DAY | HALT | BREAK | NON_REPRESENTABLE
  • timeInForce: GTC | IOC | FOK | NON_REPRESENTABLE
  • pegPriceType: PRIMARY_PEG | MARKET_PEG | NON_REPRESENTABLE
  • pegOffsetType: PRICE_LEVEL | NON_REPRESENTABLE
  • newOrderRespType: ACK | RESULT | FULL | MARKET | LIMIT
  • cancelRestrictions: ONLY_NEW | NEW | ONLY_PARTIALLY_FILLED | PARTIALLY_FILLED
  • cancelReplaceMode: STOP_ON_FAILURE | ALLOW_FAILURE
  • orderRateLimitExceededMode: DO_NOTHING | CANCEL_ONLY
  • stopLimitTimeInForce: GTC | IOC | FOK
  • side: BUY | SELL
  • aboveType: STOP_LOSS_LIMIT | STOP_LOSS | LIMIT_MAKER | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • aboveTimeInForce: GTC | IOC | FOK
  • abovePegPriceType: PRIMARY_PEG | MARKET_PEG
  • abovePegOffsetType: PRICE_LEVEL
  • belowType: STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • belowTimeInForce: GTC | IOC | FOK
  • belowPegPriceType: PRIMARY_PEG | MARKET_PEG
  • belowPegOffsetType: PRICE_LEVEL
  • workingType: LIMIT | LIMIT_MAKER
  • workingPegPriceType: PRIMARY_PEG | MARKET_PEG
  • workingPegOffsetType: PRICE_LEVEL
  • pendingPegPriceType: PRIMARY_PEG | MARKET_PEG
  • pendingPegOffsetType: PRICE_LEVEL
  • pendingAboveType: STOP_LOSS_LIMIT | STOP_LOSS | LIMIT_MAKER | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • pendingAbovePegPriceType: PRIMARY_PEG | MARKET_PEG
  • pendingAbovePegOffsetType: PRICE_LEVEL
  • pendingBelowType: STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT
  • pendingBelowPegPriceType: PRIMARY_PEG | MARKET_PEG
  • pendingBelowPegOffsetType: PRICE_LEVEL
  • workingSide: BUY | SELL
  • workingTimeInForce: GTC | IOC | FOK
  • pendingType: LIMIT | MARKET | STOP_LOSS | STOP_LOSS_LIMIT | TAKE_PROFIT | TAKE_PROFIT_LIMIT | LIMIT_MAKER
  • pendingSide: BUY | SELL
  • pendingTimeInForce: GTC | IOC | FOK
  • pendingAboveTimeInForce: GTC | IOC | FOK
  • pendingBelowTimeInForce: GTC | IOC | FOK

Authentication

For endpoints that require authentication, you will need to provide Binance API credentials. Required credentials:

  • apiKey: Your Binance API key (for header)
  • secretKey: Your Binance API secret (for signing)

Base URLs:

Security

Share Credentials

Users can provide Binance API credentials by sending a file where the content is in the following format:

abc123...xyz
secret123...key

Never Display Full Secrets

When showing credentials to users:

  • API Key: Show first 5 + last 4 characters: su1Qc...8akf
  • Secret Key: Always mask, show only last 5: ***...aws1

Example response when asked for credentials: Account: main API Key: su1Qc...8akf Secret: ***...aws1 Environment: Mainnet

Listing Accounts

When listing accounts, show names and environment only — never keys: Binance Accounts:

  • main (Mainnet/Testnet)
  • testnet-dev (Testnet)
  • futures-keys (Mainnet)

Transactions in Mainnet

When performing transactions in mainnet, always confirm with the user before proceeding by asking them to write "CONFIRM" to proceed.


Binance Accounts

main

  • API Key: your_mainnet_api_key
  • Secret: your_mainnet_secret
  • Testnet: false

testnet-dev

  • API Key: your_testnet_api_key
  • Secret: your_testnet_secret
  • Testnet: true

TOOLS.md Structure

## Binance Accounts

### main
- API Key: abc123...xyz
- Secret: secret123...key
- Testnet: false
- Description: Primary trading account

### testnet-dev
- API Key: test456...abc
- Secret: testsecret...xyz
- Testnet: true
- Description: Development/testing

### futures-keys
- API Key: futures789...def
- Secret: futuressecret...uvw
- Testnet: false
- Description: Futures trading account

Agent Behavior

  1. Credentials requested: Mask secrets (show last 5 chars only)
  2. Listing accounts: Show names and environment, never keys
  3. Account selection: Ask if ambiguous, default to main
  4. When doing a transaction in mainnet, confirm with user before by asking to write "CONFIRM" to proceed
  5. New credentials: Prompt for name, environment, signing mode

Adding New Accounts

When user provides new credentials:

  • Ask for account name
  • Ask: Mainnet, Testnet or Demo
  • Store in TOOLS.md with masked display confirmation

Signing Requests

All trading endpoints require HMAC SHA256 signature:

  1. Build query string with all params + timestamp (Unix ms)
  2. Sign query string with secretKey using HMAC SHA256, RSA, or Ed25519 (depending on account config)
  3. Append signature to query string
  4. Include X-MBX-APIKEY header

User Agent Header

Include User-Agent header with the following string: binance-spot/1.0.1 (Skill)

See references/authentication.md for implementation details.