Skip to main content
POST
Bulk upsert exchange rates
This endpoint requires authentication. Include your Bearer token in the Authorization header.

Description

POST /currencies/exchange-rates/bulk Accepts up to 500 rate rows per request. All rows are validated up-front (any invalid row aborts the whole request with per-row error detail before any writes happen). For rows matching an existing (TenantId, source, base, quoted, period) key, conflictStrategy controls whether the existing row is overwritten or skipped; everything else is inserted. Runs inside a single transaction. Authorization: admin or higher (requireAdmin).

Code Examples

Authorizations

Authorization
string
header
required

JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"

Body

application/json
rates
object[]
required
Required array length: 1 - 500 elements
conflictStrategy
enum<string>
default:overwrite
Available options:
overwrite,
skip

Response

Bulk import processed

status
string
Example:

"success"

message
string
Example:

"Bulk import complete: 2 created, 0 updated, 0 skipped"

data
object