Our Currency Conversion API delivers real-time, accurate exchange rate data, allowing you to seamlessly integrate financial transactions and enhance your applications.
Take advantage of our free tier to start using the API with no upfront costs.
{ "valid": "", "updated": "", "base": "USD", "rates": { "EUR": "Try it below", "GBP": "Try it below", "CAD": "Try it below", ... 149 more } }
Join 10,000+ customers enjoying our service:
{
"valid": true,
"updated": 1729271702,
"base": "USD",
"rates": {
"AED": 3.67300014,
"AFN": 65.4656341,
"ALL": 91.15,
"AMD": 387.25,
"ANG": 1.80121633,
//... loads more
"ZMW": 26.5779954
}
}
<root>
<valid>true</valid>
<updated>1729271702</updated>
<base>USD</base>
<rates>
<AED>3.67300014</AED>
<AFN>65.4656341</AFN>
<ALL>91.15</ALL>
<AMD>387.25</AMD>
<ANG>1.80121633</ANG>
//... loads more
<ZMW>26.5779954</ZMW>
</rates>
</root>
Access live exchange rates for 152 currencies in JSON or XML. See the example outputs on the left to get a feel for the data structure.
Get real-time currency rates for 152 currencies, cryptocurrencies, and metals, always up-to-date.
Flexible response formats to easily integrate with your system.
Access historical currency rates up to a year in one simple request.
Our API provides one of the fastest response times in the industry.
Retrieve live currency rates based on a specified base currency.
Convert amounts between specified currencies on the fly.
Get historical rates for a single day.
Retrieve historical rates data over a range of dates.
Get a comprehensive list of all 152 supported currencies, cryptos, and metals.
Integrate our Currency Conversion API effortlessly into your applications using our comprehensive documentation and SDKs.
We have SDKs for Python, GoLang, NodeJs, and PHP (Ruby and Java coming soon).
Whether you're building a web app, mobile app, or any other platform, our SDKs simplify the process, allowing you to focus on developing features rather than handling API requests.
Graph created using our timeframe endpoint
Utilize our historical data to track currency trends over time, perform comparative analyses, and integrate insightful analytics into your applications.
Whether you're developing financial tools, dashboards, or conducting market research, our API provides the data you need.
Explore DocumentationJoin over 10,000 customers who rely on our robust Currency API infrastructure. Our system currently handles over 50 million monthly requests with lightning-fast response times, ensuring your applications run smoothly and efficiently.
Our API ensures high availability and low latency across 330 edge locations worldwide. Trust in our platform to deliver consistent performance and reliability, no matter where your users are.
Leveraging a global network to ensure optimal performance and reliability.
Trusted by thousands of developers and businesses worldwide.
Handling massive traffic volumes with ease and efficiency.
Providing swift data retrieval for seamless user experiences.
Our Currency API supports 152 currencies, including major fiat currencies, leading cryptocurrencies, and precious metals. Explore some of the most popular currencies below or view the complete list.
Integrate our Currency Conversion API effortlessly into your applications. Choose your preferred programming language below to view example code snippets and access comprehensive tutorials.
curl --location --request GET 'https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&base=GBP&output=JSON'
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&output=JSON',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
const request = require('request');
const options = {
method: 'GET',
url: 'https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&output=JSON',
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&output=JSON"
response = requests.get(url)
print(response.text)
require 'uri'
require 'net/http'
url = URI('https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&output=JSON')
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Get.new(url)
response = https.request(request)
puts response.read_body
Unirest.setTimeouts(0, 0);
HttpResponse response = Unirest.get("https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&output=JSON")
.asString();
System.out.println(response.getBody());
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&output=JSON"
method := "GET"
client := &http.Client{}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
return
}
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var settings = {
"url": "https://currencyapi.net/api/v1/rates?key=YOUR_API_KEY&output=JSON",
"method": "GET",
"timeout": 0,
};
$.ajax(settings).done(function (response) {
console.log(response);
});
Our plans offer a comprehensive set of features designed to provide you with accurate and real-time currency data. Perfect for integrating into your applications and scaling your financial operations.
Don't just take our word for it—see how our customers are leveraging our API to streamline their operations and boost their success.
"Your Currency Conversion API has seamlessly integrated into our systems, providing real-time data that enhances our financial operations. Exceptional reliability and support!"
Oliver Lynch
CTO at MachineCo
"Integrating your Currency API was a breeze. The documentation is thorough, and the support team is always ready to help. Highly recommend to our development team!"
Afaan Ashiq
Tech Lead at Nate
"The real-time currency data has been invaluable for our financial applications. The Currency API is lightning fast, reliable, and easy to use. We're thrilled with the results!"
Peter Dudbridge
Head of Engineering at Jua.ai
Below are some of our most asked questions. Get in touch if you have more questions.
Our API documentation page has sample data returned from our APIs in both JSON and XML formats. Developers can use this to start planning the returned response before even signing up.
Yes, we offer a free version of our API for personal projects only. This free version allows access to our rates endpoint, updated every hour. Please note that we do not allow commercial use on our free account. For commercial use, please refer to our terms here.
Absolutely. We provide example code for each of our endpoints on a variety of languages. You can find this sample code on our documentation page. Programming languages we provide sample of code includes; Python, NodeJs, PHP, Go, Curl, etc. It’s as simple as copy and paste.
We have created a downloadable postman collection for our CurrencyApi. All you need to get started is an API key for our service, which is provided after signup. Just replace our placeholder API key with your own API key and away you go.
The rate in which our data is updated depends on the plan you are subscribed to. Currency rates are updated every:
Our data comes from various reputable finance sources. We have backup sources to prevent a single point of failure and have automation checks on this data to ensure accuracy.
Availability of our application is extremely important to us. We closely monitor the status of our API's and are proud to average around 100% (99.9%) uptime based on the last year. You can find more information about the uptime of our API's here.
CurrencyApi.net covers real time and historical exchange rates on 152 currencies, including some cryptocurrencies and precious metals. You can find a full list of the currencies we support here.
Our payments and subscriptions are processed via Stripe, a well-known international payment provider. And therefore, we accept most international credit/debit cards, including; Visa, Mastercard, American Express and more. You can easily update your payment method at any point in the account dashboard. In occasion, we can also accept bank transfer, but please get in contact with us if you require this.
Yes, you can cancel your subscription at any time. Just get in touch with us. Alternatively, you can easily change between your subscription plans via the account section of our website.