Slack Notifications

FirmHook can send alerts to Slack when deliveries fail, giving your team immediate visibility without requiring someone to watch the dashboard all day.

This guide covers setup, recommended alert rules, and how to test the integration safely.

Slack notifications are available on paid plans that include alert integrations.

What you will need

Before starting, make sure you have:

  • Access to the Slack workspace where alerts should be posted
  • Permission to create a Slack app or incoming webhook
  • Admin or owner access in the FirmHook organization

Step 1: Create a Slack incoming webhook

Create a Slack app

  1. 1Visit api.slack.com/apps
  2. 2Select Create New App
  3. 3Choose From scratch
  4. 4Give the app a name such as FirmHook Alerts
  5. 5Choose the Slack workspace where the messages should appear

Enable incoming webhooks

Inside the new Slack app:

  1. 1Open Incoming Webhooks
  2. 2Turn Activate Incoming Webhooks on

Connect it to a channel

  1. 1Select Add New Webhook to Workspace
  2. 2Choose a channel such as #webhook-alerts
  3. 3Approve the installation

Slack will generate a webhook URL similar to this:

text
https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXX

Treat this URL as a secret. Anyone with it can post messages into your Slack channel.

Step 2: Add the webhook URL in FirmHook

In the FirmHook dashboard:

  1. 1Open your organization
  2. 2Go to Settings -> Notifications
  3. 3Paste the Slack webhook URL into the Slack webhook field
  4. 4Save the changes

Once saved, FirmHook can begin sending alert messages to that Slack channel.

Step 3: Choose your alert behavior

FirmHook supports two common failure alert patterns:

SettingRecommended defaultWhat it does
notify_on_deadOnSends an alert when all retries are exhausted and manual action is likely needed
notify_on_failureOffSends an alert on every failed delivery attempt

For most teams, the best starting setup is:

  • Keep notify_on_dead enabled
  • Keep notify_on_failure disabled

This reduces noise and helps your channel stay useful during temporary outages or short-lived retries.

Step 4: Test the integration

The fastest test is to point a temporary endpoint to a URL that returns a failure response.

Example flow:

  1. 1Create or edit an endpoint and set its destination to https://httpstat.us/500
  2. 2Send a test webhook to the FirmHook ingest URL
bash
curl -X POST https://acme-corp.firmhook.com/<endpoint-id> \ -H "X-Webhook-Api-Key: whq_your_api_key_here" \ -H "Content-Type: application/json" \ -d "{\"event\":\"test\"}"

What happens next depends on your settings:

  • If notify_on_failure is enabled, Slack receives an alert after the first failed attempt
  • If only notify_on_dead is enabled, Slack receives an alert after all retries are exhausted

Recommended channel setup

To keep alerting useful as your team grows:

  • Use a dedicated channel such as #firmhook-alerts
  • Keep the channel focused on failures, not general discussion
  • Pair Slack alerts with email for owner-level visibility
  • Review alert volume monthly to make sure you are not over-notifying

Disable Slack alerts

To stop Slack notifications:

  1. 1Open Settings -> Notifications
  2. 2Clear the saved Slack webhook URL
  3. 3Save the settings

FirmHook stops sending new Slack alerts immediately after the webhook is removed.

Notes and limitations

  • Slack and email alerts are independent, so you can use either or both
  • A Slack incoming webhook posts to one fixed channel
  • To change the Slack destination channel, generate a new webhook in Slack and replace the saved URL in FirmHook
  • If no alert email is configured, FirmHook can fall back to organization owners and admins for email delivery

Troubleshooting

If alerts are not arriving:

  • Confirm the Slack webhook URL was copied fully
  • Make sure the endpoint actually failed and retried
  • Check whether your current plan includes Slack notifications
  • Re-save the notification settings and run another failure test

If the dashboard shows failed deliveries but Slack stays silent, start by checking whether notify_on_dead or notify_on_failure matches the scenario you are testing.