Webhooks for developers and AI agents
Stripe webhooks on localhost. Pull events with the SDK or CLI.
Stop using ngrok. Add one SDK call and your local app receives real webhook events over WebSocket. Or pull events from the API with npx @simplehook/cli pull — perfect for AI agents.
import express from "express";
import { listenToWebhooks } from "@simplehook/express";
const app = express();
listenToWebhooks(app, process.env.SIMPLEHOOK_KEY);
app.post("/stripe/events", (req, res) => {
console.log("Webhook:", req.body);
res.json({ received: true });
});
Works with Stripe, GitHub, Twilio, Shopify, and every webhook provider.
How it works
Three steps. Zero config.
1. Install the SDK
npm install @simplehook/express — one package, zero config.
2. Add one line of code
listenToWebhooks(app, apiKey) — opens an outbound WebSocket to simplehook.
3. Receive webhooks
Webhooks arrive as normal HTTP requests. Your response flows back to the caller.
Features
Everything you need
Instant delivery
Webhooks arrive at your local server in milliseconds via persistent WebSocket.
Automatic retries
Failed deliveries are retried with exponential backoff. Nothing gets lost.
Encrypted in transit
All webhook payloads are encrypted. No request bodies stored on our servers.
Stable URLs
Your webhook URL never changes. Set it once in Stripe, GitHub, or any provider.
Real responses
Your Express/Flask response flows back to the webhook caller — full passthrough.
AI agent API
Pull events via HTTP — instant, long-poll, or SSE stream. Built for agents.
Pricing
Simple, transparent pricing
Free
For trying things out
$0/mo
- 1 project
- 500 events/month
- Community support
Pro
For teams and production
$9/mo
- Unlimited projects
- 50k events/month
- Priority support
From the blog
Recent writing
- How to Give Your AI Agent Access to Webhooks — pull, filter, stream events with the CLI
- The Webhook Developer Experience Is Broken — how ngrok and Hookdeck compare
- Let's kill webhooks — why webhook URLs should be permanent
Start receiving webhooks in 30 seconds
One install. One line of code. Every webhook provider works. Read the docs or check the FAQ.
Get started