GitHub setup

Hooks generates a signing secret for you. You paste that secret—and your Hooks URL—into the repository webhook settings on GitHub.

Step 1: Copy your Hooks URL

On your GitHub endpoint setup page in Hooks, copy the webhook URL. You will use it as the Payload URL on GitHub.

Screenshot placeholder: Hooks GitHub endpoint URL

Step 2: Generate your signing secret in Hooks

Click Generate secret in Hooks. Copy the value shown once—we store it encrypted and use it to verify the X-Hub-Signature-256 header.

Screenshot placeholder: Generate secret button in Hooks

Step 3: Open repository webhook settings

On GitHub, open your repository → SettingsWebhooks Add webhook. See GitHub's webhook guide if you need step-by-step screenshots.

Screenshot placeholder: GitHub repository webhook settings

Step 4: Paste URL and secret

Set Payload URL to your Hooks URL. Set Content type to application/json. Paste the secret from Hooks into the Secret field.

Screenshot placeholder: Payload URL and secret fields

Step 5: Choose events

Select individual events (e.g. Pull requests, Workflow runs) or send everything. Start narrow if you only want PR notifications.

Screenshot placeholder: GitHub webhook event selection

Step 6: Confirm delivery

Click Add webhook. GitHub sends a ping event; Hooks should show it in your event log if the secret matches.

Screenshot placeholder: Recent deliveries in GitHub webhook detail

Troubleshooting

Signature verification failed

The secret on GitHub must match the one Hooks generated. If you regenerate in Hooks, update GitHub too.

Events not arriving

  • Check GitHub's Recent Deliveries tab for HTTP status codes.
  • 401 usually means a secret mismatch; 404 means the URL is wrong.
  • Org-level policies can block webhooks—confirm the repo allows them.

Dashboard shows no events

Open or merge a test PR, or use Send test event in Hooks after the secret is configured.