Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.voxworks.ai/llms.txt

Use this file to discover all available pages before exploring further.

What is a Trigger?

Every automation begins with a trigger — the event that starts the pipeline. When the trigger fires, Voxworks creates an execution and begins processing the automation’s steps. You choose the trigger type when you create an automation. Each trigger type populates the pipeline context with different data.

Trigger Types

Inbound Webhook

Receive data from any external system via an HTTP POST request. When you create a webhook-triggered automation, Voxworks generates a unique URL:
https://app.voxworks.ai/api/v1/hooks/{token}
Any system that can send HTTP requests — CRMs, form builders, Zapier, Make, custom backends — can trigger your automation by posting JSON to this URL. How to use it:
  1. Create a new automation and select Inbound Webhook as the trigger type
  2. Copy the generated webhook URL from the trigger configuration panel
  3. Configure your external system to POST JSON data to that URL
  4. Use Test Webhook to send a test payload and verify the fields are received correctly
  5. Click Use as Sample to save the payload structure for the field picker
Example payload:
{
  "phone": "+61400111222",
  "first_name": "John",
  "last_name": "Doe",
  "crm_id": "12345",
  "notes": "Interested in enterprise plan"
}
All fields from the payload are available in your pipeline as trigger.phone, trigger.first_name, trigger.crm_id, etc. HMAC signature verification (optional): For production integrations, you can enable HMAC signing. When enabled, Voxworks generates a secret key and requires all incoming requests to include an X-Webhook-Signature header containing an HMAC-SHA256 signature of the request body. Requests without a valid signature are rejected.

Call Completed

Trigger an automation whenever a call finishes. This is the most common trigger for post-call workflows like CRM sync, follow-up emails, and team notifications. Configuration options:
OptionDescription
Script filterOnly trigger for calls using specific Scripts. Leave empty to match all Scripts.
Call status filterOnly trigger for specific outcomes: completed, failed, voicemail, dropout, hang-up, rang-out, User unavailable, User rejected. Leave empty to match all statuses.
Context data: When a Call Completed trigger fires, Voxworks automatically loads the full call record into context. Your steps can access:
  • call.call_summary — The AI-generated call summary
  • call.structured_data — Structured fields extracted by the AI per your Script’s schema
  • call.objectives — Objective evaluation results
  • call.transcript — Full transcript text
  • call.status — How the call ended (completed, failed, voicemail, User unavailable, etc.)
  • call.end_reason — Why the call ended (user hangup, ai hangup, voicemail, failed)
  • call.duration — Call length in seconds
  • contact.* — The contact’s details (name, phone, email)
  • objects.* — Any CRM objects linked to the contact
See Field Mapping & Context for the complete list of available fields.

Call Scheduled

Trigger an automation when a new call is scheduled (before it has been placed). Useful for pre-call preparation workflows. Configuration options:
OptionDescription
Script filterOnly trigger for calls using specific Scripts. Leave empty to match all.
Context data: The pipeline receives trigger.call_id. Voxworks hydrates the context with the call record, contact details, and linked objects.

Integration Event

Trigger an automation from events in a connected integration (e.g., a status change in Monday.com, a new deal in HubSpot). This trigger type requires an active integration connection. Select the integration and configure which events should fire the automation. Context data: The integration-specific event payload is available under trigger.*. The exact fields depend on the integration and event type.

Safety and Limits

  • Payload size: Webhook payloads are limited to 100KB. Larger payloads are rejected with a 413 error.
  • Loop prevention: Calls created by an automation will not re-trigger that same automation’s Call Completed trigger. This prevents infinite loops.
  • Idempotency: Webhook requests can include an X-Idempotency-Key header. Duplicate keys are rejected with a 409 response, preventing the same event from being processed twice.