/v1/scanFind every ticker matching a SQL WHERE clause right now.
A universe-wide query against the current state of every tracked ticker. The `q` parameter is a SQL `WHERE` clause — any column on the schema (numerics, flags, classification fields) is queryable. Returns the list of matching tickers along with the fields you asked about. By default, the response includes the ticker symbol, name, and any field referenced in `q` or `sort`. Pass `full=true` to receive the entire ticker object per match.
| Name | In | Type | Required | Description |
|---|---|---|---|---|
q | query | string (SQL WHERE clause) | required | The condition to match. URL-encode it. Use full numeric literals (e.g. `1500000000`, not `1.5B`). |
full | query | boolean | optional | If true, each match includes the entire ticker object (same shape as `/v1/tickers/{ticker}`). Otherwise only relevant fields are returned. |
sort | query | string | optional | Sort field. Prefix with `-` for descending. Any numeric column on the schema is allowed. |
limit | query | integer | optional | Max matches in this response. Capped at 500. |
| Status | Description |
|---|---|
200 | List of matching tickers. |
400 | SQL parse error or unknown identifier. |
Default — relevant fields only
curl "https://api.tickerbot.io/v1/scan?q=above_sma_50%20AND%20volume_unusual_2x" \
-H "Authorization: Bearer YOUR_KEY"{
"q": "above_sma_50 AND volume_unusual_2x",
"sort": "-day_change_pct",
"as_of": "2026-04-30T14:32:11Z",
"count": 12,
"returned": 12,
"matches": [
{ "ticker": "PLTR", "name": "Palantir", "above_sma_50": true, "volume_unusual_2x": true, "day_change_pct": 6.21 },
{ "ticker": "SOFI", "name": "SoFi Technologies", "above_sma_50": true, "volume_unusual_2x": true, "day_change_pct": 4.82 },
{ "ticker": "RIVN", "name": "Rivian", "above_sma_50": true, "volume_unusual_2x": true, "day_change_pct": 3.50 }
]
}Numeric thresholds — small caps gapping up on volume, no earnings noise
curl "https://api.tickerbot.io/v1/scan?q=gap_up_3pct%20AND%20volume_unusual_2x%20AND%20market_cap%20%3C%202000000000%20AND%20NOT%20earnings_this_week" \
-H "Authorization: Bearer YOUR_KEY"{
"q": "gap_up_3pct AND volume_unusual_2x AND market_cap < 2000000000 AND NOT earnings_this_week",
"sort": "-day_change_pct",
"as_of": "2026-04-30T14:32:11Z",
"count": 2,
"returned": 2,
"matches": [
{ "ticker": "RIOT", "name": "Riot Platforms", "gap_up_3pct": true, "volume_unusual_2x": true, "market_cap": 1850000000, "earnings_this_week": false, "day_change_pct": 8.41 },
{ "ticker": "MARA", "name": "Marathon Digital", "gap_up_3pct": true, "volume_unusual_2x": true, "market_cap": 1620000000, "earnings_this_week": false, "day_change_pct": 5.74 }
]
}Same scan, full ticker objects
curl "https://api.tickerbot.io/v1/scan?q=above_sma_50%20AND%20volume_unusual_2x&full=true&limit=2" \
-H "Authorization: Bearer YOUR_KEY"{
"q": "above_sma_50 AND volume_unusual_2x",
"full": true,
"as_of": "2026-04-30T14:32:11Z",
"count": 12,
"returned": 2,
"matches": [
{ "ticker": "PLTR", "name": "Palantir", "...": "(full ticker object — same shape as /v1/tickers/{ticker})" },
{ "ticker": "SOFI", "name": "SoFi Technologies", "...": "(full ticker object)" }
]
}