# Discord Integration

Source: https://docs.qualflare.com/docs/integrations/discord · Last updated: 2026-11-02

Connect Qualflare to Discord to post defect, launch, failure cluster, milestone and flaky test messages to a Discord channel through the Qualflare bot.

The Qualflare Discord integration posts a plain-text message to a Discord channel when an event you pick happens in a project; a workspace Editor adds the Qualflare bot to a server once, and each project names one channel by its ID.

## What the integration does

The **Discord** card is under **Notifications** on the workspace **Integrations** page. Each project picks which of the seven events post a message: [Defect Created](https://docs.qualflare.com/docs/integrations/events#defect-created), [Defect Resolved](https://docs.qualflare.com/docs/integrations/events#defect-resolved), [Launch Completed](https://docs.qualflare.com/docs/integrations/events#launch-completed), [Launch Failed](https://docs.qualflare.com/docs/integrations/events#launch-failed), [Cluster Created](https://docs.qualflare.com/docs/integrations/events#cluster-created), [Milestone Completed](https://docs.qualflare.com/docs/integrations/events#milestone-completed) and [Flaky Test Detected](https://docs.qualflare.com/docs/integrations/events#flaky-test-detected). It only posts: nothing in Discord changes Qualflare.

## Before you begin

* You install Discord on the workspace **Integrations** page (requires the Editor role or higher in the workspace).
* You set up each project on its own **Integrations** page (requires the Editor role or higher in the project).
* In Discord, you need permission to add a bot to the server, which Discord gives with **Manage Server**.
* To copy a channel ID, turn on Developer Mode in Discord (Discord Settings → Advanced → Developer Mode).

## Install Discord

1. In the workspace sidebar, open **Integrations**, then the **Notifications** tab
2. On the **Discord** card, click **Install**
3. On Discord, pick the server and authorize the Qualflare bot
4. You are sent back to **Integrations**, with the Discord card installed

*Figure: Discord adds the Qualflare bot to the server you pick.*

## Configure a project

1. In the project sidebar, open **Integrations** and click **Configure** on Discord (**Edit** once it is set up)
2. Enter the **Channel ID**: "Right-click the channel in Discord → Copy Channel ID. Requires Developer Mode (Discord Settings → Advanced → Developer Mode)."
3. Optionally enter a **Channel Name**. It is only shown in Qualflare and doesn't affect delivery
4. Under **Events**, select which events send a message to the channel
5. Click **Save**

The Qualflare bot must be allowed to see the channel and send messages in it.

*Figure: Each project posts to one Discord channel, named by its ID.*

## Check deliveries

Each message Qualflare tries to post is a row in the project's [Recent deliveries](https://docs.qualflare.com/docs/integrations/events#recent-deliveries), with Discord's error in **Detail** when it fails.

## Message format

Discord gets the same one-line text as Slack, listed per event in [Chat messages](https://docs.qualflare.com/docs/integrations/events#chat-messages). Messages are plain text with no links, and mentions never ping anyone: `@everyone` in a defect name pings nobody. In [Launch Completed](https://docs.qualflare.com/docs/integrations/events#launch-completed) messages the counts currently always read `Passed: 0, Failed: 0`.

*Figure: Messages are plain text, the same words Slack gets, and never ping anyone.*

## Remove Discord

> **Caution:** Removing Discord deletes every project's Discord settings. To use Discord again, install it and set up each project from scratch.

On the Discord card in **Workspace → Integrations**, click the trash icon, then **Remove**. Qualflare also revokes its access token at Discord. The bot stays in the server until a server admin removes it in Discord.

## Data sent to Discord

Qualflare sends only the message text of the event, to the channel ID the project saved.

## Troubleshooting

* **Failed rows with `discord channel ID must be a numeric snowflake`.** The **Channel ID** isn't a Discord ID. Copy it again with Developer Mode: it is 15 to 25 digits, not the channel name.
* **Dropped rows with a message from Discord.** Discord refused the message, for example because the bot can't see the channel. **Detail** has Discord's message and code: give the bot access to the channel, or check the **Channel ID**.

## Related

* **Guides:** [Integrations](https://docs.qualflare.com/docs/integrations) · [Slack](https://docs.qualflare.com/docs/integrations/slack) · [Microsoft Teams](https://docs.qualflare.com/docs/integrations/microsoft-teams)
* **Reference:** [Integration events](https://docs.qualflare.com/docs/integrations/events)
