Donutwork Docs

Currency

Access organizational currency settings and perform cross-currency conversions using real-time market data.

Currency

The Currency API provides programmatic access to platform-supported monetary denominations and enables precision-grade currency conversion based on Donutwork's centralized exchange data.


List Enabled Currencies

Retrieve the full collection of ISO 4217 currency codes supported by the platform.

GET
/2026-02-01/currencies.json
Required permissioncurrencies:readApiAccessPermission::CURRENCIES_READ

Query Parameters

No query parameters required.

Responses

List of supported ISO 4217 currency codes (uppercase).

[
  "EUR",
  "USD",
  "GBP"
]

Technical Implementation

curl --location --request GET \
'https://api.hub.donutwork.com/2026-02-01/currencies.json' \
--header 'Authorization: Bearer YOUR_API_KEY'
const currencies = await sdk.currency.list();
console.table(currencies);

Perform Currency Conversion

Execute a real-time conversion between two supported currencies.
The response field amount is the converted value, not the original request amount.

POST
/2026-02-01/currencies/{fromCurrency}/{toCurrency}.json
Required permissioncurrencies:writeApiAccessPermission::CURRENCIES_WRITE

Query Parameters

fromCurrencystringRequired
The source ISO currency code (e.g., EUR).
toCurrencystringRequired
The target ISO currency code (e.g., USD).

Request Body

JSON
{
  "amount": 100
}
amountnumber
The monetary value to be converted. Defaults to `0` when omitted.

Responses

Conversion successfully processed.

{
  "from": "EUR",
  "to": "USD",
  "rate": 1.085,
  "amount": 108.5
}

Unsupported base or destination currency code.

{
  "error": "Invalid currency passed"
}

Technical Implementation

curl --location --request POST \
'https://api.hub.donutwork.com/2026-02-01/currencies/EUR/USD.json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data '{"amount": 100}'
const conversion = await sdk.currency.convert("EUR", "USD", 100);
console.log(`Converted: ${conversion.amount} ${conversion.to} @ rate ${conversion.rate}`);

On this page