When turboDial sends or receives an SMS text message it will trigger corresponding API Goals in your Keap account if you have created them.
The API Goal requires 2 fields to be configured: Integration and Call Name. This image shows an example:
The following sections explain the different API Goals you can use to trigger automation when an SMS message is sent or received.
Please Read: After you add or change an API Goal in your Keap Campaign Builder you must inform turboDial to look for it by clicking the Reset Disabled Goals button in your turboDial Management Account.
Outbound SMS
- When an SMS is successfully sent. This goal can be used to register that a phone number is known to be capable of receiving SMS messages
- Integration: turboDialSMS
- Call Name: GoodNumber
Outbound Send Failure
- When an SMS message fails to send because the destination phone number is not SMS capable. This goal can be used to register that a phone number is not capable of receiving SMS messages
- Integration: turboDialSMS
- Call Name: BadNumber
- When an SMS message fails to send because the owner of the number has replied ‘STOP’ or similar, and as a result Twilio will not allow you to send an SMS from the current ‘from’ number to that phone number. You can likely succeed with an SMS by choosing a different ‘from’ number but that is not a good practice.
- Integration: turboDialSMS
- Call Name: BlockedNumber
- When an SMS message fails to send because the service provider for the destination phone number has decided the message is ‘spam’ and blocked it. You can likely succeed with an SMS by choosing a different ‘from’ number.
- Integration: turboDialSMS
- Call Name: SpamBlock
- When an SMS message fails to send for some other reason. (A common reason is an invalid ‘from’ number in a Campaign SMS)
- Integration: turboDialSMS
- Call Name: SendFailed
- When your Keap campaign sends too many SMSs in a short period and reaches the limit of your account’s queue in turboDial. (Note, for this error turboDial will also trigger the “SendFailed” goal above.)
- Integration: turboDialSMS
- Call Name: QueueExceeded
Inbound SMS
The following API Goals will be triggered when an SMS message is received AND the Contact Record is identified
(will not trigger if no Contact Record exists and is not created):
- General trigger (will trigger for all inbound SMS messages):
- Integration: turboDialSMS
- Call Name: Inbound
- Inbound Number specific trigger (will trigger only for SMS messages to the specified inbound number):
- Integration: turboDialSMS
- Call Name: Inboundnnnnnnnnnn
Where nnnnnnnnnn is the Inbound destination phone number the message was sent to. For example, if the message was sent to +19523142318 then the Call Name will be ‘Inbound19523142318’.
Note the country code field is included in the number, which in this example is ‘1’.
- Forward-to email address specific trigger:
- Integration: turboDialSMS
- Call Name: yyyyyyyyyyyyyyyyy
Where yyyyyyyyyyyyyyyyy is a modified representation of the email address that turboDial forwarded the inbound message to. For example, if the message was forwarded to a turboDial user with the email address of MaryAnders@zmail.com then the Call Name will be ‘maryanderszmailcom’.
Note that the email address is modified to be compliant with the Keap rules for a Call Name: only letters and digits are allowed. Also, the letters are all converted to lower-case.
You may want to use this API Goal to trigger a sequence that notifies your user via Campaign SMS that they have received an inbound SMS and should check their email.
- Email Address install trigger:
- Integration: turboDialSMS
- Call Name: EmailInstalled
This Goal will trigger only if an email address from the SMS was installed into the Contact Record ‘Email’ field.
turboDial will install an email address when an inbound SMS containing an email address results in the creation of a Contact Record.
It will also install an email address when an inbound SMS containing an email address is associated to a Contact Record that has an empty ‘Email’ field and the ‘FirstName’ field is ‘(auto-created)’.
- Trigger Automation When turboDial Auto-Creates a Contact Due to an Inbound SMS:
Click here to learn more.
Campaign vs Manual SMS
- Goals can be separated for SMS messages sent manually or automatically. When an SMS is sent manually:
- Integration: turboDialSMS
- Call Name: SendManual
- When an SMS is sent Automatically:
- Integration: turboDialSMS
- Call Name: SendAuto
Opt Out and Opt In
- When an SMS Opt Out is received for identified Contact Records.
These include “STOP”, “STOPALL”, “UNSUBSCRIBE”, “CANCEL”, “END”, “QUIT”. See this page at Twilio for more information.
Note the turboDial recognizes that list of opt out words regardless of uppercase or lowercase.
You should use this API Goal to trigger automation that will change the status of the contact such that your campaigns will no longer send them SMS text messages.- Integration: turboDialSMS
- Call Name: OptOut
- When an SMS Opt Back In is received. These include “UNSTOP”, “START”, “YES”.
- Integration: turboDialSMS
- Call Name: OptIn
The OptOut case above is useful for taking action in your Keap account to prevent further attempts to send SMS messages to the contact.
Also see this Twilio page for important additional information.
Acknowledgement of the Request
There is also an API Goal triggered when your Keap Campaign sends an HTTP POST to turboDial requesting an SMS be sent (Campaign SMS feature, see below). This functionality can be used to discover cases where your HTTP POST request included bad information – such as a missing phone number, and to verify that Keap successfully issued the HTTP POST. The API Goal is triggered after the initial checks of your HTTP POST pass validation. To have a goal triggered for the case when a HTTP POST to send an SMS is successfully received from your Keap campaign you can create an API Goal in a Campaign Builder sequence and set these values in it:
- Integration: turboDialSMS
- Call Name: SMSsendRequestReceived