API
Авторизация

Каждый запрос API должен содержать следующие заголовки:

Accept: application/json Content-Type: application/json Authorization: Bearer $token
Параметр Описание
$token токен полученный после добавления в настройках ЛК
GET
/api/balance
Информация о балансе

В ответ на запрос, платформа предоставит ответ в формате JSON с соответствующим HTTP статусом. Коды ответов и статусы можно посмотреть в таблице

{ "error":0, "balance":21524.5 }
Параметр Тип Описание
error integer Код ошибки
balance float Баланс лицевого счета

Пример успешного ответа:

HTTP/1.1 200 OK { "error":0, "balance":21524.5 }
GET
/api/sms/names
Получение списка доступных имен

В ответ на запрос, платформа предоставит ответ в формате JSON с соответствующим HTTP статусом. Коды ответов и статусы можно посмотреть в таблице

Параметр Тип Описание
error integer Код ошибки
names array Список доступных для пользователя имен

Пример успешного ответа:

HTTP/1.1 200 OK { "error":0, "names":[ "TomatSMS", "TomatSMS2" ] }
POST
/api/sms
Отправка SMS

Параметры запроса передаются в теле запроса в формате JSON:

Параметр Тип Описание
name string Имя отправителя, доступное для рассылки
phone string Номер телефона получателя в международном формате (79282000000 или +79282000000)
text string Текст сообщения
dateSend integer (не обязательно) Дата для отложенной отправки сообщения (в формате unixtime), не более 5 суток от текущего времени

Пример запроса:

POST https://tomatsms.ru/api/sms HTTP/1.1 Accept: application/json Authorization: Bearer $token Content-Type: application/json { "name":"TomatSms", "phone":"79282000000", "text":"Заказ 123 изменил статус на Отправлен", "dateSend":1548065639 }

В ответ на запрос, платформа предоставит ответ в формате JSON с соответствующим HTTP статусом. Коды ответов и статусы можно посмотреть в таблице

Параметр Тип Описание
error integer Код ошибки
id string Идентификатор сообщения, необходим для получения статуса сообщения

Пример успешного ответа:

HTTP/1.1 200 OK { "error":0, "id":"615165446" }

Пример ответа на запрос с ошибкой:

HTTP/1.1 400 Bad request { "error":12 }
POST
/api/sms/check-template
Проверка текста на соответствие шаблонам

Параметры запроса передаются в теле запроса в формате JSON:

Параметр Тип Описание
text string Текст сообщения

Пример параметров запроса:

{ "text":"Заказ 123 изменил статус на Отправлен" }

Пример запроса:

POST https://tomatsms.ru/api/sms HTTP/1.1 Accept: application/json Authorization: Bearer $token Content-Type: application/json {"text":"Заказ 123 изменил статус на Отправлен"}

В ответ на запрос, платформа предоставит ответ в формате JSON с соответствующим HTTP статусом. Коды ответов и статусы можно посмотреть в таблице

Параметр Тип Описание
error integer Код ошибки
checkPass bool Флаг, сообщающий о том, что текст подошел как минимум под один шаблон
templateChecks object Массив результатов проверок по каждому шаблону, где ключ (string) - идентификатор шаблона, значение (bool) - результат проверки текста на соответствие шаблону

Пример успешного ответа:

HTTP/1.1 200 OK { "error":0, "checkPass":true, "templateChecks":{ "3":false, "4":true } }

Пример ответа на запрос с ошибкой:

HTTP/1.1 400 Bad request { "error":612 }
GET
/api/sms/{id}/status
Получение статуса SMS

Параметры запроса:

Параметр Тип Описание
id string Идентификатор сообщения

В ответ на запрос, платформа предоставит ответ в формате JSON с соответствующим HTTP статусом. Коды ответов и статусы можно посмотреть в таблице

Пример успешного ответа:

HTTP/1.1 200 OK { "error":0, "status":"3" }

где:

Параметр Тип Описание
error integer Код ошибки
status string Код статуса сообщения. Значения кодов описаны в таблице

Пример ответа на запрос с ошибкой:

HTTP/1.1 400 Bad request { "error":12 }
Коды статусов СМС
Статус Описание
0 Новое
1 Отправляется
2 Отправлено
3 Доставлено
-1 Отклонено
-2 Приостановлено
Коды ошибок и статусы ответов
Код ошибки Код HTTP Описание
0 200 Запрос прошел успешно
1 401 Ошибка авторизации
2 400 Не указано имя отправителя
3 400 Недоступное имя отправителя
4 400 Не указан номер получателя
5 400 Неверно указан номер получателя
12 400 Тема длиннее 15 символов
6 400 Отсутствует текст сообщения
8 404 Сообщение с указанным ID не найдено
9 403 Недостаточно средств
10 400 Неверно указана дата отправки или превышает 5 дней
11 400 Сообщение не соответствует ни одному разрешенному шаблону
500 500 Системная ошибка, обратитесь в службу поддержки