Use Query Data (rollout.query) for an authorized, read-only query over a
workspace source. Filters use the shared query grammar, for example
entity_type:ledger created_at:>=-7d, and order_by accepts comma-separated
field:direction keys.
Shape the response
fields accepts dotted paths such as data.external_id and data.amount.
exclude removes dotted paths after that projection, which is useful for
dropping source payloads such as data.raw. The record id is always retained.
New nodes use strict validation, so an unknown top-level field fails when the
flow is saved or run. An explicitly stored strict: false remains permissive;
omitting the setting now uses the strict default.
Large workflow-history fields are opt-in. Add error to include for
WorkflowRun records, or inputs / outputs for WorkflowStepRun records. They
are otherwise neither selected from PostgreSQL nor emitted in node output.
Complete and latest-per-group reads
Every result reports returned_count, exact total_count, and truncated.
on_truncation controls a partial result: warn (default) logs a warning,
fail returns query_truncated with both counts, and ignore accepts the
page while keeping truncated: true.
Enable fetch_all to page through all matches. The operation fails with
query_fetch_limit_exceeded before materialization when more than 10,000 rows
match; narrow the query or use a checkpoint-oriented domain API in that case.
distinct_on keeps the first row for each group. The node automatically makes
the distinct key the first ascending order key, then applies order_by. For
example, distinct_on: "data.account_id" with order_by: "created_at:desc"
returns the newest EntityRecord per account. A data.<field> key must be an
active sortable scalar field on the one entity type selected by the query.
For EntityRecord output metadata, an explicit entity_type config wins. If it
is blank, one positive entity_type:<slug> query term is used automatically.