# US Treasury API
> US Treasury fiscal data as an API, live from the official api.fiscaldata.treasury.gov. Track the US national debt to the penny (total public debt outstanding, debt held by the public and intragovernmental holdings) for the latest day or any date range; get the average interest rates the US government pays on its securities (Treasury Bills, Notes, Bonds, TIPS and more); and look up the official US Treasury reporting exchange rates for ~170 world currencies, used to convert foreign currency to USD for government reporting. Ideal for debt clocks, macro-economic dashboards, fintech, research and data journalism. Public-domain US Treasury data.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/treasury-api/..."
```

## Pricing
- **Free** (Free) — 3,700 calls/Mo, 2 req/s
- **Starter** ($6/Mo) — 51,000 calls/Mo, 8 req/s
- **Pro** ($16/Mo) — 260,000 calls/Mo, 20 req/s
- **Mega** ($41/Mo) — 1,290,000 calls/Mo, 50 req/s

## Endpoints

### Treasury

#### `GET /v1/debt` — US national debt to the penny

**Parameters:**
- `from` (query, optional, string) — Start date YYYY-MM-DD (range mode)
- `to` (query, optional, string) — End date YYYY-MM-DD (range mode)
- `date` (query, optional, string) — Exact date YYYY-MM-DD
- `limit` (query, optional, string) — Max records in range mode (1-1000)

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/treasury-api/v1/debt"
```

**Response:**
```json
{
    "data": {
        "latest": {
            "record_date": "2026-05-28",
            "total_public_debt": 39176301795549.4,
            "debt_held_by_public": 31466045143781.76,
            "intragovernmental_holdings": 7710256651767.64
        }
    },
    "meta": {
        "timestamp": "2026-05-31T08:24:39.129Z",
        "request_id": "d4bb336f-f51c-440d-a279-bf1aff47e45a"
    },
    "status": "ok",
    "message": "Debt retrieved",
    "success": true
}
```

#### `GET /v1/exchange-rates` — US Treasury reporting exchange rates

**Parameters:**
- `currency` (query, optional, string) — Currency, e.g. Euro, Yen, Pound Example: `Euro`
- `country` (query, optional, string) — Country, e.g. United Kingdom
- `date` (query, optional, string) — Exact date YYYY-MM-DD
- `limit` (query, optional, string) — Max records (1-1000, default 200)

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/treasury-api/v1/exchange-rates?currency=Euro"
```

**Response:**
```json
{
    "data": {
        "count": 200,
        "results": [
            {
                "country": "Euro Zone",
                "currency": "Euro",
                "record_date": "2026-03-31",
                "exchange_rate": 0.87,
                "effective_date": "2026-03-31",
                "country_currency": "Euro Zone-Euro"
            },
            {
                "country": "Cyprus",
                "currency": "Euro",
                "record_date": "2025-12-31",
                "exchange_rate": 0.851,
                "effective_date": "2025-12-31",
                "country_currency": "Cyprus-Euro"
            },
            {
                "country": "Euro Zone",
                "currency": "Euro",
                "record_date": "2025-12-31",
                "exchange_rate": 0.851,
                "effective_date": "2025-12-31",
                "country_currency": "Euro Zone-Euro"
            },
            {
                "country": "Euro Zone",
                "currency": "Euro",
                "record_date": "2025-09-30",
                "exchange_rate": 0.852,
                "effective_date": "2025-09-30",
                "country_currency": "Euro Zone-Euro"
            },
            {
                "country": "Euro Zone",
                "currency": "Euro",
                "record_date": "2025-06-30",
                "exchange_rate": 0.853,
                "effective_date": "2025-06-30",
                "country_currency": "Euro Zone-Euro"
        
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/interest-rates` — Average interest rates on Treasury securities

**Parameters:**
- `security` (query, optional, string) — Security, e.g. Treasury Bills, Treasury Notes, Treasury Bonds
- `from` (query, optional, string) — Start date YYYY-MM-DD
- `to` (query, optional, string) — End date YYYY-MM-DD
- `limit` (query, optional, string) — Max records (1-1000)

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/treasury-api/v1/interest-rates"
```

**Response:**
```json
{
    "data": {
        "count": 25,
        "results": [
            {
                "security": "Treasury Bills",
                "record_date": "2026-04-30",
                "security_type": "Marketable",
                "avg_interest_rate_pct": 3.696
            },
            {
                "security": "Treasury Notes",
                "record_date": "2026-04-30",
                "security_type": "Marketable",
                "avg_interest_rate_pct": 3.23
            },
            {
                "security": "Treasury Bonds",
                "record_date": "2026-04-30",
                "security_type": "Marketable",
                "avg_interest_rate_pct": 3.403
            },
            {
                "security": "Treasury Inflation-Protected Securities (TIPS)",
                "record_date": "2026-04-30",
                "security_type": "Marketable",
                "avg_interest_rate_pct": 1.068
            },
            {
                "security": "Treasury Floating Rate Notes (FRN)",
                "record_date": "2026-04-30",
                "security_type": "Marketable",
                "avg_interest_rate_pct": 3.764
            },
            {
                "security": "Federal Financing Bank",
                "record_date": "2026-04-30",
                "security_type": "Marketable",
                "avg_interest_rate_pct": 2.389
            },
            {
                "security": "Total Marketable",
                "record_date": "2026-
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Datasets & source

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/treasury-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "Live US Treasury fiscal data. Filter by date or date range (from/to, YYYY-MM-DD); exchange rates by country or currency; interest rates by security. Public-domain US Treasury data.",
        "source": "US Treasury (api.fiscaldata.treasury.gov)",
        "datasets": {
            "debt": "US national debt to the penny (daily): total public debt, debt held by the public, intragovernmental holdings",
            "exchange_rates": "Official US Treasury reporting exchange rates (quarterly), ~170 currencies — used to convert foreign currency to USD for US government reporting",
            "interest_rates": "Average interest rates on US Treasury securities (monthly), by security type"
        },
        "endpoints": [
            "/v1/debt",
            "/v1/interest-rates",
            "/v1/exchange-rates",
            "/v1/meta"
        ]
    },
    "meta": {
        "timestamp": "2026-05-31T08:24:39.855Z",
        "request_id": "e658e0a3-5ab4-4160-b56e-dc34d0681b32"
    },
    "status": "ok",
    "message": "Meta retrieved",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/treasury-api
OpenAPI spec: https://www.oanor.com/api/treasury-api/openapi.json
