How to Restrict Access to Flows

TextIt is a visual programming language used to build messaging applications and chat bots. A core concept of this language is the flow: a series of of actions and rules used to build branch logic (also called "conditional branching" or "skip logic"). An application or chat bot may comprise a single flow, or many connected by Start Another Flow or Start Someone Else in a Flow actions. Being that any single account may contain more than one application or bot, we'd like to explain how you can restrict access to each of your flows (and, by extension, your applications or bots). 

First, it's helpful to understand how the modules that comprise your account interact. Each account contains channels, contacts, flows, campaigns and triggers. In this article, we focus on channels, contacts, flows and triggers. 

Channels & Contacts

Your account may contain one or more channels, which are essential for messaging. Each time a new contact sends a message to once of your channels, they're added to the Contacts Tab and assigned to that channel. If you have multiple channels of the same type connected to your account, TextIt will prioritize the channel the contact last messaged. Once a contact is assigned to a channel, they'll only received messages from that channel (until they send a message to a different channel connected to your account). Specifically, the following conditions must be met for a contact to be assigned to a channel:

  1. You have multiple channels of the same type connected to your account.
  2. The contact's address type corresponds with the channel type (e.g. phone number) of one or more of your channels.
  3. The contact messages the channel.

Note that if you have multiple Twilio numbers connected to your account, you can create a Messaging Service via the Twilio console to add additional logic to modify your channels' message routing behavior. See this guide to learn more. 

Flows & Triggers

Flows can be triggered by keywords, dates and times, messages not caught by existing triggers, and more. In this article, we focus on keyword triggers. Keyword triggers are convenient because they enable contacts to initiate flows on their own time. When implemented correctly, they can serve the purpose of assigning a contact to a channel and a flow at the same time. All you need to do is choose the groups you'd like the trigger to apply to: 

Putting it Together

Once you've mapped your desired channel relationships, you can restrict access to your flows by assigning groups to your keyword triggers. If a contact doesn't belong to one of the keyword's groups, they won't be able to interact with the flow. 

Questions? Comments? Let us know; we love hearing from you. 

Follow us on Twitter to interact with a chat bot built with TextIt, or create a free account to build your own. You'll be sending messages in minutes! Get in touch anytime with any questions, comments, or suggestions.