Exchange Rates API Documentation
Access real-time exchange rates for currencies & crypto. This API provides accurate, up-to-date rates for integrating into your financial applications.
Below are the endpoints for accessing exchange rates. Learn how to integrate the API into your application.
Route Parameters:
- :region *Please check location table here
(e.g., "SOUTH|ARAB|EAST|NORD").
Response based on params:
{
"success": true,
"data": {
"rates": {
"USD": 1,
"INR": 83.540592,
"JPY": 143.662125,
"BTC": 0.000015737383
},
"crypto": {
"BTC": 63478.467340116214,
"DOGE": 0.012578131058644222
},
"commodity": {
"HEUSX": 91.275,
"ZCUSX": 415.5,
"ALIUSD": 2540.75,
"ZOUSX": 326.5,
"PLUSD": 1363.2,
"ZMUSD": 292.9,
"GCUSD": 3412.1,
"ZLUSX": 54.88,
"KEUSX": 522.5,
"SILUSD": 38.905,
"HGUSD": 4.4815,
"MGCUSD": 3412.1,
"SBUSX": 16.44,
"SIUSD": 38.905,
"CTUSX": 67.73,
"ZSUSX": 1056.5,
"LBUSD": 659,
"LEUSX": 240.1,
"NGUSD": 2.765,
"CLUSD": 63.68,
"OJUSX": 243.3,
"KCUSX": 378,
"PAUSD": 1134.5,
"GFUSX": 362.325,
"ZRUSD": 11.865,
"CCUSD": 7781,
"BZUSD": 67.74,
"DCUSD": 18.22,
"RBUSD": 1.9866,
"HOUSD": 2.3068
}
}
}GET
This endpoint provides the current exchange rates for the requested currencies.
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.databind.ObjectMapper;
public class ApiClient {
private static final String BASE_URL = "https://exchangegrid.api.mapwale.com/v1";
public static void main(String[] args) {
try {
String result = fetchData();
System.out.println(result);
} catch (Exception e) {
e.printStackTrace();
}
}
private static String fetchData() throws Exception {
// Create HTTP client
HttpClient client = HttpClient.newHttpClient();
ObjectMapper mapper = new ObjectMapper();
// Build URL
Map<String, String> params = new HashMap<>();
params.put("region", "YOUR_REGION"); // Replace with actual region value
StringBuilder urlBuilder = new StringBuilder(BASE_URL);
["region"].forEach(param ->
urlBuilder.append("/").append(params.get(param))
);
// Add query parameters
Map<String, String> queryParams = {"show":"all","list":"USD,INR,JPY,BTC,DOGE"};
urlBuilder.append("?");
queryParams.forEach((key, value) ->
urlBuilder.append(key).append("=").append(value).append("&")
);
// Create request
HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
.uri(URI.create(urlBuilder.toString()))
.header("Content-Type", "application/json")
if ("GET".equals("POST") || "GET".equals("PUT")) {
requestBuilder.method("GET",
HttpRequest.BodyPublishers.ofString(
mapper.writeValueAsString({})
)
);
} else {
requestBuilder.method("GET", HttpRequest.BodyPublishers.noBody());
}
// Send request
HttpResponse<String> response = client.send(
requestBuilder.build(),
HttpResponse.BodyHandlers.ofString()
);
if (response.statusCode() >= 400) {
throw new RuntimeException("HTTP error! status: " + response.statusCode());
}
return response.body();
}
}Query Parameters:
- authorization *Specify authorization for site
(e.g., authorization="<API-KEY>"). - show Specify which rates to show
(e.g., show="all"|"currency"|"crypto"|"commodity"). - list Comma-separated list of currency codes
(e.g., list="USD,INR,BTC").
List parameter for Currency Rates
List parameter for Crypto Rates
List parameter for Commodity Rates
