Rotate a webhook automation's signing secret
Generates a new signing secret for a webhook-triggered automation, stores it encrypted, and returns it with the automation. Requires the `automations:write` permission plus edit access; an automation that has not been published, or whose published trigger is not a webhook, is rejected with a validation error. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.
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*curl -X POST 'https://api.snoze.dev/v1/workspaces/string/automations/string/webhook-secret/rotate'{ "data": { "referenceIssues": [ { "nodeId": "string", "message": "string" } ], "id": "string", "workspaceId": "string", "key": "string", "label": "string", "enabled": true, "versionId": "string", "version": 0, "publishedVersionId": "string", "draftVersionId": "string", "hasUnpublishedChanges": true, "trigger": "manual", "triggerConfig": { "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 } }, "webhookPath": "string", "webhookSecret": "string", "webhookActive": true, "runAs": { "kind": "workspace", "connectionId": "string" }, "aiMonthlyBudgetMicrousd": 0, "nextRunAt": "string", "lastTriggeredAt": "string", "createdAt": "string", "updatedAt": "string" }}Acknowledge a dead-lettered job or trigger delivery
Marks one dead entry as acknowledged so it drops out of the default dead-letter list, without retrying it. Requires the `automations:write` permission plus edit access to the owning automation; an id that is not currently dead is rejected with a validation error. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.
Reveal a webhook automation's signing secret
Returns the current signing secret of a webhook automation so an editor can configure the sender, and records the reveal as an audit event. The secret is read under the same lock as rotation, so a reveal never returns a secret a concurrent rotation has revoked, and only a reveal that returned a secret is audited. Requires the `automations:write` permission plus edit access; an automation whose published trigger is not a webhook is rejected with a validation error. The response is never stored for idempotent replay.