{"repo":"edaywalid/whook","free":true,"listed":false,"github":"https://github.com/edaywalid/whook","clone":"git clone https://github.com/edaywalid/whook.git","description":"Self-hostable webhook gateway: durably capture, inspect, retry, and replay inbound webhooks. Single Go binary.","language":"Go","stars":53,"topics":["golang","self-hosted","webhook-gateway","webhooks"],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"whook A self-hostable gateway that captures, retries, and replays inbound webhooks. &nbsp; &nbsp; &nbsp; &nbsp; Getting started · Documentation · Live demo · Contributing whook sits in front of your application. Providers point at it instead of at you. It captures every inbound webhook the instant it arrives, returns a fast 2xx so the provider is happy, then forwards the event to one or more destinations with automatic retries. Every request is stored durably, so you can list, inspect, and replay anything that came in. What you get - Durable capture before the provider is acknowledged, so no event is ever lost. - Exponential-backoff retries with a budget, then dead-letter for what never lands. - Fan-out to many destinations, each with its own filter, retries, and status. - A durable record of every request, queryable and replayable from an API or UI. - Pluggable signature verification (Stripe, GitHub, Shopify, Slack, Linear), idempotent capture, metrics. - One static Go binary. SQLite built in, Postgres when you outgrow it. Table of contents - The problem - How it works - Getting started - Documentation - Tech stack - Contributing - License The problem Services like Stripe, GitHub, and Shopify notify you by sending an HTTP POST to a URL you give them. A payment succeeds, a pull request opens, an order is placed, and they POST the details to your server. That POST is the webhook, and it arrives exactly once, at a moment you do not control. Point a provider straight at your app","default_branch":null,"files":null,"tree":[],"storefront":"/r/edaywalid","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/edaywalid/whook/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}