Flows
Understand flows -- the building blocks of in-app experiences.
Flows
A flow is a self-contained in-app experience made up of one or more screens. Flows are the primary building block in Setgreet -- everything your users see inside your app is delivered through a flow.
What you can build with flows
- Onboarding walkthroughs -- multi-screen sequences that introduce new users to your app.
- Feature announcements -- single-screen modals that highlight what is new.
- In-app surveys -- collect feedback with NPS, rating, and free-text components.
- Upgrade prompts -- targeted nudges that encourage plan upgrades.
- Checklists and progress -- guide users through setup steps with progress indicators.
- Contextual tooltips -- surface help content at the right moment.
Flow lifecycle
Every flow moves through a well-defined set of states:
Draft
When you create a new flow, it starts as a draft. You can add screens, configure components, set up triggers, and iterate freely. Draft flows are never served to the SDK -- your app users will not see them.
Published
Publishing a flow makes it live. The SDK fetches published flows and renders them when trigger conditions match. Once published, the flow continues to be editable through the draft system (see Publishing Flows for details).
Unpublished
You can unpublish a flow at any time to remove it from SDK responses without deleting it. The flow retains all its configuration and can be re-published later.
Flow priority
When a user matches multiple flows at the same time, Setgreet uses a priority system to decide which flow to show. Each flow has a numeric priority value -- the flow with the highest priority wins.
Set priority from the flow settings panel in the dashboard. Use higher numbers for more important or time-sensitive flows (e.g., a critical announcement should have higher priority than a general onboarding sequence).
Flow structure
Under the hood, a flow is a directed graph of nodes and edges:
| Node type | Purpose |
|---|---|
| Start | Entry point of the flow. Can hold trigger conditions. |
| Screen | A visual screen with components. |
| Condition | Evaluates a condition and branches to different paths. |
| Branch | Routes users based on their response to a component. |
| End | Terminates the flow. |
Nodes are connected by edges that define the navigation path. The flow builder provides a visual canvas for assembling these nodes -- see Flow Builder for details.
Next steps
- Flow Builder -- learn the visual canvas editor.
- Screens -- understand screen configuration.
- Triggers -- control when flows appear.
- Branching -- create conditional paths.
- Publishing -- manage the draft and publish lifecycle.