Linear webhooks
Test and debug Linear webhooksfor issues, projects and cycles
Capture issue updates, project milestones and cycle events as Linear sends them, and keep GitHub and Slack syncs working.
How Linear webhooks work
| Where to configure it | Linear API settings, or your OAuth application's settings. |
|---|---|
| Signature header | Linear-Signature: hex HMAC-SHA256 of the request body, keyed with the webhook's signing secret. Linear-Delivery (UUID) and Linear-Event name the delivery and entity type. |
| Timeout | Respond with HTTP 200 within 5 seconds; slower or non-200 responses count as failures. |
| Retries | Up to 3 retries: after 1 minute, 1 hour and 6 hours. A webhook that stays unresponsive may be disabled. |
| Replay window | Linear recommends rejecting payloads whose webhookTimestamp (milliseconds) is more than a minute from your clock. |
Sources (checked November 2026)
See every Linear event your app receives
Linear webhooks connect your issue tracker to GitHub, Slack and deployment pipelines. When events fail, teams lose track of what shipped.
Hooklistener keeps every Linear request with its headers and body. Read the signature header your code checks, inspect issue changes, and use replay (Pro) while you build.
Linear webhook pain points
Webhook signature failures
Linear's HMAC signature check fails silently, and the handler just returns an error.
Complex change tracking
Issue updates contain nested changes, and it is hard to tell what actually changed in each event.
Cross-tool sync issues
GitHub PRs and Slack notifications get out of sync when one Linear event is missed.
How Hooklistener helps with Linear webhooks
Raw body for your Linear HMAC check
See the untouched body and signature header Linear sent, so you can tell whether your framework changed the bytes before your own HMAC code ran.
Diff two Linear issue updates
Compare two captured Linear issue events to see which field, status or relation changed, instead of reading nested JSON by eye.
Replay (Pro) to test a GitHub sync
Resend a captured Linear issue event to localhost or staging to test the GitHub or Slack sync that fell out of step.
Try it: point Linear at a free webhook URL or run a test with the webhook tester.
Linear automation scenarios
GitHub synchronization
Keep PRs and issues in sync: close issues on merge, update PR descriptions and follow deployment status.
Cycle automation
Follow cycle progress and flag scope creep and blocked issues from the events Linear sends.
Customer feedback loops
Connect support tickets to product issues and notify customers when their requested features ship.
Replay a failed webhook without re-triggering the provider
Once a delivery is captured, you can resend its exact headers and body to localhost, staging or production from the dashboard or through your coding agent over MCP, so the provider never has to fire a new event. Replay is on Pro and above. Read the replay guide.
Comparing webhook debugging tools?
See how Hooklistener stacks up against webhook.site, RequestBin, Beeceptor, Hookdeck and ngrok in the best tools to capture and inspect webhook payloads, or read the head-to-head pages for Hooklistener vs ngrok and Hooklistener vs Beeceptor.
Frequently asked questions
Does Hooklistener validate Linear signatures?
No. Built-in signature verification covers Stripe, GitHub and Slack. Hooklistener keeps the raw body and Linear's signature header so you can check your own HMAC code against the exact request.
Can I filter specific issue events?
Linear sends the events you configure. In Hooklistener you can search the history, and saved filters (Pro) keep the views you use most.
How do I read Linear's change format?
Open the captured request to see the prettified body, or diff two events to highlight what changed between them.
Can product managers look at this?
Yes. Send a shareable debugger link for a captured event so a PM can see what Linear delivered.
Keep Linear and your tools in sync
Capture and inspect every Linear event, with replay (Pro), so GitHub and Slack syncs stop drifting.