Listar OTs

Para obtener un listado de las Ordenes de Trabajo para un rango de fechas particular, se debe enviar un GET con los siguientes parámetros.

GET https://api.persat.com.ar/v1/work-orders/

Query Parameters

Name
Type
Description

from*

String

Fecha desde en formato yyyy-MM-ddT00:00:00.000Z. En caso de enviar horas minutos, segundos o milisegundos, seran ignorados. La busqueda es realizada por dias completos

to*

String

Fecha hasta en formato yyyy-MM-ddT00:00:00.000Z. En caso de enviar horas minutos, segundos o milisegundos, seran ignorados. La busqueda es realizada por dias completos, incluyendo este mismo dia. Ver ejemplo en esta misma seccion

states

Array de Strings

Array de Strings, donde cada item es un estado valido de OT. Los estados validos para esta consulta son PROYECTADA, ASIGNADA, INFORME, VENCIDA, CERRADA_OK, CERRADA_CON_DESVIO, CERRADA_NO_CUMPLIDA

uid_client

String

Identificador del cliente

Headers

Name
Type
Description

Authorization*

String

Bearer API_KEY

Ejemplo de Request 1

Sin filtrar ni por state ni por uid_client

Busco todas las OTs de un día particular, sin importar el estado de las mismas (por eso no enviamos el parametro state)

https://api.persat.com.ar/v1/work-orders?from=2022-05-03T00:00:00.000Z&to=2022-05-03T00:00:00.000Z

La consulta se realiza por día, es decir que si bien tanto from como to son fechas en formato IsoDate, no importa si se envian las horas minutos segundos del dia. Ya que no se tomarán en cuenta para la consulta.

Tampoco importa la zona horaria, o sea que si estoy en Argentina, México o Perú, y quiero obtener las OTs que deben hacerse el día 3 de Mayo de 2022, entonces tanto from como to deben ser "2022-05-03T00:00:00.000Z" como se muestra en la consulta.

Análisis de la respuesta

Una posible respuesta podría ser la que se muestra a continuación.

{
    "success": true,
    "data": [
        {
        "_id": "134",            
        "note_id": 603,
        "state": "PROYECTADA",
        "created": "2022-05-20T10:14:44.000Z", 
        "created_by_user_name": "[email protected]",
        "created_by_user_id": 28,
        "labels_ids": [
            1,
            2
        ],
        "client": {
            "id": 10216,
            "name": "Fabrica de Motores",
            "uid_client": "CL3213L"
        },
        "wo_data": {
            "schema_id": 452,
            "wo_instance": null,
            "wo_rule_id": null,
            "service_time": 45,
            "instructions": {
                "formvalues": {
                    "FWMg5UsWo": "Revisar las tejas",
                    "FWcimEHVv": "Cobrar",
                    "FWXyxyhlj": 250.3     
                }
            }
        },
        "assignation_info": {
            "date": "2022-05-03T00:00:00.000Z",
            "starts_min": 480,
            "responsibles_required": 1,
            "responsibles": []
        }
    }, {...}
    ]
}

Los campos que se ven en la respuesta son los que se corresponden con cualquier OT. Ver sección Obtener OT

Ejemplo de Request 2

Filtrando por state

Busco todas las OTs de un día particular, pero ahora solo quiero obtener las que esten completas por el técnico. Con lo cual, los estados a buscar son:

  • INFORME

  • CERRADA_OK

  • CERRADA_CON_DESVIO

  • CERRADA_NO_CUMPLIDA

La consulta entonces quedaría de esta forma

https://api.persat.com.ar/v1/work-orders?from=2022-05-03T00:00:00.000Z&to=2022-05-03T00:00:00.000Z&states=["INFORME","CERRADA_OK","CERRADA_CON_DESVIO","CERRADA_NO_CUMPLIDA"]

curl --location --request GET "https://api.persat.com.ar/v1/work-orders?from=2022-05-25T00:00:00.000Z&to=2022-05-25T00:00:00.000Z&states=%5B%22INFORME%22,\
%22CERRADA_OK%22,%22CERRADA_CON_DESVIO%22,%22CERRADA_NO_CUMPLIDA%22%5D" \
  --header "Authorization: Bearer YOUR_API_KEY"

Ejemplo de Request 3

Filtrando por cliente. Hay que enviar en el path el uid_client correspondiente.

La consulta entonces quedaría de esta forma

https://api.persat.com.ar/v1/work-orders?from=2022-05-03T00:00:00.000Z&to=2022-05-03T00:00:00.000Z&uid_client=CL3213L

Ejemplo de Request 4

Filtrando tanto por estado como por cliente

La consulta entonces quedaría de esta forma

https://api.persat.com.ar/v1/work-orders?from=2022-05-03T00:00:00.000Z&to=2022-05-03T00:00:00.000Z&states=["CERRADA_NO_CUMPLIDA"]&uid_client=CL3213L

Last updated