Send SMS

messagebird.send_sms
ActionVoice & SMSconnection required

Calls the MessageBird API with the connection's credentials.

Send or schedule an SMS to one or more numbers, or to saved contact groups. MessageBird accepts the message and reports per-recipient delivery afterwards, so the output carries the sent, delivered and failed counts rather than a single success 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

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

FieldTypeRequiredDefaultConstraintsExample
body
The text of the message the handset will show.
stringYes——Your order has shipped.
recipients
Phone numbers in international format, as a comma-separated list or a JSON array. Leave blank when sending to group_ids instead.
stringNo——+31612345678
group_ids
MessageBird contact-group ids to send to, as a JSON array. An alternative to naming recipients one by one.
arrayNo—array of string—
originator
The sender shown on the handset. Overrides the connection's default originator; up to 11 letters or 15 digits.
stringNo—≤ 17 characters—
message_type
How the handset should treat the message: a normal sms, a binary payload, or a flash shown without being stored.
stringNo—one of "sms", "binary", "flash"—
datacoding
Character set: plain for GSM 03.38, unicode for UCS-2, or auto to let MessageBird pick from the body.
stringNo—one of "plain", "unicode", "auto"—
reference
Your own reference for this message, echoed back on status reports.
stringNo———
report_url
URL MessageBird posts delivery status reports to for this message.
stringNo—url format—
validity
How many seconds MessageBird keeps trying before giving up.
numberNo—1–604800—
mclass
GSM message class: 0 is a flash message, 1 the normal one. 0 to 3 are accepted.
numberNo—0–3—
shorten_urls
Replace links in the body with MessageBird short links so clicks can be tracked.
booleanNo———
scheduled_datetime
RFC3339 timestamp to send at instead of immediately.
stringNo—iso8601 format—
  • At least one of recipients, group_ids must be set.

Example configuration

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

{
  "body": "Your order has shipped.",
  "recipients": "+31612345678"
}

Output

One shape.

result

FieldTypeExample
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 SMS 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.