Skip to main content
POST
Schedule a call

Authorizations

Authorization
string
header
required

API key created in the dashboard under Settings → API Keys. Send it as Authorization: Bearer pk_....

Body

application/json

Request schema for sending a call (v2 with multi-provider support).

Shared by the dashboard's send-call endpoint and the public API, so the descriptions below are what integrators read on docs.dialtu.com.

phone_number
string
required

Destination phone number in E.164 format (for example +15551234567). A number without a leading + is combined with country_code.

agent_id
integer
required

ID of the voice agent that places the call, as shown in the dashboard.

max_duration
integer
required

Maximum call length in seconds; the call is ended when it is reached.

from
string | null

Caller ID to dial from, as one of the account's phone numbers. Defaults to the agent's configured number.

first_sentence
string | null

Overrides the agent's opening line for this call.

wait_for_greeting
boolean | null
default:false

Wait for the recipient to speak before the agent says its first sentence.

request_data
Request Data · object | null

Arbitrary key/value pairs made available to the agent's prompt as variables (for example {{appointment_date}}).

dynamic_data
Dynamic Data · object | null

Values the agent may update during the call; returned with the call record.

start_time
string<date-time> | null

When to place the call, ISO 8601. Omit to queue it immediately. Interpreted in timezone when no offset is given.

voicemail_message
string | null

Message the agent leaves when the call reaches voicemail.

voicemail_action
enum<string> | null
default:hangup

What to do on voicemail: hangup, leave_message (uses voicemail_message), or ignore (continue as if answered).

Available options:
hangup,
leave_message,
ignore
record
boolean | null

Record the call. Defaults to the agent's setting.

analysis_schema
Analysis Schema · object | null

JSON Schema of fields to extract from the transcript after the call; results are stored on the call record.

answered_by_enabled
boolean | null
default:false

Detect whether a human or a machine answered before the agent starts talking.

timezone
string | null
default:UTC

IANA timezone (for example America/Mexico_City) used to interpret start_time and retry time slots.

country_code
string | null
default:1

Country calling code prepended when phone_number has no + prefix.

disposition_tags
DispositionTagDTO · object[] | null

Disposition tags the agent may apply to this call. Tags that do not exist yet are created.

client_id
integer | null

ID of an existing client to attach the call to (see Create a client).

max_retries
integer | null
default:0

How many times to retry the call. 0 disables retries.

retry_delay_days
integer | null
default:0

Days to wait before a retry: 0 retries the same day, 130 on a later day.

retry_time_slot
string | null
default:morning

Time of day for retries: morning, midday, afternoon, evening, or custom (then set retry_specific_time).

retry_specific_time
string<time> | null

Clock time (HH:MM) for retries when retry_time_slot is custom.

retry_on_not_connected
boolean | null

Retry when the call is not answered or reaches voicemail.

retry_on_disposition_tags
boolean | null

Retry when the agent applies a disposition tag of type retry.

Response

OK

Public API response schema for scheduled calls.

status
string
required

Response status

Allowed value: "success"
call_id
integer
required

Unique identifier for the scheduled call

message
string
required

Human-readable success message

queue_status
enum<string>
required

Current status of the call in the queue

Available options:
queued,
processing
scheduled_at
string | null

When the call is scheduled to execute (ISO 8601 format)