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 |
| Petición correcta | La operación se completó con éxito. |
| Petición inválida | Falta un campo obligatorio o el JSON está mal formado. |
| No autenticado | Falta la |
| Sin permiso | La clave no tiene acceso al recurso o al dominio indicado. |
| No encontrado | La expedición o el recurso solicitado no existe. |
| Datos no procesables | Los datos son válidos en formato pero no en contenido (por ejemplo, una referencia duplicada). |
| 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 unareference) 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-keyen 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:
| Significado |
| Expedición creada. |
| 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.