Docs
Browse all documentation

Yield curve history API reference

Bank of England nominal zero-coupon yields, from one source date to the full available curve. Retrieve one date or a paginated history.

Request

GET /v1/economics/{country}/yield-curve/history
curl --request GET \
  --url "https://api.narwhalapi.com/v1/economics/GBR/yield-curve/history?start=2026-09-09&end=2026-09-10&limit=100&maturity=2y%2C10y" \
  --header "Authorization: Bearer $NARWHAL_API_KEY"

REST and MCP use the same Bearer key, response schema and quota. MCP tool: economics_get_yield_curve_history.

Parameters

NameTypeRequiredMeaning
countrypath · ISO alpha-3YesUSA is the only country in the verified yield archive.
startYYYY-MM-DD stringNoInclusive lower bound. Omit for the first available period.
endYYYY-MM-DD stringNoInclusive upper bound; cannot precede start. Omit for the last available period.
limitinteger · 1–1000NoDefault 100. Counts dates or years, not individual yield points.
cursoropaque stringNoPass next_cursor unchanged with the same country, filters and limit. Cursors expire after 24 hours.
maturitycomma-separated stringNoOptional on both routes. Omit for the whole available curve. Allowed: 0.5y, 1y, 1.5y, 2y, 2.5y, 3y, 3.5y, 4y, 4.5y, 5y, 5.5y, 6y, 6.5y, 7y, 7.5y, 8y, 8.5y, 9y, 9.5y, 10y, 10.5y, 11y, 11.5y, 12y, 12.5y, 13y, 13.5y, 14y, 14.5y, 15y, 15.5y, 16y, 16.5y, 17y, 17.5y, 18y, 18.5y, 19y, 19.5y, 20y, 20.5y, 21y, 21.5y, 22y, 22.5y, 23y, 23.5y, 24y, 24.5y, 25y, 25.5y, 26y, 26.5y, 27y, 27.5y, 28y, 28.5y, 29y, 29.5y, 30y, 30.5y, 31y, 31.5y, 32y, 32.5y, 33y, 33.5y, 34y, 34.5y, 35y, 35.5y, 36y, 36.5y, 37y, 37.5y, 38y, 38.5y, 39y, 39.5y, 40y. Duplicates are removed and terms sorted; unsupported labels return 400.

Keep the country, range, maturity selection where applicable, and limit unchanged when following a cursor. Pagination holds one immutable publication snapshot. The default limit is 100 periods; the maximum is 1,000. An empty valid range returns observations: [] and next_cursor: null.

Response

Example response Saved source sample · not a live request
{
  "country": "GBR",
  "curve_type": "nominal_zero_coupon",
  "observations": [
    {
      "date": "2026-09-09",
      "yields": [
        {
          "maturity": "2y",
          "yield_percent": "4.4821473122101274"
        },
        {
          "maturity": "10y",
          "yield_percent": "5.2493002729396405"
        }
      ]
    },
    {
      "date": "2026-09-10",
      "yields": [
        {
          "maturity": "2y",
          "yield_percent": "4.6509003413966044"
        },
        {
          "maturity": "10y",
          "yield_percent": "5.3572243604351168"
        }
      ]
    }
  ],
  "next_cursor": null
}
FieldTypeMeaning
countryISO alpha-3 stringThe requested country or territory.
curve_type"nominal_zero_coupon"Bank of England continuously compounded nominal zero-coupon curve.
observationsarrayOldest first. Missing periods are omitted; an empty valid range returns an empty array.
observations[].dateYYYY-MM-DD stringThe source date shared by all points in this curve.
observations[].yieldsarrayAvailable maturities, ordered shortest to longest. Even one maturity remains an array.
observations[].yields[].maturitystringOne of the supported maturity labels.
observations[].yields[].yield_percentdecimal stringYield in percent, preserving source decimal precision.
next_cursorstring or nullOpaque continuation token; null means there is no next page.

Values retain decimal strings. No source timestamp or publication date is invented. Request and quota metadata are returned in headers.

Errors and quota

StatusMeaning
400Invalid country syntax, date, year, range, maturity, limit or cursor.
401Missing or rejected API key.
404No available observation matches the exact date, year or selected maturities.
409The publication snapshot expired or was withdrawn. Restart without the cursor.
429Rate limit or monthly quota reached.
503The accepted data cannot be served safely.

A successful response consumes one request, including an empty history result. Errors consume no quota. Shared errors and headers →

Coverage and freshness

United Kingdom · GBR · 2 Jan 1979 onward. The Bank of England aims to publish by noon Europe/London on the next business day. Weekends and holidays may have no new curve. Source values can be revised; a source check is not a promise of a new observation.

Missing maturities are omitted. Narwhal never fills a missing source point, substitutes an older curve, or invents a value.

Source: Bank of England · Yield curves.

Dataset overview →