Integrate anonymous cryptocurrency exchange into your application. Access real-time rates, create transactions, and manage swaps programmatically.
https://moneroswapper.com/api/v2
The MoneroSwapper API uses API keys to authenticate requests. You can obtain an API key by registering for an
affiliate account.
Include your API key in the X-API-Key header of each request.
Public endpoints (/currencies and /rate) do not require authentication.
Rate limits are applied per API key (or per IP for public endpoints). Exceeding the limit returns a 429 Too Many Requests response.
| Endpoint | Limit |
|---|---|
GET /currencies, GET /rate |
60 requests / min |
POST /transactions |
30 requests / min |
GET /transactions, GET /transactions/{id} |
120 requests / min |
The API uses standard HTTP status codes. Errors return a JSON object with a message field describing the issue.
| Code | Description |
|---|---|
200 | Success |
400 | Bad Request — Missing or invalid parameters |
401 | Unauthorized — Invalid or missing API key |
404 | Not Found — Resource does not exist |
429 | Too Many Requests — Rate limit exceeded |
500 | Internal Server Error |
/currencies
Public
List all available cryptocurrencies for exchange. Returns paginated results with coin code, name, icon URL, and network notes.
| Name | Type | Required | Description |
|---|---|---|---|
page | number | No | Page number (default: 1) |
size | number | No | Results per page (default: 50) |
search | string | No | Filter by coin name or code |
/rate
Public
Get the current exchange rate for a trading pair. Returns the estimated output amount, rate, and min/max limits.
| Name | Type | Required | Description |
|---|---|---|---|
coinFrom | string | Yes | Source currency code (e.g. "BTC") |
coinTo | string | Yes | Destination currency code (e.g. "XMR") |
amount | number | Yes | Amount to exchange |
networkFrom | string | No | Source network (if coin has multiple) |
networkTo | string | No | Destination network |
rateType | string | No | "float" (default) or "fixed" |
/transactions
Auth Required
Create a new exchange transaction. Returns the transaction details including the deposit address where funds should be sent.
| Name | Type | Required | Description |
|---|---|---|---|
coinFrom | string | Yes | Source currency code |
coinTo | string | Yes | Destination currency code |
networkFrom | string | Yes | Source network |
networkTo | string | Yes | Destination network |
amount | number | Yes | Amount to exchange |
withdrawalAddress | string | Yes | Destination wallet address |
rateType | string | No | "float" (default) or "fixed" |
refundAddress | string | No | Refund address if exchange fails |
/transactions
Auth Required
List your exchange transactions. Returns paginated results sorted by creation date (newest first).
| Name | Type | Required | Description |
|---|---|---|---|
page | number | No | Page number (default: 1) |
size | number | No | Results per page (default: 20) |
dateFrom | string | No | Filter from date (ISO 8601) |
dateTo | string | No | Filter to date (ISO 8601) |
/transactions/{id}
Auth Required
Get the details and current status of a specific exchange transaction.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | Transaction ID |
wait
— Awaiting deposit
confirmation
— Confirming
exchanging
— Processing
success
— Complete
overdue
— Expired
refunded
— Refunded