# Ошибки 403, 503 и 529 в Claude Code: кто ответил и что чинить

> 403 в Claude Code дают прокси, аккаунт, регион или шлюз; 503 с «No available…» — почти всегда посредник; 529 — перегрузка Anthropic. Слой видно в /status.

- URL: https://blog.laozhang.ai/ru/posts/claude-code-403-503-529-errors
- Published: 2026-09-29
- Updated: 2026-09-29
- Author: LaoZhang AI Team (https://blog.laozhang.ai/ru/about)
- Category: Claude Code
- Tags: Claude Code, ошибка 403, ошибка 503, ошибка 529, прокси, шлюз, Устранение неполадок

---
Код ошибки в Claude Code сам по себе не говорит, кто отказал. Один и тот же `403` возвращают ваш прокси, Anthropic из-за подписки или региона, корпоративный шлюз и сайт, который Claude пытался открыть. `503` с текстом вроде `No available accounts` или `No available channel` почти всегда приходит от сервиса-посредника, через который идут ваши запросы, а не от Anthropic. `529` означает нехватку мощностей у Anthropic (или у облачного провайдера), и ваш лимит он не расходует.

Чтобы понять, какой случай у вас, достаточно двух вещей: точного текста после кода и строки `Anthropic base URL` в `/status`. Если такой строки нет, запросы идут напрямую в Anthropic (или к облачному провайдеру). Если есть, каждый ответ сначала проходит через указанный там адрес, и чинить надо начинать с него.

## Кто на самом деле ответил: `/status` и хвост сообщения

Запустите Claude Code там, где видите ошибку (в том же терминале или в той же IDE), и наберите `/status`. На вкладке **Status** важны две строки:

- `Anthropic base URL` появляется только тогда, когда задан адрес шлюза или посредника. Нет строки — переменная `ANTHROPIC_BASE_URL` до этой сессии не дошла, и Claude Code ходит в `api.anthropic.com`.
- `Auth token` или `API key` называет переменную с ключом, которую сессия реально использует. Строка `Login method` с аккаунтом claude.ai означает вход по подписке.

Если одна и та же переменная задана и в shell, и в блоке `env` файла `~/.claude/settings.json`, побеждает значение из файла настроек ([документация по подключению шлюза](https://code.claude.com/docs/en/llm-gateway-connect)). Поэтому забытый адрес старого посредника в `settings.json` может тихо перенаправлять запросы, даже если в терминале вы его давно удалили.

Второй сигнал — последняя фраза сообщения об ошибке. В актуальных версиях для любой 5xx она называет, где смотреть состояние сервиса: `status.claude.com` на прямом пути, страницу статуса провайдера для Bedrock, Google Cloud и Microsoft Foundry и хост шлюза, если задан свой `ANTHROPIC_BASE_URL` ([справочник ошибок Claude Code](https://code.claude.com/docs/en/errors)). Если ответил прокси или балансировщик HTML-страницей, начиная с версии 2.1.281 вы увидите код и заголовок страницы, например `API Error: 502 Bad Gateway`. На старых сборках хвосту верить нельзя: в отчётах пользователей версии 2.1.137 ответ посредника `503 No available accounts` всё равно заканчивался советом проверить `status.claude.com`. Поэтому сначала `/status`, потом хвост.

| Что вы видите | Кто, скорее всего, ответил | Первая проверка | Кто может исправить |
|---|---|---|---|
| `API Error: 403 {"error":{"type":"forbidden","message":"Request not allowed"}}` после входа, в `/status` нет base URL | Anthropic: подписка, роль или доступ рабочего пространства | Активна ли подписка, какая роль в Console | Вы или администратор организации |
| 403 в VS Code или JetBrains, а в терминале всё работает | Ваш прокси не дошёл до процесса Claude Code | `/status` и тест из IDE и из терминала | Вы |
| `App unavailable in region` или 403 уже при установке | Anthropic: страна не поддерживается или сеть режет хост | Список поддерживаемых стран, проверка сети | Регион — никто; сетевой фильтр — вы или администратор сети |
| `Gateway refused the request` или HTML `403 Forbidden` при заданном base URL | Шлюз или WAF перед ним | Логи шлюза: дошёл ли запрос | Администратор шлюза |
| 403, когда Claude открывает веб-страницу | Сам сайт или его CDN | Открыть ту же ссылку в браузере | Никто на стороне Claude Code |
| `503 No available accounts`, `No available channel`, `No available provider found`, `no available server` | Посредник или балансировщик на пути | Хвост сообщения, base URL, тест шлюза на 1 токен | Владелец шлюза |
| `Repeated 529 Overloaded errors` | Anthropic или облачный провайдер из хвоста | status.claude.com, смена модели | Подождать или сменить модель |

![Схема слоёв на пути запроса Claude Code: прокси, шлюз или посредник, Anthropic и сайт при WebFetch — с типичными текстами ошибок и тем, кто может исправить каждую](https://blog.laozhang.ai/posts/ru/claude-code-403-503-529-errors/img/error-layer-map.webp)

### Три проверочные команды

Прямой путь. Из того же shell, где запускаете Claude Code:

```bash
curl -I https://api.anthropic.com
echo $ANTHROPIC_BASE_URL
```

В PowerShell вместо них — `curl.exe -I https://api.anthropic.com` (именно `curl.exe`, иначе сработает встроенный `Invoke-WebRequest`) и `echo $env:ANTHROPIC_BASE_URL`. Если `curl` проходит, а Claude Code падает, ищите `ANTHROPIC_BASE_URL` ещё и в блоке `env` файлов настроек: при заданном адресе модельные запросы уходят туда, а не в `api.anthropic.com`.

Путь через шлюз или посредника. Официальная документация предлагает отправить запрос на один токен прямо к шлюзу, минуя Claude Code:

```bash
curl -sS -w '\n%{http_code}\n' -X POST "$ANTHROPIC_BASE_URL/v1/messages" \
  -H "Authorization: Bearer $ANTHROPIC_AUTH_TOKEN" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model": "claude-sonnet-4-6", "max_tokens": 1, "messages": [{"role": "user", "content": "."}]}'
```

Ответ, начинающийся с `{"id":"msg_`, значит, что адрес и ключ рабочие. Ошибка про неизвестную модель тоже подтверждает адрес и ключ: шлюз сначала проверил ключ и только потом отверг имя модели. `401` — ключ отклонён. Если шлюз ждёт ключ в заголовке `x-api-key`, замените строку `Authorization` на `-H "x-api-key: $ANTHROPIC_API_KEY"`. Если этот запрос возвращает ту же ошибку, что и Claude Code, его вывод — лучшее, что можно отправить владельцу шлюза.

## 403: пять разных отказов под одним кодом

403 в Claude Code — не приговор аккаунту. Тот же код приходит, когда клиент просто не подхватил прокси. Разберите случаи по порядку: от самого частого и дешёвого в проверке к тем, где от вас ничего не зависит.

### VPN включён, а 403: прокси не дошёл до Claude Code

Типичная картина: в терминале, где экспортирован `HTTPS_PROXY`, Claude Code работает, а из VS Code, JetBrains или после запуска IDE из Dock — 403 или ошибка соединения. Причина в том, что IDE, открытая не из терминала, не видела переменных вашего shell. Официальная документация расширения прямо советует запускать VS Code командой `code .` из терминала, чтобы окружение унаследовалось ([Claude Code в VS Code](https://code.claude.com/docs/en/vs-code)).

![Почему 403 только в IDE: из терминала Claude Code видит HTTPS_PROXY и работает, из IDE, запущенной через Dock, переменной нет; надёжное решение — блок env в settings.json](https://blog.laozhang.ai/posts/ru/claude-code-403-503-529-errors/img/proxy-env-ide.webp)

Что учитывать:

- Claude Code читает переменные `https_proxy`, `HTTPS_PROXY`, `http_proxy`, `HTTP_PROXY` (берёт первую заданную в этом порядке) и `NO_PROXY` ([сетевые настройки](https://code.claude.com/docs/en/network-config)). На настройку «системный прокси» в macOS или Windows не рассчитывайте: Claude Code ориентируется на переменные окружения.
- SOCKS-прокси Claude Code не поддерживает. Если ваш клиент (например, для VLESS) открывает локально и HTTP-, и SOCKS-порт, в `HTTPS_PROXY` указывайте HTTP-порт.
- Если сам шлюз локальный или внутренний, внесите его в `NO_PROXY`, иначе запрос к нему уйдёт в прокси и не вернётся.

Самый надёжный способ, который не зависит от того, откуда запущен Claude Code, — блок `env` в `~/.claude/settings.json`. Этот файл общий для CLI и расширения:

```json
{
  "env": {
    "HTTPS_PROXY": "http://proxy.example.com:8080"
  }
}
```

Вместо `proxy.example.com:8080` подставьте адрес и HTTP-порт своего прокси. Для одного только расширения VS Code есть параметр `environmentVariables`, но документация советует хранить общую конфигурацию в `settings.json`. После правки перезапустите Claude Code и сравните `/status` в IDE и в терминале. Подробнее про ошибки соединения, `ECONNREFUSED` и прокси — в разборе [Claude Code: Unable to connect to API — как исправить ECONNREFUSED, ECONNRESET и proxy](https://blog.laozhang.ai/ru/posts/claude-api-error-connection-error), а если проблема только в редакторе — в статье [Claude Code не работает в VS Code? Сначала найдите поверхность сбоя](https://blog.laozhang.ai/ru/posts/claude-not-working-in-vscode).

### 403 после входа: подписка, роль, рабочее пространство

Сообщение `API Error: 403 {"error":{"type":"forbidden","message":"Request not allowed"}}` сразу после входа, при отсутствии base URL в `/status`, приходит от Anthropic. Официальная инструкция ([устранение неполадок при установке и входе](https://code.claude.com/docs/ru/troubleshoot-install)) называет три проверки:

- **Pro или Max**: убедитесь, что подписка активна, на [claude.ai/settings](https://claude.ai/settings).
- **Вход через Anthropic Console**: у аккаунта должна быть роль «Claude Code» или «Developer». Её назначает администратор в Console, раздел Settings → Members.
- **Корпоративный прокси**: он может вмешиваться в запросы к API — см. раздел выше.

В командных и корпоративных планах 403 после входа часто значит, что администратор ещё не включил Claude Code для рабочего пространства (так это объясняет [русскоязычный FAQ Help Center](https://support.claude.com/ru/articles/14554922)). Если страница входа пишет `Claude Code access has not been granted for this account. Contact your administrator.`, организация на Claude Enterprise назначила вам роль Custom, и ни одна из ваших custom-ролей не даёт доступа к Claude Code. Здесь помогает только владелец организации: он добавляет нужную роль вашей группе или меняет вашу роль на стандартную, после чего вы входите заново.

Ещё одна ловушка — `ANTHROPIC_API_KEY` от старого проекта в профиле shell. Когда ключ задан и вы его одобрили, Claude Code использует его вместо подписки. Строка `API key` в `/status` это покажет.

Чтобы перелогиниться, достаточно `/logout`, затем `/login`. Советы удалить `~/.claude` целиком лучше не выполнять: там лежат настройки, история и учётные данные, а регион, роль и прокси от этого не изменятся.

### 403 из-за региона: настройками не исправить

По состоянию на 29 сентября 2026 года России нет в [списке поддерживаемых стран Anthropic](https://www.anthropic.com/supported-countries) (как и Китая, Гонконга и Макао). Официальная документация связывает 403 на проверке соединения либо с прокси или сетевым фильтром, либо с тем, что Claude Code недоступен в вашем регионе. Если страница установки отвечает `App unavailable in region`, это как раз региональное ограничение.

На официальном прямом пути такой отказ не лечится ни переустановкой, ни сменой ключа, ни правкой `settings.json`: это вопрос допуска, а не настройки. Попытки обойти ограничение ставят под удар аккаунт, в том числе оплаченный (о последствиях блокировки — в статье [Claude Code Max: аккаунт заблокирован после оплаты?](https://blog.laozhang.ai/ru/posts/claude-code-max-recharge-account-banned)).

Что реально меняет ситуацию — это другой договор, а не другие настройки: доступ через организацию или облачного провайдера в поддерживаемой стране либо API-сервис, совместимый с Anthropic Messages, у которого свои условия. Например, [laozhang.ai](https://laozhang.ai/) подключается к Claude Code через `ANTHROPIC_BASE_URL=https://api.laozhang.ai` и `ANTHROPIC_AUTH_TOKEN` в блоке `env` ([документация](https://docs.laozhang.ai/en)). Помните, что это тоже посредник: в `/status` появится его base URL, его ошибки разбираются по той же схеме, что и в разделе про 503, а перегрузку 529 у Anthropic он не устраняет. До оплаты проверьте условия, список моделей и то, есть ли у сервиса страница статуса. Как прописать ключи, модели и адрес шлюза, подробно описано в статье [Настройка Claude Code API: ключи, settings.json, модели и шлюзы](https://blog.laozhang.ai/ru/posts/claude-code-api-configuration).

### 403 от шлюза или WAF перед ним

Если в `/status` есть base URL, 403 может выдать сам шлюз. В корпоративном шлюзе Claude начиная с версии 2.1.273 это выглядит так:

```text
Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...
```

Повторный вход здесь не поможет: отказ дал шлюз или сервис за ним, и причину видно в его журнале аудита. На более ранних версиях тот же отказ маскировался под `Please run /login` или `Failed to authenticate`.

Отдельный случай для тех, кто держит свой шлюз: 403 с HTML-страницей `403 Forbidden`, а в логах шлюза запрос вообще не появился. Значит, запрос остановил WAF или обратный прокси перед шлюзом. В промптах Claude Code есть XML-подобные теги и исходный код, и правила против межсайтового скриптинга (XSS) в теле запроса на них срабатывают. Короткий `curl` на 1 токен при этом проходит, а настоящая сессия — нет. Решение из документации: исключить путь `/v1/messages` из проверки тела запроса (в AWS WAF это управляемое правило `CrossSiteScripting_Body`, в nginx с ModSecurity — соответствующие правила OWASP CRS).

Встречаются и посредники, которые отвечают `403 ... "This service is restricted to the official Claude Code client."`. Это проверка клиента на стороне самого посредника, у Anthropic такой ошибки в документации нет; разбираться нужно с его владельцем.

### 403, который вообще не про доступ к API

Если 403 возникает, когда Claude открывает ссылку (инструмент WebFetch сообщает, что не может получить URL), отказал сайт или его CDN: защита от ботов, WAF, Cloudflare. К вашему аккаунту и доступу к модели это отношения не имеет. Откройте страницу в браузере, скопируйте нужный фрагмент в чат или дайте другую ссылку.

Похоже выглядит и 403 при установке: `curl: (22) The requested URL returned error: 403` от скрипта установки означает, что адрес загрузки вернул ошибку вместо скрипта. Причина — либо регион, либо прокси или фильтр, блокирующий хост загрузки.

## 503: почти всегда посредник, а не Anthropic

В документированном списке ошибок Claude API (Messages) кода 503 нет: перегрузка там возвращается как `529 overloaded_error`, внутренний сбой как `500 api_error`, таймаут как `504` ([список ошибок API](https://platform.claude.com/docs/en/api/errors)). Это не доказывает, что 503 от инфраструктуры Anthropic невозможен в принципе. Но если текст после `503` похож на один из вариантов ниже, ответил не Anthropic, а программа посередине.

| Текст ошибки | Кто его отдаёт | Что это значит |
|---|---|---|
| `503 No available accounts: no available accounts` | Посредник с пулом аккаунтов, например на базе sub2api | Все аккаунты, способные обслужить модель, временно исчерпаны (лимит, пауза по квоте, блокировка) или в группе нет аккаунтов вообще. Если аккаунты есть, но ни один не настроен под эту модель, sub2api вернёт уже `404 model_not_found` |
| `503 No available channel for model X under group Y` | Посредник на базе new-api | В вашей группе нет канала, который обслуживает модель X |
| `503 ... No available provider found` | Claude Code Hub | Все провайдеры отключены, у всех сработал предохранитель (circuit breaker), группа не совпадает или достигнут лимит параллельных запросов |
| `503 no available server` | Балансировщик Traefik | За балансировщиком не осталось ни одного живого сервера |
| `503 no healthy upstream` | Типовой текст прокси Envoy | Вышестоящий сервер (upstream) недоступен; пользователи видели его во время сбоев |

Значения первых трёх строк описаны в исходном коде и документации самих программ, а первые две встречаются и в отчётах пользователей Claude Code. Например, в августе 2026 года пользователь посредника на new-api получил `503 No available channel for model claude-opus-5 under group default`, и хвост сообщения указывал на хост посредника, а не на `status.claude.com`. Про `no available server` точно известно одно: так отвечает Traefik, когда у него нет живых бэкендов. Публичных сведений о том, что Traefik стоит перед API Anthropic, нет, поэтому при заданном base URL это почти наверняка инфраструктура вашего шлюза: сервис упал или перезапускается.

`no healthy upstream` — единственный вариант, который стоит связывать с Anthropic, и то только при двух условиях: в `/status` нет base URL и на [status.claude.com](https://status.claude.com) объявлен инцидент.

Что делать с 503 от посредника:

1. Проверьте `/status`: чей адрес в `Anthropic base URL`.
2. Прогоните тест шлюза на 1 токен из раздела выше. Если он тоже возвращает 503 с тем же текстом, проблема не в Claude Code и не в вашем компьютере.
3. Если ошибка про модель или группу, попробуйте через `/model` модель, которая точно есть у посредника, или смените группу в его панели.
4. Напишите владельцу сервиса. Разработчики new-api, например, прямо просят с проблемами сторонних инстансов обращаться к их операторам, а не в репозиторий.

Переустанавливать Claude Code, удалять `~/.claude` и ждать исправления на status.claude.com в этом случае бессмысленно.

## 529: мощности Anthropic, а не ваш лимит

`API Error: Repeated 529 Overloaded errors. The API is at capacity…` означает, что у Anthropic (или у облачного провайдера, если хвост называет его) закончились свободные мощности для выбранной модели сразу у всех пользователей. К моменту, когда вы видите это сообщение, Claude Code уже сделал до 10 повторов с нарастающей паузой. 529 не входит в ваш лимит использования и квоту не расходует.

Мощности считаются отдельно для каждой модели, поэтому быстрее всего продолжить работу через `/model`, переключившись на другую модель, либо подождать несколько минут. Смена посредника перегрузку не лечит: мощностей Anthropic он не добавляет. Подробнее — в статье [Ошибка 529 в Claude Code: что делать, когда API перегружен](https://blog.laozhang.ai/ru/posts/claude-code-overloaded-error), а как продолжить прерванную задачу без дублирования действий — в материале [Claude Code 500 и 529: как безопасно продолжить после сбоя без дублей](https://blog.laozhang.ai/ru/posts/claude-code-500-529-rate-limit).

## Когда обращаться и что приложить

Кому писать, зависит от слоя, который вы определили выше:

- **Администратор организации** — 403 после входа при активной подписке, `Claude Code access has not been granted`, роль в Console. Приложите email аккаунта, название рабочего пространства и точный текст ошибки.
- **Владелец шлюза или посредника** — любая ошибка при заданном base URL, которую воспроизводит тест на 1 токен, а также `Gateway refused the request`. Приложите полный текст ошибки вместе с `request id`, если он есть, время, модель и вывод `curl` с HTTP-кодом. Ключ не пересылайте.
- **Anthropic** — 5xx на прямом пути (без base URL в `/status`), который повторяется, хотя на status.claude.com инцидентов нет. Выполните `/feedback`, чтобы отправить данные запроса. Для устойчивых 500 есть отдельный разбор: [Claude Code API Error 500: как исправить Internal Server Error без слепых повторов](https://blog.laozhang.ai/ru/posts/claude-code-api-error-500).
- **Никто** — 403 по региону на официальном пути и 403 от сайта при WebFetch: первое не меняется настройками, второе — ограничение чужого сайта.

## Частые вопросы

### Ошибка 403 означает, что мой аккаунт заблокирован?

Нет. Блокировка — лишь один из вариантов, и не самый частый. Тот же 403 возвращается, когда Claude Code не подхватил прокси, когда у аккаунта нет нужной роли или Claude Code не включён для рабочего пространства, когда отказал шлюз или когда сайт не пустил WebFetch. Сверьте точный текст ошибки и `/status` с таблицей в начале.

### Поможет ли удалить `~/.claude` и войти заново?

Для 403 почти никогда. В этой папке хранятся настройки, история и учётные данные; удаление сотрёт их, но не изменит ни регион, ни роль, ни прокси. Если нужно перелогиниться, используйте `/logout` и `/login`.

### Как понять, что Claude Code не работает у всех, а не только у меня?

Посмотрите [status.claude.com](https://status.claude.com) или страницу статуса, которую называет хвост ошибки. Если в `/status` есть base URL, статус Anthropic вам мало что скажет: сначала проверьте шлюз тестом на 1 токен. Если на прямом пути вы видите 5xx или 529, а на странице статуса объявлен инцидент, проблема общая и остаётся ждать или сменить модель.
