Saltar al contenido principal

Editar conductor

[ PUT ]

Esta ruta es para editar la información del conductor. No es posible actualizar el teléfono de un conductor, deberás borrar y dar de alta a un nuevo perfil.

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

Tipo de teléfono de emergencia​

NombreDescripción
cellphone(Recomendable) En caso de alguna emergencia podremos mandar SMS automatizado.
landphoneEl conductor podrá ver este número en su pantalla principal. (No incluir números de extensión)

Tipo de estado civil​

Nombre
single
consensual-union
married
divorced
widowed

Campos​

NombreTipoRequeridoDescripción
DRIVER_IDStringSiID del conductor que desea editar. Acepta el ID que tu empresa usó al crearlo o el airbagId.

Este campo deberá ir en la ruta.
nameStringNoNombre legal del conductor. Acepta acentos, minúsculas o mayúsculas combinadas; antes de almacenarse se normaliza automáticamente a mayúsculas y sin acentos.
lastNameStringNoApellido legal del conductor. Acepta acentos, minúsculas o mayúsculas combinadas; antes de almacenarse se normaliza automáticamente a mayúsculas y sin acentos.
emergencyPhoneStringNoContacto que el conductor verá en la pantalla principal de la App, con el estandar E.164. En caso de guardar un celular entonces también podremos mandar SMS en casos de emergencias como posible
choque/asalto.
emergencyNameStringNoNombre de pila del contacto de emergencia. Este nombre saldrá en la pantalla principal de la App para Conductor.
emergencyPhoneTypeStringNoTipo de teléfono que se pasó en el campo emergencyPhone. En caso de guardar un celular entonces tambien podremos mandar SMS en casos como posible choque/asalto.
emailStringNoCorreo laboral del operador.
birthDateStringNoFecha de nacimiento del conductor. Formato YYYY-MM-DD
genderStringNoGénero por el cual el/la/le se identifica: male, female u other.
civilStatusStringNoEstado civil del conductor.
nationalityStringNoNacionalidad del conductor en formato ISO 3166-1 de 3 dígitos.
groupStringNoID único del grupo al que se desea agregar.

Envía sólo los campos que quieras cambiar. El teléfono (phone) no se puede editar por esta vía: si se envía, se ignora.

aviso

Por ahora los campos birthDate y group se aceptan pero no se guardan. Se está corrigiendo; mientras tanto, modifícalos desde la plataforma de Airbag.

Normalización de nombres

Los campos name y lastName aceptan valores con acentos, minúsculas o mayúsculas combinadas. Antes de almacenar el registro, Airbag normaliza automáticamente el valor convirtiéndolo a mayúsculas y eliminando acentos. Esta transformación no rechaza la petición ni modifica los datos en el sistema de origen del cliente.

Ejemplo: José Ramírez será almacenado como JOSE RAMIREZ.

Headers​

Content-TypeAuthorization
application/jsonapikey {{API_KEY}}

Body​

{
"driver": {
"name": "string",
"lastName": "string",
"emergencyPhone": "string",
"emergencyName": "string",
"emergencyPhoneType": "string",
"birthDate": "string",
"civilStatus": "string",
"email": "string",
"gender": "string",
"nationality": "string",
"group": "string"
}
}

Ejemplo​

curl --location -g --request PUT 'https://sync.airbagtech.io/driver/{{DRIVER_ID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: apikey {{API_KEY}}' \
--data '{
"driver": {
"name": "string",
"lastName": "string",
"emergencyPhone": "string",
"emergencyName": "string",
"emergencyPhoneType": "string",
"birthDate": "string",
"civilStatus": "string",
"email": "string",
"gender": "string",
"nationality": "string",
"group": "string"
}
}'

Respuestas​

✅ Respuesta exitosa (200 OK)​

Devuelve la ficha del conductor ya actualizada, con la misma estructura que Consultar la info de un conductor.

{
"status": true,
"driver": {
"id": "EMP-1042",
"airbagId": "ab12cd34ef56gh78ij90kl12mn34op56",
"company": "Transportes Ejemplo",
"name": "JUAN",
"lastName": "PEREZ RAMIREZ",
"fullName": "JUAN PEREZ RAMIREZ",
"email": "[email protected]",
"phone": "+525598765432",
"status": "active",
"appStatus": "Activo",
"coins": 312,
"useAirbagTelematics": true,
"emergencyContact": {
"phone": "+525512345678",
"name": "Contacto Ejemplo",
"type": "cellphone"
}
}
}

La respuesta no se limita a los campos que enviaste: incluye la ficha completa del conductor, con los campos que genera la plataforma (gamificación, metadatos del primer acceso a la app móvil, licencia registrada por el conductor). El detalle de cada campo, su tipo y si puede estar ausente se documenta una sola vez en Campos dentro de driver.

Los campos no enviados conservan su valor

Esta operación actualiza sólo los campos presentes en el cuerpo de la petición; el resto de la ficha permanece intacto. La API rechaza las claves que no reconoce con un 400 y el mensaje Driver Params have unknown parameters, así que no reenvíes tal cual la ficha que acabas de recibir: incluye campos de sólo lectura (license, coins, appStatus, los indicadores de bono) que este endpoint no acepta.

❌ Respuesta con error (400 Bad Request)​

Se devuelve cuando el DRIVER_ID no existe, cuando algún campo no cumple las validaciones o cuando el cuerpo incluye claves no permitidas.

{
"status": false,
"message": "Error: Driver not found",
"errorId": "sentry_error_id_123"
}