Nodes and execution
Last updated
Was this helpful?
Last updated
Was this helpful?
A node represents an instance of a function or event, with the original function or event being its declaration. Each node has input and output properties, as well as input and output triggers. Properties handle data acceptance and production, while triggers determine when a node is called.
Nodes without triggers are called on demand.
Understanding the difference between triggers and properties is crucial. Properties pull data from their connected sources, while triggers pushes the flow of execution to the next trigger.
When a request is received matching the /hello
endpoint with method GET
and a query parameter name
, the HttpEndpoint
event is triggered.
The Template
node is then called, because the Log
node depends on its result, and it doesn't have any triggers.
The Log
node is executed, with input from the Template
node.
The Template
node is called again, since the HttpResponse
node also depends on it.
The HttpResponse
node is called with input from the Template
node.
Functions without any trigger inputs or outputs are called on demand, and don't cache their results, meaning that if several nodes depend on the output of a single non-triggerable node, it is called several times, like in the example above.
Functions with triggers can only be called by triggering them from a previous function or event, or by clicking the play-button in their header.
They do cache their results, meaning that as long as a triggered node has been called, any node that depends on any of its outputs will use the values from its last execution.
If a node depends on value from a triggered node which has not yet been called, the result will be null
.