> ## Documentation Index
> Fetch the complete documentation index at: https://docs.metastreams.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Spot market data for Solana, Base, BNB Smart Chain and Robinhood Chain: tokens, candles, trades, discovery boards and live streams.

The Chronos API serves real-time and historical spot market data for tokens on Solana, Base, BNB Smart Chain and Robinhood Chain. Use it to build trading bots, terminals, dashboards, alerts and agents.

<CardGroup cols={2}>
  <Card title="Get an API key" icon="key" href="/get-started/api-keys">
    Every request needs a key. Here is how to get one.
  </Card>

  <Card title="Quickstart" icon="rocket" href="/get-started/quickstart">
    Make your first request and open your first stream in a few minutes.
  </Card>
</CardGroup>

## What you can read

| Data | Endpoint | What you get |
| - | - | - |
| Token details | `GET /v1/tokens/{chain}/{address}` | Price, market cap and liquidity; trailing stats from 5 minutes to 24 hours; holder concentration and wallet risk groups; contract security; launchpad and graduation status; project links |
| Candles | `GET /v1/tokens/{chain}/{address}/ohlcv` | OHLCV buckets from 1 second to 7 days, by price or market cap, in USD or the chain's native unit |
| Token trades | `GET /v1/tokens/{chain}/{address}/trades` | Every swap on a token, newest first, with the trader's wallet classifications |
| Identity trades | `GET /v1/trades` | Trades by notable wallets, such as KOLs, across every token and chain |
| Discovery boards | `POST /v1/discovery` | Ranked lists of new, graduating and graduated launchpad tokens, with filters |
| Live streams | `GET /v1/stream` (WebSocket) | Trades, candles and token updates as they happen |

Every response follows the same conventions: camelCase field names, timestamps in Unix milliseconds, and exact decimal strings for money. See [Reading responses](/concepts/reading-responses).

## Base URLs

| Transport | URL |
| - | - |
| REST | `https://{{API_HOST}}/v1` |
| WebSocket | `wss://{{API_HOST}}/v1/stream` |
| OpenAPI document | `https://{{API_HOST}}/openapi.json` |

The OpenAPI document needs no key. Use it to generate a client in your language.

## Call it from your backend

Your API key is a secret. Call the API from a server you control, never from browser or mobile code. The API sends no CORS headers, and a browser cannot set the header the stream handshake needs. See [Authentication](/get-started/authentication).

## Next steps

<CardGroup cols={2}>
  <Card title="Authentication" icon="lock" href="/get-started/authentication">
    Send your key on REST requests and on the stream handshake.
  </Card>

  <Card title="Reading responses" icon="book-open" href="/concepts/reading-responses">
    Timestamps, money objects, decimals and percentages.
  </Card>

  <Card title="Errors and retries" icon="triangle-exclamation" href="/concepts/errors">
    Every error code, and which ones to retry.
  </Card>

  <Card title="Connecting to streams" icon="bolt" href="/streams/overview">
    Subscribe to live trades, candles and token updates.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.