Make Call

plivo.make_call
ActionVoice & SMSconnection required

Calls the Plivo API with the connection's credentials.

Place an outbound call to one or more numbers. Plivo fires the call and answers with a request UUID, so the output says the call was fired rather than answered — poll the live call for its real state.

Connection

Required
Yes — the node will not save without one
Auth type
Username & password
Providers
Plivo
Secret shape
{"username": "<Auth ID>", "password": "<Auth Token>"}
Config it needs
auth_id, src, answer_url, base_url
Resolved by
config.connection_id, else node.connection_id

Configuration

14 fields, 1 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
to
Numbers to call in international format, as a comma-separated list or a JSON array. Plivo dials them one after another.
stringYes——14155550123
from_number
The caller id to place the call from. Overrides the connection's default src.
stringNo———
answer_url
URL returning the Plivo XML that drives the call once it is answered. Overrides the connection's default answer_url.
stringNo—url format—
answer_method
The HTTP verb Plivo uses when it fetches the answer URL.
stringConditional—one of "GET", "POST"; only with answer_url—
ring_url
URL Plivo notifies as soon as the destination starts ringing.
stringNo—url format—
hangup_url
URL Plivo notifies with the call detail record once the call ends.
stringNo—url format—
fallback_url
URL Plivo fetches Plivo XML from when the answer URL fails.
stringNo—url format—
caller_name
The caller name to present alongside the caller id.
stringNo———
send_digits
DTMF tones to play once the call is answered, for navigating an IVR. Use w for a half-second pause.
stringNo———
time_limit
Maximum length of the call in seconds; Plivo hangs up after it.
numberNo—≥ 1—
ring_timeout
How many seconds to let the destination ring before giving up.
numberNo—≥ 0—
machine_detection
Plivo's answering-machine detection mode, exactly as its call API documents it. Leave blank to disable detection.
stringNo———
machine_detection_url
URL Plivo posts the answering-machine detection result to.
stringConditional—url format; only with machine_detection—
sip_headers
Extra SIP headers to attach to the call, as name=value pairs separated by commas.
stringNo———

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "to": "14155550123"
}

Output

One shape.

result

FieldTypeExample
status
fired when Plivo accepted the request, failed when it returned no request UUID. Never means the call was answered.
string—
request_uuid
Plivo's identifier for the call request. It is not a call_uuid; the live call carries both.
string—
recipient_count
How many destinations were requested.
number—
recipients
The destination numbers as they were dialled.
array—
api_id
Plivo's identifier for this API request.
string—
message
Plivo's acknowledgement, 'call fired'.
string—
response
The call response exactly as Plivo returned it.
object—
{
  "api_id": "",
  "message": "",
  "recipient_count": 0,
  "recipients": [],
  "request_uuid": "",
  "response": {},
  "status": ""
}

Notes

  • A request_uuid is not a call_uuid and the call has not been answered yet — use plivo.get_live_call or the hangup_url callback for state.

See Make Call run in a workflow.

In a technical demo we add the Plivo connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.