Перейти к содержимому
AISARAISAR
Стикеры

Стикеры

Импорт набора стикеров Telegram завершён

sticker.pack.import.finished

С 2026-08-23 `POST /v1/sticker-packs/import/telegram` только запускает фоновую загрузку и сразу отвечает `202 {status: "queued", name, title}` — сам результат (успех или ошибка) приходит этим событием. При успехе также отправляется отдельное `sticker.pack.created` для нового пака; при ошибке `pack_id` — `null`, а `imported`/`skipped_animated` — `0`. `error` — человекочитаемое сообщение об ошибке (например, набор оказался полностью анимированным или стал недоступен между проверкой ссылки и запуском задачи) либо `null` при успехе; никогда не содержит токен бота или сырой текст сетевой ошибки. Импортированные стикеры несут собственный `emoji`-тег Telegram как `emoji_tags` (доступно через `GET /v1/sticker-packs` после импорта, не в этом payload).

HTTP-запрос

AISAR отправляет подписанный POST-запрос на ваш webhook_url:

http
POST {webhook_url}
Content-Type: application/json
X-AISAR-Signature: sha256=...

{
  "event": "sticker.pack.import.finished",
  "event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
  "timestamp": "2026-08-23T12:25:00.000000Z",
  "company_id": 1,
  "data": {
    "name": "CoolPack",
    "title": "Cool Pack",
    "pack_id": 16,
    "imported": 24,
    "skipped_animated": 6,
    "truncated": false,
    "error": null
  }
}

Заголовок X-AISAR-Signature содержит HMAC-SHA256 подпись тела запроса — используйте её, чтобы убедиться, что запрос пришёл от AISAR.

Пример payload

json
{
  "event": "sticker.pack.import.finished",
  "event_id": "evt_01JXXXXXXXXXXXXXXXXXXXXX",
  "timestamp": "2026-08-23T12:25:00.000000Z",
  "company_id": 1,
  "data": {
    "name": "CoolPack",
    "title": "Cool Pack",
    "pack_id": 16,
    "imported": 24,
    "skipped_animated": 6,
    "truncated": false,
    "error": null
  }
}

Поля payload

ПолеТипОписание
namestringИмя набора стикеров Telegram (из ссылки или как есть)
titlestring|nullЗаголовок набора со стороны Telegram; `null`, если Telegram его не вернул
pack_idinteger|nullID созданного пака стикеров; `null`, если импорт завершился ошибкой
importedintegerЧисло успешно импортированных статичных стикеров; `0` при ошибке
skipped_animatedintegerЧисло пропущенных анимированных стикеров (TGS/WebM)
truncatedboolean`true`, если набор длиннее лимита в 120 стикеров на пак и часть была отброшена
errorstring|nullЧеловекочитаемое сообщение об ошибке; `null` при успешном импорте