Overview
The "Push" node allows you to store (or "push") incoming data into a shelf-like structure within the n8n flow context, associating it with a user-defined key. This is useful for temporarily saving data during workflow execution, enabling later retrieval or aggregation of items under a specific key.
Common scenarios:
- Collecting and grouping data from multiple sources before further processing.
- Implementing batching or deduplication logic by accumulating items in the shelf.
- Temporarily storing intermediate results for use in subsequent workflow steps.
Example:
You might use this node to gather all items from several triggers or branches, store them under a common key, and then process them together at a later stage in your workflow.
Properties
| Name | Type | Meaning |
|---|---|---|
| Key | String | The key to be associated with the data in the shelf context. |
Output
- The node outputs the same input data it receives, unchanged, as an array of items in the
jsonfield. - No binary data is produced.
- The main effect is the side-effect: the input data is stored in the flow context's
shelfobject under the specified key.
Example output:
[
{
"json": { /* original input item */ }
},
...
]
Dependencies
- No external services or API keys are required.
- Relies on n8n's built-in flow context (
this.getContext("flow")) to store data.
Troubleshooting
Possible issues:
- If the "Key" property is not set or is duplicated across nodes, data may be overwritten or mixed unintentionally.
- Large amounts of data stored in the shelf may impact workflow performance or memory usage.
Error messages:
- The node does not explicitly throw custom errors, but if the context is unavailable or corrupted, unexpected behavior may occur.
Resolution:
- Ensure unique and meaningful keys for each use case.
- Monitor the amount of data being pushed to avoid excessive memory consumption.