Create Call Task
Schedules an outbound call for one of your voice agents to place.
Alpharun owns the scheduling and the dialing: the call is placed at the first moment at or after requested_at that falls within the agent’s calling hours, so the scheduled_at on the returned task is often later than the requested_at you asked for. If no call can be fitted in before the task expires — including when the agent has no calling hours at all — the request is rejected with a 400 Bad Request response.
The endpoint returns a 201 Created response with the scheduled task. If you pass an ext_id that belongs to a task that is still live, no second call is scheduled and the existing task is returned with a 200 OK response. A task that has reached a terminal status (completed, canceled or failed) releases its ext_id, so submitting the same one again schedules a new call.
Outbound calling is enabled per agent; if it is not enabled for the voice agent, the request is rejected with a 403 Forbidden response.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
The UUID of the voice agent that will place the call.
The earliest time the call may be placed. Accepts ISO 8601 format with a timezone offset (e.g. '2026-08-03T14:30:00Z' or '2026-08-03T09:30:00-05:00'). A time in the past means as soon as the agent's calling hours allow. May be at most 90 days in the future.
The contact to call. Contacts are matched on ext_id, email or phone_number and created when no existing contact matches, as they are on the Upload Recording endpoint. A phone number is required — there is nothing to dial without one.
The time past which the call is no longer worth placing, for example because the appointment it is about has happened. If no call can be placed before it, the task fails instead of calling late. Defaults to five days after requested_at, and must be after it.
Custom fields to set on the customer interaction created for this call. Each key must match the field_name of a Customer interaction custom field defined in your Alpharun dashboard; entries whose keys don't match a definition are ignored.
Your own identifier for the call task, for example the ID of the appointment it is about. Submitting it again while the task is still live returns the existing task instead of scheduling a second call.
255Response
A live call task with the same ext_id already exists and is returned unchanged