Reactivate Missed Calls Omni-Channel
Catches unanswered voice agent calls, drafts personalized SMS and email follow-ups using AI, and reschedules a callback in 48 hours across all channels.
Overview
In outbound dialing campaigns, the majority of prospects won't answer an unknown number. If your voice agent simply hangs up and moves on, you're burning cash on leads that go cold.
This workflow acts as an automated safety net. It catches missed calls (voicemail or no-answer), uses an AI agent to draft personalized follow-up SMS and email messages based on why the person was called, and then automatically schedules your voice platform to retry the call in exactly 48 hours.
How It Works
| Step | Node | What Happens |
|---|---|---|
| 1 | Webhook Trigger | Receives a post-call webhook from your voice platform when a call ends. |
| 2 | Status Gate (Code) | Filters incoming calls — only voicemail or no-answer statuses pass through. All other statuses exit silently. |
| 3 | Time Engine (Code) | Extracts lead details from the payload and calculates an exact ISO timestamp 48 hours in the future for the retry call. |
| 4 | AI Copywriter | Reads the campaign context (e.g., "Abandoned $500 Cart" or "Expired SaaS Trial") and drafts a personalized SMS (max 160 chars), email subject line, and email body. |
| 5 | Payload Router (Code) | Formats the AI output into three API-ready payloads for SMS, email, and voice rescheduling. |
| 6 | Three Parallel HTTP Actions | Fires simultaneously: sends the SMS via Twilio, dispatches the email via your email API, and schedules the 48-hour callback via your voice platform API. |
Key Features
- Context-Aware Copy: The AI agent doesn't send generic "Sorry we missed you" messages. It reads campaign context and drafts SMS and email copy that speaks directly to the lead's situation.
- Timestamp Math Engine: Instead of using unstable wait/delay mechanisms, a code node calculates an exact ISO timestamp 48 hours in the future, letting your voice platform handle the scheduling natively.
- True Omni-Channel Output: Three parallel API calls fire at the end of the workflow — SMS, email, and a rescheduled voice call — covering all channels simultaneously.
Prerequisites
To deploy this workflow, you will need:
- A webhook-capable voice platform — Configure your provider to fire a webhook when the call status equals
no-answerorvoicemail. - Twilio account — Account SID and Auth Token for sending SMS.
- Email API key — For your preferred email provider (e.g., Resend, SendGrid, Mailgun, etc.).
- Voice agent API endpoint — An endpoint that accepts scheduled future calls.
Tip: If you use GoHighLevel, you can replace all three output HTTP nodes with a single webhook to a HighLevel workflow.
Setup Instructions
- Import the template into your Needle workspace.
- Open the Status Gate code node and verify the allowed statuses match your voice platform's webhook values.
- Open the Time Engine code node and confirm the field names (
leadName,phone,email,campaignContext) match your webhook payload structure. - Update the three HTTP action nodes with your credentials and endpoint URLs:
| HTTP Node | Service | What to Configure |
|---|---|---|
| SMS Action | Twilio | Account SID, Auth Token, and your Twilio phone number |
| Email Action | Email provider | API key and sender address |
| Voice Reschedule | Voice platform | API key and scheduling endpoint URL |
- Save and activate the workflow.
Testing
Send a test payload to your webhook trigger URL to verify everything works end to end:
{ "status": "no-answer", "leadName": "Sarah", "phone": "+1XXXXXXXXXX", "email": "sarah@example.com", "campaignContext": "She signed up for the pro tier free trial 14 days ago, but the trial expires tomorrow and she hasn't attached a credit card." }
Check that:
- The status gate allows the payload through.
- The AI agent generates a personalized SMS and email referencing the trial expiration.
- The 48-hour timestamp is correctly calculated.
- All three HTTP requests fire successfully.
Why This Matters
Without this workflow, a missed call is a dead end. With it, every unanswered call triggers a coordinated, personalized outreach across SMS, email, and a scheduled callback — turning a failed dial into a multi-touch reactivation sequence that recovers lost revenue.
Want to showcase your own workflows?
Become a Needle workflow partner and turn your expertise into recurring revenue.
