Setup
You will need a Twilio account with a phone number that has SMS capabilities and a Messaging Service configured. If you don’t have these yet, follow Twilio’s guides:- Purchase a phone number with SMS capability.
- Create a Messaging Service and add your phone number to it.
- Account SID and Auth Token from the Twilio Console Dashboard
- Messaging Service SID from your Messaging Service configuration page
Twilio trial accounts may limit sending to verified numbers only. See the Twilio trial account guide for details.
Profile Requirements
To deliver a message to a recipient over Twilio, Courier must be provided the recipient’s SMS-compatible phone number. This value should be included in the recipient profile asphone_number.
Overrides
Overrides can be used to change the request body that Courier uses to send an SMS message. You can override any of the fields supported by Twilio’sMessages.json endpoint (see all request body fields here).
The Twilio API uses PascalCase field names (
Body, To, From). Courier auto-capitalizes override body keys for backwards compatibility, so both "to" and "To" work in the body override.Troubleshooting
Error 30003: Destination Unavailable
Error 30003: Destination Unavailable
Error 30005: Unknown or Inactive Destination
Error 30005: Unknown or Inactive Destination
Carrier issue, signal loss, or inactive number.
- Verify the number is active and formatted correctly (E.164)
- Check device status and signal
- Test with other devices on the same carrier
Error 30006: Landline or Unreachable Carrier
Error 30006: Landline or Unreachable Carrier
Message sent to a landline or unreachable carrier.
- Use the Lookup API to check if the number is a landline
- Try an alternative phone number
Error 30007: Message Filtered
Error 30007: Message Filtered
Messages filtered by Twilio or carrier due to policy violations.
- Ensure compliance with Twilio’s Messaging and Acceptable Use Policies
- Secure account credentials
- Open a support request if you suspect a mistake
Error 30008: Unknown Delivery Failure
Error 30008: Unknown Delivery Failure
Message failed for unknown reasons.
- Test with a simpler message and a different sender ID
- Check device roaming status
- Contact Twilio support with recent message SIDs if the issue persists
Error 20003: Permission Denied
Error 20003: Permission Denied
Lack of permission to access the requested resource.
- Verify the correct Auth Token and Account SID combination
- Check account type (sub-account vs master, test vs live)
- Confirm API Key and Auth Token are valid
Error 20404: Resource Not Found
Error 20404: Resource Not Found
Requested resource doesn’t exist or is unavailable.
- Check that the resource exists and verify API case-sensitivity
- Verify Account SID and base URL
Error 21211: Invalid To Phone Number
Error 21211: Invalid To Phone Number
Incorrectly formatted or invalid recipient number.
- Ensure E.164 format with the correct country code
- Avoid calling or messaging a Twilio number from itself
Error 21408: Permission Not Enabled for Region
Error 21408: Permission Not Enabled for Region
Permission not enabled for the recipient’s region.
- Enable permission in Geo-Permissions settings
Error 21610: SMS STOP Filter
Error 21610: SMS STOP Filter
Recipient previously unsubscribed using the “STOP” keyword.
- Request the recipient text “START” to resubscribe
- Ensure you have consent for messaging
Error 11200: HTTP Retrieval Failure
Error 11200: HTTP Retrieval Failure
Failed to retrieve content from the given URL.
- Verify web server status and accessibility
- Check for network issues
- Ensure proper server configuration for static resources
Error 12300: Invalid Content-Type
Error 12300: Invalid Content-Type
Twilio unable to process the URL’s Content-Type.
- Verify the correct Content-Type is returned by the server
- Ensure the URL refers to a valid, acceptable resource