---
title: "Connect Better Stack"
description: "Send Better Stack incidents to Firefight through an Incident webhook."
canonical: https://firefight.app/docs/alerts/better-stack
---

# Connect Better Stack

Firefight has a dedicated alert source for Better Stack. Each Better Stack incident becomes an alert that resolves in Firefight when the incident is resolved.

## Set up the Firefight side

Go to **Settings → Alert Sources**, click **Add source**, give it a name like "Better Stack uptime", and pick the **Better Stack** provider. When you create it, Firefight opens the source's setup. It shows the ingest URL and a **Copy token** button for the source's secret token, and the same steps as this page.

## Set up the Better Stack side

1. In Better Stack, open **Incidents → Integrations**, and under **Exporting data** configure **Outgoing webhooks**. Add an **Incident webhook**.
2. Paste the ingest URL as the **Webhook URL**.
3. Send it when an incident is started, resolved and reopened.
4. Customize the request template and add a header named `X-Firefight-Token` holding the token. Leave the request body as it is.

Requests that fail the check are rejected with `401`, and the source's row in **Settings → Alert Sources** shows the rejection.

## What Firefight reads

Each alert gets these fields, which you can match in your [routing rules](https://firefight.app/docs/alerts/routing-rules.md).

| Field | Value |
|---|---|
| `title` | The monitor's name |
| `description` | The incident's cause and the monitored URL |

## Firing and resolving

A started incident fires an alert, and its resolve resolves it. Comments are accepted and ignored.

See [Grouping & deduplication](https://firefight.app/docs/alerts/grouping-and-deduplication.md) for how repeat firings collapse into one alert.
