Binance Official Spot

v1.0.1

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

0· 258·1 current·1 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name and description match the SKILL.md content: this is an instruction-only helper for Binance Spot endpoints. However, the registry metadata lists no required environment variables or primary credential even though the skill explicitly documents using an API key and secret for authenticated endpoints — that mismatch is unexpected and reduces clarity about how credentials are supplied to the agent.
!
Instruction Scope
SKILL.md provides concrete curl/openssl examples for signing and calling endpoints (expected), but it also includes unusual/incorrect signature approaches (RSA and Ed25519 examples that Binance does not use in practice, and a likely-typo 'openssl pkeyut') which are misleading. Some examples show secrets inline or on the command line (exposed to shell history/process lists). The instructions do not attempt to exfiltrate data to third-party endpoints, but the guidance around handling secrets is risky and ambiguous.
Install Mechanism
Instruction-only skill with no install spec and no code files — nothing will be written to disk or installed by the skill itself, which is the lowest-risk install posture.
!
Credentials
The skill relies on API key and secret for authenticated calls (documented in references/authentication.md) but the registry metadata declares no required env vars or primary credential. That omission makes it unclear how credentials are expected to be provided and increases the risk of insecure handling (e.g., copying secrets into chat or command lines).
Persistence & Privilege
always:false and no special OS or persistence requests. The skill does not request elevated platform privileges or persistent system-wide changes.
What to consider before installing
This skill is broadly coherent with its stated purpose (Binance Spot API), but several issues merit caution: - Source and provenance: the skill's homepage is unknown. Prefer skills from verifiable publishers; verify this bundle before trusting it with real API keys. - Credentials: the SKILL.md expects an API key and secret, but the skill metadata does not declare any required env vars. Decide how you'll supply keys (prefer injecting them as environment variables or using a secure vault) and never paste secrets into chat or into commands where they appear in shell history or process lists. - Example inaccuracies and secrecy risk: the authentication doc includes RSA/Ed25519 examples and a likely-typo in an openssl command; Binance typically uses HMAC SHA256. The examples also show secrets inline; avoid those. Prefer using official Binance SDKs or well-reviewed client libraries rather than copy-pasting shell examples. - Test first: use testnet credentials and minimal permissions (spot trading only, no withdrawals) and enable IP whitelist on your API key before using with real funds. If you plan to install or use this skill: ask the publisher for a verified homepage/source, request that the skill metadata be updated to declare the primary credential(s) and to fix the misleading signature examples, and confirm that the agent will accept credentials via secure environment variables rather than free-form input.

Like a lobster shell, security has layers — review code before you run it.

latestvk97efayjfg99sa1dnrgdt89wt982b6hy
258downloads
0stars
1versions
Updated 1mo ago
v1.0.1
MIT-0

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.

Comments

Loading comments...