Configure the webhook
During campaign setup:- Create a Continuous Calling campaign and choose Webhook in Call initiation.
- In Source setup, copy the webhook URL and API key. Send a JSON POST with the key in the
X-Authorizationheader. - To capture fields from a request, open Live test, select Start listening, and send a representative test request. This draft-only test captures field names without queuing a call. You can also declare fields by hand on the Manual tab.
- In Calling hours, configure any per-person timezone or calling-window field. If using Internal routing, choose the dial-out-number field in Number routing.
- In Variables, map the remaining source data to the variables used by the outbound flow.
phone_number for the number to call. The following example also includes optional scheduling and dial-out fields. Declare the fields you send and enable the corresponding controls in Calling hours or Number routing; adding an optional field to the request alone does not turn that behavior on.
calling_window narrows the campaign’s calling hours for that contact only. See calling windows.
Keep the API key private. Do not place it in client-side code, screenshots, or documentation examples.
Keep the schema aligned
Update the declared fields whenever you add, rename, or remove a top-level field. During draft setup, capture another request with Live test or edit the list on Manual. After setup, use Settings > Call initiation and save the changes. Then review the routing, scheduling, and flow-variable mappings that use those fields.Verify the trigger
Use a phone number you control and send a representative request. Confirm that:- the call appears in the campaign queue;
- the phone number, timezone, and optional dial-out number or calling window resolve correctly; and
- the selected flow receives the expected mapped values.

