latestOpenAPI 3.1.02026-08-108094177.6 KB

087dcf516ce2

Managed Custody Mode

Execute FX

Convert one tokenized fiat balance into another inside the user's UR account. Requires a Live UR account; FX counts against the user's rolling 30-day CHF-denominated fiat limit. The response returns only a txHash; the transaction webhook with data.type FRX reports final settlement.

post/api/fma/v1/fx-exchange

Headers

X-Api-Signaturestring required

0x-prefixed 65-byte hex EIP-191 signature over the Partner Auth message. See the Signature and verify guide.

X-Api-Deadlinestring required

Unix seconds. UR rejects the request when the current time is past the deadline. Keep the validity window at or under 5 minutes.

X-Api-PublicKeystring required

0x-prefixed partner signer address registered with UR.

X-Ur-Idstring

Send at least one of X-Ur-Id or X-External-User-Id. When both are present, UR resolves the user by X-Ur-Id first.

X-External-User-Idstring

Send at least one of X-Ur-Id or X-External-User-Id. When both are present, UR resolves the user by X-Ur-Id first.

Request body

reqIdstring required

Partner-supplied idempotency key. Keep it stable across retries of the same logical operation.

fromCurrencystring required

Input fiat currency symbol.

toCurrencystring required

Output fiat currency symbol.

amountstring required

Amount to convert, as a human-readable decimal string.

amountOutMinimumstring

Slippage protection lower bound. If omitted, UR applies a default 0.5% slippage buffer based on the submitted amount.

Response

Standard envelope. Business errors return HTTP 200 with a non-zero code.

codeinteger required

0 on success; non-zero business error code.

messagestring required

Human-readable explanation. May be empty on success.