GitHub · event: sponsorship (created) ·
content type: application/json
This is a representative sample — fake IDs, real structure. To see a payload with your data, point the provider at a capture URL (button below).
One click creates a free capture bin with this exact payload already in it — pretty-printed, headers inspectable, replayable to your own endpoint:
Then paste the bin's URL into GitHub's webhook settings to capture a real delivery. No signup.
content-type: application/json user-agent: GitHub-Hookshot/2f91c4a x-github-event: sponsorship x-github-delivery: c7e84c20-85c4-11f1-8a3b-5d2f9e1c7b46 x-github-hook-id: 512407911 x-hub-signature: sha1=ac3edd0983da36660b53cc972475d5efc5277b9b x-hub-signature-256: sha256=c71fa59f8ad78bd7414124745ecc098ee469c5eb3691d4be565c9c466a97d9e5
{
"action": "created",
"sponsorship": {
"node_id": "MDExOlNwb25zb3JzaGlwOTIxNDQ3",
"created_at": "2026-08-30T10:37:54+00:00",
"sponsorable": {
"login": "octocat",
"id": 583231,
"node_id": "MDQ6VXNlcjU4MzIzMQ==",
"avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4",
"html_url": "https://github.com/octocat",
"type": "User",
"site_admin": false
},
"sponsor": {
"login": "monalisa",
"id": 92732,
"node_id": "MDQ6VXNlcjkyNzMy",
"avatar_url": "https://avatars.githubusercontent.com/u/92732?v=4",
"html_url": "https://github.com/monalisa",
"type": "User",
"site_admin": false
},
"privacy_level": "public",
"tier": {
"node_id": "MDEyOlNwb25zb3JzVGllcjMzNzc0",
"created_at": "2026-01-12T19:17:05Z",
"description": "Early access to new tools + a monthly office-hours call.",
"monthly_price_in_cents": 500,
"monthly_price_in_dollars": 5,
"name": "$5 a month",
"is_one_time": false,
"is_custom_amount": false
}
},
"sender": {
"login": "monalisa",
"id": 92732,
"node_id": "MDQ6VXNlcjkyNzMy",
"avatar_url": "https://avatars.githubusercontent.com/u/92732?v=4",
"html_url": "https://github.com/monalisa",
"type": "User",
"site_admin": false
}
}
X-Hub-Signature-256 value and the secret
hookden-github-sample-webhook-secret into the
signature debugger (GitHub scheme), or set
the GitHub scheme on a capture bin. Same wire format as every other GitHub
webhook: sha256= + hex HMAC-SHA256 over the raw body.created,
cancelled, edited, pending_cancellation,
pending_tier_change, tier_changed. The
pending_* pair adds a top-level effective_date — the
change lands at the sponsor's next billing cycle, and the definitive
cancelled / tier_changed event fires then, not
when the sponsor clicks.cancelled only ever fires for recurring (monthly)
sponsorships, and only when the last paid cycle actually ends. A
one-time sponsorship never gets a terminal event: you receive
created with tier.is_one_time: true and then nothing,
ever. If you grant perks off created alone, one-time sponsors keep
them forever — expire them yourself using sponsorship.created_at.privacy_level can be
private — the sponsor paid but doesn't want to be displayed.
Auto-publishing a "thanks @sponsor!" from the webhook leaks private sponsors;
edited fires with changes.privacy_level.from when they
flip it. tier_changed / pending_tier_change carry
changes.tier.from — the old tier, so you can tell upgrades from
downgrades without a lookup. Custom amounts arrive with
is_custom_amount: true and a synthesized tier.Reproduce this delivery against any endpoint (your handler, a bin, staging):
$ curl -X POST https://your-endpoint.example/hook \
-H 'content-type: application/json' \
-H 'user-agent: GitHub-Hookshot/2f91c4a' \
-H 'x-github-event: sponsorship' \
-H 'x-github-delivery: c7e84c20-85c4-11f1-8a3b-5d2f9e1c7b46' \
-H 'x-github-hook-id: 512407911' \
-H 'x-hub-signature: sha1=ac3edd0983da36660b53cc972475d5efc5277b9b' \
-H 'x-hub-signature-256: sha256=c71fa59f8ad78bd7414124745ecc098ee469c5eb3691d4be565c9c466a97d9e5' \
-d '{
"action": "created",
"sponsorship": {
"node_id": "MDExOlNwb25zb3JzaGlwOTIxNDQ3",
"created_at": "2026-08-30T10:37:54+00:00",
"sponsorable": {
"login": "octocat",
"id": 583231,
"node_id": "MDQ6VXNlcjU4MzIzMQ==",
"avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4",
"html_url": "https://github.com/octocat",
"type": "User",
"site_admin": false
},
"sponsor": {
"login": "monalisa",
"id": 92732,
"node_id": "MDQ6VXNlcjkyNzMy",
"avatar_url": "https://avatars.githubusercontent.com/u/92732?v=4",
"html_url": "https://github.com/monalisa",
"type": "User",
"site_admin": false
},
"privacy_level": "public",
"tier": {
"node_id": "MDEyOlNwb25zb3JzVGllcjMzNzc0",
"created_at": "2026-01-12T19:17:05Z",
"description": "Early access to new tools + a monthly office-hours call.",
"monthly_price_in_cents": 500,
"monthly_price_in_dollars": 5,
"name": "$5 a month",
"is_one_time": false,
"is_custom_amount": false
}
},
"sender": {
"login": "monalisa",
"id": 92732,
"node_id": "MDQ6VXNlcjkyNzMy",
"avatar_url": "https://avatars.githubusercontent.com/u/92732?v=4",
"html_url": "https://github.com/monalisa",
"type": "User",
"site_admin": false
}
}'
← All payload examples · Related guide · Signature debugger · Docs