MailSlurp logo

Receive email in your app, not a shared mailbox.

MailSlurp's inbound email API gives each workflow a real email address. Read incoming messages, headers and attachments by API, or have every new email pushed to your server by webhook.

An email opening into structured data for an application

Trusted by teams at

  • Broadcom
  • Scraper
  • Trivago
  • Avast
  • Wolt
  • Panasonic
  • Broadcom
  • Scraper
  • Trivago
  • Avast
  • Wolt
  • Panasonic

An address for every customer and workflow.

Create inboxes on demand for orders, invoices, returns or individual customers. Use a MailSlurp address or your own domain, and keep each workflow's incoming email together.

Add addresses through the API as your application grows, or use plus addresses to tag messages within one inbox.

Explore programmable inboxes
Stacked trays labelled orders, invoices and returns

Get each new email pushed to your server.

Connect a webhook to an inbox or to your whole account. When an email arrives, MailSlurp calls your endpoint with its ID so your worker can fetch the message and start the next job.

Inspect delivery results in the dashboard. Unsuccessful responses are retried with backoff, and the original email stays available by API if processing fails.

Explore email webhooks
An incoming email routed to code, another inbox and an automatic reply

Turn the message into data.

Read the sender, recipients, subject, HTML and text bodies, headers and attachments of every received email. Match the fields you need, or use AI extraction to return them as structured JSON.

Download attachments for your own processing, or define the invoice number, order reference or tracking ID you want and validate the extracted values before updating your records.

Explore AI email parsing
A document under a magnifying glass beside structured data braces

Receive your first email in a few calls.

Create an inbox, connect a webhook, then read the email and its attachments using the ID in the event. Use the same calls from a test, a worker or a scheduled job.

Official SDKs for JavaScript, TypeScript, Python, Java, C#, PHP, Ruby and more call the same REST API underneath.

Read the API documentation

Inbound email API questions

What is an inbound email API?

An inbound email API gives your application real email addresses and programmatic access to the messages they receive. With MailSlurp you can read each email, its headers and attachments by API, wait for the next message in a test, or have new messages pushed to your server by webhook.

Should I use webhooks or the API to receive email?

Use a webhook when your application should react to every new message. Use the API when you need to fetch a specific email, list an inbox or reconcile what arrived. Many teams use both: the webhook starts the work and the API supplies the full message and attachments. Read the webhook guide.

Can I receive email on my own domain?

Yes. Add a custom domain and create inboxes with its addresses, or use MailSlurp addresses when you do not need your own domain. Plus addresses can tag messages for a customer or order within one inbox. Read about custom domains.

How do I get attachments from incoming email?

Each received email lists its attachments. Fetch their metadata and download the files by API, then pass them to your own processing or to AI extraction to turn invoices, orders and other documents into structured fields. Explore AI email parsing.

Put incoming email to work.

Start free with a real inbox. Receive an email, connect your application and build the next step around the message.

MailSlurp SDKs ready to connect your application