Historical Bond Yields API provides more than 10 years of government bond yield history for over 50 countries in a structured JSON format. It returns historical time-series data across multiple maturities, from short-term government rates to long-term bond yields.
For the United States, the API provides historical Treasury yield series, including the 10-Year Treasury, 20-Year Treasury, and other supported maturities. Available maturities vary by country and depend on the underlying government bond market.
You can query historical government bond yields by country and maturity type,
and retrieve data for a specific period using custom date parameters.
Supported maturity types include 3m, 6m, 2y, 5y, 10y, 20y, and other country-specific series.
Use historical bond yield data for yield curve analysis, backtesting, macroeconomic research, fixed income dashboards, and automated financial applications.
TL;DR: A REST API that returns more than 10 years of historical government bond yield time-series data for over 50 countries, including US Treasury yield history and country-specific maturities in JSON format.
Historical Bond Yields API
Access time-series government bond yields for any country — including full 10-year treasury yield history — with daily or monthly intervals and custom date ranges.
Get Your API Key →What is the Historical Bond Yields API?
Historical Bond Yields API by Fin2Dev returns historical yield data for government bonds worldwide, including 10-year treasury rate history for the US and other major economies. You can filter by country, type (maturity), set a frequency (day/month), and define a date_from / date_to range.
Key parameters
- country * – bond country (e.g., germany, united_states)
- type – maturity: 2y, 10y, 10_tips, 20y, etc.
- frequency –
day(default) ormonth - date_from / date_to – ISO date range
Why historical?
Perfect for backtesting, yield curve analysis, econometric models, and dashboards that need historic treasury yields or any government bond history in a clean JSON format — a lightweight bond history API for developers.
10-Year Treasury Yield History
Looking specifically for 10 year treasury yield history? Set country=united_states and type=10y to pull daily or monthly data for any date range — the same call also works for Germany, the UK, Japan and other markets.
Data Structure & Fields
Every API response returns a standardized JSON object containing metadata and an array of historical closing yields. No complex parsing required.
| Field | Type | Description |
|---|---|---|
region / country |
string | Geographic classification (e.g., europe, Germany). |
bond_type |
string | Bond maturity or type requested (e.g., 10y, 10_tips). |
date_time |
string (YYYY-MM-DD) | The specific trading day or month-end date. |
price |
string (decimal) | The historical government bond yield value (percentage). |
API Integration Examples
import requests
url = "https://apidata.fin2dev.com/v1/bondshistorical"
params = {
"key": "YOUR_API_KEY",
"country": "germany",
"type": "2y",
"date_from": "2010-01-01",
"date_to": "2010-01-10"
}
response = requests.get(url, params=params)
data = response.json()
for item in data["result"]["output"]["prices"]:
print(item["date_time"], item["price"])
<?php
$key = "YOUR_API_KEY";
$url = "https://apidata.fin2dev.com/v1/bondshistorical?key=$key&country=germany&type=2y&date_from=2010-01-01&date_to=2010-01-10";
$json = file_get_contents($url);
$data = json_decode($json, true);
foreach ($data['result']['output']['prices'] as $row) {
echo $row['date_time'] . " " . $row['price'] . "\n";
}
?>
Example JSON Response
{
"status": { "code": 200, "message": "OK", "details": "" },
"result": {
"basics": { "frequency": "1d" },
"output": {
"region": "europe",
"country": "Germany",
"bond_type": "2y",
"prices": [
{ "price": "1.251", "date_time": "2010-01-08" },
{ "price": "1.293", "date_time": "2010-01-07" },
{ "price": "1.321", "date_time": "2010-01-06" },
{ "price": "1.311", "date_time": "2010-01-05" },
{ "price": "1.366", "date_time": "2010-01-04" },
{ "price": "1.323", "date_time": "2010-01-01" }
]
}
}
}
Common Historical Queries
Daily history
Use frequency=day (default) for daily closing yields.
Monthly aggregation
frequency=month returns month-end values.
10-Year Treasury Yield History
country=united_states&type=10y – full 10 year US treasury yield history in one call.
Date range
Filter with date_from and date_to to trim history.
Germany 2y
country=germany&type=2y – short-term bunds.
TIPS
type=10_tips for inflation-protected bonds.
Frequently Asked Questions
Send a GET to /v1/bondshistorical with your API key and at least country.
All standard types: 3m, 6m, 1y, 2y, 5y, 10y, 20y, 10_tips, and more.
Yes, set frequency=month to receive month-end observations.
Yes — beyond historical 10 year US treasury rates, the same bond history API returns historic treasury yields for 3m, 2y, 5y, 20y and other maturities across dozens of countries.
Pricing
Start small and scale. Simple plans with transparent call limits.
Keywords: historical bond yields api • 10 year treasury yield history • 10 year treasury rate history • historical 10 year us treasury rates • treasury yields api • bond history api • fin2dev historical