Практика работы с Telegram
Парсинг через API Telecobra: создать задачу и получить результат
Поля POST /api/parsing, проверка статуса и постраничное чтение результата. Примеры используют условные идентификаторы и требуют собственного ключа доступа.

Короткий ответ#
POST /api/parsing создаёт задачу в состоянии pending. Её следует считать готовой к автоматическому выполнению, а не черновиком с обязательным вторым подтверждением. Сохраните ID из ответа и далее проверяйте эту задачу через GET; повторный POST может создать другую задачу.
Как различать создание, выполнение и получение результата?#
| Этап | Что сохраняет интеграция | Что нельзя заключить |
|---|---|---|
| HTTP 201 и id | ID принятой задачи | Сбор уже завершён |
| Проверка состояния | status, счётчики, ошибку при наличии | Незавершённые строки отсутствуют в Telegram |
| done и чтение results | Строки каждой страницы и next_offset | Первая страница содержит весь результат |
Строки результата читают до конца пагинации, используя next_offset из ответа. Первая страница не равна всей выгрузке. Разбор 230 строк и готовые ответы API позволяют проверить логику локально без запуска задачи.
При потере ответа на POST сначала установите, была ли задача создана. Эта инструкция не обещает идемпотентности создания: одинаковое тело запроса само по себе не является защитой от дублей. Храните ID отдельно от секретного ключа и не записывайте заголовок авторизации в публичный журнал.
Уточнение жизненного цикла сделано по доступной технической версии и опубликованному контракту. Новая production-задача для редакционной проверки не запускалась; наличие обработчика не является доказательством успешного сбора с любого источника.
Авторизация и подготовка#
API принимает заголовок X-API-Key или Authorization: Bearer …. Используйте свой ключ Telecobra и собственный подключённый аккаунт. Нужен действующий доступ платформы. Bot API token и Telegram API Hash не заменяют ключ Telecobra.
Сначала определите доступный источник, нужный режим и ожидаемые поля. В примерах используются условные идентификаторы. Отправка POST с вашими данными создаёт задачу в pending для дальнейшего выполнения. Сверьте аккаунт и источник до отправки запроса; отдельного обязательного подтверждения запуска этот маршрут не обещает.
Создание задачи парсинга#
POST https://telecobra.com/api/parsing
X-API-Key: YOUR_TELECOBRA_KEY
Content-Type: application/json
{
"source_link": "https://t.me/YOUR_OWN_GROUP",
"account_id": 123,
"max_count": 10,
"parse_mode": "members",
"username_only": false,
"exclude_bots": true
}Замените 123 своим внутренним ID аккаунта Telecobra, а источник — сообществом, к которому у него есть доступ. Условный предел 10 выбран для небольшого примера и не является безопасной квотой Telegram.
| Поле | Назначение |
|---|---|
| source_link | Обязательный источник |
| account_id | Обязательный ID своего активного аккаунта в платформе |
| max_count | Ограничение объёма выбранной задачи |
| parse_mode | Режим; в примере members |
| username_only / exclude_bots | Логические фильтры true/false |
При принятии запроса ответ имеет HTTP 201 и содержит id и status, например {"id": 456, "status": "pending"}. Это условный ответ. Создание ещё не означает завершение сбора.
Получение статуса задачи через API#
GET https://telecobra.com/api/parsing/456/status
X-API-Key: YOUR_TELECOBRA_KEYСохраните полученный id и используйте его для последующих запросов. Ответ включает status, parsed_count, error_msg и журнал. При наличии структурированной диагностики учитывайте её вместе с текстом ошибки.
Не отправляйте новый POST только потому, что задача ещё выполняется. При потере ответа после создания сначала проверьте список GET /api/parsing и свои сохранённые данные, чтобы не создать дубль. Автоматический повтор POST без такого разбора не нужен.
Получение строк результата#
GET https://telecobra.com/api/parsing/456/results?limit=100&offset=0
X-API-Key: YOUR_TELECOBRA_KEYРезультат доступен после статуса done. В ответе есть members, total_count, returned_count и next_offset. Передавайте next_offset в следующий запрос, пока он не станет null. Параметр limit допускает 1–10000; offset — неотрицательное целое.
Записи относятся к указанной задаче. Поле audience_id может быть null: получение результата не создаёт аудиторию автоматически. Для CSV/Excel используйте выгрузку задачи в интерфейсе.
Проверить пагинацию без запуска задачи
Скачайте учебный набор из трёх страниц JSON. Он воспроизводит схему 100 + 100 + 30 из начала статьи. Вымышленные TRAIN-* намеренно не являются настоящими Telegram ID; файл не содержит ключа и не выполняет запросы к платформе.
| offset запроса | returned_count | next_offset | Всего собрано |
|---|---|---|---|
| 0 | 100 | 100 | 100 |
| 100 | 100 | 200 | 200 |
| 200 | 30 | null | 230 |
- Начните с offset=0. Для каждой страницы сравните returned_count с длиной members.
- Следуйте только значению next_offset из ответа. Число 0 — допустимое смещение, а null обозначает окончание; не смешивайте их.
- Сохраняйте уже прочитанные смещения. Повторный next_offset в этом упражнении означает цикл и требует остановки проверки, а не бесконечного чтения.
- В конце сравните сумму returned_count с total_count и проверьте уникальность учебных меток. Здесь должны получиться 230 строк и 230 разных меток.
Две ошибки для самопроверки: чтение только первой страницы оставит 100 из 230 строк. Если в копии второй страницы заменить одну метку меткой из первой, сумма останется 230, но уникальных меток станет 229. Оба случая требуют разбора; равенства общего числа строк недостаточно.
Повтор идентификатора в реальном результате нужно оценивать по документированному правилу конкретного режима: учебный набор специально имеет уникальные метки. Если total_count меняется во время чтения, сохраните наблюдения и установите причину до заключения о полноте. Этот пример не обещает неизменяемый снимок API или идемпотентность POST.
Набор и контрольные ошибки проверены локально 11 октября 2026 года. Ожидаемые итоги. Новый запуск production-задач и проверка доступности API этим упражнением не выполняются.
Разбор отказов и интеграция#
| Ответ | Следующее действие |
|---|---|
| 401 / API key required | Передать заголовок авторизации |
| 403 | Проверить ключ, доступ и состояние подписки |
| Аккаунт занят или недоступен | Разобрать status и reason_code; не считать это ошибкой источника автоматически |
| Job not finished yet | Продолжить проверку состояния той же задачи |
| Таймаут после создания | Уточнить, была ли задача создана, до повторного POST |
Для визуальных конструкторов используйте проверку статуса из n8n и Make. Журналы внешней системы должны хранить ID задачи и результат без действующего API-ключа.
На чём основан разбор#
Основа разбора — указанные документы и явно обозначенные учебные примеры. Они не являются результатами клиентов; новый запуск задач в Telegram для этой редакции не проводился.
- Справочник API Telecobra (HTML) — Публичные маршруты; конкретную версию интеграции следует сверять с ответами своего кабинета.
Дополнительные документы для сверки: telecobra.com/guides/
Редактура структуры: . Упорядочены разделы и пояснения. Даты исходных снимков, примеров и функциональных проверок указаны отдельно.
Источники и документация#
Одна платформа · разные задачи
Подписка Telecobra
Соберите инструменты для работы с Telegram в одном кабинете. Сроки доступа, цены и условия — на странице подписки.
В этой инструкции описана только часть возможностей платформы. Полный список доступен в разделе функций.