> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getnexor.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Event: Status changed

> Receive workflow status changes and understand the event payload and available dashboard filters.

Fired when a lead's status changes within a workflow. Use this event to sync status updates to your CRM, trigger external automations, or send notifications.

## Payload

```json theme={null}
{
  "event_type": "workflow_run.status_changed",
  "event_id": "...",
  "webhook_id": "...",
  "delivery_id": "...",
  "timestamp": "2026-04-17T16:30:00.000Z",
  "client_id": "...",
  "test": false,
  "data": {
    "status_change": {
      "from_status": {
        "id": "uuid",
        "key": "new",
        "label": "New lead",
        "category": "initial"
      },
      "to_status": {
        "id": "uuid",
        "key": "contacted",
        "label": "Contacted",
        "category": "active"
      },
      "reason": "AI agent completed first outreach",
      "trigger_type": "ai",
      "actor_type": "ai",
      "actor_id": null,
      "changed_at": "2026-04-17T16:30:00.000Z"
    },
    "lead": {
      "id": "uuid",
      "first_name": "Tony",
      "last_name": "Stark",
      "email": "tony.stark@gmail.com",
      "phone": "56994357854",
      "company": "Stark Industries",
      "source": "api",
      "external_id": null,
      "metadata": {}
    },
    "workflow": {
      "id": "uuid",
      "name": "Lead to purchase intent"
    },
    "workflow_run": {
      "id": "uuid",
      "started_at": "2026-04-15T10:00:00.000Z",
      "current_channel": "whatsapp",
      "total_status_changes": 3,
      "origin": "api"
    }
  }
}
```

## Fields

### `data.status_change`

| Field          | Type                  | Description                                                                              |
| -------------- | --------------------- | ---------------------------------------------------------------------------------------- |
| `from_status`  | object \| null        | Previous status (`id`, `key`, `label`, `category`)                                       |
| `to_status`    | object \| null        | New status (`id`, `key`, `label`, `category`)                                            |
| `reason`       | string \| null        | Recorded reason for the change                                                           |
| `trigger_type` | string                | What caused the change: `manual`, `ai_agent`, `system`, `workflow_rule`, `auto`, or `ai` |
| `actor_type`   | string                | Who made the change: `user`, `ai_agent`, `system`, or `ai`                               |
| `actor_id`     | string (uuid) \| null | Actor ID, when recorded                                                                  |
| `changed_at`   | string (ISO 8601)     | Exact time of the status change                                                          |

### `data.lead`

| Field         | Type           | Description                |
| ------------- | -------------- | -------------------------- |
| `id`          | string (uuid)  | Lead ID                    |
| `first_name`  | string \| null | Lead's first name          |
| `last_name`   | string \| null | Lead's last name           |
| `email`       | string \| null | Lead's email               |
| `phone`       | string \| null | Lead's phone number        |
| `company`     | string \| null | Lead's company             |
| `source`      | string         | Source stored for the lead |
| `external_id` | string \| null | ID from an external system |
| `metadata`    | object         | Lead metadata              |

### `data.workflow`

| Field  | Type          | Description   |
| ------ | ------------- | ------------- |
| `id`   | string (uuid) | Workflow ID   |
| `name` | string        | Workflow name |

### `data.workflow_run`

| Field                  | Type                      | Description                          |
| ---------------------- | ------------------------- | ------------------------------------ |
| `id`                   | string (uuid)             | Workflow run ID                      |
| `started_at`           | string (ISO 8601) \| null | When the lead entered this workflow  |
| `current_channel`      | string \| null            | Current channel recorded for the run |
| `total_status_changes` | number                    | Number of status changes in this run |
| `origin`               | string                    | How the run started                  |

## Filtering

The dashboard lets you receive status changes for every agent or a selected agent. You can also choose one destination status or add these filters:

| Filter field      | Description                              | Example     |
| ----------------- | ---------------------------------------- | ----------- |
| `to_status.key`   | Only send changes to this status         | `qualified` |
| `from_status.key` | Only send changes from this status       | `new`       |
| `workflow_id`     | Only send changes for this agent         | `uuid`      |
| `trigger_type`    | Only send changes with this trigger type | `ai`        |
