Pular para o conteúdo principal

Passo 5 — Registar intervenções

Cada intervenção é um bloco de trabalho técnico (diagnóstico, reparação, deslocação) associado — em regra — à ordem de serviço, e transporta três coisas facturáveis: as peças (details), as horas (discountTime) e os km (commuteTime).

POST /gateway/intervention
Content-Type: application/json
Authorization: Bearer {token}
{
"type": "DIAG",
"status": "CURSO",
"description": "Diagnóstico inicial da fonte de alimentação",
"userId": 1,
"entityKeyId": "C0001",
"equipmentId": 123,
"serviceOrderGuid": "GUID-DA-ORDEM",
"openingTime": "2026-08-12T09:00:00Z",
"closureTime": "2026-08-12T10:30:00Z",
"problem": "Fonte não debita 19V.",
"solution": "Substituída a fonte. Testado arranque OK.",
"concluded": true,
"urgent": false,
"external": false,
"entityContractId": 1,
"discountTime": 1.5,
"discountTimeItemId": "MO-HORA",
"commuteTime": 12,
"commuteTimeItemId": "KM",
"details": [
{
"itemKeyId": "FONTE-19V",
"itemDescription": "Fonte de alimentação 19V / 65W",
"quantity": 1,
"retailPrice": 45.00
}
]
}

Obrigatórios (validação da API): type, status (do Passo 1.4), description, entityKeyId e userId (≥ 1).

Para facturação: details (as peças aplicadas, ver Passo 4.1), discountTime com discountTimeItemId (horas gastas e o artigo que as valoriza) e commuteTime com commuteTimeItemId (deslocação). entityContractId liga a intervenção ao contrato, para que as horas sejam debitadas ao plafond.

atenção

As horas só entram na factura se discountTime > 0 e discountTimeItemId estiver preenchido — o mesmo vale para os km. Sem o artigo, a linha não é gerada e não há aviso.

Como ligar a intervenção a uma ordem existente (no create, endpoint de associação, regras de edição): ver Passo 5.1 na visão geral.

Consultas úteis

EndpointPara quê
GET /intervention/{guid}/billing-detailsHoras por faturar/faturadas, kms — base da faturação
GET /intervention/by-contract/{contractId}Intervenções de um contrato
GET /intervention/next-idPróximo identificador

Seguinte

Fechar a ordem de serviço.