Configuring Destinations

Destinations are the endpoints where HookFlow forwards webhooks after processing. This guide explains how to configure and manage destinations for your webhook sources.

Understanding Destinations

Each webhook source in HookFlow can have one or more destinations. When a webhook is received, it can be forwarded to multiple destinations, each with its own configuration for:

  • Where the webhook is sent (target URL)
  • How the payload is transformed before delivery
  • Which webhooks are forwarded (filtering)
  • Whether the destination is active or inactive

Adding a Destination

You can add destinations when creating a new webhook source or by editing an existing one:

When Creating a New Source

  1. Follow the steps to create a new webhook source
  2. In the Destinations section, you'll see a default destination already added
  3. Configure this destination or add additional ones by clicking "Add Destination"

For an Existing Source

  1. Navigate to the Sources page
  2. Click on the source you want to modify
  3. Scroll to the Destinations section
  4. Click "Add Destination" to add a new endpoint

Configuring a Destination

Each destination has several configuration options:

Basic Settings

  • Name: A descriptive name for the destination (e.g., "Production API", "Backup Endpoint")
  • Target URL: The URL where webhooks will be forwarded (e.g., "https://api.example.com/webhooks")
  • Description: (Optional) Additional details about this destination
  • Active: Toggle to enable or disable this destination without removing it

Target URL Requirements

The target URL must be a valid HTTP or HTTPS endpoint that can receive POST requests. The endpoint should respond with a 2xx status code to indicate successful delivery.

Advanced Settings

Depending on your plan, you may have access to additional configuration options:

Transform Rules

Modify webhook payloads before they're delivered to this destination. See the Transformations guide for details.

Filter Rules

Set conditions for which webhooks are forwarded to this destination. See the Filtering guide for details.

Managing Multiple Destinations

HookFlow allows you to configure multiple destinations for a single webhook source, enabling several powerful use cases:

Development and Production Environments

Forward webhooks to both development and production environments, using filter rules to control which events go where.

Example Configuration:

  • Destination 1: Production API (https://api.example.com/webhooks)
  • Destination 2: Development API (https://dev-api.example.com/webhooks) with filter rule to only forward events with test=true in the payload

Event-Based Routing

Route different types of webhooks to different services based on their content.

Example Configuration:

  • Destination 1: Payment Service with filter rule to only forward events where type=payment
  • Destination 2: User Service with filter rule to only forward events where type=user
  • Destination 3: Inventory Service with filter rule to only forward events where type=inventory

Backup and Redundancy

Send webhooks to a primary endpoint and a backup system for redundancy.

Example Configuration:

  • Destination 1: Primary API
  • Destination 2: Backup System or Data Warehouse

Editing and Removing Destinations

Editing a Destination

To modify an existing destination:

  1. Navigate to the source that contains the destination
  2. In the Destinations section, click on the destination you want to edit
  3. Make your changes to the configuration
  4. Click "Save Changes"

Disabling a Destination

To temporarily disable a destination without removing it:

  1. Navigate to the source that contains the destination
  2. In the Destinations section, find the destination you want to disable
  3. Toggle the "Active" switch to off

When a destination is disabled, webhooks will not be forwarded to it, but all configuration is preserved.

Removing a Destination

To permanently remove a destination:

  1. Navigate to the source that contains the destination
  2. In the Destinations section, click on the destination you want to remove
  3. Click the "Remove Destination" button
  4. Confirm the removal

Note: A webhook source must have at least one destination. If you try to remove the last destination, you'll need to add a new one first.

Monitoring Destination Status

You can monitor the delivery status of webhooks to each destination:

  1. From your dashboard, click on a webhook to view its details
  2. In the webhook details, you'll see the delivery status for each destination
  3. For failed deliveries, you can view error details and retry the webhook

Webhook Statuses

A webhook can have different statuses for different destinations. For example, it might be "Delivered" to one destination but "Failed" for another. The overall webhook status reflects the combined status across all destinations.

Next Steps

Now that you understand how to configure destinations, explore these related topics: