RapidPro Flow Repository

This
page is meant to provide an overview of flows that are worth sharing for reuse
and adaptation. The flows are grouped based on functionality or module. The
plan is that more and more flows will be added as they become available. If you
have ideas or suggestions or if you have an interesting flow you’d like to
share, please let us know!

Some
flows listed below are project specific (e.g. U-Report) but they can be easily
modified and used for other initiatives.

You can
download the flows you’re interested in (json files) and import them into your account. As you will
see, notes are added in the flows to explain the different parts and functions.

Registration

Registration
flow in English

This
flow is the most recent flow used to register new U-Reporters. Make sure you
modify it to reflect your needs and check if all works well before using
it! A blog post is available which will
take you through all the basics and steps.

This
flow illustrates how to use Split by expression to create groups based on
channels used for triggering a flow. For example, if someone used Twitter to
trigger the flow, we can add them to the Twitter group.

This
flow can be triggered by a contact to get more information about a certain
initiative. In this example a (potential) U-Reporters can trigger this flow to
get more information onU-Report, how to join, the website or how to opt out.

Engagement CounterThese flows can be used to keep track of who is participating and who is not. They can be used for example to monitor the level of engagement among U-Reporters to allow for targeted polling, to identify most active (or inactive) U-Reporters, and to reduce their overall SMS costs. More information can be found in this blog post.

This
flow is to show how a webhook can be used to compare an entry with a list of
predefined words outside RapidPro. In this example we ask a user to give us a
name of a hospital which is then compared with an official list outside
RapidPro. See this blog post with instruction on how to
create such a flow.

This
flow illustrates how to collect multiple pieces of info using the Split by
message form functionality. An enumerator can for instance submit the name of a
school, number of students and number of teachers in 1 SMS message. For more
information on this see this blog post.

This flow shows how to use structured form to collect multiple data points in one SMS. The response should be submitted in such a way that RapidPro “knows” how to interpret the information. In this case, the first number represents the number of girls, and the second number represents the number of boys. The numbers are separated by a period (.). For more information on this see this blog post.

This
flow is to show how you can limit the number of wrong responses to a question.
In this example, we ask for age as a number. If the response is not a number,
we set a counter for the number of retries.