Verify API

The Verify API enables you to confirm that you can contact a user at a specific number, so that you can:

  • Reach your users at any time, by ensuring that you have their correct phone number
  • Protect against fraud and spam, by preventing one user from creating multiple accounts
  • Add an extra layer of security to help confirm a user's identity when they want to perform certain activities

How it works

Verification is a two-stage process that requires two API calls:

Verification request

Starting the verification process
  1. A user registers for your service via your app or web site and provides a phone number.

  2. To confirm that the user has access to the number that they have registered with, your application makes an API call to the Verification request endpoint.

  3. The Verify API generates a PIN code, with an associated request_id.

    It is possible to supply your own PIN code in some circumstances, please contact your account manager.

  4. The Verify API then attempts to deliver this PIN to the user. The format (SMS or Text-to-speech (TTS)) and timing of these attempts are defined by your chosen workflow. If the user does not revisit your app or website to enter the PIN they have received, the verification request will ultimately time out. Otherwise, you need to verify the number that they entered by performing a Verification check.

Verification check

Verifying the submitted PIN

5. The user receives the PIN and enters it into your application.

6. Your application makes an API call to the Verification check endpoint, passing in the request_id and the PIN that the user entered.

7. The Verify API checks that the PIN entered matches the one that was sent and returns the result to your application.

Getting Started

The following sample shows you how to start the verification process by sending a verification code to a user. To learn how to validate the code the user supplies and perform other operations, see the Code Snippets.

Write the code

Add the following to send-verification-code.sh:

curl GET "https://api.nexmo.com/verify/json?api_key=$VONAGE_API_KEY&api_secret=$VONAGE_API_SECRET&number=$VERIFY_NUMBER&brand=AcmeInc"

View full source

Run your code

Save this file to your machine and run it:

sh send-verification-code.sh

Guides

Code Snippets

Use Cases

    Further Reading