# Index & Treasury Futures API
> Live financial futures as an API — front-month prices for the major US index and Treasury futures, served from Yahoo Finance. For any contract it returns the current price, the previous close, the absolute and percentage change on the day, the day's high and low, the 52-week high and low, the contract month and the currency. Index futures (E-mini S&P 500, Nasdaq-100, Dow, Russell 2000) trade nearly around the clock and are the market's go-to read on where the open is heading; Treasury futures (2-, 5-, 10- and 30-year notes and bonds) track interest-rate expectations. Look a contract up by name or ticker alias, pull a category board (index or rates) ranked by the day's move, or get the whole board in one call. The futures-quote layer for trading, pre-market and dashboard apps. Live, no key, no cache. Distinct from spot index APIs and from the physical-commodity futures API — this is financial (index and rate) futures.

## 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/futures-api/..."
```

## Pricing
- **Free** (Free) — 8,000 calls/Mo, 5 req/s
- **Starter** ($11/Mo) — 115,000 calls/Mo, 15 req/s
- **Pro** ($28/Mo) — 620,000 calls/Mo, 40 req/s
- **Desk** ($64/Mo) — 3,100,000 calls/Mo, 100 req/s

## Endpoints

### Future

#### `GET /v1/future` — One futures contract quote

**Parameters:**
- `future` (query, required, string) — Contract key or alias (e.g. sp500, nasdaq100, tnote10y, es, zn) Example: `sp500`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/futures-api/v1/future?future=sp500"
```

**Response:**
```json
{
    "data": {
        "name": "E-mini S&P 500",
        "as_of": "2026-06-09T02:52:09.000Z",
        "price": 7420.75,
        "change": 4.75,
        "future": "sp500",
        "symbol": "ES=F",
        "day_low": 7390.25,
        "category": "index",
        "contract": "Jun 26",
        "currency": "USD",
        "day_high": 7428,
        "change_pct": 0.06,
        "week52_low": 5918.25,
        "week52_high": 7632.25,
        "previous_close": 7416
    },
    "meta": {
        "timestamp": "2026-06-09T03:02:14.791Z",
        "request_id": "c85a6396-c1c3-404c-83fc-62628be8b0d0"
    },
    "status": "ok",
    "message": "Future retrieved successfully",
    "success": true
}
```

### Category

#### `GET /v1/category` — A category board ranked by day change

**Parameters:**
- `category` (query, required, string) — Category: index|rates Example: `index`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/futures-api/v1/category?category=index"
```

**Response:**
```json
{
    "data": {
        "count": 4,
        "futures": [
            {
                "name": "E-mini Nasdaq-100",
                "as_of": "2026-06-09T02:52:12.000Z",
                "price": 29495.75,
                "change": 41,
                "future": "nasdaq100",
                "symbol": "NQ=F",
                "day_low": 29303.5,
                "category": "index",
                "contract": "Jun 26",
                "currency": "USD",
                "day_high": 29547.75,
                "change_pct": 0.14,
                "week52_low": 21435.5,
                "week52_high": 30807.75,
                "previous_close": 29454.75
            },
            {
                "name": "E-mini S&P 500",
                "as_of": "2026-06-09T02:52:09.000Z",
                "price": 7420.75,
                "change": 4.75,
                "future": "sp500",
                "symbol": "ES=F",
                "day_low": 7390.25,
                "category": "index",
                "contract": "Jun 26",
                "currency": "USD",
                "day_high": 7428,
                "change_pct": 0.06,
                "week52_low": 5918.25,
                "week52_high": 7632.25,
                "previous_close": 7416
            },
            {
                "name": "E-mini Russell 2000",
                "as_of": "2026-06-09T02:52:12.000Z",
                "price": 2861.2,
                "change": 1.7,
                "future": "russell2000",
                "symbol
…(truncated, see openapi.json for full schema)
```

### List

#### `GET /v1/list` — Whole futures board in one call

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

**Response:**
```json
{
    "data": {
        "count": 9,
        "futures": [
            {
                "name": "E-mini Nasdaq-100",
                "as_of": "2026-06-09T02:52:12.000Z",
                "price": 29495.75,
                "change": 41,
                "future": "nasdaq100",
                "symbol": "NQ=F",
                "day_low": 29303.5,
                "category": "index",
                "contract": "Jun 26",
                "currency": "USD",
                "day_high": 29547.75,
                "change_pct": 0.14,
                "week52_low": 21435.5,
                "week52_high": 30807.75,
                "previous_close": 29454.75
            },
            {
                "name": "E-mini S&P 500",
                "as_of": "2026-06-09T02:52:09.000Z",
                "price": 7420.75,
                "change": 4.75,
                "future": "sp500",
                "symbol": "ES=F",
                "day_low": 7390.25,
                "category": "index",
                "contract": "Jun 26",
                "currency": "USD",
                "day_high": 7428,
                "change_pct": 0.06,
                "week52_low": 5918.25,
                "week52_high": 7632.25,
                "previous_close": 7416
            },
            {
                "name": "E-mini Russell 2000",
                "as_of": "2026-06-09T02:52:12.000Z",
                "price": 2861.2,
                "change": 1.7,
                "future": "russell2000",
                "symbol
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Service metadata and full contract list

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

**Response:**
```json
{
    "data": {
        "source": "Yahoo Finance public chart API (live)",
        "futures": {
            "dow": "Mini Dow Jones",
            "sp500": "E-mini S&P 500",
            "tnote2y": "2-Year T-Note",
            "tnote5y": "5-Year T-Note",
            "tbond30y": "30-Year T-Bond",
            "tnote10y": "10-Year T-Note",
            "nasdaq100": "E-mini Nasdaq-100",
            "ultrabond": "Ultra T-Bond",
            "russell2000": "E-mini Russell 2000"
        },
        "service": "futures-api",
        "endpoints": {
            "GET /v1/list": "The whole futures board in one call.",
            "GET /v1/meta": "This document (with the full contract list).",
            "GET /v1/future": "One futures quote (future=sp500|nasdaq100|tnote10y|… or aliases like es, nq, zn).",
            "GET /v1/category": "A category board ranked by day change (category=index|rates)."
        },
        "categories": [
            "index",
            "rates"
        ],
        "description": "Live US index and Treasury futures from Yahoo Finance: for any contract, the front-month price, previous close, day change (absolute and percent), day high/low, 52-week high/low, contract month and currency. Index futures (E-mini S&P 500, Nasdaq-100, Dow, Russell 2000) and rate futures (2/5/10/30-year Treasuries). Look one up, pull a category board (index or rates) ranked by the day's move, or get the whole board. Live, no key. Distinct from spot index APIs and the physical-commodity fut
…(truncated, see openapi.json for full schema)
```


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