CINXE.COM
Official Postmark libraries | Postmark Developer Documentation
<!doctype html> <html lang="en" class="no-js"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title> Official Postmark libraries | Postmark Developer Documentation </title> <meta name="description" content="Get information about the official Postmark API client libraries for Rails, Ruby, .Net, PHP, Node.js, Wordpress, and Grunt."> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="globalsign-domain-verification" content="F0n5fUwYguswb99EGyC5qD87O15uv5VBUiX9yRrxX6"> <meta name="theme-color" content="#FFDE00"> <script>dataLayer = [{'siteType': 'developer', 'visitorIP': '8.222.208.146', 'doNotTrack': 0 }];</script> <link href="https://postmarkapp.com/dist/css/core.233bca689f85085cd63f.css" rel="stylesheet"> <link href="https://postmarkapp.com/dist/css/postmark.8eefa6ea9c9eef999806.css" rel="stylesheet"> <link rel="dns-prefetch" href="https://ssl.google-analytics.com"> <link rel="dns-prefetch" href="https://www.google-analytics.com"> <link rel="shortcut icon" href="/images/favicon.ico"> <link rel="apple-touch-icon" href="/images/apple-touch-icon.png"> <link rel="canonical" href="https://postmarkapp.com/developer/integration/official-libraries"> <meta property="og:url" content="https://postmarkapp.com/developer/integration/official-libraries"> <meta property="og:type" content="website"> <meta property="fb:app_id" content="244883355940334"> <meta property="og:title" content="Official Postmark libraries | Postmark Developer Documentation"> <meta property="og:description" content="Get information about the official Postmark API client libraries for Rails, Ruby, .Net, PHP, Node.js, Wordpress, and Grunt."> <meta property="og:image" content="https://craft-assets.postmarkapp.com/images/_facebook/sharing-developer-docs.png"> <meta property="og:image:type" content="image/png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="630"> <meta name="twitter:title" content="Official Postmark libraries | Postmark Developer Documentation"> <meta name="twitter:description" content="Get information about the official Postmark API client libraries for Rails, Ruby, .Net, PHP, Node.js, Wordpress, and Grunt."> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:image" content="https://craft-assets.postmarkapp.com/images/_twitter/4590/sharing-developer-docs.jpg"> <meta name="twitter:site" content="@postmarkapp"> <meta name="twitter:creator" content="@mattantwest"> <meta name="slack-app-id" content="A8LSJN934"> <link href="https://postmarkapp.com/dist/css/developerDocs.5b109bbdd8a1aa4c112c.css" rel="stylesheet"> </head> <body id="api"> <header class="header header--full-width header--compact"> <div class="u-container header_container"> <div class="header_branding"> <a href="https://postmarkapp.com/" class="header_postmark-logo">Postmark</a> <div class="header_actions"> <a href="https://account.postmarkapp.com/login" class="header_login cta-btn cta-btn--small ">Log In</a> <button class="header_hamburger js-nav-mobile-button" aria-haspopup="true"> <span></span> <span></span> <span></span> </button> </div> </div> <nav class="nav nav--header nav--desktop" role="navigation" aria-label="Main"> <ul class="nav_list"> <li class="nav_item "> <a href="https://postmarkapp.com/why" class="nav_link">Why Postmark?</a> </li> <li class="nav_item nav_item--dropdown"> <button class="nav_link js-nav-popup" aria-haspopup="true" aria-expanded="false" data-target=".js-dropdown-product">Product</button> <div class="nav_dropdown js-dropdown-product"> <div class="nav_dropdown-wrapper nav_dropdown-wrapper--product"> <div class="nav_features"> <h2 class="nav_sub-heading nav_sub-heading--features">Features</h2> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/email-api" class="nav_link"> <span class="nav_icon nav_icon--email-api"></span> <span class="nav_title">Email API</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/smtp-service" class="nav_link"> <span class="nav_icon nav_icon--smtp"></span> <span class="nav_title">SMTP Service</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/message-streams" class="nav_link"> <span class="nav_icon nav_icon--streams"></span> <span class="nav_title">Message Streams</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/transactional-email" class="nav_link"> <span class="nav_icon nav_icon--transactional"></span> <span class="nav_title">Transactional Email</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-delivery" class="nav_link"> <span class="nav_icon nav_icon--delivery"></span> <span class="nav_title">Email Delivery</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-templates" class="nav_link"> <span class="nav_icon nav_icon--templates"></span> <span class="nav_title">Email Templates</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/inbound-email" class="nav_link"> <span class="nav_icon nav_icon--inbound"></span> <span class="nav_title">Inbound Email</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-analytics" class="nav_link"> <span class="nav_icon nav_icon--insight"></span> <span class="nav_title">Analytics & Retention</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/integrations" class="nav_link"> <span class="nav_icon nav_icon--integrations"></span> <span class="nav_title">Integrations</span> </a> </li> </ul> </div> <div class="nav_sub"> <h2 class="nav_sub-heading"> <span class="nav_icon nav_icon--for"></span> <span class="nav_text">Postmark For</span> </h2> <ul class="nav_list"> <li><a href="https://postmarkapp.com/for/agencies" class="nav_sub-link">Agencies</a></li> <li><a href="https://postmarkapp.com/for/enterprise" class="nav_sub-link">Enterprise</a></li> <li><a href="https://postmarkapp.com/for/startups" class="nav_sub-link">Startups</a></li> <li><a href="https://postmarkapp.com/for/bootstrapped-startups" class="nav_sub-link">Bootstrapped Startups</a></li> <li><a href="https://postmarkapp.com/for/side-projects" class="nav_sub-link">Side Projects</a></li> </ul> <h2 class="nav_sub-heading u-pad-top--xs"> <span class="nav_icon nav_icon--versus"></span> <span class="nav_text">Postmark vs.</span> </h2> <ul class="nav_list"> <li><a href="https://postmarkapp.com/compare/sendgrid-alternative" class="nav_sub-link">SendGrid</a></li> <li><a href="https://postmarkapp.com/compare/mailgun-alternative" class="nav_sub-link">Mailgun</a></li> <li><a href="https://postmarkapp.com/compare/amazon-ses-alternative" class="nav_sub-link">Amazon SES</a></li> <li><a href="https://postmarkapp.com/compare/sparkpost-alternative" class="nav_sub-link">SparkPost</a></li> <li><a href="https://postmarkapp.com/compare/mandrill-alternative" class="nav_sub-link">Mandrill</a></li> </ul> </div> </div> </div> </li> <li class="nav_item"> <a href="https://postmarkapp.com/pricing" class="nav_link">Pricing</a> </li> <li class="nav_item nav_item--dropdown nav_item--current"> <button class="nav_link js-nav-popup" aria-haspopup="true" aria-expanded="false" data-target=".js-dropdown-resources">Resources</button> <div class="nav_dropdown js-dropdown-resources"> <div class="nav_dropdown-wrapper"> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/blog" class="nav_link"> <span class="nav_icon nav_icon--blog"></span> <span class="nav_title">Blog</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/developer" class="nav_link"> <span class="nav_icon nav_icon--api-docs"></span> <span class="nav_title">API Documentation</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/manual" class="nav_link"> <span class="nav_icon nav_icon--manual"></span> <span class="nav_title">Getting Started</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/guides" class="nav_link"> <span class="nav_icon nav_icon--guides"></span> <span class="nav_title">Email Guides</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/postmark-express" class="nav_link"> <span class="nav_icon nav_icon--comic"></span> <span class="nav_title">Email Comic</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/webinars" class="nav_link"> <span class="nav_icon nav_icon--webinars"></span> <span class="nav_title">Webinars</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/videos" class="nav_link"> <span class="nav_icon nav_icon--videos"></span> <span class="nav_title">Videos</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/podcast" class="nav_link"> <span class="nav_icon nav_icon--podcast"></span> <span class="nav_title">Podcast</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/labs" class="nav_link"> <span class="nav_icon nav_icon--labs"></span> <span class="nav_title">Labs</span> </a> </li> <li class="nav_item"> <a href="https://dmarcdigests.com" target="_blank" rel="noopener" class="nav_link"> <span class="nav_icon nav_icon--dmarc"></span> <span class="nav_title">DMARC Digests</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/glossary" class="nav_link"> <span class="nav_icon nav_icon--glossary"></span> <span class="nav_title">Glossary</span> </a> </li> </ul> </div> </div> </li> <li class="nav_item nav_item--dropdown"> <button class="nav_link js-nav-popup" aria-haspopup="true" aria-expanded="false" data-target=".js-dropdown-help">Help</button> <div class="nav_dropdown js-dropdown-help"> <div class="nav_dropdown-wrapper"> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/support" class="nav_link"> <span class="nav_icon nav_icon--support"></span> <span class="nav_title">Support Center</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/contact" class="nav_link"> <span class="nav_icon nav_icon--contact"></span> <span class="nav_title">Contact Support</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/talk-to-sales" class="nav_link"> <span class="nav_icon nav_icon--contact-sales"></span> <span class="nav_title">Talk to Sales</span> </a> </li> <li class="nav_item"> <a href="https://status.postmarkapp.com/" target="_blank" rel="noopener noreferrer" class="nav_link"> <span class="nav_icon nav_icon--status"></span> <span class="nav_title">Status</span> </a> </li> </ul> </div> </div> </li> <li class="nav_item nav_item--btn"> <a href="https://account.postmarkapp.com/login" class="nav_btn cta-btn ">Log in</a> </li> <li class="nav_item nav_item--btn"> <a href="https://account.postmarkapp.com/sign_up" class="nav_btn cta-btn cta-btn--default js-signup" data-track="Click" data-category="Signup Button" data-label="Header">Start free trial</a> </li> </ul> </nav> <div class="nav-mobile js-nav-mobile hidden--at-l-2"> <img src="/images/logo-stamp-simple.svg" class="nav-mobile_logo" /> <nav class="nav nav--header nav--mobile" role="navigation" aria-label="Main"> <ul class="nav_list"> <li class="nav_item "> <a href="https://postmarkapp.com/why" class="nav_link">Why Postmark?</a> </li> <li class="nav_item nav_item--dropdown"> <button class="nav_link js-nav-popup" aria-haspopup="true" aria-expanded="false" data-target=".js-dropdown-product">Product</button> <div class="nav_dropdown js-dropdown-product"> <div class="nav_dropdown-wrapper nav_dropdown-wrapper--product"> <div class="nav_features"> <h2 class="nav_sub-heading nav_sub-heading--features">Features</h2> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/email-api" class="nav_link"> <span class="nav_icon nav_icon--email-api"></span> <span class="nav_title">Email API</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/smtp-service" class="nav_link"> <span class="nav_icon nav_icon--smtp"></span> <span class="nav_title">SMTP Service</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/message-streams" class="nav_link"> <span class="nav_icon nav_icon--streams"></span> <span class="nav_title">Message Streams</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/transactional-email" class="nav_link"> <span class="nav_icon nav_icon--transactional"></span> <span class="nav_title">Transactional Email</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-delivery" class="nav_link"> <span class="nav_icon nav_icon--delivery"></span> <span class="nav_title">Email Delivery</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-templates" class="nav_link"> <span class="nav_icon nav_icon--templates"></span> <span class="nav_title">Email Templates</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/inbound-email" class="nav_link"> <span class="nav_icon nav_icon--inbound"></span> <span class="nav_title">Inbound Email</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-analytics" class="nav_link"> <span class="nav_icon nav_icon--insight"></span> <span class="nav_title">Analytics & Retention</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/integrations" class="nav_link"> <span class="nav_icon nav_icon--integrations"></span> <span class="nav_title">Integrations</span> </a> </li> </ul> </div> <div class="nav_sub"> <h2 class="nav_sub-heading"> <span class="nav_icon nav_icon--for"></span> <span class="nav_text">Postmark For</span> </h2> <ul class="nav_list"> <li><a href="https://postmarkapp.com/for/agencies" class="nav_sub-link">Agencies</a></li> <li><a href="https://postmarkapp.com/for/enterprise" class="nav_sub-link">Enterprise</a></li> <li><a href="https://postmarkapp.com/for/startups" class="nav_sub-link">Startups</a></li> <li><a href="https://postmarkapp.com/for/bootstrapped-startups" class="nav_sub-link">Bootstrapped Startups</a></li> <li><a href="https://postmarkapp.com/for/side-projects" class="nav_sub-link">Side Projects</a></li> </ul> <h2 class="nav_sub-heading u-pad-top--xs"> <span class="nav_icon nav_icon--versus"></span> <span class="nav_text">Postmark vs.</span> </h2> <ul class="nav_list"> <li><a href="https://postmarkapp.com/compare/sendgrid-alternative" class="nav_sub-link">SendGrid</a></li> <li><a href="https://postmarkapp.com/compare/mailgun-alternative" class="nav_sub-link">Mailgun</a></li> <li><a href="https://postmarkapp.com/compare/amazon-ses-alternative" class="nav_sub-link">Amazon SES</a></li> <li><a href="https://postmarkapp.com/compare/sparkpost-alternative" class="nav_sub-link">SparkPost</a></li> <li><a href="https://postmarkapp.com/compare/mandrill-alternative" class="nav_sub-link">Mandrill</a></li> </ul> </div> </div> </div> </li> <li class="nav_item"> <a href="https://postmarkapp.com/pricing" class="nav_link">Pricing</a> </li> <li class="nav_item nav_item--dropdown nav_item--current"> <button class="nav_link js-nav-popup" aria-haspopup="true" aria-expanded="false" data-target=".js-dropdown-resources">Resources</button> <div class="nav_dropdown js-dropdown-resources"> <div class="nav_dropdown-wrapper"> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/blog" class="nav_link"> <span class="nav_icon nav_icon--blog"></span> <span class="nav_title">Blog</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/developer" class="nav_link"> <span class="nav_icon nav_icon--api-docs"></span> <span class="nav_title">API Documentation</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/manual" class="nav_link"> <span class="nav_icon nav_icon--manual"></span> <span class="nav_title">Getting Started</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/guides" class="nav_link"> <span class="nav_icon nav_icon--guides"></span> <span class="nav_title">Email Guides</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/postmark-express" class="nav_link"> <span class="nav_icon nav_icon--comic"></span> <span class="nav_title">Email Comic</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/webinars" class="nav_link"> <span class="nav_icon nav_icon--webinars"></span> <span class="nav_title">Webinars</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/videos" class="nav_link"> <span class="nav_icon nav_icon--videos"></span> <span class="nav_title">Videos</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/podcast" class="nav_link"> <span class="nav_icon nav_icon--podcast"></span> <span class="nav_title">Podcast</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/labs" class="nav_link"> <span class="nav_icon nav_icon--labs"></span> <span class="nav_title">Labs</span> </a> </li> <li class="nav_item"> <a href="https://dmarcdigests.com" target="_blank" rel="noopener" class="nav_link"> <span class="nav_icon nav_icon--dmarc"></span> <span class="nav_title">DMARC Digests</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/glossary" class="nav_link"> <span class="nav_icon nav_icon--glossary"></span> <span class="nav_title">Glossary</span> </a> </li> </ul> </div> </div> </li> <li class="nav_item nav_item--dropdown"> <button class="nav_link js-nav-popup" aria-haspopup="true" aria-expanded="false" data-target=".js-dropdown-help">Help</button> <div class="nav_dropdown js-dropdown-help"> <div class="nav_dropdown-wrapper"> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/support" class="nav_link"> <span class="nav_icon nav_icon--support"></span> <span class="nav_title">Support Center</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/contact" class="nav_link"> <span class="nav_icon nav_icon--contact"></span> <span class="nav_title">Contact Support</span> </a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/talk-to-sales" class="nav_link"> <span class="nav_icon nav_icon--contact-sales"></span> <span class="nav_title">Talk to Sales</span> </a> </li> <li class="nav_item"> <a href="https://status.postmarkapp.com/" target="_blank" rel="noopener noreferrer" class="nav_link"> <span class="nav_icon nav_icon--status"></span> <span class="nav_title">Status</span> </a> </li> </ul> </div> </div> </li> <li class="nav_item nav_item--btn"> <a href="https://account.postmarkapp.com/login" class="nav_btn cta-btn ">Log in</a> </li> <li class="nav_item nav_item--btn"> <a href="https://account.postmarkapp.com/sign_up" class="nav_btn cta-btn cta-btn--default js-signup" data-track="Click" data-category="Signup Button" data-label="Header">Start free trial</a> </li> </ul> </nav> <div class="nav-mobile_extras"> <a href="https://account.postmarkapp.com/sign_up" class="cta-btn cta-btn--default cta-btn--medium js-signup" data-track="Click" data-category="Signup Button" data-label="Header (Mobile)">Start free trial</a> <p class="nav-mobile_login">Already have an account? <a href="https://account.postmarkapp.com/login">Log in →</a></p> </div> </div> </div> </header> <div class="page"> <div class="container"> <section id="toc" class="docs-toc docs-toc--desktop"> <h3>Overview</h3> <ul> <li > <a href="/developer">Introduction</a> </li> </ul> <h3>Integration</h3> <ul> <li class="active"> <a href="https://postmarkapp.com/developer/integration/official-libraries"> Official libraries </a> <ul> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#rails-gem"> Rails gem </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#ruby-gem"> Ruby gem </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#dot-net"> .NET </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#java"> Java </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#php"> PHP </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#postmark-craft-plugin"> Craft plugin </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#node-js"> Node.js </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#postmark-cli"> CLI </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#wordpress"> WordPress plugin </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#grunt"> Grunt plugin </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/official-libraries#postmark-zapier-actions"> Zapier Actions </a> </li> </ul> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/community-libraries"> Community libraries </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/integration/other-tools-and-integrations"> Tools and Integrations </a> </li> </ul> <h3>User guide</h3> <ul> <li class=""> <a href="https://postmarkapp.com/developer/user-guide/send-email-with-api"> Sending email with API </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/user-guide/send-email-with-smtp"> Sending email with SMTP </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/user-guide/inbound"> Processing email </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/user-guide/tracking-opens"> Tracking opens </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/user-guide/tracking-links"> Tracking links </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/user-guide/managing-your-account"> Managing your account </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/user-guide/sandbox-mode"> Sandbox mode </a> </li> </ul> <h3>API reference</h3> <ul> <li class=""> <a href="https://postmarkapp.com/developer/api/overview"> Overview </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/email-api"> Email </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/bulk-email"> Bulk </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/bounce-api"> Bounce </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/templates-api"> Templates </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/server-api"> Server </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/servers-api"> Servers </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/message-streams-api"> Message Streams </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/messages-api"> Messages </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/domains-api"> Domains </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/signatures-api"> Sender signatures </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/stats-api"> Stats </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/inbound-rules-triggers-api"> Triggers: Inbound rules </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/webhooks-api"> Webhooks </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/suppressions-api"> Suppressions </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/api/data-removals-api"> Data Removal </a> </li> </ul> <h3>Webhooks</h3> <ul> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/webhooks-overview"> Webhooks overview </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/bounce-webhook"> Bounce webhook </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/inbound-webhook"> Inbound webhook </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/open-tracking-webhook"> Open tracking webhook </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/delivery-webhook"> Delivery webhook </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/click-webhook"> Click webhook </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/spam-complaint-webhook"> Spam complaint webhook </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/subscription-change-webhook"> Subscription change webhook </a> </li> <li class=""> <a href="https://postmarkapp.com/developer/webhooks/smtp-api-error"> SMTP API Error </a> </li> </ul> </section> <div class="docs-toc docs-toc--mobile"> <select> <optgroup label="Overview"> <option value="/developer">Introduction</option> </optgroup> <optgroup label="Integration"> <option value="https://postmarkapp.com/developer/integration/official-libraries" selected>Official libraries</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#rails-gem" >- Rails gem</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#ruby-gem" >- Ruby gem</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#dot-net" >- .NET</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#java" >- Java</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#php" >- PHP</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#postmark-craft-plugin" >- Craft plugin</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#node-js" >- Node.js</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#postmark-cli" >- CLI</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#wordpress" >- WordPress plugin</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#grunt" >- Grunt plugin</option> <option value="https://postmarkapp.com/developer/integration/official-libraries#postmark-zapier-actions" >- Zapier Actions</option> <option value="https://postmarkapp.com/developer/integration/community-libraries" >Community libraries</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#classic-asp" >- Classic ASP</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#clojure" >- Clojure</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#coldfusion" >- ColdFusion</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#django" >- Django</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#drupal-module" >- Drupal module</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#elixir" >- Elixir</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#erlang" >- Erlang</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#google-go" >- Google Go</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#grails-plugin" >- Grails plugin</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#haskell" >- Haskell</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#java" >- Java</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#laravel" >- Laravel</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#magento-extension" >- Magento extension</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#node-js" >- Node.js</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#objective-c" >- Objective-C</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#perl-wwwpostmark" >- Perl</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#pharo-smalltalk" >- Pharo Smalltalk</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#php-5" >- PHP 5</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#powershell-snap-in" >- PowerShell Snap-in</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#python" >- Python</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#scala" >- Scala</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#swift" >- Swift</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#wordpress-plugins" >- WordPress</option> <option value="https://postmarkapp.com/developer/integration/community-libraries#zend" >- Zend</option> <option value="https://postmarkapp.com/developer/integration/other-tools-and-integrations" >Tools and Integrations</option> </optgroup> <optgroup label="User guide"> <option value="https://postmarkapp.com/developer/user-guide/send-email-with-api" >Sending email with API</option> <option value="https://postmarkapp.com/developer/user-guide/send-email-with-api/send-a-single-email" >- Send a single email</option> <option value="https://postmarkapp.com/developer/user-guide/send-email-with-api/batch-emails" >- Send batch emails</option> <option value="https://postmarkapp.com/developer/user-guide/send-email-with-smtp" >Sending email with SMTP</option> <option value="https://postmarkapp.com/developer/user-guide/inbound" >Processing email</option> <option value="https://postmarkapp.com/developer/user-guide/inbound/configure-an-inbound-server" >- Configure an inbound server</option> <option value="https://postmarkapp.com/developer/user-guide/inbound/inbound-domain-forwarding" >- Inbound domain forwarding</option> <option value="https://postmarkapp.com/developer/user-guide/inbound/parse-an-email" >- Parse an email</option> <option value="https://postmarkapp.com/developer/user-guide/inbound/configure-inbound-blocking" >- Configure inbound blocking</option> <option value="https://postmarkapp.com/developer/user-guide/inbound/sample-inbound-workflow" >- Sample inbound workflow</option> <option value="https://postmarkapp.com/developer/user-guide/tracking-opens" >Tracking opens</option> <option value="https://postmarkapp.com/developer/user-guide/tracking-opens/tracking-opens-per-message-stream" >- Tracking opens per Server</option> <option value="https://postmarkapp.com/developer/user-guide/tracking-opens/tracking-opens-per-email" >- Tracking opens per email</option> <option value="https://postmarkapp.com/developer/user-guide/tracking-opens/message-opens-api" >- Message opens API</option> <option value="https://postmarkapp.com/developer/user-guide/tracking-links" >Tracking links</option> <option value="https://postmarkapp.com/developer/user-guide/managing-your-account" >Managing your account</option> <option value="https://postmarkapp.com/developer/user-guide/managing-your-account/managing-sender-signatures" >- Managing sender signatures</option> <option value="https://postmarkapp.com/developer/user-guide/managing-your-account/managing-servers" >- Managing servers</option> <option value="https://postmarkapp.com/developer/user-guide/sandbox-mode" >Sandbox mode</option> <option value="https://postmarkapp.com/developer/user-guide/sandbox-mode/server-sandbox-mode" >- Server sandbox mode</option> <option value="https://postmarkapp.com/developer/user-guide/sandbox-mode/generate-fake-bounces" >- Generate fake bounces</option> </optgroup> <optgroup label="API reference"> <option value="https://postmarkapp.com/developer/api/overview" >Overview</option> <option value="https://postmarkapp.com/developer/api/overview#endpoint-url" >- Endpoint URL</option> <option value="https://postmarkapp.com/developer/api/overview#authentication" >- Authentication</option> <option value="https://postmarkapp.com/developer/api/overview#response-codes" >- HTTP response codes</option> <option value="https://postmarkapp.com/developer/api/overview#error-codes" >- API error codes</option> <option value="https://postmarkapp.com/developer/api/email-api" >Email</option> <option value="https://postmarkapp.com/developer/api/email-api#send-a-single-email" >- Send a single email</option> <option value="https://postmarkapp.com/developer/api/email-api#send-batch-emails" >- Send batch emails</option> <option value="https://postmarkapp.com/developer/api/bulk-email" >Bulk</option> <option value="https://postmarkapp.com/developer/api/bulk-email#send-bulk-emails" >- Send bulk emails</option> <option value="https://postmarkapp.com/developer/api/bulk-email#get-a-bulk-send-status" >- Get the status/details of a bulk API request</option> <option value="https://postmarkapp.com/developer/api/bounce-api" >Bounce</option> <option value="https://postmarkapp.com/developer/api/bounce-api#delivery-stats" >- Get delivery stats</option> <option value="https://postmarkapp.com/developer/api/bounce-api#bounces" >- Get bounces</option> <option value="https://postmarkapp.com/developer/api/bounce-api#single-bounce" >- Get a single bounce</option> <option value="https://postmarkapp.com/developer/api/bounce-api#bounce-dump" >- Get bounce dump</option> <option value="https://postmarkapp.com/developer/api/bounce-api#activate-bounce" >- Activate a bounce</option> <option value="https://postmarkapp.com/developer/api/bounce-api#bounce-types" >- Bounce types</option> <option value="https://postmarkapp.com/developer/api/bounce-api#rebound-javascript-snippet-api" >- Rebound</option> <option value="https://postmarkapp.com/developer/api/templates-api" >Templates</option> <option value="https://postmarkapp.com/developer/api/templates-api#email-with-template" >- Send email with template</option> <option value="https://postmarkapp.com/developer/api/templates-api#send-batch-with-templates" >- Send batch with templates</option> <option value="https://postmarkapp.com/developer/api/templates-api#push-templates" >- Push templates to another server</option> <option value="https://postmarkapp.com/developer/api/templates-api#get-template" >- Get a template</option> <option value="https://postmarkapp.com/developer/api/templates-api#create-template" >- Create a template</option> <option value="https://postmarkapp.com/developer/api/templates-api#edit-template" >- Edit a template</option> <option value="https://postmarkapp.com/developer/api/templates-api#list-templates" >- List templates</option> <option value="https://postmarkapp.com/developer/api/templates-api#delete-template" >- Delete a template</option> <option value="https://postmarkapp.com/developer/api/templates-api#validate-template" >- Validate a template</option> <option value="https://postmarkapp.com/developer/api/server-api" >Server</option> <option value="https://postmarkapp.com/developer/api/server-api#get-server" >- Get the server</option> <option value="https://postmarkapp.com/developer/api/server-api#edit-server" >- Edit the server</option> <option value="https://postmarkapp.com/developer/api/servers-api" >Servers</option> <option value="https://postmarkapp.com/developer/api/servers-api#get-server" >- Get a server</option> <option value="https://postmarkapp.com/developer/api/servers-api#create-server" >- Create a server</option> <option value="https://postmarkapp.com/developer/api/servers-api#edit-server" >- Edit a server</option> <option value="https://postmarkapp.com/developer/api/servers-api#list-servers" >- List servers</option> <option value="https://postmarkapp.com/developer/api/servers-api#delete-server" >- Delete a server</option> <option value="https://postmarkapp.com/developer/api/message-streams-api" >Message Streams</option> <option value="https://postmarkapp.com/developer/api/message-streams-api#list-message-streams" >- List message streams</option> <option value="https://postmarkapp.com/developer/api/message-streams-api#get-a-message-stream" >- Get a message stream</option> <option value="https://postmarkapp.com/developer/api/message-streams-api#edit-a-message-stream" >- Edit a message stream</option> <option value="https://postmarkapp.com/developer/api/message-streams-api#create-a-message-stream" >- Create a message stream</option> <option value="https://postmarkapp.com/developer/api/message-streams-api#archive-a-message-stream" >- Archive a message stream</option> <option value="https://postmarkapp.com/developer/api/message-streams-api#unarchive-a-stream" >- Unarchive a message stream</option> <option value="https://postmarkapp.com/developer/api/messages-api" >Messages</option> <option value="https://postmarkapp.com/developer/api/messages-api#outbound-message-search" >- Outbound message search</option> <option value="https://postmarkapp.com/developer/api/messages-api#outbound-message-details" >- Outbound message details</option> <option value="https://postmarkapp.com/developer/api/messages-api#outbound-message-dump" >- Outbound message dump</option> <option value="https://postmarkapp.com/developer/api/messages-api#inbound-message-search" >- Inbound message search</option> <option value="https://postmarkapp.com/developer/api/messages-api#inbound-message-details" >- Inbound message details</option> <option value="https://postmarkapp.com/developer/api/messages-api#inbound-message-bypass" >- Bypass rules for a blocked inbound message</option> <option value="https://postmarkapp.com/developer/api/messages-api#inbound-message-retry" >- Retry a failed inbound message for processing</option> <option value="https://postmarkapp.com/developer/api/messages-api#message-opens" >- Message opens</option> <option value="https://postmarkapp.com/developer/api/messages-api#opens-for-message" >- Opens for a single message</option> <option value="https://postmarkapp.com/developer/api/messages-api#message-clicks" >- Message clicks</option> <option value="https://postmarkapp.com/developer/api/messages-api#clicks-for-message" >- Clicks for a single message</option> <option value="https://postmarkapp.com/developer/api/domains-api" >Domains</option> <option value="https://postmarkapp.com/developer/api/domains-api#list-domains" >- List domains</option> <option value="https://postmarkapp.com/developer/api/domains-api#domain" >- Get domain details</option> <option value="https://postmarkapp.com/developer/api/domains-api#create-domain" >- Create domain</option> <option value="https://postmarkapp.com/developer/api/domains-api#edit-domain" >- Edit domain</option> <option value="https://postmarkapp.com/developer/api/domains-api#delete-domain" >- Delete domain</option> <option value="https://postmarkapp.com/developer/api/domains-api#domains-verify-dkim" >- Verify DKIM</option> <option value="https://postmarkapp.com/developer/api/domains-api#domains-verify-return-path" >- Verify Return-Path</option> <option value="https://postmarkapp.com/developer/api/domains-api#verify-spf" >- Verify an SPF record</option> <option value="https://postmarkapp.com/developer/api/domains-api#rotate-dkim" >- Rotate DKIM keys</option> <option value="https://postmarkapp.com/developer/api/signatures-api" >Sender signatures</option> <option value="https://postmarkapp.com/developer/api/signatures-api#list-sender-signatures" >- List sender signatures</option> <option value="https://postmarkapp.com/developer/api/signatures-api#sender-signature" >- Get sender signature</option> <option value="https://postmarkapp.com/developer/api/signatures-api#create-signature" >- Create a signature</option> <option value="https://postmarkapp.com/developer/api/signatures-api#edit-signature" >- Edit a signature</option> <option value="https://postmarkapp.com/developer/api/signatures-api#delete-signature" >- Delete a signature</option> <option value="https://postmarkapp.com/developer/api/signatures-api#resend-confirmation" >- Resend a confirmation</option> <option value="https://postmarkapp.com/developer/api/signatures-api#verify-spf" >- Verify an SPF record</option> <option value="https://postmarkapp.com/developer/api/signatures-api#request-dkim" >- Request a new DKIM</option> <option value="https://postmarkapp.com/developer/api/stats-api" >Stats</option> <option value="https://postmarkapp.com/developer/api/stats-api#overview" >- Get outbound overview</option> <option value="https://postmarkapp.com/developer/api/stats-api#sent-counts" >- Get sent counts</option> <option value="https://postmarkapp.com/developer/api/stats-api#bounce-counts" >- Get bounce counts</option> <option value="https://postmarkapp.com/developer/api/stats-api#spam-complaints" >- Get spam complaints</option> <option value="https://postmarkapp.com/developer/api/stats-api#email-tracked-count" >- Get tracked email counts</option> <option value="https://postmarkapp.com/developer/api/stats-api#email-open-counts" >- Get email open counts</option> <option value="https://postmarkapp.com/developer/api/stats-api#email-platform-usage" >- Get email platform usage</option> <option value="https://postmarkapp.com/developer/api/stats-api#email-client-usage" >- Get email client usage</option> <option value="https://postmarkapp.com/developer/api/stats-api#click-counts" >- Get click counts</option> <option value="https://postmarkapp.com/developer/api/stats-api#browser-usage" >- Get browser usage</option> <option value="https://postmarkapp.com/developer/api/stats-api#browser-platform-usage" >- Get browser platform usage</option> <option value="https://postmarkapp.com/developer/api/stats-api#click-location" >- Get click location</option> <option value="https://postmarkapp.com/developer/api/inbound-rules-triggers-api" >Triggers: Inbound rules</option> <option value="https://postmarkapp.com/developer/api/inbound-rules-triggers-api#list-triggers" >- List inbound rule triggers</option> <option value="https://postmarkapp.com/developer/api/inbound-rules-triggers-api#create-trigger" >- Create an inbound rule trigger</option> <option value="https://postmarkapp.com/developer/api/inbound-rules-triggers-api#delete-single-trigger" >- Delete a single trigger</option> <option value="https://postmarkapp.com/developer/api/webhooks-api" >Webhooks</option> <option value="https://postmarkapp.com/developer/api/webhooks-api#list-webhooks" >- List webhooks</option> <option value="https://postmarkapp.com/developer/api/webhooks-api#get-a-webhook" >- Get a webhook</option> <option value="https://postmarkapp.com/developer/api/webhooks-api#create-a-webhook" >- Create a webhook</option> <option value="https://postmarkapp.com/developer/api/webhooks-api#edit-a-webhook" >- Edit a webhook</option> <option value="https://postmarkapp.com/developer/api/webhooks-api#delete-a-webhook" >- Delete a webhook</option> <option value="https://postmarkapp.com/developer/api/suppressions-api" >Suppressions</option> <option value="https://postmarkapp.com/developer/api/suppressions-api#suppression-dump" >- Suppression dump</option> <option value="https://postmarkapp.com/developer/api/suppressions-api#create-a-suppression" >- Create a Suppression</option> <option value="https://postmarkapp.com/developer/api/suppressions-api#delete-a-suppression" >- Delete a Suppression</option> <option value="https://postmarkapp.com/developer/api/data-removals-api" >Data Removal</option> <option value="https://postmarkapp.com/developer/api/data-removals-api#create-a-data-removal-request" >- Create a Data Removal request</option> <option value="https://postmarkapp.com/developer/api/data-removals-api#check-a-data-removal-request-status" >- Check a Data Removal request status</option> </optgroup> <optgroup label="Webhooks"> <option value="https://postmarkapp.com/developer/webhooks/webhooks-overview" >Webhooks overview</option> <option value="https://postmarkapp.com/developer/webhooks/webhooks-overview#what-is-a-webhook" >- What is a webhook?</option> <option value="https://postmarkapp.com/developer/webhooks/webhooks-overview#protecting-your-webhook" >- Protecting your webhook</option> <option value="https://postmarkapp.com/developer/webhooks/webhooks-overview#testing-your-webhook" >- Testing your webhook</option> <option value="https://postmarkapp.com/developer/webhooks/webhooks-overview#retries" >- Retry attempts</option> <option value="https://postmarkapp.com/developer/webhooks/bounce-webhook" >Bounce webhook</option> <option value="https://postmarkapp.com/developer/webhooks/bounce-webhook#what-is-a-bounce-webhook" >- What is a bounce webhook?</option> <option value="https://postmarkapp.com/developer/webhooks/bounce-webhook#set-the-webhook-url" >- Set the webhook URL</option> <option value="https://postmarkapp.com/developer/webhooks/bounce-webhook#bounce-webhook-data" >- Bounce webhook data</option> <option value="https://postmarkapp.com/developer/webhooks/bounce-webhook#testing-with-curl" >- Testing with curl</option> <option value="https://postmarkapp.com/developer/webhooks/bounce-webhook#how-you-can-use-the-data" >- How you can use the data</option> <option value="https://postmarkapp.com/developer/webhooks/bounce-webhook#rebound-javascript-snippet" >- Rebound</option> <option value="https://postmarkapp.com/developer/webhooks/inbound-webhook" >Inbound webhook</option> <option value="https://postmarkapp.com/developer/webhooks/inbound-webhook#what-is-an-inbound-webhook" >- What is an inbound webhook?</option> <option value="https://postmarkapp.com/developer/webhooks/inbound-webhook#inbound-webhook-data" >- Inbound webhook data</option> <option value="https://postmarkapp.com/developer/webhooks/inbound-webhook#testing-with-curl" >- Testing with curl</option> <option value="https://postmarkapp.com/developer/webhooks/inbound-webhook#how-you-can-use-the-data" >- How you can use the data</option> <option value="https://postmarkapp.com/developer/webhooks/inbound-webhook#errors-and-retries" >- Errors and retries</option> <option value="https://postmarkapp.com/developer/webhooks/inbound-webhook#set-the-webhook-url" >- Set the webhook URL</option> <option value="https://postmarkapp.com/developer/webhooks/open-tracking-webhook" >Open tracking webhook</option> <option value="https://postmarkapp.com/developer/webhooks/open-tracking-webhook#what-is-an-open-webhook" >- What is an open webhook?</option> <option value="https://postmarkapp.com/developer/webhooks/open-tracking-webhook#set-the-webhook-url" >- Set the webhook URL</option> <option value="https://postmarkapp.com/developer/webhooks/open-tracking-webhook#open-webhook-data" >- Open webhook data</option> <option value="https://postmarkapp.com/developer/webhooks/open-tracking-webhook#testing-with-curl" >- Testing with curl</option> <option value="https://postmarkapp.com/developer/webhooks/open-tracking-webhook#how-you-can-use-the-data" >- How you can use the data</option> <option value="https://postmarkapp.com/developer/webhooks/delivery-webhook" >Delivery webhook</option> <option value="https://postmarkapp.com/developer/webhooks/delivery-webhook#what-is-a-delivery-webhook" >- What is a delivery webhook?</option> <option value="https://postmarkapp.com/developer/webhooks/delivery-webhook#set-the-webhook-url" >- Set the webhook URL</option> <option value="https://postmarkapp.com/developer/webhooks/delivery-webhook#delivery-webhook-data" >- Delivery webhook data</option> <option value="https://postmarkapp.com/developer/webhooks/delivery-webhook#testing-with-curl" >- Testing with curl</option> <option value="https://postmarkapp.com/developer/webhooks/delivery-webhook#how-you-can-use-the-data" >- How you can use the data</option> <option value="https://postmarkapp.com/developer/webhooks/click-webhook" >Click webhook</option> <option value="https://postmarkapp.com/developer/webhooks/click-webhook#what-is-a-click-webhook" >- What is a click webhook?</option> <option value="https://postmarkapp.com/developer/webhooks/click-webhook#set-the-webhook-url" >- Set the webhook URL</option> <option value="https://postmarkapp.com/developer/webhooks/click-webhook#click-webhook-data" >- Click webhook data</option> <option value="https://postmarkapp.com/developer/webhooks/click-webhook#testing-with-curl" >- Testing with curl</option> <option value="https://postmarkapp.com/developer/webhooks/click-webhook#how-you-can-use-the-data" >- How you can use the data</option> <option value="https://postmarkapp.com/developer/webhooks/spam-complaint-webhook" >Spam complaint webhook</option> <option value="https://postmarkapp.com/developer/webhooks/spam-complaint-webhook#what-is-a-spam-complaint" >- What is a spam complaint?</option> <option value="https://postmarkapp.com/developer/webhooks/spam-complaint-webhook#set-the-webhook-url" >- Set the webhook URL</option> <option value="https://postmarkapp.com/developer/webhooks/spam-complaint-webhook#spam-complaint-webhook-data" >- Spam complaint webhook data</option> <option value="https://postmarkapp.com/developer/webhooks/spam-complaint-webhook#testing-the-spam-complaint-webhook-with-curl" >- Testing the spam complaint webhook with curl</option> <option value="https://postmarkapp.com/developer/webhooks/spam-complaint-webhook#how-you-can-use-the-spam-complaint-data" >- How you can use the data</option> <option value="https://postmarkapp.com/developer/webhooks/subscription-change-webhook" >Subscription change webhook</option> <option value="https://postmarkapp.com/developer/webhooks/subscription-change-webhook#what-is-a-subscription-change" >- What is a subscription change?</option> <option value="https://postmarkapp.com/developer/webhooks/subscription-change-webhook#set-the-subscription-change-webhook-url" >- Set the subscription change webhook URL</option> <option value="https://postmarkapp.com/developer/webhooks/subscription-change-webhook#subscription-change-webhook-data" >- Subscription change webhook data</option> <option value="https://postmarkapp.com/developer/webhooks/subscription-change-webhook#testing-the-subscription-change-webhook-with-curl" >- Testing the subscription change webhook with curl</option> <option value="https://postmarkapp.com/developer/webhooks/subscription-change-webhook#how-you-can-use-the-subscription-change-data" >- How you can use the subscription change data</option> <option value="https://postmarkapp.com/developer/webhooks/smtp-api-error" >SMTP API Error</option> <option value="https://postmarkapp.com/developer/webhooks/smtp-api-error#what-is-an-smtp-api-error" >- What is an SMTP API Error</option> <option value="https://postmarkapp.com/developer/webhooks/smtp-api-error#set-smtp-api-errors-for-a-server" >- Set SMTP API Errors for a Server</option> <option value="https://postmarkapp.com/developer/webhooks/smtp-api-error#smtpi-api-error-data" >- SMTP API Error Data</option> <option value="https://postmarkapp.com/developer/webhooks/smtp-api-error#testing-the-smtp-api-error" >- Testing the SMTP API Error</option> <option value="https://postmarkapp.com/developer/webhooks/smtp-api-error#how-can-you-use-smtp-api-error" >- How can you use SMTP API Error</option> </optgroup> </select> </div> <section class="docs-content"> <div class="example-sidebar"></div> <!-- Docs Section --> <div class="docs-section docs-section--title"> <div class="docs-description"> <h1>Official Postmark libraries</h1> </div> </div> <!-- End Docs Section --> <!-- Docs Section --> <div class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <p>These libraries are maintained by the developers at Postmark and are the easiest way to integrate Postmark with your application.</p> <h4>Don’t see the library you’re looking for?</h4> <p>If you can’t find the right library, check out our <a href="/developer/integration/community-libraries">Community Libraries</a>. If you’re looking for code to use with <strong>Postmark Inbound</strong> try our <a href="/developer/user-guide/inbound/parse-an-email#code-examples">email parse code examples</a>.</p> <p>We’re building a wishlist of Postmark plugins, libraries, and integrations. If you have something you’d like to see, or would like to contribute, <a href="https://postmarkapp.com/contact">let us know</a>!</p> </div> </div> <!-- End Row --> </div> <!-- Docs Section --> <div id="rails-gem" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark Rails gem <a class="content-anchor" href="#rails-gem" title="Postmark Rails gem">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Configuring your Rails application</h4> <p>You will need the <a href="https://github.com/activecampaign/postmark-rails">Postmark Rails gem</a> for drop-in integration with ActionMailer.</p> <p>Don’t forget to run the <code>bundle install</code> command every time you change something in your Gemfile.</p> <p>The <code>postmark_settings</code> hash can contain <a href="https://github.com/activecampaign/postmark-gem#communicating-with-the-api">all options</a> supported by <code>Postmark::ApiClient</code>.</p> </div> <div class="docs-example is-faded"> <h4>Add the postmark-rails gem to your Gemfile.</h4> <pre><code class="bash">gem 'postmark-rails'</code></pre> <h4>Save your Postmark Server API token to config/secrets.yml.</h4> <pre><code class="bash">postmark_api_token: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"</code></pre> <h4>Set Postmark as your preferred mail delivery method via config/application.rb:</h4> <pre><code class="ruby">config.action_mailer.delivery_method = :postmark config.action_mailer.postmark_settings = { :api_token => Rails.application.secrets.postmark_api_token }</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Send an email</h4> <p>Here’s a simple example of how to send a single HTML email with open tracking enabled. Take a look at the <a href="https://github.com/activecampaign/postmark-rails/blob/master/README.md">README</a> for more examples.</p> </div> <div class="docs-example is-faded"> <h4>Example request</h4> <pre><code class="ruby">class TestMailer < ActionMailer::Base def hello mail( :subject => 'hello', :to => 'receiver@example.com', :from => 'sender@example.com', :html_body => '<strong>Hello from Postmark!<strong>', :track_opens => 'true' ) end end</code></pre> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="ruby-gem" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark Ruby gem <a class="content-anchor" href="#ruby-gem" title="Postmark Ruby gem">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Configuring your ruby application</h4> <p>You will need the <a href="https://github.com/activecampaign/postmark-gem">Postmark gem</a> to get started.</p> <p>If you’re using Bundler, don't forget to run the <code>bundle install</code> command every time you change something in your Gemfile.</p> </div> <div class="docs-example is-faded"> <h4>Install with Bundler</h4> <pre><code class="bash">gem 'postmark'</code></pre> <h4>Create an instance of Postmark::ApiClient</h4> <pre><code class="ruby">client = Postmark::ApiClient.new('server token')</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Send an email</h4> <p>Here’s a simple example of how to send a single HTML email with open tracking enabled. Take a look at the <a href="https://github.com/activecampaign/postmark-gem/blob/master/README.md">README</a> for more examples.</p> </div> <div class="docs-example is-faded"> <h4>Example request</h4> <pre><code class="ruby">client.deliver( from: 'sender@example.com', to: 'receiver@example.com', subject: 'hello', html_body: '<strong>Hello from Postmark!<strong>', track_opens: true )</code></pre> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="dot-net" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark .NET <a class="content-anchor" href="#dot-net" title="Postmark .NET">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Installation</h4> <p>The <a href="https://www.nuget.org/packages/Postmark/">Postmark.NET NuGet package</a> makes it easier to use the Postmark API from your .NET projects without having to build your own API calls.</p> <p>If you need a strongly-named/signed .NET dll, you can use the <a href="https://www.nuget.org/packages/Postmark-Strong/">Postmark-Strong .NET Nuget package</a> which includes the JSON.NET dependancy built-in to avoid versioning conflicts.</p> </div> <div class="docs-example is-faded"> <h4>Install with NuGet</h4> <pre><code class="bash">PM> Install-Package Postmark</code></pre> <h4>Import</h4> <pre><code class="ruby">using PostmarkDotNet;</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Send an email</h4> <p>Here’s a simple example of how to send a single HTML email with open tracking enabled. Take a look at the <a href="https://github.com/activecampaign/postmark-dotnet/wiki">wiki</a> for more examples.</p> </div> <div class="docs-example is-faded"> <h4>Example request</h4> <pre><code class="c">var message = new PostmarkMessage() { To = "recipient@example.com", From = "sender@example.com", TrackOpens = true, Subject = "A complex email", TextBody = "Plain Text Body", HtmlBody = "<html><body><img src=\"cid:embed_name.jpg\"/></body></html>", Tag = "business-message", Headers = new HeaderCollection{ {"X-CUSTOM-HEADER", "Header content"} } }; var imageContent = File.ReadAllBytes("test.jpg"); message.AddAttachment(imageContent, "test.jpg", "image/jpg", "cid:embed_name.jpg"); var client = new PostmarkClient("server token"); var sendResult = await client.SendMessageAsync(message);</code></pre> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="java" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark Java <a class="content-anchor" href="#java" title="Postmark Java">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Installation</h4> <p>The <a href="https://github.com/activecampaign/postmark-java">Postmark Java library</a> makes it easier to use the Postmark API from your Java 8+ projects without having to build your own API calls.</p> </div> <div class="docs-example is-faded"> <h4>Install with Maven</h4> <pre><code class="XML"><dependency> <groupId>com.postmarkapp</groupId> <artifactId>postmark</artifactId> <version>{version}</version> </dependency></code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Send an email</h4> <p>Here’s a simple example of how to send a single email. Take a look at the <a href="https://github.com/activecampaign/postmark-java/wiki">wiki</a> for more examples.</p> </div> <div class="docs-example is-faded"> <h4>Example request</h4> <pre><code class="Java">Message message = new Message("from@example.com", "john@example.com", "Hello from Postmark!", "Hello body"); ApiClient client = Postmark.getApiClient("server token"); MessageResponse response = client.deliverMessage(message);</code></pre> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="php" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark PHP <a class="content-anchor" href="#php" title="Postmark PHP">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Installation</h4> <p>The <a href="https://github.com/activecampaign/postmark-php">Postmark PHP</a> library is available as a Composer package on <a href="https://packagist.org/packages/wildbit/postmark-php">Packagist.org</a>.</p> </div> <div class="docs-example is-faded"> <h4>Install with composer</h4> <pre><code class="bash">composer require wildbit/postmark-php</code></pre> <h4>Import</h4> <pre><code class="php">require_once('./vendor/autoload.php'); use Postmark\PostmarkClient;</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Send an email</h4> <p>Here’s a simple example of how to send a single email. Take a look at the <a href="https://github.com/activecampaign/postmark-php/wiki">wiki</a> for more examples.</p> </div> <div class="docs-example is-faded"> <h4>Example request</h4> <pre><code class="php">$client = new PostmarkClient("server token"); $sendResult = $client->sendEmail( "sender@example.com", "receiver@example.com", "Test", "Hello from Postmark!");</code></pre> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="postmark-craft-plugin" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark Craft plugin <a class="content-anchor" href="#postmark-craft-plugin" title="Postmark Craft plugin">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Installation</h4> <p>The <a href="https://github.com/craftcms/postmark">Postmark Craft plugin</a> library is available as a Composer package on <a href="https://packagist.org/packages/craftcms/postmark">Packagist.org</a>.</p><p>You can also install the plugin via the <a href="https://plugins.craftcms.com/postmark">Craft Plugin Store</a>. </p> </div> <div class="docs-example is-faded"> <h4>Go to the project directory</h4> <pre><code class="bash">cd /path/to/my-project.test</code></pre> <h4>Install with composer</h4> <pre><code class="bash">composer require craftcms/postmark</code></pre> <h4>Tell Craft to install the plugin</h4> <pre><code class="bash">./craft install/plugin postmark</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Configuration</h4> <p>Once the Postmark Craft plugin is installed, go to <strong>Settings</strong> → <strong>Email</strong> in the Craft admin area, and change the <strong>Transport Type</strong> setting to <strong>Postmark</strong>.<strong></strong></p> <p>Then enter your <strong>Postmark Server Token</strong>. This can be found on the <strong>Server</strong> → <strong>API Tokens</strong> page within <a href="https://account.postmarkapp.com/servers" target="_blank">your Postmark account</a>.</p> <p>If you wish to send email using a custom <a href="https://postmarkapp.com/support/article/1207-how-to-create-and-send-through-message-streams" rel="nofollow">Message Stream</a>, set the <strong>Message Stream ID</strong>. (The default transactional Message Stream will be used if this is left blank.)<br></p> <p>When you’re done, hit <strong>Save.</strong><br></p> <figure><img src="https://craft-assets.postmarkapp.com/developer-docs/postmark-craft-plugin-settings.png" data-image="139788" width="100%"></figure> <p><em><strong>Tip!</strong> Your Postmark Server Token and Message Stream ID can also be set using environment variables. See <a href="https://docs.craftcms.com/v3/config/environments.html" rel="nofollow">Environmental Configuration</a> in the Craft docs to learn more about that.</em></p> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="node-js" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark Node.js <a class="content-anchor" href="#node-js" title="Postmark Node.js">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Installation</h4> <p>The <a href="https://www.npmjs.com/package/postmark">Postmark Node.js</a> library is available as an <a href="https://www.npmjs.com/">npm</a> package.</p> </div> <div class="docs-example is-faded"> <h4>Install with npm</h4> <pre><code class="bash">npm install postmark --save</code></pre> <h4>Require</h4> <pre><code class="js">var postmark = require("postmark");</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Send an email</h4> <p>Here’s a simple example of how to send a single email. Take a look at the <a href="http://activecampaign.github.io/postmark.js/">documentation</a> for more examples.</p> </div> <div class="docs-example is-faded"> <h4>Example request</h4> <pre><code class="js">var serverToken = "xxxx-xxxxx-xxxx-xxxxx-xxxxxx"; var client = new postmark.ServerClient(serverToken); client.sendEmail({ "From": "sender@example.com", "To": "receiver@example.com", "Subject": "Test", "TextBody": "Hello from Postmark!" });</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4 id="nodemailer">Nodemailer</h4> <p>You can optionally use <a href="http://github.com/ActiveCampaign/postmark-nodemailer">nodemailer</a> to send transactional emails through Postmark.</p> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="postmark-cli" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark CLI <a class="content-anchor" href="#postmark-cli" title="Postmark CLI">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <p><strong>Installation</strong></p> <p>Before you get started, install <a href="https://nodejs.org/en/" target="_blank">Node.js</a> and make sure that your Postmark <a href="https://postmarkapp.com/support/article/1008-what-are-the-account-and-server-api-tokens" target="_blank">server and account tokens</a> are handy.</p> <p>From the command line, run:</p> <pre><code>npm i postmark-cli -g</code></pre> <p>Once npm does its thing, run the <code>postmark</code> command and you will see some high-level usage details. You’re all set!</p> <p><strong>Pro tip:</strong> You’ll be asked to authenticate by entering your server or account token each time you run a command. If you prefer, you can bypass this step by supplying tokens as <a target="_blank" href="https://github.com/activecampaign/postmark-cli/wiki/Authentication">environment variables</a>.</p> <p></p> <p><strong>Usage</strong></p> <p>After installation, type <code>postmark</code> in your command line to see a list of available commands. Check out the <a href="https://github.com/activecampaign/postmark-cli/wiki">wiki</a> for instructions on how to <a href="https://github.com/activecampaign/postmark-cli/wiki/email-command">send emails</a>, <a href="https://github.com/activecampaign/postmark-cli/wiki/templates-command">manage templates</a>, or <a href="https://github.com/activecampaign/postmark-cli/wiki/servers-command">list servers</a>.</p> <pre>$ postmark Commands: postmark email <command></command> [options] Send an email postmark servers <command></command> [options] Manage your servers postmark templates <command></command> [options] Pull and push your templates Options: --version Show version number --help Show help</pre> <p></p> <p><strong>Further documentation</strong></p> <ul><li><a href="https://github.com/activecampaign/postmark-cli">GitHub repository</a></li><li><a href="https://postmarkapp.com/blog/feature-announcement-introducing-the-postmark-cli">Detailed instructions</a></li><li><a href="https://postmarkapp.com/blog/managing-your-postmark-templates-with-github-using-travis-ci-or-circleci">Managing your Postmark templates with Github using Travis CI or CircleCI</a></li></ul> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="wordpress" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark for WordPress <a class="content-anchor" href="#wordpress" title="Postmark for WordPress">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <p><a href="https://wordpress.org/plugins/postmark-approved-wordpress-plugin/">Postmark for WordPress</a> (fork on <a href="https://github.com/activecampaign/postmark-wordpress">Github</a>)</p> <h4>Installation</h4> <ol><li>Download the <a href="https://downloads.wordpress.org/plugin/postmark-approved-wordpress-plugin.zip">Postmark for WordPress Plugin</a></li><li>Upload postmark directory to your <code>/wp-content/plugins</code> directory</li><li>Activate the plugin in your WordPress admin</li><li>In the WordPress admin, go to Settings > Postmark. You will then want to insert your Postmark details.</li><li>Verify sending by entering a recipient email address you have access to and pressing the “Send Test Email” button.</li><li>Once verified, then check “Enable” to override wp_mail and send using Postmark instead.</li></ol> <p>See the <a href="https://postmarkapp.com/support/article/1138-postmark-for-wordpress-faq">FAQ</a> for answers to common questions.</p> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="grunt" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark Grunt <a class="content-anchor" href="#grunt" title="Postmark Grunt">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Installation</h4> <p>The <a href="https://www.npmjs.com/package/grunt-postmark">Postmark Grunt</a> plugin is available as an <a href="https://www.npmjs.com/">npm</a> package.</p> </div> <div class="docs-example is-faded"> <h4>Install with npm</h4> <pre><code class="bash">npm install grunt-postmark --save</code></pre> <h4>Load task in Gruntfile</h4> <pre><code class="js">grunt.loadNpmTasks("grunt-postmark");</code></pre> </div> </div> <!-- End Row --> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Send an email</h4> <p>Here’s a simple example of how to send an email. Take a look at the <a href="https://www.npmjs.com/package/grunt-postmark#postmark-task">documentation</a> for more examples.</p> </div> <div class="docs-example is-faded"> <h4>Example task</h4> <pre><code class="js">grunt.initConfig({ postmark: { options: { serverToken: "server token", from: "sender@example.com", to: "receiver@example.com", } email: { subject: "Test", src: ["email-content.html"] } } });</code></pre> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> <!-- Docs Section --> <div id="postmark-zapier-actions" class="docs-section"> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h3>Postmark Zapier Actions <a class="content-anchor" href="#postmark-zapier-actions" title="Postmark Zapier Actions">#</a></h3> </div> </div> <!-- Begin Row --> <div class="docs-row"> <div class="docs-description"> <h4>Installation</h4> <p>The Postmark Zapier Actions are available on <a href="https://zapier.com/apps/postmark/integrations" target="_blank">Zapier</a>.</p> <h4>Configuration</h4> <p>Our Zapier Actions support both Send an Email and Send an Email With Template. When integrating with a Zapier Trigger, set the data into the respective fields when Zapier prompts, like To, From, Subject, etc.<br></p> <p>If you wish to send email using a custom <a href="https://postmarkapp.com/support/article/1207-how-to-create-and-send-through-message-streams" rel="nofollow">Message Stream</a>, set the <strong>Message Stream ID</strong>. (The default transactional Message Stream will be used if this is left blank.)</p> <figure><img src="https://craft-assets.postmarkapp.com/customers/pm_zapier_3.jpg" data-image="151378" width="100%"></figure> <p></p> </div> </div> <!-- End Row --> </div> <!-- End Docs Section --> </section> </div> </div> <footer class="footer footer--developer-docs"> <div class="u-container footer_container"> <nav class="nav nav--footer " role="navigation" aria-label="Footer"> <div class="nav_group"> <h4 class="nav_heading">Product</h4> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/pricing" class="nav_link">Pricing</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/customers" class="nav_link">Customers</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/reviews" class="nav_link">Reviews</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/dedicated-ips" class="nav_link">Dedicated IPs</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/ios" class="nav_link">iOS App</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/lp/referral-partner-program" class="nav_link">Referral Partner Program</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/updates" class="nav_link nav_link--updates" data-latest-update="1731514860">Latest Updates</a> </li> </ul> </div> <div class="nav_group"> <h4 class="nav_heading">Features</h4> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/email-api" class="nav_link">Email API</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/smtp-service" class="nav_link">SMTP Service</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/message-streams" class="nav_link">Message Streams</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/transactional-email" class="nav_link">Transactional Email</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-delivery" class="nav_link">Email Delivery</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-templates" class="nav_link">Templates</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/inbound-email" class="nav_link">Inbound Email</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-analytics" class="nav_link">Analytics & Retention</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/integrations" class="nav_link">Integrations</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-webhooks" class="nav_link">Webhooks</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/security" class="nav_link">Security</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/email-experts" class="nav_link">Email Experts</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/rebound" class="nav_link">Rebound</a> </li> </ul> </div> <div class="nav_group"> <h4 class="nav_heading">Postmark For</h4> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/for/agencies" class="nav_link">Agencies</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/for/startups" class="nav_link">Startups</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/for/enterprise" class="nav_link">Enterprise</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/for/bootstrapped-startups" class="nav_link">Bootstrapped Startups</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/for/side-projects" class="nav_link">Side Projects</a> </li> <li class="nav_item"> <a href="/send-email" class="nav_link">Developers</a> </li> </ul> <h4 class="nav_heading">Postmark vs.</h4> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/compare/sendgrid-alternative" title="Compare Postmark to SendGrid" class="nav_link">SendGrid</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/compare/sparkpost-alternative" title="Compare Postmark to SparkPost" class="nav_link">SparkPost</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/compare/mailgun-alternative" title="Compare Postmark to Mailgun" class="nav_link">Mailgun</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/compare/amazon-ses-alternative" title="Compare Postmark to Amazon SES" class="nav_link">Amazon SES</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/compare/mandrill-alternative" title="Compare Postmark to Mandrill" class="nav_link">Mandrill</a> </li> </ul> </div> <div class="nav_group"> <h4 class="nav_heading">Resources</h4> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/blog" class="nav_link">Blog</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/developer" class="nav_link">API Documentation</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/manual" class="nav_link">Getting Started</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/guides" class="nav_link">Email Guides</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/postmark-express" class="nav_link">Email Comic</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/videos" class="nav_link">Videos</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/podcast" class="nav_link">Podcast</a> </li> <li class="nav_item"> <a href="https://dmarcdigests.com" target="_blank" rel="noopener" class="nav_link">DMARC Digests</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/webinars" class="nav_link">Webinars</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/labs" class="nav_link">Labs</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/migration-guides" class="nav_link">Migration Guides</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/newsletter" class="nav_link">Newsletter</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/glossary" class="nav_link">Glossary</a> </li> </ul> </div> <div class="nav_group"> <h4 class="nav_heading">Help</h4> <ul class="nav_list"> <li class="nav_item"> <a href="https://postmarkapp.com/support" class="nav_link">Support Center</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/contact" class="nav_link">Contact Support</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/talk-to-sales" class="nav_link">Talk to Sales</a> </li> <li class="nav_item"> <a href="https://status.postmarkapp.com" target="_blank" rel="noopener noreferrer" class="nav_link">Service Status</a> </li> </ul> <h4 class="nav_heading">Visit ActiveCampaign for:</h4> <ul class="nav_list"> <li class="nav_item"> <a href="https://www.activecampaign.com/marketing-automation?utm_source=postmark&utm_medium=referral&utm_campaign=postmark_web&utm_content=postmark_footer_nav" target="_blank" rel="noopener" class="nav_link">Marketing Automation</a> </li> <li class="nav_item"> <a href="https://www.activecampaign.com/sales-crm?utm_source=postmark&utm_medium=referral&utm_campaign=postmark_web&utm_content=postmark_footer_nav" target="_blank" rel="noopener" class="nav_link">CRM & Sales Automation</a> </li> <li class="nav_item"> <a href="https://www.activecampaign.com/omnichannel/landing-pages?utm_source=postmark&utm_medium=referral&utm_campaign=postmark_web&utm_content=postmark_footer_nav" target="_blank" rel="noopener" class="nav_link">Landing Pages</a> </li> <li class="nav_item"> <a href="https://www.activecampaign.com/omnichannel/sms-marketing?utm_source=postmark&utm_medium=referral&utm_campaign=postmark_web&utm_content=postmark_footer_nav" target="_blank" rel="noopener" class="nav_link">SMS Automation</a> </li> </ul> </div> </nav> <div class="u-grid u-grid--full u-grid--1of3-at-large footer_lower"> <div class="u-grid-cell"> <div class="footer_ac"> Made with <span class="footer_love">♥</span> at <a href="https://www.activecampaign.com?utm_source=postmark&utm_medium=referral&utm_campaign=postmark_web&utm_content=postmark_footer" class="footer_ac-logo" target="_blank" rel="noopener">ActiveCampaign</a></a> </div> </div> <div class="u-grid-cell u-grid-cell--2of3"> <div class="nav nav--legal"> <ul class="nav_list nav_list--legal"> <li class="nav_item"> <a href="https://postmarkapp.com/privacy-policy" class="nav_link">Privacy Policy</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/cookie-policy" class="nav_link">Cookie Policy</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/terms-of-service" class="nav_link">Terms of Service</a> </li> <li class="nav_item"> <a href="https://postmarkapp.com/eu-privacy" class="nav_link">EU Data Protection</a> </li> <li class="nav_item">© ActiveCampaign, <abbr>LLC</abbr>, 2024.</li> </ul> </div> </div> </div> </div> </footer> <button class="fake-hs-beacon hidden js-load-beacon"> <span class="fake-hs-beacon_icon"></span> <span class="fake-hs-beacon_text">Help</span> </button> <script src="https://postmarkapp.com/dist/js/landing.62373c57e4385a5bc6b5.js"></script> <script type="text/javascript"> window['GoogleAnalyticsObject'] = 'ga'; window['ga'] = window['ga'] || function() { (window['ga'].q = window['ga'].q || []).push(arguments) }; </script> <!-- Google Tag Manager --> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-PWV3TKM" width="0" height="0" style="display:none; visibility:hidden"></iframe></noscript> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-PWV3TKM');</script> <script src="https://postmarkapp.com/dist/js/developerDocs.2342df810f1f3ed97435.js"></script> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Organization", "url": "https://postmarkapp.com", "logo": "https://postmarkapp.com/images/logo-stamp-social.png", "name": "Postmark", "founder": [ { "@type": "Person", "name": "Jason VandeBoom", "jobTitle": "CEO" } ], "foundingLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "streetAddress": "1 North Dearborn St, 5th Floor", "addressLocality": "Chicago", "addressRegion": "IL", "postalCode": "60602", "addressCountry": "US" } }, "location": { "@type": "Place", "address": { "@type": "PostalAddress", "streetAddress": "1 North Dearborn St, 5th Floor", "addressLocality": "Chicago", "addressRegion": "IL", "postalCode": "60602", "addressCountry": "US" } }, "sameAs": [ "https://twitter.com/postmarkapp" ] } </script> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebSite", "name": "Postmark", "url": "https://postmarkapp.com" } </script> </body> </html>