email_update_automation_step
Edit one step by position.
write email_update_automation_step
Edit one step by position. delay step: delaySeconds (the wait). Send steps: template, props, send window, per-step subject/previewText overrides (null clears back to the template's). Non-send steps: their config — wait_for_event (eventName/timeoutSeconds), legacy-gate branch (filter/ifMatch/ifNoMatch), yes/no branch (filter), multi branch (branches — may not orphan a lane that still has steps), exit (label), set_attribute (attributes/addTags/removeTags), webhook (url/method). A wait belongs on its own delay step — delaySeconds is only editable on a delay step. Step TYPE and a branch's kind are immutable — to change them, remove the step and add a new one. While active, only steps NO run has reached yet can be edited; otherwise pause first. The one exception is skipped (the debug switch — a skipped step is walked past without sending, POSTing, writing attributes or serving its wait): sent on its own it is allowed on a live automation with contacts parked on the step.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
templateSlug | string | No | |
propsOverrides | object | No | |
subject | string | null | No | Send steps: per-step subject override ({{vars}} ok); null clears. |
previewText | string | null | No | Send steps: per-step inbox preview text; null clears. |
eventName | string | No | |
timeoutSeconds | integer | No | |
filter | object[] | any | No | |
ifMatch | continue | exit | No | |
ifNoMatch | continue | exit | No | |
branches | object[] | No | Multi branch only: replace the ordered arms (first match wins). |
convertKind | string | No | |
label | string | No | Exit steps: the label shown in metrics. |
attributes | object | No | |
addTags | string[] | No | |
removeTags | string[] | No | |
url | string | No | |
method | POST | PUT | No | |
delaySeconds | integer | No | |
skipped | boolean | No | Debug switch: runs walk past this step without executing it — no send, no webhook, no wait. Editable while the automation is active. |
sendWindow | object | No | Quiet-hours clamp; contact.attributes.timezone wins over this timezone. |
automation | string | Yes | |
position | integer | Yes | |
projectId | string | No | Target company (project id). Org-scoped tokens only; call email_list_projects first. |