Общие ошибки API

    5 мин чтения
    ·
    110 просмотров
    ·
    Обновлено 6 сентября 2026

    Ошибки и лимиты API

    Все ответы WazzaBee API возвращаются в формате JSON. При ошибке поле error содержит описание проблемы на русском языке.

    Формат ответа при ошибке

    {
      "error": "Описание ошибки",
      "details": "Дополнительная информация (опционально)"
    }

    Формат ответа при успехе

    {
      "success": true,
      ...данные ответа
    }

    Коды HTTP-ответов

    КодСтатусОписаниеЧто делать
    200OKЗапрос выполнен успешноОбработайте данные из ответа
    202AcceptedЗапрос принят в обработку (для отправки сообщений)Сообщение в очереди, будет доставлено в ближайшие секунды
    400Bad RequestНеверные параметры запросаПроверьте обязательные параметры и их формат
    401UnauthorizedОшибка авторизацииПроверьте заголовок Authorization и API-ключ
    403ForbiddenНет доступа к ресурсуПроверьте привязку каналов к интеграции
    404Not FoundРесурс не найденПроверьте URL эндпоинта и ID ресурсов
    500Internal Server ErrorВнутренняя ошибка сервераПовторите запрос позже. Если повторяется — обратитесь в поддержку

    Частые ошибки и решения

    «Отсутствует заголовок Authorization» (401)

    Причина: Вы не передали заголовок Authorization или передали в неверном формате.

    Решение: Добавьте заголовок Authorization: Bearer ВАШ_API_КЛЮЧ. Обратите внимание на пробел после Bearer.

    # ❌ Неправильно (нет заголовка)
    curl -X GET "https://api.wazzabee.com/api-gateway/v1/channels"
    
    # ❌ Неправильно (нет Bearer)
    curl -X GET "https://api.wazzabee.com/api-gateway/v1/channels" \
      -H "Authorization: wac_live_sk_..."
    
    # ✅ Правильно
    curl -X GET "https://api.wazzabee.com/api-gateway/v1/channels" \
      -H "Authorization: Bearer wac_live_sk_..."

    «Неверный API-ключ» (401)

    Причина: Ключ не найден в системе — возможно, опечатка или ключ от другой интеграции.

    Решение: Скопируйте ключ заново из раздела Коннекторы → API.

    «Интеграция деактивирована» (403)

    Причина: Интеграция была отключена в личном кабинете.

    Решение: Зайдите в Коннекторы и активируйте интеграцию.

    «Канал не привязан к данной интеграции» (403)

    Причина: Вы пытаетесь использовать канал, который не входит в список разрешённых для данного API-ключа.

    Решение: Проверьте настройки интеграции — убедитесь, что нужный канал включён.

    «Канал не найден или нет доступа» (404)

    Причина: Указанный channelId не существует или принадлежит другому аккаунту.

    Решение: Получите актуальный список каналов через GET /v1/channels.

    «Канал неактивен» (400)

    Причина: Канал (линия связи) отключён или потерял соединение.

    Решение: Проверьте статус канала в личном кабинете. Для WhatsApp QR — возможно, нужно пересканировать QR-код.

    «Неподдерживаемый тип канала» (400)

    Причина: Тип канала не поддерживается для отправки через API.

    Решение: Убедитесь, что канал имеет поддерживаемый тип: whatsapp_qr, whatsapp_waba, telegram_bot, telegram_personal.

    «Неизвестный маршрут» (404)

    Причина: Вы обратились к несуществующему эндпоинту.

    Решение: Проверьте URL и HTTP-метод. Доступные маршруты:

    POST   /v1/messages/send
    GET    /v1/messages
    GET    /v1/channels
    PATCH  /v1/webhooks
    GET    /v1/webhooks
    POST   /v1/iframe

    Лимиты

    ПараметрЛимитОписание
    Сообщений на запрос истории200Максимальное значение limit в GET /v1/messages
    Время жизни iframe-сессии24 часаПосле истечения нужно создать новую сессию
    Таймаут тестового запроса webhook10 секундВаш сервер должен ответить за 10 секунд при регистрации вебхука

    Рекомендации

    • Всегда проверяйте поле success в ответе перед обработкой данных
    • Обрабатывайте коды ошибок программно — не полагайтесь только на текст ошибки
    • При ошибке 500 — подождите 5-10 секунд и повторите запрос
    • Храните channelId в конфигурации — не запрашивайте каналы перед каждой отправкой
    • Используйте webhooks вместо постоянного опроса GET /v1/messages