GitHub Push and PR Events

GitHub webhook payload example for push and pull_request automation pipelines.

Receives GitHub repository events for CI triggers, deployment gates, and issue automation.

Endpoint URL

Use this endpoint when configuring the webhook sender:

https://hook-xxxxxx.fasthook.io/

Example request (curl)

curl -X POST "https://hook-xxxxxx.fasthook.io/" \
  -H "Content-Type: application/json" \
  -H "X-GitHub-Event: push" \
  -H "X-GitHub-Delivery: 72d3162e-cc78-11ec-9d64-0242ac120002" \
  -H "X-Hub-Signature-256: sha256=***redacted***" \
  -d '{"ref":"refs/heads/main","after":"5f6b7a8c9d0e1f23456789abcdef0123456789ab","repository":{"full_name":"acme/payments-api"},"head_commit":{"message":"Add checkout webhook retry guard"}}'

Example headers

{
  "content-type": "application/json",
  "x-github-event": "push",
  "x-github-delivery": "72d3162e-cc78-11ec-9d64-0242ac120002",
  "x-hub-signature-256": "sha256=***redacted***",
  "user-agent": "GitHub-Hookshot/*"
}

Example payload (JSON)

{
  "ref": "refs/heads/main",
  "before": "3b5f2c6d1a1f2b8e0d4a9c7f5e6d3c2b1a0f9e8d",
  "after": "5f6b7a8c9d0e1f23456789abcdef0123456789ab",
  "repository": {
    "id": 987654321,
    "name": "payments-api",
    "full_name": "acme/payments-api"
  },
  "pusher": {
    "name": "dev-user"
  },
  "sender": {
    "login": "dev-user"
  },
  "head_commit": {
    "id": "5f6b7a8c9d0e1f23456789abcdef0123456789ab",
    "message": "Add checkout webhook retry guard",
    "timestamp": "2026-05-28T09:42:00Z"
  }
}

How this webhook works

  1. Provider sends a POST request to the endpoint URL.
  2. FastHook stores the request headers, body, path, query, and source verification result.
  3. Matching connections create outbound events for configured destinations.
  4. Delivery attempts record destination response status, body, latency, and retry context.
  5. Failed events can be retried after the destination or route is fixed.

Common debugging checks

  • Configure source HMAC with x-hub-signature-256 and sha256=.
  • Filter noisy events by branch, repository, and event type before delivery.
  • Track delivery IDs to prevent duplicate workflow execution.

Integration context

This page targets github webhook flows and is optimized for debugging and testing scenarios developers face in production.

Last updated: May 28, 2026

Owner tools

Need full request, event, and attempt records? Use the private dashboard for retries, filters, transformations, and source or destination controls.

Open private request logs