Introducing Quick Reply Support for IP Messaging Channels

TextIt now supports quick replies, a feature that enables you to provide contacts on IP messaging channels such as Facebook Messenger, Viber, Telegram or LINE a predefined set of responses. 

Whereas simple text is the foundation of any mobile messaging experience, quick replies allow you to enhance the experience by presenting a collection of options to the message recipient. When one of these options is tapped, the set is replaced with a single text message which is then sent to your flow. 


To add quick replies to a message, simply click the dialog icon beneath TextIt's message composition form. 

These options will then appear for anyone who interacts with that flow. You can even test them yourself in the simulator. 

Quick replies are handled just like regular text, so you can continue to structure your RuleSets as you normally would.


Note that your end users aren't limited to the quick replies you've prescribed; they can respond with their own text if they'd like. It's important to consider this when adding RuleSets for questions that include quick replies.

There you have it. Questions? Comments? Let us know! We value your feedback.

Link Anyone to your Facebook Messenger Bot with Links

Just over a year ago, we announced TextIt's Facebook Messenger channel. Facebook Messenger wasn't the first non-SMS channel we added to TextIt, but it quickly became the most popular. Millions of people around the world prefer Facebook Messenger to SMS. Moreover, messages aren't limited to 160 characters and your contacts "numbers" aren't likely to change. This article introduces a new feature, triggers for referral links, that makes it easy to share your Facebook Messenger bot with others and craft their experience once they're on Messenger. Note sure where to begin with Facebook Messenger? Let us know, we're happy to help! links are a convenient way to share your Facebook Messenger bot, and they're simple to use: Facebook gives each page a link in the format, e.g. When a user clicks your link, they'll get taken to Messenger where they'll either start a new conversation with your bot via the 'Get Started' button or continue a conversation they started previously.

This is great, but what if you want to assign flows to the links you send out? Doing so is as simple as defining a reference parameter and appending it to your link in the format, e.g. Next, go to the triggers page in your TextIt account, select the 'Start a flow when Facebook refers a contact' trigger, and enter your reference parameter ('join' in our case) in the 'Referrer Id' input. 


  • If you have configured a conversation trigger for your page (triggered when a user first interacts with your bot and taps the 'Get Started' button), the referral trigger will take precendence when the user taps the 'Get Started' button. 
  • If a user already has an open conversation with your bot in Messenger, they are not shown the 'Get Started' button when they tap your link. Instead, the person will be sent directly to the conversation and, if you have an referral trigger configured, start the flow of your choice. 
  • You can change your link on your page's 'About' section (admins only). 

Questions? Comments? Let us know! We value your feedback. 

Troubleshooting Common SMS Problems

Text messages seem like a sure thing, right? We tend to send them off without thinking twice about their status or delivery order. We expect them to be delivered moments after we sent them exactly as they were authored. As it turns out, SMS isn't so simple under the hood. So in this article we're going to discuss steps you can take to troubleshoot common SMS issues. 

Message Splitting

Texts are split into a series of messages at the carrier level when they exceed their character limit (160 characters for messages that contain only the GSM character set; 70 characters for messages containing one or more non-GSM characters, like emojis 👍). Here's a tool you can use to determine whether or not your message will be split, and how many segments it will be split into. 

Delivery Order

Once a message is split, it's at risk of being received out of order. For example, if the last segment in the series is smaller than the first two, it may get to the end user first since the shorter message is sent the fastest. You can get around this by pre-splitting your messages in your flows and applying a label to indicate the order in which they should be read. 

Undelivered Messages

Android Relayer Channels

If you have an Android device, TextIt's Android channel enables you to send and receive messages anywhere you can acquire a local SIM card. Simply download the TextIt Android application on your phone and connect it to your account, and you're good to go. 

An Android channel will experience sending issues if:
  • the phone doesn't have a steady internet connection
  • the phone doesn't have a strong cellular connection
  • the Nyaruka TextIt Android app is toggled to "paused"

Log into your account, navigate to your account page, and then click your Android channel to view performance stats: 

Twilio Channels

If you're using a Twilio channel and one or more of your messages wasn't delivered, you may be encountering one of the these sending errors

To view your error and sending logs, navigate to your account page and click your Twilio channel: 

Next, click either the "Sending Log" button or "View Log" link to view bring up your sending log: 

You can use your sending log to isolate the issue and make the necessary adjustments. In the log pictured below, the user connected their trial Twilio number to TextIt and sent messages to a contact whom they hadn't verified through their Twilio account


If you suspect your channel is have trouble delivering messages, click into the log we provide you. You'll find receipts for each request we made, and if an error has occurred you'll see an error code you can bring to your channel provider's attention. 

If you aren't sure where to look or you aren't able to identify the issue, let us know! We're hear to help 

Questions? Comments? Let us know! We value your feedback. 

Look Up Phone Numbers with Twilio's Lookup API

Have you ever wanted to retrieve additional information about a phone number? Perhaps you'd like to know whether a number is a land or mobile line. Maybe you'd like to know the caller's name or carrier. If you have a Twilio account, you've got access to an API that gives you access to all of this information and more. In this article, you'll learn how to use TextIt's webhook step to retrieve information about a number within a flow. 


A webhook is an HTTP callback: a POST request that occurs when something happens (a simple event notification). A web application implementing webhooks will POST a message to a URL when something happens, and this is exactly what TextIt does when a contact reaches the 'Call Webhook' step in a flow. We can use this special step to make requests to Twilio's Lookup API. 


First, you'll need a Twilio account. Next, grab the Account SID and Auth Token from its settings page. We'll be plugging these values into the new 'Headers' section of the webhook step. (New to TextIt? Use this guide to connect a Twilio number to your account and start sending). 

Credentials in hand, head over to to apply a special type of encoding that Twilio expects for this sort of request*. Simply input your Account SID and Auth Token separated only by a colon, e.g. ADa19ehc8fb23d2515:d09a32e56d8512685, and click the 'Encode' button. 

*Twilio uses a form of authentication called 'Basic Auth'. Basic Auth requires incoming user credentials to be base64 encoded. 

Copy the output and navigate to your TextIt account. Create a flow, select the 'Call Webhook' RuleSet, click the blue 'Additional Options' link, and create a header whose key is 'Authorization' and value  is 'Basic' plus your encoded Twilio credentials: 

Finally, manipulate to the URL to suit your needs. The expression @contact.tel_e164 will resolve to the active contact's number, but you can change it to another number if necessary. You can also change the 'type' query parameter to be 'caller-name'.


You'll receive a JSON object like the one above, and you can access any of it's values using the @extra expression. For example, @extra.carrier.type will give you the value of the 'type' key and will give you the name of the carrier. 

If you want your flow to evaluate the contact's carrier's type, you can add a 'Split by Expression' RuleSet like this one: 

The resulting flow might look something like this (landlines are exited): 


  • Twilio does impose a small, pay-as-you-go fee for carrier and caller name lookups, more here
  • You can also pass basic auth credentials through the URL itself, e.g.

Questions? Comments? Let us know! We value your feedback. 

SMS Messaging Best Practices

From research study delivery to customer interaction, SMS messaging has become one of the most effective ways for organizations of every kind to both collect and disseminate information. Use this short guide to ensure that your organization's SMS messaging system adheres to best practices as dictated by the United States telecommunications industry.  

SMS traffic in the United States is governed by the Telephone Consumer Protection Act (TCPA), which dictates how and when enterprises and consumers can exchange messages. If your organization complies with the TCPA, you're probably in good shape, but you may be wondering, "is there anything else I should be considering?"  That bit is dictated by CTIA – The Wireless Association, an advocacy group representing the U.S. wireless communications industry as a whole. This guide serves to break CTIA's messaging recommendations into a short, clear guide to engaging in consumer-oriented messaging while simultaneously preventing the transmission of unwanted messages.

P2P vs A2P

It's important to first distinguish between the US telecommunications industry's person-to-person (P2P) and app-to-person (A2P) messaging definitions. 


P2P covers low-volume messaging, whether the participants are (a) individual wireless consumers or (b) wireless consumers and consumers of cloud-based messaging services or enterprises (e.g. TextIt). These exchanges must conform to the CTIA's "typical human operation" classification, which covers situations in which: 

  • No more than 60 messages are sent per minute. 
  • No more than 1,000 messages are sent per day. 
  • No more than 200 unique recipients are reached in total. 
  • The average ration of incoming to outgoing messages is typically 1:1, with some wiggle room. 

When wireless messaging traffic meets these classification criteria, it is considered to not exhibit the characteristics of unwanted messaging. 


At this time, CTIA views A2P to be all messaging traffic that does not meet its P2P criteria. It's both the type of traffic that the TCPA governs and the subject of this guide. At minimum, A2P traffic should: 

  • Seek the consumer’s express consent to receive informational and/or marketing messages.
  • Give the consumer the ability to revoke consent.

The CTIA sees the following use cases as appropriate for A2P traffic: 

  • Enterprises texting multiple consumers simultaneously. 
  • Call center scenarios 
  • Alerts and notifications 

Best Practices

Send via Short Codes

Short codes are 5 or 6-digit numbers typically reserved for organizations that need to communicate with consumers at a high volume. Use cases include flight delays, banking account alerts, delivery notifications, etc. They're designed to couple higher-volume SMS traffic with built-in consumer protections. As such, you must apply for a short code and go through a review process in order to obtain one. Fortunately, Twilio, our recommended SMS, MMS & IVR channel provider, helps customers through that process

Incorporate Toll-Free Numbers

If you aren't able to obtain a short code, consider toll-free numbers. They're only slightly more expensive than the standard mobile virtual numbers you might purchase from Twilio, but they've got two advantages: 
  • Your contacts don't incur a fee when sending to a toll-free number. 
  • They send 3 messages per second as opposed to standard numbers, which send at a rate of 1 message per second. This cuts down on the time it takes to deliver message broadcasts, and generally improves the speed of two-way interactions.  

Bundle your Numbers

Twilio provides a message service feature called Copilot that enables you to dedicate multiple Twilio numbers to a single TextIt channel, and improve SMS delivery with phone number intelligence features like: 

  • Scaler - distribute messages across a group of phone numbers to reach large audiences in a short amount of time.
  • Geo-Match - create a local experience by automatically using local phone numbers that match country and area codes to your end-user's personal number.
  • Sticky-Sender - send messages with the same recognizable phone number to create a consistent experience and maintain conversation history.
  • Reroute - if you're using a short code, you Twilio will automatically revert to standard long-code phone numbers when a carrier is unable to receive messages from short codes.
With a Twilio messaging service connected to your TextIt account, your messages will be routed intelligently to ensure you're adhering to best practices. Here's a guide to setting that up

What are your thoughts? Let us know. Your feedback is important to us. 

Introducing Outbound Media Support

TextIt now supports outbound media on telephony channels like Twilio, and IP messaging apps like Facebook Messenger and Telegram. This addition rounds out our effort to fully support the exchange of media on our most popular channels, whether incoming or outgoing. 

This week, we're excited to introduce outbound media support. A popular request in recent months, this feature will enable you to add more context to your interactions with images and videos that extend your service's communication potential well beyond 160 characters. 

Getting Started

To add an image or video to a message, simply open up the action editor and click the paperclip icon.

Then, upload your file and continue building! Outbound media actions can be added to both messaging and voice flows. 


  • Outgoing media is displayed in-app for Facebook Messenger, Telegram and Twilio channels, but converted to a link for others. 
  • Twilio only supports MMS in the US and Canada, and will convert a picture message into an SMS with linked media when sending to MMS-incompatible numbers.
  • Twilio will also automatically resize the images you send to meet your contacts' carriers' requirements. 
  • Image attachments are limited to 500KB while video attachments are limited to 20MB. 

Have a use case for outgoing media? Want to request support for a different channel? Let us know! We hope to improve this feature with your feedback. 

Use Facebook Messenger's Checkbox Plugin to Message Website Visitors

Facebook Messenger’s new Checkbox Plugin enables you to authenticate Facebook users with a discrete checkbox that fits naturally into any form. It could be used for just about any form-based use case, but it’s value for TextIt users is collecting opt-ins and contacting website visitors. Once a visitor completes the form, TextIt will message them via Facebook Messenger and add them to your contact list. 

To set it up, navigate to the Triggers page, create a trigger and select the ‘Start a flow when Facebook refers a Contact’ option. In addition to FB Messenger channel and flow, you’ll need to enter a referral id unique to this plugin, e.g. 'textit'. 

Finally, add the plugin to a form on your site. You’ll need to include the optional ref parameter and make sure its value matches the referral id you gave TextIt.

You’re good to go! Any time a visitor clicks your plugin, they’ll receive a message via Facebook Messenger.

Questions? Comments? Let us know. Your feedback is important to us. 

Introducing Nexmo Voice Support

When Nexmo released their new voice API, we jumped at the chance to support it. Nexmo, like Twilio, is a great tool for organizations and developers who want to provide SMS & IVR (voice) communication channels. 

Why Voice?

TextIt’s voice flows allow you to build structured voice interactions that utilize phones' keypads and voice recording functionality. In particular, voice workflows are handy for three reasons:

  • They allow you to send and receive voice messages with improved tone, character and length when compared with text messages.
  • They're synchronous: contacts are actively engaged with your flow for the duration of the call.
  • They enable you to communicate at scale with those who can’t read or write, expanding your organization’s reach.

Use Cases

TextIt’s voice flows can be used to create automated call centers capable of triaging calls and directing clients to the appropriate team member. Alternatively, they're great for outbound communication campaigns: In June of last year, we brought attention to the polio-eradication efforts of UNICEF, the WHO, and the Federal and Provincial Emergency Operation Centers on Polio in Pakistan. In this context, UNICEF's Pakistan Innovations team built voice workflows to disseminate polio knowledge-check surveys designed to equip community leaders with the information they need to affect harmful anti-vaccination discourse and raise awareness within illiterate communities.

Which Service Should I Use?

That’s entirely up to you, as number pricing and availability vary between the two services. First, visit Twilio and Nexmo’s pricing pages to determine whether or not voice-enabled numbers are provided in your country. Learn how to add a voice-enabled Twilio number here

Using Nexmo Voice

The process is simple and painless. First, signup for a Nexmo account and add a voice-enabled number.

Next, login to your TextIt account, navigate to the channels page and select Nexmo. 

If this is the first time you’re connecting a Nexmo account to your TextIt account, you’ll be prompted to enter the API key and secret listed on your Nexmo account’s settings page. Once you’ve connected your accounts, all you need to do is select your number, create a voice flow and start sending.

Questions? Comments? Let us know! We value your feedback. 

Use TextIt to send Emails from your own Address

Sending Email from TextIt

TextIt’s Send Email action is vital to self-service chatbots and standalone messaging workflows alike, as it allows you to notify yourself, your team, or even the active user when a certain condition is met, e.g. a support request is submitted. A chatbot can’t handle every situation, and we don’t believe it should. While they’re great for tedious tasks like registering a user, processing a purchase, checking the weather or booking a flight, a human touch is essential to providing a flexible, reliable and amicable service. After all, more than 8 out of 10 (85%) consumers not only want to be able to receive information but also reply to businesses or engage in a conversation

Using your own Address

By default, TextIt sends emails from If you’d like to add your own address, simply navigate to your account’s settings page and click the email icon.

Here we’re using a Gmail-hosted email address. You’ll want to plugin your email address, host URL, credentials, port and encryption preference. In the example above, encryption needs to be set to TLS because that’s the protocol Gmail’s SMTP port 587 uses.

Gmail-Specific Considerations

If you want to link a Gmail address to TextIt, you’ll need to switch the ‘Allow less secure apps’ setting in your Gmail account’s ‘Connected apps & sites’ page to ‘ON’:

Note that a standard Gmail account is limited to 500 emails per day. Learn more about Gmail’s limits here:

Questions? Comments? Let us know! ⌨  Your feedback is important to us. 

Customer Spotlight: Learn why BANGS Shoes adopted TextIt

BANGS Shoes is a fashion brand with a unique mission: help people help themselves. Their model is simple, but powerful: sell sleek, classic shoes to fund entrepreneurs around the globe. To date, they’ve invested in 480 entrepreneurs in 58 countries including the USA. We spoke with Hannah Davis, BANGS Shoes’ founder, to learn more about TextIt’s role in their business.


BANGS invests 20% of net profits to help hand-selected entrepreneurs around the world start businesses. Kiva, a nonprofit organization that allows people to lend money via the Internet to low-income entrepreneurs and students in over 80 countries, vets entrepreneurs and handles both loan dissemination and repayment. When a loan is repaid, BANGS re-invests the money in a new entrepreneur. This process increases financial independence, boosts local economies and promotes personal development.

Why TextIt?

Proudly based in Asheville, North Carolina, BANGS Shoes sells exclusively through their website. They use social media and a brand ambassador community to build their brand, which targets adventure-loving, socially-conscious men and women between the ages of 18 and 24.

They initially visited college campuses to build and support their brand ambassador community, but switched to TextIt when it became apparent to Hannah that, in her words, "we needed a way to communicate with our Ambassadors that didn't require a change of behavior." TextIt enables Hannah to send out notifications to her ambassadors, then personally handle each of their responses. It has enabled her to build a personal relationship with each one–something that's very import to her.

Between social media and TextIt, Hannah's approach has paid dividends. BANGS Shoes' ambassador program has grown by 2,000% since 2012.

Interested in learning more about BANGS Shoes? Visit their website or follow bangsshoes on Instagram. Check out their newly-released homage to North Carolina's Blue Ridge Parkway, the Blue Ridge Parkway high top.

Have a question for us? Please, get in touch