workflows
Dry-run a workflow against a contact
POST /v1/workflows/{id}/dry-run
Auth required
api.workflows.view
Simulate one sample contact (by id) through the workflow's current
definition, returning the step trace it would take — without sending any
mail or enrolling the contact. Lets CI validate a workflow against real
sample contacts before promotion. Returns 422 when the workflow source
does not parse and 404 when the contact does not exist.
Path parameters
id string<uuid> required Resource UUID. An unparseable id reads as a clean 404 not_found.
Request body
Content type: application/json
contact_id string<uuid> required The contact to simulate through the current definition. Must exist in the org.
Responses
Errors follow the RFC 7807 problem format — see the error reference.
200 The simulated step trace application/json
contact_id string<uuid> required steps array<object> required Each entry in steps:
node_path string required node_type string required action string required What the simulation did at this step (e.g. would-send, waited, matched-branch, exited).
detail string optional 401 Missing, malformed, or unknown API key application/problem+json
403 Key lacks the required scope or plan limit violated application/problem+json
404 Resource not found application/problem+json
422 Query parameter or path value failed validation application/problem+json
429 Per-org rate limit exceeded application/problem+json
500 Unexpected server-side failure. The
code is internal_error. The
request_id field can be quoted to SendOps support to investigate.
application/problem+json