Добавить 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