Select an active Automation
GET /automations?status=active returns organization-visible summaries with id, name, description, status, and input_fields. Use the returned id as automation_id. The catalog is read-only through this API.
Understand input declarations
In the current API version,input_fields is empty:
input_fields is empty, omit input from POST /automation-runs or send {} only. Do not send undeclared names.
Start a run
POST /automation-runs accepts one active automation_id and one existing or inline contact reference. It does not accept an agent override, timing override, retry rule, or branch choice. The response is an asynchronous Automation run API resource.
Only if a later API response returns a nonempty input_fields declaration may a client send exactly those named fields. The declaration returned by the API is authoritative.
Track and cancel
Retrieve the run untilstatus is terminal. A second active run for the same Automation and contact can return 409 duplicate_active_run with the existing run ID in safe details.
Cancellation prevents queued work from starting or marks a nonterminal run cancelled between step boundaries. It does not interrupt a step already executing, and external effects remain best-effort. See Status lifecycles for every API-visible state.