Search Bonds
curl --request GET \
--url https://api.debtstack.ai/v1/bondsimport requests
url = "https://api.debtstack.ai/v1/bonds"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.debtstack.ai/v1/bonds', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.debtstack.ai/v1/bonds",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.debtstack.ai/v1/bonds"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.debtstack.ai/v1/bonds")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.debtstack.ai/v1/bonds")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_bodyBonds
Search Bonds
Filter and retrieve bond instruments
GET
/
v1
/
bonds
Search Bonds
curl --request GET \
--url https://api.debtstack.ai/v1/bondsimport requests
url = "https://api.debtstack.ai/v1/bonds"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.debtstack.ai/v1/bonds', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.debtstack.ai/v1/bonds",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.debtstack.ai/v1/bonds"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.debtstack.ai/v1/bonds")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.debtstack.ai/v1/bonds")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_bodyOverview
Search and filter bonds across all companies by yield, seniority, maturity, and more. Perfect for yield hunting, bond screening, and credit analysis.Request
Company Filters
string
Comma-separated list of company tickers.Example:
RIG,VAL,DOstring
Filter by company sector.Example:
EnergyBond Identifiers
string
Comma-separated list of CUSIPs.Example:
893830AK8,89157VAG8Structure Filters
string
Seniority level:
senior_secured, senior_unsecured, subordinatedstring
Security type:
first_lien, second_lien, unsecuredstring
Instrument type:
senior_notes, term_loan_b, revolver, etc.string
Issuer entity type:
holdco, opco, subsidiarystring
Interest rate type:
fixed, floatingInterest Rate Filters
number
Minimum coupon rate (%).
number
Maximum coupon rate (%).
Pricing Filters
number
Minimum yield to maturity (%).
number
Maximum yield to maturity (%).
integer
Minimum spread to treasury (bps).
integer
Maximum spread to treasury (bps).
boolean
Only return bonds with pricing data.
Maturity Filters
string
Maturity before date (YYYY-MM-DD).
string
Maturity after date (YYYY-MM-DD).
Other Filters
integer
Minimum outstanding amount (cents).
boolean
Only return bonds with guarantors.
string
default:"USD"
Currency code.
Response Options
string
Comma-separated fields to return.Example:
name,cusip,coupon_rate,maturity_date,pricingstring
Sort field. Prefix
- for descending.Example: -pricing.ytminteger
default:"50"
Results per page. Maximum 100.
integer
default:"0"
Pagination offset.
Examples
High-Yield Bond Screen
curl "https://api.debtstack.ai/v1/bonds?seniority=senior_unsecured&min_ytm=8.0&has_pricing=true&fields=name,cusip,company_ticker,coupon_rate,maturity_date,pricing&sort=-pricing.ytm" \
-H "X-API-Key: ds_xxxxx"
import requests
response = requests.get(
"https://api.debtstack.ai/v1/bonds",
params={
"seniority": "senior_unsecured",
"min_ytm": 8.0,
"has_pricing": True,
"fields": "name,cusip,company_ticker,coupon_rate,maturity_date,pricing",
"sort": "-pricing.ytm"
},
headers={"X-API-Key": "ds_xxxxx"}
)
for bond in response.json()["data"]:
print(f"{bond['company_ticker']} {bond['name']}: {bond['pricing']['ytm']:.2f}% YTM")
Response
{
"data": [
{
"name": "8.00% Senior Notes due 2027",
"cusip": "893830AK8",
"company_ticker": "RIG",
"coupon_rate": 8.0,
"maturity_date": "2027-02-01",
"pricing": {
"last_price": 94.25,
"ytm": 9.42,
"spread": 512,
"staleness_days": 1
}
},
{
"name": "6.875% Senior Notes due 2026",
"cusip": "89157VAG8",
"company_ticker": "ATUS",
"coupon_rate": 6.875,
"maturity_date": "2026-03-01",
"pricing": {
"last_price": 91.50,
"ytm": 8.75,
"spread": 485,
"staleness_days": 0
}
}
],
"meta": {
"total": 23,
"limit": 50,
"offset": 0
}
}
More Examples
Secured First-Lien Bonds
curl "https://api.debtstack.ai/v1/bonds?seniority=senior_secured&security_type=first_lien&fields=name,company_ticker,outstanding,collateral" \
-H "X-API-Key: ds_xxxxx"
Company’s Maturity Profile
curl "https://api.debtstack.ai/v1/bonds?ticker=CHTR&sort=maturity_date&fields=name,maturity_date,outstanding,seniority" \
-H "X-API-Key: ds_xxxxx"
Floating Rate Debt
curl "https://api.debtstack.ai/v1/bonds?rate_type=floating&fields=name,company_ticker,benchmark,spread_bps,floor_bps" \
-H "X-API-Key: ds_xxxxx"
Bonds with Guarantees
curl "https://api.debtstack.ai/v1/bonds?has_guarantors=true&fields=name,company_ticker,seniority,guarantor_count" \
-H "X-API-Key: ds_xxxxx"

