Overview
Learn how to build notification workflows with Notiflows
A notiflow is a notification workflow that defines how and when notifications are delivered to your users. Each notiflow consists of a series of steps that control the flow of notification delivery.
Notiflow Structure
Every notiflow contains:
- Trigger Step — The entry point that starts the workflow when run via API
- Channel Steps — Send notifications through configured channels (email, SMS, push, etc.)
- Control Steps — Modify flow behavior (wait, digest, throttle)
- Condition Steps — Route notifications down different branches based on rules
- End Step — Marks the completion of a workflow path
Steps are ordered sequentially by position. Condition steps create branches, allowing different recipients to follow different paths through the flow.
Step Types
| Step | Purpose |
|---|---|
| Trigger | Entry point — receives recipients, actor, and data from the API |
| Channel | Send a notification via a configured channel |
| Condition | Route notifications into branches based on conditions |
| Wait | Delay execution for a duration |
| Digest | Group notifications together |
| Throttle | Limit notification frequency |
| End | Terminate a workflow path |
Building a Notiflow
- Create a notiflow — Give it a name and description
- Add steps — Drag steps onto the canvas from the toolbar
- Configure channels — Select which channel to use for each channel step
- Design templates — Create the notification content with dynamic variables
- Test — Preview and test your notiflow before publishing
- Publish — Make the notiflow live and ready to run
Example Flows
A simple order confirmation notiflow:
Trigger → Email → EndA follow-up reminder with a delay:
Trigger → Email → Wait (24 hours) → Push → EndA flow that routes based on user attributes:
Trigger → Condition
├─ Premium users → Email + SMS → End
└─ Free users → Email → EndVersioning
Notiflows use a versioning system to safely make changes without affecting live notifications. You edit a draft version, and when ready, publish it to make it live. See Versioning for details.
Templates
Each channel step has an associated template that defines the notification content. Templates use Liquid syntax for dynamic content. See Templates for details.