DocumentationFundamentals

Receive emails as webhooks

Turn inbound email into webhooks with Webhook Relay. Create an email input on a bucket, get a unique inbound address, and every email you receive is parsed to JSON and delivered to your endpoint — with optional transforms, sender filtering and fan-out.

Webhook Relay can receive inbound email and deliver it as a webhook. You add an email input to a bucket, Webhook Relay gives you a unique address like [email protected], and every message sent to it is parsed and forwarded to your endpoint as a JSON POST — the same pipeline as any other Webhook Relay input, so you also get transforms, fan-out, retries and an audit log.

Sender  ──▶  {uuid}@in.webhookrelay-mail.com  ──▶  Webhook Relay  ──▶  JSON webhook  ──▶  your endpoint
(any email)        (your email input)            (parse + policy)      (POST application/json)   (or transform first)

Use it to drive automation from email: parse order confirmations, support requests, alerts, reports or any "email-only" system into your API, a database, Slack/Discord, or a spreadsheet — without running an SMTP server.

Create an email input

  1. Open the Webhook Relay dashboard and create (or pick) a bucket — a bucket groups inputs and outputs.
  2. Add an Email input to the bucket. Webhook Relay generates a unique inbound address for it.

Creating an email input on a bucket in the Webhook Relay dashboard

  1. Copy the generated address — it looks like <uuid>@in.webhookrelay-mail.com, where the <uuid> is unique to that input.
  2. Send mail to it (or hand it to whatever system needs to email you). Every message is parsed and delivered to the bucket's outputs.

Each email input has its own address. Disable the input to stop accepting mail without deleting it, and delete it to free the address.

What your endpoint receives

The parsed message is delivered as a JSON body with Content-Type: application/json and an X-Webhookrelay-Source: email header. Here is a real message:

{
  "from": "[email protected]",
  "from_name": "K",
  "recipient": "[email protected]",
  "to": ["[email protected]"],
  "subject": "prod test",
  "date": "Fri, 26 Jun 2026 11:27:41 +0400",
  "message_id": "[email protected]",
  "text": "helloooo\r\n",
  "headers": {
    "From": "K <[email protected]>",
    "To": "[email protected]",
    "Subject": "prod test",
    "Content-Type": "text/plain; charset=us-ascii",
    "Return-Path": "<[email protected]>"
  },
  "spf": "none",
  "dkim": "pass",
  "dmarc": "pass"
}

HTML emails also include an html field, and attachments arrive in an attachments array. See the payload reference for every field.

Forward, transform or fan out

Because the email becomes an ordinary event on the bucket, you can:

Next steps

Did this page help you?