Используйте polling как базовый механизм для генерации видео, потому что каждая асинхронная задача возвращает ID задачи, который можно запрашивать. Добавляйте webhooks только тогда, когда выбранный video endpoint поддерживает callback URL, и сохраняйте polling как источник истины на случай пропущенной доставки callback или callback, зависящих от конкретного провайдера.Documentation Index
Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
Use this file to discover all available pages before exploring further.
Создать задачу видео
Следующий запрос создает минимальную задачу видео и сохраняет возвращенный ID. Добавляйте поля duration, resolution или callback только тогда, когда на странице выбранной модели задокументированы эти поля.Проверить статус через polling
Следующий запрос проверяет статус задачи видео:video_url, если адаптер модели предоставляет URL результата; в противном случае используйте поля результата, специфичные для модели, или маршрут содержимого /v1/videos/{id}/content, если эта модель поддерживает проксированные загрузки.
Получить webhook
CometAPI не определяет один универсальный callback payload для каждой video model. Рассматривайте callbacks как pass-through события, специфичные для провайдера, сохраняйте raw body и сверяйте финальное состояние с помощью polling. Следующий обработчик Express принимает video callback и сохраняет событие:Частые ошибки
| Ошибка | Решение |
|---|---|
| Потерянный callback | Выполняйте polling по ID задачи, пока ваше приложение не сохранит терминальное состояние. |
| Дублирующийся callback | Сделайте обработку callback идемпотентной по ID задачи. |
| Callback отклонен | Быстро возвращайте ответ 2xx, затем обрабатывайте задачу в фоне. |
| Несоответствие payload, специфичного для провайдера | Сохраняйте raw payload callback и нормализуйте его в своем приложении. |
Отсутствует video_url | Считайте video_url необязательным и используйте polling вместе с полями результата, специфичными для модели, или /v1/videos/{id}/content, когда это доступно. |