Felo API PlatformFelo API Platform

FAQ

Устранение неполадок

Решайте проблемы с аутентификацией, моделями, streaming, задачами и лимитами, отталкиваясь от симптомов.

Начните с симптома, затем выполните исправление. Большинство сбоев связаны с base URL, key, ID модели или балансом.

Таблица по симптомам

СимптомВероятная причинаИсправление
401 UNAUTHORIZEDKey отсутствует, неверен, отозван или не отправленОтправьте Authorization: Bearer $FELO_API_KEY; если key отозван, создайте новый
402 INSUFFICIENT_CREDITSБаланса не хватает на вызовПополните в Console Billing
404 на каждом запросеBase URL содержит путь, который endpoint добавляет самИспользуйте https://openapi.felo.ai/api/v1 для клиентов OpenAI и https://openapi.felo.ai/api для клиентов Anthropic
404 на одной моделиID модели не публичный или endpoint её не обслуживаетПроверьте ID модели на странице моделей и в документации endpoint'а
Ошибка 400 model или max_tokensОтсутствует обязательное поле или модель не принимает форму запросаДобавьте max_tokens для Messages; удалите неподдерживаемые поля
429Лимит запросов или ограничение upstream-провайдераПрочитайте Retry-After; см. Ошибки, лимиты и повторные попытки
5xxСбой upstream или сервисаПовторите с backoff; если не проходит, приложите request_id
Stream подключается, но ничего не приходитПрокси буферизует ответ или парсер ожидает неверный форматЧитайте поток инкрементально; отключите буферизацию ответа в прокси
Задача никогда не завершаетсяНеверный endpoint опроса или не обработан терминальный статусОпрашивайте собственный endpoint статуса задачи и останавливайтесь на терминальных значениях
Вызовы инструментов игнорируютсяМодель не заявляет эту возможностьПроверьте supported_parameters в каталоге
Data API возвращает 404Префикс /v1/beta добавлен дваждыИспользуйте путь точно как в справочнике

Аутентификация

Отозванный key возвращает сообщение с префиксом key:

{
  "status": 401,
  "code": "UNAUTHORIZED",
  "message": "API Key has been revoked (keyPrefix=...)"
}

Чек-лист:

  • Заголовок — Authorization: Bearer <key> для Model API и Felo APIs.
  • Data API также принимает X-API-Key: <key>.
  • Key не обёрнут в кавычки и не содержит завершающего перевода строки из скопированной переменной окружения.
  • В окружении развёртывания переменная действительно задана; key, работающий локально, может отсутствовать в production.
  • Key не удалён и не ротирован. Удалённый или ротированный key нельзя показать снова; создайте новый.

Создание key и ограничения см. в разделе Аутентификация.

Ловушки base URL

КлиентПравильный base URL
OpenAI SDKhttps://openapi.felo.ai/api/v1
Anthropic SDKhttps://openapi.felo.ai/api
Прямой model endpointhttps://openapi.felo.ai/api/v1/chat/completions, /responses или /messages
Data APIhttps://openapi.felo.ai/v1/beta
Felo /v2 APIshttps://openapi.felo.ai/v2

Две частые ошибки:

  1. Добавление /chat/completions к base URL, который SDK уже расширяет.
  2. Установка Anthropic base URL в https://openapi.felo.ai/api/v1. SDK добавляет /v1/messages, и запрос превращается в /api/v1/v1/messages.

Проблемы с ID модели

ID моделей — это публичные ID из каталога, а не внутренние имена upstream-провайдера и не отображаемые имена.

  • Смотрите ID на странице моделей или в GET /api/v1/models.
  • Убедитесь, что модель поддерживает протокол, который вы вызываете (supported_protocols).
  • Если вы закрепили канал, убедитесь, что он опубликован и исполняем для этой модели. Недоступный канал — не fallback.

См. Каналы и маршрутизация провайдеров.

Проблемы со streaming

  • Устанавливайте stream: true в теле запроса, а не как query-параметр.
  • Читайте тело ответа как поток. Ожидание полного ответа лишает streaming смысла.
  • Некоторые прокси и serverless-платформы буферизуют ответы. Отключите буферизацию для маршрута, который проксирует запрос.
  • Chat Completions стримит choices[0].delta, а не choices[0].message. Итоговый контент приходит множеством chunks.
  • При обрыве соединения поток может закончиться без чистого терминального события. Считайте оборванное соединение незавершённым ответом.

Проблемы с асинхронными задачами

  • Опрашивайте endpoint статуса, принадлежащий группе задачи. Рабочие процессы Felo используют GET /v2/tasks/{task_id}/status; задачи видео и изображений моделей — собственные endpoint'ы генерации.
  • Останавливайтесь на каждом терминальном статусе, включая ошибки и истечения, а не только на успехе.
  • Callback'и видео и изображений сейчас игнорируются. Не ждите webhook.
  • URL результата может быть недолговечным. Если скачивание истекло, запросите новый URL у endpoint'а статуса.
  • Проверьте задачу перед повторной отправкой. Повторная отправка работающей задачи создаёт дубликат, и обе будут оплачены.

См. Асинхронные задачи.

Проблемы с Data API

  • Сохраняйте точный путь метода из справочника Data API.
  • Тела запросов зависят от поставщика. Поле, работающее у одного поставщика, не гарантировано у другого.
  • Ошибка провайдера может прийти внутри ответа 4xx с сообщением конкретного провайдера. Логируйте request_id и тело ответа.

Напоминания о безопасности

  • Никогда не помещайте API key в код браузера, бандл мобильного приложения или публичный репозиторий. Держите его на сервере и проксируйте запросы.
  • Не логируйте полный key. Если нужно идентифицировать, логируйте префикс.
  • Немедленно ротируйте key, если он мог утечь.

Перед обращением в поддержку

Соберите:

  1. Endpoint и HTTP method.
  2. HTTP-статус, code и request_id.
  3. ID модели или ID задачи.
  4. Время с часовым поясом.
  5. Минимальное тело запроса без секретов.

Отправьте это в поддержку вместе с email аккаунта. Не включайте полный API key.

Связанные разделы