API Documentation
The easiest way to integrate is exposing API endpoints (e.g. a FIX API) that WE can directly integrate with. This way, we do the work so you don't have to.
However, this page is aimed at technical teams looking to integrate directly with our API.
To provide basic Market Making capability with Mauve RFQ, we have 2 methods: Webhooks and Subscriptions.
Webhook
Webhooks are the simplest method for integrating with Mauve. In this setup, we "push" requests to Market Makers for quotes / orders.
You will need to provide us with your API Endpoint to be included in the RFQ.
Authentication
To secure external webhooks, we recommend using an IP Whitelist and/or a API key to secure your endpoints. Please get in touch to help set this up.
RFQ
Query:
query requestForQuote {
symbol # "BTC-USDC"
currency # BTC
orderQty # 0.5
price # 72000
}Response:
{
"data": {
"requestForQuote": {
"Symbol": "BTC-USDC",
"Currency": "BTC",
"RFQID": "8688ceab-ea67-416c-8ce1-9b63d6c0fe4e",
"QuoteID": "20e240c5-9a82-4731-809e-91b3a2bf2f49",
"SubmitTime": "2021-09-14T22:31:27.183751Z",
"OrderQty": "0.50000000",
"AmountCurrency": "USDC",
"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"
}
}
}New Order Single
mutation newOrderSingle {
symbol # BTC-USD
currency # BTC
orderQty # 0.5
expiresAt # 2021-09-14T22:31:27.204209Z
quoteId # 20e240c5-9a82-4731-809e-91b3a2bf2f49
side # Buy
}Response:
{
"data": {
"newOrderSingle": {
"Timestamp": "2021-09-14T22:26:44.505519Z",
"Symbol": "BTC-USD",
"OrderID": "b35b1c3b-a304-4224-919f-9db1319de188",
"ClOrdID": "d7635e40-15aa-11ec-b0a2-2554a9e1e7a4",
"SubmitTime": "2021-09-14T22:26:44.457050Z",
"Side": "Buy",
"OrderQty": "0.10000000",
"Currency": "BTC",
"AmountCurrency": "USDC"
}
}
}Websocket / Subscription
We can also push RFQ requests / Orders to you via websockets through graphql subscriptions.
https://api.rfq.mauve.co/api/graphql
To access the API you must provide your project's API Key as a header in every request. For example see line 2 of the cURL request below.
1curl -X POST https://api.rfq.mauve.co/api/graphql \
2-H 'apiKey: <API_KEY>' \
3-H 'Content-Type: application/json' \
4--data-raw '{"query": "{ ... }", "variables": { ... }}'
Full Documentation is coming soon. Please get in touch with us if you're interested in this method.
Last updated