Cuando una solicitud a la API se realiza correctamente, la API muestra un código de estado 200 OK junto con los datos solicitados en el cuerpo de la respuesta. Si se produce un error, la API muestra uno de los códigos de error canónicos definidos por las APIs de Google, asignado a un código de estado HTTP, y un cuerpo de respuesta que contiene información sobre el error. Cuando se produce un error, inspecciona los campos message y status en el cuerpo de respuesta JSON para obtener detalles específicos que te ayuden a depurar.
Formato de error
Si una solicitud genera un error, la API muestra un código de estado HTTP adecuado y un cuerpo de respuesta JSON. La respuesta de error contiene un objeto error con la siguiente estructura:
{
"error": {
"code": 403,
"message": "User does not have sufficient permissions for this property.",
"status": "PERMISSION_DENIED"
}
}
El objeto error contiene estos campos:
| Campo | Descripción |
|---|---|
| código | El código de estado HTTP, como 400, 401, 403, 429 o 500. |
| mensaje | una descripción breve del error. |
| estado | El código de error canónico, como INVALID_ARGUMENT, UNAUTHENTICATED, PERMISSION_DENIED, RESOURCE_EXHAUSTED o INTERNAL. |
Errores comunes
En la siguiente tabla, se enumeran los errores comunes que muestra la API.
| Código de estado HTTP | Código canónico | Motivo | Descripción |
|---|---|---|---|
| 400 | INVALID_ARGUMENT |
Solicitud incorrecta | La solicitud tiene un formato incorrecto. Esto puede deberse a parámetros faltantes o no válidos, como un período incorrecto o un filtro con formato incorrecto. |
| 401 | UNAUTHENTICATED |
Credenciales no válidas | La solicitud no tiene credenciales de autenticación válidas para el recurso de destino. Esto puede suceder si falta el token de acceso de OAuth 2.0, no es válido o venció. Sigue las instrucciones en Autenticación con OAuth 2.0 para obtener un token válido. |
| 403 | PERMISSION_DENIED |
Permisos insuficientes | El usuario autenticado no tiene acceso a la propiedad de Google Analytics solicitada. |
| 429 | RESOURCE_EXHAUSTED |
Se superó la cuota | Se rechazó la solicitud porque se alcanzaron los límites de cuota de la API. Consulta Límites y cuotas de la API de datos para obtener más información. Es posible que superes los límites por proyecto o por propiedad. |
| 500 | INTERNAL |
Error interno del servidor | Se produjo un error inesperado de servidor. Por lo general, este es un problema temporal. Se recomienda volver a intentar la solicitud con una retirada exponencial. Para evitar superar las cuotas de errores del servidor, es importante implementar una retirada exponencial con límites de reintento. |
| 503 | UNAVAILABLE |
Servicio no disponible | El servicio no está disponible temporalmente. Por lo general, este es un problema temporal. Se recomienda volver a intentar la solicitud con una retirada exponencial. Para evitar superar las cuotas de errores del servidor, es importante implementar una retirada exponencial con límites de reintento. |