neverbounce
Version:
An API wrapper for the NeverBounce API
61 lines (60 loc) • 2.09 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const NeverBounce_js_1 = __importDefault(require("../src/NeverBounce.js"));
const dotenv_1 = __importDefault(require("dotenv"));
// Load environment variables from .local.env file
dotenv_1.default.config();
// Initialize NeverBounce client with API key from environment variables
const client = new NeverBounce_js_1.default({
apiKey: process.env.NEVERBOUNCE_API_KEY
});
// Verify a list of emails
client.jobs.create([
{
id: '12345',
email: 'support@neverbounce.com',
name: 'Fred McValid'
},
{
id: '12346',
email: 'invalid@neverbounce.com',
name: 'Bob McInvalid'
}
], NeverBounce_js_1.default.job.inputType.supplied, // Either `supplied` or `remote_url`
'Created from Array.csv', // Friendly name that can be used to identify job
false, true)
.then((resp) => console.log('[THEN] Job ID: ' + resp.job_id))
.catch((err) => console.log('[THEN] ERROR: ' + err.message));
// Alternative using async/await
async function createJob() {
try {
const emails = [
{
id: '12345',
email: 'support@neverbounce.com',
name: 'Fred McValid'
},
{
id: '12346',
email: 'invalid@neverbounce.com',
name: 'Bob McInvalid'
}
];
const result = await client.jobs.create(emails, NeverBounce_js_1.default.job.inputType.supplied, 'Created from Array.csv', false, true);
console.log('[ASYNC] Job created successfully!');
console.log('[ASYNC] Job ID:', result.job_id);
}
catch (err) {
if (err instanceof Error) {
console.error('[ASYNC] Error creating job:', err.message);
}
else {
console.error('[ASYNC] Unknown error occurred');
}
}
}
// Run the async version
createJob();