Skip to main content

Get RFQ Details

Obtain historical inquiry details. Up to 50 requests per second

info
  • Obtain historical RFQ information queried from the database. There may be a delay.
  • If both rfqId and rfqLinkId are passed, only rfqId is considered.
  • Sorted in descending order by createdAt.

HTTP Request

GET/v5/rfq/rfq-detail-list

Request Parameters

ParameterRequiredTypeComments
rfqIdfalsestringInquiry ID
rfqLinkIdfalsestringCustom RFQ ID. Specifying rfqLinkId only queries data from the last 3 months
statusfalsestringStatus of the RFQ: Active PendingFill Canceled Filled Expired Failed
traderTypefalsestringTrader type: quote, request. Default: request
  • request: Inquiring party, queries RFQs sent by yourself
  • quote: Quoting party, queries RFQs received by yourself
startTimefalseintegerStart time in milliseconds
endTimefalseintegerEnd time in milliseconds
limitfalseintegerReturn the number of items. [1, 100]. Default: 50
cursorfalsestringFor page turning, use the returned cursor. Use the returned original data when signing, and URLEncode when sending the request

Response Parameters

ParameterTypeComments
resultobject
> cursorstringRefer to the cursor request parameter
> listarrayAn array of RFQs
>> rfqIdstringInquiry ID
>> rfqLinkIdstringCustom RFQ ID. Sensitive customer information, not publicly disclosed. Returns empty string for the quoting party
>> counterpartiesarray of stringsList of quoting parties
>> expiresAtstringThe inquiry's expiration time (ms)
>> strategyTypestringInquiry label
>> statusstringStatus of the RFQ: Active PendingFill Canceled Filled Expired Failed
>> acceptOtherQuoteStatusbooleanWhether to accept non-LP quotes. The default value is false. false: Default, do not accept non-LP quotes. true: Accept non-LP quotes
>> execQuoteIdstringReturned for filled RFQs. The executed quote ID
>> execQuoteSidestringReturned for filled RFQs. The executed quote direction: Buy or Sell
>> deskCodestringThe unique identification code of the inquiring party, not visible when anonymous is set to true
>> anonymousbooleanWhether the RFQ is anonymous
>> createdAtstringTime (ms) when the trade is created in epoch, such as 1650380963
>> updatedAtstringTime (ms) when the trade is updated in epoch, such as 1650380964
>> legsarray of objectsCombination transaction
>>> categorystringCategory. Valid values include: linear, option and spot
>>> symbolstringThe unique instrument ID
>>> sidestringInquiry direction. Valid values are Buy and Sell
>>> qtystringOrder quantity of the instrument
>> hedgearray of objectsDelta Hedge leg object
>>> categorystringProduct type. Only linear is supported initially (perpetual / linear delivery futures)
>>> symbolstringHedge contract name, e.g. BTCUSDT (perpetual) or BTC-27JUN25 (linear delivery futures). The underlying asset must match the main strategy legs. Cross-asset hedging is not supported
>>> sidestringInquiry transaction direction: Buy, Sell
>>> qtystringTrade quantity. If it exceeds the position size, the position will open in the reverse direction
>>> pricestringTaker's desired Delta Hedge execution price, passed to the market maker for reference only. The maker may override this price in create-quote. Price validation reuses the existing derivatives limit-price logic; out-of-range values are automatically corrected
>> quoteListarray of objectsList of active quotes. Only returned when traderType is request
>>> quoteIdstringQuote ID
>>> deskCodestringThe unique identification code of the quoting party, not visible when anonymous is set to true
>>> anonymousbooleanWhether the quote is anonymous
>>> statusstringStatus of the quote: Active PendingFill Canceled Filled Expired Failed
>>> createdAtstringTime (ms) when the quote is created in epoch, such as 1650380963
>>> updatedAtstringTime (ms) when the quote is updated in epoch, such as 1650380964
>>> expiresAtstringThe quote's expiration time (ms)
>>> quoteBuyListarray of objectsQuote Buy direction. Only returned when traderType is request
>>>> categorystringProduct type: spot, linear, option
>>>> symbolstringThe unique instrument ID
>>>> pricestringOrder price in the quote currency of the instrument
>>>> qtystringOrder quantity of the instrument
>>>> isHedgebooleanWhether this leg is a hedge leg
>>> quoteSellListarray of objectsQuote Sell direction. Only returned when traderType is request
>>>> categorystringProduct type: spot, linear, option
>>>> symbolstringThe unique instrument ID
>>>> pricestringOrder price in the quote currency of the instrument
>>>> qtystringOrder quantity of the instrument
>>>> isHedgebooleanWhether this leg is a hedge leg
>> tradeLegsarray of objectsTrade execution information. Only returns your own trade legs
>>> categorystringCategory. Valid values include: linear, option and spot
>>> orderIdstringBybit order ID
>>> symbolstringThe unique instrument ID
>>> sidestringDirection. Valid values are Buy and Sell
>>> pricestringExecution price
>>> qtystringExecution quantity
>>> markPricestringMark price at the time of execution. For spot: index price. For options: mark price of the underlying asset
>>> execFeestringThe fee for taker or maker in the base currency paid to the Exchange executing the Block Trade
>>> extraFeesstringAdditional fees
>>> execIdstringThe unique exec (trade) ID from the exchange
>>> resultCodeintegerThe status code of this order. 0 means success
>>> resultMessagestringError message for resultCode. Empty if resultCode is 0
>>> rejectPartystringEmpty if status is Filled. Taker or Maker if status is Rejected. bybit indicates an error on the Bybit side

Request Example

GET /v5/rfq/rfq-detail-list HTTP/1.1
Host: api-testnet.bybit.com
X-BAPI-API-KEY: xxxxxxxxxxxxxxxxxx
X-BAPI-TIMESTAMP: 1676430842094
X-BAPI-RECV-WINDOW: 5000
X-BAPI-SIGN: XXXXXX

Response Example

{
"retCode": 0,
"retMsg": "OK",
"result": {
"cursor": "",
"list": [
{
"rfqId": "1756885055799241492396882271696580",
"rfqLinkId": "V2-Integration-Test-RFQ",
"counterparties": ["SPMAKERTEST"],
"expiresAt": "1756885655801",
"strategyType": "custom",
"status": "Filled",
"acceptOtherQuoteStatus": false,
"execQuoteId": "1757405933130044334361923221559805",
"execQuoteSide": "Buy",
"deskCode": "1nu9d1",
"anonymous": false,
"createdAt": "1756885055801",
"updatedAt": "1756885655802",
"legs": [
{
"category": "option",
"symbol": "BTC-25JUL25-100000-C",
"side": "Buy",
"qty": "100"
}
],
"hedge": [
{
"category": "linear",
"symbol": "BTCUSDT",
"side": "Sell",
"qty": "46",
"price": "121500.0"
}
],
"quoteList": [
{
"quoteId": "1757405933130044334361923221559805",
"deskCode": "SPMAKERTEST",
"anonymous": false,
"status": "Filled",
"createdAt": "1757405933126",
"updatedAt": "1757405999156",
"expiresAt": "1757405993126",
"quoteBuyList": [
{
"category": "option",
"symbol": "BTC-25JUL25-100000-C",
"price": "1250.5",
"qty": "100",
"isHedge": false
},
{
"category": "linear",
"symbol": "BTCUSDT",
"price": "121500.0",
"qty": "46",
"isHedge": true
}
],
"quoteSellList": []
}
],
"tradeLegs": [
{
"category": "option",
"orderId": "1234567890123456789",
"symbol": "BTC-25JUL25-100000-C",
"side": "Buy",
"price": "1250.5",
"qty": "100",
"markPrice": "1248.0",
"execFee": "0.5",
"extraFees": "",
"execId": "abcdef1234567890abcdef",
"resultCode": 0,
"resultMessage": "",
"rejectParty": ""
}
]
}
]
},
"retExtInfo": {},
"time": 1756885352116
}