Get trade quote Run in API Explorer

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://docs.staging.lumetrade.com/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "Lumetrade Staging API MCP server": {
    "url": "https://docs.staging.lumetrade.com/mcp"
  }
}

Close
POST /api/v1/trades/quote

Requests an RFQ quote for the authenticated API key owner.

Headers

  • X-API-KEY string Required

    Public API key issued from the Lumetrade API key management flow.

  • X-API-SECRET string Required

    API secret paired with the public API key.

application/json

Body Required

  • fromAmount number

    How much the customer wants to send or pay. Provide either fromAmount or toAmount, not both.

  • toAmount number

    How much the customer wants to receive. Provide either toAmount or fromAmount, not both.

  • fromCurrency string

    Currency the customer is sending or paying with.

  • toCurrency string

    Currency the customer wants to receive.

  • quoteIntent string

    Use client_linked when the customer may confirm this quote. Use indicative when the customer only needs a preview price.

    Format should match the following pattern: (?i)indicative|client_linked. Values are indicative or client_linked.

Responses

  • 200 application/json

    Quote returned successfully

  • 400 application/json

    Request validation failed

    Hide response attributes Show response attributes object
    • code integer(int32)
    • message string
    • httpStatus integer(int32)
    • requestId string
    • timestamp string(date-time)
    • errors array[object]
      Hide errors attributes Show errors attributes object
      • field string
      • message string
  • 403 application/json

    Authenticated API key is not allowed to perform this action

    Hide response attributes Show response attributes object
    • code integer(int32)
    • message string
    • httpStatus integer(int32)
    • requestId string
    • timestamp string(date-time)
    • errors array[object]
      Hide errors attributes Show errors attributes object
      • field string
      • message string
  • 429 application/json

    Cloudflare API rate limit exceeded

    Hide response attributes Show response attributes object
    • error string
    • message string
  • 401 application/json

    API key authentication failed

    Hide response attributes Show response attributes object
    • code integer(int32)
    • message string
    • httpStatus integer(int32)
    • requestId string
    • timestamp string(date-time)
    • errors array[object]
      Hide errors attributes Show errors attributes object
      • field string
      • message string
  • 500 application/json

    Unexpected server error

    Hide response attributes Show response attributes object
    • code integer(int32)
    • message string
    • httpStatus integer(int32)
    • requestId string
    • timestamp string(date-time)
    • errors array[object]
      Hide errors attributes Show errors attributes object
      • field string
      • message string
POST /api/v1/trades/quote
curl \
 --request POST 'https://api.staging.lumetrade.com/api/v1/trades/quote' \
 --header "Content-Type: application/json" \
 --header "X-API-KEY: string" \
 --header "X-API-SECRET: string" \
 --data '"{\n  \"fromAmount\": 100,\n  \"fromCurrency\": \"ZAR\",\n  \"toCurrency\": \"BTC\",\n  \"quoteIntent\": \"client_linked\"\n}"'
Request examples
Quote by send amount
{
  "fromAmount": 100,
  "fromCurrency": "ZAR",
  "toCurrency": "BTC",
  "quoteIntent": "client_linked"
}
Quote by receive amount
{
  "toAmount": 1840,
  "fromCurrency": "USDT",
  "toCurrency": "ZAR",
  "quoteIntent": "client_linked"
}
Response examples (200)
{}
Response examples (400)
{
  "httpStatus": 400,
  "errors": [],
  "timestamp": "2026-01-01T00:00:00Z",
  "code": 400,
  "message": "Request validation failed",
  "requestId": "req_01HY0000000000000000000000"
}
Response examples (403)
{
  "httpStatus": 403,
  "errors": [],
  "timestamp": "2026-01-01T00:00:00Z",
  "code": 403,
  "message": "Authenticated API key is not allowed to perform this action",
  "requestId": "req_01HY0000000000000000000000"
}
Response examples (429)
{
  "error": "rate_limit_exceeded",
  "message": "API rate limit exceeded"
}
Response examples (401)
{
  "httpStatus": 401,
  "errors": [],
  "timestamp": "2026-01-01T00:00:00Z",
  "code": 401,
  "message": "API key authentication failed",
  "requestId": "req_01HY0000000000000000000000"
}
Response examples (500)
{
  "httpStatus": 500,
  "errors": [],
  "timestamp": "2026-01-01T00:00:00Z",
  "code": 500,
  "message": "Unexpected server error",
  "requestId": "req_01HY0000000000000000000000"
}