ExchangeRebel Treasury Rates API

The Treasury Rates API from ExchangeRebel — 5 operation(s) for treasury rates.

GitHub OpenAPI

Operations 5

GET /toll/rates/curve Full Treasury yield curve for one business day #
GET /toll/rates/history One tenor's dated yield series over a range #
GET /toll/rates/spreads Key Treasury curve spreads for one business day #
GET /toll/rates/schema Treasury Curve History contract, criteria, vintage and licence (free) #
GET /toll/rates/criteria Treasury Curve History published criteria (free) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/exchangerebel-com:exchangerebel-com-treasury-rates-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

exchangerebel-com-treasury-rates-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ExchangeRebel — pay-per-call APIs for AI agents (x402 on…
  version: 1.0.0
  contact:
    name: 'ExchangeRebel (operator: Rebel Data)'
    url: https://exchangerebel.com
    email: sound.money.investing@gmail.com
  x-guidance: 'All paid operations use x402 on Solana: call without payment to get a 402 challenge (SOL recipient + USDC token account + fresh memo), pay with the memo attached via the Solana Memo program, then retry with header X-Payment-Tx: <signature> and ?toll_memo=<memo>. Challenges are dual-version: the PAYMENT-REQUIRED header carries the x402 v2 PaymentRequired object and the response body carries the same challenge in x402 v1 form for compatibility. Free operations (security: []) include each service''s /health catalog with full response shapes. Prices in x-payment-info are USD per call unless the summary says otherwise (RPC is per 1,000-request block; Telegram provisioning is per bot-month; transcription is per minute of audio).'
  description: '67 data and utility APIs behind x402 tolls, settled in SOL or USDC on Solana. Call a paid endpoint without payment to receive a 402 x402 challenge (recipient + fresh memo), pay with the memo attached via the Solana Memo program, then retry with the X-Payment-Tx header and toll_memo query parameter. Free catalog/health endpoints are marked without x-payment-info. Full catalogs: GET /toll/discovery and each service''s /health.'
servers:
- url: https://exchangerebel.com
tags:
- name: Treasury Rates
paths:
  /toll/rates/curve:
    get:
      tags:
      - Treasury Rates
      summary: Full Treasury yield curve for one business day
      parameters:
      - name: date
        in: query
        required: false
        schema:
          type: string
          format: date
        description: 'Business day YYYY-MM-DD within 1990-01-02..2026-10-09. Default: latest date in the snapshot (2026-10-09).'
      responses:
        '200':
          description: 'Success. One $0.02 call returns the full 14-tenor Daily Treasury Par Yield Curve for one business day in the snapshot range 1990-01-02–2026-10-09; tenors not published that day are returned as null and are never interpolated. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot.'
        '402':
          description: 'Payment Required (x402). One $0.02 call returns the full 14-tenor Daily Treasury Par Yield Curve for one business day in the snapshot range 1990-01-02–2026-10-09; tenors not published that day are returned as null and are never interpolated. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot. The 402 challenge body carries the recipient, the USDC token account, the amount (20000 USDC base units = $0.02, or 200000 SOL lamports) and a fresh memo; pay on Solana with the memo attached via the Solana Memo program, then retry the same URL with ?sig=<signature>&memo=<memo>.'
        '404':
          description: No data for the requested date in the snapshot (business days 1990-01-02 through 2026-10-09 only); the body carries the available range.
      x-payment-info:
        protocols:
        - x402
        price:
          mode: fixed
          currency: USD
          amount: '0.02'
      security:
      - x402Payment: []
      operationId: getTollRatesCurve
      x-operation-id-source: derived
  /toll/rates/history:
    get:
      tags:
      - Treasury Rates
      summary: One tenor's dated yield series over a range
      parameters:
      - name: tenor
        in: query
        required: true
        schema:
          type: string
        description: 'One of the 14 tenors: 1mo, 1.5mo, 2mo, 3mo, 4mo, 6mo, 1yr, 2yr, 3yr, 5yr, 7yr, 10yr, 20yr, 30yr.'
      - name: start
        in: query
        required: false
        schema:
          type: string
          format: date
        description: Inclusive start date.
      - name: end
        in: query
        required: false
        schema:
          type: string
          format: date
        description: Inclusive end date.
      - name: limit
        in: query
        required: false
        schema:
          type: integer
        description: Max rows returned (the LAST limit matching rows); default 365, clamped 1-3650.
      responses:
        '200':
          description: 'Success. One $0.02 call returns one tenor''s dated yield series over the requested start/end range within the snapshot range 1990-01-02–2026-10-09; dates on which the tenor was not published are returned with a null yield and are never interpolated. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot.'
        '402':
          description: 'Payment Required (x402). One $0.02 call returns one tenor''s dated yield series over the requested start/end range within the snapshot range 1990-01-02–2026-10-09; dates on which the tenor was not published are returned with a null yield and are never interpolated. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot. The 402 challenge body carries the recipient, the USDC token account, the amount (20000 USDC base units = $0.02, or 200000 SOL lamports) and a fresh memo; pay on Solana with the memo attached via the Solana Memo program, then retry the same URL with ?sig=<signature>&memo=<memo>.'
        '404':
          description: No data for the requested date in the snapshot (business days 1990-01-02 through 2026-10-09 only); the body carries the available range.
      x-payment-info:
        protocols:
        - x402
        price:
          mode: fixed
          currency: USD
          amount: '0.02'
      security:
      - x402Payment: []
      operationId: getTollRatesHistory
      x-operation-id-source: derived
  /toll/rates/spreads:
    get:
      tags:
      - Treasury Rates
      summary: Key Treasury curve spreads for one business day
      parameters:
      - name: date
        in: query
        required: false
        schema:
          type: string
          format: date
        description: 'Business day YYYY-MM-DD within 1990-01-02..2026-10-09. Default: latest date in the snapshot (2026-10-09).'
      responses:
        '200':
          description: 'Success. One $0.02 call returns the spreads, in percentage points, between two tenors (2s10s, 3m10y, 2s30s, 5s30s, 10s30s, 3m2y) for the requested date in the snapshot range 1990-01-02–2026-10-09; a spread is null when either tenor was not published that day. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot.'
        '402':
          description: 'Payment Required (x402). One $0.02 call returns the spreads, in percentage points, between two tenors (2s10s, 3m10y, 2s30s, 5s30s, 10s30s, 3m2y) for the requested date in the snapshot range 1990-01-02–2026-10-09; a spread is null when either tenor was not published that day. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot. The 402 challenge body carries the recipient, the USDC token account, the amount (20000 USDC base units = $0.02, or 200000 SOL lamports) and a fresh memo; pay on Solana with the memo attached via the Solana Memo program, then retry the same URL with ?sig=<signature>&memo=<memo>.'
        '404':
          description: No data for the requested date in the snapshot (business days 1990-01-02 through 2026-10-09 only); the body carries the available range.
      x-payment-info:
        protocols:
        - x402
        price:
          mode: fixed
          currency: USD
          amount: '0.02'
      security:
      - x402Payment: []
      operationId: getTollRatesSpreads
      x-operation-id-source: derived
  /toll/rates/schema:
    get:
      tags:
      - Treasury Rates
      summary: Treasury Curve History contract, criteria, vintage and licence (free)
      responses:
        '200':
          description: 'Success (free). Returns the endpoint contract, the 14 tenors, the source line, the data vintage and the licence line. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot. Licence: the underlying data is offered free, without restriction, and available to copy, adapt, redistribute, or otherwise use for non-commercial or commercial purposes (U.S. Department of the Treasury, fiscaldata.treasury.gov API documentation). Public test corpus: treasury-curve-history-corpus/v1, SHA-256 pin cbf25f7b8e109235ed7d00518b355fce6a5a7539ded5f42aeccd6721ce729d5c.'
      security: []
      operationId: getTollRatesSchema
      x-operation-id-source: derived
  /toll/rates/criteria:
    get:
      tags:
      - Treasury Rates
      summary: Treasury Curve History published criteria (free)
      responses:
        '200':
          description: 'Success (free). Returns the published criteria document (rates/v1): what is checked, the scope, the interpolation, business-day, tenor and spread rules, prices with inclusions, the data vintage and the licence. Data vintage: a fixed historical snapshot of the Daily Treasury Par Yield Curve Rates — business days 1990-01-02 through 2026-10-09, collected October 2026 from the official U.S. Department of the Treasury feed (fiscaldata.treasury.gov / home.treasury.gov), whose terms offer the data free, without restriction, for commercial redistribution. Dates after 2026-10-09 are not covered by this snapshot. Licence: the underlying data is offered free, without restriction, and available to copy, adapt, redistribute, or otherwise use for non-commercial or commercial purposes (U.S. Department of the Treasury, fiscaldata.treasury.gov API documentation).'
      security: []
      operationId: getTollRatesCriteria
      x-operation-id-source: derived
components:
  securitySchemes:
    x402Payment:
      type: apiKey
      in: header
      name: X-Payment-Tx
      description: 'x402 toll payment proof: the Solana transaction signature of a payment carrying the memo from the 402 challenge; send together with ?toll_memo=<memo>. Payment itself is made on-chain in SOL or USDC to the recipient named in the challenge.'