Saltar al contenido principal

Consultar la info de un conductor

[ GET ]

Consulta la información de un conductor sin alterar los valores del mismo.

https://sync.airbagtech.io/driver/{{DRIVER_ID}}

Campos

NombreTipoRequeridoDescripción
DRIVER_IDStringSiID del conductor al que se le va a cambiar el estado.

Headers

Content-TypeAutorization
application/jsonapikey {{API_KEY}}

Ejemplo

curl --location -g 'https://sync.airbagtech.io/driver/{{DRIVER_ID}}' \
--header 'Authorization: apikey {{API_KEY}}'

Respuestas

✅ Respuesta exitosa (200 OK)

Devuelve la ficha completa del conductor junto con su progreso de gamificación (nivel, racha) y metadatos de la cuenta.

{
"status": true,
"driver": {
"appStatus": "Activo",
"birthdate": "1992-08-14T06:00:00.000Z",
"civilStatus": "single",
"coins": 312,
"company": "Transportes Ejemplo",
"created": "2022-05-18T15:42:00.000Z",
"currentLevel": {
"currentDistance": 1823.4512038172645,
"remainingDistance": 3176.5487961827355,
"to": 10000,
"levelId": "a1B2c3D4e5F6g7H8i9J0",
"maxLevel": 7,
"name": "Nivel 4",
"from": 5001,
"percentageCompleted": 36,
"totalDistanceTravelled": 6823.451203817265,
"targetDistance": 5000
},
"currentStreak": {
"isInStreak": true,
"lastDayWithTrips": "2025-03-10T00:00:00.000Z",
"maxHistoricalStreak": 9,
"totalDaysOfStreak": 3,
"lastWeekDaysStreak": [
{
"date": "2025-03-10T00:00:00.000Z",
"dayCharacter": "L",
"dayOfWeek": "monday",
"streak": "IN_STREAK_ACTIVE"
},
{
"date": "2025-03-09T00:00:00.000Z",
"dayCharacter": "D",
"dayOfWeek": "sunday",
"streak": "IN_STREAK_ACTIVE"
},
{
"date": "2025-03-08T00:00:00.000Z",
"dayCharacter": "S",
"dayOfWeek": "saturday",
"streak": "IN_STREAK_ACTIVE"
},
{
"date": "2025-03-02T00:00:00.000Z",
"dayCharacter": "D",
"dayOfWeek": "sunday",
"streak": "OUT_OF_STREAK"
}
]
},
"email": "[email protected]",
"emailIsVerified": true,
"emailVerified": true,
"emergencyContact": {
"phone": "+525512345678",
"name": "Contacto Ejemplo",
"type": "cellphone"
},
"firstLogin": false,
"fullName": "Juan Pérez Ramírez",
"gender": "male",
"groups": ["grp_A1b2C3d4E5f6G7h8I9j0"],
"growthStatus": "ok",
"hasActiveSchedule": true,
"hasMarketingNotifications": false,
"hired": "2021-03-01T06:00:00.000Z",
"isDriving": false,
"isResting": false,
"lastName": "Pérez Ramírez",
"name": "Juan",
"nationalId": "PERJ920814HDFRMN03",
"nationality": "mex",
"phone": "+525598765432",
"showMobileScores": true,
"showMobileTrips": true,
"showMobileWorkDay": true,
"startStage": "0",
"status": "active",
"redeemCount": 2,
"airbagId": "ab12cd34ef56gh78ij90kl12mn34op56",
"id": "EMP-1042",
"useAirbagTelematics": true
}
}

Descripción de campos de respuesta

CampoTipoDescripción
statusBooleanIndica si la operación fue exitosa.
driverObjectObjeto con los datos completos del conductor.

Campos dentro de driver

CampoTipoDescripción
idStringIdentificador único del conductor proporcionado al crearlo. Este es el ID que utilizas en tus sistemas.
airbagIdStringIdentificador interno único en la plataforma Airbag. Útil para referencias cruzadas.
companyStringNombre de la organización a la que pertenece el conductor.
nameStringNombre de pila del conductor.
lastNameStringApellido del conductor.
fullNameStringNombre completo (name + lastName).
emailStringCorreo electrónico del conductor.
emailVerifiedBooleanIndica si el correo ha sido verificado (campo canónico).
emailIsVerifiedBooleanAlias legado de emailVerified. Se mantiene por compatibilidad.
phoneStringTeléfono con código de país (formato +525555555555).
genderStringGénero del conductor. Valores: male, female, other.
birthdateStringFecha de nacimiento en formato ISO 8601.
civilStatusStringEstado civil. Valores: single, married, divorced, widowed.
nationalIdStringIdentificación nacional (CURP, DNI, etc.).
nationalityStringCódigo ISO de nacionalidad (por ejemplo mex).
hiredStringFecha de contratación en formato ISO 8601.
createdStringFecha de alta en la plataforma en formato ISO 8601.
statusStringEstado de la cuenta. Valores: active o inactive.
appStatusStringEstado legible para la app móvil (por ejemplo Activo).
growthStatusStringEstado del desempeño del conductor. Valores típicos: ok, warning, risk.
groupsArray<String>Lista de IDs de los grupos a los que pertenece.
coinsNumberMonedas acumuladas por el conductor en el sistema de gamificación.
redeemCountNumberNúmero de canjes realizados por el conductor.
startStageStringEtapa inicial del flujo de onboarding del conductor.
firstLoginBooleantrue si el conductor aún no ha iniciado sesión por primera vez.
isDrivingBooleanIndica si el conductor está conduciendo en este momento.
isRestingBooleanIndica si el conductor se encuentra en periodo de descanso.
hasActiveScheduleBooleanIndica si tiene una jornada laboral activa configurada.
hasMarketingNotificationsBooleanPreferencia de notificaciones de marketing.
showMobileScoresBooleanSi la app móvil debe mostrar sus puntuaciones.
showMobileTripsBooleanSi la app móvil debe mostrar sus viajes.
showMobileWorkDayBooleanSi la app móvil debe mostrar su jornada laboral.
useAirbagTelematicsBooleanIndica si la telemetría se captura con el SDK propio de Airbag.
emergencyContactObjectContacto de emergencia del conductor. Ver tabla abajo.
currentLevelObjectNivel actual del conductor en el sistema de gamificación. Ver tabla abajo.
currentStreakObjectRacha de días activos del conductor. Ver tabla abajo.

Campos dentro de emergencyContact

CampoTipoDescripción
nameStringNombre de la persona de contacto.
phoneStringTeléfono del contacto con código de país.
typeStringTipo de teléfono. Valores: cellphone, home, work.

Campos dentro de currentLevel

CampoTipoDescripción
levelIdStringIdentificador único del nivel actual.
nameStringNombre legible del nivel (por ejemplo Nivel 3).
maxLevelNumberNúmero total de niveles disponibles en el programa.
fromNumberDistancia (en km) que marca el inicio del nivel.
toNumberDistancia (en km) que marca el final del nivel.
targetDistanceNumberDistancia objetivo a recorrer dentro del nivel actual.
currentDistanceNumberDistancia recorrida dentro del nivel actual.
remainingDistanceNumberDistancia restante para completar el nivel.
totalDistanceTravelledNumberDistancia total acumulada por el conductor desde el inicio del programa.
percentageCompletedNumberPorcentaje de avance del nivel actual (0–100).

Campos dentro de currentStreak

CampoTipoDescripción
isInStreakBooleantrue si el conductor mantiene una racha activa.
totalDaysOfStreakNumberDías consecutivos que conforman la racha actual.
maxHistoricalStreakNumberRacha más larga alcanzada históricamente.
lastDayWithTripsStringÚltimo día con viajes registrados (ISO 8601).
lastWeekDaysStreakArray<Object>Detalle día a día de la actividad reciente. Ver tabla abajo.

Campos dentro de cada elemento de lastWeekDaysStreak

CampoTipoDescripción
dateStringFecha del día en formato ISO 8601.
dayCharacterStringInicial del día en español (L, M, X, J, V, S, D).
dayOfWeekStringDía de la semana en inglés y minúsculas (monday, tuesday, …).
streakStringEstado de la racha para ese día. Valores: IN_STREAK_ACTIVE, OUT_OF_STREAK.