---
title: "Workflow run failed event"
method: POST
path: "workflow.run.failed"
tags: ["Webhook Events"]
---

# Workflow run failed event

`POST workflow.run.failed` (webhook)

Fired when a workflow run fails; error says which node failed and why.

## Payload

- WebhookPayloadWorkflowRun
  - `id` string, required — Event id, the dedupe key.
  - `event` 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed', required
  - `timestamp` string, date-time, required
  - `workflow` object, required
    - `id` string
    - `name` string, nullable — Null when the workflow was deleted while the run was live.
  - `execution` object, required
    - `id` string — Workflow run (execution) id.
    - `status` 'running' | 'waiting' | 'completed' | 'exited' | 'failed' — running on workflow.run.started; completed or exited (ended on purpose before the last node, e.g. a handoff) on workflow.run.completed; failed on workflow.run.failed.
  - `conversation` object, nullable, required — Null while a comment-triggered run has not sent the private reply that opens its conversation.
    - `id` string
  - `contact` object, nullable, required
    - `id` string — Zernio contact id.
  - `trigger` object, required
    - `type` string, nullable — The trigger node type, e.g. inbound_message (the default when the node sets none). Null when the workflow was deleted while the run was live.
    - `text` string — The inbound message that started the run, when there was one.
  - `error` string — workflow.run.failed only: which node failed and why.

## Acknowledgement `200`

Webhook received successfully

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) · [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zernio/apis/zernio-api/revisions/698fd1d46648?raw)
