Obtener fichajes por servicio

Este endpoint devuelve los fichajes consolidados de un servicio dentro de un periodo concreto no superior a 31 días.

GET /api/v1/businesses/{businessId}/services/{serviceId}/clockguards?from={yyyy-MM-dd}&to={yyyy-MM-dd}

Si los datos incluidos en la petición son correctos —tanto el businessId como el serviceId—, la respuesta contendrá los fichajes del servicio con toda la información definida para ellos.

Los datos incluidos en la respuesta dependerán de la información que se haya enviado previamente asociada al registro.

A continuación, se exponen algunos ejemplos:

  • Ejemplo 1

  • Ejemplo 2

  • Ejemplo 3

Registros con toda la información posible, incluido identificador de la tarea, del producto, localización geográfica, etc.

[
  {
    "employeeId": "2325",
    "productId": "0001-G",
    "locationId": "C14",
    "type": "WORK",
    "checkIn": "2021-08-12T04:00:00Z",
    "latIn": 3.676432,
    "lonIn": 3.676432,
    "deviceIn": "12345",
    "checkOut": "2021-08-12T06:00:00Z",
    "latOut": 3.676432,
    "lonOut": 3.676432,
    "deviceOut": "12345",
    "comment": "No error.",
    "orquestId": 3565687
  },
  {
    "employeeId": "2325",
    "productId": "0001-G",
    "locationId": "C14",
    "type": "WORK",
    "checkIn": "2021-08-13T04:00:00Z",
    "latIn": 3.676432,
    "lonIn": 3.676432,
    "deviceIn": "12345",
    "checkOut": "2021-08-13T08:00:00Z",
    "latOut": 3.676432,
    "lonOut": 3.676432,
    "deviceOut": "12345",
    "comment": "No error.",
    "orquestId": 3565688
  }
]

Registros solo con la información básica.

[
    {
        "employeeId": "1006350",
        "type": "WORK",
        "checkIn": "2024-04-26T13:00:00.000Z",
        "checkOut": "2024-04-26T15:00:00.000Z",
        "orquestId": 219986797
    },
    {
        "employeeId": "1006350",
        "type": "REST",
        "checkIn": "2024-04-26T12:00:00.000Z",
        "checkOut": "2024-04-26T13:00:00.000Z",
        "orquestId": 219987848
    },
    {
        "employeeId": "1006350",
        "type": "WORK",
        "checkIn": "2024-04-22T08:00:00.000Z",
        "checkOut": "2024-04-22T12:00:00.000Z",
        "orquestId": 219986798
    }
]

Si hay errores en el registro, por ejemplo, mismo tipo de fichaje (IN), la API devuelve los datos tal y como se han registrado:

[
    {
        "employeeId": "1006350",
        "type": "REST",
        "checkIn": "2024-04-21T08:00:00.000Z",
        "orquestId": 219987849
    },
    {
        "employeeId": "1006350",
        "type": "REST",
        "checkIn": "2024-04-21T09:00:00.000Z",
        "orquestId": 219987850
    }
]

Tal y como se aprecia en los ejemplos, la petición devuelve los datos tal y como se han registrado, por lo que el nivel de detalle de la respuesta dependerá de los datos previamente enviados: por ejemplo, si el registro contiene el identificador del dispositivo de fichaje (device), la petición también devolverá esa información vinculada al registro.

Aspectos que tener en cuenta

Esta petición devuelve solo los fichajes consolidados.

La API devuelve los datos en orden de registro, en UTC y en formato yyyy-MM-ddTHH:mm:ss.SSSZ.

La respuesta contendrá los datos desde la fecha indicada en el parámetro from hasta la fecha indicada en el parámetro to, incluyendo los de ambos días.

El intervalo máximo permitido para la consulta es de 31 días. Si el período indicado en la URL es mayor, la solicitud devolverá un error 406 No aceptable.

Si no hay fichajes para el intervalo indicado en la URL, la petición devolverá un array vacío [].

Si el servicio especificado en la URL no existe en el negocio, la petición devolverá un error 404 Not Found indicando not exists.

Enlaces de interés