Digest Step
Group multiple notifications together
The digest step collects multiple trigger events for the same recipient and groups them into a single notification. This prevents notification overload when many events occur in a short period.
Configuration
| Setting | Description |
|---|---|
| Duration | The digest window duration (number) |
| Unit | The time unit: seconds, minutes, hours, or days |
| Digest Key | Optional property to group notifications by (e.g., data.thread_id) |
The digest window opens when the first event arrives. When the window closes (after the configured duration), all collected events are sent as a single notification.
Use Cases
Activity digests
Instead of sending a notification for every comment, digest them:
Trigger → Digest → Email → EndReducing notification fatigue
Digest rapid events to avoid overwhelming users:
Trigger → Digest → Push → EndTemplate Access
When a digest window closes, templates have access to the collected events. Each item in digest.items contains:
| Field | Description |
|---|---|
data | The original notification data payload |
actor | The actor who triggered the notification (id, external_id, email, first_name, last_name) |
recipient | The recipient of the notification (same fields as actor) |
You have {{ digest.total_items }} new notifications:
{% for item in digest.items %}
- {{ item.actor.first_name }} {{ item.actor.last_name }}: {{ item.data.message }}
{% endfor %}How It Works
- First trigger event starts a new digest window
- Subsequent triggers for the same recipient are added to the digest
- When the digest window closes, execution continues to the next step
- The next step receives all the digested data
- A new digest window starts for the next set of triggers
Digest Key
Events are digested per recipient by default. Each user has their own digest that collects events independently.
You can optionally set a digest key to group events by a specific property. For example, setting the digest key to data.thread_id will create separate digest windows for each thread — so a user subscribed to multiple threads gets one digest per thread.
Digest vs Throttle
| Digest | Throttle | |
|---|---|---|
| Behavior | Combines events into one notification | Drops excess notifications |
| Data | All events included in the digest | Only the first notification is sent |
| Use when | You want to aggregate (e.g., "5 new comments") | You want to limit (e.g., max one alert per hour) |
See Throttle Step for more on throttling.