This library helps you send e-mails through the open source mail delivery platform, Postal in Node.
Install the library using NPM:
$ npm install @atech/postal --save
Sending an email is very simple. Just follow the example below. Before you can begin, you'll need to login to your installation's web interface and generate new API credentials.
// Include the Postal library
var Postal = require('@atech/postal');
// Create a new Postal client using a server key generated using your
// installation's web interface
var client = new Postal.Client('https://postal.yourdomain.com', 'your-api-key');
// Create a new message
var message = new Postal.SendMessage(client);
// Add some recipients
message.to('[email protected]');
message.to('[email protected]');
message.cc('[email protected]');
message.bcc('[email protected]');
// Specify who the message should be from - this must be from a verified domain
// on your mail server
message.from('[email protected]');
// Set the subject
message.subject('Hi there!');
// Set the content for the e-mail
message.plainBody('Hello world!');
message.htmlBody('<p>Hello world!</p>');
// Add any custom headers
message.header('X-PHP-Test', 'value');
// Attach any files
message.attach('textmessage.txt', 'text/plain', 'Hello world!');
// Send the message and get the result
message.send()
.then(function (result) {
var recipients = result.recipients();
// Loop through each of the recipients to get the message ID
for (var email in recipients) {
var message = recipients[email];
console.log(message.id()); // Logs the message ID
console.log(message.token()); // Logs the message's token
}
}).catch(function (error) {
// Do something with the error
console.log(error.code);
console.log(error.message);
});