# Slack, email and webhooks

> Get the Monday brief and alerts in Slack or email, and send events to your own server with outgoing webhooks.

Source: https://prefera.si/docs/integrations/notifications
Docs index for agents: https://prefera.si/llms.txt

The **Notifications** group on **Integrations** sends the Monday brief and alerts where your team already looks. It has three tiles: **Slack**, **Email** and **Webhooks**.

## Slack

Alerts and the Monday brief post to one Slack channel. Prefera stores the webhook encrypted.

1. In **Integrations** > **Notifications**, click **Connect** on **Slack**.
2. If you see an **Add to Slack** button, click it, pick the channel Prefera should post to and click **Allow**. You come back to Prefera, connected.
3. Otherwise, or via **Or paste a webhook URL instead**, make an incoming webhook:
   1. Open Slack apps, choose **Create New App** > **From scratch**, name it Prefera and pick your workspace.
   2. In the left menu open **Incoming Webhooks** and switch it on, then click **Add New Webhook** at the bottom and pick the channel. Ignore any bot or app tokens Slack shows.
   3. Click **Copy** next to the address that starts with `https://hooks.slack.com/services/` and paste it as **Incoming webhook URL**.
   4. Optionally add a **Channel label (optional)**, such as `#ai-visibility`.
4. Click **Test connection**, then **Save**.

To disconnect, click **Disconnect** on the tile. The Monday brief and alerts stop posting to your channel. Email keeps working, and you can connect Slack again any time.

## Email

Email is on by default. The Monday brief and alerts go to each member's inbox. There is nothing to connect.

To choose which alerts you get, click **Preferences** on the **Email** tile. This opens **Alerts**, where **Alert preferences** has a switch per alert type for in-app, email and Slack. The screen shows which address email goes to, and which Slack channel Slack posts to.

For the weekly email itself, see [Results and analytics](/docs/results).

## Webhooks (outgoing)

Outgoing webhooks send a signed JSON message to your server when something happens. They are included with every paid plan. On a plan without them, **Add endpoint** explains this.

1. On the **Webhooks** tile, click **Add endpoint**.
2. Enter the **URL** of your endpoint, for example `https://example.com/prefera`.
3. Tick the **Events** you want. All are ticked at first. You can choose from:
   - A tracking run finished
   - A question moved up (lost to mixed or won, mixed to won)
   - A competitor overtook you on two or more questions
   - A fix re-check finished
   - An answer contradicted an approved fact
   - A run failed, or too many answers did not come back
   - This month's answer allowance crossed 80% or 100%
   - AI described you negatively
   - A daily question moved, with 3 days in agreement
4. Click **Add endpoint**.
5. Copy the signing secret and click **I have copied it**. It is shown only once. Prefera stores it encrypted, so it cannot be shown again.

Requests include `Prefera-Signature` and `Prefera-Event` headers. The signature header looks like `t=<unix time>,v1=<hex>`, an HMAC-SHA256 of the timestamp, a dot and the raw body, computed with your secret. Receivers should reject a timestamp more than five minutes old. Full details, event names and payloads are in [Webhooks](/docs/api/webhooks).

Each endpoint is listed under the tile with its status and number of events. Use **Send test event** to check it works, or **Delete** to remove it. A deleted endpoint stops receiving events straight away. You can have up to 10 endpoints.

> [!NOTE]
> This is separate from the **Your own site (webhook)** tile under **Publish to your site**, which sends pages to your site. See [Connect your site (CMS)](/docs/integrations/cms#webhook).
