Authenticated channel. Connect to: wss://wss.prime.kraken.com/ws/v1
Request stream of Quotes. All quote responses are sent as Quote updates. To request a quote, send a QuoteRequest message. The server responds with one or many Quote messages as the streaming prices update.
Subscribe Request
Request ID - will be echoed back in the response structure.
Request type. Value: subscribe
Array containing the Quote stream configuration. Subscription name. Value: Quote
If provided, the subscription will return quotes for rfqs that were submitted after this time.
If provided, the subscription will return quotes for rfqs that were submitted before this time.
If provided, Symbol of the security to filter quotes for.
If provided, filter by RFQID.
{
"reqid" : 6 ,
"type" : "subscribe" ,
"streams" : [
{
"name" : "Quote" ,
"StartDate" : "2021-09-14T00:00:00.000000Z"
}
]
}
Response
A number that relates this response to a request.
The type of message sent.
An ISO-8601 UTC string of the form 2019-02-13T05:17:32.000000Z.
If this is initial data for a request, the initial flag will be set.
The sequence number for this response per request.
“Update” or “Remove” - tells the client if the given entity should be removed or added/updated.
Array of Quote data. Timestamp of the message.
Symbol of the order security.
Server-assigned RFQID. Present from PendingNew onward.
Client assigned Quote Req ID for the quote request.
Status of the quote. Possible values: PendingNew, Open, PendingCancel, Canceled, PendingFill, Filled, Rejected
Server assigned ID for this quote update.
Quote request reject reason, specified when QuoteStatus is Rejected.
Time of original quote request submission.
Quote side. Possible values: Buy, Sell
The price of the trade if the quote is filled.
The quantity of the trade if the quote is filled.
The amount of the trade if the quote is filled.
Bid quote amount in units of AmountCurrency.
Offer quote amount in units of AmountCurrency.
Expire time for the current streaming quote. Present on Open updates with live bid/offer prices.
The customer user associated with this quote.
Market account associated with this quote.
{
"reqid" : 9 ,
"type" : "Quote" ,
"ts" : "2021-09-14T22:31:27.214025Z" ,
"initial" : false ,
"seqNum" : 3 ,
"data" : [
{
"Timestamp" : "2021-09-14T22:31:27.204209Z" ,
"Symbol" : "BTC-USD" ,
"Currency" : "BTC" ,
"RFQID" : "8688ceab-ea67-416c-8ce1-9b63d6c0fe4e" ,
"QuoteReqID" : "7feb22f0-15ab-11ec-b0a2-2554a9e1e7a4" ,
"QuoteStatus" : "Open" ,
"QuoteID" : "20e240c5-9a82-4731-809e-91b3a2bf2f49" ,
"SubmitTime" : "2021-09-14T22:31:27.183751Z" ,
"OrderQty" : "0.30000000" ,
"AmountCurrency" : "USD" ,
"EndTime" : "2021-09-14T22:31:42.183751Z" ,
"BidPx" : "46836.27" ,
"BidAmt" : "14050.88" ,
"OfferPx" : "46879.47" ,
"OfferAmt" : "14063.85" ,
"ValidUntilTime" : "2021-09-14T22:31:28.204209Z" ,
"CustomerUser" : "tom@company.com"
}
]
}
RFQ workflow
A typical RFQ flow looks like this:
Subscribe to the Quote stream.
Send a Quote Request to open an RFQ and receive streaming prices.
When ready to trade, send a New Order Single with OrdType set to RFQ and QuoteID and RFQID from the latest Open quote update. See the RFQ Example tab on that page.
Monitor fills on the Execution Report and Trade streams.
To cancel an open quote without trading, use Quote Cancel Request .