Grow with us: Join Postmark's new referral partner program and start earning
x

Transactional email made easy

Power your app's communication with a fast and reliable transactional email service.

Illustration of man in blue shirt launching a paper airplane

A Transactional Email Service You Can Trust

Are your transactional emails slow to arrive or getting lost in inboxes, frustrating your customers? With Postmark, you can rely on swift and dependable email delivery every time. Focus on building great products while we ensure your emails reach your users quickly and reliably.

Effortlessly Handle Essential Emails

Password Reset Emails

Ensure users can quickly regain access to their accounts with fast, reliable password reset emails.

Receipt and Invoice Emails

Send professional, timely receipts and invoices to keep your customers informed and satisfied.

Trial Expiration Emails

Remind users about their trial period ending, encouraging conversions and reducing churn.

User invitation emails

Invite new users to your platform with seamless, personalized invitation emails.

Notification Emails

Keep your users updated with important notifications, ensuring they never miss a beat.

Welcome Emails

Make a great first impression with warm, engaging welcome emails that set the tone for your user experience.

Easy integration via API or SMTP

Get seamless and lightning fast email delivery using our versatile API or SMTP integration. Quickly implement email in your app using our robust libraries, and access great customer support whenever you need it.

# Send an email with curl
  # Copy and paste this into terminal

  curl "https://api.postmarkapp.com/email" \
    -X POST \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -H "X-Postmark-Server-Token: server token" \
    -d '{
    "From": "sender@example.com",
    "To": "receiver@example.com",
    "Subject": "Postmark test",
    "TextBody": "Hello dear Postmark user.",
    "HtmlBody": "<html><body><strong>Hello</strong> dear Postmark user.</body></html>",
    "MessageStream": "outbound"
  }'
  
# Send an email with the Postmark Rails Gem
  # Learn more -> https://postmarkapp.com/developer/integration/official-libraries#rails-gem

  # Add this to your gemfile
  gem 'postmark-rails'

  # Add this to your config/application.rb file:
  config.action_mailer.delivery_method = :postmark
  config.action_mailer.postmark_settings = { :api_token => "POSTMARK_API_TEST" }

  # Send the email
  class TestMailer < ActionMailer::Base
    def hello
      mail(
        :subject => 'Hello from Postmark',
        :to  => 'receiver@example.com',
        :from => 'sender@example.com',
        :html_body => '<strong>Hello</strong> dear Postmark user.',
        :track_opens => 'true'
      )
    end
  end
  
# Send an email with the Postmark Ruby Gem
  # Learn more -> https://postmarkapp.com/developer/integration/official-libraries#ruby-gem

  # Add the Postmark Ruby Gem to your Gemfile
  gem 'postmark'

  # Require gem
  require 'postmark'

  # Create an instance of Postmark::ApiClient
  client = Postmark::ApiClient.new('POSTMARK_API_TEST')

  # Example request
  client.deliver(
    from: 'sender@example.com',
    to: 'receiver@example.com',
    subject: 'Hello from Postmark',
    html_body: '<strong>Hello</strong> dear Postmark user.',
    track_opens: true
  )
  
// Send an email with the Postmark .NET library
  // Learn more -> https://postmarkapp.com/developer/integration/official-libraries#dot-net

  // Install with NuGet
  PM> Install-Package Postmark

  // Import
  using PostmarkDotNet;

  // Example request
  PostmarkMessage message = new PostmarkMessage {
      From = "sender@example.com",
      To = "receiver@example.com",
      Subject = "Hello from Postmark",
      HtmlBody = "<strong>Hello</strong> dear Postmark user.",
      TextBody = "Hello dear postmark user.",
      ReplyTo = "reply@example.com",
      TrackOpens = true,
      Headers = new NameValueCollection {{ "CUSTOM-HEADER", "value" }}
  };

  PostmarkClient client = new PostmarkClient("POSTMARK_API_TEST");

  PostmarkResponse response = client.SendMessage(message);

  if(response.Status != PostmarkStatus.Success) {
      Console.WriteLine("Response was: " + response.Message);
  }
  
// Send an email with the Postmark-PHP library
  // Learn more -> https://postmarkapp.com/developer/integration/official-libraries#php

  // Install with composer
  composer require wildbit/postmark-php

  // Import
  use Postmark\PostmarkClient;

  // Example request
  $client = new PostmarkClient("server token");

  $sendResult = $client->sendEmail(
    "sender@example.com",
    "receiver@example.com",
    "Hello from Postmark!",
    "This is just a friendly 'hello' from your friends at Postmark."
  );
  
// Send an email with the Postmark.js library
  // Learn more -> https://postmarkapp.com/developer/integration/official-libraries#node-js

  // Install with npm
  npm install postmark --save

  // Require
  var postmark = require("postmark");

  // Example request
  var client = new postmark.ServerClient("server token");

  client.sendEmail({
      "From": "sender@example.com",
      "To": "receiver@example.com",
      "Subject": "Test",
      "TextBody": "Hello from Postmark!"
  });
  

Switching to Postmark?

Check out our handy migration guides

Why choose Postmark?

  • Unmatched deliverability

    Stellar deliverability

    We believe that every customer deserves great delivery. It’s just part of the deal when you use Postmark.

  • Developer-friendly documentation

    Developer-friendly documentation

    Learn how to get the most out of Postmark with our easy-to-follow getting started guides.

  • Top-notch support as a standard

    Top-notch support as a standard

    You will never be charged extra for great support. We’re always here to help whether it’s through email, live-chat, or a 1-on-1 call.

  • Globally distributed SMTP service

    Globally distributed SMTP service

    We maintain endpoints in several AWS Regions around the world. We route to the closest endpoints to your servers for the fastest response times possible, resulting in very low latency.

  • Secure and GDPR friendly

    Secure and GDPR friendly

    We value your trust and work hard to protect your information—and that of your customers. Postmark is GDPR compliant.

  • Email authentication made easy

    Email authentication made easy

    We guide you through setting up DMARC and SPF to help protect your domain from spoofing.

Why Our Customers Love Us ❤️

It was incredibly easy to setup Postmark. In under 10 minutes I had the first test working and rolling it out to production was just as easy.

Dave Teare

Dave Teare

Founder at 1Password

Get Started Free Today!

Join thousands of businesses who trust Postmark for their email needs. 
Sign up now and see the difference!