Почати
Ваш перший запит в чотири кроки
Keep your main SMSMobileAPI subscription active; Telegram connection, API access, sending and sent-message history pause when it expires.
Підключіть свій Telegram акаунт через QR code на панелі та синхронізуйте його контакти.
Скопіюйте свій ключ SMSMobileAPI з My API Key та зберігайте його на своєму сервері.
Перелічіть контакти та скопіюйте contact_id потрібного отримувача.
Send JSON for text, or multipart/form-data to attach an image or document. Use the returned message_id to check the sent log.
YOUR TELEGRAM ACCOUNT
Підключіться, оберіть контакт, а потім відслідковуйте відправлення.
Кожен клієнт сканує QR code, щоб підключити свій власний акаунт Telegram. Синхронізуйте контакти на панелі, використайте повернений 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'
Приклад відповіді
{"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/Ставить в чергу один текстовий message для контакту з вашого підключеного акаунту Telegram.
Використовуйте contact_id з кінцевої точки contacts. Зберігайте 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"}'
Приклад відповіді
{"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 з тим самим контактом і повідомленням. Змінений payload з тим самим ключем поверне 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'
Приклад відповіді
{"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"}'
Приклад відповіді
{"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/Повертає нещодавні повідомлення у черзі, що відправляються, відправлені та з помилками, спочатку новіші.
Опитуйте цей кінцевий пункт з 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'
Приклад відповіді
{"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
Приклад відповіді
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 | Коди | Що робити |
|---|---|---|
| 401 | api_key_required / invalid_api_key | Надішліть дійсний заголовок X-SMSMobileAPI-Key. |
| 402 | subscription_expired | Renew the SMSMobileAPI subscription linked to the API key. Telegram API access resumes after renewal. |
| 403 | API_ENDPOINT_DISABLED | Увімкніть Telegram API або цей конкретний endpoint в My API Key. |
| 404 | contact_not_found | Синхронізуйте контакти та використайте ID з вашого власного з’єднання Telegram. |
| 409 | telegram_not_connected / idempotency_conflict | Підключити Telegram або вибрати новий ключ ідемпотентності для зміненого вмісту. |
| 422 | invalid_message / invalid_pagination | Виправте повідомлення, ID контакту або параметри пагінації. |
| 429 | queue_full / rate_limited | Чекайте, поки очистяться чергові відправлення або обмеження на хвилину. |
| 503 | sending_unavailable / service_unavailable | Працюючий процес відправлення або сховище тимчасово недоступні; повторіть пізніше. |
| 503 | media_not_ready | File sending requires the current Telegram service update. Text sending remains available. |
| 404 / 410 | media_not_found / media_expired | The file is unavailable or past its 90-day retention period. |
Потрібна допомога?
Внести контекст запиту — не секрети.
Поділитися кінцевою точкою, часовим кроком, статус HTTP і санітарно-гігієнічним реагуванням. Ніколи не включають ключі API, токени або контент для приватного повідомлення.
Офіційне мобільне додаток
Забезпечений міст між телефоном, панельом і API.
SMS і операції дзвінків проходять через офіційний додаток SMSMobileAPI, встановлений на підключеному телефоні. Додаток надійно справляє пристрій з вашим обліковим записом, синхронізує уповноважені події та посилює мобільний зв'язок з панельним приладом та REST API.
- Випущені релізи, що розповсюджуються через офіційні списки Google Play та Apple App Store
- Огляд платформи Google та Apple, реєстрація та управління розподілами
- Захищений пристрій, HTTPS транспортно-автентифікований API
- Для мобільних функцій, які ви включите


