Request Inspector
Inspecting Request Details
The request inspector is the core feature of the ReqPour dashboard. When you click on any captured request, the inspector opens with the complete request details organized into clear sections.
At the top, you see the request summary: HTTP method, full URL path, timestamp (with relative time like "2 minutes ago"), and the content type. Below that, the inspector is divided into tabs for different aspects of the request.
The inspector is designed for webhook debugging specifically. It highlights common webhook headers (signatures, event types, delivery IDs) and formats webhook-specific content types (JSON with syntax highlighting, form data as key-value pairs) for easy reading.
Headers View
The Headers tab shows all HTTP headers the request included. Headers are displayed in a clean key-value format with the header name on the left and the value on the right.
Provider-specific headers are highlighted for easy identification. For example, Stripe-Signature, X-GitHub-Event, X-Shopify-Topic, and X-Hub-Signature-256 are displayed with accent coloring so they stand out from standard headers like Content-Type and User-Agent.
Each header value has a copy button. This is particularly useful for signature headers — copy the signature value and paste it into your verification code for debugging. You can also copy all headers as a formatted block for inclusion in bug reports or documentation.
Body View
The Body tab renders the request body with format-appropriate display. JSON bodies are the most common and get the richest treatment: syntax highlighting for keys, strings, numbers, and booleans; collapsible objects and arrays; line numbers; and a raw/formatted toggle.
For large JSON payloads (common with Shopify orders or Stripe invoices), the collapsible sections are invaluable. Collapse the parts you do not care about and expand only the sections you need. The path indicator shows where you are in the document structure (like data > object > charges > data[0] > amount).
Form-encoded data (application/x-www-form-urlencoded) is displayed as a parsed key-value table. URL-encoded values are automatically decoded for readability. The raw view shows the original encoded string.
You can search within the body using the body search feature. Type a key name or value to highlight matching text. This helps you quickly find specific fields in large payloads.
Response View
When a relay is active, the inspector also shows the response from your local server. This includes the HTTP status code (color-coded: green for 2xx, yellow for 4xx, red for 5xx), response headers, and response body.
The response view helps you debug issues without switching between the dashboard and your terminal. If your handler returns a 500 error, you can see both the incoming request and the error response in the same view.
For providers that check response content (like Slack's URL verification or Twilio's TwiML), the response view confirms that your handler returns the expected format. This is much easier than trying to infer the response from provider logs.
Comparing Requests
When debugging webhook handlers, you often need to compare two requests. For example, comparing a successful payment webhook with a failed one, or comparing the same event type from two different testing sessions.
Open two requests in the inspector by using the compare mode. The dashboard shows them side by side with differences highlighted. This makes it easy to spot what is different — a missing header, a changed field value, or a different event structure.
The compare feature is especially useful for debugging provider API changes. When a provider updates their webhook format, comparing old and new payloads shows you exactly what changed so you can update your handler accordingly.
Related
Get started with ReqPour
Catch, inspect, and relay webhooks to localhost. Free to start, $3/mo for Pro.