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

# Omnibook API

> Trade binary BTC up/down prediction markets programmatically.

Omnibook runs a continuous series of 60-second binary markets on the price of
BTC. Each round has a strike price; you trade YES or NO on whether BTC closes
above it. Contracts settle at 100¢ or 0¢.

This API is the same one the Omnibook web app uses. Anything you can do in the
browser, a bot can do — with one deliberate exception: **API keys cannot
withdraw funds.**

<CardGroup cols={2}>
  <Card title="Authentication" icon="key" href="/quickstart/authentication">
    Create a key and sign your first request. Start here.
  </Card>

  <Card title="Your first request" icon="play" href="/quickstart/first-request">
    Find the round that is trading right now.
  </Card>

  <Card title="Place an order" icon="chart-line" href="/quickstart/place-order">
    Buy YES, understand ticks, retry safely.
  </Card>

  <Card title="API reference" icon="code" href="/api-reference">
    Every endpoint, generated from the OpenAPI spec.
  </Card>
</CardGroup>

## Base URL

```
https://api.raeth.exchange
```

Every endpoint lives under `/v1/`.

## What you should know before you start

**Everything is authenticated.** There is no anonymous access, not even for
market data. You need a key before you can read a price. See
[Authentication](/quickstart/authentication).

**Requests are signed, not bearer-token.** You sign each request with
HMAC-SHA256 over the method, target and body. Nothing replayable travels on the
wire, and the timestamp window is ±5 seconds.

**Your key trades your account.** A key is bound to the same balance and
positions you see when signed in — there is no separate bot account.

**Bot keys cannot withdraw.** Trading and withdrawing are separate scopes, and
keys you create only get the former. A leaked key can lose you money through bad
trades, but it cannot send your money anywhere. See
[API keys and scopes](/concepts/api-keys).

**Rounds are short and `market_id` is recycled.** Rounds last 60 seconds and
`market_id` values are reused across rounds. Key your own state on
`round_number`, which is monotonic and never reused.

## Getting help

Errors carry a stable machine-readable `code` — see
[Errors](/concepts/errors) for the full list and what to do about each.
