---
title: "Treasury CUSIP curve risk (z-spread, KRD)"
method: GET
path: "/api/v2/fixed-income/treasury/prices/{cusip}/curve-risk"
tags: ["Fixed Income"]
---

# Treasury CUSIP curve risk (z-spread, KRD)

`GET /api/v2/fixed-income/treasury/prices/{cusip}/curve-risk`

Per-CUSIP relative-value + curve risk of a fixed-coupon Treasury note/bond against the Federal Reserve Board GSW nominal SPOT curve: z-spread (the constant spread over every zero rate that reprices the bond to its market dirty price, bps), parallel effective duration + DV01, and key-rate durations at 2Y/5Y/10Y/30Y (which sum to the effective duration). Omit date for the latest priced day. Coupon notes/bonds only. NOTE: the GSW curve is a Fed staff research product (weekly), paired with the on-or-before curve.

## Path parameters

- `cusip` string, required — 9-character Treasury CUSIP.

## Query parameters

- `date` string, nullable — Price date (YYYY-MM-DD). Omit for latest.

## Response `200`

z-spread, durations and key-rate durations for the CUSIP.

- EnvelopeCurveRiskData
  - `data` CurveRiskData, required — Per-CUSIP curve risk vs the GSW nominal spot curve (fixed-coupon notes/bonds). z-spread is the constant spread over every GSW zero rate that reprices the bond to its market dirty price; durations use continuously-compounded discounting.
    - `cusip` string, required
    - `price_date` string, required — FedInvest price date.
    - `curve_date` string, required — GSW curve date used (on-or-before the price date).
    - `security_type` string, required
    - `price` number, required — Market clean price per 100 face.
    - `z_spread_bps` number, nullable — Constant spread over the GSW zero curve that reprices to market, bps.
    - `effective_duration` number, nullable — Parallel-shift duration on the spot curve, years.
    - `dv01` number, nullable — Price change per 100 face for a parallel +1bp spot shift.
    - `key_rate_durations` KeyRateDuration[] — Localized durations at 2Y/5Y/10Y/30Y (sum to effective_duration).
      - `tenor` string, required
      - `tenor_years` number, required
      - `krd` number, required — Key-rate duration in years (KRDs sum to effective_duration).
  - `meta` SugraMeta, required — Metadata attached to every /api/v1/* response envelope.
    - `endpoint` string, required — Requested endpoint path.
    - `data_time` string, required — ISO 8601 UTC timestamp of the source data, not of the request.
    - `response_time` string, required — ISO 8601 UTC timestamp when this response was produced.
    - `provider` string, required — API name and version.
    - `source` string, nullable — Identifier of the primary upstream source used for this response.
    - `attribution` string, nullable — Human-readable attribution mandated by an upstream source (e.g. a securities regulator or self-regulatory organization). Present only on responses whose source requires the owner and source to be clearly identified. Do not remove or alter it when using the response.
    - `fallback_used` boolean, nullable — True when the primary source failed and a fallback produced the data.
    - `fallback_chain` string[], nullable — Ordered list of sources attempted, in the order they were tried.
    - `cached` boolean, nullable — True when this response was served from the internal cache.
    - `stale` boolean, nullable — True when the cached response was returned after the upstream rate-limited or errored. Clients can use this to detect degraded data.

## Other responses

- `401` — Missing or invalid `x-api-key` header.
- `422` — Validation Error
- `429` — Daily rate limit exceeded. Check `X-RateLimit-Reset` for the next window.
- `503` — Upstream source is temporarily unavailable. Retry after a short delay.

---

[API](https://skmtc.net/sugra/apis/sugra-api.md) · [All operations](https://skmtc.net/sugra/apis/sugra-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sugra/sugra-api/revisions/dcf7427e6897/schema)
