Send Voice Message
messagebird.send_voice_message
ActionVoice & SMSconnection required
Calls the MessageBird API with the connection's credentials.
Call up to 50 numbers and read a text out with text-to-speech. Like an SMS send this is accepted first and delivered afterwards, so the per-recipient counts are reported rather than a single flag.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- API key
- Providers
- MessageBird
- Secret shape
- the access key, or {"access_key": "…"}
- Config it needs
- originator, base_url
- Resolved by
- config.connection_id, else node.connection_id
Configuration
10 fields, 2 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
body The text to read out, up to 1000 characters. | string | Yes | — | ≤ 1000 characters | Your appointment is tomorrow at ten. |
recipients Phone numbers to call, as a comma-separated list or a JSON array. MessageBird accepts at most 50 per call. | string | Yes | — | — | +31612345678 |
originator The calling number shown to the recipient, with country code. Overrides the connection's default originator. | string | No | — | — | — |
language Text-to-speech language tag, such as en-gb or nl-nl. | string | No | — | — | en-gb |
voice Which text-to-speech voice reads the message. | string | No | — | one of "male", "female" | — |
repeat How many times to read the message out during the call. | number | No | — | 1–10 | — |
if_machine What to do when an answering machine picks up: continue reading, delay until after the beep, or hang up. | string | No | — | one of "continue", "delay", "hangup" | — |
machine_timeout How many milliseconds to listen for before deciding a machine answered. | number | No | — | 400–10000 | — |
reference Your own reference for this call, echoed back on status reports. | string | No | — | — | — |
scheduled_datetime RFC3339 timestamp to place the call at instead of immediately. | string | No | — | iso8601 format | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"body": "Your appointment is tomorrow at ten.",
"language": "en-gb",
"recipients": "+31612345678"
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
id MessageBird's identifier for the message. | string | — |
href URL of the message object on MessageBird. | string | — |
status One of accepted, scheduled, partial or failed, derived from the per-recipient counts. 'accepted' means MessageBird holds the message; delivery is confirmed later. | string | — |
partial True when some recipients failed and others did not. | boolean | — |
total_count How many recipients the message was addressed to. | number | — |
sent_count How many recipients MessageBird has sent to so far. | number | — |
delivered_count How many recipients have confirmed delivery. | number | — |
failed_count How many recipients failed or let the message expire. | number | — |
failed_recipients One entry per failed recipient with its status, status_reason and status_error_code, so a partial send is visible instead of hidden. | array | — |
message The message object exactly as MessageBird returned it. | object | — |
{
"delivered_count": 0,
"failed_count": 0,
"failed_recipients": [],
"href": "",
"id": "",
"message": {},
"partial": false,
"sent_count": 0,
"status": "",
"total_count": 0
}See Send Voice Message run in a workflow.
In a technical demo we add the MessageBird connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.