Equities Screener API
Powerful, criteria-based screening using flexible filtering logic.
Operators
Use this page to look up the operators you can use in scope and query, the syntax for each, and the data types that support them. For explanations and examples, see Filter Conditions.
Filter Operators
These operators apply to a single data point.
| Operator | What It Does | Syntax |
|---|---|---|
eq | Equals a single value. | { "<dataPoint>": <value> } |
in | Equals any value in a list. | { "<dataPoint>": [<value>, <value>] } |
gt | Greater than. | { "<dataPoint>": { "gt": <value> } } |
gte | Greater than or equal to. | { "<dataPoint>": { "gte": <value> } } |
lt | Less than. | { "<dataPoint>": { "lt": <value> } } |
lte | Less than or equal to. | { "<dataPoint>": { "lte": <value> } } |
contains | Contains a substring. | { "<dataPoint>": { "contains": "<text>" } } |
| Fuzzy | Approximately matches text. | { "<dataPoint>": { "value": "<text>", "fuzzy": true } } |
You don't write eq or in in a request. A single value is an eq filter, and a list of values is an in filter. The names eq and in appear in the operators property of the data point metadata.
You can combine gt or gte with lt or lte in one object to set a range. See Comparison Filters.
Compound Operators
These operators combine other conditions.
| Operator | What It Does | Syntax |
|---|---|---|
and | All conditions must match. | { "and": [<condition>, <condition>] } |
or | At least one condition must match. | { "or": [<condition>, <condition>] } |
not | None of the conditions can match. | { "not": [<condition>, <condition>] } |
Compound operators can be nested. Write all operators in lowercase. See Compound Filters.
Operators by Data Type
| Data Type | eq | in | gt, gte, lt, lte | contains | Fuzzy |
|---|---|---|---|---|---|
boolean | Yes | ||||
date | Yes | Yes | Yes | ||
number | Yes | Yes | Yes | ||
string | Yes | Yes | Some data points | Some data points |
The and, or and not operators combine conditions, so they apply to every data type.
The metadata for each data point lists the operators that it supports. Always check it before you use a data point in a filter, because it is the authoritative source. For example, some values that represent dates are stored as strings, and their metadata lists the comparison operators. See Explore Data Points.
Value Formats
| Value | Format | Example |
|---|---|---|
| Text | A JSON string. | "MSES" |
| Number | A JSON number, with no quotation marks. | 4 |
| Boolean | true or false, with no quotation marks. | true |
| Date | A string in yyyy-MM-dd format. | "2024-03-31" |
| List | A JSON array of values of one type, with at least one value. | ["MSES", "CA40"] |