Atribuir operador ao turno

Atribui um operador a um turno pelo seu ID (o que é devolvido por GET /v1/shifts), mesmo em turnos que já terminaram. Sem start, o operador assume a máquina desde o início do turno.

Como as atribuições de operador se somam. Cada turno mantém uma cronologia de quem operou a máquina. Uma atribuição significa "a partir de start, este operador opera a máquina": dura até ao fim do turno, ou até à atribuição seguinte.

  • Primeira atribuição. Se o turno ainda não tiver ninguém atribuído, o operador cobre o turno completo, desde o seu primeiro minuto, mesmo quando start é posterior.
  • Atribuições posteriores. Cada uma divide a cronologia em start: quem tinha a máquina mantém-na até start, e o novo operador assume-a de start até ao fim do turno.
  • A ordem importa. Envie as atribuições por ordem cronológica. Um start anterior à última mudança do turno é rejeitado com 400, por isso depois não é possível inserir um operador a meio. Um start igual à última mudança substitui o operador que assumiu a máquina nesse momento.
  • As repetições são seguras. Enviar a mesma atribuição outra vez não altera nada.
  • start é arredondado para baixo ao minuto.

Por exemplo, para um turno Morning das 06:00 às 14:00 ainda sem ninguém atribuído:

PedidoCronologia depois dele
operador 1063 a partir das 10:001063 06:00–14:00 (a primeira atribuição cobre o turno completo)
operador 2071 a partir das 10:001063 06:00–10:00, 2071 10:00–14:00
operador 3300 a partir das 12:001063 06:00–10:00, 2071 10:00–12:00, 3300 12:00–14:00
operador 4410 a partir das 08:00Rejeitado com 400: 08:00 é antes da última mudança, às 12:00

Para registar um turno que teve vários operadores, envie o primeiro a partir do início do turno e depois os restantes pela ordem em que assumiram a máquina.

As métricas de operador do turno são recalculadas em segundo plano, por isso os relatórios podem demorar um momento a mostrar a alteração.

Erros:

  • 400: nenhum turno corresponde, ou start está fora do turno, no futuro, ou antes da última mudança de operador do turno.
  • 403: o turno tem produção marcada como revista, o que o bloqueia.
  • 404: o operador não existe na sua empresa.

Parâmetros de caminho

shift_id*Shift Id

O ID do turno.

Corpo do pedido

application/json

Definições de TypeScript

Utilize o tipo request body em TypeScript.

Corpo da resposta

application/json

application/json

Experimente em direto
POST
/v1/shifts/{shift_id}/operator

Este endpoint requer autenticação. Cole um token na secção Autorização, mais abaixo.

curl -X POST "https://example.com/v1/shifts/0/operator" \  -H "Content-Type: application/json" \  -d '{    "operatorId": 1063  }'
{  "shiftId": 48213,  "machineId": 12,  "operatorId": 1063,  "start": "2026-10-12T10:00:00Z"}

Atribuir por hora POST

Atribui um operador ao turno que a máquina `machineId` estava a executar em `start`, a partir de `start`. Use-o para registar quem operou uma máquina a posteriori, por exemplo um dia depois a partir de um sistema de planeamento, quando sabe a máquina e a hora mas não o ID do turno (`GET /v1/shifts` lista os IDs). Para um turno em curso num terminal de fábrica, `POST /v1/realtime/{machine_id}/operator` é a chamada mais curta. **Como as atribuições de operador se somam.** Cada turno mantém uma cronologia de quem operou a máquina. Uma atribuição significa "a partir de `start`, este operador opera a máquina": dura até ao fim do turno, ou até à atribuição seguinte. * **Primeira atribuição.** Se o turno ainda não tiver ninguém atribuído, o operador cobre o **turno completo**, desde o seu primeiro minuto, mesmo quando `start` é posterior. * **Atribuições posteriores.** Cada uma divide a cronologia em `start`: quem tinha a máquina mantém-na até `start`, e o novo operador assume-a de `start` até ao fim do turno. * **A ordem importa.** Envie as atribuições por ordem cronológica. Um `start` anterior à última mudança do turno é rejeitado com `400`, por isso depois não é possível inserir um operador a meio. Um `start` igual à última mudança substitui o operador que assumiu a máquina nesse momento. * **As repetições são seguras.** Enviar a mesma atribuição outra vez não altera nada. * `start` é arredondado para baixo ao minuto. Por exemplo, para um turno `Morning` das 06:00 às 14:00 ainda sem ninguém atribuído: | Pedido | Cronologia depois dele | | --- | --- | | operador 1063 a partir das 10:00 | 1063 06:00–14:00 (a primeira atribuição cobre o turno completo) | | operador 2071 a partir das 10:00 | 1063 06:00–10:00, 2071 10:00–14:00 | | operador 3300 a partir das 12:00 | 1063 06:00–10:00, 2071 10:00–12:00, 3300 12:00–14:00 | | operador 4410 a partir das 08:00 | Rejeitado com `400`: 08:00 é antes da última mudança, às 12:00 | Para registar um turno que teve vários operadores, envie o primeiro a partir do início do turno e depois os restantes pela ordem em que assumiram a máquina. As métricas de operador do turno são recalculadas em segundo plano, por isso os relatórios podem demorar um momento a mostrar a alteração. Erros: * `400`: nenhum turno corresponde, ou `start` está fora do turno, no futuro, ou antes da última mudança de operador do turno. * `403`: o turno tem produção marcada como revista, o que o bloqueia. * `404`: o operador não existe na sua empresa.

Adicionar defeitos por hora POST

Adiciona unidades defeituosas de um SKU ao turno que a máquina `machineId` estava a executar em `time`, mesmo em turnos que já terminaram. Use-o quando sabe a máquina e aproximadamente quando os defeitos foram encontrados, mas não o ID do turno. **Como os defeitos se somam.** Ao contrário dos operadores, os defeitos não têm cronologia nem ordem. Cada chamada adiciona um novo registo de produção de defeitos de `quantity` unidades do SKU, que cobre o turno completo, e a Qualidade e o OEE do turno contabilizam-no em segundo plano. Uma chamada nunca substitui as anteriores: * Enviar `quantity: 2` e depois `quantity: 3` regista 5 defeitos. * Enviar o mesmo pedido duas vezes regista os defeitos duas vezes, por isso repita apenas os pedidos que falharam. * Para anular uma chamada, elimine o registo que ela devolveu com `DELETE /v1/production-logs/{id}`. Para ver o que um turno já tem, liste os seus registos com `POST /v1/production-logs/filters`. Os defeitos não são atribuídos a nenhum operador, e podem ser adicionados a turnos passados, incluindo aqueles cuja produção foi revista. O SKU é indicado por `id` ou por `name`; um nome desconhecido cria um SKU novo, por isso verifique a ortografia. Erros: * `400`: nenhum turno corresponde, o turno ainda não começou, ou o turno não tem produção suficiente desse SKU para comportar os defeitos. * `404`: `sku.id` não é um dos seus SKUs.