Query news archive
https://api.tickerbot.io/ v2/ newsOne endpoint, two shapes. Without group_by, each result is one article (default columns: id, time_published, title, source, tickers, overall_sentiment_score, overall_sentiment_label). With group_by set, results are aggregate rollups — default SELECT becomes <group_by cols>, COUNT(*) AS volume. Use the tk alias (auto-UNNEST of tickers) to roll up per ticker without writing the join.
"As-of" is just a WHERE filter on time_published — there is no dedicated asof parameter.
Both GET and POST are supported; POST body takes the same parameter names for queries too long to fit in a URL.
/v2/news is the canonical path (the log-shaped endpoints read uniformly: /v2/scan, /v2/news, /v2/events); the original spelling /v2/news/scan answers identically, forever.
Query parameters
stringrequiredWHERE clause over the news_article table. Max 4000 chars. See the schema for columns + flags you can compose.
stringComma-separated columns/expressions to return. Defaults to article columns (no group_by) or <group_by cols>, COUNT(*) AS volume (with group_by).
stringComma-separated group keys. Switches the response to aggregate rows. Use tk to roll up per ticker.
stringHAVING clause on the aggregate. Requires group_by.
stringSort column or alias. Defaults to time_published (article rows) or volume (aggregate rows).
stringdefault descSort direction.
integerdefault 50Page size. Max 1000 (every plan — news is ungated).
stringOpaque pagination cursor from a prior response's next_cursor.
Status codes
200as_of, query, count, next_cursor, and results.400