# Discord

> Post alerts to a Discord channel with a webhook, edited in place as an incident changes.

Web page: https://infrainbox.app/docs/notifications/discord/

## Create the webhook

1. In Discord, open the channel's settings → **Integrations** → **Webhooks** → **New Webhook**.
2. Copy its URL.

That URL is a secret: anyone who has it can post to the channel as the webhook.

## Add the destination

1. Go to **Add destination → Discord** (dashboard screen `/destinations/new/discord`).
2. Name it and paste the channel webhook URL.
3. Save, then click **Send test** to confirm a message shows up in the channel. Its card on the Destinations page then shows the last message and who sends there.

## What alerts look like

Each alert is one Discord message: a severity marker, the title, the source and resource it's about, the detail body, and links back to the incident and the sender's own view. **Discord edits that same message in place** as the incident changes — acknowledged, snoozed, resolved — rather than posting a new one each time.

## Options

- **Send recovery and state updates** — off, and this channel is only told when something breaks.
- **Enabled** — off holds the destination without deleting it.
- **Quiet-hours threshold** — the severity floor this destination still hears during [quiet hours](https://infrainbox.app/docs/notifications/quiet-hours.md).

## When Discord pushes back

Discord counts a rejected request against the address it came from, and restricts that address if they keep coming. If a burst of Discord webhooks answers 401, 403 or 429 at once — several deleted webhooks, say — InfraInbox stops sending to Discord for about five minutes rather than keep asking. The notices are queued, not lost: they go out when the pause ends, and they appear as pending in **Deliveries** (dashboard screen `/deliveries`) meanwhile. Destinations of other kinds are unaffected.

A single deleted webhook does not cause this; it simply marks that one destination broken.

## Rotating the webhook

Generate a new webhook URL from the channel's Integrations settings and paste it into this destination's edit form.

## Next

- [Routing rules](https://infrainbox.app/docs/notifications/routing.md) — send specific incidents here
- [Slack](https://infrainbox.app/docs/notifications/slack.md) — the same idea, without in-place edits
