Twilio Messaging for OutSystems Developer Cloud lets you send SMS/MMS and WhatsApp using Text, Media, or Templates. It provides two clear Server Actions—SendViaMessagingService and SendFromPhoneNumber—so you never mix routing concepts. Built for ODC Client→Server flows, it stores credentials in Application Settings, uses the correct form-url-encoded requests, and returns MessageSid, Status, ProviderCode/Message, and RawResponse for troubleshooting.
Solves: common Twilio pitfalls (JSON vs form encoding, E.164 “+” handling, template variables, From vs MessagingServiceSid).
Why it matters: ship faster with fewer 400s, improve deliverability with Messaging Services, keep secrets server-side, and gain clear observability for a reliable UX and easy retries.
Outbound-only: no inbound handling or StatusCallback/webhook endpoints.
No built-in retries, scheduling, or queueing.
Channel constraints: SMS/MMS (carrier/country support, media size/type); WhatsApp (24-hour window, approved templates, locale/variables must match).
Templates (ContentSid) can’t be mixed with Body/Media; assumes Twilio Content + sender are correctly configured.
Delivery receipts depend on carrier/WhatsApp; not guaranteed (“Delivered” ≠ “Read”).
Throughput/rate limits controlled by Twilio; no pooling/throttling logic in the library.
MediaUrl must be publicly accessible; no signed URL generation.
MediaUrl
Compliance is app’s responsibility (opt-in/opt-out, A2P/10DLC, DND, consent, GDPR/PII).
Single-account secrets by default; no multi-tenant credential isolation.
Scope: Twilio Messages API only (no Conversations, contacts, or inbound threads).
BSD-3 license (https://opensource.org/licenses/BSD-3-Clause)