GitHub integration

Connect your GitHub repositories to Round Robin rotations and automatically notify on-duty team members about important GitHub events, such as pull requests, issues, and code reviews.

Overview

The GitHub integration allows you to:

  • Receive notifications about GitHub activity directly in Slack
  • Route notifications to on-duty users, specific channels, or both
  • Filter by repository — choose to monitor all repositories or select specific ones
  • Customize events — pick which GitHub events trigger notifications
  • Create custom templates — personalize notification messages with dynamic placeholders

Getting Started

Step 1: Install the GitHub App

  1. Navigate to SettingsIntegrationsGitHub
  2. Click Install GitHub App
  3. You'll be redirected to GitHub to authorize the app
  4. Choose which organization or personal account to install the app on
  5. Select which repositories the app can access (all or specific repositories)
  6. Complete the installation

Once installed, you'll see your connected GitHub account on the integrations page.

Step 2: Configure a Rotation

After connecting GitHub, you can enable GitHub notifications for any rotation:

  1. Go to the rotation's detail page
  2. Click Configure GitHub
  3. Choose your settings (see below)
  4. Click Save

Configuration Options

Repository Selection

Choose which repositories will trigger notifications for this rotation:

  • All Repositories — Any repository accessible by the GitHub App will trigger notifications
  • Specific Repositories — Select individual repositories from the list

Notification Target

Control who receives GitHub notifications:

  • On-Duty Users: Only users currently on duty receive direct messages
  • Rotation Channels: Notifications are posted to the rotation's configured Slack channels
  • Both: Notifications go to both on-duty users and channels

Event Types

You can choose which GitHub events trigger notifications. You can use the Default Events preset or create a Custom Event Selection.

Custom Notification Templates

You can customize the notification message for any event type. Templates support both general (applies to all actions of an event type) and action-specific customizations.

Template Priority

When a GitHub event occurs, the system looks for a template in this order:

  1. Action-specific template (e.g., template for "PR merged")
  2. Event-type template (e.g., template for all PR events)
  3. Default template (built-in message)

This allows you to have a general template for most actions but override specific ones. For example, you might want a special celebration message when a PR is merged, but use a standard template for other PR actions.

Available Placeholders

Use these placeholders in your templates to create dynamic messages:

Placeholder Description Example
%ROTATION_NAME% Name of the rotation "Backend Team On-Call"
%GITHUB_ACTOR% User who triggered the event "johndoe"
%GITHUB_REPOSITORY% Full repository name "acme/backend-api"
%GITHUB_REPOSITORY_SHORT% Repository name only "backend-api"
%GITHUB_EVENT_TITLE% Title of the PR or issue "Add user authentication"
%GITHUB_EVENT_URL% Link to the PR or issue (clickable link)
%GITHUB_EVENT_DESCRIPTION% Body/description (truncated) PR or issue body text
%GITHUB_EVENT_TYPE% Type of event "pull_request"
%GITHUB_ACTION% Specific action "opened", "merged", etc.
%GITHUB_LABEL% Label name (for label events) "bug", "enhancement"

Template Examples

General PR template: 🔔 PR activity in `%GITHUB_REPOSITORY_SHORT%`: %GITHUB_EVENT_TITLE% By %GITHUB_ACTOR% • Rotation: %ROTATION_NAME%

PR merged celebration: 🎉 *PR merged!* %GITHUB_EVENT_TITLE% Great work, %GITHUB_ACTOR%! Another one shipped in `%GITHUB_REPOSITORY_SHORT%`

New issue notification: 🐛 New issue: %GITHUB_EVENT_TITLE% Opened by %GITHUB_ACTOR% in `%GITHUB_REPOSITORY_SHORT%` %GITHUB_EVENT_DESCRIPTION%

Label added: 🏷️ Label `%GITHUB_LABEL%` added to: %GITHUB_EVENT_TITLE%

How Notifications Work

When a GitHub event occurs in a monitored repository:

  1. GitHub sends a webhook to Round Robin
  2. Round Robin checks which rotations are configured for that repository
  3. For each matching rotation, it:
  • Verifies the event type is enabled
  • Finds the current on-duty users (if applicable)
  • Applies the appropriate template (custom or default)
  • Sends notifications to the configured targets

Notification Examples

Default PR opened notification: > 🔄 New PR opened: Add user authentication

> by johndoe in backend-api  repository

> Rotation: Backend Team > > This PR adds OAuth2 authentication flow...

Default PR merged notification: > 💜 PR merged: Add user authentication

> by johndoe in backend-api  repository

> Rotation: Backend Team

Default issue comment notification: > 💬 New comment on issue: Bug: Login fails on Safari

> by janedoe in frontend-app  repository

> Rotation: Frontend Support

Troubleshooting

Notifications not being received

  1. Check the GitHub connection — Go to Settings → Integrations → GitHub and verify the connection is active
  2. Verify repository access — Ensure the GitHub App has access to the repository in question
  3. Check rotation settings — Confirm the event type is enabled and the repository is included
  4. Verify on-duty status — If targeting on-duty users, confirm someone is currently on duty

Wrong notification template

Templates are applied in order of specificity. If you're seeing the wrong message: 1. Check if there's an action-specific template overriding your general template 2. Verify the template key matches the expected format (e.g., pull_request:merged  for PR merge events)

GitHub App shows as disconnected

This can happen if: - The app was uninstalled from GitHub - Permissions were revoked - The installation was suspended

To fix, reinstall the GitHub App from the integrations page.

Frequently Asked Questions

Q: Can I use GitHub integration with a free plan?

A: No, GitHub integration is available on paid plans only.

Q: How many repositories can I monitor?

A: There's no limit. You can monitor as many repositories as the GitHub App has access to.

Q: Can different rotations monitor the same repository?

A: Yes! Multiple rotations can be configured for the same repository, each with their own event settings and templates.

Q: Are private repositories supported?

A: Yes, as long as the GitHub App is installed with access to those private repositories.

Q: What happens if no one is on duty?

A: If notification target is set to "On-Duty Users" and no one is on duty, no notification is sent. Consider using "Both" to ensure channel notifications always go through.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us