Cuando una solicitud a nuestra API no puede ser procesada exitosamente, se devuelve un código de estado HTTP que indica el tipo de error ocurrido. Esta sección proporciona detalles sobre los códigos de error más comunes que podría encontrar mientras interactúa con nuestra API, incluyendo sugerencias sobre cómo manejar estos errores de manera efectiva.
400 Bad Request
Este código indica que la solicitud no pudo ser procesada debido a un error de sintaxis del cliente. Comúnmente, esto ocurre por un formato incorrecto en el cuerpo de la solicitud o parámetros faltantes. Revise la documentación relacionada con el endpoint específico para asegurarse de que todos los campos requeridos estén presentes y correctamente formateados.
401 Unauthorized
Se devuelve cuando la solicitud requiere autenticación y esta no ha sido proporcionada, es inválida o ha expirado. Verifique las credenciales de autenticación y asegúrese de incluir el token de acceso correcto en las cabeceras de su solicitud.
403 Forbidden
Este código significa que el servidor ha entendido la solicitud, pero se niega a autorizarla. Asegúrese de tener los permisos necesarios para realizar la solicitud en cuestión.
404 Not Found
Indica que el recurso solicitado no se encontró. Esto puede deberse a un error en la URL, o que el recurso no existe o fue eliminado. Verifique la URL y los parámetros de la solicitud.
405 Method Not Allowed
Se devuelve cuando el método HTTP utilizado no es soportado por el recurso en cuestión. Consulte la documentación para confirmar los métodos HTTP permitidos para el endpoint que está intentando utilizar.
500 Internal Server Error
Indica un error general del servidor que no pudo ser clasificado de otra manera. Esto puede ser el resultado de problemas temporales del servidor. Es recomendable intentar nuevamente después de algún tiempo. Si el problema persiste, contacte al soporte técnico.
429 Too Many Requests
Este código indica que el usuario ha enviado demasiadas solicitudes en un período de tiempo dado. Se utiliza para aplicar controles de tasa de solicitud (rate limiting) y prevenir el abuso del servicio. Al recibir este código, se recomienda que la aplicación implemente una lógica de reintento con una espera exponencial o consulte los encabezados de la respuesta para determinar cuánto tiempo esperar antes de volver a intentar la solicitud.
402 Payment Required
Este código se retorna cuando la cuenta del cliente no tiene saldo suficiente. Indica que la operación solicitada no puede ser procesada hasta que se realice el pago correspondiente o se regularice la situación de cobro.
Manejo de Errores
Es importante implementar una gestión adecuada de errores en su aplicación para asegurar una experiencia de usuario fluida. Esto incluye la verificación de los códigos de estado de la respuesta, el manejo de errores específicos según los códigos devueltos, y la implementación de mecanismos de reintento para errores temporales.
Una buena practica es obtener el código de respuesta HTTP y si es del rango de 4XX o 5XX, la solicitud puede entenderla como rechazada, deberá ver el detalle del rechazo, corregir la solicitud y enviarla nuevamente.
Detalle del código de respuesta
Cuando el endpoint API retorna un onjeto JSON, usted encontrará las siguientes propiedades:
- statusCode: Código de respuesta, el mismo obtenido en la solicitud HTTP
- statusMessage: Mensaje retornado al usuario, detallando la solicitud
- errorCode: Código de error interno, vea la tabla de errores (4XXXX).
- timestamp: Hora de solicitud en estandar ISO 8601
- responseTime: Milisegundos que tomó en procesar la solicitud
{
"errorCode": 40001,
"responseTime": 3,
"statusCode": 429,
"statusMessage": "Descripcion del error",
"timestamp": "2024-03-12T03:04:05Z"
}