Как направить Claude Code
на свой API-эндпоинт
По документации Anthropic о шлюзах (проверено 2026-09-02) достаточно двух переменных: ANTHROPIC_BASE_URL задаёт эндпоинт, а ANTHROPIC_AUTH_TOKEN — учётные данные, которые попадают в заголовок Authorization. Их же можно записать в блок env файла settings.json. Веб-версия и облачные сессии, размещённые у Anthropic, через шлюз не идут, и заданные там переменные не применяются.
Четыре вещи, которые надо знать
Минимальная конфигурация
ANTHROPIC_BASE_URL указывает на эндпоинт, ANTHROPIC_AUTH_TOKEN передаёт учётные данные. В большинстве случаев этого достаточно.
Куда попадают учётные данные
В документации сказано прямо: именно эта переменная кладёт ключ в заголовок Authorization, который читает шлюз.
Второе место настройки
Если не хотите переменные окружения, впишите те же ключи в блок env файла settings.json — форма соответствует один к одному.
Веб-версия и облачные сессии
В документации указано, что размещённые у Anthropic продукты всегда используют её собственный API, а переменные шлюза в конфигурации облачной сессии не применяются.
Почему этих двух переменных достаточно
Точка выхода трафика Claude Code настраивается: ANTHROPIC_BASE_URL решает, куда уходят запросы, а ANTHROPIC_AUTH_TOKEN — с какими учётными данными. Документация говорит про вторую прямо: именно эта переменная кладёт ключ в заголовок Authorization, а шлюз читает как раз этот заголовок. Поэтому, пока ваш эндпоинт говорит на протоколе Anthropic и авторизует по заголовку Authorization, интеграция работает без правок клиентского кода.
Две задокументированные формы (проверено 2026-09-02)
Первая — переменные окружения: ANTHROPIC_BASE_URL со значением вашего эндпоинта и ANTHROPIC_AUTH_TOKEN с учётными данными. Вторая — блок env в settings.json с теми же именами ключей. Документация описывает и apiKeyHelper: команду, которую Claude Code выполняет, чтобы получить учётные данные, вместо чтения из статической переменной; это подходит там, где требуется ротация. Есть также разделы про добавление моделей шлюза в выбор моделей и про отключение трафика вне пути шлюза — их стоит прочитать при корпоративном внедрении.
Три шага подключения
Задайте две переменные: ANTHROPIC_BASE_URL с эндпоинтом и ANTHROPIC_AUTH_TOKEN с учётными данными. Сначала попробуйте в чистой оболочке, а не сразу в глобальной конфигурации.
Отправьте один минимальный запрос и проверьте, что возвращаемая модель совпадает с запрошенной — заодно узнаете, нет ли между вами переписывающего слоя.
Когда всё стабильно, закрепите: перенесите в блок env файла settings.json или в CI подставляйте из хранилища секретов (задокументированная схема передаёт учётные данные из секретов в ANTHROPIC_AUTH_TOKEN). Если нужна ротация — переходите на apiKeyHelper.
Что задокументировано у Anthropic vs что спрашивать у провайдера эндпоинта
Задокументировано у Anthropic
① Роль ANTHROPIC_BASE_URL и ANTHROPIC_AUTH_TOKEN. ② Что учётные данные передаются в заголовке Authorization. ③ Что блок env в settings.json — равнозначная вторая форма. ④ Что apiKeyHelper получает учётные данные командой вместо статической переменной. ⑤ Что размещённые у Anthropic веб-версия и облачные сессии через шлюз не идут и заданные там переменные не применяются.
Спрашивать у провайдера эндпоинта
Нужен ли базовому URL суффикс пути, какие идентификаторы моделей обслуживаются, поддерживаются ли контекст 1M и кэш, каков потолок параллелизма — всё это зависит от эндпоинта, и документация Anthropic за него не отвечает. При 404 первым делом сверьте путь в базовом URL с документацией провайдера; при 401 убедитесь, что учётные данные едут именно в заголовке Authorization.
Два места для настройки
Переменные окружения
Меняются быстрее всего и подходят для первой удачной попытки. Минус в том, что их легко потерять — другой терминал или другой CI-раннер, и их нет, — а учётные данные лежат в окружении процесса. Годится для проверки и разовых задач.
Блок env в settings.json
Едет вместе с конфигурацией и не зависит от состояния текущей оболочки, поэтому подходит для закрепления. Учётные данные при этом лежат на диске в открытом виде, так что при необходимости ротации или запрета на запись на диск используйте apiKeyHelper: команду, которую Claude Code вызывает за учётными данными.
Три типичные точки затыка
① Задано, но не действует: убедитесь, что переменная видна тому процессу, который вы реально запускаете, и что её не перекрывает одноимённый ключ в settings.json — когда есть и то и другое, решает фактический порядок загрузки. ② Не действует в веб-версии или облачных сессиях: это задокументированное поведение, поскольку это размещённые у Anthropic продукты, всегда использующие её собственный API. ③ Странно ведут себя функции, завязанные на личность аккаунта: в документации отмечено, что сессия, авторизованная через ANTHROPIC_AUTH_TOKEN, может получить результат проверки доступности, расходящийся с настройкой организации, потому что эта проверка требует входа на claude.ai или ключа Anthropic API.
Как это устроено в QCode
Мы предоставляем эндпоинт, совместимый с протоколом Anthropic, и настраивается он ровно теми двумя переменными. Сразу после подключения сделайте две вещи: отправьте минимальный запрос и проверьте, что возвращаемая модель совпадает с запрошенной, и один раз сверьте usage со счётом, чтобы убедиться, что база списания соответствует ожиданиям. Обе занимают минуты, но снимают вопросы «подключился не туда» и «тарифицируется не так, как я думал» до того, как вы нарастите объём.
Частые вопросы
Какой минимальный набор переменных?
Две: ANTHROPIC_BASE_URL для эндпоинта и ANTHROPIC_AUTH_TOKEN для учётных данных. В документации сказано, что вторая — это как раз та переменная, что помещает ключ в заголовок Authorization.
Нужен ли базовому URL суффикс пути?
Зависит от эндпоинта; документация Anthropic за него не отвечает. Быстрее всего решить это, написав так, как указано в документации провайдера, и отправив один минимальный запрос: если пришёл 404, первым делом проверяйте путь.
Можно ли обойтись без переменных окружения?
Да — впишите те же ключи в блок env файла settings.json. Если нужна ротация или вы не хотите держать учётные данные на диске в открытом виде, используйте apiKeyHelper: команду, которую Claude Code выполняет, чтобы их получить.
Почему в веб-версии настройка не действует?
Это задокументированное поведение: размещённые у Anthropic продукты вроде веб-версии всегда используют её собственный API и не входят в состав шлюзового развёртывания, поэтому переменные шлюза, заданные в конфигурации облачной сессии, не применяются. Если трафик обязан идти через ваш шлюз, не полагайтесь на этот путь.
Как настроить это в CI?
Задокументированная схема передаёт учётные данные из хранилища секретов в ANTHROPIC_AUTH_TOKEN, а базовый URL задаётся как обычно. Не кладите учётные данные в конфигурационный файл в репозитории — это ничем не отличается от вшивания их в код.
Что проверить первым делом после подключения?
Что возвращаемая в ответе модель — та, которую вы запросили. Если в ней появился префикс, суффикс или имя провайдера, которых не было в запросе, между вами есть переписывающий слой. Само по себе это не плохо, но определяет, как потом трактовать строки счёта.
Источники
Роль двух переменных окружения, передача учётных данных в заголовке Authorization, форма записи в блоке env файла settings.json, определение apiKeyHelper и утверждение, что размещённые у Anthropic продукты всегда используют её API, а переменные шлюза в конфигурации облачной сессии не применяются: документация Anthropic «Connect Claude Code to an LLM gateway» (code.claude.com/docs/en/llm-gateway-connect, получено 2026-09-02). Форма пути, набор моделей и лимиты конкретного эндпоинта определяются документацией его провайдера; эта страница за него не отвечает.
Две переменные — сначала в чистой оболочке
Как только заработало, проверьте эхо модели и сверьте usage, и только потом закрепляйте в конфигурации.
Читайте также
Cline с OpenAI-совместимым эндпоинтом
Как выглядит настройка своего эндпоинта в клиенте другого класса.
Как понять, стоит ли пользоваться AI API-реле
Что проверять после подключения: эхо модели, попадания в кэш, сверку usage.
Полное руководство по Claude Code
От установки до повседневного рабочего процесса.
Процитированная документация получена 2026-09-02 и может обновляться. Форма пути, набор моделей и лимиты конкретного эндпоинта определяются документацией его провайдера; поведение клиента — официальной документацией Anthropic.