Overview
Twilio is a cloud communications platform that enables voice calling, messaging, and video capabilities. SentiVue Talk’s Twilio integration provides seamless connectivity for your workflows.Prerequisites
Before setting up Twilio integration, you’ll need:- A Twilio account
- Account SID and Auth Token from your Twilio Console
- At least one Twilio phone number
- A SentiVue Talk account
Configuration
Step 1: Get Twilio Credentials
- Log in to your Twilio Console
- Find your Account SID and Auth Token on the dashboard
- Navigate to Phone Numbers → Manage → Active Numbers
- Copy your phone number(s)
Step 2: Configure in SentiVue Talk
- Navigate to /telephony-configurations and click Add configuration
- Select Twilio as your provider
- Enter your credentials:
- Account SID
- Auth Token
- Click Save Configuration
- Open the configuration you just created and add at least one phone number (with country code in E.164 format, e.g.
+1234567890). The default caller ID is used for outbound calls.
Step 3: Test Your Configuration
- Create a test workflow
- Click “Call” to verify connection
- Check call logs for successful connection
Inbound Calling Setup
Inbound routing is driven by the phone number itself — there is a single webhook URL for the entire org, and SentiVue Talk resolves which agent to run from the called number’s assigned inbound workflow. When you save an inbound workflow on a phone number, SentiVue Talk automatically pushes the webhook URL to that number’sVoiceUrl in your Twilio account (provided the credentials are correct and the number belongs to that account).
Step 1: Assign an Inbound Workflow to the Phone Number
- Go to /telephony-configurations and open your Twilio configuration
- In the Phone numbers section, edit the number that should receive inbound calls
- Set its Inbound workflow to the agent that should answer
- Save
Step 2: Verify the Webhook URL in Twilio Console
This step applies to numbers using the Standard setup. Numbers on the Advanced setup receive calls over a SIP trunk instead, and have no voice webhook to verify — skip to Step 3.
- Go to Phone Numbers → Manage → Active Numbers in Twilio Console
- Click the phone number you assigned an inbound workflow to in Step 1
-
In the Voice Configuration section, confirm:
- Webhook is set to:
https://app.sentivue.com/talk/api/v1/telephony/inbound/run - HTTP Method is
POST
POST, and click Save Configuration. - Webhook is set to:
Step 3: Verify Setup
- Confirm the number appears in your Twilio configuration under /telephony-configurations, in E.164 format, and matches the number in Twilio Console exactly
- Confirm the number has an Inbound workflow assigned
Test Inbound Calling
- Call your configured Twilio phone number from another phone
- Verify your SentiVue Talk workflow answers and responds
- Check call logs in both SentiVue Talk dashboard and Twilio Console
Call handling setup
The setup is chosen per number, not per configuration. You pick it when you add a number, and you can switch an existing number at any time. Standard is the TwiML setup. Calls reach your agent through Twilio’s voice webhook. Nothing to configure beyond adding the number. Advanced is the Elastic SIP setup. Calls are carried over a SIP trunk instead of the webhook, which is what warm transfer and live translation need. One Twilio configuration can hold a mix of both. A support line can stay on Standard while a sales line uses Advanced, in the same account, at the same time. Switching one number does not affect any other.
Use Standard unless you need warm transfer or translation. Advanced creates real resources in your Twilio account, so there is no reason to enable it on numbers that will not use those features.
Switching a number to Advanced
- Open your Twilio configuration under Telephony configurations.
- Add a number, or click an existing one to edit it.
- Under Call handling, select Advanced.
- Save.
What Advanced creates in your Twilio account
- An Elastic SIP Trunk — one per Twilio account, not one per number. The first number you switch to Advanced creates it, and every Advanced number after that reuses it.
- A credential list and SIP credential on that trunk, used to authenticate the connection.
- An origination URI, so calls on the trunk reach your workflows.
- The number is attached to the trunk. Its voice traffic is handled by the trunk from then on, and SentiVue Talk clears the number’s Voice webhook field since it is no longer used.
If setup fails
Switching a working Standard number to Advanced is safe. If provisioning fails, the number goes back to Standard, its webhook is restored, and it keeps taking calls. The number shows a failed setup, and you can select Advanced again to retry. If a retry fails, the number stays on Advanced and marked failed rather than falling back, since there is no working Standard setup to return to. Retry again once the cause is fixed.Switching back to Standard
Select Standard on the number and save. SentiVue Talk removes the number from the trunk and restores its voice webhook. Switching back the last Advanced number on an account, or deleting it, also removes the shared SIP trunk and its credentials, since nothing else is using them. Numbers still on Advanced are unaffected.Troubleshooting
Advanced setup failed
Advanced setup failed
Usually the Twilio credentials lack permission to manage Elastic SIP Trunking, or the number is not owned by the Twilio account in this configuration. Confirm both, then select Advanced again to retry.
Inbound calls stopped after switching to Advanced
Inbound calls stopped after switching to Advanced
Advanced numbers still need an Inbound workflow assigned so SentiVue Talk knows which agent should answer. Check that assignment on the number.
The number is not offered when setting up a warm transfer
The number is not offered when setting up a warm transfer
Only Advanced numbers on the selected telephony configuration appear. Confirm the number shows Advanced, that its setup succeeded, and that you picked the right configuration on the tool.
Invalid phone number error
Invalid phone number error
Ensure phone numbers include country code in E.164 format:
+1234567890Authentication failed
Authentication failed
- Verify Account SID and Auth Token are correct - Check for extra spaces in credentials - Ensure credentials haven’t been regenerated in Twilio Console
Webhook signature validation failing
Webhook signature validation failing
- Confirm the Auth Token in your SentiVue Talk configuration matches the one
in Twilio Console exactly - Verify the number’s webhook URL in Twilio Console is
https://app.sentivue.com/talk/api/v1/telephony/inbound/runwith no extra query parameters or trailing characters
No audio on calls
No audio on calls
Review the call in your SentiVue Talk dashboard and in Twilio Console under
Monitor → Logs → Calls for errors on that call.
Inbound calls go to voicemail
Inbound calls go to voicemail
- Verify the Twilio number’s webhook is set to
https://app.sentivue.com/talk/api/v1/telephony/inbound/runwith the HTTP methodPOST- Confirm the called number exists in your SentiVue Talk telephony configuration and has an Inbound workflow assigned - Confirm the number is stored in E.164 format and matches the number in Twilio Console exactly - Check the call in Twilio Console under Monitor → Logs → Calls to see the response the webhook returned
Voice agent doesn't respond to inbound calls
Voice agent doesn't respond to inbound calls
- Confirm the phone number has an Inbound workflow assigned in /telephony-configurations - Check webhook signature validation is working (Auth Token in SentiVue Talk matches Twilio Console) - Review call logs in your SentiVue Talk dashboard for error messages - Check the response the webhook returned in Twilio Console under Monitor → Logs → Calls
Best Practices
- Test your configuration with a single call before running campaigns
- Monitor Twilio Console for usage and billing