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

# Overview

> Ostium Builder API: endpoints, rate limits, errors, and the full market list.

REST API for the Ostium Builder SDK and integrating partners: live prices, depth, OHLC, and market hours.

## Authentication

**None required today.**

## Quick start

1. **Snapshot** — `GET /v1/prices` (or `GET /v1/prices/{pair}`) for an initial board.
2. **Stream** — connect to `WS /v1/prices/stream` for live ticks — see the **Price Stream** section.
3. **Candles** — `POST /v1/ohlc` for historical OHLC.
4. **Sessions** — `GET /v1/market-hours` for calendars (cache it; use tick flags for “open right now”). The pair list is under **Markets**.
5. **Depth** — `GET /v1/depth/{pair}/quote` for the price a given size actually gets.
6. **Status** — `GET /v1/status` to check the price feed is live before relying on quotes.

Typed clients: use `@ostium/builder-sdk`, or generate one from this document with any OpenAPI 3.1 client generator.

## Rate limits

Applied per IP. Most limits are per route; where a group of endpoints shares one budget the endpoint's own description says so. Every rate-limited response carries `x-ratelimit-limit`, `x-ratelimit-remaining`, and `x-ratelimit-reset`; 429s add `retry-after`. **Read the headers** — do not hard-code the documented figures.

## Errors

Two envelopes:

* **Framework** — `{ "error": "<Status Name>", "message": "..." }` (optional `issues` / `details`).
* **Upstream proxy** — `{ "error": "<human message>" }` from OHLC failures.

`error` means different things across the two shapes — do not switch on it alone until a future major version unifies them.

Every response carries `x-request-id`. Quote it when reporting a problem.

## Hosts

* Production: `https://builder.prod.bedrock.ostium.io`
