# Price history · HyperEVM API · Femtos

> USD closes per unit of up to 25 tokens over a window, or the price of 100 tokens at one time (at=).

- Base URL: `https://api.femtos.xyz/v1` (REST) · `wss://api.femtos.xyz/v1/ws` (WebSocket) · MCP: `https://api.femtos.xyz/mcp`
- Auth: `Authorization: Bearer $FEMTOS_KEY`. Free key: https://femtos.xyz/accounts/ (browser), or with
  no browser: `GET https://femtos.xyz/accounts/agent/challenge`, solve its proof of work, then `POST https://femtos.xyz/accounts/agent/signup`
  (https://femtos.xyz/agents.md#agent-onboarding)
- Decimals are exact strings, times Unix milliseconds, addresses lowercase `0x`
- Whole API in one file: https://femtos.xyz/agents.md · OpenAPI: https://api.femtos.xyz/v1/openapi.json · Index: https://femtos.xyz/llms.txt
- Page with live calls: https://femtos.xyz/hyperevm/price-history

## Price history — GET `/v1/prices/history`

USD closes per unit of up to 25 tokens over a window, or the price of 100 tokens at one time (at=).

| Param | In | Example or values | Meaning |
|---|---|---|---|
| `layer` | query | `hyperevm` | Layer: hyperevm / elysium (0x token addresses) or hypercore (token names HYPE, PURR, token ids, perp coins BTC). Absent: hypercore when every token is a name, else hyperevm |
| `tokens` | query | `0x5555555555555555555555555555555555555555,<evmToken>,0xb88339cb7199b77e23db6e890353e22632ba630f` | Comma list, at most 100: 0x addresses (hyperevm, elysium) or HyperCore token names / ids / perp coins (hypercore) |
| `from` | query | `1792368000000` | Series start (Unix ms, inclusive, aligned down to the unit) |
| `to` | query | `1792454400000` | Series end (Unix ms, exclusive; default now) |
| `interval` | query | `1m`, `5m`, `15m`, `1h`, `4h`, `1d` | Series unit |
| `at` | query | (optional) | Time (Unix ms): price at or before it |

```bash
curl -H "Authorization: Bearer $FEMTOS_KEY" "https://api.femtos.xyz/v1/prices/history?layer=hyperevm&tokens=0x5555555555555555555555555555555555555555%2C<evmToken>%2C0xb88339cb7199b77e23db6e890353e22632ba630f&from=1792368000000&to=1792454400000&interval=1h"
```

| Field | Type | Meaning |
|---|---|---|
| `series[]` | object | {token, symbol, source, pool, market, points, reason, spam, spamReason} |
| `at` | ms | The time asked |
| `prices[]` | object | {token, symbol, priceUsd, source, t, block, tx, logIndex, pool, market, reason, spam, …} |
| `interval` | string | Unit |
| `from` | ms | First unit |
| `to` | ms | End (exclusive) |
| `billing` | heavy | heavy over 30 days |

## Related (Market data)

- [Markets](https://femtos.xyz/hyperevm/markets.md): Active HyperEVM pools with 24 h stats.
- [Candles](https://femtos.xyz/hyperevm/candles.md): OHLCV of one pool in pair price, USD and market cap, ascending, UTC-aligned.
- [Forming candle](https://femtos.xyz/hyperevm/ws-candles.md): The forming candle, pushed once per block where it changes.
- [Trades](https://femtos.xyz/hyperevm/trades.md): Latest swaps of one pool, newest first.
- [Trades stream](https://femtos.xyz/hyperevm/ws-trades.md): The swaps of one pool, one message per block that has some.
- [Swaps by wallet](https://femtos.xyz/hyperevm/wallet-trades.md): Every swap a wallet sent (or a pool’s, a token’s), newest first, filterable by token, side, size and time.
- [Transfers by wallet](https://femtos.xyz/hyperevm/wallet-transfers.md): ERC-20 transfers sent and received by a wallet, newest first, filterable by token, direction, size and time.
- [Pool detail](https://femtos.xyz/hyperevm/pool.md): One pool: dex, fee, tokens, liquidity in USD, depth, 5m to 24h activity, top LPs.
- [Transaction](https://femtos.xyz/hyperevm/tx.md): One transaction: status, gas, decoded transfers, swaps and liquidity, bridge legs and journey.
- [Token prices](https://femtos.xyz/hyperevm/prices.md): USD price of up to 100 tokens in one call, each with its source and provenance.
- [Token candles](https://femtos.xyz/hyperevm/token-candles.md): OHLCV of a token in USD through its reference pool, the most liquid one.

All HyperEVM endpoints: https://femtos.xyz/hyperevm.md
