Requests a currency conversion quote for the authenticated API key owner.
Headers
-
Public API key issued from the Lumepay API key management flow.
-
API secret paired with the public API key.
Body
Required
-
How much the customer wants to send or pay. Provide either fromAmount or toAmount, not both.
-
How much the customer wants to receive. Provide either toAmount or fromAmount, not both.
-
Currency the customer sends or pays with.
-
Currency the customer wants to receive.
-
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 areindicativeorclient_linked.
POST
/api/v1/conversions/quote
curl \
--request POST 'https://api.staging.lumepay.com/api/v1/conversions/quote' \
--header "Content-Type: application/json" \
--header "X-API-KEY: string" \
--header "X-API-SECRET: string" \
--data '"{\n \"fromAmount\": 1850,\n \"fromCurrency\": \"ZAR\",\n \"toCurrency\": \"USD\",\n \"quoteIntent\": \"client_linked\"\n}"'
Request examples
Request a quote using fromAmount, for example spend 1850 ZAR
Quote by send amount
{
"fromAmount": 1850,
"fromCurrency": "ZAR",
"toCurrency": "USD",
"quoteIntent": "client_linked"
}
Quote by receive amount
{
"toAmount": 100,
"fromCurrency": "ZAR",
"toCurrency": "USD",
"quoteIntent": "client_linked"
}
Response examples (200)
{}
Response examples (400)
{
"httpStatus": 400,
"requestId": "req_01HY0000000000000000000000",
"message": "Request validation failed",
"code": 400,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}
Response examples (429)
{
"error": "rate_limit_exceeded",
"message": "API rate limit exceeded"
}
Response examples (403)
{
"httpStatus": 403,
"requestId": "req_01HY0000000000000000000000",
"message": "Authenticated API key is not allowed to perform this action",
"code": 403,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}
Response examples (500)
{
"httpStatus": 500,
"requestId": "req_01HY0000000000000000000000",
"message": "Unexpected server error",
"code": 500,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}
Response examples (401)
{
"httpStatus": 401,
"requestId": "req_01HY0000000000000000000000",
"message": "API key authentication failed",
"code": 401,
"timestamp": "2026-01-01T00:00:00Z",
"errors": []
}