# Tickerbot API — overview

> The stock market, in SQL

A computed table of every ticker × every signal — 12,947+ US tickers and 100+ cryptos, 413+ signal columns, refreshed every minute. Pull the live state, pull any past day, or subscribe a query and we push the moment state changes.

## The schema is the API

Every ticker column — numerics like `price` and `market_cap`, classifications like `sector`, pre-thresholded flags like `breakout` and `gap_up` — is queryable from SQL, returnable in a payload, and pullable as a time series. Know the schema (https://tickerbot.io/docs/schema) and you know the API.

## The endpoints

Seven endpoint families. One schema.

| Bucket | Path | What it answers |
|--------|------|-----------------|
| Tickers | `/v2/tickers` | Current state, historical state (time-travel via `?asof=`), and the event log (splits, dividends, rating changes) per ticker. Or paginate the whole universe. |
| Signals | `/v2/signals` | Which tickers match a signal now, the same match set on any past date with `?asof=`, and the historical time series for any signal × any ticker × any resolution (1m / 1h / 1d / 1w). |
| Scan | `/v2/scan` | "Who matches this right now?" or "who matched on this past date?" (pass `?asof=YYYY-MM-DD`). Pass a SQL `WHERE` clause, get matching tickers back. |
| Webhooks | `/v2/webhooks` | Subscriptions are created on each resource (`POST /v2/tickers/{T}/subscribe`, `/v2/signals/{X}/subscribe`, `/v2/scan/subscribe`). The `/v2/webhooks` registry lists, inspects, and manages every subscription you've created across resources. |
| Universes | `/v2/universes` | Named ticker lists referenced as `?universe=<slug>` from any query endpoint. System universes (`top_10`, `top_100`) are included on every plan. |
| Analyst | `/v2/analyst/events` | Per-event analyst rating history — upgrades, downgrades, initiations, and price-target changes. Powers the `recent_*` flags and the consensus columns on the ticker object. |
| News | `/v2/news/scan` | SQL-style scan of the news archive. Article rows or rollups by ticker, day, source, or sentiment. |

## What this API doesn't do

- **No order execution.** We tell you when the conditions you care about are met. Routing the order is your broker's job.
- **No SLAs at launch.** Best-effort uptime today; enterprise SLAs gated to a future tier.
