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
Required permission
currencies:readApiAccessPermission::CURRENCIES_READQuery 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
Required permission
currencies:writeApiAccessPermission::CURRENCIES_WRITEQuery Parameters
fromCurrencystringRequiredThe source ISO currency code (e.g., EUR).
toCurrencystringRequiredThe target ISO currency code (e.g., USD).
Request Body
{
"amount": 100
}amountnumberThe 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}`);