Webhook payload

Inbound email webhook — what you get

Every field explained, with what you can do with it. This is the data your endpoint receives for every incoming email.

Sender & recipient

Who sent the email and which alias received it. Use these fields to route, filter, or log by source.

{
  "message": {
    "sender": {
      "name": "Alice Martin",
      "email": "alice@acme.com"
    },
    "recipient": "invoices@yourcompany.com",
    "subject": "Invoice #1042 — February 2026"
  }
}

Practical use: Match sender.email against known contacts to auto-route. Use recipient to determine which alias — and therefore which workflow — should handle this email.

Content — three formats

Every email body is delivered in three formats simultaneously. Use whichever fits your pipeline — or all three for different purposes.

"content": {
  "text": "Hi, please find the invoice attached...",
  "html": "<p>Hi, please find the invoice...</p>",
  "markdown": "Hi, please find the invoice attached...",
  "links": [
    {
      "url": "https://acme.com/pay/1042",
      "text": "Pay now",
      "domain": "acme.com"
    }
  ]
}
Plain text

Best for search indexing, keyword matching, and feeding to LLMs. Clean, no markup.

HTML

The original email markup. Use when you need to render the email exactly as it was sent.

Markdown

Structured but readable. Great for AI processing, ticket descriptions, and CRM notes.

Practical use: Feed content.markdown to your LLM for classification or summarisation. Use content.links to extract tracking URLs from shipping notifications or payment links from invoices.

Attachments

Attachments are processed automatically. Small text files are embedded inline; larger files are offloaded to EU-hosted S3 with direct download URLs.

"attachments": [
  {
    "filename": "invoice-1042.pdf",
    "contentType": "application/pdf",
    "size": 48210,
    "downloadUrl": "https://files.emailconnect.eu/d/a1b2c3/invoice-1042.pdf"
  }
]
Inline (base64)Free plan

Text documents (TXT, HTML, CSV, JSON) under 192KB embedded directly in the payload. Maker+ supports up to 2MB inline.

S3-offloadedMaker+

Larger files stored in Scaleway (France) S3 or your own S3-compatible storage. Direct download URLs in the payload. Up to 10MB.

Practical use: Pipe downloadUrl to your document processing pipeline. Invoices to accounting, contracts to legal review, images to your media library.

Spam scoring & authentication

Every email is scored for spam and verified against DKIM, SPF, and DMARC. You get the results — you decide the threshold.

"spam": {
  "isSpam": false,
  "score": 0.2,
  "authentication": {
    "dkim": { "result": "pass" },
    "spf": { "result": "pass" },
    "dmarc": { "result": "pass" }
  }
}
DKIM

Verifies the email wasn't altered in transit. A "pass" means the content is exactly what the sender signed.

SPF

Confirms the sending server is authorised to send for that domain. Prevents spoofing.

DMARC

The domain owner's policy on what to do with emails that fail DKIM or SPF. Tells you the sender's intent.

Practical use: Reject or quarantine emails where authentication.dkim.result is "fail" before processing. Use spam.score as a threshold — only process emails below your acceptable risk level.

Webhook integrity

Every webhook POST is signed with your secret key using HMAC-SHA256. Verify the signature to confirm the request came from EmailConnect, not a third party.

// Header
X-Emailconnect-Signature: sha256=9f86d081884c7d659a2feaa0...

// Payload field
"integrity": {
  "signature": "sha256=9f86d081884c7d659a2feaa0..."
}

Practical use: Always verify the HMAC signature in your webhook handler before processing. This prevents anyone from spoofing webhook calls to your endpoint. See code examples on the homepage integration section.

Coming soon

Build your own payload

Pick exactly which fields you need per alias. Strip what you don't. Want just the sender, subject, and attachments? Configure it. Need the full payload with authentication details? Keep it all. Per-alias payload configuration for complete control over what your endpoint receives.

Start free — try the default payload

What teams build with this data

The same payload powers very different workflows depending on which fields you use.

Shipping & order tracking

Extract tracking URLs from content.links in order confirmation emails. Auto-update your fulfilment dashboard.

Invoice processing

Pipe attachments[].downloadUrl to your accounting system. Match sender.email to known vendors.

AI classification

Feed content.markdown to your LLM to classify intent, extract entities, or summarise — with clean, structured input.

Security & compliance

Check spam.authentication results before processing. Reject unauthenticated senders to protect your pipeline from spoofed emails.

Try it yourself

Send an email and see the full payload in real time. No signup required for the live demo.