DOCS

Slack & Discord one-click connect (admin setup)

Configure the Slack and Discord OAuth apps so workspaces get an "Add to Slack / Discord" button instead of pasting a webhook URL.

Two ways to connect Slack / Discord

There are two paths, and you only need the second if you want the polished button flow:

  1. Incoming Webhook (no admin setup). Any user can paste a Slack/Discord Incoming Webhook URL when creating a notification channel. This works out of the box — see Slack alerts in 5 minutes.
  2. One-click OAuth ("Add to Slack" / "Add to Discord"). Nicer UX, but it requires a platform operator to register one OAuth app per provider and paste its credentials into HowlOps once. That's what this page covers.

Slack OAuth app

  1. Go to api.slack.com/appsCreate New AppFrom scratch.
  2. Under OAuth & Permissions:
    • Add the Redirect URL that HowlOps shows in Admin → Settings → Notifications → Slack (it looks like https://api.howlops.com/api/v1/slack/oauth/callback).
    • Add bot scopes incoming-webhook and chat:write.
  3. From Basic Information, copy the Client ID and Client Secret.
  4. In HowlOps Admin → Settings → Notifications → Slack, paste the Client ID and Client Secret, toggle the provider on, and save.

Users will now see Add to Slack when creating a Slack channel.

Discord OAuth app

  1. Go to the Discord Developer PortalNew Application.
  2. Under OAuth2:
    • Add the Redirect URL shown in Admin → Settings → Notifications → Discord.
    • Use the webhook.incoming scope so HowlOps receives a channel webhook on authorization.
  3. Copy the Client ID and Client Secret from the OAuth2 page.
  4. In HowlOps Admin → Settings → Notifications → Discord, paste both, toggle the provider on, and save.

Where the secrets live

  • Client IDs and secrets are stored as admin settings (slack_client_id, slack_client_secret, discord_client_id, discord_client_secret) and are never exposed to tenants.
  • Environment variables take precedence over the admin-UI values when set, so production can keep secrets out of the database if you prefer.
  • Toggling a provider off (or leaving it unconfigured) hides its card and falls back to the manual Incoming Webhook flow — nothing breaks.

Verify

Create a Slack or Discord channel as a normal user: you should get the Add to … button instead of a webhook field. Complete the OAuth consent, then send a test alert from the channel's menu.

Was this page helpful?