Listar todos los cierres mensuales de registro de jornada
Lista los cierres mensuales del registro de jornada de tu empresa con paginación por cursor, ordenados por periodo descendente. Admite filtrar por year. Cada elemento expone su estado (closed/reopened), los límites del periodo y el número de empleados.
En: header
Parámetros de consulta
Tamaño de página. Alias de limit (entero entre 1 y 100, por defecto 25).
251 <= value <= 100Tamaño de página. Entero entre 1 y 100. Por defecto 25. Alias de per_page; si se envían ambos, gana limit.
251 <= value <= 100Cursor de paginación opaco. NO ESTÁNDAR en esta API: a diferencia de los listados por cursor (starting_after/ending_before), este endpoint envuelve una paginación por offset, así que el cursor codifica el número de la página siguiente. Usa el valor next_cursor devuelto por la página anterior.
Filtra los cierres mensuales por año natural.
Parámetros de cabecera
Fija la versión de la API (YYYY-MM-DD, versionado por fecha estilo Stripe) para esta petición; omítelo para usar la versión fijada de la clave, o la última si no hay ninguna. Versión no soportada → 400 unsupported_api_version; malformada → 400 parameter_invalid_format. La versión efectiva se refleja en la cabecera de respuesta Factuarea-Version. Consulta la guía de Versioning.
dateOpera en nombre de una empresa hija (API key maestra de gestoría): pasa su id público (UUID v7) y la petición se ejecuta contra los datos de esa hija sin cambiar el scope, el tier ni el environment de la clave (omítelo para usar la propia empresa de la clave). UUID inválido → 400 parameter_invalid_uuid; id desconocido o no propio → 404 profile_not_found. Consulta la guía de Acting on behalf.
uuidCuerpo de la respuesta
application/json
application/json
application/json
application/json
application/json
import { Factuarea } from "@factuarea/sdk";const factuarea = new Factuarea({ apiKey: process.env.FACTUAREA_API_KEY! });// List endpoints return an async-iterable Page (cursors handled for you).for await (const item of await factuarea.monthlyTimeRecordCloses.list({ limit: 25 })) { console.log(item.id);}{
"has_more": true,
"next_cursor": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a0c",
"data": [
{
"id": "01933a40-04a9-73b5-9bc2-9c0d1e2f3a01",
"object": "monthly_time_record_close",
"year": 2026,
"month": 4,
"status": "closed",
"period_start": "2026-04-01",
"period_end": "2026-04-30",
"closed_by_id": "01933a1f-8c21-7b3d-9e4f-1a2b3c4d5ecc",
"closed_at": "2026-05-02T08:00:00Z",
"reopened_by_id": null,
"reopened_at": null,
"employee_count": 12,
"is_sealed": true
}
]
}{
"error": {
"type": "authentication_error",
"code": "missing_api_key",
"message": "No se ha proporcionado una API key válida en el header Authorization.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#missing_api_key",
"request_id": "req_01HKQS5N8VR7QXJ9K3T6BWPMZA"
}
}{
"error": {
"type": "authorization_error",
"code": "insufficient_scope",
"message": "Esta API key no tiene el scope requerido para esta operación.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#insufficient_scope",
"request_id": "req_01HKQS5NBC3P8M1KX4V7SLNHQD"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limit_exceeded",
"message": "Has excedido el rate limit de 60 peticiones por minuto. Reintenta tras 30 segundos.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#rate_limit_exceeded",
"request_id": "req_01HKQS5NKW1C6W9T4G5H0JBZVL"
}
}{
"error": {
"type": "api_error",
"code": "internal_error",
"message": "Ha ocurrido un error inesperado. Si persiste, contacta con soporte adjuntando el request_id.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#internal_error",
"request_id": "req_01HKQS5NLX2D7X0U5H6J1KCAWM"
}
}