Ваши SMS отправляются с вашего телефона.Узнайте, как это работает
ПЛАТФОРМАAPI первая архитектураЗащищенное устройствоВидимость доставкиМногофункциональный контрольВерсионная документация
Разработчик Hub/API Telegram

TG · 6 документированные операции

Документация Telegram API

Используйте ваш подключённый Telegram аккаунт из вашего приложения: найдите контакты, поставьте сообщение в очередь и отслеживайте его статус отправки.

Контакты и сообщения Telegram, подключённые к бизнес-приложению
Базовый URL RESThttps://api.smsmobileapi.com

JSON ответы · HTTPS требуется · UTF-8

Подключите ключ API

Подключитесь один раз, затем тестируйте конечные точки для SMS, звонков, уведомлений, WhatsApp, Telegram и электронной почты.

Начни здесь

Ваш первый запрос в четыре этапа

1

Keep your main SMSMobileAPI subscription active; Telegram connection, API access, sending and sent-message history pause when it expires.

2

Подключите собственный аккаунт Telegram, авторизовавшись через QR code в панели управления, и синхронизируйте его контакты.

3

Скопируйте ваш ключ SMSMobileAPI из My API Key и храните его на своём сервере.

4

Перечислите контакты и скопируйте contact_id предполагаемого получателя.

5

Send JSON for text, or multipart/form-data to attach an image or document. Use the returned message_id to check the sent log.

ВАШ АККАУНТ TELEGRAM

Подключитесь, выберите контакт и затем отслеживайте отправку.

Счет охватил

Каждый клиент сканирует QR code, чтобы подключить свой аккаунт Telegram. Синхронизируйте контакты в панели, используйте возвращённый contact ID для постановки сообщения в очередь, затем проверьте его статус в журнале отправленных.

1

Соединять

Отсканируйте QR code на странице Telegram в панели управления.

2

Найти контакт

Синхронизируйте, затем найдите contact ID через API.

3

Отправлять

POST одно сообщение JSON с ключом идемпотентности.

4

Отслеживать

Просмотр состояний queued, sent, unknown или error.

Аутентификация

Держите учетные данные на своем сервере

Send X-SMSMobileAPI-Key: YOUR_API_KEY in an HTTPS header. Keep this key on your server, never in browser JavaScript or a public repository. The endpoints are scoped to the Telegram account connected to that SMSMobileAPI account. A short-lived signed download_url can be opened without the key. Access can be disabled in My API Key.

Прежде чем интегрировать
  • An expired SMSMobileAPI subscription blocks Telegram API access with HTTP 402 subscription_expired, including attachment downloads. Renew in the dashboard to restore access; existing connection and history are preserved.
  • QR code связывает каждый аккаунт клиента Telegram. Сообщения отправляются из этого аккаунта, а не из общего SMSMobileAPI аккаунта.
  • Ответ 202 означает, что запрос поставлен в очередь. Это не доказывает, что Telegram принял или доставил сообщение. Проверяйте журнал отправленных, чтобы узнать статус или ошибки.
  • Сервис в настоящее время отправляет по одному синхронизированному контакту или сохранённому @username за запрос. Соблюдайте правила Telegram и согласие получателя.
  • Запросы ограничены 15 новыми сообщениями в минуту и 30 сообщениями в очереди на подключённый аккаунт. При повторной отправке используйте стабильный idempotency_key.
  • Images and documents can be up to 5 MB. The send queue holds file bytes only until processing finishes; a separate private copy supports later downloads. File bytes are never embedded in the sent log.
  • Newly sent attachments are kept in private storage for 90 days. The sent log returns a download_url valid for 15 minutes; request the log again to get a new link. Older attachments sent before this feature have no downloadable copy.
ПОЛУЧАТЬ

Список контактов Telegram

#
Смыслhttps://api.smsmobileapi.com/telegram/contacts/

Возвращает контакты, доступные в вашем подключённом Telegram аккаунте.

Когда использовать его

Ищите по отображаемому имени или @username, затем используйте contact_id для отправки.

Параметры

ИмяТипТребованиеОписание
q нить факультативный Необязательный поиск по имени или имени пользователя, до 80 символов.
limit целое число факультативный Размер страницы от 1 до 100; по умолчанию 50.
cursor целое число факультативный Используйте paging.next_cursor из предыдущего ответа; не указывайте для первой страницы.

Запросить пример

кёрл
curl -G 'https://api.smsmobileapi.com/telegram/contacts/' \
  -H 'X-SMSMobileAPI-Key: YOUR_API_KEY' \
  --data-urlencode 'q=Alex' \
  --data-urlencode 'limit=50'

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

JSON
{"ok":true,"data":[{"contact_id":42,"display_name":"Alex Example","username":"alex_example","source":"telegram"}],"paging":{"has_more":false,"next_cursor":null}}

Хотите выполнить этот запрос?Подключите ключ API в верхней части страницы, чтобы разблокировать интерактивный тестер.

Подключите ключ ↑
Хорошо знать
  • ID контактов принадлежат подключённому аккаунту; ID из другого аккаунта использовать нельзя.
  • Обновляйте контакты через Dashboard → Telegram Contacts, если новый человек не появляется.
ПОЧТА

Отправить сообщение Telegram

#
Смыслhttps://api.smsmobileapi.com/telegram/send/

Ставит в очередь одно текстовое сообщение для контакта из вашего подключённого аккаунта Telegram.

Когда использовать его

Используйте contact_id из endpoints контактов. Сохраняйте message_id для отслеживания.

Параметры

ИмяТипТребованиеОписание
contact_id целое число Необходимый ID контакта, возвращаемый /telegram/contacts/.
message нить Необходимый Текст в кодировке UTF-8, 1–4096 символов и не более 16 000 байт.
idempotency_key Строка UUID факультативный Стабильный 36-символьный ключ в стиле UUID с буквами в нижнем регистре. Повторно используйте при сетевых повторах, чтобы избежать дублирования сообщений.

Запросить пример

кёрл
curl -X POST 'https://api.smsmobileapi.com/telegram/send/' \
  -H 'X-SMSMobileAPI-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"contact_id":42,"message":"Your appointment is confirmed.","idempotency_key":"2d40bb10-cc42-4c30-a282-93fc6dd8e161"}'

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

JSON
{"ok":true,"message_id":123,"status":"queued","idempotency_key":"2d40bb10-cc42-4c30-a282-93fc6dd8e161","duplicate":false}

Хотите выполнить этот запрос?Подключите ключ API в верхней части страницы, чтобы разблокировать интерактивный тестер.

Подключите ключ ↑
Хорошо знать
  • HTTP 202 означает помещено в очередь; это не подтверждение доставки. Повторный запрос с теми же данными вернёт HTTP 200 с duplicate=true и оригинальным message_id.
  • Для повторных попыток используйте тот же idempotency_key с тем же контактом и сообщением. Изменённая полезная нагрузка с тем же ключом вернёт HTTP 409.
ПОЧТА

Send a Telegram image or document

#
Смыслhttps://api.smsmobileapi.com/telegram/send/

Queue one file for a contact, with an optional caption.

Когда использовать его

Use multipart/form-data. The field name for the attachment is file.

Параметры

ИмяТипТребованиеОписание
contact_id целое число Необходимый ID контакта, возвращаемый /telegram/contacts/.
file file Необходимый One JPG, PNG, WebP, PDF, TXT, CSV, JSON, ZIP or Office file, at most 5 MB.
message нить факультативный Optional caption of at most 1024 characters.
idempotency_key Строка UUID факультативный Reuse the same key and identical file and caption when retrying.

Запросить пример

кёрл
curl -X POST 'https://api.smsmobileapi.com/telegram/send/' \
  -H 'X-SMSMobileAPI-Key: YOUR_API_KEY' \
  -F 'contact_id=42' \
  -F 'message=Here is the document.' \
  -F 'file=@./document.pdf' \
  -F 'idempotency_key=2d40bb10-cc42-4c30-a282-93fc6dd8e161'

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

JSON
{"ok":true,"message_id":124,"status":"queued","idempotency_key":"2d40bb10-cc42-4c30-a282-93fc6dd8e161","duplicate":false}

Хотите выполнить этот запрос?Подключите ключ API в верхней части страницы, чтобы разблокировать интерактивный тестер.

Подключите ключ ↑
Хорошо знать
  • Do not set Content-Type manually; cURL adds the multipart boundary.
  • For JSON clients, send file_base64 with the Base64 file contents and filename, alongside contact_id and an optional message caption.
  • A queued response is not proof of delivery. Check GET /telegram/sent/?message_id=124.
  • The connected Telegram account sends the file to one contact.
ПОЧТА

Send a Telegram file using JSON

#
Смыслhttps://api.smsmobileapi.com/telegram/send/

Queue one image or document using a Base64 string when multipart upload is inconvenient.

Когда использовать его

Encode the original file bytes with Base64. Do not include an API key in the JSON body.

Параметры

ИмяТипТребованиеОписание
contact_id целое число Необходимый ID контакта, возвращаемый /telegram/contacts/.
filename нить Необходимый Original file name, for example photo.png or invoice.pdf.
file_base64 нить Необходимый Raw Base64 file contents or a data URI; decoded file must be 5 MB or smaller.
message нить факультативный Optional caption of at most 1024 characters.
idempotency_key Строка UUID факультативный Reuse the same key with identical file contents, filename and caption on retries.

Запросить пример

кёрл
curl -X POST 'https://api.smsmobileapi.com/telegram/send/' \
  -H 'X-SMSMobileAPI-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"contact_id":42,"filename":"photo.png","file_base64":"BASE64_ENCODED_FILE","message":"See attached","idempotency_key":"2d40bb10-cc42-4c30-a282-93fc6dd8e161"}'

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

JSON
{"ok":true,"message_id":125,"status":"queued","idempotency_key":"2d40bb10-cc42-4c30-a282-93fc6dd8e161","duplicate":false}

Хотите выполнить этот запрос?Подключите ключ API в верхней части страницы, чтобы разблокировать интерактивный тестер.

Подключите ключ ↑
Хорошо знать
  • Replace BASE64_ENCODED_FILE with the actual Base64 of a supported file.
  • Use multipart/form-data instead if your client supports direct file upload; it avoids Base64 size overhead.
ПОЛУЧАТЬ

Список отправленных сообщений Telegram

#
Смыслhttps://api.smsmobileapi.com/telegram/sent/

Возвращает недавние сообщения в очереди, отправляемые, отправленные и с ошибками, сначала самые новые.

Когда использовать его

Опрашивайте этот endpoint с message_id, чтобы отслеживать сообщение, возвращённое /telegram/send/.

Параметры

ИмяТипТребованиеОписание
message_id целое число факультативный Вернуть конкретный идентификатор сообщения из /telegram/send/.
contact_id целое число факультативный Ограничить результаты одним идентификатором контакта.
status queued | sending | sent | error | unknown факультативный Фильтровать по состоянию отправки.
limit целое число факультативный Размер страницы от 1 до 100; по умолчанию 50.
cursor целое число факультативный Используйте paging.next_cursor для получения более старых сообщений.

Запросить пример

кёрл
curl -G 'https://api.smsmobileapi.com/telegram/sent/' \
  -H 'X-SMSMobileAPI-Key: YOUR_API_KEY' \
  --data-urlencode 'message_id=123'

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

JSON
{"ok":true,"data":[{"message_id":123,"contact_id":42,"contact_name":"Alex Example","username":"alex_example","message":"Your appointment is confirmed.","type":"text","media":null,"status":"sent","telegram_message_id":781,"error_code":null,"error_detail":null,"attempts":1,"queued_at":"2026-11-06T09:42:00+00:00","sent_at":"2026-11-06T09:42:04+00:00"}],"paging":{"has_more":false,"next_cursor":null}}

Хотите выполнить этот запрос?Подключите ключ API в верхней части страницы, чтобы разблокировать интерактивный тестер.

Подключите ключ ↑
Хорошо знать
  • The top-level type is text, image or file. For an attachment, media contains the filename, MIME type, size, download_url and available_until; media is null for text messages. File bytes are not embedded in the log.
  • The download_url opens in a browser for 15 minutes. Refresh this endpoint for a new link while the file remains available.
  • sent означает, что Telegram принял сообщение от подключённого аккаунта; доставка получателю и подтверждения прочтения не отслеживаются.
  • unknown означает, что исход отправки не удалось подтвердить. Не перечитывайте сообщение автоматически в этом состоянии.
ПОЛУЧАТЬ

Download a sent Telegram attachment

#
Смыслhttps://api.smsmobileapi.com/telegram/media/

Downloads a previously sent image or document while it remains available.

Когда использовать его

Use media.download_url from the sent log, or call this endpoint with the account API key.

Параметры

ИмяТипТребованиеОписание
message_id целое число Необходимый Message ID returned by /telegram/send/.

Запросить пример

кёрл
curl -L 'https://api.smsmobileapi.com/telegram/media/?message_id=124' \
  -H 'X-SMSMobileAPI-Key: YOUR_API_KEY' \
  -o attachment

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

JSON
Binary image or document bytes (Content-Type matches the file)

Хотите выполнить этот запрос?Подключите ключ API в верхней части страницы, чтобы разблокировать интерактивный тестер.

Подключите ключ ↑
Хорошо знать
  • A download_url returned by /telegram/sent/ is signed and works without an API key for 15 minutes. Keep it private.
  • The authenticated endpoint requires the Telegram sent-log API access switch.
  • Files are retained for 90 days; the type and filename remain in the log after expiry.

Поиск неисправностей

Ошибки и безопасные повторы

Прочитайте статус HTTP и поле ошибок JSON перед повторным использованием. Не повторяйте валидацию или сбои аутентификации без предварительного исправления запроса.

HTTPКодЧто делать
401api_key_required / invalid_api_keyОтправьте действительный заголовок X-SMSMobileAPI-Key.
402subscription_expiredRenew the SMSMobileAPI subscription linked to the API key. Telegram API access resumes after renewal.
403API_ENDPOINT_DISABLEDВключите Telegram API или этот конкретный endpoint в My API Key.
404contact_not_foundСинхронизируйте контакты и используйте идентификатор из вашей собственной Telegram связи.
409telegram_not_connected / idempotency_conflictПодключите Telegram или выберите новый ключ идемпотентности для изменённого содержимого.
422invalid_message / invalid_paginationИсправьте сообщение, ID контакта или параметры пагинации.
429queue_full / rate_limitedДождитесь очистки очереди отправки или снятия лимита по минуте.
503sending_unavailable / service_unavailableРабочий процесс отправки или хранилище временно недоступны; повторите позже.
503media_not_readyFile sending requires the current Telegram service update. Text sending remains available.
404 / 410media_not_found / media_expiredThe file is unavailable or past its 90-day retention period.
Правило повторного использованияПовторите только временные ответы 429 и 5xx. Начните через 1 секунду, затем отойдите на 2, 4 и 8 секунд.

Нужна помощь?

Приведите контекст запроса, а не ваши секреты.

Поделитесь конечной точкой, временной меткой, статусом HTTP и дезинфицированным ответом. Никогда не включайте ключи API, токены или содержимое личных сообщений.

Поддержка API
Безопасное мобильное приложение SMSMobileAPI, подключающее телефон к веб-панели управления и REST API для SMS и операций вызова
Зашифрованное мобильное-платформенное соединение

Официальное мобильное приложение

Защищенный мост между телефоном, приборной панелью и API.

Операции SMS и вызова проходят через официальное приложение SMSMobileAPI, установленное на подключенном телефоне. Приложение надежно соединяет устройство с вашей учетной записью, синхронизирует авторизованные события и связывает мобильную сеть с приборной панелью и REST API.

1Мобильное приложениеПары телефона и его SIM 2Зашифрованная ссылкаАутентификация и защита данных при транзите 3Обновление APIКонтролирует рабочие процессы и активность
  • Подписанные релизы, распространяемые через официальные списки Google Play и Apple App Store
  • Google и Apple анализируют, подписывают и контролируют дистрибуцию
  • Защищенное сопряжение устройств, транспортировка HTTPS и аутентифицированный доступ к API
  • Только разрешения, необходимые для мобильных функций, которые вы включаете
Получите официальное приложение SMSMobileAPI в Google Play Скачать официальное приложение SMSMobileAPI в Apple App Store
Возможности зависят от разрешений и фонового доступа, разрешенных Android или iOS.