Developer Guide

Send SMS Verification

Send an SMS with verification code and a custom message for authentication purpose.

NOTE: You need to register for an API key before using this REST API. Please visit Micro Plan to sign up for an API key if you do not have one. In addition, you will also have to make sure you have enough SMS credits to send any verification SMS.


Parameter Description
tel (required) The recipient mobile phone number in E164 format which is a plus followed by just numbers with no spaces or parentheses.

For example, +123456789

country_code (optional) ISO 3166 country code for the recipient mobile phone number. If parameter is supplied, then some basic telephone number validation is done.
key (required) FraudLabs Pro API key.
mesg (required) The message template for the SMS. Add <otp> as placeholder for the actual OTP to be generated. Max length is 140 characters.

For example,
Your OTP for the transaction is <otp>

format (optional) Returns the API response in json (default) or xml format.
Valid values: json | xml
The input parameter must be encoded the same way that the posted data from a WWW form is encoded. In other words, the percent-encoding.
Parameter Description
tran_id Unique ID (20 characters) for this particular API call.
credits_remaining Number of remaining credits for sending SMS.
error Blank if there is no error otherwise it will contain one of the errors below:
  • FraudLabs Pro plan has expired.
  • Invalid phone number.
  • Message cannot be blank.
  • Message is too long.
  • API key not found.
  • Insufficient credits.
  • Invalid phone number.
  • Cannot send SMS to fixed line or VoIP lines.
  • Unknown error.
Sample Code
require_once 'lib/FraudLabsPro.php';

// Configures FraudLabs Pro API key

// Send SMS Verification
	'tel'			=> '+15616288674',
	'mesg'			=> 'Hi, your OTP is <otp>.',
	'country_code'		=> 'US',
import com.fraudlabspro.*;
import java.util.Hashtable;

public class FLP {

    public static void main(String[] args) {
        // Configures FraudLabs Pro API key
        FraudLabsPro.APIKEY = "YOUR_API_KEY";
        // Send SMS Verification API
        SMSVerification sms = new SMSVerification();

        // Sets SMS details for authentication purpose
        Hashtable data = new Hashtable<>();
        data.put("tel", "+15616288674");
        data.put("country_code", "US");
        data.put("mesg", "Hi, your OTP is .");

        String result = sms.sendSMS(data);
Imports System.Net
Imports System.IO
Imports System.Uri

Public Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim request As HttpWebRequest = Nothing
        Dim response As HttpWebResponse = Nothing

        Dim apiKey As String = "Enter_License_Key"
        Dim data As New Dictionary(Of String, String)

        data.Add("format", "json")
        data.Add("tel", "Enter_Mobile_Phone_Number")
        data.Add("country_code", "Enter_Country_Code")
        data.Add("mesg", "Hi, your OTP is <otp>.")
        Dim datastr As String = String.Join("&", data.[Select](Function(x) x.Key & "=" & EscapeDataString(x.Value)).ToArray())

        request = Net.WebRequest.Create("" & apiKey & "&" & datastr)

        request.Method = "GET"
        response = request.GetResponse()

        Dim reader As System.IO.StreamReader = New IO.StreamReader(response.GetResponseStream())


    End Sub

End Class
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Net;
using System.IO;

namespace WebApplication1
    public partial class _Default : System.Web.UI.Page
        protected void Page_Load(object sender, EventArgs e)
            WebRequest request = null;
            WebResponse response = null;

            string apiKey = "Enter_License_Key";
            Dictionary<string, string> data = new Dictionary<string, string>();

            data.Add("format", "json");
            data.Add("tel", "Enter_Mobile_Phone_Number");
            data.Add("country_code", "Enter_Country_Code");
            data.Add("mesg", "Hi, your OTP is <otp>.");
            string datastr = string.Join("&", data.Select(x => x.Key + "=" + System.Uri.EscapeDataString(x.Value)).ToArray());

            request = System.Net.WebRequest.Create("" + apiKey + "&" + datastr);

            request.Method = "GET";
            response = request.GetResponse();

            System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream());

 # Import SDK to use the function
from libs.smsverification import SMSVerification

 # Configure your API key
api_key = 'YOUR_API_KEY'

sms_verification_variables = {
	'key': api_key,
	'tel': '+15616288674',
	'country_code': 'US',
	'mesg': 'Your OTP for the transaction is <otp>.',
$ curl -X POST \
	-d "key=Enter_License_Key" \
	-d "format=json" \
	-d "country_code=Enter_Country_Code" \
	-d "tel=Enter_Mobile_Phone_Number" \
	-d "mesg=Hi, your OTP is <otp>"
require 'fraudlabspro_ruby'

FraudlabsproRuby::Configuration.api_key = 'YOUR_API_KEY'

result = FraudlabsproRuby::Api::SMSVerification.sendSMS(
  tel: '+15616288674',
  mesg: 'Hi, your OTP is <otp>.',
  country_code: 'US'