Skip to content

Alert destinations

ErrLens fires alerts to whatever destination you tell it to — one for the whole organisation, or one per project. Each destination is one of:

  • Slack — incoming webhook, level-coloured blocks
  • Discord — webhook with rich embed
  • Microsoft Teams — Power Automate Workflow adaptive card
  • n8n — Webhook node, full ErrLens event JSON
  • Email — via your own SMTP server
  • Generic webhook — HMAC-signed JSON POST to any URL

Org-wide vs project-scoped

Two scopes share the same kinds:

  • Org-wide destinations sit at /settings/alerts (or in the app via Org alerts). They fire for every project in the organisation. Each project can mute individual ones from its own Alerts tab.
  • Project-scoped destinations live on the project's Settings → Alerts tab. They only fire for that project — useful for a test channel that shouldn't get every project's noise, or for a project owner's personal Slack DM.

Triggers

Today destinations fire for two trigger types:

  • issue.first_seen — the first time a new issue is seen. Repeat occurrences of the same fingerprint don't re-fire.
  • project.frequency — when a project's event rate crosses a configured threshold within a window. Per-rule cooldown prevents flooding.

The event field on every payload tells the receiver which trigger fired. Slack/Discord/Teams cards render slightly different headlines for each; the raw JSON kinds (n8n, generic) carry the same Event schema.

Testing a destination

Every destination has a Send test event button. It synthesises a fake "Test event from ErrLens" alert, runs it through the same formatter + transport the real path uses, and shows ok / error inline. If a Slack channel sees the test message but never sees the real one, the issue is upstream of delivery (rule not configured, project muted, etc).