Errores
En esta guía veremos qué sucede cuando algo sale mal mientras trabajas con la API. Los errores ocurren, y la mayoría de las veces serán tuyos, no nuestros. Veamos algunos códigos de estado y tipos de error que podrías encontrar.
Puedes saber si tu solicitud se completó correctamente revisando el código de estado al recibir una respuesta de la API. Si una respuesta no es exitosa, puedes usar el mensaje y el código de error para averiguar qué salió mal y hacer una depuración básica (antes de contactar a soporte).
Antes de contactar a soporte por un error, ten en cuenta que el 99% de todos los errores reportados son, de hecho, errores del usuario. Por eso, revisa cuidadosamente tu código antes de contactar al soporte de Fystack.
Códigos de estado
Esta es una lista de las distintas categorías de códigos de estado que devuelve la API de Fystack. Úsalas para saber si una solicitud se completó correctamente.
- Name
- 2xx
- Type
- Description
Un código de estado 2xx indica una respuesta exitosa.
- Name
- 4xx
- Type
- Description
Un código de estado 4xx indica un error del cliente, es decir, el problema es tuyo.
- Name
- 5xx
- Type
- Description
Un código de estado 5xx indica un error del servidor, no deberías ver estos.
Formato de las respuestas de error
Cada vez que una solicitud no se completa correctamente, la API de Fystack devuelve una respuesta de error con un formato estructurado. Todas las respuestas de error incluyen un campo success establecido en false, un message descriptivo y un code de error. En los errores de validación, también verás un array errors con detalles sobre qué campos no superaron la validación.
Estos son los componentes comunes de una respuesta de error:
- Name
- success
- Type
- Description
Siempre
falseen las respuestas de error.
- Name
- message
- Type
- Description
Una descripción legible de lo que salió mal.
- Name
- code
- Type
- Description
Un código de error interno que puede ayudar con la depuración.
- Name
- errors
- Type
- Description
En los errores de validación, contiene detalles sobre qué campos no superaron la validación y por qué.
Standard error response
{
"success": false,
"message": "Resource not found",
"code": 404
}
Validation error response
{
"success": false,
"message": "validation error",
"code": 400,
"errors": [
{
"field": "email",
"reason": "required"
},
{
"field": "password",
"reason": "min=8"
}
]
}
Códigos de error
La API de Fystack usa códigos de error específicos para ayudar a identificar el problema exacto que ocurrió. Estos códigos ofrecen información más detallada que los códigos de estado HTTP por sí solos.
| Código | Nombre | Descripción |
|---|---|---|
| 2407 | ValidationErrCode | Se devuelve cuando los datos de la solicitud no cumplen los requisitos de validación. |
| 2408 | GenerationErrCode | Indica que se produjo un error durante la generación de contenido o de un recurso. |
| 2409 | DatabaseErrCode | Se devuelve cuando falla una operación de base de datos. |
| 2410 | ConflictErrCode | Indica un conflicto con el estado actual del recurso. |
| 2411 | InfraErrCode | Se devuelve cuando ocurre un error relacionado con la infraestructura. |
| 2412 | RedisErrCode | Indica un problema con las operaciones de caché de Redis. |
| 2413 | ForbiddenResourceErrCode | Se devuelve cuando el usuario no tiene acceso al recurso solicitado. |
| 2414 | ForbiddenActionErrCode | Indica que el usuario no tiene permitido realizar la acción solicitada. |
| 2415 | UnauthorizedErrCode | Se devuelve cuando se requiere autenticación pero falta o no es válida. |
| 2416 | ExecutionErrCode | Indica un error durante la ejecución de un comando o proceso. |
| 2417 | NotFoundErrCode | Se devuelve cuando el recurso solicitado no existe. |
| 2418 | EncodingErrCode | Indica que se produjo un error al codificar datos. |
| 2419 | DecodingErrCode | Se devuelve cuando hay un error al decodificar datos. |
| 2420 | InternalResourceNotFound | Indica que no se pudo encontrar un recurso interno requerido. |
| 2421 | BadRequestErrCode | Se devuelve cuando la solicitud tiene un formato incorrecto o contiene parámetros inválidos. |
| 2422 | InternalErrCode | Indica que se produjo un error interno inesperado del servidor. |
Estos códigos de error ofrecen información específica sobre qué salió mal con tu solicitud. Cuando contactes a soporte, incluye siempre el código de error para ayudarnos a diagnosticar los problemas más rápido.