Skip to content

Block: Root

Type: action_root

the Root block

The Root block is the foundation of every Adafruit IO Action. Connect Triggers (like 'when temperature > 80°F' or 'every morning at 8 AM') to define when your Action runs, then attach Action blocks (like 'send email', 'publish to feed', or 'if/then logic') to define what happens when triggered.

Configuration

⚙️

The Root block has special configuration settings that control how your action's triggers behave. You can access these by clicking the gear icon on the block.

Delay Setting

The Delay Setting allows adding a delay period after a trigger fires, before the Actions are executed, preventing the action from running too frequently. This is useful for rate-limiting notifications or avoiding noisy data that might cause rapid re-triggers.

Delay Settings workspace

As well as setting the duration, there are two delay modes:

  • Reset (Extend Delay): "deletes the existing delay and start a new one"

    Each time a trigger condition is met during the cooldown period, the delay timer is reset. The action will only run after the trigger condition has remained true for the entire duration of the delay.

    • Example: If you have a 5-minute delay for a "temperature > 80°F" trigger, and the temperature keeps fluctuating above 80°F every minute, the action will not run until the temperature stays below 80°F for a full 5 minutes.
  • Keep (Ignore): "keeps the existing delay and ignore new triggers"

    The action runs the very first time the trigger condition is met, after the delay period. It ignores all subsequent trigger events until the delay period has passed and actions executed.

    • Example: After a 5-minute delay the action runs, from when the temperature first goes above 80°F. It will ignore any change in trigger conditions, regardless of what the temperature does during that time.

Inputs

Triggers

Connect trigger blocks here to define WHEN your Action should run. Choose from Reactive triggers (respond to feed updates), Scheduled triggers (run at specific times), or Timer triggers (delayed responses). Multiple triggers can be added, and any of the trigger conditions being true will cause the action to run (after an optional delay).

Compatible Blocks (click to expand)

Actions

Connect action blocks here to define WHAT happens when your triggers activate. This can include sending emails, publishing values to feeds, conditional if/then logic, mathematical operations, or webhook calls. Actions execute in sequence from top to bottom.

Compatible Blocks (click to expand)