Sends WhatsApp messages via Sprio's hosted WhatsApp gateway — during a call (if the caller asks for something over WhatsApp), automatically after a call, and as a fallback qualification message when a call didn't capture real caller details.
- Direction: Outbound (Sprio → WhatsApp)
- Auth: an API key, sent as
X-API-Key - Setup: connect an API key, then select the sending phone number from the numbers available on that key
Message types
WhatsApp requires business-initiated messages to use pre-approved templates — Sprio never sends free-form text on your behalf. There are three ways a message gets sent:
| Trigger | When | Behavior |
|---|---|---|
| Mid-call tool | The assistant decides to, during the conversation | The LLM can invoke send_whatsapp_template live, with a template name and variables |
| Post-call | Automatically, after every completed call | Uses your configured template + variables |
| Post-call fallback | Only when the call didn't capture real caller details | A distinct qualification-style template, sent instead of the normal post-call message |
Known gateway behavior
The WhatsApp gateway can return HTTP 200 with {"success": false} in
the response body on a failed send — a genuine quirk worth knowing if
you're building your own monitoring around this. Sprio detects this pattern
internally and treats it as a real failure (not a silent success), so
failed sends are correctly reflected in your integration's Activity log —
but if you're inspecting raw HTTP status codes elsewhere, don't rely on
200 alone to mean delivery succeeded.
Replies
Customer replies aren't received via a raw webhook from the messaging provider directly — they're routed through an automation layer that matches reply button text against configured keywords, and can retroactively update a call's recorded intent based on what the customer replied.
Troubleshooting
| Symptom | Likely cause |
|---|---|
| Message shows as sent but customer never received it | Check for {"success": false} in the activity log detail — the gateway can 200 a failed send |
| Fallback qualification message sent when you expected the normal post-call one | Expected if the call didn't capture real caller details, or there was no real user reply — that's exactly when the fallback fires |
| Mid-call WhatsApp tool doesn't fire | Confirm the requested template is approved and configured for the phone number the assistant is using |