SMS & WhatsApp
SMS is sent through Twilio. WhatsApp is sent directly through the Meta WhatsApp Cloud API. They are two separate integrations.
SMS (Twilio)
Connect Twilio for SMS. Recipients are phone numbers in E.164 format (e.g. +15551234567).
| Field | Type | Description |
|---|---|---|
sidreq | string | Twilio Account SID. |
tokenreq | string | Twilio Auth Token. |
fromreq | string | Your Twilio sender number. |
sms.sh
curl https://api.messy.sh/messages \
-H "Authorization: Bearer $MESSY_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "type": "sms", "to": "+15551234567", "body": "Your code is 481920" }'WhatsApp (Meta Cloud API)
WhatsApp goes straight to Meta’s WhatsApp Cloud API (the WhatsApp Business Platform), with no Twilio or other BSP in between. Connect it with the credentials from your Meta WhatsApp Business account:
| Field | Type | Description |
|---|---|---|
phone_idreq | string | WhatsApp phone number ID (from Meta). |
tokenreq | string | Access token for the WhatsApp Cloud API. |
business_account_id | string | WhatsApp Business Account ID, used to sync approved templates. |
webhook_verify_token | string | Verify token for the inbound/status webhook. |
app_secret | string | Meta app secret, used to validate webhook signatures. |
whatsapp.sh
curl https://api.messy.sh/messages \
-H "Authorization: Bearer $MESSY_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "type": "whatsapp", "to": "+15551234567", "body": "Your table is ready." }'Delivery receipts and inbound replies arrive via Meta’s webhooks, and your approved WhatsApp message templates sync into your Messy template library from your WhatsApp Business Account.