• Office Hours: 9:00 AM – 5:00 PM

OTP API Documentation

curl --location 'https://gateway.standingtech.com/api/v4/sms/send' \
--header 'Authorization: Bearer {{API_KEY}}' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"recipient":"9647502171212",
"sender_id":"SenderID",
"type":"whatsapp",
"message":"123654",
"lang":"en"
}'

 

Using Guzzle:

<?php
require "guzzle/vendor/autoload.php";
use GuzzleHttp\Client;

$client = new Client([
    // Base URI is used with relative requests
    'base_uri' => 'https://sms.standingtech.com/api/v3/sms/',
]);
$now = date("Y-m-d H:i:s");
$body = <<<DATA
{"recipient":"9647xxxxxxxxx",
"sender_id":"Standing",
"type":"plain",
"message":"This is a test message using Guzzle at $now"
}
DATA;

$response = $client->request('POST', 'send', [
'headers' => [
    'Authorization'     => 'Bearer API_KEY',
    'Content-Type'     	=> 'application/json',
    'Accept'     		=> 'application/json',
    ],
//'stream' => true,
'body' => $body,
//'sink' => 'temp.txt',
//'verify' => false,

]);

$response = $response->getBody()->getContents();

echo "<pre>";
print_r(json_decode($response, true));

 

Using Curl:

<?php
$url = "https://sms.standingtech.com/api/v3/sms/send";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$headers = array(
   "Authorization: Bearer API_KEY",
   "Content-Type: application/json",
   "Accept: application/json",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$data = <<<DATA
{"recipient":"9647xxxxxxxxx",
"sender_id":"YourName",
"type":"plain",
"message":"This is a test message"
}
DATA;

curl_setopt($curl, CURLOPT_POSTFIELDS, $data);

//for debug only!
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);

 

For more examples, please visit our Github page
Or Postman

API Error Codes

General Errors

  • 1000 – Bad Request – The request could not be understood
  • 1001 – Invalid Request – Check the API Endpoint
  • 1002 – Unauthorized – No API Key found
  • 1003 – Invalid format
  • 1004 – Missing SenderID
  • 1005 – Forbidden – Access denied
  • 1006 – Resource not found
  • 1007 – Request method not allowed
  • 1008 – Too many requests – Rate limit exceeded
  • 1009 – Internal Server Error
  • 1010 – Bad Request – Do not use Auto here
  • 1011 – Invalid format of WhatsApp Request
  • 1012 – Bad Request – type or Channel was empty or Invalid
  • 1013 – Bad Request – Fallback was empty or Invalid use only (none, whatsapp, telegram)

Authentication Errors

  • 1100 – Authentication required
  • 1101 – Invalid API Key
  • 1102 – Expired API Key
  • 1103 – Invalid or missing token
  • 1104 – Access denied – Insufficient permissions
  • 1105 – Account suspended or blocked
  • 1106 – Not allowed to use this SenderID for the given API KEY
  • 1107 – Your account has been disabled please contact admin

Input Validation Errors

  • 1200 – Missing required parameter(s)
  • 1201 – Invalid parameter value
  • 1202 – Invalid JSON format
  • 1203 – Message body cannot be empty
  • 1204 – Invalid phone number format
  • 1205 – Sender ID contains invalid characters
  • 1206 – Sender ID is too long
  • 1207 – Receiver number is required
  • 1208 – Receiver number is blacklisted
  • 1209 – Please set your SenderID in the sender_id parameter!
  • 1210 – Pricing Error for Given SenderID please contact admin now
  • 1211 – International numbers disabled or Invalid Number
  • 1212 – Invalid Parameters – code must be set to Auto
  • 1213 – Invalid Parameters – Param2 is missing
  • 1214 – Invalid Parameters – Param3 is missing
  • 1215 – Invalid or missing template ID
  • 1216 – Invalid Phone Number for Iraq
  • 1217 – Invalid Type
  • 1218 – Only sms/telegram allowed as fallback for WhatsApp
  • 1219 – Message Format was invalid

Rate Limiting & Quota Errors

  • 1300 – Too many requests – Slow down
  • 1301 – Daily quota exceeded
  • 1302 – Monthly quota exceeded
  • 1303 – Message sending limit reached

Database & Resource Errors

  • 1400 – Database connection error
  • 1401 – Database query failed
  • 1402 – Record not found
  • 1403 – Duplicate entry – Already exists

SMS & Messaging Errors

  • 1500 – Invalid SMS content
  • 1501 – SMS message too long
  • 1502 – SMS sending failed
  • 1503 – Insufficient balance to send message
  • 1504 – SMS gateway unavailable
  • 1505 – SMS delivery failed
  • 1506 – Invalid OTP request
  • 1507 – expired
  • 1508 – OTP already used
  • 1509 – Missing (Code or ID) parameter
  • 1510 – Invalid ID in the request
  • 1511 – Invalid Phone number in the request
  • 1512 – failed
  • 1513 – Invalid Format – Message or Param is missing

API-Specific Errors

  • 1600 – API endpoint not found
  • 1601 – Unsupported API version
  • 1602 – Unsupported media type
  • 1603 – Bad gateway – Third-party service issue

Payment Errors

  • 1700 – Payment required
  • 1701 – Invalid payment method
  • 1702 – Payment failed
  • 1703 – Subscription expired
  • 1704 – Transaction declined

Server & Unexpected Errors

    • 1800 – Unexpected server error
    • 1801 – Service temporarily unavailable
    • 1802 – Configuration error
    • 1803 – Server under maintenance
    • 1804 – Unknown Error, Please contact admin
  • 1805 – Unknown Route please contact admin

Security & Fraud Detection Errors

  • 1900 – Suspicious activity detected
  • 1901 – Account flagged for fraud
  • 1902 – API abuse detected
  • 1903 – IP address blacklisted
  • 1904 – Access denied due to country restrictions
  • 1905 – Daily Limit Exceeded please contact admin to whitelist required numbers
  • 1906 – Hourly Limit Exceeded please contact admin to whitelist required numbers
  • 1907 – Only Two OTP request allowed in 30 seconds
FAQ

For more questions, please contact us

Contact Us

Do you have a platform for sending SMS Online?

Yes, with our platform, you can upload your contacts and send them SMS. You can also schedule SMS for different groups.

Can I see my reports on the platform?

Yes, you can see all messages that you sent from your account (Online or by API).

BulkSMSIraq.com support whole Iraq?

Yes, we support whole Iraq including Kurdistan Region (Erbil, Sulaimaniah, Duhok, etc).

Do I need to register SMS Sender ID?

Yes, You need to register SMS Sender ID, some countries will block unregistered sender IDs

Do you have Viber and WhatsApp API?

Yes, We have WhatsApp and Viber API for business only

Do you support sending SMS internationally?

Yes, we are connected to 700 direct global operators, we can deliver your SMS everywhere!

Do you have code examples?

Yes, please visit https://github.com/akamomer/bulksmsiraq

is there anyway to send SMS with custom sender id without using API?

No, it is not possible to send SMS with a custom sender ID without using an API. The sender ID is a fundamental part of the SMS system, and it is used to identify the sender of the message. To send an SMS message with a custom sender ID, you need to use an API that allows you to set the sender ID.