API: Drivers
M: Listar conductores
HTTP GET:
https://<hostname>/api/drivers
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
page_size |
Tamaño de Página | Numérico | no | (opcional, default: 5000, max: 5000) Cantidad de elementos que se quiere obtener en la respuesta. |
page_num |
Número de Página | Numérico | no | (opcional, default: 0) Si la cantidad global de elementos es mayor al tamaño de página utilizado, se utiliza este parámetro para obtener una página específica. |
sort_by |
Ordernar por | string | no | Nombre del campo del Driver Data Object que se utilizará para ordenar la respuesta. Si el campo es de tipo texto, el orden es alfabético. |
sort_dir |
Dirección de ordenamiento | string | no | Dirección del orden de la respuesta, ascendente (asc) o descendente (desc). |
fields |
Campos | string | no | Nombres de los campos que se quiere obtener del Driver Data Object. Deben estar separados por , . |
Este método soporta el uso de filtros.
OUTPUT:
Json con los campos:
success
:boolean
data
:json
Contiene una lista de Driver Data Objects
EJEMPLO CON CURL:
$ curl -u <api_key>:<password> -X GET https://<hostname>/api/driver?page_size=2
RESPUESTA:
{
"success": true,
"data": [
{
"id": "12",
"client_id": "22",
"first_name": "Juan",
"last_name": "Perez",
"mobile_number": "(855) 966-6762",
"cellular_provider_id": "1",
"license": "5143678093458",
"license_expiration": "2020-05-30 00:00:00+00",
"email": "jperez@internet.com",
"emergency_contact": "Antonio García",
"blood_type": "A+",
"picture": "",
"rfid": "16702093",
"fingerprint": "",
"ibutton": "17000018B4C00B01",
"security_question": "¿Cuál es el nombre de su madre?",
"security_answer": "Juana Barrios",
"user_id": "15",
"creation_date": "2016-10-10 14:39:59-04",
"drivergroup_ids": [],
"deactivated": "0"
},
{
"id": "13",
"client_id": "22",
"first_name": "Pedro",
"last_name": "Gonzalez",
"mobile_number": "(504) 2142-4652",
"cellular_provider_id": "3",
"license": "12436788452",
"license_expiration": "2021-12-01 00:00:00+00",
"email": "pgonzalez@internet.com",
"emergency_contact": "Manuel Maldonado",
"blood_type": "B+",
"picture": "",
"rfid": "436220",
"fingerprint": "",
"ibutton": "1D000018B4CBB701",
"security_question": "¿Cuándo es su aniversario de boda?",
"security_answer": "14 de septiembre",
"user_id": "16",
"creation_date": "2017-02-12 12:07:14-04",
"drivergroup_ids": ["2", "3"],
"deactivated": "0"
}
}
M: Ver conductor
HTTP GET:
https://<hostname>/api/driver/<id>
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
id | Id de Conductor | Numérico | sí | Id del conductor que se quiere ver. |
OUTPUT:
Json con los campos:
success
:boolean
data
:json
Driver Data Object
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
-X GET
https://<hostname>/api/driver/12
RESPUESTA:
{
"success": true,
"data":{
"id": "12",
"client_id": "22",
"first_name": "Juan",
"last_name": "Perez",
"mobile_number": "(855) 966-6762",
"cellular_provider_id": "1",
"license": "5143678093458",
"license_expiration": "2020-05-30 00:00:00+00",
"email": "jperez@internet.com",
"emergency_contact": "Antonio García",
"blood_type": "A+",
"picture": "",
"rfid": "16702093",
"fingerprint": "",
"ibutton": "17000018B4C00B01",
"security_question": "¿Cuál es el nombre de su madre?",
"security_answer": "Juana Barrios",
"user_id": "15",
"creation_date": "2016-10-10 14:39:59-04",
"drivergroup_ids": [],
"deactivated": "0"
}
}
M: Crear conductor
HTTP POST:
https://<hostname>/api/driver
BODY PARAMETERS:
- Driver Data Object. Todos los campos requeridos.
OUTPUT:
Json con los campos:
success
:boolean
data
:json
El Driver Data Object creado.
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
--data "first_name=Mario&last_name=Osorio&mobile_number=+50254659876"
https://<hostname>/api/driver
RESPUESTA:
{
"success": true,
"clientId": "22",
"data": {
"id": "15",
"client_id": "22",
"first_name": "Mario",
"last_name": "Osorio",
"mobile_number": "+50254659876",
"cellular_provider_id": "",
"license": "",
"license_expiration": "",
"email": "",
"emergency_contact": "",
"blood_type": "",
"picture": "",
"rfid": "",
"fingerprint": "",
"ibutton": "",
"security_question": "",
"security_answer": "",
"user_id": "",
"creation_date": "",
"drivergroup_ids": [],
"deactivated": "0"
}
}
M: Modificar conductor
HTTP PUT:
https://<hostname>/api/driver/<id>
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
id | Id de Conductor | Numérico | sí | Id del conductor que se quiere modificar. |
BODY PARAMETERS:
- Driver Data Object. Únicamente los campos que se quiere modificar.
OUTPUT:
Json con los campos:
success
:boolean
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
-X PUT
--data "mobile_number=+50236004555"
https://<hostname>/api/driver/12
RESPUESTA:
{
"success": true
}
M: Asignar conductor a vehículo
HTTP PUT:
https://<hostname>/api/vehicle/<vehicle_id>/set_driver/<driver_id>
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
vehicle_id | Id del Vehículo | Numérico | sí | Id del vehículo al que quiere asignar conductor. |
driver_id | Id del Conductor | Numérico | sí | Id del conductor que quiere asignar al vehículo. |
OUTPUT:
Json con los campos:
success
:boolean
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
-X PUT
https://<hostname>/api/vehicle/2468/set_driver/14501
RESPUESTA:
{
"success": true
}
M: Desasignar conductor
HTTP PUT:
https://<hostname>/api/vehicle/<vehicle_id>/no_driver
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
vehicle_id | Id del Vehículo | Numérico | sí | Id del vehículo al que quiere desasignar conductor. |
OUTPUT:
Json con los campos:
success
:boolean
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
-X PUT
https://<hostname>/api/vehicle/2468/no_driver
RESPUESTA:
{
"success": true
}
M: Ver historial de asignaciones de vehículos
Requiere el permiso: "Ver Asignaciones de Vehículos de Todos los Conductores"
HTTP GET:
https://<hostname>/api/driver/<id>/vehicles
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
id |
Id de Conductor | Numérico | sí | Id del conductor del que se quiere obtener las asignaciones. |
page_size |
Tamaño de Página | Numérico | no | (opcional, default: 5000, max: 5000) Cantidad de elementos que se quiere obtener en la respuesta. |
page_num |
Número de Página | Numérico | no | (opcional, default: 0) Si la cantidad global de elementos es mayor al tamaño de página utilizado, se utiliza este parámetro para obtener una página específica. |
OUTPUT:
Json con los campos:
success
:boolean
data
:json
Contiene una lista de Vehicle Change Objects
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
-X GET
https://<hostname>/api/driver/13264/vehicles
RESPUESTA:
{
"success": true,
"data": [
{
"date_time": "2017-07-20 22:08:29+00",
"vehicle_id": "246"
},
{
"date_time": "2017-07-21 15:02:18+00",
"vehicle_id": "237",
"user_id": "64"
},
{
"date_time": "2017-07-24 07:14:09+00",
"vehicle_id": "228",
"user_id": "64"
}
]
}
O: Driver Data Object
Cada objeto de conductor tiene estos campos:
Campo | Tipo | Sólo lectura | Requerido | Descripción |
---|---|---|---|---|
id | Numérico | sí | no | Id del Conductor |
client_id | Numérico | sí | no | Id de Cliente al que pertenece este conductor |
first_name | Texto | no | sí | Nombre del conductor. |
last_name | Texto | no | sí | Apellido del conductor. |
mobile_number | Texto | no | sí | Número de teléfono móvil del conductor. |
license | Texto | sí | no | Número de identificación de la licencia de conducir del conductor. |
license_expiration | Fecha | sí | no | Fecha de expiración de la licencia de conducir del conductor. |
Texto | sí | no | Dirección de correo electrónico del conductor. | |
emergency_contact | Texto | no | no | Información de contacto en caso de emergencia. |
blood_type | Texto | no | no | Tipo de sangre |
picture | Texto | no | no | URL de la foto del conductor. |
rfid | Texto | no | no | Código de la tarjeta de identificación del conductor. |
fingerprint | Texto | no | no | |
ibutton | Texto | no | no | Código del iButton del conductor. |
security_question | Texto | sí | no | Pregunta de seguridad. |
security_answer | Texto | sí | no | Respuesta de seguridad. |
user_id | Numérico | sí | no | Id del usuario asociado a este conductor para uso del App móvil de Conductor. |
drivergroup_ids | Lista de números | sí | no | Ids de los grupos de conductores asociados a este conductor. |
creation_date | Fecha | sí | no | Fecha de creación del conductor. |
deactivated | Numérico | sí | no | 1: Borrado |
O: Vehicle Change Object
Key | Nombre | Descripción |
---|---|---|
date_time | Fecha y hora | Fecha y hora del cambio de vehículo. |
vehicle_id | Id del vehículo | Id del nuevo vehículo. |
user_id | Id del usuario | Id del usuario que hizo el cambio. Si el cambio es automático (con identificación por iButton o RFid), no se envía este campo. |