Характеристики платформы
  • Быстрая скорость работы и своевременная доставка SMS-сообщения до абонентов (один запрос 50 SMS-сообщений)
  • Реализация подключения через шифрованный протокол https
  • Отправка и прием SMS-сообщений от всех мобильных операторов РУз
  • Квалифицированные специалисты и наличие профессионального программного обеспечения

API (интерфейс взаимодействия)

GETSMS.UZ - API

Здесь представлена краткая инструкция по интеграции сайта, сервиса или приложения с системой GETSMS.UZ для автоматизации SMS уведомлений. Для упрощения интеграции мы разработали примеры кода на языках программирования.

Прежде, чем начать работу:

Убедитесь, что ваш проект поддерживает cURL.

Сообщите в техническую службу статический IP-адрес сервера, с которого будут направляться запросы, иначе любые соединения с неизвестных хостов будут отклоняться.

Ниже даны определения переменным, используемым в исходном коде:
LOGIN — логин, выданный технической службой
PASSWORD — пароль, выданный вместе с логином
NUMBER — номер телефона получателя в международном формате без плюса (+)
TEXT — текст SMS сообщения в кодировке UTF-8
REQUEST_ID — ID запроса

Пример кода на PHP для отправки СМС с помощью библиотеки cURL:

<?php
$curl = curl_init();
$sms = [
    [
        'phone' => '998909711322',
        'text'  => 'Ваш текст СМС',
    ],
    [
        'phone' => '998909711322',
        'text'  => 'Ваш текст СМС 2',
    ]
];
$data = 'login='.urlencode('ВАШ ЛОГИН');
$data .= '&password='.urlencode('ВАШ ПАРОЛЬ');
if (isset($nickname)) {
    $data .= '&nickname='.urlencode($nickname);
}
$data .= '&data='.urlencode(json_encode($sms));
curl_setopt($curl, CURLOPT_URL, 'http://185.8.212.184/smsgateway/');
curl_setopt($curl, CURLOPT_HEADER, 0); 
curl_setopt($curl, CURLOPT_POST, 1); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5); 
curl_setopt($curl, CURLOPT_TIMEOUT, 5); 
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $data); 
curl_setopt($curl, CURLOPT_USERAGENT, 'Opera 10.00'); 
$res = curl_exec($curl); 
echo $res; 
curl_close($curl);

Пример получения статуса SMS из PHP скрипта с использованием библиотеки cURL:

<?php
$data = 'login='.urlencode('ВАШ ЛОГИН');
$data .= '&password='.urlencode('ВАШ ПАРОЛЬ');
$data .= '&data='.urlencode('[{"request_id":"полученный ранее request_id"}]');
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://185.8.212.184/smsgateway/status/');
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($curl, CURLOPT_TIMEOUT, 5);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_USERAGENT, 'Opera 10.00');
$res = curl_exec($curl);
echo $res;
curl_close($curl);

Техническая документация по подключению

<?php
/**
 * (c) 2018 http://getsms.uz
 *
Ссылка на обработчик для отправки смс:
http://185.8.212.184/smsgateway/

Параметры отправляются методом POST в
следующем виде:

login = ваш логин

password = ваш пароль
nickname = одно из ваших алфа-имен, которое ранее установлено в системе. По умолчанию отправка смс происходит с короткого номера.

data = 
[
  {
    "phone":"998909711322", "text":"тестовое смс 1"
  },
  {
    "phone":"998909711322", "text":"тестовое смс 2"
  }
] 
массив, содержащий до 100 (json-объектов)
отправляемых смс

В ответ, при удачном запросе, сервис
выдает данные вида:

[
  {
    "recipient": 998909711322,
    "text": "тестовое смс 1",
    "user_id": 1,
    "date_received": 1499493672,
    "message_id": 16854781,
    "request_id": 52480252,
    "client_ip": "185.8.212.184"
  }
]



При некорректном номере телефона, ответ будет:
[
  {
    "error": 1,
    "error_text": "is NOT a phone number",
    "error_no": 300,
    "recipient": "+998909711322",
    "text": "text1",
    "user_id": 1,
    "date_received": 1499493758,
    "message_id": 20766930,
    "request_id": 76181024,
    "client_ip": "185.8.212.184"
  }
]

Примечание: В последующем для проверки доставки
смс до абонента будет необходим
элемент json-объекта request_id (выделен
красным) из ответа смс-шлюза.

Ссылка на обработчик для проверки
статуса отправленных смс:
http://185.8.212.184/smsgateway/status/

Для проверки статуса доставки смс
абоненту необходимо отправить запрос 
методом POST, со следующими параметрами:

login = ваш логин

password = ваш пароль

data = 
[
  {
    "request_id ":"3853471"
  }
] 
массив, содержащий 1 json-объект с id запроса,
который ранее получили (в ответе на запрос при отправки смс)

В ответ, при удачном запросе, сервис
выдает данные вида:
[
  {
    "recipient": "998909711322",
    "text": "Ваш текст смс",
    "user_id": "1",
    "date_received": "2018-07-08 10:40:34",
    "date_sent": "2018-07-08 10:40:34",
    "date_delivered": "2018-07-08 10:40:52",
    "message_id": "38457358",
    "request_id": "93786401",
    "status": "delivered",
    "count_messages": "1",
    "client_ip": "185.8.212.184",
    "description": "OK"
  }, {
    "recipient": "998909711322",
    "text": "Ваш текст смс",
    "user_id": "1",
    "date_received": "2017-07-08 10:40:34",
    "date_sent": "2017-07-08 10:40:34",
    "date_delivered": "2017-07-08 10:40:42",
    "message_id": "12911573",
    "request_id": "93786401",
    "status": "delivered",
    "count_messages": "1",
    "client_ip": "185.8.212.184",
    "description": "OK"
  }
]



В случае отправки некорректных данных,
ответ от сервиса будет иметь вид:

[
  {
    "error":1,"text":"Incorrect Login or Password","error_no":101
  }
]

Имеются следующие виды ошибок:

{
  "error": 1,
  "error_text": "Login or Password is NULL",
  "error_no": 100
}
{
  "error": 1,
  "error_text": "Incorrect Login or Password",
  "error_no": 101
}
{
  "error": 1,
  "error_text": "Account blocked",
  "error_no": 102
}
{
  "error": 1,
  "error_text": "Limit is over",
  "error_no": 103
}
{
  "error": 1,
  "error_text": "Array is not a JSON",
  "error_no": 200
}
{
  "error": 1,
  "error_text": "Array is invalid",
  "error_no": 201
}
{
  "error": 1,
  "error_text": "Nickname didn\'t set",
  "error_no": 202
}
{
  "error": 1,
  "error_text": "Incorrect nickname",
  "error_no": 203
}
{
  "error": 1,
  "error_text": "request_id is wrong",
  "error_no": 400
}

HTML - Форма отправки SMS:

 

Пример проверки статуса SMS в форме HTML:

 

     Скачать техническую документацию по API одним файлом