# Notification Settings {#assessment-notifications}

You can receive a notification from Takumi when an assessment completes.

## Destinations {#destinations}

The following three types are available:

- **Slack channel** — a channel of an integrated Slack workspace. See [Integrate Slack](/docs/t/assessment/features/integrations/slack.md) for how to integrate one.
- **Email address** — email addresses of the organization's members, or addresses in the organization's email allowlist.
- **Webhook** — a webhook URL registered for the organization. See [Setting Up Webhook Endpoints](/docs/t/api/features/webhook.md#setup-endpoints) for how to register one.

## How to Configure {#configure}

- **The waiting screen of a running assessment** — set them from the screen shown after an assessment starts.

  ![Slack, Email, and Webhook buttons under "Get notified"](/docs/_md-assets/c640f1e69c-setup-waiting-screen.png)

- **A periodic assessment** — set them under "Notifications" in the [periodic assessment](/docs/t/assessment/features/periodic-diff-assessment.md) settings. They apply to every assessment that periodic assessment creates from then on.

  !["Notifications" in the periodic assessment settings](/docs/_md-assets/3caa5043d2-periodic-settings.png)

## Webhook Format {#webhook-payload}

When you choose a webhook, the data sent has the format below. For other common specifications, see [Webhook Notifications](/docs/t/api/features/webhook.md).

| Field             | Description                                                                                                                                                   |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `assessment_id`   | ID of the assessment.                                                                                                                                         |
| `assessment_name` | Name of the assessment.                                                                                                                                       |
| `status`          | Status of the assessment after the event: one of `CRAWLED` (`assessment.crawled`), `COMPLETED` (`assessment.completed`), or `PENDING` (`assessment.pending`). |
| `url`             | URL of the assessment page in the console.                                                                                                                    |
| `finding_counts`  | Number of findings per severity: `critical`, `high`, `medium`, `low`, and `none`. Present in `assessment.completed` and `assessment.pending`.                 |

A sample `assessment.completed`:

```json
{
  "type": "assessment.completed",
  "timestamp": "2026-10-27T03:00:00Z",
  "data": {
    "assessment_id": "AS01J...",
    "assessment_name": "Weekly scan of flatt.tech",
    "status": "COMPLETED",
    "url": "https://cloud.shisho.dev/{org_id}/assessments/AS01J...",
    "finding_counts": {
      "critical": 1,
      "high": 2,
      "medium": 0,
      "low": 1,
      "none": 0
    }
  }
}
```

A sample `assessment.pending`:

```json
{
  "type": "assessment.pending",
  "timestamp": "2026-10-27T03:00:00Z",
  "data": {
    "assessment_id": "AS01J...",
    "assessment_name": "Weekly scan of flatt.tech",
    "status": "PENDING",
    "url": "https://cloud.shisho.dev/{org_id}/assessments/AS01J...",
    "finding_counts": {
      "critical": 1,
      "high": 2,
      "medium": 0,
      "low": 1,
      "none": 0
    }
  }
}
```

A sample `assessment.crawled`:

```json
{
  "type": "assessment.crawled",
  "timestamp": "2026-10-27T03:00:00Z",
  "data": {
    "assessment_id": "AS01J...",
    "assessment_name": "Weekly scan of flatt.tech",
    "status": "CRAWLED",
    "url": "https://cloud.shisho.dev/{org_id}/assessments/AS01J..."
  }
}
```
