Loading...
integrations

Webhook Relay

Webhook Relay forwards selected platform events to one or more external webhook URLs and shows each delivery attempt in a simple dashboard. Use it when you need reliable event forwarding, retry handling, and a clear audit trail without building custom middleware.

Trusted by frontline teams 15 years of frontline software

Built for: Healthcare Operations · Facilities Management · Retail Operations · Manufacturing · Logistics

Overview

Webhook Relay is a small integration template for forwarding selected platform events to external webhook URLs. It is designed for teams that need a dependable outbound event feed for things like shift.created, leave_request.approved, incident.logged, or asset.booked without writing and maintaining a custom integration service.

The template centers on a few practical pieces: an admin settings area for target URLs and allowed domains, event selection so you only forward the records you care about, and a delivery dashboard that shows recent attempts with success or failed status. Failed deliveries can be retried, which makes the relay useful for temporary outages and downstream timeouts. Because it uses HTTP, it fits systems that expect standard POST requests and can accept the platform payload directly.

Use this template when the goal is simple event forwarding with clear operator visibility. It is a good fit for lightweight automation, notifications, and system-to-system handoff. Do not use it when you need a full workflow engine, complex payload transformation, or a large integration hub with many branching rules. It is also not the right choice if you only need a one-way form submission or if your receiving system cannot safely accept the event data you plan to send.

Standards & compliance context

  • If the relay forwards regulated records, limit the payload to the minimum necessary data and confirm the receiving domain is authorized to process it.
  • For incident, visitor, or safety-related events, treat the delivery log as an audit trail and protect access to it with role-based permissions.
  • If your organization follows privacy or security controls such as GDPR-style minimization or SOC 2-style access review, review webhook destinations and retention settings before go-live.

General regulatory context for orientation only — verify current requirements with counsel or the relevant agency before relying on this template for compliance.

How to use this template

  1. Create the webhook target record with a URL field, an allowed_domains field, and a status field so only approved endpoints can receive events.
  2. Select the platform event types to forward, such as shift.created or leave_request.approved, and map each one to the target webhook record.
  3. Open the dashboard list screen to verify recent deliveries, then use the detail screen to inspect request payloads, response codes, and failure reasons.
  4. Run a test event through the form screen, confirm the external system receives the POST, and adjust the target or event selection if the payload is rejected.
  5. Review failed deliveries on a regular cadence, retry transient failures, and disable any target that repeatedly returns errors or violates the allowed domain rule.

Best practices

  • Limit each relay configuration to the smallest event set that the downstream system actually needs.
  • Restrict target URLs to approved domains so a misconfigured webhook cannot send data to an untrusted endpoint.
  • Keep the payload shape stable and document any fields the receiver depends on before you roll the relay out.
  • Use a clear delivery status lifecycle such as pending, success, failed, and retried so operators can triage quickly.
  • Retry only transient failures and disable targets that fail repeatedly with the same client-side error.
  • Include a timestamp and event identifier in every delivery so downstream teams can trace duplicates and replays.
  • Test one event type end to end before enabling additional events or additional targets.

What this template typically catches

Issues teams running this template most often surface in practice:

Teams lose track of which events are being forwarded because the logic lives in a script instead of a visible settings record.
Failed deliveries sit unnoticed because nobody owns a retry queue or delivery dashboard.
Webhook URLs drift over time and point to the wrong environment, causing silent integration breakage.
Multiple people edit the relay logic without role separation, which makes it hard to know who changed a target or event subscription.
Downstream systems receive duplicate actions because retries happen without a clear delivery identifier.
Operators have no payload history or response detail, so they cannot tell whether the failure was a bad URL, a timeout, or a schema mismatch.
Unrestricted destinations create a security gap because events can be sent to domains that were never approved.

Common use cases

Operations manager forwarding shift events
A scheduling lead wants shift.created and shift.updated events sent to an external workforce tool. The relay keeps the event list narrow, shows delivery status, and makes it easy to retry when the downstream API is temporarily unavailable.
HR coordinator relaying leave approvals
An HR coordinator needs leave_request.approved events pushed to a payroll or absence-tracking endpoint. The template gives them a controlled target list and a visible record of each successful or failed delivery.
Safety lead sending incident logs outward
A safety lead wants incident.logged events forwarded to a case management system with an audit trail. The relay helps them monitor failures and keep the outbound destination restricted to approved domains.
Facilities team syncing room or asset bookings
A facilities team uses the relay to send asset.booked or room.booked events to an external calendar or booking system. This avoids manual exports and keeps the handoff tied to the original platform event.

Frequently asked questions

What does the Webhook Relay template actually include?

It includes admin settings for target webhook URLs, event selection, delivery status tracking, and retry handling for failed posts. The template is focused on forwarding platform events such as shift.created or leave_request.approved to external systems. It also includes a dashboard for recent deliveries so operators can see what was sent and what failed. This is a relay, not a full integration platform.

Which events should I send through this template?

Use it for discrete platform events that need to trigger action elsewhere, such as approvals, assignments, status changes, or record creation. It works best when the event payload is already complete enough for the receiving system to act on. If you need complex transformation, branching workflows, or multi-step orchestration, this template may be too narrow. In that case, use it as the outbound delivery layer and keep transformation logic outside the app.

How often does it retry failed deliveries?

The template is designed to retry failed deliveries according to the retry rule you configure in the app. That makes it suitable for transient network errors and temporary downtime on the receiving side. It is not a substitute for guaranteed exactly-once delivery, so downstream systems should still be idempotent. A common pitfall is retrying without a deduplication key, which can create duplicate actions.

Who should manage the webhook settings and allowed domains?

An admin or integration owner should manage webhook URLs, event subscriptions, and allowed domains. That role should be able to add or disable targets, review failed deliveries, and re-run retries when needed. Regular users should not edit delivery destinations because a bad URL can leak data or break downstream automations. Keeping this in a restricted role also makes change tracking easier.

Is this template suitable for regulated or sensitive data?

It can be used for regulated workflows only if you carefully control which events are forwarded and which domains are allowed. For sensitive records, limit payloads to the minimum necessary fields and avoid sending unnecessary personal data. You should also confirm that the receiving endpoint is authorized to store or process the data. If your use case involves incident logs, visitor records, or other regulated events, review your retention and access rules before enabling forwarding.

What are the most common mistakes when setting up a webhook relay?

The biggest mistakes are forwarding too many event types, sending to unapproved domains, and not checking delivery failures regularly. Another common issue is assuming the receiver will accept the exact payload shape without testing first. Teams also forget to define what happens after a failed retry, which leaves operators guessing. Start with one event type, one target, and a test payload before expanding.

Can I customize the payload before it is sent?

This template is built around forwarding platform event payloads as-is, so it is best for straightforward relay use cases. If you need field mapping, filtering, or payload enrichment, you can customize the app around the relay logic or place a transformation step upstream. That keeps the template simple and easier to reason about. For many teams, the right pattern is to keep the relay thin and let the receiving system handle its own mapping.

How does this compare with ad-hoc scripts or manual exports?

Compared with ad-hoc scripts, this template gives you a visible list of targets, event subscriptions, delivery outcomes, and retries in one place. That reduces the risk of forgotten scripts, hidden failures, and one-off fixes that only one person understands. Compared with manual exports, it reacts immediately when the event happens instead of waiting for someone to notice and send data later. It is a better fit when the integration should be event-driven and repeatable.

Ready to use this template?

Get started with MangoApps and use Webhook Relay with your team — pricing built for small business.

Get Started