Fixed Income

Treasury curve history

Changed on

One tenor's daily yield over a date range (type=nominal par or real TIPS). Pass tenor=10Y plus optional start/end (YYYY-MM-DD). If tenor2 is given, the series carries the tenor2-minus-tenor spread in basis points instead. Defaults to roughly the last year when start is omitted; the span is capped at 30 years (an earlier start is clamped to that window).

get/api/v2/fixed-income/treasury/curve-history

Request

  • Base URL: https://sugra.ai
  • URL: https://sugra.ai/api/v2/fixed-income/treasury/curve-history
  • Auth: API key in header x-api-key

Query parameters

tenorstring required

Canonical tenor, e.g. 10Y or 3M.

Example:10Y
typestring

nominal (par) or real (TIPS).

tenor2string nullable

Second tenor -> spread series (tenor2 - tenor, bps).

startstring nullable
Example:2024-01-01
endstring nullable
Example:2026-06-30

Response

Date-ordered yield (or spread) series for the tenor.

Example response

{
  "data": {
    "curve_type": "nominal",
    "tenor": "10Y",
    "metric": "yield",
    "count": 250,
    "points": [
      {
        "date": "2026-06-26",
        "value": 4.3
      }
    ]
  },
  "meta": {
    "endpoint": "/api/v1/fred/us/cpi",
    "data_time": "2026-04-16T14:30:00Z",
    "response_time": "2026-04-16T14:30:12Z",
    "provider": "Sugra API v1.0.1",
    "data_age_days": 8.532,
    "source": "sugra_crypto",
    "attribution": "Short interest and Reg SHO daily short volume data is owned by and sourced from FINRA (Financial Industry Regulatory Authority).",
    "fallback_chain": [
      "sugra_crypto",
      "sugra_finance"
    ],
    "stale_since": "2026-09-08T12:00:00Z",
    "period": "2026-Q1",
    "notes": "the UKMTO report behind these counts is dated 2026-08-21 and is 11 days old"
  }
}

Changes

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • breaking

      added subschema #2 to the response body oneOf list for the response status

    • breaking

      the response's body type changed from object to no type for status

    • breaking

      removed the required property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status