Cancel verification request
If the user decides to cancel the verification process, you should send a control request to the Verify API. This will terminate the verification process even if the user supplied the correct code.
Note: You can only cancel a verification request after 30 seconds, but before any second attempt is made.
Replace the following variables in the sample code with your own values:
| Key | Description |
|---|---|
VONAGE_API_KEY | Your Vonage API key (see it on your dashboard). |
VONAGE_API_SECRET | Your Vonage API secret (also available on your dashboard). |
REQUEST_ID | The ID of the Verify request (this is returned in the API response when you send a verification code) |
Write the code
Add the following to cancel-verification-code.sh:
curl -X GET "https://api.nexmo.com/verify/control/json?api_key=$VONAGE_API_KEY&api_secret=$VONAGE_API_SECRET&request_id=$REQUEST_ID&cmd=cancel"Run your code
Save this file to your machine and run it:
Prerequisites
npm install @vonage/server-sdkCreate a file named cancel.js and add the following code:
const { Vonage } = require('@vonage/server-sdk');
const vonage = new Vonage({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Write the code
Add the following to cancel.js:
vonage.verify.cancel(REQUEST_ID)
.then((resp) => console.log(resp))
.catch((error) => console.error(error));Run your code
Save this file to your machine and run it:
Prerequisites
Add the following to build.gradle:
implementation 'com.vonage:server-sdk-kotlin:1.1.2'Create a file named CancelVerification and add the following code to the main method:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Write the code
Add the following to the main method of the CancelVerification file:
val response = client.verifyLegacy.request(REQUEST_ID).cancel()
println(response.status)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.vonage.quickstart.kt.verify.legacy with the package containing CancelVerification:
Prerequisites
Add the following to build.gradle:
implementation 'com.vonage:server-sdk:8.15.1'Create a file named CancelVerification and add the following code to the main method:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Write the code
Add the following to the main method of the CancelVerification file:
ControlResponse response = client.getVerifyClient().cancelVerification(REQUEST_ID);
String errorText = response.getErrorText();
if (errorText != null) {
System.out.println("Cancellation failed: " + errorText);
}
else {
System.out.println("Verification cancelled.");
}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.vonage.quickstart.verify with the package containing CancelVerification:
Prerequisites
Install-Package VonageCreate a file named CancelVerificationRequest.cs and add the following code:
using Vonage;
using Vonage.Request;
using Vonage.Verify;Add the following to CancelVerificationRequest.cs:
var credentials = Credentials.FromApiKeyAndSecret(vonageApiKey, vonageApiSecret);Write the code
Add the following to CancelVerificationRequest.cs:
var client = new VonageClient(credentials);
var request = new VerifyControlRequest() { RequestId = requestId, Cmd = "cancel" };
Prerequisites
composer require vonage/clientCreate a file named cancel.php and add the following code:
$basic = new \Vonage\Client\Credentials\Basic(VONAGE_API_KEY, VONAGE_API_SECRET);
$client = new \Vonage\Client(new \Vonage\Client\Credentials\Container($basic));Write the code
Add the following to cancel.php:
try {
$result = $client->verify()->cancel(REQUEST_ID);
var_dump($result->getResponseData());
}
catch(Exception $e) {
echo 'Message: ' .$e->getMessage();
}Run your code
Save this file to your machine and run it:
Prerequisites
pip install vonageCreate a file named cancel.py and add the following code:
Run your code
Save this file to your machine and run it:
Prerequisites
gem install vonageCreate a file named cancel.rb and add the following code:
client = Vonage::Client.new(
api_key: VONAGE_API_KEY,
api_secret: VONAGE_API_SECRET
)Write the code
Add the following to cancel.rb:
response = client.verify.cancel(REQUEST_ID)
Run your code
Save this file to your machine and run it: