Output Ports
| Port | Condition | Description |
| success | Operation completed without error | Result is available at output.NodeName.result. For count operations, output.NodeName.count is also populated. |
| error | Expression evaluation error or invalid collection | Error details in output.NodeName.error. Syntax errors in the expression string cause this port to fire. |
Output Data Fields
| Field | Type | Present For | Description |
result | any | All operations | The primary result of the operation. Array for filter/map/sort/distinct/reverse; scalar for reduce; object or null for first/last; integer for count. |
operation | string | All operations | The operation name that was executed (e.g., "filter"). Useful for logging and conditional branching. |
count | integer | count, filter | The number of elements in the result set. For filter, this is the number of matching elements. For count, this equals result. |
Per-Operation Output Examples
// filter operation output:
{
"result": [
{ "orderId": "ORD-001", "status": "active", "total": 100 },
{ "orderId": "ORD-003", "status": "active", "total": 250 }
],
"operation": "filter",
"count": 2
}
// map operation output (extracting IDs):
{
"result": ["ORD-001", "ORD-003", "ORD-005"],
"operation": "map"
}
// reduce operation output (sum):
{
"result": 580.50,
"operation": "reduce"
}
// first operation output:
{
"result": { "orderId": "ORD-001", "status": "pending", "total": 99.99 },
"operation": "first"
}
// count operation output:
{
"result": 7,
"operation": "count",
"count": 7
}
Accessing Results Downstream
| Expression | What It Returns |
{@ output.FilterActiveOrders.result } | The filtered array of active order objects |
{@ output.SumOrderTotals.result } | The numeric sum produced by reduce |
{@ output.FilterActiveOrders.count } | Number of active orders (integer) |
{@ output.FindFirstPending.result.orderId } | The orderId of the first pending order |