Turn Microsoft 365 email into JSON webhooks
MailWebhook connects Microsoft 365, Office 365, and Outlook mailboxes, including shared mailbox workflows, then normalizes each message and delivers signed JSON webhook events to your application.
Built for Office 365 email webhook, Microsoft 365 email-to-webhook, Outlook email webhook, Outlook.com webhook, and shared mailbox automation workflows.
Microsoft 365 mailbox -> Graph subscription + delta sync -> normalized email event -> mapped JSON payload -> signed webhook POST
{
"schema": { "name": "mailwebhook.generic", "version": "1" },
"event": {
"id": "6ff49aa1-7050-4ad1-95d9-2711f2ca7e88",
"project_id": "dca29061-c4a7-4687-a8dd-24d2f26548c7",
"route_id": "2f3713bf-88cc-46c6-aaa3-ea9d6e9d20f3",
"created_at": "2026-06-27T10:14:32Z"
},
"message": {
"message_id": "<invoice-1042@vendor.example>",
"message_id_type": "original",
"subject": "Invoice 1042",
"date": "2026-06-27T10:13:59Z",
"from": [{ "email": "billing@vendor.example", "name": "Vendor Billing" }],
"to": [{ "email": "ap@company.com", "name": "Accounts Payable" }]
},
"body": {
"text": "Please review invoice 1042.",
"attachments": []
},
"meta": {
"source": "ms365",
"raw_size_bytes": 26546,
"received_at": "2026-06-27T10:14:32Z"
}
}Can Microsoft 365 email trigger a webhook?
Yes. MailWebhook turns Microsoft 365, Office 365, and Outlook mailbox messages into webhook events your application can process. Connect the mailbox, choose the folder to monitor, optionally target a shared mailbox, and send normalized JSON to your webhook URL. The same workflow covers Office 365 email webhook, Outlook email webhook, and shared mailbox webhook use cases.
The page treats Outlook email as supported broadly, including Outlook.com webhook workflows where the phrase fits the search intent.
From Microsoft 365 mailbox to signed webhook
A managed pipeline that takes Microsoft 365 work mailbox email from OAuth connection to a signed webhook event your application can trust.
- 01
Connect with Microsoft 365
Start the Microsoft 365 OAuth flow from MailWebhook and authorize mailbox access.
- 02
Choose the mailbox target
Use the signed-in work mailbox or provide a shared mailbox email when that inbox is the source of truth.
- 03
Scope the folder
Monitor a selected Microsoft 365 folder such as Inbox or a dedicated operational folder.
- 04
Sync mailbox changes
MailWebhook uses Graph subscription triggers and folder-scoped delta sync to find new or updated messages.
- 05
Normalize and map
Message headers, people, bodies, attachments, timestamps, and extracted fields become stable JSON.
- 06
Deliver the webhook
Send the payload to your endpoint with X-MailWebhook-Signature and X-Idempotency-Key headers.
A Microsoft 365 email event your app can process
MailWebhook sends your endpoint the pipeline output directly. For the generic JSON mapper, Microsoft 365 messages use the same documented payload contract as other providers, with meta.source set to ms365.
{
"schema": {
"name": "mailwebhook.generic",
"version": "1"
},
"event": {
"id": "6ff49aa1-7050-4ad1-95d9-2711f2ca7e88",
"project_id": "dca29061-c4a7-4687-a8dd-24d2f26548c7",
"route_id": "2f3713bf-88cc-46c6-aaa3-ea9d6e9d20f3",
"created_at": "2026-06-27T10:14:32Z"
},
"message": {
"message_id": "<invoice-1042@vendor.example>",
"message_id_type": "original",
"subject": "Invoice 1042 for approval",
"date": "2026-06-27T10:13:59Z",
"from": [{ "email": "billing@vendor.example", "name": "Vendor Billing" }],
"to": [{ "email": "ap@company.com", "name": "Accounts Payable Shared Mailbox" }],
"headers": {
"message-id": "<invoice-1042@vendor.example>",
"content-type": "multipart/mixed"
}
},
"body": {
"text": "Please review invoice 1042.",
"attachments": [
{
"id": "9f5a1ded-538d-4f5f-a7a9-d3eacf9e58a0",
"filename": "invoice-1042.pdf",
"content_type": "application/pdf",
"size": 93259,
"is_inline": false,
"sha256": "059a0f5260487bbe663994de1fd641401fec76ac9f6bddfe5b53ae60d4bb2d86"
}
]
},
"meta": {
"source": "ms365",
"raw_size_bytes": 26546,
"received_at": "2026-06-27T10:14:32Z"
}
}Built for Microsoft 365 mailbox workflows
Purpose-built for Microsoft 365 evaluators, including Office 365 work mailbox and shared mailbox webhook automation.
Outlook mailbox intake
Turn messages from an Outlook or Microsoft 365 mailbox into webhook events.
Shared mailbox workflows
Route shared mailbox messages from team inboxes such as support, invoices, or procurement.
Folder-scoped monitoring
Monitor the selected folder instead of treating the whole mailbox as one undifferentiated stream.
Structured email events
Normalize senders, recipients, headers, bodies, attachments, and timestamps before delivery.
Custom JSON mapping
Shape Microsoft 365 messages into the JSON your receiving system expects.
Signed webhook delivery
Send events with deterministic idempotency and HMAC signature headers.
Use Microsoft 365 email as an input to your application
Microsoft 365 inbound email webhooks power support, finance, operations, and integration workflows across technical and operations teams.
Shared support inbox
Turn team inbox messages into support tickets, triage tasks, or AI agent events.
Invoices and procurement
Extract vendor, subject, attachment metadata, and invoice identifiers before webhook delivery.
Operations alerts
Route operational notifications from Microsoft 365 mailboxes into internal systems.
Customer intake
Move structured fields from recurring email workflows into CRMs or back-office tools.
AI inbox workflows
Let agents receive mailbox events without granting direct mailbox control to the agent runtime.
Legacy system integration
Connect systems that still send email to modern HTTP workflows.
Microsoft Graph is powerful. The production email pipeline is still work.
Microsoft Graph gives you the primitives. A production email-to-webhook workflow still needs OAuth state, subscription validation, delta cursors, folder targeting, shared mailbox access, MIME parsing, duplicate handling, attachment policy, payload shaping, webhook signing, retries, and delivery history.
Direct Graph build
- Manage OAuth token state and refresh behavior
- Create, validate, renew, and map Graph subscriptions
- Implement folder-scoped delta queries
- Fetch and parse RFC822 MIME
- Build idempotency, HMAC signatures, retries, and logs
MailWebhook
- Connect a Microsoft 365 mailbox through the product flow
- Use MailWebhook's Microsoft 365 sync path
- Receive new mailbox messages through route events
- Receive normalized JSON payloads
- Use signed webhook delivery and delivery attempt tracking
Where MailWebhook fits in a Microsoft 365 stack
MailWebhook is the operational layer on top of Microsoft 365 mailbox access: email intake, normalization, JSON mapping, and signed webhook delivery for the workflows your application depends on.
Compared with Microsoft Graph alone
Graph exposes mailbox primitives. MailWebhook packages the email intake, normalization, mapping, and webhook delivery workflow.
Compared with Power Automate or no-code
No-code workflows are useful for simple routing. MailWebhook focuses on developer-ready JSON payloads, signatures, and endpoint delivery.
Compared with forwarding rules
Forwarding moves email somewhere else. MailWebhook turns mailbox messages into route events and webhook payloads.
Compared with parser tools
Parser tools often depend on parser-specific inboxes. MailWebhook supports existing Microsoft 365 mailbox workflows.
Designed for webhook receivers that need predictable events
- Signed webhook delivery so your endpoint can verify the sender.
- An X-Idempotency-Key header so duplicate delivery can be handled safely.
- Structured payloads so downstream code does not depend on raw email quirks.
- Route-level configuration so different Microsoft 365 workflows can produce different payloads.
Start free, scale when you need to
The Free plan includes 300 emails/month at no cost. Paid plans start at $29/per month with a 30-day free trial.
- HMAC-signed webhook delivery
- Automatic retries with backoff
- Event inspector and replay
- Idempotency keys for safe dedupe
Microsoft 365 email webhook FAQ
- Can Microsoft 365 email trigger a webhook?
- Yes. MailWebhook supports Microsoft 365 work mailbox workflows and can deliver normalized JSON events to your webhook endpoint.
- Can Office 365 email trigger a webhook?
- Yes. Office 365 and Microsoft 365 refer to the same work mailbox platform, and Office 365 email webhook workflows are fully supported.
- Can Outlook email trigger a webhook?
- Yes. MailWebhook supports Outlook email webhook workflows.
- Can a Microsoft 365 shared mailbox trigger a webhook?
- Yes. MailWebhook supports shared mailbox targeting during the Microsoft 365 mailbox connection flow when delegated Graph access allows it.
- Do I need to change MX records?
- No. For Microsoft 365 workflows, MailWebhook connects to the existing mailbox through Microsoft 365 OAuth and monitors the selected mailbox folder.
- Is this the same as Microsoft Graph webhooks?
- Not exactly. Microsoft Graph webhooks notify systems about changes. MailWebhook uses Microsoft 365 provider integration as part of a larger pipeline that fetches the message, normalizes email content, maps JSON, signs delivery, and posts to your endpoint.
- Can I send a custom JSON shape to my webhook?
- Yes. You can use the generic normalized payload or map Microsoft 365 email fields into a custom JSON payload for the receiving system.
- What happens if the same email event is delivered twice?
- Webhook receivers should be idempotent. MailWebhook sends an X-Idempotency-Key header so your application can detect and safely ignore duplicate processing.
- Does this page support Outlook.com?
- Yes. MailWebhook supports Outlook.com webhook workflows.
Turn Microsoft 365 mailbox messages into webhook events
Connect a Microsoft 365 work mailbox, choose the route, and deliver structured email events to your application without building another Graph worker.