8–10 min read
Getting Started
Updated on: 17/12/2025
Learn RapidPro terms fast (and align your team)
If you just need the essentials, use this as your fast path:
- Start with Flows basics (Flow, Node, Action, Run, Results)
- Understand parent/child flows and variables (
@parent,@child) - Review Channels & delivery terms (Channel, Outbox, Ticketing)
- Learn Contacts & data terms (Contact, Fields, URNs)
- Get comfortable with Variables and Expressions
- Know Automation terms (Campaigns, Events, Triggers)
- Clarify Roles (Admin, Editor, Viewer, Surveyor)
- Use Logs, Labels, and Dashboard for reporting
- Understand Flow events, resthooks, and classifiers
You’re done. You can now read docs and collaborate with fewer misunderstandings (especially on flows, roles, and automation).
Step-by-Step Process
Flow = the step-by-step path a contact follows after a trigger starts an interaction. Flows can send messages, collect answers, branch, and update contact data.
Flow editor = the canvas where you design and update flows.
Node = a unit in the flow containing an action or a split. Nodes connect to one another to form the logic.
Action = a step where something happens (e.g., Send Message, Update Contact, Enter Another Flow).
Node exits = the possible paths out of a node (Yes/No/Other/No response). A red exit usually means the contact leaves the flow through that route.
[CAPTURE: Flow editor showing a small flow with nodes and visible exits, including a red exit.]
Run = one contact’s complete passage through a flow (entry → exit). A run records the path taken, messages sent, and updates made.
Results = analytics and collected data: completion, path breakdown, response values, and message/run metrics.
Start a flow = ways a flow begins (manual Start Flow, keyword trigger, campaign/schedule, or an incoming call/message trigger).
[CAPTURE: Results screen showing completion/path analytics, plus the Start Flow button in the editor.]
Parent & child flows happen when you use Enter Another Flow:
- The current flow becomes the parent.
- The new flow becomes the child.
- The contact returns to the parent when the child finishes (or expires).
Parent/child variables:
- In the child flow, use
@parentto reference values collected in the parent (e.g.,@parent.field). - In the parent flow, use
@childto reference values collected in the child after returning (e.g.,@child.field).
[CAPTURE: Flow editor showing “Enter Another Flow” action + a message node using @parent or @child.]
@child data.Channel = how your workspace sends/receives messages or calls (SMS, WhatsApp, Messenger, Telegram, etc.). You can connect multiple channels (even the same type).
Outbox = when delivery errors occur, messages may queue and retry until they send or the error clears.
Ticketing / Ticketing service = moving a conversation from automation to a human agent workflow (assign, reply, close), while keeping the contact context.
[CAPTURE: Channels list showing multiple channels + an outbox indicator or message queue view + a ticketing settings screen (if enabled).]
Contact = any person who has interacted with your workspace (or may in the future).
Contact field = saved attributes (name, district, dates, custom data). Fields help segmentation, personalization, and storing survey responses.
URN (Uniform Resource Name) = an address for a contact (phone number, email, social handle). One contact can have multiple URNs pointing to the same person.
[CAPTURE: Contact profile showing fields + URNs section with multiple contact addresses.]
Variable = a reference you can use in messages or logic:
@contact.first_name(contact variable)@urns.tel/@urns.mailto(URN variables)@results.age(flow result variable)- Global variables configured at workspace level
Expression = embedded logic for formatting, calculations, or text transformations inside flows.
Global variable = define once, reuse everywhere (e.g., hotline number, URLs, constants).
[CAPTURE: Flow node showing a message using variables + an expression editor snippet + a workspace globals/settings screen.]
Campaign = a schedule driven by a date field on the contact (e.g., appointment date).
Campaign event = a specific scheduled action (send message / start a flow) relative to that date.
Trigger = rules that decide how/when a flow starts (keywords, incoming/missed calls, catch-all messages, platform events, schedules).
[CAPTURE: Campaign screen showing events + Triggers screen showing keyword trigger and/or schedule trigger.]
Login = a user account in your workspace with an assigned role.
Admin = full control (settings, users, channels, all content). Responsible for configuration and security.
Editor = builds/operates flows, contacts, campaigns, triggers, exports/imports (but not core workspace settings or managing other users).
Viewer = read-only visibility for stakeholders.
Surveyor = no access to the web UI; only submits offline survey results via Surveyor apps.
[CAPTURE: User management/roles screen showing role options and permissions summary.]
Dashboard = high-level activity overview (volume, trends).
Label = organize flows/messages/responses and filter faster.
Logs = detailed history for debugging and auditing (channel logs, flow start logs, contact history).
Flow event = events generated by flows that external services can subscribe to (often via resthooks).
Classifier = interprets free-text to detect intents/topics or categorize responses.
[CAPTURE: Dashboard overview + Labels UI + Logs screen + an integration screen referencing flow events/resthooks.]
Common Issues & Quick Fixes
Problem: People on my team use “node”, “action”, and “split” interchangeably.
Fix: Align on definitions: a node holds an action or a split. Use “action” for what the step does, and “node” for where it lives on the canvas.
Problem: We don’t know why a contact “left the flow.”
Fix: Check node exits and run details: a red exit typically indicates leaving the flow. Use Results and logs to see which exit was taken.
Problem: A staff member can’t change workspace settings (language/timezone/channels).
Fix: Confirm their role. Those settings typically require Admin. If they’re an Editor, ask an Admin to apply the change.
Problem: Messages are “not sending” but the flow looks fine.
Fix: Check the channel and outbox: delivery issues may queue messages for retry. Review channel logs for the real error.
Problem: We’re not sure what “URN” means during contact setup.
Fix: URN is a contact address (phone/email/handle). One contact can have multiple URNs that all point to the same person.
