API: Jobs
M: Listar tareas
HTTP GET:
https://<hostname>/api/job
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
page_size |
Número de elementos por 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 Job 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 Job Data Object. Deben estar separados por , . |
Este método soporta el uso de filtros.
Ejemplo con CURL
$ curl -u <api_key>:<password>
-X GET
https://<hostname>/api/job?sort_by=start_date&sort_dir=asc&page_num=0&page_size=50
OUTPUT:
JSON con los campos:
success
:boolean
data
:json
Contiene una lista de Job Data Object
M: Crear Tarea
HTTP POST:
https://<hostname>/api/job
BODY PARAMETERS:
- Job Data Object. Todos los campos requeridos.
OUTPUT:
Json con los campos:
success
:boolean
data
:json
El Job Data Object creado.
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
--data "objective=Tarea de prueba&start_date=2024-01-15"
https://<hostname>/api/job
M: Listar tipos de tareas
HTTP: GET
https://<hostname>/api/job/type
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
page_size |
Número de elementos por 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 Job Type 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 Job Type Data Object. Deben estar separados por , . |
Este método soporta el uso de filtros.
OUTPUT:
JSON con los campos:
success
:boolean
data
:json
El Job Type Data Object creado.
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
https://<hostname>/api/job/type
RESPUESTA:
{
"success": true,
"data": [
{
"id": 1,
"name": "Venta"
},
{
"id": 13,
"name": "Revision de equipos"
},
{
"id": 23,
"name": "Mantenimiento"
},
{
"id": 28,
"name": "Pedido"
},
{
"id": 31,
"name": "Limpieza baños"
},
{
"id": 32,
"name": "Visita"
}
]
}
M: Listar estados de tarea
HTTP: GET
https://<hostname>/api/job/status
URL PARAMETERS:
Nombre | Tipo | Requerido | Descripción | |
---|---|---|---|---|
page_size |
Número de elementos por 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 Job Status 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 Job Status Data Object. Deben estar separados por , . |
Este método soporta el uso de filtros.
OUTPUT:
JSON con los campos:
success
:boolean
data
:json
El Job Status Data Object creado.customOrder
:array
de IDs de tarea según el orden definido por el usuario.disablePresetJobStatuses
:boolean
EJEMPLO CON CURL:
$ curl -u <api_key>:<password>
https://<hostname>/api/job/type
RESPUESTA:
{
"success": true,
"customOrder": [
"1",
"0",
"2",
"1036",
"1028",
"1062",
"1063",
"1068"
],
"disablePresetJobStatuses": false,
"data": [
{
"id": "0",
"client_id": "-1",
"name": "Pendiente",
"color": "#F2A31C",
"workflow_role": "0",
"user_group_ids": null,
"deactivated": "0",
"notification_via": null,
"notification_location": null,
"notification_form_id": null,
"notification_message": null
},
{
"id": "1",
"client_id": "-1",
"name": "Completada",
"color": "#32C372",
"workflow_role": "1",
"user_group_ids": null,
"deactivated": "0",
"notification_via": null,
"notification_location": null,
"notification_form_id": null,
"notification_message": null
},
{
"id": "2",
"client_id": "-1",
"name": "Cancelada",
"color": "#545454",
"workflow_role": "2",
"user_group_ids": null,
"deactivated": "0",
"notification_via": null,
"notification_location": null,
"notification_form_id": null,
"notification_message": null
},
{
"id": "1028",
"client_id": "22",
"name": "No se pudo entregar",
"color": "#000000",
"workflow_role": "2",
"user_group_ids": null,
"deactivated": "0",
"notification_via": null,
"notification_location": null,
"notification_form_id": null,
"notification_message": null
},
{
"id": "1036",
"client_id": "22",
"name": "Devolucion",
"color": "#7E00B8",
"workflow_role": "2",
"user_group_ids": null,
"deactivated": "0",
"notification_via": 2,
"notification_location": false,
"notification_form_id": null,
"notification_message": null
},
{
"id": "1062",
"client_id": "22",
"name": "Limpieza finalizada",
"color": "#008347",
"workflow_role": "1",
"user_group_ids": null,
"deactivated": "0",
"notification_via": null,
"notification_location": null,
"notification_form_id": null,
"notification_message": null
},
{
"id": "1063",
"client_id": "22",
"name": "Limpiando",
"color": "#0CDAAC",
"workflow_role": "0",
"user_group_ids": null,
"deactivated": "0",
"notification_via": null,
"notification_location": null,
"notification_form_id": null,
"notification_message": null
},
{
"id": "1068",
"client_id": "22",
"name": "Entregado",
"color": "#B6DC4B",
"workflow_role": "1",
"user_group_ids": null,
"deactivated": "0",
"notification_via": 1,
"notification_location": false,
"notification_form_id": null,
"notification_message": "Tu {jobTitle} ¡fue entregada!"
}
]
}
O: Job Data Object
Cada objeto de tarea tiene estos campos
Campo | Tipo | Sólo lectura | Requerido | Descripción |
---|---|---|---|---|
id | string | Sí | No | |
client_id | string | Sí | No | |
creation_date | string | Sí | No | ISO 8601 format |
changed_date | string | No | No | ISO 8601 format |
objective | string | No | Sí | Longitud máxima 255 |
description | string | No | No | |
phone_number | string | No | No | Longitud máxima 15 |
contact_name | string | No | No | Longitud máxima 255 |
contact_email | string | No | No | Longitud máxima 255 |
notification_emails_csv | string | No | No | Longitud máxima 255 |
notification_phone_numbers_csv | string | No | No | Longitud máxima 80 |
notify_contact | boolean | No | No | Por defecto true . Activa notificaciones para el contacto de tarea |
created_by | string | Sí | No | ID del usuario que creó la tarea |
status | string | No | No | ID del status de la tarea |
job_type_id | string | No | No | |
start_date | string | No | Sí | YYYY-MM-DD |
start_time | string | No | No | HH:mm:ss |
duration | string | No | No | Duración esperada (en segundos) |
address | string | No | No | Longitud máxima 500 |
assigned_user_ids | string[] | No | No | Listado de ID de los usuarios asignados |
form_ids | string[] | No | No | Listado de ID de los formularios asociados |
required_form_ids | string[] | No | No | Listado de ID de los formularios obligatorios de responder |
remote_id | string | No | No | |
closed_date | string | Sí | No | Fecha en la que se completó/canceló la tarea |
last_status_change_date | string | Sí | No | Fecha en la que se realizó el último cambio de estado |
custom_fields | JSON | No | No | JSON Schema, debe de cumplir con las especificaciones de campos personalizados |
completed_lat | string | Sí | No | Latitud de la ubicación en la que se completó/canceló la tarea |
completed_lon | string | Sí | No | Longitud de la ubicación en la que se completó/canceló la tarea |
poi_id | string | No | No | ID de la geocerca asociada |
poi_name | string | No | No | Nombre de la geocerca asociada |
x | string | No | No | Longitud en la que fue completada o cancelada. |
y | string | No | No | Latitud en la que fue completada o cancelada. |
files | File[] | No | No | Ver estándar de archivos |
ISO 8601: YYYY-MM-DD HH:mm:ss±hh:mm
O: Job Type Data Object
Cada objeto de tipo de tarea tiene estos campos
Campo | Tipo | Sólo lectura | Requerido | Descripción |
---|---|---|---|---|
id | string | Sí | No | El ID del tipo de tarea |
name | string | No | No | Nombre del tipo de tarea |
O: Job Status Data Object
Cada objeto de estado de tarea tiene estos campos
Campo | Tipo | Sólo lectura | Requerido | Descripción |
---|---|---|---|---|
id | string | Sí | No | |
name | string | No | No | |
client_id | string | Sí | No | |
color | string | No | No | En formato hexadecimal. |
workflow_role | string | Sí | No | '0' : Pendiente, '1' : Completada, '2' : Cancelada |
user_group_ids | number[] | No | No | Usuarios que tienen permitido utilizar el estado. |
deactivated | string | No | No | '0' : Activo, '1' : Desactivado |
notifcation_via | number | No | No | 1 : SMS, 2 : email |
notification_location | boolean | No | No | Define si la ubicación del usuario asignado es compartida por medio de link. |
notification_form_id | number | No | No | ID del formulario que se envía junto a la notificación. |
notification_message | string | No | No |