Sign In

Summarize

Group items by one or more fields and compute aggregation statistics like sum, average, min, max, count, and concatenate.

The Summarize node groups an array of items by specified fields and computes aggregation functions on each group. It is the logic-node equivalent of a SQL GROUP BY with aggregate functions.

Configuration

FieldTypeRequiredDescription
sourcePathstringYesVariable path to the source array (e.g., {{httpRequest_1.body.orders}}).
groupBystring[]NoArray of field names to group by. When empty, all items are treated as a single group.
aggregationsAggregationRow[]YesOne or more aggregation definitions (see below).

Aggregation Row

Each aggregation row defines one computation to perform per group.

PropertyTypeRequiredDescription
fieldstringYesThe field name to aggregate on.
operationenumYesOne of: count, countUnique, sum, avg, min, max, concatenate.
outputKeystringNoCustom key for the result. Defaults to {operation}_{field} (e.g., sum_amount).
separatorstringNoSeparator string for the concatenate operation. Defaults to ", ".

Operations

  • count -- Total number of items in the group.
  • countUnique -- Number of distinct values (compared by JSON serialization).
  • sum -- Numeric sum. Non-numeric values are skipped.
  • avg -- Numeric average. Non-numeric values are skipped.
  • min -- Smallest numeric value. Returns null if no numeric values exist.
  • max -- Largest numeric value. Returns null if no numeric values exist.
  • concatenate -- Joins all values into a single string using the configured separator.

Output

FieldTypeDescription
resultsarrayArray of result objects. Each object contains the group-by field values plus one key per aggregation.
groupCountnumberNumber of distinct groups.
totalItemsnumberTotal number of items in the source array.

Example

Given an orders array, group by region and compute the total revenue and order count per region.

Source Path: {{httpRequest_1.body.orders}}
Group By: ["region"]
Aggregations:
  - field: revenue, operation: sum, outputKey: totalRevenue
  - field: id, operation: count, outputKey: orderCount

The output results array will contain one object per region:

[
  { "region": "US", "totalRevenue": 5200, "orderCount": 42 },
  { "region": "EU", "totalRevenue": 3100, "orderCount": 28 }
]

On this page

Summarize | Buildorado