Runtype
Changelog
ImprovementJuly 1, 20261 min read

New get-record and list-records flow steps

Two new flow steps make record reads unambiguous: get-record always returns one record, list-records always returns an array. The old retrieve-record step is deprecated but keeps working.

flowsrecordsflow-stepsvalidation

Reading records in a flow is now unambiguous. The retrieve-record step returned an object for ID lookups but an array for queries, a shape mismatch that caused silent undefined reads downstream. Two new step types make cardinality part of the step type itself.

  • get-record. Always returns a single record object. Look up by ID, by type and name, or by filter; multiple matches return the most recently updated, and zero matches fails the step with a clear error.
  • list-records. Always returns an array, newest first, with a limit (default 50, max 1000) and configurable empty-result behavior.
  • retrieve-record keeps working. Existing flows execute unchanged: the engine rewrites the deprecated step to its exact equivalent, and saved flows are migrated with behavior preserved.
  • Author-time warnings. The validator now flags a list output read object-style ({{records.field}} instead of {{records.0.field}}) at save time, before it fails silently at runtime.