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).

FieldTypeDescription
sidreqstringTwilio Account SID.
tokenreqstringTwilio Auth Token.
fromreqstringYour 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:

FieldTypeDescription
phone_idreqstringWhatsApp phone number ID (from Meta).
tokenreqstringAccess token for the WhatsApp Cloud API.
business_account_idstringWhatsApp Business Account ID, used to sync approved templates.
webhook_verify_tokenstringVerify token for the inbound/status webhook.
app_secretstringMeta 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.