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.

Parameters

name (optional) - name of central bank or interest rate. Partial matching is supported (e.g. libor will match usd_libor_overnight, usd_libor_1_month, etc.). The following rates are supported:

  • premiumusd_libor_overnight (USD LIBOR Overnight)
  • premiumusd_libor_1_month (USD LIBOR - 1 month)
  • premiumusd_libor_3_months (USD LIBOR - 3 months)
  • premiumusd_libor_6_months (USD LIBOR - 6 months)
  • premiumusd_libor_12_months (USD LIBOR - 12 months)
  • premiumeuribor_1_week (Euribor - 1 week)
  • premiumeuribor_1_month (Euribor - 1 month)
  • premiumeuribor_3_months (Euribor - 3 months)
  • premiumeuribor_6_months (Euribor - 6 months)
  • premiumeuribor_12_months (Euribor - 12 months)
  • ester ESTER
  • sonia SONIA
  • saron SARON
  • tonar TONAR
  • sofr SOFR (overnight)
  • premiumsofr_30d_avg SOFR 30-day average
  • premiumsofr_90d_avg SOFR 90-day average
  • premiumsofr_180d_avg SOFR 180-day average

country (optional) - name of country (case-insensitive). The following countries are supported:

  • Australia (Reserve Bank of Australia)

  • premiumBrazil (Central Bank of Brazil)

  • premiumCanada (Bank of Canada)

  • China (People's Bank of China)

  • Czech Republic (Czech National Bank)

  • Denmark (Danmarks Nationalbank)

  • premiumEurope (European Central Bank)

  • premiumHungary (Hungarian National Bank)

  • premiumIndia (Indian Central Bank)

  • premiumIsrael (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)

  • premiumSouth Africa (South African Reserve Bank)

  • premiumSouth 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)

  • premiumUnited States (American Federal Reserve)


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?country=

Sample Response

{
  "central_bank_rates": [
    {
      "central_bank": "British Central Bank",
      "country": "United Kingdom",
      "rate_pct": 5.25,
      "last_updated": "08-03-2023"
    }
  ]
}

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.

Parameters

name (required for non-central bank rates) - name the benchmark interest rate. The following rates are supported:

  • 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

country (required for central bank rates) - name of the country for which you want the central bank rate. The following countries are supported:

  • 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)


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
    },
    ...
  ]
}