FEATURES

Serverless Webhook Transformations

Transform, filter and reshape webhook payloads in flight with Webhook Relay functions before forwarding them to any destination — no extra infrastructure.

Webhook Relay functions transform webhooks in flight. A short JavaScript (or Lua) function runs on Webhook Relay after a webhook is received and before it is forwarded, so you can reshape the payload, rewrite headers, change the method or path, enrich it from another API, or drop it — without hosting a server. It is the fastest way to integrate two services that have no native integration: the provider keeps sending its normal webhook, and the destination receives exactly the request it expects.

How it works

  1. Point the provider at your bucket's public URL.
  2. Write a function in the dashboard — or generate a first draft from sample JSON with the automatic transform builder — and attach it to an input or an output.
  3. Every webhook passes through the function; the result is delivered, retried and logged like any other Webhook Relay delivery, including to internal servers with no public IP.

transform webhooks editor

Integrations teams build with functions

Functions vs. no-code automation vs. your own cloud function

Webhook Relay functionZapier / Make / n8nYour own AWS Lambda or Cloud Function
Where it runsManaged, inline with delivery, retries and logsManaged workflow toolYour cloud account
SetupPaste JavaScript in the dashboard and attach it to an outputVisual builder, per-task pricingDeploy pipeline, IAM, API gateway
Delivery to localhost or on-prem endpointsYesNoNo
Retries, replay and delivery logsBuilt inVariesYou build them
Custom codeFull JavaScript or LuaLimited code stepsFull

Unlocking Infinite Integration Possibilities

Webhook Relay gives you control of webhook workflows with managed JavaScript or Lua functions. Go beyond simple forwarding to reshape data, filter events, add authentication, change the method or path, enrich payloads, and customize responses. New integrations can start with JavaScript, while existing Lua functions remain supported.

View logs

Seamlessly Connect Disparate Systems

Bridge the gap between different platforms and services effortlessly. Imagine transforming order notifications from your e-commerce platform into custom alerts for your trading platform, or automatically routing messages from your website's HTML contact form directly into a dedicated Slack channel. With transformations, you can map data fields, adjust formats, and ensure information flows smoothly between systems that weren't originally designed to talk to each other.

Start with practical examples

The webhook transformation cookbook includes copyable JavaScript patterns for field mapping, Slack and Discord messages, form-to-JSON conversion, filtering, HMAC signing, path changes and validation handshakes. Use the filtering and routing guide when each output should receive a different subset of events.

Helper functions

Webhook Relay provides a set of helper functions that make it easier to transform webhooks:

Serverless Simplicity, Pay-Per-Use Efficiency

Forget about managing infrastructure. Webhook Relay's transformation functions run entirely in our managed environment. There are no servers to deploy, scale, or maintain. Focus solely on building your integration logic. Plus, with our pay-per-use pricing, you only pay for the compute time you actually consume, making it a cost-effective solution for businesses of all sizes.

Key Benefits:

  • Flexible code: Implement transformation logic in JavaScript or Lua.
  • Deep Integration: Connect incompatible systems like e-commerce stores, trading platforms, CRMs, and communication tools (e.g., Slack).
  • Serverless: No infrastructure management required. Deploy and run transformations instantly.
  • Cost-Effective: Pay only for the resources you use.
  • Versatile Use Cases: Ideal for connecting e-commerce events, financial alerts, contact forms, IoT device data, and much more.

Start with the functions documentation or generate a first draft from sample JSON in the automatic transform builder.

Frequently asked questions

What is a webhook transformation?

A transformation is a small function that runs on Webhook Relay after a webhook is received and before it is forwarded. It can change the body, headers, HTTP method, path and response, or stop the request entirely. Webhook Relay functions are written in JavaScript (or Lua) and run in a managed sandbox, so there is no server, queue or deployment on your side.

How do I convert a Stripe webhook into a Slack message?

Attach a function to the output that points at your Slack incoming-webhook URL. The function reads the Stripe event, builds a Slack payload such as a text message with the amount and customer, and Webhook Relay delivers it. The same pattern works for Discord, Microsoft Teams and any chat or ticketing API.

Can a function call other APIs to enrich a webhook?

Yes. Functions can make outbound HTTP requests, so you can look up a customer, fetch a signed URL or post to a second service, then forward the enriched payload. Service connections and secrets keep API keys out of the function code.

Can I filter or drop webhooks instead of forwarding everything?

Yes. A function can stop forwarding when an event does not match — for example only paid orders, only pushes to the main branch, or only requests with a valid HMAC signature. Simple cases can use rule-based forwarding filters without any code.

Does the provider need to change anything?

No. The provider keeps sending its normal webhook to your Webhook Relay URL. Transformation happens after receipt, so the provider sees a successful response and your destination receives the reshaped request.

Which languages can I use for transformations?

JavaScript is the default for new functions; Lua remains supported for existing ones. Helper libraries cover JSON, JMESPath, CSV, XML, YAML, JWT, cryptography and templating.

Start forwarding webhooks in minutes

Connect a source, pick a destination, and Webhook Relay handles delivery, retries and transforms. Set up your first webhook in under five minutes.

Free plan · No credit card required · 7-day money-back guarantee on paid plans