Flow Studio
Entity Output Mapping
How entity node output is structured in execution memory and the expression patterns for accessing single records, nested fields, and query result arrays.
Output Structure Summary
| Node Type | Output Root | Key Access Pattern |
|---|---|---|
| EntityRead | { entityId, entityType, data } | $output.{id}.data.fieldName |
| EntityCreate | { entityId, entityType, data } | $output.{id}.entityId (to chain) |
| EntityUpdate | { entityId, entityType, data, version } | $output.{id}.version (for next update) |
| EntityQuery | { items, totalCount, page, pageSize } | $output.{id}.items[0].data.fieldName |
Common Access Patterns
// Single field from read:
$output.fetchInvoice.data.invoiceNumber
// Nested array field:
$output.fetchInvoice.data.lineItems[0].amount
// Reduce over array in expression:
$output.fetchInvoice.data.lineItems.reduce((sum, item) => sum + item.amount, 0)
// First query result field:
$output.searchInvoices.items[0].data.invoiceNumber
// Array of IDs from query results:
$output.searchInvoices.items.map(item => item.entityId)
// Total from query:
$output.searchInvoices.totalCount
// Check if any results exist:
$output.searchInvoices.items.length > 0
// Pass entityId forward:
$output.createExpense.entityId
Null safety: When
failOnNotFound is false, a Read node may return null. Use $output.fetchInvoice?.data?.total ?? 0 (optional chaining) to safely access fields and avoid null reference errors in downstream expressions.