The Slack-WhatsApp integration teams actually want is rarely "chat with customers from Slack". It is awareness: the sales channel pings when a new lead writes on WhatsApp, the support channel pings on an escalation, the founder sees big-deal conversations without opening another app. That is exactly what Spun's outgoing webhooks are for.
One honesty note up front: Spun posts its own JSON event envelope, and Slack's incoming webhooks expect Slack's message format, so you cannot paste a Slack webhook URL directly into Spun. A small transform step in Zapier, Make or n8n sits in the middle, and doubles as your filter for which events deserve a ping.
1. WhatsApp events into a Slack channel
- 1
Catch the event
In Spun: Settings, then Webhooks, then Add Webhook, pointed at a Zapier Catch Hook, Make webhook or n8n webhook. Pick the events worth interrupting people for: label assigned (e.g. "New Lead", "Urgent"), lead qualified, or incoming message if you truly want everything.
- 2
Transform and filter
Map the event payload (phone, message text, label) into a readable Slack line, and filter out the noise. "New lead: +1 415 555 2671 - 'Do you deliver to Boston?'" beats a raw JSON dump.
- 3
Post to Slack
Use the Slack action (Zapier/Make/n8n all ship one) to post into the right channel. Mention a user or group for labels like "Urgent" so escalations actually escalate.
Label-gated alerts are the pattern that survives contact with reality: agents label chats in Spun, and only labeled chats ping Slack. Raw message firehoses get muted within a week.
2. Send WhatsApp messages from Slack-side automations
Less common but real: a Slack workflow or slash-command-driven automation that sends a WhatsApp message, e.g. an on-call rota pinging a field technician on WhatsApp, where they actually look.
- 1
Create a Spun API key
Settings, then Webhooks, then Manage API Keys, scoped to send messages. Store the wap_ key in your automation platform, never in a Slack message.
- 2
Trigger from Slack
Use a Zapier/Make Slack trigger (new message in channel, emoji reaction, workflow submission) as the starting point.
- 3
Call send-message
POST /api/integrations/send-message with the recipient number and text. The message comes from your business WhatsApp number.
POST https://api.spun.com/api/integrations/send-message
Authorization: Bearer wap_YOUR_KEY
Content-Type: application/json
{
"to": "14155552671",
"text": "Heads up from dispatch: your 14:00 job moved to 15:30."
}What to know before you build
- There is no native Spun app in the Slack directory; the bridge is your automation platform, with a static API key.
- Spun's webhook envelope is documented on the Zapier recipe page; available events include incoming/outgoing message, contact created/updated, label assigned, chat flow completed, lead qualified, chat archived and call completed.
- Rate limit: 60 API requests per minute per key.
- Two-way conversation mirroring (a Slack thread per WhatsApp chat, with replies flowing back) is a build, not a toggle. If your team needs to answer WhatsApp together, that is what Spun's own shared inbox is for; Slack stays the alerting layer.
Related: WhatsApp + Zapier & Make (payload shapes and the full API) · The shared team inbox (answering happens here)