Early access — use code HOOKSENSEWELCOME for 1 month free

GitHub Webhooks

How to Test GitHub Webhooks Locally (2026)

GitHub webhooks notify your application about repository events like pushes, pull requests, issues, and deployments. GitHub signs webhooks with HMAC-SHA256 using a secret you configure.

Signature Header

X-Hub-Signature-256

Algorithm

HMAC-SHA256

Setup Guide

  1. 1Create a free HookSense endpoint at hooksense.com
  2. 2Copy your unique webhook URL
  3. 3In GitHub → Repository Settings → Webhooks → Add webhook
  4. 4Paste your HookSense URL as the Payload URL
  5. 5Set Content type to application/json
  6. 6Enter a secret and save it — add the same secret to HookSense for HMAC verification
  7. 7Select events or choose 'Send me everything'
  8. 8Push a commit or open a PR to trigger a webhook

Common GitHub Webhook Events

push
pull_request
issues
issue_comment
create
delete
deployment
workflow_run

Forward to Localhost

Use HookSense CLI to forward GitHub webhooks directly to your local development server:

npx hooksense listen -p 3000 --path /api/integrations/github

No ngrok or tunnel setup required. Install with npm i -g hooksense or use npx.

Tips & Best Practices

  • GitHub sends a ping event when you first set up a webhook — use HookSense to verify it arrives
  • Use the X-GitHub-Event header to determine the event type
  • GitHub retries failed deliveries — use HookSense replay to test your retry handling
  • Filter events in HookSense to focus on specific event types during debugging

Related

Start Testing GitHub Webhooks

Create a free endpoint and receive your first GitHub webhook in seconds.

Get Started Free