Webhooks
Receive events from GitHub and Bitbucket to link commits and pull requests to tickets.
Webhooks allow Spedy to receive events from your Git hosting provider. When a commit message or pull request references a ticket ID (like WEB-42), Spedy automatically links it to the corresponding ticket.
Supported Providers
| Provider | Supported Events |
|---|---|
| GitHub | push, pull_request, pull_request_review, pull_request_review_comment |
| Bitbucket | repo:push, pullrequest:created, pullrequest:updated, pullrequest:fulfilled, pullrequest:rejected |
GitHub Webhook
POST /api/v1/webhooks/github/{integrationId}This endpoint is public (no authentication required). Instead, GitHub signs every payload with a shared secret, and Spedy verifies the signature before processing.
Required Headers
| Header | Description |
|---|---|
| x-github-event | Event type (e.g. push, pull_request) |
| x-hub-signature-256 | HMAC-SHA256 signature of the payload |
Example Response
{
"processed": true,
"message": "Push event processed successfully"
}Bitbucket Webhook
POST /api/v1/webhooks/bitbucket/{integrationId}This endpoint is public (no authentication required). Bitbucket signs every payload with a shared secret for verification.
Required Headers
| Header | Description |
|---|---|
| x-event-key | Event type (e.g. repo:push, pullrequest:created) |
| x-hub-signature | HMAC signature of the payload |
Example Response
{
"processed": true,
"message": "Push event processed successfully"
}Setting Up Webhooks
Webhooks are configured through the Spedy UI under your board's integration settings. When you connect a GitHub or Bitbucket repository, Spedy provides you with the webhook URL and secret to configure on your Git hosting provider.
How Ticket Linking Works
When Spedy receives a push or pull request event, it scans commit messages and PR titles/descriptions for ticket references matching the pattern {PREFIX}-{NUMBER} (for example, WEB-42). Matched tickets automatically show linked commits and pull requests in their detail view.