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

# Case data status change

> Webhook event payload and properties for the casedata.statuschange event.

The `casedata.statuschange` event is sent to the webhook whenever the status of a service changes.

Note that additional events can occur even after a service reaches a completion status. For instance, you might receive a notification when a service is complete, then receive a subsequent webhook indicating that the status of the service changed back to pending due to a review or adjudication.

## Payload example

```json theme={null}
{
  "messageId": "3d054561-e6ea-c877-3201-57256af6f1ef",
  "event": "casedata.statuschange",
  "apiTrackingCode": null,
  "apiTrackingUser": null,
  "eventObject": {
    "id": "2f209172-e2df-4b78-a644-c950554fd5f8",
    "description": "SSN Trace",
    "caseId": "3edec2585-29fd-4e85-ae5f-b251d1007ecd",
    "storageId": "def2d21d-d1a2-331dd-a4fg-dsb3aeddf713",
    "details": {},
    "serviceId": "29cd44ab-a8f0-4b27-868e-dc4be88ff541",
    "serviceName": "SSN Trace",
    "serviceTypeId": "30bc2c03-c8dd-409a-8da6-e0070ea6a681",
    "serviceTypeName": "Screening",
    "statusId": "8f29e0de-10f2-4c84-8379-16c6eb7cdf64",
    "status": "pending",
    "pendingStatusId": null,
    "pendingStatus": null,
    "crStamp": "2024-05-25T19:16:55.000Z",
    "modStamp": "2024-05-25T19:18:11.000Z",
    "groupProfileId": "dd2346e4-ed17-2c66-ce22-06ae7e372fd2",
    "candidateId": "fe2d4d28-229b-4f4d-c1d6-fbedcb189275",
    "candidateEmail": "lee@example.com",
    "secondaryStatusId": null,
    "secondaryStatus": null,
    "dataKey": null,
    "serviceCategoryId": "service-cat-idv",
    "serviceCategory": "Identity Verification",
    "serviceSubCategoryId": null,
    "serviceSubCategory": null,
    "serviceProviderId": "ddeab230-db41-245b-af22-1d2e24dfb139"
  }
}
```

## `CaseDataEvent` eventObject properties

| Property | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | `Required` | Unique identifier of the case data record. |
| `description` | `string` | `Required` | Description associated with the service for this case data record. |
| `caseId` | `string` | `Required` | Case ID. |
| `storageId` | `string` | `Required` | Storage ID for the case data record. |
| `details` | `object` | `Required` | Service-specific details object; fields vary by service type. |
| `serviceId` | `string` | `Required` | Service ID represented by the case data record. |
| `serviceName` | `string` | `Required` | Service name. |
| `serviceTypeId` | `string` | `Required` | Service type ID. |
| `serviceTypeName` | `string` | `Required` | Service type name. |
| `statusId` | `string` | `Required` | Case data status ID. |
| `status` | `string` | `Required` | Case data status name. |
| `pendingStatusId` | `string \| null` | `Required` | Pending status ID, when present. |
| `pendingStatus` | `string \| null` | `Required` | Pending status name, when present. |
| `crStamp` | `string` | `Required` | Creation timestamp. |
| `modStamp` | `string` | `Required` | Last modified timestamp. |
| `groupProfileId` | `string` | `Required` | Group profile ID. |
| `candidateId` | `string` | `Required` | Candidate ID. |
| `candidateEmail` | `string` | `Required` | Candidate email. |
| `secondaryStatusId` | `string \| null` | `Required` | Secondary status ID, when present. |
| `secondaryStatus` | `string \| null` | `Required` | Secondary status name, when present. |
| `dataKey` | `string \| null` | `Required` | Optional service-specific data key. |
| `serviceCategoryId` | `string` | `Required` | Service category ID. |
| `serviceCategory` | `string` | `Required` | Service category name. |
| `serviceSubCategoryId` | `string \| null` | `Required` | Service subcategory ID, when present. |
| `serviceSubCategory` | `string \| null` | `Required` | Service subcategory name, when present. |
| `serviceProviderId` | `string` | `Required` | Service provider ID. |
