Claude Code API Error 500: что делать и как продолжить без дублей
500 в Claude Code — сбой API, а не ваших настроек. Посреди задачи возобновите сессию и сверьте сделанное; при сбое входа проверьте статус и войдите заново.
Содержание

API Error: 500 в Claude Code означает неожиданный сбой внутри API, который ответил на запрос; промпт, настройки и аккаунт его не вызывают. Что делать дальше, зависит от того, когда появилась ошибка:
- Посреди задачи. Проверьте статус, подождите около минуты и повторите сообщение. Если до ошибки уже работали инструменты, сначала откройте ту же сессию, сверьте файлы, команды и внешние операции и продолжайте только оставшиеся шаги.
- При входе в аккаунт. Работа ещё не начиналась, сверять нечего. Проверьте, нет ли инцидента со входом, затем выполните чистый повторный вход.
- На каждом ходу одной возобновлённой сессии, хотя новая работает. Обновите Claude Code и возобновите её снова. Если не помогло, перенесите работу в новую беседу с проверенной сводкой, а не с исходным заданием.
Ошибка не доказывает, что инструменты ничего не сделали. Команда могла завершиться, коммит — появиться, а удалённый сервис — принять публикацию до обрыва ответа. Полная повторная отправка задания в таком случае создаёт риск дублей.
529 — другая ошибка: нехватка мощности API, а не личный лимит подписки. Сообщение The response above may be incomplete означает оборванный ответ, и для него действует тот же порядок восстановления. Поведение ошибок описано по справочнику ошибок Claude Code по состоянию на 5 октября 2026 года.
Определите ошибку и сервис, который её вернул

На маршруте Anthropic API текущая строка ошибки 500 выглядит так:
API Error: 500 Internal server error. This is a server-side issue, usually temporary — try again in a moment. If it persists, check https://status.claude.com.Сохраните полную строку, а не только число. Последнее предложение указывает, где проверять состояние сервиса: Claude Status для Anthropic, страницу облачного провайдера для Bedrock, Google Cloud или Microsoft Foundry, либо хост собственного шлюза. Общий зелёный статус не гарантирует успех отдельного запроса и не проверяет ваш шлюз.
Официальный порядок для 500 короткий: проверить статус, подождать минуту и отправить сообщение снова. Исходное сообщение остаётся в беседе, поэтому вместо длинного запроса достаточно написать try again. Если сбой повторяется, а инцидента нет, запустите /feedback. Источник: серверные ошибки Claude Code.
| Сообщение | Что оно означает | Следующее действие |
|---|---|---|
API Error: 500 Internal server error | Неожиданный внутренний сбой самого API | Проверить указанный сервис; без частично выполненной работы — подождать около минуты и повторить сообщение |
OAuth error: Request failed with status code 500 | Сбой на шаге входа; задача ещё не начиналась | Проверить инциденты входа и выполнить чистый повторный вход (раздел о входе ниже) |
| 500 на каждом сообщении одной возобновлённой сессии | Сбой держится в этой беседе или на пути запроса | Обновить Claude Code, возобновить сессию и сравнить с новой беседой |
Repeated 529 Overloaded errors | API временно работает на пределе мощности; применимые повторы уже сделаны | Подождать несколько минут или выбрать доступную подходящую модель через /model |
The response above may be incomplete | Ответ оборвался на стадии, где уже мог быть сохранён текст или вызов инструмента | Прочитать результат, проверить выполненные действия и продолжить прежнюю сессию |
Server is temporarily limiting requests (not your usage limit) | Кратковременное серверное ограничение, не квота плана | Немного подождать; при повторении проверить статус |
You've hit your session limit или weekly limit | Исчерпано общее окно использования подписки | Проверить /usage и указанное время сброса |
Request rejected (429) | Ограничение активного API-ключа или проекта провайдера | Проверить /status, текущие лимиты и текст ответа в панели провайдера |
Такое значение 500 и 529 относится к документированному API-маршруту. Произвольная HTML-ошибка шлюза не подтверждает, что Anthropic вернула тот же код. Настоящий 5xx самого API не является доказательством неправильного промпта или неисправной авторизации, поэтому посреди задачи перелогин и удаление настроек не служат первым исправлением. Повторный вход нужен, только если 500 возник на самом шаге входа. Ожидание и смена модели при перегрузке подробно разобраны в статье Ошибка 529 в Claude Code: что делать, когда API перегружен.
500 при входе в Claude Code: OAuth error и сбой авторизации
Если 500 появился во время входа по подписке, задача ещё не начиналась, и сверять файлы или команды не нужно. В отчётах пользователей на GitHub за март и апрель 2026 года (#33226, #44271, #44725) терминал показывал такие строки:
OAuth error: Request failed with status code 500
OAuth error: Failed to fetch user roles: Request failed with status code 500Иногда перед ними появлялось OAuth error: timeout of 15000ms exceeded, а браузер выводил «Authorization failed — Internal server error» на странице авторизации claude.ai. Несколько отчётов пришли в один день, что похоже на сбой на стороне сервиса, но в этих обсуждениях причина официально не названа.
- Статус входа. Откройте Claude Status и историю инцидентов. Сбои входа случаются: 24 августа 2026 года два коротких инцидента, с 16:02 до 16:08 и с 20:00 до 20:08 UTC, прямо затрагивали вход в Claude Code по подписке. Во время инцидента не меняйте локальные настройки: дождитесь восстановления и попробуйте войти ещё раз.
- Чистый повторный вход. Выполните
/logout, закройте Claude Code, снова запуститеclaudeи войдите. Если браузер не открылся или ссылка разорвана переносом строки, нажмитеc, чтобы скопировать адрес авторизации, и откройте его вручную. Учтите, что/logoutудаляет все сохранённые учётные данные, включая входы в MCP-серверы и секреты плагинов. - WSL2, SSH и контейнеры. Браузер открывается на другой машине, и перенаправление не доходит до локального порта обратного вызова Claude Code. После входа браузер покажет код: вставьте его в строку
Paste code here if prompted. Если вставка не срабатывает, используйтеclaude auth login— команда читает код из стандартного ввода. - Активный способ доступа. После входа запустите
/status. ОдобренныйANTHROPIC_API_KEY, например оставшийся в профиле оболочки от прежнего проекта, заменяет вход по подписке, а в режиме-pиспользуется всегда.
Шаги сброса взяты из раздела о входе и аутентификации официальной документации. Отдельного исправления для 500 на шаге OAuth там нет, поэтому порядок «сначала статус, потом чистый вход» опирается на общий сброс входа и на отчёты пользователей.
Если тот же аккаунт без проблем входит на другом компьютере, ищите причину на пути этой машины: брандмауэр, прокси или блокировка локального порта обратного вызова. В отчёте #44725 вход не проходил на компьютере с Windows, где брандмауэр блокировал входящие подключения, а на другом работал; это единичный случай, а не подтверждённая причина.
Системные часы и связка ключей macOS проверяются в другой ситуации — когда Claude Code постоянно просит войти заново. Остальные сообщения входа, включая Not logged in и истёкший или отозванный токен, разобраны в статье Temporarily unable to authenticate в Claude: ждать или чинить. Если вход отклоняется потому, что Claude недоступен в вашем регионе, это другой отказ, и шаги для 500 его не исправят.
Дождитесь применимых повторов: важна стадия ответа
Claude Code автоматически повторяет временные сбои до десяти раз с увеличением паузы. Это описание повторов, а не обещание ровно десяти попыток для любого сбоя. У обрыва соединения и зависшего потока свои условия; например, зависший поток до текста или вызова инструмента может получить один отдельный повтор вне обычного бюджета. Ориентируйтесь на сообщение установленной версии. Источник: автоматические повторы.
Граница проходит по завершённым блокам и стадии ответа:
- Если ответ ещё не начал передаваться, временные серверные ошибки, перегрузка и тайм-ауты могут повторяться автоматически.
- Если размышления завершены, но текст и вызов инструмента ещё не начаты, серверная ошибка или перегрузка с версии 2.1.284 допускает до двух повторов. Одни размышления на экране ещё не означают, что повтор обязательно запрещён.
- Если завершён блок текста или вызова инструмента либо такой блок начат после размышлений, исходный запрос целиком не запускается заново. Claude Code сохраняет законченные блоки, выполняет законченные вызовы инструментов и продолжает обработку с их результатов.
- Если ответ полностью завершён, поздний обрыв соединения не требует повторять его: программа сохраняет результат и завершает ход нормально.
При уведомлении о неполном ответе последний оборванный блок отбрасывается. Поэтому видимый результат может содержать законченный вызов инструмента, но не итоговое объяснение; либо последние предложения и последний вызов могут отсутствовать. Проверьте сохранившийся вывод перед новым действием. Источник: неполный ответ.
Если Claude Code действительно завис и не реагирует, официальный порядок — попытаться отменить текущую операцию через Ctrl+C; если реакции нет, перезапустить терминал и возобновить сессию. Это ветка зависания, а не обязательный шаг для каждого 500. Отмена в терминале не подтверждает отмену уже принятой внешней операции. Источник: зависание команды.
Как восстановить нужную сессию Claude Code
Оставайтесь в исходной беседе, если она доступна. Открывать новую только из-за 500 не нужно: в прежней истории находятся результаты инструментов и контекст прерванной работы.
Если процесс завершился, откройте терминал в каталоге проекта и запустите выбор сессии:
claude --resumeВыберите беседу по проекту, времени и содержанию. В уже работающей интерактивной сессии выбор доступен через /resume. После открытия убедитесь, что видите нужное задание и последние завершённые действия; название сессии само по себе этого не доказывает.
Если известен ID, возобновите именно его. Замените SESSION_ID настоящим идентификатором:
claude --resume SESSION_IDНачиная с версии 2.1.223 поиск по ID сначала проверяет текущий проект, затем остальные проекты на этой машине. В старых версиях поиск ограничивался текущим каталогом проекта и его worktree, поэтому исходный каталог особенно важен. В интерактивном выборе Ctrl+A расширяет список до всех проектов машины. Источник: поиск сессии.
Сессии, созданные через claude -p или Agent SDK, в интерактивном списке не появляются. Для них возьмите session_id из JSON-вывода исходного запуска и используйте восстановление по ID. Перед повторным запуском автоматизированной задачи проверьте, завершился ли первоначальный процесс и что он успел сделать. Текстовый неполный ответ основной беседы без вызовов инструментов в неинтерактивном режиме может продолжаться автоматически до трёх раз; это правило не разрешает повторять весь сценарий с внешними записями. Источник: неполный ответ в неинтерактивном режиме.
Если сессия не открывается или уже занята
При Failed to resume the conversation CLI завершает процесс с кодом 1. Повторите команду с ID из сообщения. Если повтор не помогает на версии до 2.1.285, документация рекомендует обновить Claude Code и снова возобновить сессию: старые версии могли не прочитать отдельную запись истории. Ошибка /resume внутри работающей беседы оставляет текущую сессию открытой. Источник: ошибка восстановления.
При No conversation found with session ID проверьте ID и машину. История хранится локально, а срок её хранения по умолчанию — 30 дней. Опечатка, удалённая история, другая машина или конфликт копий с одинаковым ID могут помешать поиску. Смена каталога не вернёт удалённую историю.
Если режим просмотра агентов показывает This session is running in another terminal, продолжайте в процессе, где беседа уже открыта, либо осознанно завершите его перед повторным открытием. Начиная с 2.1.248 этот режим учитывает и занятую терминалом беседу. Не запускайте второго исполнителя поверх той же работы. Источник: занятая сессия.
Сообщение This session has no saved transcript у остановленной фоновой сессии может означать, что она не успела завершить первый ответ. Исходная беседа, из которой её отправили в фон, при этом остаётся доступной. Вернитесь к ней: respawn такого фонового задания начинает пустую беседу, а не восстанавливает прежнюю историю. Источник: отсутствие сохранённой истории.
Восстановление после серверного сбоя не гарантировано: в сообщении пользователя от 18 марта 2026 года беседа перестала открываться после 500/529 при параллельных агентах, но уже отправленные коммиты сохранились. Это отдельный пользовательский отчёт; предполагаемая причина повреждения не подтверждена как универсальный дефект.
500 на каждом ходу одной сессии, а новая беседа работает
Бывает, что сессия открывается, но каждое новое сообщение в ней снова получает 500 — и после паузы, и после повтора, — тогда как новая беседа в том же проекте отвечает нормально. Такая картина указывает на конкретную беседу, а не на общий сбой сервиса, хотя справочник ошибок не связывает 500 с сохранённой историей.
Пользователи описывали этот случай на GitHub:
- в #58827 (май 2026 года, версия 2.1.50) старые сессии заметного размера падали с
API Error: 500 status code (no body), а новые работали; автор нашёл в сохранённой истории блоки, которые API отклонял при повторной отправке, — пустые блоки размышлений и пустой результат инструмента; - в #70650 (июнь 2026 года, версия 2.1.178) многодневная сессия возвращала
500 api_errorна каждую попытку, в том числе после/rewind, а новая сессия в соседней вкладке работала.
Это наблюдения и выводы пользователей, а не заявления Anthropic, и воспроизведения на текущих версиях в них нет. Справочник описывает похожий рисунок для нескольких ошибок 400: запись в сохранённой истории роняла каждый ход возобновлённой сессии на старых версиях. Там же дана контрольная проверка: если ошибка возвращается и в новой беседе, причина на пути запроса, а не в сохранённой истории. Для 500 такой проверки в документации нет, но её логика применима:
- Сначала обычный порядок для 500: статус, пауза около минуты, один повтор.
- Выполните
claude updateи снова возобновите ту же сессию — так справочник советует поступать, когда сбой вызывают записи истории. - Откройте новую беседу в том же проекте (
/clearили новый запускclaude) и отправьте короткий безопасный запрос, а не исходное задание. Если новая беседа отвечает, а старая нет, сбой привязан к её истории. Если 500 повторяется и там, проблема на пути запроса: проверьте статус,/statusи шлюз, указанный в последней строке ошибки. - Если старая беседа так и не отвечает, продолжайте в новой. Пока история старой открывается, выпишите из неё последние завершённые действия, сверьте их по таблице из следующего раздела и передайте новой беседе проверенную сводку и оставшиеся шаги. Исходную инструкцию целиком не повторяйте.
Не правьте файлы истории в ~/.claude вручную, не удаляйте этот каталог и не запускайте сторонние утилиты «починки» сессий. Если сбой воспроизводится, отправьте /feedback из проблемной беседы: так Anthropic получит детали запроса.
Проверьте файлы, команды и внешние действия перед продолжением

Это иллюстративная схема сверки, а не журнал реального восстановления. Ключ идемпотентности помогает только там, где внешний сервис поддерживает его правила; результат операции всё равно проверяют у этого сервиса.
Сопоставьте последние завершённые вызовы инструментов с текущим состоянием. Разделите шаги на выполненные, ещё работающие, не начатые и те, чей результат неизвестен. Такая проверка следует из сохранения законченных вызовов; это практический порядок действий, а не обещание автоматического восстановления всех результатов.
| Что могло произойти | Где проверить результат | Как продолжить |
|---|---|---|
| Файлы изменены или созданы | Содержимое, Git diff, новые неотслеживаемые файлы | Использовать готовые изменения; исправлять только обнаруженный дефект |
| Команда запущена | Вывод терминала, код завершения, отчёт или артефакт | При подтверждённом завершении не запускать её заново |
| Тест, сборка или фоновый агент ещё работают | Список задач, соответствующий процесс, журнал выполнения | Дождаться результата или осознанно остановить задачу перед новым запуском |
| Создан коммит или выполнен push | Локальная история и удалённый репозиторий | Продолжить от фактического коммита; локальный лог не доказывает push |
| Начаты CI или deployment | ID запуска, состояние и итог в сервисе | Использовать существующий запуск; не создавать второй из-за обрыва текста |
| Отправлены сообщение, запрос или запись в базу | ID операции, запись, журнал получателя | Сначала подтвердить результат; повтор допустим только после проверки условий сервиса |
Для проекта под Git начните с команд, которые читают состояние:
git status --short
git diff --stat
git diff
git diff --cached
git log -3 --onelinegit diff не показывает содержимое новых неотслеживаемых файлов: найдите их через git status и откройте отдельно. Вне Git проверяйте сами файлы и сохранённые результаты. Восстановленная беседа не заменяет эту проверку.
Для фоновых задач используйте /tasks в доступной сессии и журналы конкретного процесса. Окончание ответа основной беседы не означает, что всё запущенное в фоне уже остановилось. Наличие файла блокировки также не является доказательством успеха: нужен итоговый результат команды.
Удалённое состояние проверяйте в системе, которая приняла действие. Если публикация имеет ID и статус «выполнено», новый запуск не нужен. Если статус «в процессе», дождитесь результата. Если известно лишь, что соединение оборвалось, результат остаётся неизвестным: найдите операцию по ID или журналу прежде, чем повторять запись. Ключ идемпотентности полезен только там, где сервис действительно поддерживает его правила.
Продолжайте только оставшиеся шаги
После проверки можно отправить continue, но при многошаговой задаче полезнее прямо обозначить границу. Например, если файлы готовы, тест ещё работает, а публикация не начиналась:
Продолжи прежнюю задачу с проверенного состояния.
Изменения файлов уже сделаны — повторно их не создавай.
Тест ещё работает: сначала дождись его результата и проверь отчёт.
Публикация не запускалась. После успешного теста выполни только оставшийся
разрешённый шаг публикации и проверь его результат.
Если статус какого-либо действия неизвестен, сначала установи его;
не повторяй это действие наугад.Это пример инструкции, а не сообщение, которое нужно отправлять без проверки. Замените состояния своими и сохраните исходные границы разрешений. Для новой беседы, заменяющей сломанную, добавьте в начало короткое описание цели задачи и список уже подтверждённых результатов. Если публикация ранее не была разрешена, продолжение беседы само по себе не даёт такого разрешения. Успех восстановления — нужная история открыта, уже выполненные результаты подтверждены, оставшиеся действия завершены и проверены без повторного запуска готовых шагов.
/rewind восстанавливает код, но не подтверждает отмену всей задачи
Не откатывайте файлы автоматически из-за 500 или 529. Если изменения правильные, они остаются полезным результатом. /rewind нужен, когда вы решили отменить конкретную правку кода; восстановление истории разговора и отмена изменений — разные действия.
Текущая документация предупреждает: восстановление может пропустить ссылки, нестандартные файлы, пути с изменившимся каталогом или недоступной резервной копией. Сообщение Restored the code, but skipped N files означает частичный результат — содержимое пропущенных файлов остаётся в текущем состоянии. No files were restored означает, что ничего не восстановлено. По умолчанию резервные копии очищаются примерно через 30 дней после последнего сохранения, поэтому наличие контрольной точки в списке не гарантирует доступность её файлов. Источник: предупреждения восстановления кода.
После отката снова проверьте файлы и Git. Не считайте сообщение о восстановлении кода доказательством отмены shell-команды, фонового процесса, deployment или записи в базе: их результат проверяется отдельно. При неизвестном состоянии удалённой операции сначала найдите её запись, а не запускайте всю задачу заново.
Когда проблема действительно в лимите
Server is temporarily limiting requests (not your usage limit) — короткое ограничение API, не расходованная квота подписки. С версии 2.1.199 Claude Code автоматически повторяет его с паузами независимо от способа входа. Если сообщение всё же показано, подождите; при постоянном повторении проверьте статус. Источник: временное ограничение сервера.
У You've hit your session limit и weekly limit другая логика: доступ закрыт до указанного сброса. Эти окна общие для моделей, поэтому /model их не обходит. Если сообщение прямо называет лимит семейства Opus или Sonnet, доступная модель другого семейства может позволить продолжить. Проверяйте /usage и точный текст, а не старую таблицу квот. В интерактивной CLI-сессии с подпиской с версии 2.1.234 можно дождаться сброса в открытой беседе и продолжить автоматически. Учитывайте это ожидание перед ручным повтором. Источник: лимиты использования.
Для Request rejected (429) команда /status помогает установить активный способ доступа. Одобренный ANTHROPIC_API_KEY может направлять запросы через API-ключ вместо подписки; проверяйте факт его использования, не раскрывая значение. Затем смотрите панель соответствующего провайдера. В прямом Anthropic API 429 также может означать месячный предел расходов тарифного уровня или предел расходов рабочего пространства Claude Code. Для первого случая retry-after отсутствует, и обычная пауза проблему не снимает. Источники: 429 в Claude Code, ошибки прямого API.
Если вопрос уже о том, почему расход растёт, а не о возобновлении прерванной задачи, переходите к аудиту токенов, контекста и стоимости Claude Code. Если ошибка возникла в веб-чате или прямом API, используйте разбор внутренней ошибки сервера Claude по продуктам.
Что передать в поддержку, если сбой продолжается
Для устойчивого 500 без опубликованного инцидента официальный следующий шаг — /feedback или доступный способ обращения за поддержкой. Сохраните точную строку, время с часовым поясом, версию Claude Code, модель, активного провайдера и состояние сервиса. Добавьте ID запроса, если он есть, и укажите, на каком шаге произошёл сбой: при входе, до ответа, во время текста, при инструменте или при восстановлении истории. Если 500 держится только в одной беседе, напишите, работает ли новая.
Также сообщите, что уже выполнено и какой ограниченный повтор вы сделали. Удалите ключи, приватный код и лишние фрагменты диалога. Зелёный статус — часть описания, а не доказательство повреждённой сессии или неисправного аккаунта.
Часто задаваемые вопросы
Как понять, что Claude Code не работает сегодня у всех?
Откройте Claude Status и историю инцидентов; при Bedrock, Google Cloud, Microsoft Foundry или собственном шлюзе смотрите страницу, названную в последней строке ошибки. При активном инциденте ждите и не меняйте локальные настройки. Зелёный статус не гарантирует успех отдельного запроса: если 500 повторяется без инцидента, отправьте /feedback. Источник: 500 в Claude Code.
Ошибка 529 означает, что закончился мой лимит?
Нет. На документированном маршруте Claude Code 529 означает перегрузку API и не расходует вашу квоту. Проверьте сервис из сообщения, подождите несколько минут или выберите подходящую доступную модель через /model. Лимит подписки имеет отдельное уведомление и время сброса. Источник: повторяющаяся 529.
Нужно ли переустанавливать Claude Code или входить заново при API Error 500?
Обычно нет. Ошибка 500 самого API не вызвана настройками или аккаунтом, и переустановки нет среди документированных шагов. Чистый повторный вход (/logout, затем claude) уместен, только если 500 появился на шаге входа. Если старая сессия не открывается или падает на каждом ходу, сначала выполните claude update и возобновите её снова.
Можно ли восстановить сессию после перезапуска терминала?
Да, если её локальная история сохранилась и читается: используйте claude --resume или восстановление по ID. Если история удалена, находится на другой машине или не читается, восстановление не гарантировано. Сессии -p и SDK ищут по session_id исходного JSON-вывода, а не в интерактивном списке. Источник: поиск сессии.
Можно ли просто написать continue после неполного ответа?
Да, в интерактивной беседе это документированный способ продолжить с последнего законченного блока. Если инструменты уже могли изменить файлы или внешний сервис, сначала подтвердите их результаты. При неизвестном результате записи сначала выясните её состояние. Источник: неполный ответ.
Нужно ли создать новую сессию, если статус зелёный, а 500 остаётся?
Не по умолчанию. Для обычного 500 сохраняются проверка нужного сервиса, пауза, ограниченный повтор и при устойчивом сбое /feedback. Новая беседа полезна в двух случаях: как контрольная проверка, когда одна возобновлённая сессия падает на каждом ходу, и как запасной путь, когда прежнюю не удаётся вернуть. В обоих случаях она получает только проверенное состояние и оставшуюся работу, а не исходное задание целиком.
Источники12
Внешние страницы, на которые ссылается это руководство, в порядке упоминания. Последнее обновление: 5 окт. 2026 г..
Источники12
Внешние страницы, на которые ссылается это руководство, в порядке упоминания. Последнее обновление: 5 окт. 2026 г..
- 1.справочнику ошибок Claude Codecode.claude.com/docs/en/errors
- 2.Claude Statusstatus.claude.com
- 3.#33226github.com/anthropics/claude-code/issues/33226
- 4.#44271github.com/anthropics/claude-code/issues/44271
- 5.#44725github.com/anthropics/claude-code/issues/44725
- 6.историю инцидентовstatus.claude.com/history
- 7.раздела о входе и аутентификацииcode.claude.com/docs/ru/troubleshoot-install
- 8.Источник: зависание командыcode.claude.com/docs/es/troubleshooting
- 9.сообщении пользователя от 18 марта 2026 годаgithub.com/anthropics/claude-code/issues/35690
- 10.#58827github.com/anthropics/claude-code/issues/58827
- 11.#70650github.com/anthropics/claude-code/issues/70650
- 12.ошибки прямого APIplatform.claude.com/docs/en/api/errors





