Skip to main content
Debugging webhooks is painful. Providers fire them once, your local machine is offline, and you’re left guessing at the payload. GetRequest gives you a permanent capture URL you can hand to any provider — every event is logged in full, including headers, body, and your backend’s response. No tunnels, no polling, no missed events.

Create a webhook endpoint

1

Open your project

Navigate to your project in the GetRequest dashboard and click New Endpoint.
2

Set the method

Set Method to POST. Most webhook providers use POST, though GetRequest accepts any HTTP method.
3

Choose your action

  • Set Action to Forward and enter your backend handler URL to capture and proxy events to your server.
  • Set Action to JSON to capture events in Logs without forwarding anything — useful during an outage or before your handler is built.
4

Pick a descriptive slug

Use a slug that identifies the provider, for example /webhooks/stripe or /webhooks/github. Your capture URL will be:
5

Click Create

Your endpoint is live immediately. Copy the URL and head to your provider’s dashboard to register it.

Register it with your provider

  1. Go to Stripe Dashboard → Developers → Webhooks.
  2. Click Add endpoint.
  3. Paste your GetRequest URL into the Endpoint URL field.
  4. Select the events you want to listen for, for example payment_intent.succeeded or customer.subscription.deleted.
  5. Click Add endpoint.
Stripe sends a test event immediately after registration. Open Logs in GetRequest to see it arrive within seconds.

Inspect a captured webhook

Open Logs in your project. Every captured webhook event appears as a row. Click any row to inspect the full details:
  • Headers — signature headers (Stripe-Signature, X-Hub-Signature-256), content type, and any custom metadata the provider includes
  • Body — the complete request payload, pretty-printed for readability
  • Response — the status code and body your backend returned (only present on Forward endpoints)
  • Duration — round-trip time from GetRequest to your backend and back
This gives you everything you need to debug a failed webhook handler without waiting for the provider to resend the event or manually triggering a new one.

Replay a webhook

Found a failed event? Replay it with one click without waiting for the provider to resend.
Replay is a Pro feature and requires a Forward endpoint. JSON endpoints have no upstream to replay to. Upgrade to Pro in your account settings to unlock Replay.
1

Open the log entry

Find the failed event in Logs and click the row to open the detail view.
2

Click Replay

Press the Replay button. GetRequest re-fires the exact same request — same headers, same body, same signature — to your backend.
3

Review the new response

The new response status code and body appear immediately in the log entry. Replay as many times as you need until your handler returns the right response.

Verify webhook signatures

GetRequest forwards all request headers verbatim to your backend, including signature headers. Your backend receives the original Stripe-Signature or X-Hub-Signature-256 header unchanged, exactly as the provider sent it. This means your existing signature verification logic works without any modification — there is nothing special to configure in GetRequest.
Do not share your GetRequest endpoint URL publicly if you are not verifying signatures. Anyone who has the URL can send arbitrary payloads to your backend. Always validate the provider’s signature header before processing an event.

Capture without forwarding (JSON mode)

If you want to capture webhook events without your backend receiving them — for example, during a backend outage or before your handler exists — switch the endpoint Action to JSON mode temporarily. Events are still fully captured in Logs with all headers and body intact. When your handler is ready:
  1. Edit the endpoint and switch Action back to Forward.
  2. Enter your backend handler URL.
  3. Use Replay (Pro) to re-fire any events that arrived while you were in JSON mode.
JSON mode is also useful during a deploy. Switch to JSON before you deploy, capture live traffic, then switch back to Forward and replay captured events against your freshly deployed handler.