webhooks.cc is a free webhook testing and inspection service. Use this page to create a guest webhook endpoint instantly — no signup, no credit card, no configuration. Send any HTTP POST, PUT, PATCH, or DELETE request and inspect the full payload, headers, query parameters, and origin IP in a live dashboard. Your endpoint is live for 12 hours and accepts up to 25 requests, perfect for debugging a webhook integration, testing a third-party service, or verifying a payload shape before wiring it into production.
Developers use webhooks.cc to debug production webhook integrations with Stripe, GitHub, Shopify, Twilio, Slack, Paddle, Linear, Polar, PayPal, and any custom HTTP webhook sender. Capture the exact payload a provider sends, inspect signature headers, replay requests to a staging environment, and assert payload shape in automated tests. The service is SOC-friendly, GDPR-friendly, and hosted in the EU with no customer data stored on US servers.
Beyond the free endpoint — a full webhook toolkit
The guest endpoint on this page is one piece of a larger toolkit. Sign in free for a persistent endpoint with 50 requests per day, or upgrade to Pro for 25,000 requests per month, unlimited endpoints, team collaboration, and extended retention. Every tier includes the dashboard, the whk CLI, the TypeScript SDK, and the MCP server for AI coding agents.
Mock webhook responses instantly
Return custom status codes, headers, and JSON bodies per endpoint. Use conditional rules to match on method, path, or body content and return different responses — no deploy, no restart. Ideal for mocking a third-party API during development, simulating rate-limited or failed responses, or staging a sender's retry behavior. Changes take effect instantly and apply to every incoming request.
Test signed webhooks end-to-end
Verify Stripe, GitHub, Shopify, Twilio, Slack, Paddle, Linear, and more. Send signed provider templates with correct signature headers to exercise your verification code for real. The dashboard and SDK both compute valid HMAC-SHA256, HMAC-SHA1, and standard-webhooks signatures automatically so you can focus on your integration rather than cryptographic plumbing.
Forward webhooks to localhost with the CLI
Run whk tunnel 3000 to pipe incoming webhooks to any local port. No ngrok, no port forwarding, no public IP — just a stable public URL that streams to your dev server. Reconnects automatically on network changes. Works on macOS, Linux, and Windows, with cross-compiled binaries available from GitHub Releases.
Assert webhooks in CI tests with the TypeScript SDK
The SDK waits for matching requests with composable matchers. Works in Vitest, Jest, and Playwright — assert method, headers, body JSON paths, and signature validity. Helpers like matchMethod, matchHeader, matchBodyPath, matchAll, and matchAny make multi-step webhook flows trivial to test deterministically. Actionable error messages with recovery hints shrink the debug-loop in CI failures.
AI-native webhook debugging with the MCP server
The MCP server lets Claude Code, Cursor, VS Code, and Codex create endpoints, send test payloads, and inspect captured requests through natural language — no manual copy-paste. Install via claude mcp add or codex mcp add, then ask your agent to "send a Stripe checkout event and verify my handler returns 200". The agent runs the flow end-to-end and reports back.
Inspect, search, replay, and export requests
Full-text search across captured requests by header name, body content, path, or request id. Replay any request to any URL to debug a production incident or reproduce a flaky failure. Export as JSON or CSV for offline analysis. Real-time updates via server-sent events mean no polling and no refresh — captured requests appear in the dashboard the instant they arrive.
Provider-specific webhook testing guides
- Test Stripe webhooks locally — capture
checkout.session.completedandinvoice.payment_succeededevents and verify Stripe-Signature headers in dev. - Test GitHub webhooks locally — pull request, push, release, and workflow_run events with HMAC-SHA256 verification using
X-Hub-Signature-256. - Test Shopify webhooks locally — orders, products, and inventory webhooks with topic-based routing and Shopify-Hmac-SHA256 signatures.
- Webhook testing in CI/CD pipelines — run signature and payload assertions in GitHub Actions, GitLab CI, CircleCI, and Jenkins.
- Test webhooks locally — end-to-end guide to capturing, forwarding, and asserting webhooks during development.
- ngrok vs webhooks.cc — head-to-head comparison for developers choosing a tunnel tool.
- webhook.site vs webhooks.cc — feature comparison for developers evaluating inspection services.
- Webhook testing tools comparison — survey of the webhook testing tool landscape.
Frequently asked questions
Is there a free webhook endpoint with no signup?
Yes. The /go page creates a temporary guest endpoint so you can send a webhook and inspect the payload immediately without creating an account first.
How long does a guest endpoint last?
Guest endpoints are ephemeral — they expire after 12 hours and accept up to 25 requests. Sign up free to get persistent endpoints with higher limits.
Can I test webhooks locally and in CI?
Yes. Use the CLI to forward events to localhost during development and the SDK in automated test suites for CI pipelines.
Can I test signed webhooks like Stripe or GitHub?
Yes. The dashboard includes signed provider templates for Stripe, GitHub, Shopify, Twilio, Slack, Paddle, and Linear. Send them to your verification code to exercise signature checks end-to-end without touching production keys.
Do I need ngrok to test webhooks locally?
No. The whk CLI ships a tunnel command that forwards incoming webhooks directly to any local port. You get a stable public URL without ngrok, port forwarding, or exposing your machine's IP.
Can I return a custom response to a webhook sender?
Yes. Persistent endpoints let you configure mock responses with custom status codes, headers, and JSON bodies. Conditional rules return different responses based on request method, path, or body content.
Loading test endpoint...