Si Claude Code muestra Invalid code, comienza un intento nuevo y devuelve el código completo al terminal que inició la autorización. Si aparece 403 después de entrar, revisa la cuenta, los permisos y las credenciales que está usando realmente. Un 500 exige otra distinción: puede fallar la página de autorización o una petición posterior al modelo.
Antes de cambiar nada, conserva el mensaje y anota dónde apareció: navegador, terminal al pegar el código o primera petición tras iniciar sesión. Ese dato permite elegir una recuperación útil. No necesitas crear una clave API para arreglar cualquier error de OAuth.
Elige el paso que coincide con tu caso
| Lo que ves | Qué comprobar primero | Siguiente acción |
|---|---|---|
OAuth error: Invalid code al devolver el código | Código caducado o incompleto | Reinicia la autorización y usa el código del intento nuevo |
| El navegador termina, pero SSH, WSL o un contenedor siguen esperando | El navegador y Claude Code pueden estar en equipos o entornos distintos | Pega el código en el terminal original |
403 Forbidden después del acceso | Cuenta, suscripción o rol, credenciales activas y proxy | Consulta /status y sigue las comprobaciones de permisos |
500 en la página de autorización | El acceso no ha llegado a completarse | Consulta las incidencias y vuelve a intentar el inicio de sesión más tarde |
API Error: 500 al enviar una petición | Servicio al que se dirige Claude Code | Comprueba el proveedor y repite la petición tras una breve espera |
| Entras, pero la sesión vuelve a caducar | Reloj del sistema y almacenamiento de credenciales | Renueva el acceso y diagnostica la persistencia de la sesión |
Un mensaje que mencione la autorización de un servidor MCP puede pertenecer a ese servidor. Comprueba qué servicio solicita el acceso antes de aplicar cambios a la cuenta de Claude Code.

Si el código no sirve o el terminal no lo acepta
El código que devuelve el navegador sirve para completar el intento de autorización abierto en Claude Code. No es una clave API ni el token que se conserva para sesiones posteriores. La documentación oficial atribuye Invalid code a un código caducado o truncado; no establece un plazo exacto que debas cronometrar. Consulta el procedimiento oficial para Invalid code.
- En la pantalla del error, pulsa Enter para reintentar.
- Abre la URL del nuevo intento. Si necesitas copiarla, utiliza c en la pantalla que ofrece esa opción y asegúrate de copiarla completa.
- Autoriza con la cuenta que quieres usar.
- Si se solicita un código, copia el nuevo código completo y pégalo en el terminal que espera ese intento. Completa estos pasos sin demoras innecesarias.
Si has abierto varias pestañas de autorización, vuelve a la del intento más reciente. Reutilizar un código anterior dificulta saber qué está fallando. No publiques el código ni la URL completa para pedir ayuda: pueden contener datos de autorización.
SSH, WSL y contenedores: vuelve al terminal de origen
Que el navegador indique que has autorizado el acceso no significa que haya podido devolverlo al proceso de Claude Code. En un servidor por SSH, por ejemplo, el navegador de tu portátil y el terminal remoto no comparten necesariamente el destino de la redirección.
Abre en el navegador local la URL que muestra Claude Code y pega el código resultante en el terminal original, aunque esté conectado a otro equipo. Si el pegado no responde, prueba la opción de pegar del menú del terminal o su atajo alternativo. También puedes iniciar el proceso desde la línea de comandos con:
bashclaude auth login
Este comando admite la entrada del código por la entrada estándar y es una alternativa documentada cuando el pegado de la pantalla interactiva falla. No presupone que debas contratar acceso API ni cambiar tu método de pago. Instrucciones para WSL2, SSH y contenedores.
Si aparece 403, confirma qué cuenta está usando Claude Code
En una sesión interactiva, ejecuta:
text/status
Revisa el método de autenticación mostrado. Haber autorizado una cuenta de Claude en el navegador no obliga al terminal a usarla si tiene otras credenciales configuradas.
La diferencia es especialmente relevante si utilizas una suscripción y también has probado la API. En modo interactivo, una ANTHROPIC_API_KEY aprobada tiene prioridad sobre el acceso OAuth de la suscripción. Con claude -p, la clave se usa siempre que esté presente. También pueden intervenir ANTHROPIC_AUTH_TOKEN, la selección de otro proveedor y otras configuraciones. CLAUDE_CODE_OAUTH_TOKEN se vuelve a leer al iniciar cada sesión. Estas reglas no equivalen a una única prioridad sencilla para todas las instalaciones. Documentación de prioridad de autenticación.
Comprueba si hay variables sin imprimir sus valores
En Bash o Zsh puedes ejecutar lo siguiente desde el mismo terminal que utilizas para abrir Claude Code. Comprueba estas variables habituales y solo muestra los nombres de las que están presentes; no revela su contenido:
bashfor name in ANTHROPIC_API_KEY ANTHROPIC_AUTH_TOKEN \ ANTHROPIC_BASE_URL CLAUDE_CODE_OAUTH_TOKEN \ https_proxy HTTPS_PROXY http_proxy HTTP_PROXY NODE_EXTRA_CA_CERTS do if printenv "$name" >/dev/null 2>&1; then printf '%s: presente\n' "$name" fi done
Que aparezca un nombre no demuestra que su valor sea válido ni que sea la credencial activa. Esta lista no cubre todas las configuraciones de proveedores. Si no aparece ninguno, todavía puede haber credenciales guardadas o ajustes en archivos de configuración. Contrasta el resultado con /status.
Si pretendías utilizar tu suscripción y confirmas que la clave API es una configuración sobrante, puedes quitar solo esa variable de la sesión actual:
bashunset ANTHROPIC_API_KEY
Sal de Claude Code, ábrelo de nuevo y revisa /status. Si la variable reaparece al abrir otro terminal, revisa dónde la definiste —por ejemplo, el archivo de inicio de tu shell o la configuración del terminal del editor— y corrige esa asignación concreta. No elimines credenciales de un proveedor que tu proyecto sí necesita.
La comprobación también debe hacerse en el entorno que falla. El terminal del editor, una sesión SSH y una ventana de terminal independiente pueden heredar variables distintas. Cambiar de OAuth a una clave API cambia el método de acceso y puede cambiar la facturación; no recupera por sí mismo el acceso incluido en una suscripción.
Después, revisa permisos y conexión
Una vez identificado el acceso activo, comprueba lo que corresponda:
- Suscripción Pro o Max: verifica que siga activa y que has autorizado la cuenta correcta.
- Anthropic Console: comprueba en Settings → Members que tienes el rol Claude Code o Developer. Si no puedes modificarlo, pide al administrador de la organización que lo revise.
- Red de empresa: comprueba si el proxy puede estar interfiriendo. Que el navegador complete el acceso no prueba que el proceso del terminal use la misma configuración de red.
Son comprobaciones independientes del procedimiento oficial para 403 después de iniciar sesión. El número 403, por sí solo, no demuestra que la cuenta esté suspendida, que falte saldo o que el código haya caducado.
España figura en la lista oficial de países admitidos, consultada el 6 de septiembre de 2026. Eso no acredita los permisos de una cuenta concreta; si trabajas desde otro país, revisa la disponibilidad correspondiente a tu ubicación real.
Si recibes además un aviso explícito de suspensión, pasa a la guía para apelar una cuenta de Claude bloqueada. Repetir el inicio de sesión no resuelve una suspensión confirmada.
El error 500 depende de dónde se produce
Si el 500 aparece al autorizar en el navegador, el problema ocurre antes de completar el acceso. Consulta el estado de Claude y el historial de incidencias, comprueba la hora y los componentes afectados y vuelve a iniciar el proceso después de una espera. Si persiste, conserva el punto exacto del fallo para soporte.
Existe un informe de un error 500 en la autorización OAuth, publicado el 7 de abril de 2026 para Claude Code 2.1.92 en macOS. Es un caso histórico y el problema está cerrado: no demuestra una caída actual ni identifica una versión que vaya a resolver tu caso.
Si ya habías entrado y el 500 aparece al enviar una petición, sigue el diagnóstico del servicio que recibe esa petición. La documentación define API Error: 500 como un error interno del servicio y recomienda comprobar su estado y reintentar tras una breve espera. Si has configurado ANTHROPIC_BASE_URL, el destino puede ser una pasarela propia o de otro proveedor: la página de estado de Anthropic no describe necesariamente ese servicio. Referencia oficial del error 500.
Reinstalar Claude Code o borrar sus credenciales no corrige automáticamente un fallo del servicio. Si una incidencia coincide con tu error, espera a su resolución antes de acumular cambios locales.
Si vuelve a pedirte acceso o solo falla en tu red
Cuando el token ha caducado o se ha revocado, intenta renovar el acceso desde Claude Code:
text/login
Si la renovación no basta, la documentación contempla /logout, cerrar Claude Code, volver a abrirlo e iniciar sesión. Antes de hacerlo, ten en cuenta que cerrar sesión también puede borrar accesos MCP guardados y valores sensibles de plugins; quizá debas configurarlos de nuevo. No hace falta borrar todo el directorio ~/.claude. Renovación de la sesión y reinicio del acceso.
Si el problema se repite tras entrar, comprueba que la fecha y la hora del sistema sean correctas. En macOS, claude doctor permite comprobar problemas del Llavero. Un rechazo del Llavero no implica siempre que resulte imposible guardar la sesión: la versión actual puede recurrir a credenciales en texto sin cifrar. Revisa el diagnóstico sin abrir ni compartir archivos de credenciales.
Para una red corporativa, Claude Code admite proxies HTTP y HTTPS; SOCKS no está admitido. Si la empresa utiliza una autoridad de certificación propia, la configuración documentada es NODE_EXTRA_CA_CERTS. Pide la configuración y el certificado adecuados al administrador, en lugar de desactivar la validación TLS. Configuración oficial de red.
Comprueba la recuperación antes de darlo por resuelto

Vuelve al terminal, editor, sesión SSH o contenedor donde apareció el problema. Abre una sesión nueva, consulta /status y confirma que coincide con el método de acceso que querías usar. Después envía una petición breve, por ejemplo: «Responde solo con OK».
La recuperación queda comprobada cuando se cumplen ambas cosas: la autenticación es la esperada y una petición nueva recibe respuesta. Una página de autorización completada, un código aceptado o una credencial guardada solo confirman pasos intermedios. Si el fallo original ocurre con -p, comprueba también ese modo: puede seleccionar una clave API aunque tu sesión interactiva utilice otra autenticación.
Si continúa fallando, prepara un informe con la versión que devuelve claude --version, sistema operativo, entorno, hora con zona horaria, texto del error, paso exacto y comprobaciones realizadas. Indica si usas suscripción, Console u otro proveedor, sin incluir sus secretos. Oculta claves, tokens, códigos, URL completas de autorización, cookies y datos personales.
Los problemas de cuenta, bucles de acceso o reconocimiento de la suscripción corresponden al soporte de Anthropic mediante Get help en la cuenta. Para un fallo del cliente, la documentación también remite a GitHub o a /feedback. Cómo solicitar ayuda con Claude Code.



