Маршрутизация через API

Выбор провайдера для запроса и сохранение настроек аккаунта.

Получить провайдеров моделей

GET /providers возвращает selected_provider_chain в сохраненном порядке и provider options в текущем Auto-порядке с auto_rank, success rate, лимитами, возможностями и availability.

curl
curl https://api.closerouter.dev/v1/providers \
  -H "Authorization: Bearer $CLOSEROUTER_API_KEY"

Выбрать провайдера для одного запроса

Передайте provider как строку: auto, provider-1, provider-5 и так далее.

curl
curl https://api.closerouter.dev/v1/chat/completions \
  -H "Authorization: Bearer $CLOSEROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-opus-4.8",
    "provider": "provider-5",
    "messages": [
      { "role": "user", "content": "Reply with exactly: ok" }
    ],
    "max_tokens": 16
  }'

Сохранить одного провайдера

Поле provider сохраняет цепочку из одного провайдера.

curl
curl https://api.closerouter.dev/v1/providers \
  -X PATCH \
  -H "Authorization: Bearer $CLOSEROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-opus-4.8",
    "provider": "provider-5"
  }'

Сохранить цепочку провайдеров

PATCH /providers сохраняет строгую цепочку на аккаунт. Порядок элементов provider_chain — порядок попыток для всех API-ключей аккаунта и кабинета /models.

curl
curl https://api.closerouter.dev/v1/providers \
  -X PATCH \
  -H "Authorization: Bearer $CLOSEROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-opus-4.8",
    "provider_chain": [
      { "name": "provider-5" },
      { "name": "provider-2" }
    ]
  }'

Вернуться к Auto

provider: "auto" очищает сохраненную цепочку и возвращает автоматический выбор.

curl
curl https://api.closerouter.dev/v1/providers \
  -X PATCH \
  -H "Authorization: Bearer $CLOSEROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-opus-4.8",
    "provider": "auto"
  }'

Flex, Default и Priority

Доступность режима зависит от провайдера и модели. Проверьте service_tier в GET /providers, затем используйте нужный provider.option_id или поддерживаемый суффикс модели :flex, :default, :priority. Не переносите поддержку режима с одного провайдера на другого.

Режим обработки

РежимНазначение
FlexНиже цена, возможно более длительное ожидание.
DefaultСтандартный режим.
PriorityПовышенный приоритет и цена.

Auto и сохранённые настройки

Auto выбирает по цене (cheap), скорости (fast) или стабильности (stable). Для одного запроса передайте provider: {"name":"auto","strategy":"fast"}. Явный strategy нельзя совмещать с конкретным провайдером или option_id.

В PATCH /providers поле auto_strategy сохраняет Auto модели; null или явный выбор текущего Auto аккаунта возвращает наследование. Пропуск поля сохраняет настройку. provider: "auto" также очищает ручную цепочку. Для варианта с несколькими режимами Auto не подменяет выбранный Default другим тарифом.

Приоритет настроек

Явный выбор в запросе → ручная цепочка → Auto ключа → Auto модели → Auto аккаунта → Cheap. Явный Auto в запросе обходит ручную цепочку; Auto ключа её не обходит.

Цепочка строгая: после ошибки последнего выбранного провайдера запрос завершается ошибкой. provider.order относится к публичным разработчикам моделей и не задаёт такую цепочку. Смена настроек применяется к новым запросам.