User guide

API reference


Inbound domain forwarding

If you have access to your DNS records, Postmark includes a simple way for you to configure your MX records to point to our mail servers, so that all email sent to a domain or sub-domain is processed by Postmark. If you do not have access to your DNS records, we support email being forwarded by 3rd party mail services.

1. Set an MX Record

Choose a domain that you would like to listen on for incoming email to be processed by Postmark. In your DNS configuration, create an MX record that points to inbound.postmarkapp.com and give it a value of 10. 

If you plan on just using your root domain for your inbound domain forwarding, then you'd add @ as the Name value in the MX record in your DNS configuration:

However, we typically recommend that you use a separate subdomain for your inbound domain forwarding. For example, example.yourdomain.com. You would add the subdomain value to the Name field in your MX record:

You may also use a “wildcard” inbound domain such as *.yourdomain.com which will cause all messages addressed to any subdomain of yourdomain.com to be routed to your inbound endpoint. For example, if you register *.yourdomain.com with Postmark and your DNS host, you may then use an inbound address such as user@client1.yourdomain.com and it will be routed to your inbound endpoint. In the MX record, you'd list * as the Name value:

2. Set the domain

Inbound domains are unique across Postmark and are Stream-specific. You can configure the Inbound Domain on the Stream settings page.

Alternatively, you can use the Server API to set the Inbound Domain on your server.

Example request with curl

curl "https://api.postmarkapp.com/servers/:serverid" \
  -X PUT \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Postmark-Account-Token: account token" \
  -d "{InboundDomain: 'inbound.yourdomain.com'}"

Example JSON response

  "Name": "Production Testing",
  "Color": "blue",
  "SmtpApiActivated": false,
  "RawEmailEnabled": false,
  "InboundHookUrl": "http://hooks.example.com/inbound",
  "BounceHookUrl": "http://hooks.example.com/bounce",
  "OpenHookUrl": "http://hooks.example.com/open",
  "PostFirstOpenOnly": false,
  "InboundDomain": ""

3. Enable SMTP

Enable SMTP on the server’s settings page.

4. Receive emails

You can now receive emails sent to any address on the inbound forwarding domain and they will be processed using Postmark.