Navigation

Webhook Requests

Every HTTP request that hits one of your endpoint URLs is stored as a webhook request. CatchHook captures the full method, path, headers, body, query parameters, source IP, and timing information.

Viewing requests

Requests appear in two places:

  • Endpoint → Requests tab — shows only requests for that endpoint.
  • Requests page in the sidebar — shows all requests across your account.

New requests stream in automatically via real-time updates — no need to refresh.

Request details

Click any request to expand it. You'll see:

Field Description
Method HTTP method (POST, GET, PUT, etc.)
Path The full request path
Status HTTP status code returned to the sender
Headers All request headers (sensitive values like Authorization are masked)
Body The request body with syntax highlighting for JSON, XML, and HTML
Query params Parsed query string parameters
Content type The Content-Type header value
Source IP The sender's IP address
Received at Timestamp with timezone

Searching and filtering

Use the search bar at the top of the requests list to filter by keywords in the body, headers, or path. Results are paginated at 25 per page.

Replaying a request

You can resend any stored request to a URL of your choice:

  1. Open a request and click Replay.
  2. Enter the destination URL.
  3. CatchHook sends the original method, headers, and body to that URL and shows you the response status and timing.

This is useful for re-delivering a webhook that your server missed or for testing against a staging environment.

Large and binary payloads

CatchHook handles payloads of all sizes and formats:

  • Large payloads (over 256 KB) are shown in a truncated preview with an option to expand or download the full body.
  • Binary payloads (protobuf, msgpack, gRPC, etc.) are stored safely and displayed as a hex dump preview.
  • Payloads over 10 MB are rejected with a 413 Payload Too Large response.

A "Large payload" badge appears in the request list for oversized requests.

Downloading the body

Click Download body on any request to save the raw payload as a file. Helpful for large payloads or binary-encoded content.

Deleting requests

  • Single request — click the delete icon on any request.
  • All requests for an endpoint — use the Delete all action on the endpoint's requests tab.

Deleted requests cannot be recovered.

Data retention

Plan Retention
Pro 60 days
Business 180 days

Requests older than your plan's retention window are automatically purged.