Bonds
Latest sovereign yield curve rates for supported country and tenor pairs.
Authx-api-key headerBase path/bondWebSocketbonds.quotesSymbol formatCC:TENOR (e.g. US:10Y)
Rates are percentages, one official observation per business day. A short upstream interruption still returns the last good value.
Symbols
US
Treasury curve
1M3M6M1Y2Y3Y5Y7Y10Y20Y30Y
DE · ES · FR · IT · UK
EU and UK sovereign curves
1Y2Y3Y5Y10Y30Y
Latest yield
Latest available yield curve rate for a supported country and tenor.
Path parameters
symbol- Bond yield symbol in CC:TENOR format. US tenors support 1M, 3M, 6M, 1Y, 2Y, 3Y, 5Y, 7Y, 10Y, 20Y, and 30Y. DE, ES, FR, IT, and UK support 1Y, 2Y, 3Y, 5Y, 10Y, and 30Y.
Request
curl -sS "https://api.tickerlayer.com/bond/last/US:30Y" \
-H "x-api-key: <YOUR_API_KEY>"Send runs against the live API with your account key (never exposed in the browser).
Response 200 OK
JSON
{
"symbol": "US:30Y",
"rate": 4.86,
"unit": "percent",
"date": "2026-06-25",
"timestamp": 1782345600000
}Notes
400 invalid symbol for malformed symbols. 404 symbol not available for unsupported country or tenor pairs. 503 market data temporarily unavailable when no current or cached value is available.Snapshot
Latest yield plus the previous published observation and the change between them.
Path parameters
symbol- Bond yield symbol in CC:TENOR format. US tenors support 1M, 3M, 6M, 1Y, 2Y, 3Y, 5Y, 7Y, 10Y, 20Y, and 30Y. DE, ES, FR, IT, and UK support 1Y, 2Y, 3Y, 5Y, 10Y, and 30Y.
Request
curl -sS "https://api.tickerlayer.com/bond/snapshot/US:30Y" \
-H "x-api-key: <YOUR_API_KEY>"Send runs against the live API with your account key (never exposed in the browser).
Response 200 OK
JSON
{
"symbol": "US:30Y",
"rate": 4.86,
"unit": "percent",
"date": "2026-06-25",
"timestamp": 1782345600000,
"prev_rate": 4.83,
"prev_date": "2026-06-24",
"prev_timestamp": 1782259200000,
"change": 0.03,
"change_bps": 3,
"change_percent": 0.6211
}Notes
change is the move in percentage points versus the previous observation, change_bps is the same move in basis points, and change_percent is the relative move versus prev_rate. Both observations are dated, so prev_date tells you the interval the change covers: consecutive business days for most curves, and the previous auction for the short-term Italy tenors, which publish monthly. The prev_* and change fields are null when only a single observation is available yet. Errors match the latest rate endpoint.WebSocket
Subscribe to bonds.quotes with the same CC:TENOR symbols. Bonds access on your account covers the channel as well as the REST endpoints.
- Daily, not ticks
- Right after the subscribe acknowledgement the latest published rate is replayed with
snapshot: true; then one frame per symbol for each new observation, in practice once per business day. Silence in between is normal, not a stalled stream. - Fields
- Those of
/bond/snapshotexceptprev_timestamp.tsandtimestampare the observation date, never the send time.
Subscribe
{
"action": "subscribe",
"channels": ["bonds.quotes"],
"symbols": ["US:10Y", "DE:10Y"]
}rate frame (replayed on subscribe)
{
"type": "rate",
"channel": "bonds.quotes",
"asset": "bonds",
"symbol": "US:10Y",
"rate": 4.79,
"unit": "percent",
"date": "2026-09-02",
"prev_rate": 4.76,
"prev_date": "2026-09-01",
"change": 0.03,
"change_bps": 3,
"change_percent": 0.6303,
"ts": 1788307200000,
"timestamp": 1788307200000,
"snapshot": true
}