Interest Rate API


The Interest Rate API provides current central bank interest rates for over 2 dozen countries as well as all major benchmark interest rates such as LIBOR, EURIBOR, and SOFR.

These rates are updated by their respective authorities daily, and thus our data is updated daily.

/v1/interestrate

HTTP GET

Returns current interest rates for all major central banks and benchmarks.

The following rates are available:

Benchmark (non-central bank) rates

  • USD LIBOR - overnight

  • USD LIBOR - 1 month premium only

  • USD LIBOR - 3 months premium only

  • USD LIBOR - 6 months premium only

  • USD LIBOR - 12 months premium only

  • Euribor - 1 week

  • Euribor - 1 month premium only

  • Euribor - 3 months premium only

  • Euribor - 6 months premium only

  • Euribor - 12 months premium only

  • ESTER

  • SONIA

  • SARON

  • TONAR

  • SOFR premium only

  • SOFR 30 day average premium only

  • SOFR 90 day average premium only

  • SOFR 180 day average premium only


Central bank rates

  • Australia (Reserve Bank of Australia)

  • Brazil (Central Bank of Brazil)premium only

  • Canada (Bank of Canada)premium only

  • China (People's Bank of China)

  • Czech Republic (Czech National Bank)

  • Denmark (Danmarks Nationalbank)

  • Europe (European Central Bank)premium only

  • Hungary (Hungarian National Bank)premium only

  • India (Indian Central Bank)premium only

  • Israel (Bank of Israel)premium only

  • Mexico (Bank of Mexico)

  • New Zealand (Reserve Bank of New Zealand)

  • Norway (Norges Bank)

  • Poland (Narodowy Bank Polski)

  • Russia (Central Bank of Russia)

  • South Africa (South African Reserve Bank)premium only

  • South Korea (Bank of Korea)premium only

  • Sweden (Sveriges Riksbank)

  • Switzerland (Swiss National Bank)

  • Türkiye (Central Bank of the Republic of Türkiye)

  • United Kingdom (Bank of English)

  • United States (American Federal Reserve)premium only

Parameters

name (optional) - name of central bank or interest rate. Partial matching is supported (e.g. libor will match USD LIBOR - 1 month, GBP LIBOR - 1 month, etc.).

country (optional) - name of country (case-insensitive).

central_bank_only (optional) - only show central bank interest rates (filters out non-central bank rates like LIBOR, EURIBOR, etc.). Must be either true or false. If unset, default value of false will be used.

Headers

X-Api-Key (required) - API Key associated with your account.

Sample Request URL

Live Demo!

https://api.api-ninjas.com/v1/interestrate?name=

Sample Response

{
  "central_bank_rates": [],
  "non_central_bank_rates": [
    {
      "name": "Euribor - 1 week",
      "rate_pct": -0.081,
      "last_updated": "07-28-2022"
    },
    {
      "name": "Euribor - 1 month",
      "rate_pct": -0.035,
      "last_updated": "07-28-2022"
    },
    ...
  ]
}

import requests

api_url = 'https://api.api-ninjas.com/v1/interestrate'
response = requests.get(api_url, headers={'X-Api-Key': 'YOUR_API_KEY'})
if response.status_code == requests.codes.ok:
    print(response.text)
else:
    print("Error:", response.status_code, response.text)
$.ajax({
    method: 'GET',
    url: 'https://api.api-ninjas.com/v1/interestrate',
    headers: { 'X-Api-Key': 'YOUR_API_KEY'},
    contentType: 'application/json',
    success: function(result) {
        console.log(result);
    },
    error: function ajaxError(jqXHR) {
        console.error('Error: ', jqXHR.responseText);
    }
});
const request = require('request');

request.get({
  url: 'https://api.api-ninjas.com/v1/interestrate',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY'
  },
}, function(error, response, body) {
  if(error) return console.error('Request failed:', error);
  else if(response.statusCode != 200) return console.error('Error:', response.statusCode, body.toString('utf8'));
  else console.log(body)
});
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

import com.fasterxml.jackson.databind.ObjectMapper;

URL url = new URL("https://api.api-ninjas.com/v1/interestrate");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestProperty("accept", "application/json");
InputStream responseStream = connection.getInputStream();
ObjectMapper mapper = new ObjectMapper();
JsonNode root = mapper.readTree(responseStream);
System.out.println(root.path("fact").asText());
let url = URL(string: "https://api.api-ninjas.com/v1/interestrate"!)!
var request = URLRequest(url: url)
request.setValue("YOUR_API_KEY", forHTTPHeaderField: "X-Api-Key")
let task = URLSession.shared.dataTask(with: request) {(data, response, error) in
    guard let data = data else { return }
    print(String(data: data, encoding: .utf8)!)
}
task.resume()
If your programming language is not listed in the Code Example above, you can still make API calls by using a HTTP request library written in your programming language and following the above documentation.

/v1/interestratehistorical Developer and Business tier only

HTTP GET

Returns historical interest rates for specific central banks or benchmark rates. You can specify a time range to retrieve data from. The maximum number of data points returned per API call is 100.

The following rates are available:

Benchmark (non-central bank) rates

  • USD LIBOR - overnight

  • USD LIBOR - 1 month

  • USD LIBOR - 3 months

  • USD LIBOR - 6 months

  • USD LIBOR - 12 months

  • Euribor - 1 week

  • Euribor - 1 month

  • Euribor - 3 months

  • Euribor - 6 months

  • Euribor - 12 months

  • ESTER

  • SONIA

  • SARON

  • TONAR

  • SOFR


Central bank countries

  • Australia (Reserve Bank of Australia)

  • Brazil (Central Bank of Brazil)

  • Canada (Bank of Canada)

  • China (People's Bank of China)

  • Czech Republic (Czech National Bank)

  • Denmark (Danmarks Nationalbank)

  • Europe (European Central Bank)

  • Hungary (Hungarian National Bank)

  • India (Indian Central Bank)

  • Israel (Bank of Israel)

  • Mexico (Bank of Mexico)

  • New Zealand (Reserve Bank of New Zealand)

  • Norway (Norges Bank)

  • Poland (Narodowy Bank Polski)

  • Russia (Central Bank of Russia)

  • South Africa (South African Reserve Bank)

  • South Korea (Bank of Korea)

  • Sweden (Sveriges Riksbank)

  • Switzerland (Swiss National Bank)

  • Türkiye (Central Bank of the Republic of Türkiye)

  • United Kingdom (Bank of English)

  • United States (American Federal Reserve)

Parameters

name (required for non-central bank rates) - name the benchmark interest rate.

country (required for central bank rates) - name of the country for which you want the central bank rate.

start_time (optional) - start time for the data range, specified as a UNIX timestamp in seconds.

end_time (optional) - end time for the data range, specified as a UNIX timestamp in seconds.

Headers

X-Api-Key (required) - API Key associated with your account.

Request URL

https://api.api-ninjas.com/v1/interestratehistorical

Sample Response

{
  "type": "non_central_bank",
  "name": "USD LIBOR - 3 months",
  "data": [
    {
      "timestamp": 1701648000,
      "rate_pct": 5.62458
    },
    {
      "timestamp": 1701734400,
      "rate_pct": 5.63784
    },
    {
      "timestamp": 1701820800,
      "rate_pct": 5.64174
    },
    {
      "timestamp": 1701907200,
      "rate_pct": 5.63344
    },
    ...
  ]
}