# Token Price API
> Live crypto token prices by contract address — no key, nothing cached. Unlike price APIs keyed on a coin slug, this prices a token by its on-chain contract address on its chain, exactly what you have when a token comes out of a wallet, a DEX pair or a transaction. The price endpoint returns the current USD price, symbol, decimals, a confidence score and the timestamp for one or many tokens at once, addressed as chain:address (ethereum:0xA0b8…, a Solana mint, etc.) or as coingecko:slug — USD Coin resolves to about $1.00 and Wrapped Ether to its live price, in one batched call. The historical endpoint returns a token's price at any past moment by Unix timestamp. The chart endpoint returns a price series over a span and period, so you can plot or back-test. It spans every chain DefiLlama indexes — Ethereum, Solana, BSC, Base, Arbitrum and dozens more — including long-tail tokens a slug-based API will not have. This is the address-based price layer every wallet, portfolio tracker, DEX tool and crypto-accounting app needs to value arbitrary tokens. Live from DefiLlama, nothing stored. Distinct from coin-slug price and market-cap APIs — this prices tokens by contract address, across chains. 4 endpoints.

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

## Pricing
- **Free** (Free) — 11,500 calls/Mo, 3 req/s
- **Starter** ($10/Mo) — 135,000 calls/Mo, 8 req/s
- **Pro** ($25/Mo) — 650,000 calls/Mo, 15 req/s
- **Scale** ($60/Mo) — 3,250,000 calls/Mo, 30 req/s

## Endpoints

### Price

#### `GET /v1/chart` — Token price series

**Parameters:**
- `token` (query, required, string) — chain:address or coingecko:slug Example: `ethereum:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2`
- `period` (query, optional, string) — Candle period (1h,4h,1d,1w) Example: `1d`
- `span` (query, optional, string) — How many points (2-100) Example: `30`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/tokenprice-api/v1/chart?token=ethereum%3A0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2&period=1d&span=30"
```

**Response:**
```json
{
    "data": {
        "span": 30,
        "count": 30,
        "token": "ethereum:0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
        "period": "1d",
        "prices": [
            {
                "price": 2333.905872656188,
                "timestamp": 1778499464
            },
            {
                "price": 2285.0563851087372,
                "timestamp": 1778586103
            },
            {
                "price": 2305.185556590428,
                "timestamp": 1778672355
            },
            {
                "price": 2255.047782412044,
                "timestamp": 1778759023
            },
            {
                "price": 2259.136908954603,
                "timestamp": 1778845234
            },
            {
                "price": 2178.8265977405254,
                "timestamp": 1778931711
            },
            {
                "price": 2191.701634608531,
                "timestamp": 1779018102
            },
            {
                "price": 2117.4813666278537,
                "timestamp": 1779104315
            },
            {
                "price": 2111.86874931612,
                "timestamp": 1779190904
            },
            {
                "price": 2127.265396198652,
                "timestamp": 1779277006
            },
            {
                "price": 2113.450218281493,
                "timestamp": 1779363643
            },
            {
                "price": 2122.7150244549516,
                "timest
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/historical` — Price at a past timestamp

**Parameters:**
- `token` (query, required, string) — chain:address or coingecko:slug Example: `ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48`
- `timestamp` (query, required, string) — Unix timestamp (seconds) Example: `1700000000`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/tokenprice-api/v1/historical?token=ethereum%3A0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&timestamp=1700000000"
```

**Response:**
```json
{
    "data": {
        "price": 1,
        "token": "ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
        "symbol": "USDC",
        "decimals": 6,
        "timestamp": 1700000107,
        "confidence": 0.99,
        "requested_timestamp": 1700000000
    },
    "meta": {
        "timestamp": "2026-06-09T11:39:45.989Z",
        "request_id": "c2df436c-34c1-4f39-846b-b77a20178a79"
    },
    "status": "ok",
    "message": "Historical price retrieved successfully",
    "success": true
}
```

#### `GET /v1/price` — Current token price(s)

**Parameters:**
- `token` (query, required, string) — chain:address, Solana mint, or coingecko:slug (comma for many) Example: `ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/tokenprice-api/v1/price?token=ethereum%3A0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
```

**Response:**
```json
{
    "data": {
        "count": 1,
        "prices": [
            {
                "price": 0.9996178037354563,
                "token": "ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
                "symbol": "USDC",
                "decimals": 6,
                "timestamp": 1781005077,
                "confidence": 0.99
            }
        ]
    },
    "meta": {
        "timestamp": "2026-06-09T11:39:46.151Z",
        "request_id": "b662a4c8-d78e-4fe7-9aee-849681f90cb6"
    },
    "status": "ok",
    "message": "Price retrieved successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Spec

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

**Response:**
```json
{
    "data": {
        "source": "DefiLlama coins API (live)",
        "service": "tokenprice-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/chart": "A token's price series (token=, period=1d, span=30).",
            "GET /v1/price": "Current price(s) for one or many tokens (token=ethereum:0x…,coingecko:bitcoin — up to 12).",
            "GET /v1/historical": "A token's price at a past Unix timestamp (token=, timestamp=1700000000)."
        },
        "description": "Live crypto token prices by contract address from DefiLlama: the current USD price, symbol, decimals, confidence and timestamp for one or many tokens addressed as chain:address (ethereum:0x…, a Solana mint) or coingecko:slug; a token's historical price at any Unix timestamp; and a price chart over a span and period. Across every chain DefiLlama indexes. Live, no key, nothing stored. Distinct from coin-slug price and market-cap APIs — this prices tokens by contract address, including long-tail tokens, across chains.",
        "token_formats": [
            "ethereum:0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
            "solana:<mint>",
            "coingecko:bitcoin",
            "0x… (defaults to ethereum)"
        ],
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-09T11:39:46.295Z",
        "request_id": "78216de9-c225-43e3-ae3b-f4a44da8b757"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


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