Ir al contenido principal

Códigos de respuesta y manejo de errores

A
Escrito por Axel Candia

Esta referencia describe cómo interpretar las respuestas de la API y buenas prácticas para gestionar los errores desde tu integración.

Códigos de estado HTTP

La API responde con códigos de estado HTTP estándar:

Código

Significado

Cuándo se produce

200 OK

Petición correcta

La operación se completó con éxito.

400 Bad Request

Petición inválida

Falta un campo obligatorio o el JSON está mal formado.

401 Unauthorized

No autenticado

Falta la secret-api-key o no es válida.

403 Forbidden

Sin permiso

La clave no tiene acceso al recurso o al dominio indicado.

404 Not Found

No encontrado

La expedición o el recurso solicitado no existe.

422 Unprocessable Entity

Datos no procesables

Los datos son válidos en formato pero no en contenido (por ejemplo, una referencia duplicada).

500 Internal Server Error

Error del servidor

Error inesperado en GRIP. Reintentá más tarde o contactá con soporte.

Los códigos exactos pueden variar según el endpoint. Como regla general, un 2xx indica éxito y cualquier 4xx/5xx indica que la operación no se realizó.

Buenas prácticas de integración

  • Validá antes de enviar: asegurate de incluir los campos obligatorios (type, address, contact, y una reference) antes de llamar a /services/create.

  • Usá referencias únicas: asigná una reference única por expedición. Te permitirá localizarla, actualizarla y evitar duplicados.

  • Controlá la asincronía: tras crear una expedición, la geocodificación y el cálculo de precio pueden resolverse unos segundos después. Si necesitás el dato definitivo, volvé a consultar la expedición con findByReference.

  • Protegé tu clave: nunca expongas la secret-api-key en el frontend ni en repositorios. Usá variables de entorno.

  • Reintentos: ante un 5xx, aplicá reintentos con espera incremental (backoff). No reintentes de forma inmediata y repetida.

  • Idempotencia: como la creación usa tu reference, podés detectar y evitar duplicados comprobando primero si la expedición ya existe.

Estados de una expedición

El campo status.code refleja el estado operativo de la expedición. Algunos valores habituales:

status.code

Significado

created

Expedición creada.

completed

Expedición completada / entregada.

El campo creationStatus (por ejemplo DRAFT) refleja el estado del proceso de alta, distinto del estado operativo.

Para el listado completo y actualizado de estados posibles en tu cuenta, consultá con el equipo de GRIP, ya que pueden personalizarse por cliente.


Si tenés dudas sobre la integración o necesitás una secret-api-key, contactá con el equipo de soporte de GRIP.

¿Ha quedado contestada tu pregunta?