How to Search and Filter Requests and Events

In the Hookdeck Event Gateway, you deal with both incoming Requests and outgoing Events and their delivery Attempts . Being able to efficiently search and filter through them is crucial for observability, logging, monitoring, troubleshooting, and managing your webhooks. This guide will walk you through how to use filters on both the Requests and Events pages to quickly find what you're looking for.

Observability and logging

How to use filters

Hookdeck offers many filters that can be combined for a more granular search experience. It's recommended to use multiple filters to narrow your search as much as possible.

Applying filters

  1. From the Requests or Events page, select a filter from the filter bar. Select a filter
  2. Set the value for the filter. This could be selecting from a dropdown (like for a status) or entering text (like for a search term).
  3. As soon as you set the value, the list will update automatically.

Clearing filters

To remove filters, you can either click the on an individual filter tag or select Clear All Filters to remove all active filters at once.

Clear filters

Filtering Requests

On the Requests page, you can filter all incoming requests that Hookdeck receives from a Source . This is a key observability feature for debugging issues at the source level, before events are even created.

Here are the filters available for Requests:

Status

Filter by the Accepted or Rejected status of the request. This helps you quickly isolate requests that were not processed successfully and investigate the cause.

Sources

Filter by the source that received the request. This is particularly useful when you have multiple sources and want to focus on the traffic from just one.

Date

Filter for requests received within a specific date and time range. You can use this to investigate incidents that occurred during a known timeframe.

Rejection Cause

When a request is rejected, you can filter by the specific reason for rejection. Common causes include SOURCE_DISABLED, VERIFICATION_FAILED, or UNSUPPORTED_HTTP_METHOD. This is key to understanding why some requests aren't being converted into events.

Request Data

Search within the request's headers, body, query parameters, or path. This performs a partial match, so you don't need the full value. For example, you can search for a specific user_id in the body to find all requests related to that user, which is invaluable for debugging customer-specific issues.

Ignored Events Count

Filter requests by the number of events that were ignored for them. An event is ignored if it doesn't match any of your Connection 's filter rules.

Events Count

Filter requests by the number of events that were successfully created from them. This can help you find requests that fanned out to multiple connections.

Filtering Events & Attempts

On the Events page, you can filter outgoing Events and their delivery Attempts . This is where you'll spend most of your time on webhook observability, monitoring, and troubleshooting deliveries to your Destinations .

Here are the filters available for Events:

Status

Filter by the event status: Successful, Failed, Pending, or Paused. This is the most common filter for finding and managing problematic events.

Connection

Filter by the Connection , which is the link between a Source and a destination (e.g., Shopify → My API).

Sources

Filter by the source that generated the event.

Destinations

Filter by the destination the event is being sent to. This is great for isolating and troubleshooting issues with a specific downstream endpoint.

Date

Filter for events created within a specific date and time range.

HTTP Response

Filter by the HTTP status code returned by your destination (e.g., 200, 404, 500) or by a Hookdeck error code (e.g., TIMEOUT). This helps you categorize failures and understand if the issue is with your server or the connection to it.

Request Data

Similar to the filter on Requests, you can search within the original request's headers, body, query, or path. This is powerful for tracing a piece of data, like an order_id, from the initial request all the way to the final delivery attempt. You can specify which part of the request to search in (Header, Body, Query, Path).

Attempts Count

Filter events by the number of delivery attempts made. For example, you can find events that have failed more than 5 times to identify persistent issues.