Saltar al contenido principal

Cambiar estado de un conductor

[ POST ]

Para que se pueda iniciar el rastreo de un usuario, es necesario cambiar su estado. Una vez activo(a), recuerda tener el GPS prendido y el modo de ahorro de batería apagado ya que es necesario para un rastreo correcto.

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

Tipos de estados​

NombreDescripción
activeNuestra aplicación usará el GPS y otro sensores (es por eso la importancia de aceptar todos los permisos requeridos, así como tener prendido el GPS en todo momento que el estado sea activo) para determinar si esta manejando, y en caso de determinar que si entonces automáticamente registrará el trayecto.
inactiveSi el conductor esta apagado entonces nuestra aplicación no hará ningún rastreo. El usuario podrá visualizar sus viajes, calificaciones y mas.

Campos​

NombreTipoRequeridoDescripción
DRIVER_IDStringSiID del conductor al que se le va a cambiar el estado. Acepta el ID que tu empresa usó al crearlo o el airbagId.

Este valor deberá ir en la ruta.
forceStringNoEstado que desea poner al conductor: active o inactive. Si se omite, se alterna el estado actual (un conductor activo pasa a inactivo y viceversa).
vehicleIdStringNoVehículo que usará el conductor. Acepta el ID que tu empresa usó al crear el vehículo o el airbagId.

Headers​

Content-TypeAuthorization
application/jsonapikey {{API_KEY}}

Body​

{
"force": "string",
"vehicleId": "string"
}

Ejemplo​

curl --location -g 'https://sync.airbagtech.io/driver/{{DRIVER_ID}}/changeAppStatus' \
--header 'Content-Type: application/json' \
--header 'Authorization: apikey {{API_KEY}}' \
--data '{
"force": "active",
"vehicleId": "VH-001"
}'

Respuestas​

✅ Respuesta exitosa (200 OK)​

{
"status": true,
"message": "Driver change app status initiated",
"newAppStatus": "active",
"vehicleId": "VH-001"
}
CampoTipoDescripción
statusBooleantrue si la solicitud se procesó.
messageStringResultado de la solicitud. Si el conductor ya tenía el estado pedido, es "Driver already has <estado> status".
newAppStatusStringEstado que tendrá el conductor: el de force o, si no se envió, el contrario al que tenía.
vehicleIdStringSólo si se envió vehicleId. Es el ID del vehículo definido por tu empresa (o el airbagId si no tiene uno), aunque la solicitud se haya hecho con el airbagId.

❌ Respuesta con error (400 Bad Request)​

{
"status": false,
"message": "Driver has not made first login. Unable to make contact.",
"errorId": "sentry_error_id_123"
}
MensajeCausa
Bad Force formattingforce no es active ni inactive.
Driver has not made first login. Unable to make contact.Se envió force y el conductor aún no inicia sesión en la app.
Driver status has just been modified, wait at least <n>/10 minutes and try againEl estado del conductor se cambió hace 10 minutos o menos.
Error: Driver not foundEl DRIVER_ID no corresponde a ningún conductor de tu empresa.
Error: Vehicle not foundEl vehicleId no corresponde a ningún vehículo de tu empresa.