Bitbucket · event: repo:push ·
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 Bitbucket's webhook settings to capture a real delivery. No signup.
content-type: application/json user-agent: Bitbucket-Webhooks/2.0 x-event-key: repo:push x-hook-uuid: a71dcc2c-0e5b-4c8f-9e6d-3b2a1c0d9e8f x-request-uuid: 9d2f4a6b-8c0e-4f2a-b6d8-e0a2c4f6a8b0 x-attempt-number: 1 x-hub-signature: sha256=8b3aEXAMPLEhexhmacEXAMPLE5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c
{
"push": {
"changes": [
{
"new": {
"type": "branch",
"name": "main",
"target": {
"type": "commit",
"hash": "709d658dc5b6d6afcd46049c2f332ee3f515a67d",
"date": "2026-08-29T00:00:00+00:00",
"message": "fix: handle empty webhook payloads",
"author": {
"raw": "Jane Doe <jane.doe@example.com>"
}
}
},
"old": {
"type": "branch",
"name": "main",
"target": {
"hash": "6113728f27ae82c7b1a177c8d03f9e96e0adf246"
}
},
"created": false,
"closed": false,
"forced": false
}
]
},
"repository": {
"type": "repository",
"full_name": "acme-team/hello-world",
"name": "hello-world",
"uuid": "{7708d810-964c-403f-aa6d-4e949280d614}",
"workspace": {
"slug": "acme-team",
"name": "Acme Team"
}
},
"actor": {
"type": "user",
"display_name": "Jane Doe",
"nickname": "jdoe",
"uuid": "{fa631d25-7a01-4a3f-9e0f-e2f571e15a86}"
}
}
X-Hub-Signature (present only if a secret is set) is
sha256= over the raw body — WebSub style, not GitHub's
legacy sha1 header of the same name. A sha1-expecting verifier fails on it.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: Bitbucket-Webhooks/2.0' \
-H 'x-event-key: repo:push' \
-H 'x-hook-uuid: a71dcc2c-0e5b-4c8f-9e6d-3b2a1c0d9e8f' \
-H 'x-request-uuid: 9d2f4a6b-8c0e-4f2a-b6d8-e0a2c4f6a8b0' \
-H 'x-attempt-number: 1' \
-H 'x-hub-signature: sha256=8b3aEXAMPLEhexhmacEXAMPLE5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c' \
-d '{"push":{"changes":[{"new":{"type":"branch","name":"main","target":{"type":"commit","hash":"709d658dc5b6d6afcd46049c2f332ee3f515a67d","date":"2026-08-29T00:00:00+00:00","message":"fix: handle empty webhook payloads","author":{"raw":"Jane Doe <jane.doe@example.com>"}}},"old":{"type":"branch","name":"main","target":{"hash":"6113728f27ae82c7b1a177c8d03f9e96e0adf246"}},"created":false,"closed":false,"forced":false}]},"repository":{"type":"repository","full_name":"acme-team/hello-world","name":"hello-world","uuid":"{7708d810-964c-403f-aa6d-4e949280d614}","workspace":{"slug":"acme-team","name":"Acme Team"}},"actor":{"type":"user","display_name":"Jane Doe","nickname":"jdoe","uuid":"{fa631d25-7a01-4a3f-9e0f-e2f571e15a86}"}}'
← All payload examples · Related guide · Signature debugger · Docs