All Projects → reacherhq → reacher-js

reacherhq / reacher-js

Licence: Apache-2.0 license
TypeScript wrapper library over Reacher API

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to reacher-js

NeverBounceAPI-PHP
This package provides convenient methods to integrate the NeverBounce API into your project.
Stars: ✭ 22 (-8.33%)
Mutual labels:  email-validation, email-verification
Moonmail
Email marketing platform for bulk emailing via Amazon SES (Google Cloud Platform and Azure coming soon)
Stars: ✭ 1,766 (+7258.33%)
Mutual labels:  email-validation, email-verification
email-checker
Provides email verification on the go.
Stars: ✭ 116 (+383.33%)
Mutual labels:  email-validation, email-verification
EmailValidator.NET
C# SMTP and format email validator
Stars: ✭ 23 (-4.17%)
Mutual labels:  email-validation
Mailinator-Domains
A list of alternative domains that point to @mailinator.com / extracted from www.bdea.cc
Stars: ✭ 58 (+141.67%)
Mutual labels:  email-validation
Server Accepts Email
Check if an SMTP server accepts emails to a given address
Stars: ✭ 24 (+0%)
Mutual labels:  email-validation
Email address
The EmailAddress Gem to work with and validate email addresses.
Stars: ✭ 199 (+729.17%)
Mutual labels:  email-validation
EmailValidationPascal
Simple Class for Validating Email Address Syntax in Pascal/Delphi
Stars: ✭ 32 (+33.33%)
Mutual labels:  email-validation
Validatetor
Android library for fast and simple string validation
Stars: ✭ 136 (+466.67%)
Mutual labels:  email-validation
Truemail
🚀 Configurable framework agnostic plain Ruby 📨 email validator/verifier. Verify email via Regex, DNS and SMTP. Be sure that email address valid and exists.
Stars: ✭ 717 (+2887.5%)
Mutual labels:  email-validation
Swiftcop
SwiftCop is a validation library fully written in Swift and inspired by the clarity of Ruby On Rails Active Record validations.
Stars: ✭ 544 (+2166.67%)
Mutual labels:  email-validation
Smtp Validate Email
A PHP library for performing email addresses validation via SMTP
Stars: ✭ 353 (+1370.83%)
Mutual labels:  email-validation
Th3inspector
Th3Inspector 🕵️ Best Tool For Information Gathering 🔎
Stars: ✭ 1,041 (+4237.5%)
Mutual labels:  email-validation
Mailchecker
📫 Cross-language temporary (disposable/throwaway) email detection library. Covers 33600 fake email providers.
Stars: ✭ 1,252 (+5116.67%)
Mutual labels:  email-validation
Check If Email Exists
Check if an email address exists without sending any email, written in Rust.
Stars: ✭ 497 (+1970.83%)
Mutual labels:  email-validation
Anchorme.js
Tiny, fast, efficient, feature rich Javascript library to detect links / URLs / Emails in text and convert them to clickable HTML anchor links
Stars: ✭ 479 (+1895.83%)
Mutual labels:  email-validation
Laravel User Verification
PHP package built for Laravel 5.* to easily handle a user email verification and validate the email
Stars: ✭ 755 (+3045.83%)
Mutual labels:  email-validation
Email Validation Tool
An easy to use, accurate-ish & extensible email validation library for PHP 7+ 📧
Stars: ✭ 250 (+941.67%)
Mutual labels:  email-validation
Emailvalidation
A simple (but correct) .NET class for validating email addresses
Stars: ✭ 171 (+612.5%)
Mutual labels:  email-validation
Laravel Email Verification
Laravel package to handle user verification using an activation mail
Stars: ✭ 63 (+162.5%)
Mutual labels:  email-validation



@reacherhq/api

Check if an email address exists without sending any email.

npm Github Actions Apache-2.0 Github Sponsor



What is it?

Check if an email address exists without sending any email.

@reacherhq/api is a thin TypeScript wrapper around the Reacher Email Verification API. Reacher is a 100% open-source SaaS, written in Rust. It's also free for personal use, and the API token in @reacherhq/api is optional, but without it the requests will be rate-limited to 50 per month.

Usage

Install the package:

yarn add @reacherhq/api # Or npm install @reacherhq/api

There are two ways to use the library: by sending single API requests, or by using batch verification (parallel queue).

1. Single Email Verification

import { checkSingle } from '@reacherhq/api';

checkSingle(
	{ to_email: '[email protected]' },
	{
		// Required.
		apiToken: '<YOUR_TOKEN>',
	}
).then(console.log); // Output will be the JSON described in the "JSON Output" section below.

2. Batch Email Verification

import { batchQueue } from '@reacherhq/api';

// Create a queue for email verifications.
const q = batchQueue({
	// Required.
	apiToken: '<YOUR_TOKEN>',
	// Optional, callback to call on each successful verification.
	onSuccessSingle: (result) => {
		console.log(
			`Verified email ${result.input}: the result is ${result.is_reachable}.`
		);
	},
});

// Push some data into the queue. The email verification will start as soon as
// it's in the queue. The queue has a default concurrency of 100.
q.push({ to_email: '[email protected]' });
q.push({ to_email: '[email protected]' }, { to_email: '[email protected]' });

// Perform some action when the queue is drained.
q.drain(() => {
	console.log('Finished processing all items.');
});

JSON Output

The output will be a JSON with the below format, the fields should be self-explanatory. For [email protected] (note that it is disabled by Gmail), here's the exact output:

{
	"input": "[email protected]",
	"is_reachable": "invalid",
	"misc": {
		"is_disposable": false,
		"is_role_account": false
	},
	"mx": {
		"accepts_mail": true,
		"records": [
			"alt3.gmail-smtp-in.l.google.com.",
			"gmail-smtp-in.l.google.com.",
			"alt1.gmail-smtp-in.l.google.com.",
			"alt4.gmail-smtp-in.l.google.com.",
			"alt2.gmail-smtp-in.l.google.com."
		]
	},
	"smtp": {
		"can_connect_smtp": true,
		"has_full_inbox": false,
		"is_catch_all": false,
		"is_deliverable": false,
		"is_disabled": true
	},
	"syntax": {
		"domain": "gmail.com",
		"is_valid_syntax": true,
		"username": "someone"
	}
}

You can also take a look at the OpenAPI v3 specification of this JSON object.

License

The source code is available under the Apache-2.0 license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].