Коды авторизации Telegram Gateway#
В данном разделе приведено описание особенностей передачи авторизационных кодов через платформу в Telegram Gateway.
Для отправки кода необходимо передать запрос, содержащий соответствующий код. Указанный код (без сопутствующего текста) будет передан оператору, который вставит его в текст шаблона сообщения.
Подробнее
Сервис Telegram Gateway предназначен для доставки пользователям мессенджера Telegram авторизационных и верификационных цифровых кодов.
Отправка кодов происходит от имени официального канала Verification Codes.
Если пользователь скрывает свой номер телефона в настройках Telegram, это не влияет на доставку сообщения. Также на доставку кодов не влияет наличие или отсутствие у пользователя подписки Telegram Premium.
На данный момент сервис поддерживает:
- отправку сообщений с кодами авторизации через Telegram;
- получение статусов доставки сообщений;
- каскадную передачу сообщений на альтернативные каналы в случае недоставки в Telegram (при необходимости).
Запрос на отправку#
1 {
2 "login": "ВАШ_ЛОГИН",
3 "password": "ВАШ_ПАРОЛЬ",
4 "useTimeDiff": true,
5 "id": "superId",
6 "shortenLinks": false,
7 "scheduleInfo": {
8 "timeBegin": "10:00",
9 "timeEnd": "12:00",
10 "weekdaysSchedule": "123"
11 },
12 "destAddr": "НОМЕР_АБОНЕНТА",
13 "message": {
14 "type": "TGCODE",
15 "data": {
16 "text": "12345",
17 "serviceNumber": "ИМЯ_ОТПРАВИТЕЛЯ",
18 "ttl": 120,
19 "ttlUnit": "SECONDS"
20 }
21 }
22 }
Параметр |
Обязат. |
Тип |
Описание |
---|---|---|---|
login |
да |
string |
Имя Партнёра. |
password |
да |
string |
Пароль Партнёра. |
destAddr |
да |
string |
Номер телефона абонента. Подробнее
Содержит код страны, код оператора и номер телефона.
Для РФ код может быть
Примеры: |
id |
нет |
string |
Уникальный идентификатор на стороне Партнёра. ПодробнееДанный параметр нужен для контроля повторных отправок и дублирования (сервис контроля включается отдельно). Партнёр может вызывать Сервис-провайдера (запрос на отправку сообщения) с одним и тем же id несколько раз. При этом: отправка сообщения абоненту будет выполнена только один раз (по первому запросу). В ответах на запросы Сервис-провайдер вернет Партнёру один и тот же идентификатор сообщения в системе Сервис-провайдера (тот же, что на первый запрос). Сервис-провайдер опционально возвращает Партнёру данный идентификатор при его наличии в отчёте о доставке сообщения. |
message |
да |
object |
Параметры отправляемого сообщения. ПодробнееСодержит информацию о типе сообщения и его содержимом. |
{message}
type
|
да |
enum |
Тип сообщения. Указать значение |
{message}
data
|
да |
object |
Параметры отправляемых данных. |
{message/data}
text
|
да |
string |
Текст отправляемого сообщения. Сообщение должно содержать код от четырёх до восьми цифр.
Сообщения без цифровых кодов доставлены не будут.
ПодробнееКоличество символов: не более 2000. Если в сообщении несколько кодов, будет передан только первый.
Любой сопутствующий текст на кириллице или латинице (включая эмоджи)
будет проигнорирован и заменен на стандартный шаблон Telegram в
зависимости от языка пользовательского интерфейса: |
{message/data}
serviceNumber
|
да |
string |
Сервисное имя, от которого осуществляется отправка сообщения. |
{message/data}
ttl
|
да |
integer |
Срок жизни сообщения. ПодробнееДопустимый диапазон, сек: от 30 до 3600. Примечание. При ttl = 0 или отсутствии параметра в запросе берётся значение из настроек по умолчанию, которые задаются при настройке интеграции отдельно для каждого клиента. |
{message/data}
ttlUnit
|
да |
enum |
Единица измерения периода доставки сообщения. Подробнее
Передается только вместе с Допустимые значения:
|
extraParam |
нет |
string |
Дополнительные параметры, передаваемые в сообщении. Подробнее
Передаются в виде
Пример: Символ запятой в название параметра входить не может, но может входить в его значение. В в этом случае он должен удваиваться.
Пример: |
registeredDelivery |
нет |
integer |
Необходимость отчётов о доставке. ПодробнееУкажите, нужны ли отчёты о доставке для отслеживания статусов. Допустимые значения:
При отправке каскадной цепочки сообщений, для получения отчётов
по всем типам сообщений необходимо указать значение |
notifyUrl |
нет |
string |
Имя хоста входящего API для получения отчета о доставке. ПодробнееЭтот параметр в запросе необязательный, но при его отправке нужно учесть следующее:
При невыполнении любого из указанных условий будет сгенерирована ошибка, запрос не будет выполнен. |
Ответ на запрос#
После отправки сообщения Сервис-провайдер синхронно возвращает ответ.
Ответ при успешной отправке#
В случае успешной отправки возвращается HTTP-код 200 OK
.
1 {
2 "mtNum": "7390612217"
3 "id": "8770630"
4 }
Параметр |
Тип данных |
Описание |
---|---|---|
mtNum |
string |
Идентификатор цепочки отправки, присваиваемый платформой Сервис-провайдера. |
id |
string |
Уникальный идентификатор на стороне Партнёра. Присутствует, если был передан при отправке. |
Ошибки при отправке#
Для ошибочных результатов HTTP-код ответа будет отличный от 200 OK
(см. Коды ошибок отправки).
1 {
2 "error": {
3 "code": 4,
4 "description": "Invalid request"
5 },
6 "extendedDescription": "В сообщении отсутствует код"
7 }
В данном примере в Telegram-сообщении отсутствует цифровой авторизационный код.
Параметр |
Тип данных |
Описание |
---|---|---|
error |
object |
Информация об ошибке. |
error/code |
int |
Код ошибки. |
error/description |
string |
Краткое описание ошибки. |
extendedDescription |
string |
Подробное описание ошибки (необязательный параметр). |
Коды ошибок отправки#
Код |
Описание |
HTTP-код |
---|---|---|
1 |
Service is unavailable |
503 |
2 |
Invalid IP-address |
403 |
3 |
Too many connections |
429 |
4 |
Invalid request |
400 |
5 |
Invalid login |
401 |
6 |
Invalid password |
401 |
7 |
serviceNumber is not defined |
400 |
8 |
destAddr is not correct |
406 |
9 |
Message type is not correct |
406 |
10 |
Prohibited sending duplicates |
409 |
11 |
Invalid TTL |
406 |
100 |
100 |
500 |
Статусы доставки сообщений#
Для получения статусов необходимо настроить Сервис получения статусов доставки сообщений.