openapi: 3.0.3 info: title: Kraken Spot REST API version: '1.0.0' description: >- OpenAPI description of Kraken's public Spot REST API. Covers public market data (server time, system status, asset info, ticker, OHLC, order book, recent trades, recent spreads) and the private surface (account data, trading, funding, subaccounts, Earn, WebSocket token). Generated by the API Evangelist pipeline from docs.kraken.com/api/docs/rest-api/. contact: name: Kraken API Support url: https://support.kraken.com/ license: name: Kraken Terms of Service url: https://www.kraken.com/legal x-generated-from: documentation x-last-validated: '2026-05-30' servers: - url: https://api.kraken.com description: Kraken Spot REST production endpoint - url: https://colo-london.vip-api.kraken.com description: Kraken Spot REST colocation endpoint (London VIP) tags: - name: Market Data description: Public market data endpoints (no authentication required) - name: Account Data description: Private endpoints returning account-scoped data - name: Trading description: Private endpoints that place, amend, and cancel orders - name: Funding description: Private endpoints for deposits, withdrawals, and transfers - name: Subaccounts description: Subaccount creation and inter-account transfers - name: Earn description: Staking and yield allocation endpoints - name: WebSocket description: Endpoints that mint tokens for private WebSocket subscriptions paths: /0/public/Time: get: operationId: getServerTime summary: Kraken Get Server Time description: Returns the server's current Unix and human-readable time. Use to synchronize client clocks. tags: [Market Data] responses: '200': description: Server time content: application/json: schema: $ref: '#/components/schemas/ServerTimeResponse' examples: getServerTime200Example: summary: Default getServerTime 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/SystemStatus: get: operationId: getSystemStatus summary: Kraken Get System Status description: Returns the current system status (online, maintenance, cancel_only, post_only) and the last status change timestamp. tags: [Market Data] responses: '200': description: System status content: application/json: schema: $ref: '#/components/schemas/SystemStatusResponse' examples: getSystemStatus200Example: summary: Default getSystemStatus 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/Assets: get: operationId: getAssetInfo summary: Kraken Get Asset Info description: Returns information about supported assets including precision, display decimals, collateral value, and status. tags: [Market Data] parameters: - name: asset in: query description: Comma-delimited list of assets to filter (e.g. XBT,ETH) required: false schema: {type: string} example: XBT - name: aclass in: query description: Asset class (currency, crypto) required: false schema: {type: string} example: string responses: '200': description: Asset info content: application/json: schema: $ref: '#/components/schemas/AssetInfoResponse' examples: getAssetInfo200Example: summary: Default getAssetInfo 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/AssetPairs: get: operationId: getTradableAssetPairs summary: Kraken Get Tradable Asset Pairs description: Returns metadata for every tradable currency pair (base, quote, fee schedule, lot decimals, ordermin). tags: [Market Data] parameters: - name: pair in: query description: Comma-delimited list of asset pairs (e.g. XBTUSD,ETHUSD) required: false schema: {type: string} example: XBTUSD - name: info in: query description: Info detail level (info, leverage, fees, margin) required: false schema: {type: string, enum: [info, leverage, fees, margin]} example: info responses: '200': description: Asset pairs content: application/json: schema: $ref: '#/components/schemas/AssetPairsResponse' examples: getTradableAssetPairs200Example: summary: Default getTradableAssetPairs 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/Ticker: get: operationId: getTickerInformation summary: Kraken Get Ticker Information description: Returns ticker data (ask, bid, last trade, 24h volume, vwap, high, low, opening price) for one or more pairs. tags: [Market Data] parameters: - name: pair in: query description: Comma-delimited list of asset pairs required: false schema: {type: string, example: XBTUSD} example: XBTUSD responses: '200': description: Ticker data content: application/json: schema: $ref: '#/components/schemas/TickerResponse' examples: getTickerInformation200Example: summary: Default getTickerInformation 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/OHLC: get: operationId: getOHLCData summary: Kraken Get OHLC Data description: Returns OHLC (open/high/low/close/volume/count) candles for a pair at a chosen interval, optionally bounded by a since cursor. tags: [Market Data] parameters: - name: pair in: query required: true schema: {type: string, example: XBTUSD} example: XBTUSD - name: interval in: query required: false description: Candle interval in minutes (1, 5, 15, 30, 60, 240, 1440, 10080, 21600) schema: {type: integer, default: 1} example: 1 - name: since in: query required: false description: Return OHLC entries since this timestamp schema: {type: integer} example: 1 responses: '200': description: OHLC candles content: application/json: schema: $ref: '#/components/schemas/OHLCResponse' examples: getOHLCData200Example: summary: Default getOHLCData 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/Depth: get: operationId: getOrderBook summary: Kraken Get Order Book description: Returns the order book (bids and asks) for a pair to a requested depth. tags: [Market Data] parameters: - name: pair in: query required: true schema: {type: string} example: XBTUSD - name: count in: query required: false description: Maximum number of bids/asks (1-500) schema: {type: integer, default: 100, minimum: 1, maximum: 500} example: 1 responses: '200': description: Order book content: application/json: schema: $ref: '#/components/schemas/OrderBookResponse' examples: getOrderBook200Example: summary: Default getOrderBook 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/Trades: get: operationId: getRecentTrades summary: Kraken Get Recent Trades description: Returns recent trades for a pair, optionally since a cursor. tags: [Market Data] parameters: - name: pair in: query required: true schema: {type: string} example: XBTUSD - name: since in: query required: false schema: {type: integer} example: 1 - name: count in: query required: false description: Maximum number of trades (1-1000) schema: {type: integer, default: 1000} example: 1 responses: '200': description: Recent trades content: application/json: schema: $ref: '#/components/schemas/RecentTradesResponse' examples: getRecentTrades200Example: summary: Default getRecentTrades 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/public/Spread: get: operationId: getRecentSpreads summary: Kraken Get Recent Spreads description: Returns recent bid/ask spread snapshots for a pair, optionally since a cursor. tags: [Market Data] parameters: - name: pair in: query required: true schema: {type: string} example: XBTUSD - name: since in: query required: false schema: {type: integer} example: 1 responses: '200': description: Recent spreads content: application/json: schema: $ref: '#/components/schemas/RecentSpreadsResponse' examples: getRecentSpreads200Example: summary: Default getRecentSpreads 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Balance: post: operationId: getAccountBalance summary: Kraken Get Account Balance description: Returns the asset balances held in the account. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/NoncedRequest' examples: getAccountBalanceRequestExample: summary: Default getAccountBalance request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' responses: '200': description: Asset balances content: application/json: schema: $ref: '#/components/schemas/BalanceResponse' examples: getAccountBalance200Example: summary: Default getAccountBalance 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/BalanceEx: post: operationId: getExtendedBalance summary: Kraken Get Extended Balance description: Returns asset balances with hold-trade and credit details. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/NoncedRequest' examples: getExtendedBalanceRequestExample: summary: Default getExtendedBalance request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' responses: '200': description: Extended balances content: application/json: schema: $ref: '#/components/schemas/BalanceExResponse' examples: getExtendedBalance200Example: summary: Default getExtendedBalance 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/TradeBalance: post: operationId: getTradeBalance summary: Kraken Get Trade Balance description: Returns the trade balance for the requested asset class (margin equity, used margin, free margin, margin level). tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/TradeBalanceRequest' examples: getTradeBalanceRequestExample: summary: Default getTradeBalance request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT responses: '200': description: Trade balance content: application/json: schema: $ref: '#/components/schemas/TradeBalanceResponse' examples: getTradeBalance200Example: summary: Default getTradeBalance 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/OpenOrders: post: operationId: getOpenOrders summary: Kraken Get Open Orders description: Returns all open orders for the account, optionally including trades. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OpenOrdersRequest' examples: getOpenOrdersRequestExample: summary: Default getOpenOrders request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' trades: true userref: 1 cl_ord_id: OQCLML-BW3P3-BUCMWZ responses: '200': description: Open orders content: application/json: schema: $ref: '#/components/schemas/OpenOrdersResponse' examples: getOpenOrders200Example: summary: Default getOpenOrders 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/ClosedOrders: post: operationId: getClosedOrders summary: Kraken Get Closed Orders description: Returns the most recent 50 closed orders for the account, with pagination via offset. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ClosedOrdersRequest' examples: getClosedOrdersRequestExample: summary: Default getClosedOrders request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' trades: true userref: 1 cl_ord_id: OQCLML-BW3P3-BUCMWZ start: 1 end: 1 ofs: 1 closetime: open responses: '200': description: Closed orders content: application/json: schema: $ref: '#/components/schemas/ClosedOrdersResponse' examples: getClosedOrders200Example: summary: Default getClosedOrders 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/QueryOrders: post: operationId: queryOrdersInfo summary: Kraken Query Orders Info description: Returns information about the requested order IDs. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/QueryOrdersRequest' examples: queryOrdersInfoRequestExample: summary: Default queryOrdersInfo request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' trades: true userref: 1 cl_ord_id: OQCLML-BW3P3-BUCMWZ txid: OQCLML-BW3P3-BUCMWZ responses: '200': description: Order info content: application/json: schema: $ref: '#/components/schemas/QueryOrdersResponse' examples: queryOrdersInfo200Example: summary: Default queryOrdersInfo 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/TradesHistory: post: operationId: getTradesHistory summary: Kraken Get Trades History description: Returns trade history for the account, ordered most recent first. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/TradesHistoryRequest' examples: getTradesHistoryRequestExample: summary: Default getTradesHistory request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' type: all trades: true start: 1 end: 1 ofs: 1 responses: '200': description: Trades history content: application/json: schema: $ref: '#/components/schemas/TradesHistoryResponse' examples: getTradesHistory200Example: summary: Default getTradesHistory 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/QueryTrades: post: operationId: queryTradesInfo summary: Kraken Query Trades Info description: Returns information about the requested trade IDs. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/QueryTradesRequest' examples: queryTradesInfoRequestExample: summary: Default queryTradesInfo request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' txid: OQCLML-BW3P3-BUCMWZ trades: true responses: '200': description: Trade info content: application/json: schema: $ref: '#/components/schemas/QueryTradesResponse' examples: queryTradesInfo200Example: summary: Default queryTradesInfo 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/OpenPositions: post: operationId: getOpenPositions summary: Kraken Get Open Positions description: Returns open margin positions for the account. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OpenPositionsRequest' examples: getOpenPositionsRequestExample: summary: Default getOpenPositions request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' txid: OQCLML-BW3P3-BUCMWZ docalcs: true consolidation: market responses: '200': description: Open positions content: application/json: schema: $ref: '#/components/schemas/OpenPositionsResponse' examples: getOpenPositions200Example: summary: Default getOpenPositions 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Ledgers: post: operationId: getLedgersInfo summary: Kraken Get Ledgers Info description: Returns ledger entries (deposits, withdrawals, trades, fees, transfers). tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/LedgersRequest' examples: getLedgersInfoRequestExample: summary: Default getLedgersInfo request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT aclass: string type: all start: 1 end: 1 ofs: 1 responses: '200': description: Ledger entries content: application/json: schema: $ref: '#/components/schemas/LedgersResponse' examples: getLedgersInfo200Example: summary: Default getLedgersInfo 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/QueryLedgers: post: operationId: queryLedgers summary: Kraken Query Ledgers description: Returns ledger information for the requested ledger IDs. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/QueryLedgersRequest' examples: queryLedgersRequestExample: summary: Default queryLedgers request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' id: OQCLML-BW3P3-BUCMWZ trades: true responses: '200': description: Ledger info content: application/json: schema: $ref: '#/components/schemas/QueryLedgersResponse' examples: queryLedgers200Example: summary: Default queryLedgers 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/TradeVolume: post: operationId: getTradeVolume summary: Kraken Get Trade Volume description: Returns the account's 30-day trade volume and the fee tier currently applied. tags: [Account Data] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/TradeVolumeRequest' examples: getTradeVolumeRequestExample: summary: Default getTradeVolume request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' pair: XBTUSD fee-info: true responses: '200': description: Trade volume content: application/json: schema: $ref: '#/components/schemas/TradeVolumeResponse' examples: getTradeVolume200Example: summary: Default getTradeVolume 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/AddOrder: post: operationId: addOrder summary: Kraken Add Order description: Places a new order. Supports market, limit, stop-loss, take-profit, stop-loss-limit, take-profit-limit, settle-position, trailing-stop, and iceberg order types. tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AddOrderRequest' examples: addOrderRequestExample: summary: Default addOrder request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' userref: 1 cl_ord_id: OQCLML-BW3P3-BUCMWZ ordertype: market type: buy volume: "0.01" displayvol: '0.01' pair: XBTUSD price: '0.01' price2: '0.01' trigger: last leverage: "none" reduce_only: true stptype: cancel-newest oflags: string timeinforce: GTC starttm: string expiretm: string close[ordertype]: string close[price]: '0.01' close[price2]: '0.01' deadline: string validate: true responses: '200': description: Order accepted content: application/json: schema: $ref: '#/components/schemas/AddOrderResponse' examples: addOrder200Example: summary: Default addOrder 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/AddOrderBatch: post: operationId: addOrderBatch summary: Kraken Add Order Batch description: Places a batch of up to 15 orders for a single pair in one signed request. tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AddOrderBatchRequest' examples: addOrderBatchRequestExample: summary: Default addOrderBatch request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' pair: XBTUSD deadline: string validate: true orders: [] responses: '200': description: Batch order acceptance content: application/json: schema: $ref: '#/components/schemas/AddOrderBatchResponse' examples: addOrderBatch200Example: summary: Default addOrderBatch 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/EditOrder: post: operationId: editOrder summary: Kraken Edit Order description: Cancels and replaces an existing order with new parameters (volume, price, or price2). tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EditOrderRequest' examples: editOrderRequestExample: summary: Default editOrder request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' txid: OQCLML-BW3P3-BUCMWZ pair: XBTUSD volume: '0.01' displayvol: '0.01' price: '0.01' price2: '0.01' oflags: string deadline: string cancel_response: true validate: true userref: 1 responses: '200': description: Edit result content: application/json: schema: $ref: '#/components/schemas/EditOrderResponse' examples: editOrder200Example: summary: Default editOrder 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/AmendOrder: post: operationId: amendOrder summary: Kraken Amend Order description: Modifies a resting order in place (volume, limit/trigger prices, post-only) without changing its order ID. tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AmendOrderRequest' examples: amendOrderRequestExample: summary: Default amendOrder request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' txid: OQCLML-BW3P3-BUCMWZ cl_ord_id: OQCLML-BW3P3-BUCMWZ order_qty: string display_qty: string limit_price: '0.01' trigger_price: '0.01' post_only: true deadline: string responses: '200': description: Amend acknowledgement content: application/json: schema: $ref: '#/components/schemas/AmendOrderResponse' examples: amendOrder200Example: summary: Default amendOrder 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/CancelOrder: post: operationId: cancelOrder summary: Kraken Cancel Order description: Cancels a specific open order by transaction ID or user-reference. tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CancelOrderRequest' examples: cancelOrderRequestExample: summary: Default cancelOrder request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' txid: OQCLML-BW3P3-BUCMWZ cl_ord_id: OQCLML-BW3P3-BUCMWZ responses: '200': description: Cancel result content: application/json: schema: $ref: '#/components/schemas/CancelOrderResponse' examples: cancelOrder200Example: summary: Default cancelOrder 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/CancelAll: post: operationId: cancelAllOrders summary: Kraken Cancel All Orders description: Cancels every open order for the API key. tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/NoncedRequest' examples: cancelAllOrdersRequestExample: summary: Default cancelAllOrders request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' responses: '200': description: Cancel-all result content: application/json: schema: $ref: '#/components/schemas/CancelAllResponse' examples: cancelAllOrders200Example: summary: Default cancelAllOrders 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/CancelAllOrdersAfter: post: operationId: cancelAllOrdersAfter summary: Kraken Cancel All Orders After (Dead Man's Switch) description: Arms a dead-man's-switch — all open orders will be cancelled after the specified timeout (seconds) unless the call is re-issued. tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CancelAllAfterRequest' examples: cancelAllOrdersAfterRequestExample: summary: Default cancelAllOrdersAfter request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' timeout: 60 responses: '200': description: Dead-man's-switch status content: application/json: schema: $ref: '#/components/schemas/CancelAllAfterResponse' examples: cancelAllOrdersAfter200Example: summary: Default cancelAllOrdersAfter 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/CancelOrderBatch: post: operationId: cancelOrderBatch summary: Kraken Cancel Order Batch description: Cancels up to 50 orders in a single signed call. tags: [Trading] security: [kraken_signature: []] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CancelOrderBatchRequest' examples: cancelOrderBatchRequestExample: summary: Default cancelOrderBatch request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' orders: [] responses: '200': description: Batch cancel result content: application/json: schema: $ref: '#/components/schemas/CancelOrderBatchResponse' examples: cancelOrderBatch200Example: summary: Default cancelOrderBatch 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/DepositMethods: post: operationId: getDepositMethods summary: Kraken Get Deposit Methods description: Lists deposit methods available for the requested asset. tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AssetScopedRequest' examples: getDepositMethodsRequestExample: summary: Default getDepositMethods request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT responses: '200': description: Deposit methods content: application/json: schema: $ref: '#/components/schemas/DepositMethodsResponse' examples: getDepositMethods200Example: summary: Default getDepositMethods 200 response x-microcks-default: true value: error: [] result: [] x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/DepositAddresses: post: operationId: getDepositAddresses summary: Kraken Get Deposit Addresses description: Returns existing or generates new deposit addresses for the requested asset and method. tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DepositAddressesRequest' examples: getDepositAddressesRequestExample: summary: Default getDepositAddresses request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT method: string new: true amount: '0.01' responses: '200': description: Deposit addresses content: application/json: schema: $ref: '#/components/schemas/DepositAddressesResponse' examples: getDepositAddresses200Example: summary: Default getDepositAddresses 200 response x-microcks-default: true value: error: [] result: [] x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/DepositStatus: post: operationId: getDepositStatus summary: Kraken Get Status of Recent Deposits description: Returns recent deposit statuses, filterable by asset and method. tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DepositStatusRequest' examples: getDepositStatusRequestExample: summary: Default getDepositStatus request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT method: string start: string end: string cursor: string limit: 1 responses: '200': description: Deposit statuses content: application/json: schema: $ref: '#/components/schemas/DepositStatusResponse' examples: getDepositStatus200Example: summary: Default getDepositStatus 200 response x-microcks-default: true value: error: [] result: [] x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/WithdrawInfo: post: operationId: getWithdrawalInfo summary: Kraken Get Withdrawal Information description: Returns fee and limit information for a configured withdrawal address (key). tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WithdrawInfoRequest' examples: getWithdrawalInfoRequestExample: summary: Default getWithdrawalInfo request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT key: Cold storage 1 amount: '0.01' responses: '200': description: Withdrawal info content: application/json: schema: $ref: '#/components/schemas/WithdrawInfoResponse' examples: getWithdrawalInfo200Example: summary: Default getWithdrawalInfo 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Withdraw: post: operationId: withdrawFunds summary: Kraken Withdraw Funds description: Initiates a withdrawal to a previously configured withdrawal address. tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WithdrawRequest' examples: withdrawFundsRequestExample: summary: Default withdrawFunds request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT key: Cold storage 1 address: bc1qexampledeadbeefaddress0000000000000000 amount: '0.01' max_fee: string responses: '200': description: Withdrawal acknowledgement content: application/json: schema: $ref: '#/components/schemas/WithdrawResponse' examples: withdrawFunds200Example: summary: Default withdrawFunds 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/WithdrawStatus: post: operationId: getWithdrawalStatus summary: Kraken Get Status of Recent Withdrawals description: Returns recent withdrawal statuses, filterable by asset and method. tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WithdrawStatusRequest' examples: getWithdrawalStatusRequestExample: summary: Default getWithdrawalStatus request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT method: string start: string end: string cursor: string limit: 1 responses: '200': description: Withdrawal statuses content: application/json: schema: $ref: '#/components/schemas/WithdrawStatusResponse' examples: getWithdrawalStatus200Example: summary: Default getWithdrawalStatus 200 response x-microcks-default: true value: error: [] result: [] x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/WithdrawCancel: post: operationId: cancelWithdrawal summary: Kraken Request Withdrawal Cancellation description: Requests cancellation of a pending withdrawal by reference ID. tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WithdrawCancelRequest' examples: cancelWithdrawalRequestExample: summary: Default cancelWithdrawal request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT refid: OQCLML-BW3P3-BUCMWZ responses: '200': description: Cancellation result content: application/json: schema: $ref: '#/components/schemas/WithdrawCancelResponse' examples: cancelWithdrawal200Example: summary: Default cancelWithdrawal 200 response x-microcks-default: true value: error: [] result: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/WalletTransfer: post: operationId: walletTransfer summary: Kraken Wallet Transfer description: Transfers funds between Kraken Spot and Kraken Futures wallets. tags: [Funding] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/WalletTransferRequest' examples: walletTransferRequestExample: summary: Default walletTransfer request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT from: 'Spot Wallet' to: 'Futures Wallet' amount: '0.01' responses: '200': description: Transfer acknowledgement content: application/json: schema: $ref: '#/components/schemas/WalletTransferResponse' examples: walletTransfer200Example: summary: Default walletTransfer 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/CreateSubaccount: post: operationId: createSubaccount summary: Kraken Create Subaccount description: Creates a new subaccount under the master account (institutional / pro feature). tags: [Subaccounts] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CreateSubaccountRequest' examples: createSubaccountRequestExample: summary: Default createSubaccount request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' username: subaccount-01 email: trader@example.com responses: '200': description: Subaccount creation result content: application/json: schema: $ref: '#/components/schemas/CreateSubaccountResponse' examples: createSubaccount200Example: summary: Default createSubaccount 200 response x-microcks-default: true value: error: [] result: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/AccountTransfer: post: operationId: accountTransfer summary: Kraken Account Transfer description: Transfers an asset between the master account and a subaccount. tags: [Subaccounts] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AccountTransferRequest' examples: accountTransferRequestExample: summary: Default accountTransfer request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT amount: '0.01' from: string to: string responses: '200': description: Transfer acknowledgement content: application/json: schema: $ref: '#/components/schemas/AccountTransferResponse' examples: accountTransfer200Example: summary: Default accountTransfer 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Earn/Allocate: post: operationId: allocateEarnFunds summary: Kraken Allocate Earn Funds description: Allocates the requested amount of an asset to a Kraken Earn strategy. tags: [Earn] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EarnAllocateRequest' examples: allocateEarnFundsRequestExample: summary: Default allocateEarnFunds request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' amount: '0.01' strategy_id: OQCLML-BW3P3-BUCMWZ responses: '200': description: Allocation accepted content: application/json: schema: $ref: '#/components/schemas/EarnSimpleResponse' examples: allocateEarnFunds200Example: summary: Default allocateEarnFunds 200 response x-microcks-default: true value: error: [] result: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Earn/Deallocate: post: operationId: deallocateEarnFunds summary: Kraken Deallocate Earn Funds description: Removes the requested amount from an Earn strategy and returns funds to the trading balance once bonding/unbonding completes. tags: [Earn] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EarnAllocateRequest' examples: deallocateEarnFundsRequestExample: summary: Default deallocateEarnFunds request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' amount: '0.01' strategy_id: OQCLML-BW3P3-BUCMWZ responses: '200': description: Deallocation accepted content: application/json: schema: $ref: '#/components/schemas/EarnSimpleResponse' examples: deallocateEarnFunds200Example: summary: Default deallocateEarnFunds 200 response x-microcks-default: true value: error: [] result: true x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Earn/AllocateStatus: post: operationId: getEarnAllocateStatus summary: Kraken Get Earn Allocate Status description: Returns the in-flight status of the last Allocate call for a strategy. tags: [Earn] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EarnStrategyScopedRequest' examples: getEarnAllocateStatusRequestExample: summary: Default getEarnAllocateStatus request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' strategy_id: OQCLML-BW3P3-BUCMWZ responses: '200': description: Allocate status content: application/json: schema: $ref: '#/components/schemas/EarnStatusResponse' examples: getEarnAllocateStatus200Example: summary: Default getEarnAllocateStatus 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Earn/DeallocateStatus: post: operationId: getEarnDeallocateStatus summary: Kraken Get Earn Deallocate Status description: Returns the in-flight status of the last Deallocate call for a strategy. tags: [Earn] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EarnStrategyScopedRequest' examples: getEarnDeallocateStatusRequestExample: summary: Default getEarnDeallocateStatus request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' strategy_id: OQCLML-BW3P3-BUCMWZ responses: '200': description: Deallocate status content: application/json: schema: $ref: '#/components/schemas/EarnStatusResponse' examples: getEarnDeallocateStatus200Example: summary: Default getEarnDeallocateStatus 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Earn/Strategies: post: operationId: listEarnStrategies summary: Kraken List Earn Strategies description: Returns the catalog of Earn strategies available to the account (lockup periods, APR ranges, asset). tags: [Earn] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/EarnStrategiesRequest' examples: listEarnStrategiesRequestExample: summary: Default listEarnStrategies request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' asset: XBT limit: 1 lock_type: [] cursor: string ascending: true responses: '200': description: Strategy catalog content: application/json: schema: $ref: '#/components/schemas/EarnStrategiesResponse' examples: listEarnStrategies200Example: summary: Default listEarnStrategies 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/Earn/Allocations: post: operationId: listEarnAllocations summary: Kraken List Earn Allocations description: Returns the current Earn allocations for the account, including bonded, allocated, and rewards balances. tags: [Earn] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/NoncedRequest' examples: listEarnAllocationsRequestExample: summary: Default listEarnAllocations request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' responses: '200': description: Allocations content: application/json: schema: $ref: '#/components/schemas/EarnAllocationsResponse' examples: listEarnAllocations200Example: summary: Default listEarnAllocations 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK /0/private/GetWebSocketsToken: post: operationId: getWebSocketsToken summary: Kraken Get WebSockets Token description: Mints a short-lived (15 minute) token used to authenticate subscriptions on the private WebSocket endpoint. tags: [WebSocket] security: [kraken_signature: []] requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/NoncedRequest' examples: getWebSocketsTokenRequestExample: summary: Default getWebSocketsToken request x-microcks-default: true value: nonce: 1717000000000 otp: '123456' responses: '200': description: WebSocket token content: application/json: schema: $ref: '#/components/schemas/WebSocketsTokenResponse' examples: getWebSocketsToken200Example: summary: Default getWebSocketsToken 200 response x-microcks-default: true value: error: [] result: {} x-microcks-operation: delay: 0 dispatcher: FALLBACK components: securitySchemes: kraken_signature: type: apiKey in: header name: API-Key description: >- Kraken signs private REST requests with two headers: `API-Key` (your public API key) and `API-Sign` (HMAC-SHA512 of the URI path plus SHA256(nonce + POST body), keyed by the base64-decoded secret). All private endpoints must include an incrementing `nonce` in the POST body. schemas: BaseEnvelope: type: object properties: error: type: array items: {type: string} description: Array of error strings; empty on success. example: [] result: description: Endpoint-specific result object. example: string required: [error] NoncedRequest: type: object description: All private requests include an incrementing nonce. Optionally an OTP for two-factor-protected keys. required: [nonce] properties: nonce: type: integer format: int64 example: 1717000000000 otp: type: string description: Two-factor password / OTP if the key is OTP-protected. example: '123456' AssetScopedRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [asset] properties: asset: type: string example: XBT EarnStrategyScopedRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [strategy_id] properties: strategy_id: type: string example: OQCLML-BW3P3-BUCMWZ ServerTimeResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: unixtime: {type: integer, example: 1717000000} rfc1123: {type: string, example: "Mon, 27 May 26 00:00:00 +0000"} example: {} SystemStatusResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: status: {type: string, enum: [online, maintenance, cancel_only, post_only], example: online} timestamp: {type: string, format: date-time, example: '2026-05-30T00:00:00Z'} example: {} AssetInfoResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/AssetInfo' example: {} AssetInfo: type: object properties: aclass: {type: string, example: string} altname: {type: string, example: string} decimals: {type: integer, example: 1} display_decimals: {type: integer, example: 1} collateral_value: {type: number, example: 0.01} status: {type: string, example: string} AssetPairsResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/AssetPair' example: {} AssetPair: type: object properties: altname: {type: string, example: string} wsname: {type: string, example: string} aclass_base: {type: string, example: string} base: {type: string, example: string} aclass_quote: {type: string, example: string} quote: {type: string, example: string} pair_decimals: {type: integer, example: XBTUSD} lot_decimals: {type: integer, example: 1} lot_multiplier: {type: integer, example: 1} leverage_buy: {type: array, items: {type: integer}, example: []} leverage_sell: {type: array, items: {type: integer}, example: []} fees: {type: array, items: {type: array, items: {type: number}}, example: []} fees_maker: {type: array, items: {type: array, items: {type: number}}, example: []} fee_volume_currency: {type: string, example: '0.01'} margin_call: {type: integer, example: '0.01'} margin_stop: {type: integer, example: '0.01'} ordermin: {type: string, example: string} costmin: {type: string, example: string} tick_size: {type: string, example: string} status: {type: string, example: string} TickerResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/Ticker' example: {} Ticker: type: object properties: a: {type: array, items: {type: string}, description: "[price, whole-lot volume, lot volume] ask", example: []} b: {type: array, items: {type: string}, description: "[price, whole-lot volume, lot volume] bid", example: []} c: {type: array, items: {type: string}, description: "[price, lot volume] last trade closed", example: []} v: {type: array, items: {type: string}, description: "[today, last 24h] volume", example: []} p: {type: array, items: {type: string}, description: "[today, last 24h] vwap", example: []} t: {type: array, items: {type: integer}, description: "[today, last 24h] number of trades", example: []} l: {type: array, items: {type: string}, description: "[today, last 24h] low", example: []} h: {type: array, items: {type: string}, description: "[today, last 24h] high", example: []} o: {type: string, description: "Today's opening price", example: string} OHLCResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: oneOf: - type: array items: type: array items: {} - type: integer description: Map of pair → candle array, plus `last` cursor. example: {} OrderBookResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/OrderBook' example: {} OrderBook: type: object properties: asks: type: array items: type: array items: {} description: "[price, volume, timestamp]" example: [] bids: type: array items: type: array items: {} example: [] RecentTradesResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: oneOf: - type: array items: type: array items: {} - type: string example: {} RecentSpreadsResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: oneOf: - type: array items: type: array items: {} - type: integer example: {} BalanceResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: type: string description: Asset balance (string, exact precision). example: {} BalanceExResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: type: object properties: balance: {type: string} hold_trade: {type: string} credit: {type: string} credit_used: {type: string} example: {} TradeBalanceRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: asset: {type: string, default: ZUSD, example: XBT} TradeBalanceResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: eb: {type: string, description: Equivalent balance, example: string} tb: {type: string, description: Trade balance, example: string} m: {type: string, description: Margin used, example: string} n: {type: string, description: Unrealized P&L, example: string} c: {type: string, description: Cost basis of positions, example: string} v: {type: string, description: Current valuation of positions, example: string} e: {type: string, description: Equity, example: string} mf: {type: string, description: Free margin, example: string} ml: {type: string, description: Margin level, example: string} uv: {type: string, description: Unexecuted value, example: string} example: {} OpenOrdersRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: trades: {type: boolean, default: false, example: true} userref: {type: integer, example: 1} cl_ord_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} OrderInfo: type: object properties: refid: {type: string, nullable: true, example: OQCLML-BW3P3-BUCMWZ} userref: {type: integer, nullable: true, example: 1} cl_ord_id: {type: string, nullable: true, example: OQCLML-BW3P3-BUCMWZ} status: {type: string, enum: [pending, open, closed, canceled, expired], example: pending} opentm: {type: number, example: 0.01} starttm: {type: number, example: 0.01} expiretm: {type: number, example: 0.01} descr: type: object properties: pair: {type: string, example: XBTUSD} type: {type: string, enum: [buy, sell], example: buy} ordertype: {type: string, example: limit} price: {type: string, example: '0.01'} price2: {type: string, example: '0.01'} leverage: {type: string, example: none} order: {type: string, example: string} close: {type: string, example: string} example: {} vol: {type: string, example: '0.01'} vol_exec: {type: string, example: '0.01'} cost: {type: string, example: '0.01'} fee: {type: string, example: '0.01'} price: {type: string, example: '0.01'} stopprice: {type: string, example: '0.01'} limitprice: {type: string, example: '0.01'} misc: {type: string, example: string} oflags: {type: string, example: string} trades: {type: array, items: {type: string}, example: []} OpenOrdersResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: open: type: object additionalProperties: $ref: '#/components/schemas/OrderInfo' example: {} example: {} ClosedOrdersRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: trades: {type: boolean, default: false, example: true} userref: {type: integer, example: 1} cl_ord_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} start: {type: integer, example: 1} end: {type: integer, example: 1} ofs: {type: integer, example: 1} closetime: {type: string, enum: [open, close, both], default: both, example: open} ClosedOrdersResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: closed: type: object additionalProperties: $ref: '#/components/schemas/OrderInfo' example: {} count: {type: integer, example: 1} example: {} QueryOrdersRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [txid] properties: trades: {type: boolean, example: true} userref: {type: integer, example: 1} cl_ord_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} txid: {type: string, description: Comma-delimited list of txids (up to 50)., example: OQCLML-BW3P3-BUCMWZ} QueryOrdersResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/OrderInfo' example: {} TradesHistoryRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: type: {type: string, enum: [all, any position, closed position, closing position, no position], default: all, example: all} trades: {type: boolean, example: true} start: {type: integer, example: 1} end: {type: integer, example: 1} ofs: {type: integer, example: 1} TradeInfo: type: object properties: ordertxid: {type: string, example: OQCLML-BW3P3-BUCMWZ} pair: {type: string, example: XBTUSD} time: {type: number, example: '2026-05-30T00:00:00Z'} type: {type: string, enum: [buy, sell], example: buy} ordertype: {type: string, example: limit} price: {type: string, example: '0.01'} cost: {type: string, example: '0.01'} fee: {type: string, example: '0.01'} vol: {type: string, example: '0.01'} margin: {type: string, example: '0.01'} misc: {type: string, example: string} ledgers: {type: array, items: {type: string}, example: []} posstatus: {type: string, example: string} TradesHistoryResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: trades: type: object additionalProperties: $ref: '#/components/schemas/TradeInfo' example: {} count: {type: integer, example: 1} example: {} QueryTradesRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [txid] properties: txid: {type: string, example: OQCLML-BW3P3-BUCMWZ} trades: {type: boolean, example: true} QueryTradesResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/TradeInfo' example: {} OpenPositionsRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: txid: {type: string, example: OQCLML-BW3P3-BUCMWZ} docalcs: {type: boolean, default: false, example: true} consolidation: {type: string, enum: [market], example: market} Position: type: object properties: ordertxid: {type: string, example: OQCLML-BW3P3-BUCMWZ} posstatus: {type: string, example: string} pair: {type: string, example: XBTUSD} time: {type: number, example: '2026-05-30T00:00:00Z'} type: {type: string, enum: [buy, sell], example: buy} ordertype: {type: string, example: limit} cost: {type: string, example: '0.01'} fee: {type: string, example: '0.01'} vol: {type: string, example: '0.01'} vol_closed: {type: string, example: '0.01'} margin: {type: string, example: '0.01'} value: {type: string, example: string} net: {type: string, example: string} terms: {type: string, example: string} rollovertm: {type: string, example: string} misc: {type: string, example: string} oflags: {type: string, example: string} OpenPositionsResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/Position' example: {} LedgersRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: asset: {type: string, default: all, example: XBT} aclass: {type: string, default: currency, example: string} type: {type: string, enum: [all, deposit, withdrawal, trade, margin, rollover, credit, transfer, settled, staking, dividend, sale, nft_rebate, conversion, allocation, deallocation, earn], default: all, example: all} start: {type: integer, example: 1} end: {type: integer, example: 1} ofs: {type: integer, example: 1} LedgerEntry: type: object properties: refid: {type: string, example: OQCLML-BW3P3-BUCMWZ} time: {type: number, example: '2026-05-30T00:00:00Z'} type: {type: string, example: buy} subtype: {type: string, example: string} aclass: {type: string, example: string} asset: {type: string, example: XBT} amount: {type: string, example: '0.01'} fee: {type: string, example: '0.01'} balance: {type: string, example: '0.01'} LedgersResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: ledger: type: object additionalProperties: $ref: '#/components/schemas/LedgerEntry' example: {} count: {type: integer, example: 1} example: {} QueryLedgersRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [id] properties: id: {type: string, description: Comma-delimited list of ledger ids (up to 20)., example: OQCLML-BW3P3-BUCMWZ} trades: {type: boolean, example: true} QueryLedgersResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object additionalProperties: $ref: '#/components/schemas/LedgerEntry' example: {} TradeVolumeRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: pair: {type: string, example: XBTUSD} fee-info: {type: boolean, example: true} TradeVolumeResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: currency: {type: string, example: string} volume: {type: string, example: '0.01'} fees: type: object additionalProperties: type: object properties: fee: {type: string} minfee: {type: string} maxfee: {type: string} nextfee: {type: string} nextvolume: {type: string} tiervolume: {type: string} example: {} fees_maker: type: object additionalProperties: type: object example: {} example: {} AddOrderRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [ordertype, type, volume, pair] properties: userref: {type: integer, example: 1} cl_ord_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} ordertype: type: string enum: [market, limit, iceberg, stop-loss, take-profit, stop-loss-limit, take-profit-limit, trailing-stop, trailing-stop-limit, settle-position] example: market type: {type: string, enum: [buy, sell], example: buy} volume: {type: string, example: "0.01"} displayvol: {type: string, description: For iceberg orders the visible part of the order., example: '0.01'} pair: {type: string, example: XBTUSD} price: {type: string, example: '0.01'} price2: {type: string, example: '0.01'} trigger: {type: string, enum: [last, index], example: last} leverage: {type: string, example: "none"} reduce_only: {type: boolean, example: true} stptype: {type: string, enum: [cancel-newest, cancel-oldest, cancel-both], example: cancel-newest} oflags: {type: string, description: Comma-delimited flags (post, fcib: null, fciq: null, nompp: null, viqc).: null, example: string} timeinforce: {type: string, enum: [GTC, IOC, GTD], example: GTC} starttm: {type: string, example: string} expiretm: {type: string, example: string} close[ordertype]: {type: string, example: string} close[price]: {type: string, example: '0.01'} close[price2]: {type: string, example: '0.01'} deadline: {type: string, example: string} validate: {type: boolean, example: true} AddOrderResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: descr: type: object properties: order: {type: string, example: string} close: {type: string, example: string} example: {} txid: type: array items: {type: string} example: OQCLML-BW3P3-BUCMWZ example: {} AddOrderBatchRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [pair, orders] properties: pair: {type: string, example: XBTUSD} deadline: {type: string, example: string} validate: {type: boolean, example: true} orders: type: array maxItems: 15 items: type: object properties: ordertype: {type: string, example: limit} type: {type: string, example: buy} volume: {type: string, example: '0.01'} price: {type: string, example: '0.01'} price2: {type: string, example: '0.01'} userref: {type: integer, example: 1} oflags: {type: string, example: string} starttm: {type: string, example: string} expiretm: {type: string, example: string} example: [] AddOrderBatchResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: orders: type: array items: type: object properties: descr: {type: object, example: {}} txid: {type: string, example: OQCLML-BW3P3-BUCMWZ} error: {type: string, example: string} example: [] example: {} EditOrderRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [txid, pair] properties: txid: {type: string, example: OQCLML-BW3P3-BUCMWZ} pair: {type: string, example: XBTUSD} volume: {type: string, example: '0.01'} displayvol: {type: string, example: '0.01'} price: {type: string, example: '0.01'} price2: {type: string, example: '0.01'} oflags: {type: string, example: string} deadline: {type: string, example: string} cancel_response: {type: boolean, example: true} validate: {type: boolean, example: true} userref: {type: integer, example: 1} EditOrderResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: status: {type: string, example: string} txid: {type: string, example: OQCLML-BW3P3-BUCMWZ} originaltxid: {type: string, example: OQCLML-BW3P3-BUCMWZ} volume: {type: string, example: '0.01'} price: {type: string, example: '0.01'} orders_cancelled: {type: integer, example: 1} descr: {type: object, example: {}} example: {} AmendOrderRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: txid: {type: string, example: OQCLML-BW3P3-BUCMWZ} cl_ord_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} order_qty: {type: string, example: string} display_qty: {type: string, example: string} limit_price: {type: string, example: '0.01'} trigger_price: {type: string, example: '0.01'} post_only: {type: boolean, example: true} deadline: {type: string, example: string} AmendOrderResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: amend_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} example: {} CancelOrderRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [txid] properties: txid: {type: string, description: txid, cl_ord_id: null, or userref.: null, example: OQCLML-BW3P3-BUCMWZ} cl_ord_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} CancelOrderResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: count: {type: integer, example: 1} pending: {type: boolean, example: true} example: {} CancelAllResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: count: {type: integer, example: 1} example: {} CancelAllAfterRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [timeout] properties: timeout: {type: integer, description: Seconds (0 to disable, max 86400).: null, example: 60} CancelAllAfterResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: currentTime: {type: string, format: date-time, example: '2026-05-30T00:00:00Z'} triggerTime: {type: string, format: date-time, example: '2026-05-30T00:00:00Z'} example: {} CancelOrderBatchRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [orders] properties: orders: type: array maxItems: 50 items: {type: string} example: [] CancelOrderBatchResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: count: {type: integer, example: 1} example: {} DepositMethodsResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: array items: type: object properties: method: {type: string, example: string} limit: {oneOf: [type: string, type: boolean], example: string} fee: {type: string, example: '0.01'} address-setup-fee: {type: string, example: string} gen-address: {type: boolean, example: true} minimum: {type: string, example: string} example: [] DepositAddressesRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [asset, method] properties: asset: {type: string, example: XBT} method: {type: string, example: string} new: {type: boolean, example: true} amount: {type: string, example: '0.01'} DepositAddressesResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: array items: type: object properties: address: {type: string, example: bc1qexampledeadbeefaddress0000000000000000} expiretm: {type: string, example: string} new: {type: boolean, example: true} memo: {type: string, example: string} tag: {type: string, example: string} example: [] DepositStatusRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: asset: {type: string, example: XBT} method: {type: string, example: string} start: {type: string, example: string} end: {type: string, example: string} cursor: {type: string, example: string} limit: {type: integer, example: 1} FundingTxn: type: object properties: method: {type: string, example: string} aclass: {type: string, example: string} asset: {type: string, example: XBT} refid: {type: string, example: OQCLML-BW3P3-BUCMWZ} txid: {type: string, example: OQCLML-BW3P3-BUCMWZ} info: {type: string, example: string} amount: {type: string, example: '0.01'} fee: {type: string, example: '0.01'} time: {type: number, example: '2026-05-30T00:00:00Z'} status: {type: string, example: string} status-prop: {type: string, example: string} DepositStatusResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: array items: $ref: '#/components/schemas/FundingTxn' example: [] WithdrawInfoRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [asset, key, amount] properties: asset: {type: string, example: XBT} key: {type: string, description: Withdrawal key name configured in account., example: Cold storage 1} amount: {type: string, example: '0.01'} WithdrawInfoResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: method: {type: string, example: string} limit: {type: string, example: string} amount: {type: string, example: '0.01'} fee: {type: string, example: '0.01'} example: {} WithdrawRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [asset, key, amount] properties: asset: {type: string, example: XBT} key: {type: string, example: Cold storage 1} address: {type: string, example: bc1qexampledeadbeefaddress0000000000000000} amount: {type: string, example: '0.01'} max_fee: {type: string, example: string} WithdrawResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: refid: {type: string, example: OQCLML-BW3P3-BUCMWZ} example: {} WithdrawStatusRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: asset: {type: string, example: XBT} method: {type: string, example: string} start: {type: string, example: string} end: {type: string, example: string} cursor: {type: string, example: string} limit: {type: integer, example: 1} WithdrawStatusResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: array items: $ref: '#/components/schemas/FundingTxn' example: [] WithdrawCancelRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [asset, refid] properties: asset: {type: string, example: XBT} refid: {type: string, example: OQCLML-BW3P3-BUCMWZ} WithdrawCancelResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: {type: boolean, example: true} WalletTransferRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [asset, from, to, amount] properties: asset: {type: string, example: XBT} from: {type: string, enum: ['Spot Wallet'], default: 'Spot Wallet', example: 'Spot Wallet'} to: {type: string, enum: ['Futures Wallet'], example: 'Futures Wallet'} amount: {type: string, example: '0.01'} WalletTransferResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: refid: {type: string, example: OQCLML-BW3P3-BUCMWZ} example: {} CreateSubaccountRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [username, email] properties: username: {type: string, example: subaccount-01} email: {type: string, format: email, example: trader@example.com} CreateSubaccountResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: {type: boolean, example: true} AccountTransferRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [asset, amount, from, to] properties: asset: {type: string, example: XBT} amount: {type: string, example: '0.01'} from: {type: string, description: Master account email or subaccount username., example: string} to: {type: string, example: string} AccountTransferResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: transfer_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} status: {type: string, example: string} example: {} EarnAllocateRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object required: [amount, strategy_id] properties: amount: {type: string, example: '0.01'} strategy_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} EarnSimpleResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: {type: boolean, example: true} EarnStatusResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: pending: {type: boolean, example: true} example: {} EarnStrategiesRequest: allOf: - $ref: '#/components/schemas/NoncedRequest' - type: object properties: asset: {type: string, example: XBT} limit: {type: integer, example: 1} lock_type: {type: array, items: {type: string, enum: [bonded, flex, timed, instant]}, example: []} cursor: {type: string, example: string} ascending: {type: boolean, example: true} EarnStrategy: type: object properties: id: {type: string, example: OQCLML-BW3P3-BUCMWZ} asset: {type: string, example: XBT} lock_type: type: object properties: type: {type: string, example: buy} bonding_period: {type: integer, example: 1} unbonding_period: {type: integer, example: 1} payout_frequency: {type: integer, example: 1} example: {} apr_estimate: type: object properties: low: {type: string, example: string} high: {type: string, example: string} example: {} user_min_allocation: {type: string, example: string} user_cap: {type: string, example: string} allocation_fee: {type: string, example: string} deallocation_fee: {type: string, example: string} auto_compound: type: object properties: type: {type: string, example: buy} default: {type: boolean, example: true} example: {} yield_source: type: object properties: type: {type: string, example: buy} example: {} can_allocate: {type: boolean, example: true} can_deallocate: {type: boolean, example: true} EarnStrategiesResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: items: type: array items: $ref: '#/components/schemas/EarnStrategy' example: [] next_cursor: {type: string, example: string} example: {} EarnAllocationsResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: converted_asset: {type: string, example: XBT} total_allocated: {type: string, example: string} total_rewarded: {type: string, example: string} items: type: array items: type: object properties: strategy_id: {type: string, example: OQCLML-BW3P3-BUCMWZ} native_asset: {type: string, example: XBT} amount_allocated: type: object properties: bonding: {type: object, example: {}} unbonding: {type: object, example: {}} allocated: {type: object, example: {}} total: type: object properties: native: {type: string, example: string} converted: {type: string, example: string} example: {} example: {} total_rewarded: type: object properties: native: {type: string, example: string} converted: {type: string, example: string} example: {} example: [] example: {} WebSocketsTokenResponse: allOf: - $ref: '#/components/schemas/BaseEnvelope' - type: object properties: result: type: object properties: token: {type: string, example: string} expires: {type: integer, example: 900} example: {}