twilio-send-message

Send messages via Twilio's Programmable Messaging API across all channels — SMS, MMS, RCS, and WhatsApp. Covers text messages, media, rich content (cards, carousels, buttons), template-based sends, Messaging Services, status callbacks, and WhatsApp's 24-hour service window. Use when the user wants t

By twilio · 733 installs

npx skills add twilio/ai --skill twilio-send-message

Source repository · Upstream listing

Overview A single messages.create() call sends on any messaging channel — SMS, MMS, RCS, or WhatsApp. The channel is determined by the sender address and the recipient's capabilities. For channel selection guidance and the full onboarding sequence, see twilio messaging overview and twilio messaging channel advisor . Channel to format Notes Template required? SMS/MMS +15551234567 MMS: US/CA/AU only No RCS (with SMS fallback) +15551234567 Send via Messaging Service that has both an RCS sender and an SMS sender — Twilio attempts RCS first, falls back to SMS on failure No RCS (no fallback) rcs:+15551234567 Forces RCS only — fails if recipient isn't RCS capable No WhatsApp whatsapp:+15551234567 Send via whatsapp: prefixed from Outside 24 hr window: yes For production: Send via messagingServiceSid instead of from . This enables sender pool management, RCS→SMS fallback, SMS pumping protection, link shortening, compliance toolkit, and scheduling. See twilio messaging services . Prerequisites Twilio account — New to Twilio? See twilio account setup Environment variables: TWILIO ACCOUNT SID , TWILIO AUTH TOKEN — see twilio iam auth setup SDK: pip install twilio / npm install twilio Channel specific senders: SMS/MMS: a Twilio phone number (see twilio account setup ) RCS: an RCS sender added to a Messaging Service (see twilio rcs messaging ) WhatsApp: an active WhatsApp sender (see twilio whatsapp send message for sandbox, twilio whatsapp manage senders for production) Quickstart Python Node.js Key Patterns Send with media (MMS, WhatsApp, RCS) Supported: images (JPEG, PNG, GIF), PDF, audio, video. 5 MB max per attachment. Send a template (WhatsApp required outside 24 hr window; RCS rich content) See twilio content template builder for building templates. Track delivery status Twilio POSTs at each state transition: queued → sent → delivered (or failed / undelivered ). Configure RCS→SMS fallback Configured on the Messaging Service, not per message. Add both an RCS sender and an SMS sender to the same Messaging Service. Twilio attempts RCS first and falls back to SMS on failure. See twilio messaging services and twilio rcs messaging . Common Errors Code Meaning Fix 21211 Invalid to number Validate E.164 format 21408 Region not permitted Enable geo permissions in Console 21610 Recipient opted out Do not retry; respect opt out 21664 FallbackFrom cannot be used with From sender Use messaging service sid instead of from 21666 FallbackFrom requires MessagingServiceSid Send via a Messaging Service 21667 FallbackFrom requires an RCS Sender on the Messaging Service Add an RCS sender before configuring fallback 30003 Unreachable destination Carrier cannot deliver 30007 Message filtered as spam Review content and sender reputation 30034 US A2P 10DLC — sender not registered Register brand + campaign. See twilio compliance onboarding 30036 Validity Period expired Message aged out. Often indicates RCS fallback is misconfigured 63036 RCS recipient unreachable Configure SMS fallback on the Messaging Service CANNOT Cannot send cross channel in a single API call. One messages.create() = one channel. For multi channel fallback, use RCS→SMS via a Messaging Service, or implement sequencing in your app. Cannot send WhatsApp free form outside the 24 hour service window. Use a pre approved template ( content sid ). See twilio whatsapp send message . Cannot send MMS outside US/Canada. For international rich media, use WhatsApp or RCS. Cannot configure RCS→SMS fallback without a Messaging Service. Raw from sends don't support FallbackFrom . Cannot guarantee delivery on any channel. Always implement status callbacks. Next Steps Pick a channel for your use case: twilio messaging channel advisor Full messaging platform overview: twilio messaging overview Channel specific deep dives: twilio sms send message , twilio rcs messaging , twilio whatsapp send message Sender pools, fallback, production features: twilio messaging services Build templates (cards, carousels, quick replies): twilio content template builder Handle inbound messages and status callbacks: twilio messaging webhooks US A2P 10DLC compliance: twilio compliance onboarding OTP / verification use cases: twilio verify send otp