API

Guides

Messages

Voice

WhatsApp Business

Groups

Contacts

Outbox

Account

Sender IDs

Teammate/Subaccount

Conversations

Workflows

Message Templates

Birthday Message

Opt-out

Other

Webhooks (v2)

Workflow triggers

data.config.triggerType of the trigger node. The trigger decides when the workflow runs and what the payload contains.

inbound_message

Runs for every message received on your inboxes (SMS, WhatsApp, virtual numbers).

{ "id": "trigger", "type": "triggerNode",
  "data": { "config": { "triggerType": "inbound_message", "inboxId": 0 } } }
Key Values Description
inboxIdinteger, default 00 = every inbox of your account, otherwise the numeric ID of one inbox.

delivery_report

Runs when a delivery report arrives for a message you sent.

{ "id": "trigger", "type": "triggerNode",
  "data": { "config": { "triggerType": "delivery_report", "deliveryStatus": "failed" } } }
Key Values Description
deliveryStatusall (default) / sent / delivered / failed / undelivered / rejected / bufferedOnly run for this status.

cron

Runs on a schedule. Pick a scheduleMode and fill in the fields that apply; for anything else use custom with a cron expression. The payload is empty until a get_contact action loads a contact.

{ "id": "trigger", "type": "triggerNode",
  "data": { "config": { "triggerType": "cron", "scheduleMode": "days", "intervalValue": 1, "hour": 9, "minute": 0, "timezone": "Europe/Brussels" } } }

{ "id": "trigger", "type": "triggerNode",
  "data": { "config": { "triggerType": "cron", "scheduleMode": "custom", "expression": "0 9 * * 1-5", "timezone": "Europe/Brussels" } } }
Key Values Description
scheduleModeseconds / minutes (default) / hours / days / weeks / months / customHow the schedule is expressed.
intervalValueinteger, 1 or moreEvery N seconds / minutes / hours / days / weeks / months. A seconds schedule needs at least 10 to be published.
minute, hour0-59, 0-23Time of day for days, weeks and months.
dayOfWeekweekday name, or 0 (sunday) to 6For weeks.
dayOfMonth1-31For months.
expression5-field cron expressionRequired for custom; derived from the fields above otherwise.
timezoneIANA name, default Europe/BrusselsTime zone of the schedule.

birthday

Runs once a day for every contact whose birthday it is. The payload contains the contact, including contact.birthday and contact.age.

{ "id": "trigger", "type": "triggerNode",
  "data": { "config": { "triggerType": "birthday", "groupId": "gid_3520a1ec234dbabe1232def67e858855", "time": "09:00", "timezone": "Europe/Brussels", "oncePerContact": true } } }
Key Values Description
groupIdgid_..., optionalOnly contacts of this group; none = all groups.
timeHH:MM, default 09:00When to run.
timezoneIANA name, default Europe/BrusselsTime zone of time.
oncePerContactboolean, default trueDo not run twice for the same contact on the same day.

Placeholders and the payload

{{ path }} inside a text field of an action (marked tpl on the Actions page) is replaced by the value at that path in the payload, e.g. {{ contact.firstname }}, {{ message.body }} or {{ contact.extra3 }}; an unknown placeholder is left as it is. What the payload contains depends on the trigger:

Trigger Payload
inbound_messagemessage.body, message.channel, message.inbox_id, message.length; contact.phone = the sender. The other contact fields stay empty until a contact or get_contact action loads the contact.
delivery_reportdelivery_report.status; message.body, message.channel, message.length; contact.phone.
birthdaycontact.* including birthday (DD/MM) and age.
cronEmpty until a get_contact action loads a contact.
all triggersexecution.run_count.

Get sample payload returns this structure for the trigger of the workflow, filled with a real contact when you pass contact_id; use it as the body of Test workflow.

SMS API

Smstools
API SMS passerelle. Intégration facile. Grâce à notre API SMS, vous pouvez étendre les fonctionnalités de votre logiciel avec une intégration SMS. SMS API
5 sur 5 basé sur 3303 avis d'utilisateurs.
SMSGATEWAYAPI API1

INSCRIVEZ-VOUS

Découvrez notre plateforme SMS aujourd'hui !

Essai gratuit