neverbounce
Version:
An API wrapper for the NeverBounce API
60 lines (59 loc) • 2.56 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
});
// Search parameters
const searchParams = {
// job_id: 10000, // Filter jobs based on id
// page: 1, // Page to start from
// per_page: 10, // Number of items per page
};
// Search jobs
client.jobs.search(searchParams)
.then((resp) => {
console.log('[THEN] Jobs Returned: ' + resp.results.length);
console.log('[THEN] Job IDs: ' + resp.results.map(job => job.id));
})
.catch((err) => console.log('[THEN] ERROR: ' + err.message));
// Alternative using async/await
async function searchJobs(params = {}) {
try {
const response = await client.jobs.search(params);
console.log('[ASYNC] Jobs search completed successfully!');
console.log(`[ASYNC] Total jobs found: ${response.total_results}`);
console.log(`[ASYNC] Total pages: ${response.total_pages}`);
console.log(`[ASYNC] Current page: ${response.query.page}`);
// Display the jobs
if (response.results.length > 0) {
console.log('\n[ASYNC] Jobs:');
response.results.forEach((job, index) => {
console.log(`[ASYNC] ${index + 1}. ID: ${job.id}, Filename: ${job.filename}, Status: ${job.job_status}`);
console.log(`[ASYNC] Created: ${job.created_at}, Total: ${job.total}, Processed: ${job.total.processed}`);
console.log(`[ASYNC] Valid: ${job.total.valid}, Invalid: ${job.total.invalid}, Catchall: ${job.total.catchall}, Disposable: ${job.total.disposable}, Unknown: ${job.total.unknown}`);
console.log('[ASYNC] ---');
});
}
else {
console.log('[ASYNC] No jobs found.');
}
}
catch (err) {
if (err instanceof Error) {
console.error('[ASYNC] Error searching jobs:', err.message);
}
else {
console.error('[ASYNC] Unknown error occurred');
}
}
}
// Run the async version with specific search parameters
searchJobs({ page: 1, per_page: 5 });