Listar ausencias

GET /api/v1/absences

Devuelve las ausencias que solapan el rango indicado (ambos extremos incluidos), de la más reciente a la más antigua — incluidas las que empiezan antes o terminan después de la ventana. Filtrable por empleado, estado y tipo. Las ausencias por horas traen `start_time`/`end_time`; las de día completo los traen a null. Las notas de solicitud y decisión no se devuelven.

Parámetros de consulta

Nombre Tipo Obligatorio Descripción
from string Primer día del rango (YYYY-MM-DD).
to string Último día del rango (YYYY-MM-DD), incluido.
user_id string No Solo las ausencias de este empleado.
status string No Estado: 'pending', 'approved', 'rejected' o 'cancelled'.
type string No Clave del tipo de ausencia (p. ej. 'vacation', 'sick'). El catálogo es por empresa.
page integer No Página (desde 1).
page_size integer No Ausencias por página (máx. 100).

Ejemplo

Sustituye db_live_tu_clave por tu clave.

curl -s -H "Authorization: Bearer db_live_tu_clave" \
  "https://api.dutybeat.com/api/v1/absences?user_id=u-delm&from=2026-06-01&to=2026-06-30" | jq

Respuesta de ejemplo

Lo que imprime cada snippet al ejecutarlo: cURL devuelve el JSON crudo; los snippets de Python y PowerShell piden campos concretos, así que su salida es la de cada uno.

{
  "data": [
    {
      "id": "abs-008",
      "user_id": "u-delm",
      "type": {
        "key": "vacation",
        "label": "Vacaciones"
      },
      "status": "approved",
      "start_date": "2026-06-22",
      "end_date": "2026-06-26",
      "start_time": null,
      "end_time": null,
      "created_at": "2026-06-08T00:00:00Z",
      "decided_at": "2026-06-09T09:00:00Z"
    },
    {
      "id": "abs-007",
      "user_id": "u-delm",
      "type": {
        "key": "justified",
        "label": "Ausencia justificada"
      },
      "status": "approved",
      "start_date": "2026-06-15",
      "end_date": "2026-06-15",
      "start_time": null,
      "end_time": null,
      "created_at": "2026-06-09T00:00:00Z",
      "decided_at": "2026-06-09T11:00:00Z"
    },
    {
      "id": "abs-010",
      "user_id": "u-delm",
      "type": {
        "key": "personal",
        "label": "Asuntos propios"
      },
      "status": "approved",
      "start_date": "2026-06-11",
      "end_date": "2026-06-11",
      "start_time": "10:00",
      "end_time": "12:00",
      "created_at": "2026-06-05T00:00:00Z",
      "decided_at": "2026-06-05T15:00:00Z"
    }
  ],
  "meta": {
    "page": 1,
    "page_size": 25,
    "total": 3
  }
}

Prueba la demo

Déjanos tus datos y accede a tu entorno de prueba al instante.

Para acceder deberás leer y aceptar nuestra Política de Privacidad.

Política de Privacidad

Léela hasta el final para poder continuar.

Al solicitar la demo de DutyBeat tratamos los datos que nos facilitas (nombre, email y teléfono) con el único fin de crear tu entorno de prueba, facilitarte el enlace de acceso y atender tu solicitud comercial. La demo es solo para mayores de 18 años, lo que confirmas en el formulario.

Responsable: DutyBeat. Base jurídica: tu consentimiento y el interés legítimo en responder a tu solicitud. Conservación: el entorno de demo se elimina automáticamente al caducar; conservamos tus datos de contacto como lead comercial un máximo de 12 meses.

No cedemos tus datos a terceros salvo obligación legal ni para fines distintos a los descritos. Puedes ejercer tus derechos de acceso, rectificación, supresión, oposición, limitación y portabilidad escribiendo a [email protected].

Puedes consultar la versión completa en nuestra página de Política de Privacidad.

Al pulsar “He leído y acepto” confirmas haber leído esta información y consientes el tratamiento de tus datos para los fines indicados.