Kraken Derivatives
Perpetual and dated futures: order entry, positions, fills, transfers, account history, market data and charts.
Authentication
This connector uses Token-based authentication.
info
Set up your connection in the Abstra Console before using it in your workflows.
How to use
Using the Smart Chat
Execute the action "CHOOSE_ONE_ACTION_BELOW" from my connector "YOUR_CONNECTOR_NAME" using the params "PARAMS_HERE".
Using the Web Editor
from abstra.connectors import run_connection_action
result = run_connection_action(
connection_name="your_connection_name",
action_name="your_action_name",
params={
"param1": "value1",
"param2": "value2"
})
Available Actions
This connector provides 78 actions:
| Action | Purpose | Parameters |
|---|---|---|
| get_derivatives_api_v3_pnlpreferences | The PNL currency preference is used to determine which currency to pay out when realizing PNL gains. | No parameters |
| put_derivatives_api_v3_pnlpreferences | The PNL currency preference is used to determine which currency to pay out when realizing PNL gains. Calling this API can result in the following error codes: 87: Contract does not exist 88: Contract not a multi-collateral futures contract 89: Currency does not exist 90: Currency is not enabled for multi-collateral futures 41: Would cause liquidation | symbol (string) pnlPreference (string) required |
| delete_derivatives_api_v3_pnlpreferences | Removes a PNL currency preference, so what it covered falls back on the next rule. With a symbol the market goes back to following the account-wide preference; without one the account-wide preference is removed and every market following it goes back to the platform's own currency. For a market this is the only way back: naming the platform's own currency pins that market to it rather than removing the override. Account-wide, setting the platform's own currency has the same effect as removing t | symbol (string) |
| get_derivatives_api_v3_leveragepreferences | Returns list of configured leverage preferences. | No parameters |
| put_derivatives_api_v3_leveragepreferences | Sets a contract's margin mode, either 'isolated' or 'cross' margin. When specifying a max leverage, the contract's margin mode will be isolated. Calling this endpoint can result in the following error codes: - 87: Contract does not exist - 88: Contract not a multi-collateral futures contract - 41: Would cause liquidation | symbol (string) required maxLeverage (number) |
| get_derivatives_api_v3_rfq_assignment_max_leverage | Returns the account-level off-book maximum leverage cap, or null when no cap is configured. The cap limits the effective leverage gross open-position notional / margin equity the account is willing to reach through off-book fills — liquidation assignments and RFQ offer fills. It is set per master account; book maker/taker orders are never affected. A cap of 0 means the account takes no exposure-increasing off-book fill at all, and is the way to opt out of assignments and RFQ fills without with | No parameters |
| put_derivatives_api_v3_rfq_assignment_max_leverage | Sets the account-level off-book maximum leverage cap for the authenticated master account and returns the stored value. The cap limits the effective leverage gross open-position notional / margin equity the account is willing to reach through off-book fills — liquidation assignments and RFQ offer fills. Book maker/taker orders are never affected. Setting the cap to 0 leaves no leverage budget, so the account takes no exposure-increasing off-book fill at all: it is the single switch to opt out | maxLeverage (number) required |
| delete_derivatives_api_v3_rfq_assignment_max_leverage | Clears the account-level off-book maximum leverage cap for the authenticated master account. After clearing, off-book fills are no longer constrained by an account-level cap. Clearing the cap is the opposite of setting it to 0: clearing lifts the constraint entirely, while 0 blocks all exposure-increasing off-book fills. Only master accounts may call this endpoint. | No parameters |
| get_derivatives_api_v3_accounts | This endpoint returns key information relating to all your accounts which may either be cash accounts or margin accounts. This includes digital asset balances, instrument balances, margin requirements, margin trigger estimates and auxiliary information such as available funds, PnL of open positions and portfolio value. | No parameters |
| post_derivatives_api_v3_batchorder | This endpoint allows sending limit or stop orders and/or cancelling open orders and/or editing open orders for a currently listed Futures contract in batch. When editing an order, if the trailingStopMaxDeviation and trailingStopDeviationUnit parameters are sent unchanged, the system will recalculate a new stop price upon successful order modification. | algoId (string) processBefore (string) json (string) required broker (string) |
| post_derivatives_api_v3_cancelallorders | This endpoint allows cancelling orders which are associated with a future's contract or a margin account. If no arguments are specified all open orders will be cancelled. | algoId (string) symbol (string) |
| post_derivatives_api_v3_cancelallordersafter | This endpoint provides a Dead Man's Switch mechanism to protect the user from network malfunctions. The user can send a request with a timeout in seconds which will trigger a countdown timer that will cancel all user orders when timeout expires. The user has to keep sending request to push back the timeout expiration or they can deactivate the mechanism by specifying a timeout of zero 0. The recommended mechanism usage is making a call every 15 to 20 seconds and provide a timeout of 60 seconds. | algoId (string) timeout (number) |
| post_derivatives_api_v3_cancelorder | This endpoint allows cancelling an open order for a Futures contract. | algoId (string) processBefore (string) order_id (string) cliOrdId (string) |
| post_derivatives_api_v3_editorder | This endpoint allows editing an existing order for a currently listed Futures contract. When editing an order, if the trailingStopMaxDeviation and trailingStopDeviationUnit parameters are sent unchanged, the system will recalculate a new stop price upon successful order modification. | algoId (string) processBefore (string) orderId (string) cliOrdId (string) size (number) limitPrice (number) stopPrice (number) trailingStopMaxDeviation (number) trailingStopDeviationUnit (string) qtyMode (string) |
| get_derivatives_api_v3_feeschedules | DEPRECATED — Effective 2026-06-22, the fee values returned by this endpoint no longer reflect the fees actually charged on Futures trades. Futures fee calculation has been migrated to a centralised Kraken fee service. To determine the fee rate applied to your trades, use the Spot GetTradeVolumehttps://docs.kraken.com/api/docs/rest-api/get-trade-volume endpoint authenticated with a Spot API key. --- This endpoint lists all fee schedules. | No parameters |
| get_derivatives_api_v3_feeschedules_volumes | DEPRECATED — Effective 2026-06-22, the volumes and fee schedule associations returned by this endpoint no longer reflect the fees actually charged on Futures trades. Futures fee calculation has been migrated to a centralised Kraken fee service. To determine the fee rate applied to your trades, use the Spot GetTradeVolumehttps://docs.kraken.com/api/docs/rest-api/get-trade-volume endpoint authenticated with a Spot API key. --- Returns your fee schedule volumes for each fee schedule. | No parameters |
| get_derivatives_api_v3_fills | This endpoint returns information on your filled orders for all futures contracts. | lastFillTime (string) |
| get_derivatives_api_v3_history | This endpoint returns the most recent 100 trades prior to the specified lastTime value up to past 7 days or recent trading engine restart whichever is sooner. If no lastTime specified, it will return 100 most recent trades. | symbol (string) required lastTime (string) includeMTFData (boolean) |
| get_derivatives_api_v3_instruments | Returns specifications for all currently listed markets and indices. | contractType (array) expired (boolean) |
| get_derivatives_api_v3_trading_instruments | Returns specifications for all currently accessible markets and indices. | contractType (array) |
| get_derivatives_api_v3_instruments_status | Returns price dislocation and volatility details for all markets. | contractType (array) |
| get_derivatives_api_v3_instruments_by_symbol_status | Returns price dislocation and volatility details for given market. | symbol (string) required |
| get_derivatives_api_v3_notifications | This endpoint provides the platform's notifications. | No parameters |
| get_derivatives_api_v3_openorders | This endpoint returns information on all open orders for all Futures contracts. | No parameters |
| get_derivatives_api_v3_openpositions | This endpoint returns the size and average entry price of all open positions in Futures contracts. This includes Futures contracts that have matured but have not yet been settled. | No parameters |
| get_derivatives_api_v3_unwindqueue | This endpoint returns the percentile of the open position in case of unwinding. | No parameters |
| get_derivatives_api_v3_orderbook | This endpoint returns the entire non-cumulative order book of currently listed Futures contracts. | symbol (string) required |
| post_derivatives_api_v3_sendorder | This endpoint allows sending a limit, stop, take profit or immediate-or-cancel order for a currently listed Futures contract. | algoId (string) processBefore (string) orderType (string) required symbol (string) required side (string) required size (number) required limitPrice (number) stopPrice (number) cliOrdId (string) triggerSignal (string) reduceOnly (boolean) trailingStopMaxDeviation (number) trailingStopDeviationUnit (string) limitPriceOffsetValue (number) limitPriceOffsetUnit (string) broker (string) |
| get_derivatives_api_v3_subaccount_by_subaccount_uid_trading_enabled | Returns trading capability info for given subaccount. | subaccountUid (string) required |
| put_derivatives_api_v3_subaccount_by_subaccount_uid_trading_enabled | Updates trading capabilities for given subaccount. | subaccountUid (string) required tradingEnabled (boolean) required |
| get_derivatives_api_v3_subaccounts | Return information about subaccounts, including balances and UIDs. | No parameters |
| get_derivatives_api_v3_tickers | This endpoint returns current market data for all currently listed Futures contracts and indices. | contractType (array) symbol (array) |
| get_derivatives_api_v3_tickers_by_symbol | Get market data for contract or index by symbol | symbol (string) required |
| post_derivatives_api_v3_transfer | This endpoint allows you to transfer funds between two margin accounts with the same collateral currency, or between a margin account and your cash account. | fromAccount (string) required toAccount (string) required unit (string) required amount (number) required |
| post_derivatives_api_v3_transfer_subaccount | This endpoint allows you to transfer funds between the current account and a sub account, between two margin accounts with the same collateral currency, or between a margin account and your cash account. | fromUser (string) required toUser (string) required fromAccount (string) required toAccount (string) required unit (string) required amount (string) required |
| get_derivatives_api_v3_transfers | This endpoint returns information on digital asset deposits and withdrawals to and from an account. | lastTransferTime (string) |
| post_derivatives_api_v3_withdrawal | This endpoint allows you to request to withdraw digital assets to your Kraken Spot wallet. Wallet names can be found in the 'accounts' structure in the Get Wallets /accounts response. A withdrawal the trading engine rejects returns an error response with insufficientFunds, invalidAmount, or invalidUnit. | currency (string) required amount (number) required sourceWallet (string) |
| get_derivatives_api_v3_assignmentprogram_current | This endpoint returns information on currently active assignment programs | No parameters |
| post_derivatives_api_v3_assignmentprogram_add | This endpoint adds an assignment program preference | contractType (string) required contract (string) maxSize (number) maxPosition (number) acceptLong (boolean) required acceptShort (boolean) required timeFrame (string) required enabled (boolean) required baseCurrency (string) quoteCurrency (string) cashAccountOpenPositionMaxNotional (number) minimumProfitabilityPerAssignmentLongBps (integer) minimumProfitabilityPerAssignmentShortBps (integer) |
| post_derivatives_api_v3_assignmentprogram_delete | This endpoint deletes an assignment program preference | id (number) required |
| get_derivatives_api_v3_assignmentprogram_history | This endpoint returns information on assignment program preferences change history | No parameters |
| post_derivatives_api_v3_orders_status | Returns information on specified orders which are open or were filled/cancelled in the last 5 seconds. | orderIds (array) cliOrdIds (array) |
| get_derivatives_api_v3_historical_funding_rates | Returns list of historical funding rates for given market. | symbol (string) required |
| get_derivatives_api_v3_self_trade_strategy | Returns account-wide self-trade matching strategy. | No parameters |
| put_derivatives_api_v3_self_trade_strategy | Updates account-wide self-trade matching behavior to given strategy. | strategy (string) required |
| get_derivatives_api_v3_options_mm_greek_limits | Returns the per-currency delta and vega limits configured for this options market maker account, keyed by base currency e.g. BTC, ETH. Only accessible to master accounts with the options market maker flag enabled. Subaccounts are not permitted. | No parameters |
| put_derivatives_api_v3_options_mm_greek_limits | Sets the delta and/or vega limit for a single base currency on this options market maker account. Only accessible to master accounts with the options market maker flag enabled. Subaccounts are not permitted. currency is required. Each call replaces the row for that currency: any greek that is omitted, blank, or zero is stored as no-limit. Use the DELETE method to remove a currency entry entirely or all entries. | currency (string) required deltaLimit (string) vegaLimit (string) |
| delete_derivatives_api_v3_options_mm_greek_limits | Deletes options MM greek limits. If currency is provided, only that currency's entry is removed. Otherwise, all per-currency entries for the account are removed. Only accessible to master accounts with the options market maker flag enabled. Subaccounts are not permitted. | currency (string) |
| get_derivatives_api_v3_portfolio_margining_parameters | Retrieve current portfolio margin calculation parameters. Also includes user specific limits related to options trading. Note: This is currently available exclusively in the Kraken pre-prod environments. | No parameters |
| post_derivatives_api_v3_portfolio_margining_simulate | For a given portfolio of balances and positions futures and options, calculate the margin requirements, pnl and option greeks. Note: This is currently available exclusively in the Kraken pre-prod environments. | json (string) required |
| post_derivatives_api_v3_portfolio_margining_simulate_iv | Calculate the IV for a list of options at a specific price Note: This is currently available exclusively in the Kraken pre-prod environments. | json (string) required |
| get_derivatives_api_v3_rfqs | Retrieve all currently open RFQs | No parameters |
| get_derivatives_api_v3_rfqs_by_rfq_uid | Retrieve a specific RFQ by its unique identifier. Returns currently open RFQs as well as recently closed RFQs that are still held in the in-memory closed-RFQ cache. The status field on the response distinguishes the lifecycle state open, expired, cancelled, filled_bid_side, or filled_ask_side. Closed RFQs are kept in memory only and are not persisted; entries may be evicted by the cache eviction policy or wiped on service restart. | rfqUid (string) required |
| get_derivatives_api_v3_rfqs_open_offers | Retrieve all open offers for the account on currently open RFQs | No parameters |
| get_derivatives_api_v3_rfqs_closed_offers | Retrieve all offers the account placed on RFQs that have since closed. The status field on each offer indicates how the parent RFQ closed expired, cancelled, filled_bid_side, or filled_ask_side. Closed RFQs are tracked in an in-memory cache only and are not persisted; offers may be evicted by the cache eviction policy or wiped on service restart. | No parameters |
| post_derivatives_api_v3_rfqs_place_offer_by_rfq_uid | Place a new offer on the specified open RFQ. At least one of bid or ask must be provided. HTTP 200 is returned for both a successful placement and a rejected offer status: failed. A rejected offer includes reason and, when the rejection came from validating one quoted side, side bid or ask. Bid is checked first; request-level failures omit side. | rfqUid (string) required bid (string) ask (string) bidSide (string) askSide (string) |
| delete_derivatives_api_v3_rfqs_cancel_offer_by_rfq_uid | Cancel the current open offer on the specified open RFQ. | rfqUid (string) required offerUid (string) |
| get_derivatives_api_v3_rfqs_open_rfqs | Retrieve all currently open RFQs created by the authenticated account. | No parameters |
| post_derivatives_api_v3_rfqs_open_rfqs | Create a new RFQ for the authenticated account. The json query or form parameter is a JSON-encoded object with: - legs required: array of 'tradeable', 'size' max 100. Duplicate tradeables are rejected. - expiry optional: RFC 3339 datetime. The server applies a default duration if omitted. | json (string) required |
| delete_derivatives_api_v3_rfqs_open_rfqs_by_rfq_uid | Cancel a specific open RFQ created by the authenticated account. | rfqUid (string) required |
| post_derivatives_api_v3_rfqs_open_rfqs_accept_offer_by_rfq_uid | Accept an offer on a specific open RFQ created by the authenticated account. Exactly one of bidAccepted or askAccepted must be provided. | rfqUid (string) required bidAccepted (string) askAccepted (string) |
| get_api_history_v3_market_by_tradeable_executions | Lists trades for a market. | tradeable (string) required since (integer) before (integer) sort (string) continuation_token (string) count (integer) |
| get_api_history_v3_market_by_tradeable_orders | Lists order events for a market. | tradeable (string) required since (integer) before (integer) sort (string) continuation_token (string) count (integer) |
| get_api_history_v3_market_by_tradeable_price | Lists price events for a market. | tradeable (string) required since (integer) before (integer) sort (string) continuation_token (string) count (integer) |
| get_api_history_v3_executions | Lists executions/trades for authenticated account. | since (integer) before (integer) sort (string) continuation_token (string) count (integer) tradeable (string) |
| get_api_history_v3_orders | Lists order events for authenticated account. | since (integer) before (integer) sort (string) continuation_token (string) count (integer) tradeable (string) opened (boolean) closed (boolean) |
| get_api_history_v3_triggers | Lists trigger events for authenticated account. | since (integer) before (integer) sort (string) continuation_token (string) count (integer) tradeable (string) opened (boolean) closed (boolean) |
| get_api_history_v3_positions | Lists position events for authenticated account. | since (integer) before (integer) sort (string) continuation_token (string) count (integer) opened (boolean) closed (boolean) increased (boolean) decreased (boolean) reversed (boolean) no_change (boolean) trades (boolean) funding_realization (boolean) settlement (boolean) tradeable (string) |
| get_api_history_v3_account_log | Lists account log entries, paged by timestamp or by ID. To request entries by time range, use the since and before parameters. To request entries by ID range, use the from and to parameters. Any combination of since, before, from and to can be used to restrict the requested range of entries. | since (integer) before (integer) from (integer) to (integer) sort (string) info (array) count (integer) conversion_details (boolean) |
| get_api_history_v3_accountlogcsv | Lists recent account log entries in CSV format. | conversion_details (boolean) |
| get_api_charts_v1 | Returns all available tick types to use with the markets operation/symbols endpoint. | No parameters |
| get_api_charts_v1_analytics_liquidity_pool | Get liquidity pool statistic including usd value | since (integer) required interval (integer) required to (integer) |
| get_api_charts_v1_analytics_by_symbol_by_analytics_type | Analytics data divided into time buckets | symbol (string) required analytics_type (string) required since (integer) required interval (integer) required to (integer) |
| get_api_charts_v1_by_tick_type | Markets available for specified tick type. List of available tick types can be fetched from the tick types operation/tickTypes endpoint. | tick_type (string) required |
| get_api_charts_v1_by_tick_type_by_symbol | Candle resolutions available for specified tick type and market. List of available tick types can be fetched from the tick types operation/tickTypes endpoint. List of available markets can be fetched from the markets operation/symbols endpoint. | tick_type (string) required symbol (string) required |
| get_api_charts_v1_by_tick_type_by_symbol_by_resolution | Candles for specified tick type, market, and resolution. List of available tick types can be fetched from the tick types operation/tickTypes endpoint. List of available markets can be fetched from the markets operation/symbols endpoint. List of available resolutions can be fetched from the resolutions operation/resolutions endpoint. | tick_type (string) required symbol (string) required resolution (string) required from (number) to (number) count (integer) |
| get_api_auth_v1_api_keys_v3_check | Verify API key access and return the authenticated key's details. | No parameters |
| custom | Call any endpoint of the connected service while reusing the connection auth. Pass the full URL as _url. Other reserved keys: _method, _query, _body, _headers. Remaining params flow naturally — empty → GET, non-empty → POST JSON body. | _url (string) required _method (string) _query (object) _body _headers (object) |