Skip to main content

Common Use Cases

Learn how to orchestrate HuskyVoice AI across your entire business stack by combining API calls, Inbound Webhooks, and Outbound Events.


📅 1. Automated Appointment Confirmation

This pattern ensures high show-rates for service businesses without manual front-desk outreach.

The Workflow:

  1. Trigger: A customer books a slot on your website (e.g., WordPress or custom app).
  2. Initiation: Your backend makes an API Request to HuskyVoice to schedule a call for 24 hours before the appointment.
  3. Real-time Interaction: The AI Agent calls the customer: "Hi Alex, confirming your dental appointment tomorrow at 10 AM. Will you be coming?"
  4. Closing the Loop:
    • If the user says "Yes", HuskyVoice sends a call.completed event via Outbound Webhook.
    • Your system receives the event, parses the AI outcome, and automatically updates the appointment status using PATCH /v1/appointments/{appointment_id}.
  • POST /v1/calls (API)
  • call.completed (Outbound Webhook)
  • PATCH /v1/appointments/{appointment_id} (API)

⚡ 2. Instant Lead Qualification

Reduce response time by calling new leads seconds after they submit a form.

The Workflow:

  1. Form Submission: A visitor fills out a "Get a Quote" form on HubSpot or your site.
  2. Inbound Trigger: Use an Inbound Webhook URL directly in your form handler or Zapier to trigger a HuskyVoice call immediately.
  3. Qualification: The AI Agent asks qualifying questions (e.g., budget, timeline).
  4. CRM Sync: Upon completion, HuskyVoice sends the AI Summary and Sentiment via Outbound Webhook.
  5. Action: Your CRM receiving the webhook automatically tags the lead as "High Intent" and notifies your sales team.
  • POST /v1/hooks/{YOUR_SECRET_TOKEN} with action: call.create (Inbound Webhook)
  • call.completed (Outcome data)

💰 3. Payment Reminders with Auto-Stop

Automate collections while ensuring you never call someone who has already paid.

The Workflow:

  1. Overdue status: Your billing system (Stripe/QuickBooks) identifies an invoice that is 7 days past due.
  2. Schedule: Your system triggers a HuskyVoice call.
  3. Early Payment: 10 minutes before the call is scheduled, the customer pays the invoice through your portal.
  4. Cancellation: Your billing system immediately hits the Inbound Cancellation Webhook.
  5. Outcome: HuskyVoice identifies the pending call_id and cancels the session, preventing a redundant and annoying call to a customer who just paid.
  • POST /v1/calls (API)
  • POST /v1/hooks/{YOUR_SECRET_TOKEN} with action: call.cancel (Inbound Webhook)

🏥 4. Real-Time Booking Integration

Sync AI-booked appointments from voice calls directly into your clinic or CRM system.

The Workflow:

  1. Inbound Call: A patient calls your clinic's AI agent and books a General Checkup appointment.
  2. Booking Confirmed: The AI agent creates the appointment in HuskyVoice and triggers an appointment.created webhook.
  3. Your System Reacts: Your backend receives the event, extracts the appointment object, and creates a matching record in your EMR or CRM.
  4. Status Sync: When a staff member marks the appointment complete in the HuskyVoice dashboard, an appointment.completed event fires and your system updates its record accordingly.
  5. Cancellations: If the patient cancels through the dashboard, an appointment.cancelled event triggers your cancellation flow and frees the slot in your own system.
  • appointment.created (Outbound Webhook)
  • appointment.completed (Outbound Webhook)
  • appointment.cancelled (Outbound Webhook)
  • GET /v1/appointment-slots/availability (API) — check availability before redirecting patients

📡 Essential Event Hook Reference

To build these use cases, your server should be prepared to handle these core events:

EventContentUsage
call.completedFull Transcript + AI SummaryUpdate CRM records and customer history.
call.failedError Reason (Busy/No Answer)Trigger an SMS fallback or reschedule.
call.disallowedPolicy ReasonNotify your admin about credit limits or DND blocks.
appointment.createdFull appointment object + appointment_type_nameCreate matching records in your EMR, CRM, or calendar.
appointment.updatedUpdated appointment objectSync field changes (doctor assignment, session, etc.) to downstream systems.
appointment.cancelledAppointment object with status: "cancelled"Trigger cancellation flows and free slots in your own system.
appointment.completedAppointment object with status: "completed"Mark visits as done and trigger post-visit workflows.
slot.updatedSlot object with updated capacity or statusSync calendar window changes to your availability UI.