NumVerify の代替案: 電話検証と 150 のエンドポイント
NumVerify の料金は、電話認証だけで月額 14.99 ドルです。 Botoi は 30 か国以上の携帯電話を検証し、無料で開始できる 150 以上の開発者エンドポイントが含まれています。
電話番号を検証するには、NumVerify に月額 14.99 ドルを支払っています。 エンドポイントは 1 つ。 あなたの チェックアウトフォームにも電子メール検証が必要であり、不正行為パイプラインには IP 地理位置情報が必要です。 さらに 2 つのサブスクリプション、2 つの API キー、および 2 つの請求ダッシュボードを追加します。 NumVerify は APILayer ファミリ (ipstack、mailboxlayer、Fixer.io と同じ親) の一部です。 各製品は個別に請求されます。
ボトイさん /v1/phone エンドポイントは 30 以上の電話番号を検証して正規化します
国を E.164 形式に変換します。 これは、すべてのプランに含まれる 150 以上のエンドポイントの 1 つです。 電話
検証、電子メール検証、IP 地理位置情報、DNS ルックアップ、VPN 検出。 すべての下にあります
単一キーは月額 $0 から始まります。
並べて: NumVerify と botoi
NumVerify は、クエリ パラメータとして API キーを含む GET リクエストを使用します。 無料利用枠は、 HTTP のみ。 HTTPS には有料プランが必要です。 Botoi はベアラー認証を使用して POST リクエストを使用します 無料を含むすべてのレベルで HTTPS。
NumVerify リクエスト
curl "http://apilayer.net/api/validate?access_key=YOUR_KEY&number=14155552671"
応答:
{
"valid": true,
"number": "14155552671",
"local_format": "4155552671",
"international_format": "+14155552671",
"country_prefix": "+1",
"country_code": "US",
"country_name": "United States of America",
"location": "California",
"carrier": "AT&T Mobility LLC",
"line_type": "mobile"
}
ボトイリクエスト
curl -X POST https://api.botoi.com/v1/phone \\
-H "Content-Type: application/json" \\
-d '{"phone": "+14155552671"}'
応答:
{
"success": true,
"data": {
"phone": "+14155552671",
"valid": true,
"country_code": "+1",
"country": "United States / Canada",
"e164_format": "+14155552671",
"national_format": "4155552671"
}
}
応答フィールドの比較
どちらの API も、有効性、国、およびフォーマットされた数値を返します。 重要な違いは何ですか NumVerify には、botoi にはない機能と、botoi の広範なプラットフォームが追加する機能が含まれています。
| 分野 | NumVerify | 出版された |
|---|---|---|
| 有効なフラグ | はい | はい |
| E.164形式 | はい (international_format) |
はい (e164_format) |
| 全国フォーマット | はい (local_format) |
はい (national_format) |
| 国コード | はい | はい |
| 国名 | はい | はい |
| 場所 (州/地域) | はい | いいえ |
| キャリア名 | はい | いいえ |
| 回線種類(携帯電話/固定電話/VoIP) | はい | いいえ |
| 無料枠のHTTPS | いいえ | はい |
| HTTPメソッド | GET (URLを入力) | POST (ベアラー認証) |
NumVerify は、SMS ルーティングに重要な通信事業者と回線タイプを返します。 ボトイが帰ってくる 同じ検証フィールドとフォーマットフィールドですが、カバーすることを優先してキャリアデータをスキップします。 同じキーの下に 150 以上の他のエンドポイント カテゴリ。
英国の番号の例
curl -X POST https://api.botoi.com/v1/phone \\
-H "Content-Type: application/json" \\
-d '{"phone": "+442071234567"}'
応答:
{
"success": true,
"data": {
"phone": "+442071234567",
"valid": true,
"country_code": "+44",
"country": "United Kingdom",
"e164_format": "+442071234567",
"national_format": "2071234567"
}
}
価格比較
| プラン | NumVerify | 出版された |
|---|---|---|
| 無料 | 100 リクエスト/月、HTTP のみ、電話のみ | 100 リクエスト/日、HTTPS、150 以上のすべてのエンドポイント、サインアップなし |
| ベーシック / スターター | $14.99/月、5,000 リクエスト、電話のみ | $9/月、300,000 リクエスト、すべてのエンドポイント |
| プロ | $49.99/月、50,000 リクエスト、電話のみ | $29/月、1,000,000 リクエスト、すべてのエンドポイント |
| 企業 | $99.99/月、250,000 リクエスト、電話のみ | $49/月、3,000,000 リクエスト、すべてのエンドポイント |
NumVerify の月額 14.99 ドルの基本プランでは、5,000 件の電話検証リクエストが提供されます。 ボトイさん 月額 9 ドルのスターター プランでは、電話認証、メール認証で 300,000 件のリクエストが可能 検証、IP 地理位置情報、DNS ルックアップ、その他すべてのエンドポイント。 数学がさらに楽しくなる 機能を追加すると偏ってしまいます。
NumVerify の無料枠では、プレーン HTTP 経由で URL 内の API キーが送信されます。 つまり、あなたの キーはサーバー ログ、プロキシ ログ、ブラウザ履歴に表示されます。 Botoi は POST を使用します すべての層で HTTPS 経由のベアラー認証。
1 つの Botoi キーで他に何が得られるか
NumVerify は、電話認証用の 1 つの API を提供します。 Botoi キーは 150 以上のエンドポイントのロックを解除します。 電話認証を使用する場合と同じワークフローに最も関連するものは次のとおりです。
-
電子メールの検証 (
/v1/email/validate) 構文をチェックします。 MX レコードを検証し、使い捨てプロバイダーにフラグを立てます。 検証する同じサインアップフォーム 電話番号を使用すると、同じリクエスト バッチで電子メールを検証できます。 -
使い捨てメールの検出 (
/v1/disposable-email/check) Guerrilla Mail、Mailinator、その他 5,000 以上のプロバイダーからの使い捨てアドレスを捕捉します。 -
IP地理位置情報 (
/v1/ip/lookup) 都市、地域を返します。 発信者の IP の国、座標、タイムゾーン。 通貨のデフォルトに使用し、 GDPR 準拠チェック。 -
VPNの検出 (
/v1/vpn-detect) VPN、プロキシ、Tor、および データセンター接続とリスクスコア。 サインアップ時の不正防止のために重要です。 -
DNSセキュリティ (
/v1/dns-security/spf-check、/v1/dns-security/dmarc-check)電子メール認証記録を監査します。 ドメイン。
NumVerify の価格モデルでは、電子メール検証を追加するということは、mailboxlayer にサブスクライブすることを意味します。 (月額 14.99 ドル)。 IP 地理位置情報を追加するには、ipstack (月額 9.99 ドル) に登録することを意味します。 それぞれ 新しい機能とは、新しい API キー、新しいダッシュボード、請求書の新しい項目です。 botoi を使用すると、同じキーと同じ月額料金がかかります。
移行: Express で NumVerify を botoi に交換します
ここでは、NumVerify を使用した一般的なサインアップ ルートと、その後に botoi を使用した同じルートを示します。 移行には、HTTP メソッド (GET から POST)、URL、および応答フィールドの 3 つの変更が含まれます。 名前。
前 (NumVerify)
// BEFORE: NumVerify (GET, HTTP only on free tier)
app.post("/signup", async (req, res) => {
const phone = req.body.phone.replace(/[^0-9]/g, "");
const numverify = await fetch(
\`http://apilayer.net/api/validate?access_key=\${NUMVERIFY_KEY}&number=\${phone}\`
).then((r) => r.json());
if (!numverify.valid) {
return res.status(422).json({ error: "Invalid phone number" });
}
await db.users.create({
phone: numverify.international_format,
carrier: numverify.carrier,
country: numverify.country_name,
});
res.status(201).json({ ok: true });
});
後(公開後)
// AFTER: Botoi (POST, HTTPS, no API key needed for free tier)
app.post("/signup", async (req, res) => {
const phone = req.body.phone;
const botoi = await fetch("https://api.botoi.com/v1/phone", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ phone }),
}).then((r) => r.json());
if (!botoi.data.valid) {
return res.status(422).json({ error: "Invalid phone number" });
}
await db.users.create({
phone: botoi.data.e164_format,
country: botoi.data.country,
});
res.status(201).json({ ok: true });
});
botoi バージョンでは、API がスペースを処理するため、正規表現のサニタイズ手順が削除されます。
入力内のダッシュと括弧。 生のユーザー入力を送信します。 +
プレフィックスを付けてクリーンな E.164 文字列を取得します。 の carrier フィールドがなくなってしまいました。 もしあなたが
保存していましたが、ルーティングの決定には使用していなかった場合でも、見逃すことはありません。
電話、電子メール、不正行為チェックを 1 つの機能に統合
単一キー モデルは、サインアップ フォームに複数の検証が必要な場合に効果を発揮します。 この機能 1 つの API キーを使用して 4 つのチェックを並行して実行します。
const BOTOI = "https://api.botoi.com/v1";
const headers = {
"Content-Type": "application/json",
"Authorization": \`Bearer \${process.env.BOTOI_API_KEY}\`,
};
async function validateSignup(email, phone, ip) {
const [emailCheck, phoneCheck, disposableCheck, vpnCheck] =
await Promise.all([
fetch(\`\${BOTOI}/email/validate\`, {
method: "POST",
headers,
body: JSON.stringify({ email }),
}).then((r) => r.json()),
fetch(\`\${BOTOI}/phone\`, {
method: "POST",
headers,
body: JSON.stringify({ phone }),
}).then((r) => r.json()),
fetch(\`\${BOTOI}/disposable-email/check\`, {
method: "POST",
headers,
body: JSON.stringify({ email }),
}).then((r) => r.json()),
fetch(\`\${BOTOI}/vpn-detect\`, {
method: "POST",
headers,
}).then((r) => r.json()),
]);
return {
emailValid: emailCheck.data.valid,
disposable: disposableCheck.data.disposable,
phoneValid: phoneCheck.data.valid,
phoneE164: phoneCheck.data.e164_format,
phoneCountry: phoneCheck.data.country,
vpn: vpnCheck.data.isVpn,
riskScore: vpnCheck.data.riskScore,
};
}
// One key, four checks, one billing dashboard
const result = await validateSignup(
"buyer@company.io",
"+14155552671",
"203.0.113.42"
);
console.log(result);
NumVerify + mailboxlayer + ipstack では、この関数には 3 つの API キーのうち 3 つが必要になります。 ダッシュボード。 botoi では、1 つのキー、1 つの請求書、1 つのクォータで 4 つのエンドポイントすべてをカバーします。
NumVerify を使用する場合
NumVerify は、次の 2 つのシナリオでより良い選択です。
-
SMS ルーティングにはキャリア検出が必要です。 アプリが次のいずれかを選択する場合
Twilio と通信事業者に基づくローカル SMS ゲートウェイ (例: AT&T 番号のルーティング)
あるプロバイダー経由で、T-Mobile 経由で別のプロバイダー経由で)、NumVerify の
carrierそしてline_typeフィールドは必須です。 Botoi はキャリアデータを返しません。 -
線種の分類が必要です。 製品の料金が異なる場合
携帯電話番号、固定電話番号、VoIP 番号 (電気通信の請求で一般的)、NumVerify の番号
line_type現場がそのロジックを動かします。 Botoi は番号が有効だと言いますが、 携帯電話か固定電話かではありません。
ユースケースが「形式を検証し、E.164 に正規化し、国を検出する」である場合、 ボトイがそれをカバーします。 ユースケースが「ルーティング用の通信事業者と回線タイプを決定する」の場合 決定」、NumVerify にはその軸に関するより詳細なデータがあります。
両方を混合することもできます。一致するかそれを超える 150 を超えるエンドポイントには botoi を使用します。 NumVerify のカバレッジ。データがドライブする場合はキャリア固有の検索用に NumVerify を保持します。 アプリ内のビジネス ロジック。
重要なポイント
- NumVerify は、1 回の 5,000 件の電話検証リクエストに対して月額 14.99 ドルを請求します。 エンドポイント。 HTTPS を使用しない場合、無料枠の上限は 100 リクエスト/月です。
-
ボトイさん
/v1/phoneエンドポイントは同じ検証と E.164 を返します。 書式設定。 無料枠には、サインアップなしの HTTPS 経由の 1 日あたり 100 リクエストが含まれます。 - Botoi の月額 9 ドルのプランには、150 以上のエンドポイントすべてにわたる 300,000 件のリクエストが含まれています。 NumVerify の 月額 14.99 ドルのプランには、電話認証のみの 5,000 件のリクエストが含まれます。
- NumVerify は通信事業者名と回線タイプを返します。 ボトイはそうではありません。 キャリア検出の場合 はアプリ内で SMS ルーティングを推進しますが、NumVerify はより特殊化されています。
- より大きな勝利は統合です。 電話認証、電子メール認証、IP 地理位置情報、 VPN 検出、DNS セキュリティ、および 145 個以上のエンドポイントを 1 つの API キーと 1 つの請求書で管理します。
FAQ
- 電話認証に NumVerify に代わる無料の代替手段はありますか?
- はい。 Botoi の /v1/phone エンドポイントは、国際電話番号を検証し、E.164 形式、国内形式、国コード、および国名を返します。 無料枠では、サインアップ不要で HTTPS 経由で 1 分あたり 5 リクエスト、1 日あたり 100 リクエストが許可されます。 NumVerify の無料プランでは、月あたり 100 リクエストが上限となり、HTTP に制限されます。
- botoi は NumVerify のようなキャリアデータを返しますか?
- いいえ。NumVerify は通信事業者名 (AT&T Mobility など) と回線タイプ (携帯電話、固定電話、VoIP) を返します。 Botoi の /v1/phone エンドポイントは、検証と E.164 正規化に重点を置いています。 キャリア検出が SMS ルーティング ロジックを駆動する場合、NumVerify はその特定のユースケースについてより詳細なデータを提供します。
- botoi はどのような電話番号形式を想定していますか?
- Botoi の /v1/phone エンドポイントは、+ プレフィックスと国コードで始まる国際形式の番号を想定しています。 たとえば、米国の場合は +14155552671、英国の場合は +442071234567 です。 + プレフィックスのない数値は、期待される形式を説明するメモとともに valid: false を返します。
- Botoi の無料利用枠には何件のリクエストが含まれますか?
- 無料枠では、IP ベースのレート制限により、すべてのエンドポイントで 1 分あたり 5 リクエスト、1 日あたり 100 リクエストが許可されます。 API キー、サインアップ、クレジット カードは必要ありません。 有料プランは、150 以上のエンドポイントすべてにわたる 300,000 リクエストの場合、月額 9 ドルから始まります。
- バックエンドを変更せずに NumVerify を botoi に置き換えることはできますか?
- HTTP メソッド (GET ではなく POST)、URL (api.botoi.com/v1/phone)、および応答フィールド名 (international_format の代わりに e164_format、country_name の代わりに country) を更新する必要があります。 移行には、統合ポイントごとに 10 ~ 15 分かかります。 このガイドにはコード例が含まれています。
botoiで開発を始めよう
150以上のAPIエンドポイント。検索、テキスト処理、画像生成、開発者ユーティリティに対応。無料プラン、クレジットカード不要。