The Currency API manages everything related to currencies and exchange rates in the SoftwareOne Marketplace.
With this API, you can define currencies, create currency pairs (for example, EUR: USD), and define and manage exchange rates for those pairs. You can also perform additional operations, including:
- Updating the currency to modify fields like name, code, and precision (not status).
- Delete a currency (only if not used by a pair), currency pair, or rate.
- Modify the
externalIdandnoteswithin a currency pair. - Modify the currency rate, for example, to override a rate for hedging.
Review the shared API docs before you work with currency resources.
The Currency API is built around the following core resources:
- Currency – Represents the
currencythat sellers use to invoice their products. - Pairs – Represents a currency pair, for example
GBP:EUR. - Rates – Represent an exchange rate between two currencies, used by sellers to invoice their products.
The API is organized into collections, each containing a set of operations. Access to these operations varies by role, depending on whether you are a client, vendor, or operations user.
See the following sections to determine which roles are authorized to perform specific operations within each collection:
| Operation | Method | Description | Access |
|---|---|---|---|
| Create currency | POST | Creates a new currency. | ops, exchange-module |
| List currencies | GET | Gets a list of currencies. | vendor, client, ops |
| Get currency by id | GET | Gets currency details. | vendor, client, ops |
| Modify currency | PUT | Modifies an existing currency. | ops, exchange-module |
| Delete currency | DELETE | Changes a currency’s status to deleted. | ops, exchange-module |
| Operation | Method | Description | Access |
|---|---|---|---|
| Create currency pair | POST | Creates matched pairs. | ops, exchange-module |
| List currency pairs | GET | Gets a list of pairs. | vendor, client, ops |
| Get currency pair by id | GET | Gets pair details. | vendor, client, ops |
| Update currency pairs | PUT | Modifies pairs. | ops, exchange-module |
| Delete currency pairs | DELETE | Modifies the status of pairs to deleted. | ops, exchange-module |
| Operation | Method | Description | Access |
|---|---|---|---|
| Bulk create rates | POST | Creates matched rates. | ops, exchange-module |
| List rates | GET | Gets a list of rates between two currencies. | vendor, client, ops |
| Get rate by id | GET | Gets a specific rate between two currencies at a given point in time. | vendor, client, ops |
| Bulk update rates | PUT | Modifies matched rates. | ops, exchange-module |
| Bulk delete rates | DELETE | Modifies the status of matched rates to deleted. | ops, exchange-module |