https://github.com/postalserver/postal-node
A Node.js library for the Postal mail platform
https://github.com/postalserver/postal-node
Last synced: 8 months ago
JSON representation
A Node.js library for the Postal mail platform
- Host: GitHub
- URL: https://github.com/postalserver/postal-node
- Owner: postalserver
- Created: 2017-04-20T15:29:27.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-07-07T01:02:07.000Z (over 2 years ago)
- Last Synced: 2025-04-08T19:46:45.226Z (9 months ago)
- Language: JavaScript
- Size: 4.88 KB
- Stars: 65
- Watchers: 5
- Forks: 20
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Postal for Node
This library helps you send e-mails through the open source mail delivery
platform, [Postal](https://github.com/atech/postal) in Node.
## Installation
Install the library using [NPM](https://www.npmjs.com/):
```
$ npm install @atech/postal --save
```
## Usage
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.
```javascript
// 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('john@example.com');
message.to('mary@example.com');
message.cc('mike@example.com');
message.bcc('secret@awesomeapp.com');
// Specify who the message should be from - this must be from a verified domain
// on your mail server
message.from('test@test.postal.io');
// Set the subject
message.subject('Hi there!');
// Set the content for the e-mail
message.plainBody('Hello world!');
message.htmlBody('
Hello world!
');
// 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);
});
```