@oppulence/reacher-sdk
v4.0.0
Published
TypeScript SDK for Reacher Email Verification API
Maintainers
Readme
@oppulence/reacher-sdk
Official TypeScript SDK for the Reacher Email Verification API. Auto-generated from the OpenAPI specification.
Installation
npm install @oppulence/reacher-sdk
# or
yarn add @oppulence/reacher-sdk
# or
pnpm add @oppulence/reacher-sdkQuick Start
import { Configuration, DefaultApi } from '@oppulence/reacher-sdk';
// Initialize the client
const config = new Configuration({
basePath: 'https://api.reacher.email',
baseOptions: {
headers: {
'Authorization': 'YOUR_API_KEY'
}
}
});
const api = new DefaultApi(config);
// Verify a single email
async function verifyEmail() {
try {
const result = await api.postV1CheckEmail({
checkEmailRequest: {
toEmail: '[email protected]'
}
});
console.log('Verification result:', result.data);
console.log('Is reachable:', result.data.isReachable);
} catch (error) {
console.error('Verification failed:', error);
}
}
// Bulk email verification
async function bulkVerify() {
// Start bulk job
const bulkResult = await api.postV1Bulk({
postV1BulkRequest: {
input: ['[email protected]', '[email protected]']
}
});
const jobId = bulkResult.data.jobId;
console.log('Bulk job started:', jobId);
// Check progress
const progress = await api.getV1Bulk({ jobId });
console.log('Progress:', progress.data.totalProcessed, '/', progress.data.totalRecords);
// Get results when completed
if (progress.data.jobStatus === 'Completed') {
const results = await api.getV1BulkResults({ jobId: String(jobId) });
console.log('Results:', results.data);
}
}API Reference
Single Email Verification
const result = await api.postV1CheckEmail({
checkEmailRequest: {
toEmail: '[email protected]',
fromEmail: '[email protected]', // Optional
helloName: 'yourdomain.com', // Optional
smtpPort: 25, // Optional
checkGravatar: true, // Optional
proxy: { // Optional
host: 'proxy.example.com',
port: 1080,
username: 'user',
password: 'pass'
}
}
});Response Types
interface CheckEmailOutput {
input: string;
isReachable: 'safe' | 'risky' | 'invalid' | 'unknown';
misc: MiscDetails | CoreError;
mx: MxDetails | CoreError;
smtp: SmtpDetails | CoreError;
syntax: SyntaxDetails;
debug?: DebugDetails;
}Configuration Options
const config = new Configuration({
basePath: 'https://api.reacher.email', // API base URL
baseOptions: {
headers: {
'Authorization': 'YOUR_API_KEY' // Required for all requests
},
timeout: 30000 // Optional timeout
}
});Error Handling
import { AxiosError } from 'axios';
try {
const result = await api.postV1CheckEmail({ ... });
} catch (error) {
if (error instanceof AxiosError) {
console.error('HTTP Error:', error.response?.status);
console.error('Message:', error.response?.data);
}
}License
MIT
