Skip to content

Send OTP SMS

GET
/v2/otp-global/send

Sends an OTP SMS using query string parameters.

Note: This endpoint generates an OTP code and sends it via SMS. It is not an OTP verification route — use /v2/otp-global/verify for that.

Suitable for quick tests via browser or Postman.

msg
required
string
>= 3 characters <= 160 characters

GSM-encoded message (max 160 characters).

Note: If the [code] tag is omitted, it will be appended to the end of the message.

Example
Your otp code is [code], please don't share it with anyone.
phone
required
string
/^\d{11,15}$/

E.164 destination phone number without the leading + (11–15 digits including country code)

Example
528100001234
sender
string

Sender ID authorized by carrier (optional)

Example
AWESOMEINC
id
string

External reference ID for your own tracking (optional)

Example
external-id-relation

OTP SMS sent successfully

object
status
boolean
true
error
boolean
description
object
added_on
string format: date-time
2023-09-20 16:47:15
charge
number format: float
0.99
country
object
country
string
MEXICO
iso_code
string
MX
type
string
MOVIL
encoding
string
Allowed values: gsm unicode
gsm
id
integer
199999
job_id
string
199999
length
integer
12
message
string
Your otp code is 0000, please don't share it with anyone.
number
string
segments
integer
1
sender
string
AWESOMEINC
Example
{
"status": true,
"error": false,
"description": {
"added_on": "2023-09-20 16:47:15",
"charge": 0.99,
"country": {
"country": "MEXICO",
"iso_code": "MX",
"type": "MOVIL"
},
"encoding": "gsm",
"id": 199999,
"job_id": "199999",
"length": 12,
"message": "Your otp code is 0000, please don't share it with anyone.",
"number": "8100001234",
"segments": 1,
"sender": "AWESOMEINC"
}
}

Missing required parameters

Example
{
"status": false,
"error": true,
"description": "Missing params, please verify or contact to support"
}

Your key auth is not valid

Example
{
"status": false,
"error": true,
"description": "Your key auth is not valid, please check with your administrator to get the new key"
}

Your account doesn’t have credits available for sending

Example
{
"status": false,
"error": true,
"description": "Your account doesn't have credits available for this, please contact your administrator"
}

Country or carrier not reachable or assigned to your account

Example
{
"status": false,
"error": true,
"description": "Country or carrier not reachable or assigned to your account, please contact an administrator or support"
}

Failed to append to the queue, no need to resend

Example
{
"status": false,
"error": true,
"description": "Failed to append to the queue, no need to resend"
}

Your account doesn’t have multi-message sending enabled

Example
{
"status": false,
"error": true,
"description": "Your account doesn't have multi-message sending enabled, please contact your administrator"
}

Useful for guiding users to view code examples in different developer languages.

developer@developer:~#
curl -X GET "https://api.example.com/v2/otp-global/send?msg=Your+otp+code+is+%5Bcode%5D%2C+please+don%27t+share+it+with+anyone.&phone=528100001234&sender=AWESOMEINC&id=external-id-relation" \
-H "Accept: application/json" \
-H "Connection: keep-alive" \
-H "Authorization: Basic <base64-encoded-credentials>"