Llamadas
Base: https://www.rutazo.com/api. La especificación completa está en openapi.json.
| Llamada | Qué hace |
|---|---|
GET /v1/catalogo/categorias | Categorías y la ficha técnica que pide cada una |
GET /v1/catalogo/formas-pago | Formas de pago al transportista, y si es obligatorio declararla |
POST /v1/cotizaciones | Precio al instante. Devuelve cotizacion_id, válido 24 horas |
POST /v1/cargas | Crear una carga. Exige Idempotency-Key |
GET /v1/cargas | Listar cargas; filtra por referencia_externa |
GET /v1/cargas/{id} | Estado, transportista, pago, entrega y eventos |
POST /v1/cargas/{id}/cancelar | Cancelar con motivo, mientras no esté confirmada |
GET /v1/cargas/{id}/remitos | Los remitos, su estado, el link para firmar, el PDF y la firma |
POST /v1/cargas/{id}/remitos | Agregar remitos a una carga ya creada. Exige Idempotency-Key |
GET / POST /v1/webhooks | Listar y crear webhooks. El secreto se muestra una vez |
DELETE /v1/webhooks/{id} | Eliminar un webhook |
Errores
Siempre el mismo formato. Ramificá por codigo, que no cambia; el mensaje es para leer.
{ "error": { "codigo": "validacion", "mensaje": "La ficha técnica tiene errores.",
"detalles": { "peso": "Es requerido para esta categoría." } } }
Códigos de error
| Código | HTTP | Cuándo |
|---|---|---|
no_autorizado | 401 | Clave inválida o revocada |
validacion | 400 | Falta o sobra algo; mirá detalles |
no_cotizable | 422 | Esa categoría o ruta no se cotiza automáticamente |
no_encontrado | 404 | La carga no existe o no es tuya |
no_permitido | 403 / 409 | La clave no tiene ese permiso, o la acción ya no aplica |
limite | 429 | 120 llamadas por minuto, 5.000 por día |
error_interno | 500 | Falló de nuestro lado; reintentá |
Última actualización: 1 de octubre de 2026