Skip to main content
Same calling convention as the other Live-Call Tools pages — authenticated with x-vapi-secret, not a dashboard JWT.
Recovery calls start automatically when your platform sends a forms.abandoned event to POST /n8n/webhook/{clinicId}/forms-abandoned, directly or through an automation-tool relay. The dashboard also has a manual test trigger.

record_abandonment_barrier

Records why the caller stopped partway through — called once, as soon as Emma understands the reason.
string
required
e.g. “insurance_question”
string
e.g. “cost_concern”
string
The caller’s actual question, verbatim
string
The Knowledge Base topic Emma used to answer, if any
Result
Fails with error: “no active recovery case found for this call” if there’s no case currently in a CALLING state for this patient — this only works mid-call, not standalone.

resolve_recovery_outcome

Records how the call ended — called once, near the end, regardless of outcome. This is also what stops the recovery scheduler from calling this patient again.
string
e.g. “answered_question”
string
e.g. “none”
string
Set when the call escalated to staff
string
required
e.g. “recovered”
Result
Also fires an outcome event to your clinic’s n8n webhook, if configured.

check_recovery_session_status

Re-reads the patient’s current form/checkout progress live, mid-call — lets Emma confirm what’s actually true right now rather than trusting the caller’s own account or an async webhook that may not have landed yet. No arguments.
Result
This one isn’t wired to a real delivery channel yet — it always returns success without actually sending anything. It exists so Emma can confirm a method and tell the caller it’s done, while the underlying SMS/email send gets built.
string
“sms” or “email”
Result