List an automation's saved versions
Returns the automation's versions, newest first; versions whose stored graph no longer compiles are omitted. Requires the `automations:read` permission plus view access to the automation.
apiKeyAuthorizationBearer <snoze_sk_…>Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
workspaceId*stringautomationId*stringSuccess
application/json- response
data*array<>curl -X GET 'https://api.snoze.dev/v1/workspaces/string/automations/string/versions'{ "data": [ { "id": "string", "automationId": "string", "version": 0, "status": "draft", "trigger": { "kind": "manual" }, "graph": { "reusable": { "inputs": [ { "key": "string", "label": "string", "type": "text", "required": true } ], "outputs": [ { "key": "string", "label": "string", "type": "text", "required": true, "value": { "type": "literal", "value": null } } ] }, "nodes": [ { "id": "string", "label": "string", "retry": { "maxAttempts": 0, "initialDelaySeconds": 0, "backoffMultiplier": 0, "maxDelaySeconds": 0 }, "position": { "x": 0, "y": 0 }, "kind": "action", "actionId": "string", "input": { "property1": { "type": "literal", "value": null }, "property2": { "type": "literal", "value": null } } } ], "edges": [ { "id": "string", "from": "string", "to": "string", "outcome": "always" } ], "entryNodeIds": [ "string" ], "testPayloads": [ { "id": "string", "name": "string", "payload": {} } ], "failureAutomationId": "string", "triggerPosition": { "x": 0, "y": 0 } }, "createdAt": "string", "publishedAt": "string" } ]}Publish an automation's draft version
Promotes the current draft to the published version and installs its triggers, optionally enabling the automation or rotating its webhook signing secret at the same time. Requires the `automations:write` permission plus edit access; the draft is recompiled under stricter publish-time rules, so an automation with no unpublished changes, no steps, or an invalid graph is rejected with a validation error. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.
Restore an automation to an earlier version
Copies the selected version's trigger and graph into a new draft, archiving any draft that was already open. Requires the `automations:write` permission plus edit access; a version id that does not belong to this automation, or one whose graph no longer compiles, is rejected with a validation error. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.