Trigger a flow
https://api.joinotify.com/flows/{id}/triggerStarts a run of the flow for a contact. The flow must be active and published, and the published version must have an API trigger.
Identify the contact by contact.id or by contact.phone — with the phone, a contact
that does not exist is created. Whatever comes in data is available in the flow as
{{trigger.<path>}} — nested data included ({{trigger.customer.name}},
{{trigger.items[0].name}}), with formatting such as :money and :date. The sending
number is phoneNumberId, or the one set on the
trigger, or the account's oldest active number.
The answer is 202 with the runId; the messages go out afterwards, outside the
request. runId may be null without it being an error: the trigger leads to no step,
or the same contact started this flow a moment ago (the minimum interval between runs).
Starting a run cancels the contact's other live runs on that number.
Idempotency. With Idempotency-Key, repeating the call within 24 hours returns
200 with the same runId and replayed: true, without starting another run. Unlike
POST /messages: here the body is not compared, and a call that failed does not keep
the key — the repeat tries again.
Path Params
1 required
Headers
1 optional
Identifier of the operation. Repeating with the same value within 24 hours returns the run already started.
max. 120 characters
Body Paramsapplication/json
1 required2 optional
The contact: the id of an existing contact, or a phone in international format. With both, the id wins.
min. 4 charactersmax. 30 characters
Sending number. It must belong to the account and be within the API key scope.
Data for the flow, read as {{trigger.<path>}} in messages, template variables and conditions — nested objects and lists included.