Verify API

The verification API allows you to verify if a user currently has access to a given phone number or email address, by sending them an OTP and asking them to verify the code that was sent to them.

This can be achieved by using the following API endpoints below.

Currently, verify only supports Email, WhatsApp and SMS

Sending a Verification

In order to send a message you must have an active channel and perform an HTTP request to the following endpoint with a valid access key.

Here is an example of a basic verify request body for SMS

{
  "identifier": {
    "phonenumber": "+31623456789"
  },
  "steps": [
    {
      "channelId": "SMS_CHANNEL_UUID"
    }
  ]
}

Steps

You can use Steps to implement a failover strategy between different channels. The minimum amount of steps is one. Calling the failover endpoint will cause it to move to the next step.

{
  "identifier": {
    "phonenumber": "+31623456789",
    "emailaddress": "name@example.com"
  },
  "locale": "en-US",
  "maxAttempts": 3,
  "timeout": 300,
  "codeLength": 6,
  "steps": [
    {
      "channelId": "CHANNEL_UUID"
    },
    {
      "channelId": "FAILOVER_CHANNEL_UUID"
    }
  ]
}

Templates

Verify supports using templates for some channels. The following is an example of using a channel with a template.

{
  "identifier": {
    "phonenumber": "+31623456789",
  },
  "steps": [
    {
      "channelId": "CHANNEL_UUID",
      "template": {
        "projectId": "TEMPLATE_UUID",
        "version": "TEMPLATE_VERSION_UUID|latest",
        "locale": "en"
      }
    }
  ]
}

SMS Templates

SMS does not support templates. For SMS, the body is generated by the verify API. You can however change the language by setting the locale of the verification. Supported languages include:

  • Afrikaans

  • Arabic

  • German

  • English

  • Spanish

  • French

  • Italian

  • Dutch

  • Polish

  • Portuguese

  • Russian

  • Turkish

Email Templates

For emails, templates work just as you would expect via the channels API, with the addition of a variable for the Verify OTP Code.

When setting up a template for Email, select {} -> Verify -> OTP from the list of variables

WhatsApp Templates

Templates for WhatsApp channels are required. In order to send an OTP message to a WhatsApp channel, you need to have an Authentication Template set up.

Verifying the code

Once you have received a code from one of your users you will have to confirm if the code is valid.

Resend a code for a specific verification step

Using the following endpoint, you can also resend a message for a given verification step.

By not setting a value for stepIndex, it will default to the currently active step.

Failover to next step

You can failover to another verification step by calling the following endpoint.

By not setting a value for stepIndex, it will default to the next step in the array.

Retrieving Verifications

Retrieving a list of Verifications

Retrieving a single Verification

Last updated