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

# Shift Webhook Events

> Webhook events for shift data creation and updates.

Subscribe to these events via [Webhooks](/api-reference/webhooks) to receive notifications when shift data becomes available or changes during a refresh.

All webhook payloads include these common fields:

| Field              | Description                                |
| ------------------ | ------------------------------------------ |
| `webhook_id`       | Unique identifier for this webhook request |
| `event_type`       | The event classification                   |
| `event_created_at` | Timestamp when the event occurred          |
| `user_id`          | Associated Truv user identifier            |

All Shift events on this page also include these fields:

| Field           | Description                                                                    |
| --------------- | ------------------------------------------------------------------------------ |
| `link_id`       | Identifier of the Link                                                         |
| `product`       | The product the event relates to, such as `income`, `employment`, or `assets`  |
| `data_source`   | Source of data: `payroll`, `docs`, `insurance`, `financial_accounts`, or `tax` |
| `tracking_info` | Custom metadata passed via `bridge_token` (nullable)                           |
| `task_id`       | The associated Task                                                            |
| `employment_id` | The associated employment record                                               |
| `objects_count` | Number of shifts retrieved                                                     |

***

## shifts-created

Fires when shift data has been extracted. This occurs for any successful non-refresh [Task](/api-reference/tasks/object). Multiple responses are sent when additional shifts are found.

```json theme={null}
{
  "webhook_id": "f82ab0a92ddd4bb7b6117635159b366a",
  "task_id": "c32fb957ec7246828da56be7516da765",
  "link_id": "9915c50cc047413bb810767f218390f8",
  "product": "employment",
  "data_source": "payroll",
  "tracking_info": null,
  "event_type": "shifts-created",
  "event_created_at": "2022-08-23T17:32:24.812306Z",
  "objects_count": 1,
  "employment_id": "427abebd8590457e8332fdff77fc412f",
  "user_id": "88fef4cea64c40b5ad6727cc9b0b9fdc"
}
```

***

## shifts-updated

Fires when the shift count changes during a refresh Task. For example, if a person had 8 shifts and now has 9.

```json theme={null}
{
  "webhook_id": "f82ab0a92ddd4bb7b6117635159b366a",
  "task_id": "c32fb957ec7246828da56be7516da765",
  "link_id": "9915c50cc047413bb810767f218390f8",
  "product": "employment",
  "data_source": "payroll",
  "tracking_info": null,
  "event_type": "shifts-updated",
  "event_created_at": "2022-08-23T17:32:24.812306Z",
  "objects_count": 1,
  "employment_id": "427abebd8590457e8332fdff77fc412f",
  "user_id": "88fef4cea64c40b5ad6727cc9b0b9fdc"
}
```
