Skip to content

Preview what a rate change would do to the dashboard total.

POST
/api/exchange-rates/preview
curl --request POST \
--url https://api.tradr.cloud/api/exchange-rates/preview \
--header 'Content-Type: application/json' \
--data '{ "intent": "upsert", "rate": { "baseCurrency": "example", "effectiveDate": "2026-04-15", "quoteCurrency": "example", "rate": "example" } }'

Authed. Read-only — it stores nothing. Computes the converted total before and after a proposed rate upsert or deletion so the change can be confirmed before it is applied. exceedsThreshold marks a move large enough to be worth an explicit confirmation.

Media typeapplication/json
One of:
object
intent
required
string
Allowed values: upsert
rate
required
object
baseCurrency
required
string
>= 3 characters <= 3 characters
effectiveDate
required
string format: date
quoteCurrency
required
string
>= 3 characters <= 3 characters
rate
required
string

The before/after comparison.

Media typeapplication/json
object
afterTotal
string
nullable
beforeTotal
string
nullable
displayCurrency
string
nullable
exceedsThreshold
boolean
Examplegenerated
{
"afterTotal": "example",
"beforeTotal": "example",
"displayCurrency": "example",
"exceedsThreshold": true
}

Validation error.

The rate named for deletion does not exist.