En este documento, se identifican algunos de los códigos de error y los mensajes que muestran las API de Google. En especial, los errores que se mencionan aquí se encuentran en el dominio global o predeterminado de las API de Google. Existen muchas API que también definen sus propios dominios, los cuales identifican errores específicos de la API que no se encuentran en el dominio global. Para esos errores, el valor de la propiedad domain
en la respuesta de JSON será un valor específico de la API, como youtube.parameter
.
En esta página, se enumeran los errores por código de estado HTTP, como se define en RFC 7231.
En la respuesta de JSON de muestra que aparece a continuación, se muestra cómo se comunica un error global:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidParameter",
"message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]",
"locationType": "parameter",
"location": "chart"
}
],
"code": 400,
"message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]"
}
}
Errores
- MOVED_PERMANENTLY (301)
- SEE_OTHER (303)
- NOT_MODIFIED (304)
- TEMPORARY_REDIRECT (307)
- BAD_REQUEST (400)
- UNAUTHORIZED (401)
- PAYMENT_REQUIRED (402)
- FORBIDDEN (403)
- NOT_FOUND (404)
- METHOD_NOT_ALLOWED (405)
- CONFLICT (409)
- GONE (410)
- PRECONDITION_FAILED (412)
- REQUEST_ENTITY_TOO_LARGE (413)
- REQUESTED_RANGE_NOT_SATISFIABLE (416)
- EXPECTATION_FAILED (417)
- PRECONDITION_REQUIRED (428)
- TOO_MANY_REQUESTS (429)
- INTERNAL_SERVER_ERROR (500)
- NOT_IMPLEMENTED (501)
- SERVICE_UNAVAILABLE (503)
MOVED_PERMANENTLY (301)
Código de error |
Descripción |
movedPermanently |
Esta solicitud y las solicitudes futuras de la misma operación se deben enviar a la URL especificada en el encabezado Location para esta respuesta, en lugar de la URL a la que se envió. |
SEE_OTHER (303)
Código de error |
Descripción |
seeOther |
La solicitud se procesó de manera correcta. Para obtener la respuesta, envía una solicitud GET a la URL especificada en el encabezado Location . |
mediaDownloadRedirect |
La solicitud se procesó de manera correcta. Para obtener la respuesta, envía una solicitud GET a la URL especificada en el encabezado Location . |
NOT_MODIFIED (304)
Código de error |
Descripción |
notModified |
No se cumplió la condición establecida para un encabezado “If-None-Match”. Esta respuesta indica que no se modificó el documento solicitado y que se debe obtener una respuesta almacenada en caché. Comprueba el valor del encabezado de la solicitud HTTP If-None-Match . |
TEMPORARY_REDIRECT (307)
Código de error |
Descripción |
temporaryRedirect |
Para que tu solicitud se procese, vuelve a enviarla a la URL especificada en el encabezado Location de esta respuesta. |
BAD_REQUEST (400)
Código de error |
Descripción |
badRequest |
La solicitud a la API no es válida o no está formulada de manera correcta. Por consecuencia, el servidor de la API no pudo comprender la solicitud. |
badBinaryDomainRequest |
La solicitud de dominio binario no es válida. |
badContent |
El tipo de contenido de los datos de la solicitud o el de una parte de una solicitud de varias partes no es compatible. |
badLockedDomainRequest |
La solicitud de dominio bloqueado no es válida. |
corsRequestWithXOrigin |
La solicitud CORS contiene un encabezado “XD3 X-Origin”, lo que indica que se trata de una solicitud CORS no válida. |
endpointConstraintMismatch |
Falló la solicitud porque no coincidía con la API especificada. Comprueba el valor de la ruta de URL para asegurarte de que sea correcto. |
invalid |
La solicitud falló porque contenía un valor no válido. El valor podría ser un valor de parámetro, de encabezado o de propiedad. |
invalidAltValue |
El valor del parámetro alt especifica un formato de salida desconocido. |
invalidParameter |
La solicitud falló porque contenía un parámetro o un valor del parámetro no válido. Revisa la documentación de la API a fin de determinar qué parámetros son válidos para tu solicitud. |
invalidQuery |
La solicitud no es válida. Revisa la documentación de la API para determinar qué parámetros son compatibles con la solicitud y ver si esta contiene una combinación de parámetros o un valor del parámetro no válidos. Comprueba el valor del parámetro de la solicitud q . |
keyExpired |
Venció la clave de API proporcionada en la solicitud, lo que significa que el servidor de la API no puede comprobar el límite de la cuota para la aplicación que realiza la solicitud. Si deseas obtener más información o una clave nueva, consulta Google Developers Console. |
keyInvalid |
La clave de API proporcionada en la solicitud no es válida, lo que significa que el servidor de la API no puede comprobar el límite de cuota para la aplicación que realiza la solicitud. Usa Google Developers Console a fin de buscar tu clave de API, o si quieres obtener una nueva. |
lockedDomainCreationFailure |
El token de OAuth se recibió en la string de consulta, acción que esta API prohíbe por formatos de respuesta que no son de JSON o XML. Si es posible, envía el token de OAuth en el encabezado “Authorization” como alternativa. |
notDownload |
Solo las solicitudes de descarga multimedia se pueden enviar a rutas de URL /download/* . Vuelve a enviar la solicitud a la misma ruta, pero sin el prefijo /download . |
notUpload |
La solicitud falló porque no es una solicitud de carga, y solo se pueden enviar este tipo de solicitudes a los URI /upload/* . Vuelve a enviar la solicitud a la misma ruta, pero sin el prefijo /upload . |
parseError |
El servidor de la API no puede analizar el cuerpo de la solicitud. |
required |
Falta información obligatoria en la solicitud a la API. La información requerida podría ser un parámetro o una propiedad de un recurso. |
tooManyParts |
La solicitud de varias partes falló porque contiene demasiadas partes. |
unknownApi |
No se reconoce la API a la que llama la solicitud. |
unsupportedMediaProtocol |
El cliente usa un protocolo multimedia no compatible. |
unsupportedOutputFormat |
El valor del parámetro alt especifica un formato de salida que no es compatible con este servicio. Comprueba el valor del parámetro de la solicitud alt . |
wrongUrlForUpload |
La solicitud es de carga, pero falló porque no se envió al URI correcto. Las solicitudes de carga deben enviarse a los URI que contengan el prefijo /upload/* . Vuelve a enviar la solicitud a la misma ruta, pero con el prefijo /upload . |
UNAUTHORIZED (401)
Código de error |
Descripción |
unauthorized |
El usuario no tiene autorización para realizar la solicitud. |
authError |
Las credenciales de autorización proporcionadas para la solicitud no son válidas. Comprueba el valor del encabezado de la solicitud HTTP Authorization . |
expired |
La sesión venció. Comprueba el valor del encabezado de la solicitud HTTP Authorization . |
lockedDomainExpired |
La solicitud falló porque venció un dominio bloqueado que antes era válido. |
required |
El usuario debe acceder para generar esta solicitud a la API. Comprueba el valor del encabezado de la solicitud HTTP Authorization . |
PAYMENT_REQUIRED (402)
Código de error |
Descripción |
dailyLimitExceeded402 |
Se alcanzó el límite de presupuesto diario establecido por el desarrollador. |
quotaExceeded402 |
La operación solicitada necesita más recursos de los que permite la cuota. Se requiere un pago para completar la operación. |
user402 |
La operación solicitada necesita algún tipo de pago del usuario autenticado. |
FORBIDDEN (403)
Código de error |
Descripción |
forbidden |
La operación solicitada está prohibida y no se puede completar. |
accessNotConfigured |
Tu proyecto no está configurado para acceder a esta API. Usa Google Developers Console a fin de activar la API para tu proyecto. |
accessNotConfigured |
El proyecto se bloqueó debido a un abuso. Consulta http://support.google.com/code/go/developer_compliance. |
accessNotConfigured |
El proyecto se marcó para eliminarse. |
accountDeleted |
Se borró la cuenta de usuario asociada a las credenciales de autorización de la solicitud. Comprueba el valor del encabezado de la solicitud HTTP Authorization . |
accountDisabled |
Se inhabilitó la cuenta de usuario asociada a las credenciales de autorización de la solicitud. Comprueba el valor del encabezado de la solicitud HTTP Authorization . |
accountUnverified |
No se verificó la dirección de correo electrónico del usuario que crea la solicitud. Comprueba el valor del encabezado de la solicitud HTTP Authorization . |
concurrentLimitExceeded |
La solicitud falló porque se alcanzó un límite de uso simultáneo. |
dailyLimitExceeded |
Se alcanzó un límite de cuota diario para la API. |
dailyLimitExceeded |
Se alcanzó el límite de cuota diario y el proyecto se bloqueó debido a un abuso. Consulta el formulario de asistencia de cumplimiento para las API de Google que te ayudará a resolver el problema. |
dailyLimitExceededUnreg |
La solicitud falló porque se alcanzó un límite diario para la API sin autenticar. El uso continuo de la API requiere el registro mediante Google Developers Console. |
downloadServiceForbidden |
La API no admite un servicio de descarga. |
insufficientAudience |
La solicitud no se puede completar para este público. |
insufficientAuthorizedParty |
La solicitud no se puede completar para esta aplicación. |
insufficientPermissions |
El usuario autenticado no tiene suficientes permisos para ejecutar esta solicitud. |
limitExceeded |
La solicitud no se puede completar debido a límites de acceso o frecuencia. |
lockedDomainForbidden |
Esta API no admite dominios bloqueados. |
quotaExceeded |
La operación solicitada necesita más recursos de los que permite la cuota. |
rateLimitExceeded |
Se enviaron demasiadas solicitudes durante un período determinado. |
rateLimitExceededUnreg |
Se superó un límite de frecuencia. Debes registrar tu aplicación para poder seguir haciendo llamadas a la API. Regístrate mediante Google Developers Console. |
responseTooLarge |
El recurso solicitado es demasiado grande para mostrarse. |
servingLimitExceeded |
Ya se alcanzó el límite de frecuencia general especificado para la API. |
sslRequired |
Se requiere SSL para realizar esta operación. |
unknownAuth |
El servidor de la API no reconoce el esquema de autorización que se usó para la solicitud. Comprueba el valor del encabezado de la solicitud HTTP Authorization . |
userRateLimitExceeded |
La solicitud falló porque se alcanzó un límite de frecuencia por usuario. |
userRateLimitExceededUnreg |
Falló la solicitud porque se alcanzó un límite de frecuencia por usuario y no se identificó el desarrollador de cliente en la solicitud. Usa Google Developer Console (https://console.developers.google.com) a fin de crear un proyecto para tu aplicación. |
variableTermExpiredDailyExceeded |
La solicitud falló porque venció una cuota de término variable y se alcanzó un límite diario. |
variableTermLimitExceeded |
La solicitud falló porque se alcanzó un límite de cuota de término variable. |
NOT_FOUND (404)
Código de error |
Descripción |
notFound |
La operación solicitada falló porque no se pudo encontrar un recurso asociado con la solicitud. |
notFound |
No se pudo encontrar un recurso asociado con la solicitud. Si no usaste esta API durante las últimas dos semanas, vuelve a implementar la app de App Engine y llama de nuevo. |
unsupportedProtocol |
El protocolo que se usa en la solicitud no es compatible. |
METHOD_NOT_ALLOWED (405)
Código de error |
Descripción |
httpMethodNotAllowed |
El método HTTP asociado a la solicitud no es compatible. |
CONFLICT (409)
Código de error |
Descripción |
conflict |
No es posible completar la solicitud a la API porque la operación solicitada entraría en conflicto con un elemento existente. Por ejemplo, una solicitud que intenta crear un elemento duplicado generaría un conflicto, aunque los elementos duplicados suelen identificarse con errores más específicos. |
duplicate |
La operación solicitada falló porque intentó crear un recurso que ya existe. |
GONE (410)
Código de error |
Descripción |
deleted |
La solicitud falló porque se borró el recurso asociado a ella. |
PRECONDITION_FAILED (412)
Código de error |
Descripción |
conditionNotMet |
No se cumplió la condición establecida en el encabezado de la solicitud HTTP If-Match o If-None-Match . Para obtener información, consulta la sección ETag de la especificación HTTP. Comprueba el valor del encabezado de la solicitud HTTP If-Match . |
REQUEST_ENTITY_TOO_LARGE (413)
Código de error |
Descripción |
backendRequestTooLarge |
La solicitud es demasiado grande. |
batchSizeTooLarge |
La solicitud de lote contiene demasiados elementos. |
uploadTooLarge |
Falló la solicitud porque los datos enviados en esta son demasiado grandes. |
REQUESTED_RANGE_NOT_SATISFIABLE (416)
Código de error |
Descripción |
requestedRangeNotSatisfiable |
La solicitud especificó un rango que no se puede satisfacer. |
EXPECTATION_FAILED (417)
Código de error |
Descripción |
expectationFailed |
El servidor no puede cumplir con una expectativa del cliente. |
PRECONDITION_REQUIRED (428)
Código de error |
Descripción |
preconditionRequired |
La solicitud requiere una condición previa que no está proporcionada. Para que se procese esta solicitud de forma correcta, incluye un encabezado If-Match o If-None-Match con ella. |
TOO_MANY_REQUESTS (429)
Código de error |
Descripción |
rateLimitExceeded |
Se enviaron demasiadas solicitudes en un período determinado. |
INTERNAL_SERVER_ERROR (500)
Código de error |
Descripción |
internalError |
La solicitud falló debido a un error interno. |
NOT_IMPLEMENTED (501)
Código de error |
Descripción |
notImplemented |
No se implementó la operación solicitada. |
unsupportedMethod |
La solicitud falló porque intenta ejecutar un método o una operación desconocida. |
SERVICE_UNAVAILABLE (503)
Código de error |
Descripción |
backendError |
Se produjo un error de backend. |
backendNotConnected |
Esta solicitud falló debido a un error de conexión. |
notReady |
El servidor de la API no está listo para aceptar solicitudes. |