As-of scan
https://api.tickerbot.io/v2/scanTime-travel form of [POST /v2/scan](/docs/endpoints/scan/live). Pass "asof": "YYYY-MM-DD" (or full ISO) in the body and the server evaluates your q against the daily-state snapshot of every ticker on that day. Same SQL grammar, same response envelope as live; the _meta.resolution: "daily" marker and _meta.frozen_fields list signal that the universe was reconstructed from historical state. The same endpoint also accepts GET with parameters in the query string — handy for short queries and quick interactive testing.
Plan access
Included on every plan.
Rate limit
Hobby 600/min · Pro 6,000/min · Scale 60,000/min.
Asof depth
Replayable on every plan.
Body parameters
stringrequiredSQL WHERE expression. Same grammar as live scan. Max 4000 chars. See the schema for columns + flags you can compose.
stringrequiredTarget date as `YYYY-MM-DD` or full ISO timestamp. The server evaluates the WHERE against the close-of-day snapshot for this date.
stringSlug of a system or caller-owned universe. Scopes the scan to those tickers as of the same date.
stringdefault day_change_pctColumn to sort by. Same column whitelist as live scan.
stringdefault descSort direction.
stringComma-separated list of extra columns to include in each result row. Default columns are always present.
integerdefault 50Page size. Max 100.
stringOpaque cursor from the previous response. Pass the prior `next_cursor` to get the next page.
Status codes
200asof with as_of, query, count, next_cursor, and results. _meta.resolution: "daily" and _meta.frozen_fields describe the historical envelope.400asof, malformed q, unknown column, invalid order/dir/fields, or invalid cursor.404universe does not exist.