Saltar al contenido principal

Manejo de errores comunes

Formato de respuesta de error

El formato de respuesta de error es el siguiente:

{
"type": "validation_error",
"errors": [
{
"code": "required",
"detail": "This field is required.",
"attr": "name"
}
]
}
  • type: puede ser validation_error, client_error o server_error.
  • code: cadena corta que describe el error. Puedes usarla para adaptar el comportamiento de tu integración.
  • detail: texto descriptivo y comprensible para el usuario sobre el error. Por lo general está en inglés, pero puede traducirse.
  • attr: puede ser null cuando el error no está asociado a un campo específico; cuando aplica, contiene el nombre del campo, por ejemplo en errores de tipo validation_error.

Errores comunes

Algunos errores pueden aparecer en la mayoría de nuestros endpoints. En las siguientes secciones describimos los más comunes. Para más detalles, consulta los recursos enlazados en OpenAPI.

403 No autorizado

Estos errores se devuelven con el código de estado 403 siempre que la autenticación falla o se hace una solicitud a un endpoint sin proporcionar información de autenticación. Estos son los dos errores posibles:

{
"type": "client_error",
"errors": [
{
"code": "authentication_failed",
"detail": "Incorrect authentication credentials.",
"attr": null
}
]
}
{
"type": "client_error",
"errors": [
{
"code": "not_authenticated",
"detail": "Authentication credentials were not provided.",
"attr": null
}
]
}

405 Método no permitido

Este error se devuelve cuando se llama a un endpoint con un método HTTP inesperado. Por ejemplo, si para actualizar un usuario se requiere POST y en su lugar se usa PATCH, se devuelve este error. Se ve así:

{
"type": "client_error",
"errors": [
{
"code": "method_not_allowed",
"detail": "Method \"PATCH\" not allowed.",
"attr": null
}
]
}

406 No aceptable

Este error se devuelve si se envía la cabecera Accept con un valor distinto a application/json. La respuesta sería:

{
"type": "client_error",
"errors": [
{
"code": "not_acceptable",
"detail": "Could not satisfy the request Accept header.",
"attr": null
}
]
}

415 Tipo de medio no soportado

Este error se devuelve cuando el tipo de contenido de la solicitud no es JSON. La respuesta sería:

{
"type": "client_error",
"errors": [
{
"code": "unsupported_media_type",
"detail": "Unsupported media type \"application/xml\" in request.",
"attr": null
}
]
}

500 Error interno del servidor

Este error se devuelve cuando el servidor de la API encuentra un error inesperado. La respuesta sería:

{
"type": "server_error",
"errors": [
{
"code": "error",
"detail": "A server error occurred.",
"attr": null
}
]
}

Elige tu guía

Soy un Comercio

Quiero cobrar pagos o enviar dinero a mis usuarios.

Soy un Proveedor de Pago

Tengo puntos físicos y quiero procesar transacciones de Pago46.