Skip to content

Slack

The Slack integration posts every share you create as a Block Kit card into a Slack channel: title, page, environment, diagnostics counts, a link to the annotated screenshot, and a View full report button that opens the share page.

It uses Slack Incoming Webhooks — no OAuth, no app review. One webhook URL maps to one channel, so if you want reports in three channels, add three integrations.

Step 1: Create an Incoming Webhook in Slack

Section titled “Step 1: Create an Incoming Webhook in Slack”
  1. Go to api.slack.com/apps → Create New App → From scratch
  2. Give it a name, pick the target workspace, then click Create App
  3. In the left sidebar open Incoming Webhooks and toggle Activate Incoming Webhooks on
  4. Click Add New Webhook to Workspace at the bottom, choose the channel that should receive reports, and allow access
  5. Copy the generated URL — it looks like https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXX

Step 2: Add the integration in BugCapturer

Section titled “Step 2: Add the integration in BugCapturer”
  1. Sign in and open the integrations page
  2. Pick Slack in the left platform list → Add integration
  3. Fill in a name and the Incoming Webhook URL from step 1
  4. Click Verify & save — the backend checks the URL belongs to hooks.slack.com and posts a test card to your channel
  5. When the card shows up in Slack, the integration is active. Every new share will now post a card to that channel
ElementContent
Header🐞 [type] first line of the description
PageTitle of the page where the report was captured, linked to the sanitized URL
EnvBrowser · OS · screen resolution
DiagnosticsCounts only — Console 2 · Network 0
ScreenshotLink to the annotated screenshot — shown inline when Slack can fetch the image
ButtonView full report → the share page (with the full error details)

Slack Incoming Webhooks are channel-scoped by design. If you get reports for several teams, either:

  • add one integration per channel, or
  • post everything into one channel and let Slack’s own workflows route it further.

The card always appears as your Slack app, with the channel’s name shown normally.

  • BugCapturer treats any 2xx response as success; Slack returns ok for accepted messages
  • Failures are retried twice (5s / 15s backoff) and recorded in the delivery log
  • 20 consecutive failures auto-disable the integration and email you
  • Common causes of failure: the webhook was revoked in Slack, the app was uninstalled, or the channel was deleted. Click Test after fixing it to resume
  • The webhook URL is the credential — anyone holding it can post messages into that channel
  • BugCapturer therefore never shows it back in full: the card and list only display the last 6 characters
  • To replace it, paste the full URL again when editing the integration
  • To revoke it, remove the webhook in Slack (the integration then fails and gets auto-disabled after 20 failures)
  • Only https://hooks.slack.com/services/… (and hooks.slack-gov.com for GovSlack) is accepted

“Official webhook domains only” on save? The URL must be a Slack Incoming Webhook — no other host is accepted, because that URL is a credential and can post into your workspace.

Where is the screenshot? The card always carries a link to the annotated screenshot. Slack fetches and renders the image itself; if it cannot reach our screenshot proxy (a 302 redirect to a signed URL), the card still posts and the link still works.

Can I choose the channel from BugCapturer? Not with Incoming Webhooks. Picking a channel requires a full Slack app with OAuth; it is on the roadmap, not in this release.

Can I get interactive buttons that change state in BugCapturer? Not yet. The button is a plain link to the report, which keeps this integration a thin, low-risk notification layer.

See also: delivery logs and auto-disable.