curl --request GET \
--url https://test.deribit.com/api/v2/private/accept_block_rfq \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": 1,
"method": "private/accept_block_rfq",
"params": {
"block_rfq_id": 1,
"legs": [
{
"instrument_name": "BTC-8NOV24-70000-C",
"ratio": 1,
"direction": "buy"
},
{
"instrument_name": "BTC-8NOV24-72000-C",
"ratio": 1,
"direction": "sell"
}
],
"price": 0.01,
"direction": "buy",
"amount": 100,
"time_in_force": "fill_or_kill"
}
}
'{
"jsonrpc": "2.0",
"id": 1,
"result": {
"block_trades": [
{
"id": "BLOCK-423",
"timestamp": 1730798381504,
"trades": [
{
"timestamp": 1730798381502,
"state": "filled",
"fee": 1.5e-7,
"amount": 100,
"direction": "buy",
"price": 69696.8,
"index_price": 70000,
"profit_loss": 0,
"instrument_name": "BTC-8NOV24-70000-C",
"trade_seq": 113,
"mark_price": 0.03,
"order_id": "2899",
"matching_id": null,
"tick_direction": 2,
"combo_id": "BTC-CS-8NOV24-70000_72000",
"block_rfq_id": 1,
"api": true,
"contracts": 100,
"post_only": false,
"block_trade_id": "BLOCK-423",
"trade_id": "771",
"order_type": "limit",
"mmp": false,
"risk_reducing": false,
"reduce_only": false,
"block_trade_leg_count": 2,
"self_trade": false,
"fee_currency": "BTC",
"liquidity": "T"
},
{
"timestamp": 1730798381502,
"state": "filled",
"fee": 1.5e-7,
"amount": 100,
"direction": "sell",
"price": 69677.4,
"index_price": 70000,
"profit_loss": 0,
"instrument_name": "BTC-8NOV24-72000-C",
"trade_seq": 113,
"mark_price": 0.02,
"order_id": "2900",
"matching_id": null,
"tick_direction": 2,
"combo_id": "BTC-CS-8NOV24-70000_72000",
"block_rfq_id": 1,
"api": true,
"contracts": 100,
"post_only": false,
"block_trade_id": "BLOCK-423",
"trade_id": "772",
"order_type": "limit",
"mmp": false,
"risk_reducing": false,
"reduce_only": false,
"block_trade_leg_count": 2,
"self_trade": false,
"fee_currency": "BTC",
"liquidity": "T"
}
]
}
]
}
}Taker method
Allows Block RFQ taker to accept a quote by sending a single crossing price. The order can be either filled immediately (fill_or_kill) or remain active until cancelled (good_til_cancelled).
Note: After Block RFQ creation, a grace period of 5 seconds begins, during which the taker cannot see quotes or trade the Block RFQ.
Use private/get_block_rfqs to retrieve Block RFQ information, or private/cancel_block_rfq to cancel a Block RFQ.
๐ Related Article: Deribit Block RFQ API walkthrough
Scope: block_rfq:read_write
curl --request GET \
--url https://test.deribit.com/api/v2/private/accept_block_rfq \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": 1,
"method": "private/accept_block_rfq",
"params": {
"block_rfq_id": 1,
"legs": [
{
"instrument_name": "BTC-8NOV24-70000-C",
"ratio": 1,
"direction": "buy"
},
{
"instrument_name": "BTC-8NOV24-72000-C",
"ratio": 1,
"direction": "sell"
}
],
"price": 0.01,
"direction": "buy",
"amount": 100,
"time_in_force": "fill_or_kill"
}
}
'{
"jsonrpc": "2.0",
"id": 1,
"result": {
"block_trades": [
{
"id": "BLOCK-423",
"timestamp": 1730798381504,
"trades": [
{
"timestamp": 1730798381502,
"state": "filled",
"fee": 1.5e-7,
"amount": 100,
"direction": "buy",
"price": 69696.8,
"index_price": 70000,
"profit_loss": 0,
"instrument_name": "BTC-8NOV24-70000-C",
"trade_seq": 113,
"mark_price": 0.03,
"order_id": "2899",
"matching_id": null,
"tick_direction": 2,
"combo_id": "BTC-CS-8NOV24-70000_72000",
"block_rfq_id": 1,
"api": true,
"contracts": 100,
"post_only": false,
"block_trade_id": "BLOCK-423",
"trade_id": "771",
"order_type": "limit",
"mmp": false,
"risk_reducing": false,
"reduce_only": false,
"block_trade_leg_count": 2,
"self_trade": false,
"fee_currency": "BTC",
"liquidity": "T"
},
{
"timestamp": 1730798381502,
"state": "filled",
"fee": 1.5e-7,
"amount": 100,
"direction": "sell",
"price": 69677.4,
"index_price": 70000,
"profit_loss": 0,
"instrument_name": "BTC-8NOV24-72000-C",
"trade_seq": 113,
"mark_price": 0.02,
"order_id": "2900",
"matching_id": null,
"tick_direction": 2,
"combo_id": "BTC-CS-8NOV24-70000_72000",
"block_rfq_id": 1,
"api": true,
"contracts": 100,
"post_only": false,
"block_trade_id": "BLOCK-423",
"trade_id": "772",
"order_type": "limit",
"mmp": false,
"risk_reducing": false,
"reduce_only": false,
"block_trade_leg_count": 2,
"self_trade": false,
"fee_currency": "BTC",
"liquidity": "T"
}
]
}
]
}
}ID of the Block RFQ
Maximum acceptable price for execution
This value multiplied by the ratio of a leg gives trade size on that leg. It represents the requested order size. For perpetual and inverse futures the amount is in USD units. For options and linear futures it is the underlying base currency coin.
Direction of the trade from the taker perspective
Direction: buy, or sell
buy, sell Hedge leg of the Block RFQ. There is only one hedge leg allowed per Block RFQ JSON string containing: instrument_name, direction, price, amount
List of legs used to trade Block RFQ
Specifies how long the order should remain active
fill_or_kill, good_til_cancelled "fill_or_kill"
Success response
The JSON-RPC version (2.0)
2.0 Hide child attributes
Hide child attributes
Block trade id
"154"
The timestamp (milliseconds since the Unix epoch)
1536569522277
Hide child attributes
Unique (per currency) trade identifier
The sequence number of the trade within instrument
Unique instrument identifier
"BTC-PERPETUAL"
The timestamp of the trade (milliseconds since the UNIX epoch)
1517329113791
Id of the user order (maker or taker), i.e. subscriber's order id that took part in the trade
Always null
Trade direction of the taker
buy, sell Direction of the "tick" (0 = Plus Tick, 1 = Zero-Plus Tick, 2 = Minus Tick, 3 = Zero-Minus Tick).
0, 1, 2, 3 Index Price at the moment of trade
The price of the trade
Trade amount. For perpetual and inverse futures the amount is in USD units. For options and linear futures it is the underlying base currency coin.
User's fee in units of the specified fee_currency
Currency, i.e "BTC", "ETH", "USDC"
BTC, ETH, USDC, USDT, EURR Order state: "open", "filled", "rejected", "cancelled", "untriggered" or "archive" (if order was archived)
open, filled, rejected, cancelled, untriggered, archive Mark Price at the moment of trade
Order type: "limit, "market", or "liquidation"
limit, market, liquidation Advanced type of user order: "usd" or "implv" (only for options; omitted if not applicable)
usd, implv Trade size in contract units (optional, may be absent in historical trades)
Option implied volatility for the price (Option only)
Underlying price for implied volatility calculations (Options only)
Optional field (only for trades caused by liquidation): "M" when maker side of trade was under liquidation, "T" when taker side was under liquidation, "MT" when both sides of trade were under liquidation
M, T, MT Describes what was role of users order: "M" when it was maker order, "T" when it was taker order
M, T User defined label (presented only when previously set for order by user)
Block trade id - when trade was part of a block trade
"154"
ID of the Block RFQ - when trade was part of the Block RFQ
ID of the Block RFQ quote - when trade was part of the Block RFQ
true if user order is reduce-only
true if user order is post-only
true if user order is MMP
true if user order is marked by the platform as a risk reducing order (can apply only to orders placed by PM users)
true if user order was created with API
Profit and loss in base currency.
Optional field containing leg trades if trade is a combo trade (present when querying for only combo trades and in combo_trades events)
Optional field containing combo instrument name if the trade is a combo trade
Optional field containing combo trade identifier if the trade is a combo trade
QuoteSet of the user order (optional, present only for orders placed with private/mass_quote)
QuoteID of the user order (optional, present only for orders placed with private/mass_quote)
List of allocations for Block RFQ pre-allocation. Each allocation specifies user_id, amount, and fee for the allocated part of the trade. For broker client allocations, a client_info object will be included.
Hide child attributes
Amount allocated to this user.
Fee for the allocated part of the trade.
User ID to which part of the trade is allocated. For brokers the User ID is obstructed.
Optional client allocation info for brokers.
Hide child attributes
ID of a client; available to broker. Represents a group of users under a common name.
ID assigned to a single user in a client; available to broker.
Name of the linked user within the client; available to broker.
The name of the application that executed the block trade on behalf of the user (optional).
"Example Application"
Broker code associated with the broker block trade.
"2krM7sJsx"
Name of the broker associated with the block trade.
"Test Broker"
The id that was sent in the request
Was this page helpful?