Trigger Notification Workflows on GitHub Events
Build automated notification sequences for GitHub events. Handle pull requests, issues, releases, and CI/CD with zero code.
{
"key": "integration.github.pull_request",
"steps": [
{
"if": "payload.action == 'opened'",
"command": "broadcast",
"input": {
"action_url": "{{payload.pull_request.html_url}}",
"content": "PR #{{payload.pull_request.number}} by {{payload.sender.login}} - {{payload.pull_request.additions}} additions, {{payload.pull_request.deletions}} deletions across {{payload.pull_request.changed_files}} files.",
"overrides": {
"providers": {
"email": {},
"slack": {}
}
},
"recipients": [
{
"external_id": "code-reviewers"
}
],
"title": "New PR: {{payload.pull_request.title}}"
}
}
]
}Trusted by 1,000+ companies
Why GitHub + MagicBell Workflows
Respond to every GitHub event with the right notification at the right time.
Instant Triggers
Workflows execute automatically when GitHub webhooks arrive. No polling, no delays.
Event Data Access
Reference any GitHub webhook data in your notifications with liquid templates.
Smart Logic
Branch workflows based on event type, repository, author, labels, or any metadata.
PR Workflows
Notify reviewers, track approvals, and alert on merge conflicts automatically.
Multi-Channel
Send to in-app, email, Slack, SMS, or push notifications from a single workflow.
Zero Code Setup
Configure workflows via API or dashboard. No backend changes required.
Real GitHub Workflow Examples
Copy these workflows to handle common GitHub events.
pull_requestGithub Pull Request Opened Notification to Slack & Email
Notify reviewers when a new pull request is opened. Notify the team lead if the PR has more than 500 lines changed.
{
"key": "integration.github.pull_request",
"steps": [
{
"if": "payload.action == 'opened'",
"command": "broadcast",
"input": {
"action_url": "{{payload.pull_request.html_url}}",
"content": "PR #{{payload.pull_request.number}} by {{payload.sender.login}} - {{payload.pull_request.additions}} additions, {{payload.pull_request.deletions}} deletions across {{payload.pull_request.changed_files}} files.",
"overrides": {
"providers": {
"email": {},
"slack": {}
}
},
"recipients": [
{
"external_id": "code-reviewers"
}
],
"title": "New PR: {{payload.pull_request.title}}"
}
}
]
}issuesGithub Issues Opened Notification to Slack & Email
Notify the team on Slack when a new issue is opened. Include issue details and a link to triage quickly.
{
"key": "integration.github.issues",
"steps": [
{
"if": "payload.action == 'opened'",
"command": "broadcast",
"input": {
"action_url": "{{payload.issue.html_url}}",
"content": "Issue #{{payload.issue.number}} opened by {{payload.sender.login}} in {{payload.repository.full_name}}.",
"overrides": {
"providers": {
"slack": {}
}
},
"recipients": [
{
"external_id": "engineering-team"
}
],
"title": "New issue: {{payload.issue.title}}"
}
}
]
}releaseGithub Release Published Notification to Slack & Email
Announce new releases to the team and stakeholders. Notify via Slack and email with release notes.
{
"key": "integration.github.release",
"steps": [
{
"if": "payload.action == 'published'",
"command": "broadcast",
"input": {
"action_url": "{{payload.release.html_url}}",
"content": "{{payload.repository.full_name}} {{payload.release.tag_name}} has been published by {{payload.sender.login}}.",
"overrides": {
"providers": {
"email": {},
"slack": {}
}
},
"recipients": [
{
"external_id": "all-team"
}
],
"title": "Release {{payload.release.tag_name}}: {{payload.release.name}}"
}
}
]
}check_runGithub Check Run Completed Notification to Slack & Email
Notify developers when CI checks fail. Send via Slack with details about the failure.
{
"key": "integration.github.check_run",
"steps": [
{
"if": "payload.action == 'completed' \u0026\u0026 payload.check_run.conclusion == 'failure'",
"command": "broadcast",
"input": {
"action_url": "{{payload.check_run.html_url}}",
"content": "Check run failed on {{payload.check_run.check_suite.head_branch}} in {{payload.repository.full_name}}. {{payload.check_run.output.summary}}",
"overrides": {
"providers": {
"slack": {}
}
},
"recipients": [
{
"external_id": "engineering-team"
}
],
"title": "CI Failed: {{payload.check_run.name}}"
}
}
]
}Connect GitHub to MagicBell
Forward GitHub webhooks to MagicBell to automatically trigger workflows.
How It Works
integration.github.pull_request.openedhttps://api.magicbell.com/v2/integrations/github/webhooks/incoming/YOUR_IDIssues, Pull requests, Pushes, Releases, and moreEvent data available as {{data.*}} variables# 1. Save your GitHub webhook signing secret in MagicBell
magicbell integration save_github \
--data '{"webhook_signing_secret":"your_secret_here"}'
# 2. Use the returned ID to build your webhook URL
# https://api.magicbell.com/v2/integrations/github/webhooks/incoming/{id}Browse Event Examples
View sample payloads and workflow configurations for 66 GitHub events.
To create a workflow for any GitHub event, use the key pattern: integration.github.{event_type}. GitHub sends the event type in the webhook header and the action in the payload body. Use an if condition to filter by action.
branch_protection_rule Notify security team when branch protection rules are modified.
check_run Notify developers when CI checks fail. Send via Slack with details about the failure.
check_suite Notify when all CI checks complete for a branch.
code_scanning_alert Notify security team when CodeQL finds vulnerabilities in code.
commit_comment Notify commit authors when someone comments on their commits.
content_reference Handle external content references via domain allowlists.
create Track branch and tag creation. Notify team about new feature branches or release tags.
delete Track branch and tag deletion. Monitor cleanup of merged branches.
dependabot_alert Notify security team when Dependabot detects a vulnerability.
deploy_key Notify when deploy keys are added to repositories for security awareness.
deployment Notify team when a deployment is initiated. Track production deployments.
deployment_protection_rule Notify approvers when deployment protection rules require approval.
deployment_status Track deployment status changes. Notify team on deployment success or failure.
discussion_comment Notify discussion authors when someone comments on their discussion.
discussion Notify maintainers when new discussions are created. Keep the team informed about community feedback.
fork Track when your repository is forked. Notify maintainers about growing community interest.
github_app_authorization Track when users revoke GitHub App authorization.
gollum Track wiki page updates and notify documentation team.
installation Track when GitHub Apps are installed in your organization.
installation_repositories Track when repositories are added to GitHub App installations.
installation_target Track when installation target accounts are renamed.
issue_comment Notify issue authors when someone comments on their issue.
issues Notify the team on Slack when a new issue is opened. Include issue details and a link to triage quickly.
label Track label creation for repository organization.
marketplace_purchase Track GitHub Marketplace purchases for your app.
member Notify team when a new collaborator is added to a repository.
membership Notify team members when new people join their team.
merge_group Track merge queue activity and CI checks for queued PRs.
meta Notify when webhooks are deleted from repositories.
milestone Announce new milestones to the team for project planning.
org_block Track when users are blocked from the organization.
organization_member Welcome new organization members and notify admins.
package Announce new package versions to the team.
page_build Track GitHub Pages build status.
personal_access_token_request Notify admins when fine-grained personal access tokens require approval.
ping Verify webhook configuration is working correctly.
project_card Track when cards are added to project boards.
project_column Track when columns are added to project boards.
project Notify team when new project boards are created.
projects_v2 Notify when new GitHub Projects are created.
projects_v2_item Track when items are added to GitHub Projects.
public Notify when repositories are made public (important for security review).
pull_request Notify team when pull requests are merged or closed.
pull_request Notify reviewers when a new pull request is opened. Notify the team lead if the PR has more than 500 lines changed.
pull_request_review_comment Notify PR authors when reviewers leave line comments.
pull_request_review Notify PR authors when their pull request is reviewed.
pull_request_review_thread Notify PR authors when review threads are resolved.
pull_request_target Handle pull requests from forks that trigger workflows in the target repository.
push Notify the team when code is pushed to the main branch. Include commit details and a link to the comparison.
release Announce new releases to the team and stakeholders. Notify via Slack and email with release notes.
repository Announce new repositories to the organization.
repository_dispatch Track custom webhook events triggered via repository dispatch.
repository_import Notify when repository imports complete.
repository_vulnerability_alert Notify when vulnerability alerts are created for repository dependencies.
secret_scanning_alert Urgent notification when secrets are detected in the repository.
security_advisory Notify security team when new security advisories are published.
security_and_analysis Track when security features are enabled or disabled on repositories.
star Celebrate new repository stars. Send a notification when someone stars your project.
status Track commit status updates from external CI/CD systems.
team_add Notify when team repository access is modified.
team Notify organization admins when new teams are created.
user Track user profile changes (useful for enterprise GitHub apps).
watch Track when users start watching your repository.
workflow_dispatch Notify when workflows are manually triggered.
workflow_job Notify when a workflow job starts queueing. Track CI/CD pipeline progress.
workflow_run Notify when GitHub Actions workflows complete. Notify the team on deployment success or failure.
Explore More Workflows
Learn about workflow fundamentals, commands, and integrations with other platforms.
Stripe
Payment and subscription workflows
GitHub Workflow Resources
Learn more about GitHub webhooks and integrations for your workflow automation.
