Elegir un modelo de integración
La inspección siempre la realiza una persona autorizada en la aplicación TrakarIA. La primera decisión es quién crea el expediente y prepara la inspección. La conexión API y el botón de lanzamiento son decisiones distintas.
| Modelo | Qué hace tu sistema | Qué hace el empleado | Cuándo encaja |
|---|---|---|---|
| Solo aplicación | No llama a la API pública: no se sincroniza ninguna reserva | Elige o crea el vehículo, inicia salida y devolución, e introduce los datos necesarios en TrakarIA | Equipo sin integración con su software de alquiler |
| API, sin botón | Sincroniza vehículo y expediente; la reserva aparece inmediatamente en el planning y después prepara salida y devolución por API | Ve la reserva en el planning, busca la inspección preparada y la valida | Software conectado; equipo que ya trabaja en TrakarIA |
| API + botón | Realiza la misma sincronización con el planning y preparación, y muestra el launch_url recibido | Abre el enlace, inicia sesión y valida en TrakarIA | Software con un botón «Abrir inspección» |
Los webhooks y la lectura de informes por API están disponibles en ambos modelos conectados. Debes configurar un destino webhook para recibir notificaciones: la sincronización por sí sola no crea uno. En el modelo «solo aplicación», tu software no recibe nada automáticamente. Los ciclos creados únicamente en la aplicación no se convierten automáticamente en expedientes /v1/rentals cuando añades la API más adelante.
Recorrido con enlace
Sección titulada «Recorrido con enlace»- Tu servidor envía el vehículo y el contexto del expediente mediante su clave API de grupo. El expediente aparece inmediatamente en el planning. Solo el identificador externo del vehículo es obligatorio en el cuerpo; el resto del contexto puede enviarse con antelación, durante la entrega o más tarde con una revisión de origen superior. Esto se hace en el servidor, nunca desde el navegador de un cliente.
- Tu servidor llama a
POST /v1/rentals/{rental_id}/inspectionscontype: departureoreturny unIdempotency-Key. - La respuesta contiene un identificador de inspección y un
launch_urltemporal. Tu aplicación puede mostrar un botón para abrir el enlace. Se admiten una pestaña nueva o una navegación normal. - El enlace abre el flujo correspondiente de TrakarIA. Si el agente no tiene sesión, inicia sesión. TrakarIA comprueba su acceso al grupo y sus permisos.
- Después de la validación humana, tu servidor recibe un evento firmado o consulta
GET /v1/eventspara recuperar eventos perdidos; luego lee el informe mediante la API autenticada.
El enlace caduca; POST /v1/inspections/{inspection_id}/launch permite renovarlo. Es una ayuda para navegar, no un token de acceso. Evita registrarlo en logs, herramientas de análisis o páginas públicas. Incrustar la inspección en un iframe y usar un SDK de captura sin interfaz no forman parte del contrato público actual. Por ahora, utiliza una navegación normal.
Ceder el trabajo a TrakarIA
Sección titulada «Ceder el trabajo a TrakarIA»Si tus empleados ya trabajan en TrakarIA, el botón no es necesario. Tu servidor conserva la clave API: sincroniza el vehículo y el expediente, lo que hace visible inmediatamente la reserva en el planning, y llama a POST /v1/rentals/{rental_id}/inspections antes de que el empleado reanude la inspección preparada en la aplicación TrakarIA. La sincronización puede hacerse con antelación o durante la entrega física. El botón solo abre directamente esa inspección. Consulta los escenarios detallados para distinguir este modelo del recorrido completamente manual.
Cuándo añadir notificaciones
Sección titulada «Cuándo añadir notificaciones»Usa webhooks si tu sistema debe reaccionar rápidamente a una validación. Son notificaciones: verifica la firma, deduplica por identificador de evento y vuelve a leer el recurso actual. GET /v1/events permite recuperar eventos perdidos. rental.departure.completed indica que el JSON de salida está disponible; rental.return.completed indica que lo está el JSON de comparación. El PDF puede estar listo más tarde y tiene un evento separado.