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