PullNotifier Logo
Published on

Fix GitHub-Slack Notifications Not Sending

Authors

Fix GitHub-Slack Notifications Not Sending

When GitHub-Slack notifications stop working, your team risks missing critical updates like pull requests or build failures. Here's a quick guide to troubleshoot and resolve the problem:

  • Check Webhook Setup: Ensure the Slack webhook URL is valid and correctly added to GitHub settings.
  • Verify Permissions: Confirm GitHub and Slack integrations have the necessary access rights.
  • Fix Routing Issues: Make sure the Slack bot is invited to the right channels and routing settings are accurate.
  • Reinstall or Reauthorize: Resetting the GitHub-Slack connection can resolve persistent issues.
  • Check for Outages: Visit GitHub Status and Slack Status for service updates.
  • Review Logs: Analyze logs in GitHub Actions and Slack for errors or misconfigurations.

For better notification management, consider tools like PullNotifier to streamline updates and reduce Slack channel noise.

Fixing these issues ensures your team stays informed and avoids costly delays. Start troubleshooting now to restore smooth workflows.

Common Issues You Will Run Into and How to Solve Them

When setting up GitHub-Slack integrations, you'll inevitably encounter several common errors that can be frustrating to troubleshoot. Here's a comprehensive guide to the most frequent issues and their solutions:

1. Error: "The time window to connect your GitHub account has expired. Please return to Slack to re-start the process of connecting your GitHub account."

This error occurs when the OAuth authorization process times out or when there's a delay between initiating the connection and completing it. Here's how to fix it:

Root Causes:

  • OAuth authorization window expired (typically 10-15 minutes)
  • Network connectivity issues during the authorization process
  • Browser session timeouts or cookie issues
  • Interruption in the authorization flow

Step-by-Step Solution:

  1. Restart the Authorization Process:

    • Go to your Slack workspace
    • Type /github signin in any channel
    • Follow the new authorization link that appears
    • Complete the process within 10 minutes
  2. Clear Browser Data:

    • Clear your browser's cookies and cache
    • Disable any ad blockers or privacy extensions temporarily
    • Try using an incognito/private browsing window
  3. Check Network Connectivity:

    • Ensure stable internet connection
    • Try from a different network if possible
    • Disable VPN if you're using one
  4. Reinstall the GitHub App:

    • Go to your Slack workspace settings
    • Navigate to "Apps" → "Manage"
    • Find the GitHub app and click "Remove"
    • Reinstall from the GitHub Slack App Directory
  5. Verify Permissions:

    • Ensure you have admin permissions in your Slack workspace
    • Check that your GitHub account has the necessary repository access
    • Confirm you're using the correct GitHub account

Prevention Tips:

  • Complete the authorization process immediately when prompted
  • Use a stable internet connection
  • Avoid switching between multiple browser tabs during authorization
  • Keep your browser updated to the latest version

2. GitHub "Resource Not Accessible by Integration" Error

This error typically occurs when the GitHub integration lacks the necessary permissions to perform specific actions. It's one of the most common issues in GitHub-Slack integrations.

Root Causes:

  • Insufficient permissions for the GitHub token
  • Missing required scopes for the integration
  • Repository access restrictions
  • Organization-level permission blocks

Step-by-Step Solution:

  1. Check GitHub Token Permissions:

    • Go to GitHub → Settings → Developer settings → Personal access tokens
    • Find your token and verify it has the required scopes:
      • repo (Full control of private repositories)
      • admin:org (if working with organization repositories)
      • read:org (to read organization data)
      • user (to read user profile data)
  2. Update Repository Settings:

    • Navigate to your repository → Settings → Webhooks
    • Check if the webhook is active and properly configured
    • Verify the webhook URL is correct and accessible
  3. Fix GitHub Actions Permissions:

    • Go to your repository → Settings → Actions → General
    • Under "Workflow permissions," select "Read and write permissions"
    • Or add specific permissions in your workflow file:
    permissions:
      contents: read
      issues: write
      pull-requests: write
      security-events: write
    
  4. Check Organization Settings:

    • If using an organization repository, ensure the GitHub app has access
    • Go to Organization Settings → Third-party access
    • Verify the GitHub app is approved and has necessary permissions
  5. Regenerate the Integration:

    • Disconnect the GitHub integration from Slack
    • Remove the GitHub app from your workspace
    • Reinstall and reconfigure with proper permissions

Advanced Troubleshooting:

  • Check GitHub's API rate limits using: curl -H "Authorization: token YOUR_TOKEN" https://api.github.com/rate_limit
  • Review GitHub's audit log for permission-related events
  • Verify the integration is using the correct GitHub account

3. Other Common Issues and Troubleshooting

Beyond the two major errors above, here are additional issues you might encounter:

Webhook Delivery Failures

Symptoms: Notifications stop appearing in Slack despite successful GitHub events.

Solutions:

  • Check Webhook Status: Go to GitHub repository → Settings → Webhooks → Recent Deliveries
  • Verify Webhook URL: Ensure the Slack webhook URL is correct and active
  • Test Webhook Manually: Use GitHub's "Redeliver" feature to test webhook delivery
  • Check Slack App Status: Verify the Slack app is still installed and active

Authentication Token Expiration

Symptoms: Integration works initially but stops after a period of time.

Solutions:

  • Check Token Expiration: GitHub personal access tokens can expire
  • Set Up Token Refresh: Implement automatic token refresh in your integration
  • Use GitHub Apps: Consider using GitHub Apps instead of personal access tokens for better security

Rate Limiting Issues

Symptoms: Intermittent failures or delayed notifications.

Solutions:

  • Monitor API Usage: Check your GitHub API rate limit status
  • Implement Exponential Backoff: Add retry logic with increasing delays
  • Reduce API Calls: Optimize your integration to make fewer API requests

Channel Access Problems

Symptoms: Integration works but notifications don't appear in the expected channel.

Solutions:

  • Invite Bot to Channel: Ensure the GitHub bot is invited to the target channel
  • Check Channel Permissions: Verify the bot has permission to post in the channel
  • Verify Channel Name: Double-check the channel name in your configuration

Network and Connectivity Issues

Symptoms: Random failures or timeouts.

Solutions:

  • Check Firewall Settings: Ensure GitHub's IP addresses are whitelisted
  • Verify SSL Certificates: Check that your webhook endpoint has valid SSL certificates
  • Test Network Connectivity: Use tools like curl to test webhook delivery

Integration Configuration Errors

Symptoms: Notifications appear but with incorrect formatting or missing information.

Solutions:

  • Review Payload Format: Ensure your webhook handler processes GitHub's payload correctly
  • Check Event Subscriptions: Verify you're subscribed to the correct GitHub events
  • Validate Message Formatting: Test your Slack message formatting with sample data

Proactive Monitoring:

  • Set up logging for webhook deliveries
  • Monitor GitHub and Slack status pages
  • Implement health checks for your integration
  • Use tools like PullNotifier for more reliable notification management

Why GitHub-Slack Notifications Stop Working

GitHub

When GitHub-Slack notifications stop appearing in your channels, it can disrupt your team's workflow. These interruptions usually stem from three common issues. By understanding these, you can quickly identify and fix the problem to keep your code reviews running smoothly. Here’s a breakdown of the main culprits and how to address them.

Wrong or Missing Slack Webhook Setup

If notifications fail, your first step should be to check the Slack webhook setup. Often, invalid or missing webhook configurations are to blame.

GitHub sends notifications using its own payload format, which might not align with what Slack expects. This mismatch can cause notifications to fail without any visible error, leaving your team unaware of missed updates [3].

To fix this, ensure the Slack webhook URL is valid and correctly added as a secret (e.g., ACTION_MONITORING_SLACK) in your GitHub Actions. Double-check that the webhook URL and channel parameters are accurately configured across all environments.

Missing Permissions in GitHub or Slack

Permissions are another frequent source of notification issues. If GitHub Actions or Slack integrations lack the proper read/write or posting rights, notifications may stop working.

"The error message 'Resource not accessible by integration' typically occurs when the GitHub App token does not have the necessary permissions to access the requested resource." - glauccoslima [4]

To resolve this, review and adjust the token scopes in GitHub and ensure Slack channel access permissions are correctly set.

Incorrect Notification Routing Settings

Notification routing problems can also cause issues. If repository-to-channel mappings are incorrect or the Slack bot isn’t invited to the right channel, messages may not reach their intended destination.

Occasionally, third-party integrations disconnect unexpectedly, disrupting established notification flows [1]. To prevent this, verify your event filters, ensure the Slack bot is invited to the target channel, and confirm that routing settings are properly configured.

How to Fix GitHub-Slack Notification Problems

If your GitHub-Slack integration isn't working as expected, follow these steps to troubleshoot and restore notifications so your team stays updated.

Check Slack and GitHub Integration Settings

Start by reviewing your webhook configuration, as this is often a common source of issues. Test the webhook by triggering an event and confirming whether Slack receives the notification [1].

If notifications aren't showing up, the webhook URL might be incorrectly set up or compromised. For example, a recent guide demonstrated how to configure a Slack app and set up a GitHub Actions workflow using a secret (SLACK_WEBHOOK_URL) stored in repository settings [6]. It's critical to keep this URL private to prevent unauthorized access [5]. If you suspect the URL has been compromised, immediately generate a new one and update all linked services [7].

For more precise control, paste your Slack webhook URL into your GitHub repository's settings and select the specific events that should trigger notifications. Once this is done, double-check Slack's notification configurations to ensure nothing is filtering out these messages.

Check Slack Notification Settings

Slack's notification preferences might be filtering out updates from GitHub. To review your settings, click your profile picture in Slack, go to Preferences, and check the "Notify me about" section. Options include Direct Messages, Mentions & Keywords, or All New Messages. If this is set to "Nothing" or only direct messages, you could miss important updates.

Additionally, review individual channel settings by clicking the channel name and checking its notification preferences. You can also use keyword notifications to make sure you’re alerted about specific terms like "pull request", "merge", or your username. Under "My keywords" in Preferences, add these terms to catch critical updates. You may also want to set a notification schedule to pause alerts outside of work hours while still allowing essential updates during business hours. Keep in mind that if you're using the GitHub app in Slack, mentions will only work in the workspace where you last logged in.

Test and Debug Notifications

Once you've verified your integration and notification settings, it's time to test and debug. Start by using the "/github settings" command in Slack to review and adjust your configuration. Then, use Slack's mobile app notification troubleshooter, found under Notifications > Troubleshoot Notifications in your profile, to run a diagnostic test [9]. If the test succeeds but notifications still don't come through, try reinstalling the Slack app.

Also, check your device's system settings. Features like "Do Not Disturb", Windows' Focus Assist, or browser-specific notification preferences can block alerts. Clearing the Slack app's cache or data might help with stuck or delayed notifications. If the problem persists, examine error messages and logs in both GitHub Actions (if workflows are involved) and Slack settings to identify potential issues with permissions, webhooks, or authentication.

Fixes for Ongoing Notification Problems

If basic troubleshooting hasn’t solved the issue, these advanced methods can help restore reliable notifications between your development tools.

Reinstall or Reauthorize Integration Tools

Sometimes, resetting your integration is the best way to fix ongoing issues. Reinstalling or reauthorizing the GitHub-Slack connection can refresh configurations and permissions, often resolving stubborn notification problems.

To reinstall the integration, head to the Slack App Directory and locate the GitHub Slack app page. Click "Add to Slack" [1], select your workspace, and then click "Authorize" to grant the necessary permissions. You’ll need to reconnect your GitHub account and allow access to repositories, commit data, and webhook events [1].

If you prefer not to fully reinstall, you can reauthorize the integration using the /github signin command directly in Slack [8]. This method reconnects your GitHub account without removing the integration entirely. Just follow the prompts to relink your accounts.

After completing the setup, don’t forget to invite the GitHub app to your Slack channels using /invite @github [8]. This step is particularly important for private channels where the app doesn’t automatically have access. You’ll also need to resubscribe to your repositories by running /github subscribe <organization>/<repository> [8], as reinstalling typically removes any existing subscriptions.

To confirm everything is working, test the new setup by making a small change, like opening an issue, and check if the notification appears in your Slack channel [1]. Additionally, verify the connection by reviewing service statuses and logs.

Check for Service Outages

Sometimes, the problem isn’t on your end - it could be a service outage. Before diving into deeper troubleshooting, check if GitHub or Slack is experiencing downtime.

Visit www.githubstatus.com [11] and slack-status.com [12] for real-time updates. You can also use tools like Downdetector, which tracks over 25 million user-reported issues monthly [10]. Downdetector is often faster at identifying outages than official channels.

"Downdetector Explorer is the best measure we have to detect problems earlier. We typically see Downdetector alerts 30 to 40 minutes before our customer call center starts seeing spikes in volume. We can see exactly what issues our customers are experiencing, and adjust our messaging accordingly."
– Program Manager, International Bank [10]

If there are no outages, you’ll need to dig deeper by examining logs or contacting support.

Check Logs and Contact Support

When the problem persists, logs can provide valuable insights. Start with Slack’s "Troubleshoot Notifications" tool in your profile, review access logs for unusual activity, and clear the app cache. Mark conversations as read (Shift + Esc) if notifications are delayed [9]. On GitHub, check the notification-controller logs for any errors related to dispatching notifications [2].

For example, in October 2024, a user named brianhicks‑pnm faced notification failures with FluxCD and Slack. After reviewing the logs and finding no errors, the issue turned out to be that the Slack bot hadn’t been invited to the channel [2].

If you’re using PullNotifier, review its logs for errors like webhook delivery failures, authentication issues, or permission problems. Look for HTTP status codes, timeout errors, or rate-limiting messages that could explain notification gaps.

If you still can’t resolve the issue, reach out to support. For GitHub-related problems, use GitHub’s support form to ensure your request goes to the right team [8]. Slack also offers dedicated support channels for notification troubleshooting [9]. When contacting support, include key details like log excerpts, error messages, and a timeline of when the problem started. This information will help the support team diagnose and resolve the issue more efficiently.

Better Notification Management with PullNotifier

PullNotifier

Default GitHub-Slack integrations often overwhelm channels with excessive notifications, making it hard to focus on what matters. PullNotifier changes the game, offering a cleaner, more efficient way to manage notifications. Trusted by over 600 organizations and boasting ratings of 4.8/5 on G2 and 5/5 on Product Hunt [13], PullNotifier delivers a smarter, long-term solution for keeping communication clear and focused.

Smart Notification Routing

PullNotifier's routing system ensures that notifications are targeted and relevant. Instead of dumping every pull request (PR) update into one channel, you can set up custom rules based on repositories, labels, authors, or reviewers. This way, each team only sees the updates that matter to them. If your team works with monorepos, you can direct notifications for specific parts of the codebase to the right Slack channels, avoiding unnecessary noise. Additionally, user tagging syncs GitHub users with their Slack profiles for precise communication.

"It covers 99.9% of PR workflows while keeping Slack notifications targeted to only those who need it. The other 0.1% of edge cases is quickly shrinking as they have responded to feature requests super quickly."
– Matthew A., Principal Engineer @ Humanising Autonomy [13]

Real-Time Pull Request Updates

Unlike the default integration that spams channels with separate messages for every PR update, PullNotifier consolidates all updates into a single, dynamic message. This means you get real-time status updates - like "Ready for Review", "Approved", or "Merged" - without clogging up your Slack channels. Visual indicators make it easy to track the entire PR lifecycle at a glance, from start to finish, without unnecessary distractions.

Quick Setup and Configuration

Getting started with PullNotifier is incredibly simple. The setup takes less than a minute [14] and doesn’t require coding or custom workflows. Just connect PullNotifier to your GitHub account and Slack channel, send a test notification to confirm the connection, and configure your notification rules. No need to manage complex webhooks or write scripts.

"It was super easy to set up between our GitHub and Slack. The best thing about this integration is that it doesn't spam your Slack channel. It updates the message in place unlike the official GitHub integration."
– Gleb L., MLOps Engineer @ ElectricTwin [13]

PullNotifier is free for small teams with fewer than four developers, and larger teams can explore its features with a 2-week free trial - no credit card required. This risk-free option lets you see firsthand how it can streamline your notifications and improve workflow efficiency.

With intelligent routing, consolidated updates, and an effortless setup, PullNotifier helps you focus on what truly matters: reviewing code and shipping great features - without the noise.

Conclusion

To get your notifications back on track, start by double-checking your integration settings, permissions, and webhook configurations. If those steps don’t resolve the issue, reinstalling the integration or investigating potential service outages often does the trick.

Fixing notification issues isn’t just about convenience - it’s about maintaining efficiency and avoiding costly mistakes. Studies show that 75% of software development teams find peer reviews improve code quality and reduce errors. Plus, catching defects during coding is far less expensive than addressing them after release - up to 100 times cheaper, in fact [15]. When notifications fail, your team risks missing critical pull request updates, leading to delayed reviews and undetected bugs.

Consider upgrading to PullNotifier to cut through the noise and ensure updates reach the right people at the right time. Instead of juggling cluttered channels and missed alerts, you’ll have a system that supports the streamlined workflows we’ve discussed.

Don’t let notification failures slow your team down - fix your setup today and explore tools designed to keep your processes running smoothly.

FAQs

Why aren’t my GitHub notifications appearing in Slack, and how can I fix this?

## Why GitHub Notifications Might Not Appear in Slack

If your GitHub notifications aren’t showing up in Slack, the culprit is often misconfigured settings. This could mean an incorrect webhook URL or missing permissions for the Slack app. Other potential issues include network connectivity problems or an incomplete integration setup between the two platforms.

Here’s how to troubleshoot and fix it:

- Check the webhook URL: Make sure it’s entered correctly in GitHub’s settings. Even a small typo can cause problems.

- Review Slack app permissions: Ensure the Slack app has the right permissions to send notifications.

- Verify the connection: Double-check that GitHub and Slack are properly linked and that there are no network restrictions blocking communication.

- Organize notifications: Create dedicated Slack channels for GitHub updates to keep things clear and reduce the chances of missing critical alerts.

It’s also a good idea to periodically review your integration settings to catch and fix any potential issues before they disrupt your workflow.

How do I make sure my Slack bot has the right permissions and settings to receive GitHub notifications?

To make sure your Slack bot can receive GitHub notifications, start by verifying its permissions and routing settings. Check that the bot has the necessary scopes, such as chat:write for sending messages, and confirm it’s installed correctly in your Slack workspace.

Next, head over to your GitHub repository settings and add a webhook. Use the webhook URL from your Slack app and specify the events you want to track, like pull requests or issues. Be sure to activate the webhook and confirm it’s set up correctly.

Once everything is configured, test it out by triggering a GitHub event - like creating a pull request - and see if the notification shows up in the designated Slack channel. If something doesn’t work as expected, tweak the settings until everything runs smoothly.

What can I do if GitHub-Slack notifications aren’t working even after checking all settings?

If your GitHub-Slack notifications still aren’t coming through after checking all the basic settings, here are a few additional steps to troubleshoot:

- Confirm the webhook URL: Double-check that the webhook URL in your GitHub settings is correct and active. You can test it by sending a sample message to see if it’s functioning properly.

- Check Slack app permissions: Ensure the Slack app has the right permissions to post messages in the specific channel. You can adjust these settings in the Slack app configuration if needed.

- Look at notification settings: Verify that notifications are turned on for the Slack channel you’re using. Also, make sure there aren’t any workspace or personal preferences blocking them.

- Inspect GitHub repository settings: Make sure notifications are set up for the events you want to monitor. Additionally, check if the repository’s privacy settings might be interfering with the notification delivery.

If these steps don’t fix the issue, reaching out to Slack support could help you pinpoint the problem.