Reporte de paros

Scope requerido: reports.read.

Devuelve los paros individuales de las máquinas con su duración, causa y clasificación.

Es el detalle detrás de los totales de tiempo muerto del reporte de métricas. stopId acepta la gramática de comparación completa, así que se puede obtener directamente un paro específico o un rango de ellos.

Cuerpo de la solicitud

application/json

Definiciones de TypeScript

Usa el tipo request body en TypeScript.

Cuerpo de la respuesta

application/json

application/json

application/json

application/json

application/json

Pruébalo en vivo
POST
/v1/reports/stops

Este endpoint requiere autenticación. Pega un token en la sección Autorización, más abajo.

curl -X POST "https://example.com/v1/reports/stops" \  -H "Content-Type: application/json" \  -d '{}'
{  "totalCount": 100,  "totalPages": 10,  "currentPage": 1,  "stops": [    {      "classification": {        "component": {          "id": "3e8e81cf-7521-4ef9-b6c9-40074aa764c5",          "name": "a simple component"        },        "createdAt": "2025-11-01T00:00:00",        "description": "a simple description",        "generalCause": {          "id": "d56aece5-a92a-462e-b275-919e15446bba",          "name": "a simple general cause"        },        "id": 1,        "specificCause": {          "id": "f89b5866-2d26-45a1-8cfc-8295557594d8",          "name": "a simple specific cause"        },        "updatedAt": "2025-11-01T00:00:00"      },      "company": {        "id": 1,        "name": "a simple company"      },      "machine": {        "id": 1,        "name": "a simple machine"      },      "shift": {        "endTime": "2025-11-10T00:00:00",        "id": 1,        "isActive": true,        "name": "morning",        "startTime": "2025-11-01T00:00:00"      },      "stop": {        "createdAt": "2025-11-01T00:00:00",        "deletedAt": "2025-11-10T00:00:00",        "durationInMinutes": 30,        "endTime": "2025-11-10T00:00:00",        "id": 1,        "isIncludedInAvailability": true,        "isIncludedInStops": true,        "isManual": true,        "isProgrammed": true,        "startTime": "2025-11-01T00:00:00",        "updatedAt": "2025-11-01T00:00:00"      }    }  ]}

Reporte de métricas POST

Devuelve OEE, disponibilidad, calidad y minutos perdidos por máquina y turno. Cada fila trae los indicadores del turno (tiempo disponible, tiempo muerto separado por causa) junto con las métricas de producción derivadas: availability, effectiveness, quality, oee y netOee, además de los minutos perdidos por baja velocidad y por baja calidad. Es un POST que solo lee: basta con el scope reports.read. Es preferible a calcular el OEE a partir de los registros de producción: los límites de turno, la clasificación de paros y los factores de conteo ya están aplicados.

Listar turnos GET

Lista los turnos de máquina que se traslapan con un rango de tiempo, pasados o próximos. Usa el id de cada turno para asignar operadores o registrar unidades defectuosas. Un turno se devuelve cuando alguna parte de él cae entre from y to: termina después de from y empieza antes de to. Así, un turno de noche de 22:00 a 06:00 aparece en un rango que cubra cualquiera de los dos días. to debe ser posterior a from, y el rango puede abarcar como máximo 31 días. La respuesta es la lista completa, sin paginar, ordenada por start y luego por máquina. Cubrir un periodo más largo. Divídelo en rangos consecutivos (el to de uno es el from del siguiente) y agrega match=start, que devuelve solo los turnos que empiezan en el rango (from <= start < to). Así cada turno se devuelve exactamente una vez. Con el valor por defecto, match=overlap, un turno que cruza el límite entre dos rangos lo devuelven ambos, así que elimina duplicados por id antes de actuar sobre los resultados; agregar defectos dos veces los registra dos veces. ` GET /v1/shifts?from=2026-10-01T00:00:00Z&to=2026-11-01T00:00:00Z&match=start GET /v1/shifts?from=2026-11-01T00:00:00Z&to=2026-12-01T00:00:00Z&match=start ` Acota la lista con machineId, repetido para varias máquinas: ` GET /v1/shifts?from=2026-10-12T00:00:00Z&to=2026-10-13T00:00:00Z&machineId=12 ` Los turnos excluidos de las métricas también se listan, con isConsidered: false.