Verify移行ガイド
Verifyからの移行は、以下のガイドを参考にしてください。 レガシー への Verify.このためには、新しいバージョンを呼び出すようにエンドポイントURLを更新し、アプリケーションの設定を変更する必要があります。Verifyの使用を開始するために、事前登録フォームに入力する必要はありません。
概要
Vonage Verify API は、開発者が二要素認証 (2FA) を実装し、不正行為から保護し、ユーザの信頼性を確保できるようにするサービスです。 VonageはこのAPIに2つのバージョンを提供しています:レガシーと現在のVerifyである。両方のバージョンは同じ主な機能を果たしますが、その特徴、機能、および 両者の特徴、機能、使用方法には大きな違いがある。
大きな違い
- 柔軟性とカスタマイズ:Verifyは、レガシーと比較して、より柔軟なワークフロー作成と、より機能豊富なカスタムテンプレート管理システムなどの強化されたカスタマイズオプションを提供します。
- チャンネルサポート:Verifyには、Silent Auth、RCS、WhatsApp、Eメールなど、様々な新しいチャネルを通じた認証のサポートが追加されました。
- セキュリティ機能:Verifyには、セキュリティ機能の向上と最新規格への準拠が含まれるようになりました。
- 詐欺防止:ベリファイ・レガシーから新しいベリファイAPIに移行した顧客は、以下の保護とアクセスを得ることができる。 Vonage Fraud Defender Advanced 追加料金なし。
- エラー処理:Verifyは、より詳細なエラーメッセージを提供し、より高度なレート制限や自動再試行メカニズムなど、ハンドリングが改善されました。
- APIの設計と統合:Verifyは同期と非同期の両方の統合パターンをサポートしています。
機能比較
| 特徴/機能 | ベリファイ(レガシー) | Verify |
|---|---|---|
| 基本的な検証 | SMS、音声 | サイレント認証、RCS、SMS、音声、Eメール、WhatsApp |
| リクエストIDの取り扱い | 基本リクエストIDシステム | より多くのメタデータによるリクエストID追跡の強化 |
| カスタム・ワークフロー設定 | 限定 | 複数のチャンネル構成を含む広範囲 |
| 暗証番号の有効期限管理 | 設定可能だが制限あり(60~3600秒) | 暗証番号の有効期限とイベントのタイミングをより細かく制御 |
| セキュリティ・コンプライアンス | 旧規格に準拠したベーシックなもの | 最新のセキュリティ標準に準拠した先進性 |
| エラー処理 | 基本的なエラーメッセージ | エラーコードを含む詳細なエラーメッセージ |
| レート制限 | 基本レートの制限 | レート制限メカニズムの改善 |
| リトライの仕組み | 失敗時の基本リトライ | カスタマイズ可能な再試行ワークフローを備えた高度な再試行ロジック |
| 分析とレポート | 限られたレポート機能 | 強化された分析と詳細なレポート |
| ローカリゼーション・サポート | 基本的なローカリゼーション(限定言語) | より多くの言語とカスタムメッセージによるローカリゼーションの強化 |
| APIドキュメンテーションとサポート | 包括的だが古い文書 | 現代的で詳細な、よりユーザーフレンドリーなドキュメント |
APIコール
非同期モードがVerifyに導入され、メッセージやコールステータスをWebhookで受信できるようになりました。 whatsapp_interactive)およびサマリー・コールバックを使用する。また redirect_url そして check_url.
のApplicationセクションでVerifyコールバック用のWebhookを設定する必要があります。 顧客ダッシュボード:

ウェブフックに関する詳しいドキュメントは以下をご覧ください。 これ.
エンドポイント
Verify APIコールはすべて、新しいエンドポイントを使用するように更新する必要があります:
| 機能 | ベリファイ(レガシー) | Verify |
|---|---|---|
| 検証リクエストの送信 | POST https://api.nexmo.com/verify/ | POST https://api.nexmo.com/v2/verify |
| チェック検証リクエスト | POST https://api.nexmo.com/verify/check/:format | POST https://api.nexmo.com/v2/verify/:request_id |
| ベリファイサーチ | https://api.nexmo.com/verify/search/:format | 現在ご利用いただけません。ウェブフックに送信されたステータスを使用して、過去または現在のリクエストを暫定的に監視します。参照 サマリー・コールバック そして ウェブフック. |
| キャンセル | POST https://api.nexmo.com/verify/control/:format と cmd = cancel | DELETE https://api.nexmo.com/v2/verify/:request_id |
| ワークフローの次のイベントをトリガーする | POST https://api.nexmo.com/verify/control/:format と cmd = trigger_next_event | POST https://api.nexmo.com/v2/verify/:request_id/next-workflow |
| カスタムテンプレート | POST https://api.nexmo.com/verify/templates | GET https://api.nexmo.com/v2/verify/templatesPOST https://api.nexmo.com/v2/verify/templatesGET https://api.nexmo.com/v2/verify/templates/:template_idPATCH https://api.nexmo.com/v2/verify/templates/:template_idDELETE https://api.nexmo.com/v2/verify/templates/:template_id |
| PSD2 | POST https://api.nexmo.com/verify/psd2/:format | 非推奨 |
| ネットワーク・ブロック解除 | POST https://api.nexmo.com/verify/network-unblock | POST https://api.nexmo.com/v2/verify/network-unblock |
ワークフロー
Verifyは、レガシーの固定されたワークフローとは対照的に、独自のワークフローを定義する柔軟性を提供します。ワークフローでは、お好きなサポート・チャンネルの組み合わせを、最大3チャンネルまで指定できます。
ワークフローの詳細については、以下のドキュメントを参照してください。 これ.
チャンネル
Verifyに新チャンネルが登場:
- ショートメール
- ボイス(旧レガシーのTTS)
- 電子メール
- サイレント認証
- RCS
これらのチャネルの詳細については、以下を参照してください。 API仕様.
サイレント認証に特化したドキュメントは これ.
サマリー・コールバック
コールバックは、イベントのステータス、対応する request_id とチャンネルを使用する。以下のシーケンス図は、1つのチャンネルを使用する場合、またはワークフローで複数のチャンネルを使用する場合の動作を示しています。
シングル・チャンネル

複数チャンネル

レスポンス・コード
エンドポイントを変更するだけでなく、アプリケーションもVerify使用時に受信した応答コードを理解できるように更新する必要があります:
| HTTPコード | 定義 |
|---|---|
リクエストの作成 POST /v2/verify | |
| 202 | リクエストは受理された。配達中です。 |
| 409 | この番号に進行中のリクエストがある。 |
| 422 | リクエストの処理にエラーが発生しました。 |
リクエストを検証する POST /v2/verify/{request_id} | |
| 200 | 成功!正しいコードが提供されました。 |
| 400 | 誤ったコードが提供された。 |
| 404 | リクエストが見つかりません。 |
| 409 | 現在のアクションはピンチェックに対応していない。 |
| 410 | 間違ったコードが何度も提供された。 |
| 422 | リクエストが検証できません。 |
キャンセルについて
| ベリファイ(レガシー) | Verify |
|---|---|
| ベリファイ・コントロール は、進行中の検証リクエストをキャンセルするために使用できる。リクエストの最初の30秒間はキャンセルできない。 | 送信 キャンセル申請 - 検証要求がアクティブであれば、ワークフローを中止する。 |
テンプレート
| ベリファイ(レガシー) | Verify |
|---|---|
| 顧客はカスタマイズされたテンプレートを使ってVerifyメッセージを送ることができる(ドキュメンテーション) | Verifyは、あらかじめ定義されたテンプレートとカスタムテンプレートの両方をサポートしています。テンプレートの管理には テンプレート管理ガイド. |
PSD2への対応
| ベリファイ(レガシー) | Verify |
|---|---|
| PSD2に準拠 | 非推奨 |
検索検証リクエスト
| ベリファイ(レガシー) | Verify |
|---|---|
| 用途 ベリファイサーチ をクリックして、過去または現在の検証リクエストのステータスを確認してください。 | ウェブフックに送信されたステータスを使用して、過去または現在のリクエストを監視します。参照 サマリー・コールバック そして ウェブフック. |
不正管理
Network Blocks は、Verify API の SMS および Voice チャンネルにのみ適用されます。
| ベリファイ(レガシー) | Verify |
|---|---|
| ベロシティ・ルールによってトリガーされたブロックは、次のように応答する。 エラー7 | ベロシティルールによってトリガーされたブロックは、ステータスが表示されます。 blocked そして理性 Fraudulent traffic detected for your account on network [23415]. 要約コールバックで |
| ネットワーク・アンブロックは ネットワーク・ブロック解除API. | ブロック解除と同じAPIを使用する。 |
| さらなる文書化: レガシー不正防止システム | さらなるドキュメント: 不正防止システム |
シーケンス図の検証
ベリファイ・フロー

サマリーコールバックでリクエストをVerifyする

サイレント認証シーケンス図

V1とV2のペイロードパラメータ解析の検証
認証(Verify v2):Verify v2はJWTベアラ認証を使用します。VonageアプリケーションIDと秘密鍵を使ってJWTを生成し、それを Authorization ヘッダ(詳しくは 認証ガイド). api_key そして api_secret はv2リクエストのペイロードには含まれない。
検証リクエストの送信
| パラメータ | ベリファイ(レガシー) | ベリファイ (V2) | 備考 |
|---|---|---|---|
| APIキー | api_key | 該当なし | |
| APIシークレット | api_secret | 該当なし | |
| 電話番号 | number | to | |
| ブランド | brand | に含まれる。 workflow.channels.template | |
| 送信者ID | sender_id | from | アプリケーション channel = SMS & Email V2 |
| コードの長さ | code_length | code_length | |
| 言語 | lg | locale | |
| ピン有効期限 | pin_expiry | channel_timeout | |
| 次のイベントを待つ | next_event_wait | 該当なし | |
| ワークフロー識別子 | workflow_id | カスタムワークフロー workflow.channels | ワークフローにおけるチャンネルの柔軟な設定 |
| カスタムコード | pin_code | code | |
| テンプレート | 該当なし | template_id | テンプレート管理 V2のドキュメント |
| 電子メール | 該当なし | workflow.channels.email | |
| 該当なし | workflow.channels.whatsapp | ||
| サイレント認証 | 該当なし | workflow.channels.silent_auth | |
| エンティティID | 該当なし | entity_id | アプリケーション channel = SMS V2 |
| コンテンツID | 該当なし | content_id | アプリケーション channel = SMS V2 |
| アプリケーション識別子 | 該当なし | app_hash | アプリケーション channel = SMS V2 |
小切手検証リクエスト
| パラメータ | ベリファイ(レガシー) | ベリファイ (V2) |
|---|---|---|
| APIキー | api_key | 該当なし |
| APIシークレット | api_secret | 該当なし |
| リクエストID | request_id | request_id |
| コード | code | code |
検索検証リクエスト
| パラメータ | ベリファイ(レガシー) | ベリファイ (V2) |
|---|---|---|
| APIキー | api_key | 該当なし |
| APIシークレット | api_secret | 該当なし |
| リクエストID | request_id | 該当なし |
検証リクエストのキャンセル
| パラメータ | ベリファイ(レガシー) | ベリファイ (V2) | 備考 |
|---|---|---|---|
| APIキー | api_key | 該当なし | |
| APIシークレット | api_secret | 該当なし | |
| リクエストID | request_id | request_id | |
| コマンド | cmd=cancel | 該当なし | V2はキャンセルのために専用のエンドポイントを使用する。 |
次の検証プロセスのトリガー
| パラメータ | ベリファイ(レガシー) | ベリファイ (V2) | 備考 |
|---|---|---|---|
| APIキー | api_key | 該当なし | |
| APIシークレット | api_secret | 該当なし | |
| リクエストID | request_id | request_id | |
| コマンド | cmd=trigger_next_event | 該当なし | V2は、次のアクションのトリガーに専用のエンドポイントを使用する。 |
カスタムテンプレート
| パラメータ | ベリファイ(レガシー) | ベリファイ (V2) |
|---|---|---|
| APIキー | api_key | 該当なし |
| APIシークレット | api_secret | 該当なし |
| チャンネル | action_type | channel |
| 言語 | lg | locale |
| テンプレートテキスト | template | text |
| SMSのテキストタイプ | type | 該当なし |
| メディアファイルURL | digit_n | 該当なし |
| メッセージ開始 | welcome_message | 該当なし |
| メッセージ終了 | bye_message | 該当なし |
| Zendeskチケット | contact_email | 該当なし |
| テンプレート名 | 該当なし | name |
| デフォルト・テンプレート・インジケータ | 該当なし | is_default |
| テンプレート・リファレンス | 該当なし | template_id |
PSD2への対応
| パラメータ | ベリファイ(レガシー) | ベリファイ (V2) |
|---|---|---|
| APIキー | api_key | 該当なし |
| APIシークレット | api_secret | 該当なし |
| 電話番号 | number | 該当なし |
| 国コード | country | 該当なし |
| 受取人の名前 | payee | 該当なし |
| 支払額 | amount | 該当なし |
| コードの長さ | code_length | 該当なし |
| 言語 | lg | 該当なし |
| ピンの有効期限 | pin_expiry | 該当なし |
| 次のイベントを待つ | next_event_wait | 該当なし |
| ワークフロー識別子 | workflow_id | 該当なし |
Verify V1 vs Verify V2 ワークフロー・マッピング
ワークフロー1(デフォルト)
パターン: sms → tts → tts
ベリファイV1
{
"api_key": "your_key",
"api_secret": "your_secret",
"number": "15555551234",
"brand": "YourBrand",
"workflow_id": 1
}
ベリファイV2
{
"brand": "YourBrand",
"workflow": [
{"channel": "sms", "to": "15555551234"},
{"channel": "voice", "to": "15555551234"},
{"channel": "voice", "to": "15555551234"}
]
}
ワークフロー2
パターン: sms → sms → tts
ベリファイV1
{
"api_key": "your_key",
"api_secret": "your_secret",
"number": "15555551234",
"brand": "YourBrand",
"workflow_id": 2
}
ベリファイV2
{
"brand": "YourBrand",
"workflow": [
{"channel": "sms", "to": "15555551234"},
{"channel": "sms", "to": "15555551234"},
{"channel": "voice", "to": "15555551234"}
]
}
ワークフロー3
パターン: TTS → TTS
ベリファイV1
{
"api_key": "your_key",
"api_secret": "your_secret",
"number": "15555551234",
"brand": "YourBrand",
"workflow_id": 3
}
ベリファイV2
{
"brand": "YourBrand",
"workflow": [
{"channel": "voice", "to": "15555551234"},
{"channel": "voice", "to": "15555551234"}
]
}
ワークフロー4
パターン: SMS → SMS
ベリファイV1
{
"api_key": "your_key",
"api_secret": "your_secret",
"number": "15555551234",
"brand": "YourBrand",
"workflow_id": 4
}
ベリファイV2
{
"brand": "YourBrand",
"workflow": [
{"channel": "sms", "to": "15555551234"},
{"channel": "sms", "to": "15555551234"}
]
}
ワークフロー5
パターン: SMS → TTS
ベリファイV1
{
"api_key": "your_key",
"api_secret": "your_secret",
"number": "15555551234",
"brand": "YourBrand",
"workflow_id": 5
}
ベリファイV2
{
"brand": "YourBrand",
"workflow": [
{"channel": "sms", "to": "15555551234"},
{"channel": "voice", "to": "15555551234"}
]
}
ワークフロー6
パターン: ショートメール
ベリファイV1
{
"api_key": "your_key",
"api_secret": "your_secret",
"number": "15555551234",
"brand": "YourBrand",
"workflow_id": 6
}
ベリファイV2
{
"brand": "YourBrand",
"workflow": [
{"channel": "sms", "to": "15555551234"}
]
}
ワークフロー7
パターン: TTS
ベリファイV1
{
"api_key": "your_key",
"api_secret": "your_secret",
"number": "15555551234",
"brand": "YourBrand",
"workflow_id": 7
}
ベリファイV2
{
"brand": "YourBrand",
"workflow": [
{"channel": "voice", "to": "15555551234"}
]
}