Overview
Rewrite public sends are optimized for transactional SMS traffic, especially Brazilian+55 delivery by default. Good deliverability comes from valid numbers, short content, controlled retries, and fast webhook handling.
Delivery lifecycle signals
Use these webhook events in your monitoring:sms.otpmessage.queuedmessage.sentmessage.deliveredmessage.scheduledmessage.failedmessage.canceledmessage.batch
High-impact practices
- Send only valid E.164 numbers that your project is allowed to use.
- Keep OTP and transactional content short.
- Use
Idempotency-Keyon send/create operations. - Persist webhook payloads and deduplicate by event id.
- Return a
2xxresponse quickly from webhook handlers.
Template and content strategy
- Prefer templates when the same flow is reused.
- Keep placeholder names stable across every locale variant.
- Put brand context at the start of the message.
- Keep locale coverage aligned with the countries you actually send to.
- Use
tagsto segment traffic by use case or campaign.
Failure handling
- Retry only
429and transient5xxscenarios. - Treat
400validation failures as permanent until the payload is fixed. - Treat
403billing/subscription blocks as operational issues, not retryable sends. - Inspect
message.failedwebhook payloads for provider-facing error details.