Добавить callback

Последнее изменение: 05.06.2025

Если вы хотите добавить обработчик callback, осуществите этот запрос: Добавить URL Callback системы на вашей стороне, на которую будут возвращаться статусы отправленных вами сообщений.

Примеры запросов

https://sms.ru/callback/add?api_id=[зарегистрируйтесь, чтобы получить api_id]&url=https%3A%2F%2Fyoursite.ru%2Fcallback.php&json=1

Пример ответа

При включенном параметре json=1:

{
    "status": "OK", // Запрос выполнен успешно (нет ошибок в авторизации)
    "status_code": 100, // Успешный код выполнения
    "callback": [ // Список добавленных callback
        "https://yoursite.ru/callback.php", // первый сайт
        "https://anothersite.ru/callback/index.php" // второй сайт
    ]
}

Без json:

100 // Запрос выполнен
https://yoursite.ru/callback.php // первый сайт
https://anothersite.ru/callback/index.php // второй сайт

Параметры

Параметр Обязательный Описание
url да Адрес обработчика (должен начинаться на https://). Если передаете в GET, то адрес необходимо экранировать функцией urlencode (или схожей - чтобы результат был похож на наш пример выше). Если передаете в POST, то экранировать не нужно.

Авторизация осуществляется при помощи:

Параметр Обязательный Описание
api_id да Авторизацию по вашему уникальному ключу (api_id). Этот способ авторизации - самый удобный и приведен в примере выше. Ваш api_id вы можете найти на главной странице личного кабинета: [зарегистрируйтесь, чтобы получить api_id]

Пример на PHP (со включенным модулем curl)

Мы настоятельно рекомендуем использовать нашу библиотеку под PHP. Данный код указан только в качестве простого примера.

$ch = curl_init("https://sms.ru/callback/add");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
    "api_id" => "[зарегистрируйтесь, чтобы получить api_id]",
    "url" => "https://yoursite.ru/callback.php", // Адрес обработчика callback на вашем сайте
    "json" => 1
));
$body = curl_exec($ch);
curl_close($ch);

$json = json_decode($body);
if ($json) { // Получен ответ от сервера
    print_r($json); // Для дебага
    if ($json->status == "OK") { // Запрос выполнился
        // Запрос выполнен.
    } else { // Запрос не выполнился (возможно ошибка авторизации, параметрах, итд...)
        // Код ошибки: $json->status_code Текст ошибки: $json->status_text
    }
} else { // Запрос не выполнился Не удалось установить связь с сервером

}

Пример на PHP без curl

Мы настоятельно рекомендуем использовать нашу библиотеку под PHP. Данный код указан только в качестве простого примера.

$body = file_get_contents("https://sms.ru/callback/add?api_id=[зарегистрируйтесь, чтобы получить api_id]&url=".urlencode("https://yoursite.ru/callback.php")."&json=1"); 

$json = json_decode($body);
print_r($json); // Для дебага
// Для разбора $json можно использовать кусок кода из предыдущего примера.

Пример на curl

Если вы используете curl под Windows. То знак \ перед знаками ? и & необходимо убрать.

curl -d "url=https://yoursite.ru/callback.php" https://sms.ru/callback/add\?api_id=[зарегистрируйтесь, чтобы получить api_id]\&json=1