Skip to content

Supported Events

WebHooker supports 28 GitHub webhook event types, each with a dedicated formatter that produces rich Discord embeds and Telegram HTML messages — plus custom events from signed custom JSON webhooks. Unsupported events fall through to a generic formatter.

Events Table

EventDescriptionEmbed Highlights
pushCode pushed to a branchCommit list, branch, author, diff stats
pull_requestPR opened/closed/merged/editedPR title, branch, diff stats, labels
issuesIssue opened/closed/editedIssue title, labels, assignees
issue_commentComment on issue or PRComment body, issue reference
workflow_runCI/CD workflow phase updatedWorkflow status, conclusion, duration; phases update a single message in place
workflow_jobCI job phase updatedJob name, status, conclusion, workflow
statusCommit status updatedCommit status, context, state, commit link
deploymentDeployment createdEnvironment, ref, task
deployment_statusDeployment status updatedEnvironment, status, commit ref
check_runCheck run phase updatedStatus, conclusion, details URL; phases update a single message in place
check_suiteCheck suite completedSuite conclusion, head branch, commit link
pingWebhook confirmationWebhook confirmation, event types subscribed
releaseRelease published/editedTag, body, assets, pre-release flag
createBranch or tag createdRef name, ref type
deleteBranch or tag deletedRef name, ref type
starRepository starred/unstarredStar count, action
forkRepository forkedSource → target fork
pull_request_reviewPR review submittedReview state (approved/changes/commented), body
pull_request_review_commentInline code review commentFile path, line number, comment body
commit_commentComment on a commitCommit SHA, comment body
memberCollaborator added/removedMember login, action
labelLabel created/edited/deletedLabel name, color, description
milestoneMilestone opened/closedProgress bar, issue counts, due date
discussionDiscussion created/answeredTitle, category, action
discussion_commentComment on discussionComment body, discussion reference
repositoryRepo renamed/transferredOld → new name, changes
code_scanning_alertCode scanning alertSeverity, rule ID, file path
dependabot_alertDependabot alertSeverity, package, vulnerable range, fix version
customSigned custom JSON webhookArbitrary title/description/color/url/author/fields (see Custom webhooks)

Color Coding

Each event type uses a distinct color in the Discord embed (from server/lib/formatters/colors.ts):

ColorEvents
Green (#2da44e)push, PR opened / ready for review, issue opened, workflow success, release published, check success, review approved, deployment success, member added, milestone closed, discussion answered
Red (#f85149)PR closed, issue closed, workflow failure, release deleted, delete, check failure, review changes requested, deployment failure, member removed, code scanning / dependabot critical & high
Purple (#8957e5)PR merged, label, discussion
Blue (#1f6feb)PR (other actions), issue reopened, fork, milestone opened
Yellow (#d29922)workflow (queued/running/other), release prerelease, star, check (other), deployment pending, code scanning / dependabot medium
Gray (#6e7681)issue comment, commit comment, discussion comment
Gray (#8b949e)review commented, repository, code scanning / dependabot low, default

Generic Fallback

Any event type without a dedicated formatter falls through to the generic formatter, which produces a basic embed with:

  • Event type as title (plus the action when available)
  • Actor login (author line)
  • Repository name in the footer

In-Place Message Updates

workflow_run and check_run events (queued → running → success/failure) are sent once and then edited in place for each subsequent phase instead of posting a new message. The original message's link preview, author, and field layout are preserved; only the status, conclusion emoji, duration, and title are refreshed. Supported on both Discord (editMessage) and Telegram (editMessageText / editMessageCaption).

Filter Compatibility

See the Filter Tutorial for a hands-on guide with worked examples.

FilterWorks With
eventAll events
repoAll events
actorAll events
actionEvents with action field in payload
branchpush, pull_request, pull_request_review, pull_request_review_comment, create, delete, workflow_run, workflow_job, check_suite, deployment, code_scanning_alert
keywordAll events (searches full payload body)

Released under the MIT License.