Skip to main content
InfraQL is the query language for Infrawatch data. It combines readable search syntax with typed fields, boolean logic, time windows, collections, pattern matching, and dataset-aware correlation.
The public API validates InfraQL against the selected dataset before it reaches the search backend. Invalid fields, values, and operators return a stable client error.

What InfraQL supports

Operators and values

Combine typed comparisons, boolean logic, collections, existence checks, and field aliases.

Time and ranges

Search relative windows, fixed dates, exact timestamps, and inclusive or exclusive ranges.

Correlate services

Use same_service(...) when several conditions must match one service on a host.

Patterns and text

Use contains, wildcards, regular expressions, quoted phrases, and bare banner terms where the field allows them.

Choose a dataset

Search starts with the result you want:
Host queries normally prefix service fields with services.. Service queries use those fields directly. Inside same_service(...), use the service field names without the prefix.

Start with a field

The basic clause is:
Combine clauses with AND, OR, NOT, and parentheses:
InfraQL also accepts implicit AND between adjacent clauses:
Use the explicit form in saved queries and automation because it is easier to review.

Examples by dataset

Returns hosts in Great Britain with one observed SSH service on port 22.

Combine context in one query

Host search can combine network attribution, tag classifications, and evidence from one matching service:
This finds hosts in Germany that are classified in the proxy taxonomy and have one HTTPS service whose page title equals Grafana. same_service(...) prevents the protocol and HTTP conditions from matching different services on the same host.

Validate before execution

Validate a generated, user-supplied, or automated query against the same dataset you intend to search:
Validation checks syntax, fields, operators, and dataset policy without running the search. Pass the InfraQL expression in q. curl --data-urlencode safely encodes spaces and punctuation:
Every response contains a dataset array, the normalized query, and a shared pagination object.

Browse every field

Inspect types, operators, aliases, and dataset-specific meanings.

Follow analyst workflows

Apply InfraQL to IP, service, DNS, bulk-enrichment, and aggregation work.