Request body
{
"parameters": [
{
"name": "start_time",
"value": "2024-01-01T00:00:00Z"
},
{
"name": "domain",
"comparisonOperator": "CONTAINS",
"value": "example.com"
}
],
"response_columns": ["at_timestamp", "related.domain", "client.ip"]
}
| Field | Required | Description |
|---|---|---|
parameters |
Yes | Array of parameter entries. Each entry must have a name and value. |
response_columns |
Conditional | List of column names to include in the response. If the query defines default columns, this field is optional — omit it to receive those defaults. If the query defines no defaults, this field is required. Omitting it returns a 400 Bad Request. |
Parameters
Each entry in the parameters array has the following shape:
| Field | Required | Description |
|---|---|---|
name |
Yes | The parameter name as listed in the query definition |
value |
Yes | The value to filter on. Can be a string, number, or array (when the parameter supports it) |
comparisonOperator |
No | How to compare the value. Only valid when the query parameter declares allowed_operators (check via Describe a predefined query). Supplying an operator for a parameter that does not declare allowed_operators returns a 400 Bad Request error. |
Comparison operators
When a query parameter declares allowed_operators, you may specify how your value is matched. The following operators are supported:
| Operator | Behavior |
|---|---|
EQ |
Exact match. The observation field must equal the supplied value. |
IN |
Match any value in the supplied list. Use this with an array value. |
CONTAINS |
The observation field must contain the supplied string as a substring (case-sensitive partial match). |
EQ, eq, and Eq are all accepted.
To check whether a parameter supports comparison operators, call the Describe a predefined query endpoint and inspect the allowed_operators field on the parameter object. If the field is absent or empty, that parameter does not support comparison operators — attempting to supply a comparisonOperator for such a parameter will result in a 400 Bad Request error instructing you to remove the field.
Selecting response columns
Use response_columns to specify which columns to include in the response. If omitted, the query returns its default columns (if defined).
{
"response_columns": ["at_timestamp", "client.ip", "server.ip", "host.hostname"]
}
- Use the Describe a predefined query endpoint to discover the full list of valid column names from the
default_columnsarray. - Supplying an unrecognised column name returns a
400 Bad Requesterror. - Supplying an empty array (
[]) returns a400 Bad Requesterror. You must provide at least one column name. - If the query defines
default_columns, you may omitresponse_columnsentirely to receive those defaults. - If the query defines no
default_columns, thenresponse_columnsis required. Omitting it returns a400 Bad Requestwith the messageresponse_columns is required for this query.