What is postmark?
Postmark is an npm package that provides a simple and efficient way to send emails through the Postmark email service. It offers functionalities for sending transactional emails, managing email templates, and handling email events.
What are postmark's main functionalities?
Send Email
This feature allows you to send a simple email using the Postmark service. You need to initialize the Postmark client with your server API token and then use the `sendEmail` method to send an email.
const postmark = require('postmark');
const client = new postmark.ServerClient('your-server-api-token');
client.sendEmail({
'From': 'sender@example.com',
'To': 'recipient@example.com',
'Subject': 'Test Email',
'TextBody': 'Hello from Postmark!'
});
Send Email with Template
This feature allows you to send an email using a predefined template. You need to specify the template ID and provide the template model data.
const postmark = require('postmark');
const client = new postmark.ServerClient('your-server-api-token');
client.sendEmailWithTemplate({
'From': 'sender@example.com',
'To': 'recipient@example.com',
'TemplateId': 123456,
'TemplateModel': {
'name': 'John Doe',
'product_name': 'Awesome Product'
}
});
Get Email Delivery Statistics
This feature allows you to retrieve email delivery statistics from Postmark. The `getDeliveryStatistics` method returns various metrics related to email delivery.
const postmark = require('postmark');
const client = new postmark.ServerClient('your-server-api-token');
client.getDeliveryStatistics().then((stats) => {
console.log(stats);
});
Other packages similar to postmark
nodemailer
Nodemailer is a popular npm package for sending emails. Unlike Postmark, which is a service-specific client, Nodemailer is a general-purpose email sending library that can be used with various email services, including SMTP, AWS SES, and more.
sendgrid
SendGrid is another email service provider with an npm package for sending emails. Similar to Postmark, SendGrid offers functionalities for sending transactional emails, managing templates, and handling email events. However, SendGrid is known for its scalability and extensive API features.
mailgun-js
Mailgun-js is an npm package for interacting with the Mailgun email service. It provides similar functionalities to Postmark, such as sending emails, managing templates, and handling events. Mailgun is known for its powerful email validation and analytics features.
Postmark.js -- Simple Email Sending
Note: This was recently updated to run directly on node.js 0.4.0 so there are no other dependencies. If you were using this before, it should upgrade perfectly fine without any change.
Send emails with the greatest of ease! Now your node.js application can send emails through Postmark using their HTTP API. To send any email, including attachments, all you need to do is this:
var postmark = require("postmark")("YOURAPIKEY");
postmark.send({
"From": "donotreply@example.com",
"To": "target@example.us",
"Subject": "Test",
"TextBody": "Test Message"
});
Replace YOURAPIKEY with the API key provided by Postmark and you are good to go! Your message must be provided in the format specified in the (Postmark API)[http://developer.postmarkapp.com/developer-build.html#message-format] and will be verified. If you provide the object in a manner not as specified (including case sensitivity), an exception will be thrown. If there is an issue with the submission it will be thrown as an exception as well with information necessary for you to understand what went wrong.
To send attachments with the email, use the following format:
var postmark = require("postmark")("YOURAPIKEY");
postmark.send({
"From": "donotreply@example.com",
"To": "target@example.us",
"Subject": "Test",
"TextBody": "Test Message",
"Attachments": [{
"Content": File.readFileSync("./unicorns.jpg").toString('base64'),
"Name": "PrettyUnicorn.jpg",
"ContentType": "image/jpeg"
}]
});
Enjoy sending.
Install
npm install postmark
Special Thanks