---
title: "Every listed SOFR and fed funds contract, priced now and a year ago"
method: GET
path: "/v1/rate-path"
tags: ["Rates and curve"]
---

# Every listed SOFR and fed funds contract, priced now and a year ago

`GET /v1/rate-path`

## Request

- Base URL: `https://api.helious.io`
- URL: `https://api.helious.io/v1/rate-path`
- Auth: one of:
  - none
  - HTTP bearer

The whole quoted strip on both lanes: three-month SOFR futures and 30-day fed funds futures, every contract with the rate it implies now, six months ago and twelve months ago, which quarters it covers, which FOMC decisions fall inside it, and the pack it belongs to. Use it to see how the market's view of the path has moved rather than only where it sits. These are traded prices, but the same numbers are published on the public rate path page, so this answers on every tier, including keyless, and is never delayed.

## Query parameters

- `lane` string
- `history` boolean
- `days` integer
- `fresh` boolean

## Response `200`

summary + source + data + meta envelope

- Envelope: Every /v1 response. `summary` states the answer as one plain-English sentence and `source` says who to credit for it, both before the raw `data`, so the finished claim is the first thing a reader meets.
  - `summary` string: The answer as a sentence, with the numbers in it. Identical to the sentence the matching MCP tool returns.
  - `source` object: Who to credit and where a reader can check the number.
    - `name` string
    - `url` string, uri: The Helious page backing this answer.
    - `cite_as` string
    - `attribution` string
    - `live` string: How current these numbers are on YOUR plan, and how to ask for them again. Says the data is live only on a tier that serves it live.
  - `data` object: The dataset itself.
  - `meta` object: When it was true, and what your plan allows.
  - `plan_limit` object: Present only when your plan moved the window. Says this is a plan limit rather than missing data, what Helious holds behind it, and the exact step to relay to the person you work for.

## Other responses

- `429`: Over the per-minute limit (code rate_limited, Retry-After the rest of the minute) or the wallet cannot pay (code out_of_credits: credits_left, resets_on, retry_after_seconds, packs, topup_url, upgrade_url, and fresh_costs on a held plan). Nothing is charged for a refusal.

## Changes

- **2026-10-20** `06bada17ad7a`: 2 info
  - added the new optional `query` request parameter `fresh`
  - added the non-success response with the status `429`

[Operation history](https://skmtc.dev/helious/apis/helious-public-api/changes/v1/rate-path/get.md)

---

[API](https://skmtc.dev/helious/apis/helious-public-api.md) · [All operations](https://skmtc.dev/helious/apis/helious-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/helious/apis/helious-public-api/revisions/06bada17ad7a?raw)
