Emailable Node Library
This is the official node wrapper for the Emailable API.
Documentation
See the Node API docs.
Installation
Install the package with:
npm install emailable --save
yarn add emailable
Usage
The library needs to be configured with your account's API key which is
available in your Emailable Dashboard. Require
it with your API key:
Setup
var emailable = require('emailable')('live_...')
import Emailable from 'emailable';
const emailable = Emailable('live_...');
Verification
emailable.verify('jarrett@emailable.com')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
Additional options
You can also pass any of the additional
options
as a second parameter to verify
.
emailable.verify('jarrett@emailable.com', { timeout: 10 })
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
Slow Email Server Handling
Some email servers are slow to respond. As a result the timeout may be reached
before we are able to complete the verification process. If this happens, the
verification will continue in the background on our servers. We recommend
sleeping for at least one second and trying your request again. Re-requesting
the same verification with the same options will not impact your credit
allocation within a 5 minute window.
{
message: 'Your request is taking longer than normal. Please send your request again.'
}
Batch Verification
Start a batch
var emails = ['jarrett@emailable.com', 'support@emailable.com', ...]
emailable.batches.verify(emails)
.then(function (response) {
console.log(response.id);
});
Additional options
You can also pass any of the additional
options
as a second parameter to verify
.
emailable.batches.verify(emails, { url: 'https://emailable.com/' }).
then(function (response) {
console.log(response.id);
});
Get the status / results of a batch
Calling batches.status
with the batch id will return the batch's status.
This will also return the results once the batch is complete.
var id = '5cfcbfdeede34200693c4319'
emailable.batches.status(id)
.then(function (response) {
console.log(response);
});
Development
Run all tests:
$ yarn install
$ yarn test
If you do not have yarn
installed, you can get it with npm install --global yarn
.
Run a single test suite without a coverage report:
$ yarn test test/verify.spec.js
Contributing
Bug reports and pull requests are welcome on GitHub at
https://github.com/emailable/emailable-node.