Trigger next verification process

The Verify API starts the verification process by sending an SMS to the user. If the user does not confirm the code that they received within a certain time period, the Verify API sends a second SMS. If that does not elicit a response it attempts a Text-to-Speech (TTS) call.

You can advance to the next verification attempt programmatically by making a control request. You would normally do this if your user indicates that they prefer to verify via a phone call instead of by SMS.

Write the code

Add the following to trigger-next-verification-process.sh:

Copy to Clipboard
curl -X GET "https://api.nexmo.com/verify/control/json?api_key=$NEXMO_API_KEY&api_secret=$NEXMO_API_SECRET&request_id=$REQUEST_ID&cmd=trigger_next_event"

View full source

Run your code

Save this file to your machine and run it:

$ sh trigger-next-verification-process.sh

Prerequisites

Install dependencies

$ npm install nexmo
Initialize your dependencies

Create a file named next-event.js and add the following code:

Copy to Clipboard
const Nexmo = require('nexmo');
const nexmo = new Nexmo({
  apiKey: NEXMO_API_KEY,
  apiSecret: NEXMO_API_SECRET
}, {
  debug: true
});

View full source

Write the code

Add the following to next-event.js:

Copy to Clipboard
nexmo.verify.control({
  request_id: REQUEST_ID,
  cmd: 'trigger_next_event'
}, (err, result) => {
  if (err) {
    console.error(err);
  } else {
    console.log(result);
  }
});

View full source

Run your code

Save this file to your machine and run it:

$ node next-event.js

Prerequisites

Install dependencies

Add the following to build.gradle:

compile 'com.nexmo:client:4.0.0'
Initialize your dependencies

Create a class named AdvanceVerification and add the following code to the main method:

Copy to Clipboard
NexmoClient client = new NexmoClient.Builder().apiKey(NEXMO_API_KEY).apiSecret(NEXMO_API_SECRET).build();

View full source

Write the code

Add the following to the main method of the AdvanceVerification class:

Copy to Clipboard
client.getVerifyClient().advanceVerification(REQUEST_ID);

View full source

Run your code

We can use the application plugin for Gradle to simplify the running of our application. Update your build.gradle with the following:

apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''

Run the following gradle command to execute your application, replacing com.nexmo.quickstart.verify with the package containing AdvanceVerification:

gradle run -Pmain=com.nexmo.quickstart.verify.AdvanceVerification

Prerequisites

Install dependencies

$ Install-Package Nexmo.Csharp.Client
Initialize your dependencies

Create a file named VerifyController.cs and add the following code:

Copy to Clipboard
var client = new Client(creds: new Nexmo.Api.Request.Credentials
{
    ApiKey = "NEXMO_API_KEY",
    ApiSecret = "NEXMO_API_SECRET"
});

View full source

Write the code

Add the following to VerifyController.cs:

Copy to Clipboard
var results = Client.NumberVerify.Control(new NumberVerify.ControlRequest
{
    request_id = requestID,
    cmd = "trigger_next_event"
});

View full source

Prerequisites

Install dependencies

$ composer require nexmo/client
Initialize your dependencies

Create a file named trigger_next_event.php and add the following code:

Copy to Clipboard
$basic  = new \Nexmo\Client\Credentials\Basic(NEXMO_API_KEY, NEXMO_API_SECRET);
$client = new \Nexmo\Client(new \Nexmo\Client\Credentials\Container($basic));

View full source

Write the code

Add the following to trigger_next_event.php:

Copy to Clipboard
$result = $client->verify()->trigger(REQUEST_ID);

View full source

Run your code

Save this file to your machine and run it:

$ php trigger_next_event.php

Prerequisites

Install dependencies

$ pip install nexmo
Initialize your dependencies

Create a file named trigger-next-step.py and add the following code:

Copy to Clipboard
import nexmo

client = nexmo.Client(key=NEXMO_API_KEY, secret=NEXMO_API_SECRET)

View full source

Write the code

Add the following to trigger-next-step.py:

Copy to Clipboard
response = client.trigger_next_verification_event(REQUEST_ID)

if response["status"] == "0":
    print("Next verification stage triggered")
else:
    print("Error: %s" % response["error_text"])

View full source

Run your code

Save this file to your machine and run it:

$ python trigger-next-step.py

Prerequisites

Install dependencies

$ gem install nexmo
Initialize your dependencies

Create a file named trigger_next_event.rb and add the following code:

Copy to Clipboard
require 'nexmo'

client = Nexmo::Client.new(
  api_key: NEXMO_API_KEY,
  api_secret: NEXMO_API_SECRET
)

View full source

Write the code

Add the following to trigger_next_event.rb:

Copy to Clipboard
response = client.verify.trigger_next_event(REQUEST_ID)

if response.status == '0'
  puts 'Next event triggered'
else
  puts response.error_text
end

View full source

Run your code

Save this file to your machine and run it:

$ ruby trigger_next_event.rb