Atualizar serviços
A sua integração faz duas operações sobre um serviço: grava nele o código do pedido no ERP e o envia para produção.
Associar o código do pedido do ERP
Rotas: PUT /services/{id} ou PATCH /services/{id}. As duas fazem a mesma coisa.
Quando a central registra um serviço como pedido no ERP, grave o código desse pedido no internal_code do serviço. A partir daí, o serviço pode ser encontrado pelo código do ERP (filtro internal_code de GET /services) e deixa de aparecer na busca por serviços sem código (internal_code=null).
Passos:
-
Obtenha o
iddo serviço pela listagem ou consulta. -
Registre o pedido no ERP e guarde o código gerado.
-
Chame a rota com o
idna URL e o código no corpo:{ "internal_code": "PED-000123" }
internal_code é o único campo alterável e é obrigatório no corpo. Aceita texto ou número; envie null para apagá-lo.
A associação só é aceita com o serviço num dos status expostos pela API: orçamento gerado (4), aguardando pagamento online (25), aprovado (6), enviado para produção (7) ou produzido (9).
Fora desses status, ou sem internal_code no corpo, a resposta é 500 com o motivo na mensagem. Repetir a chamada não resolve: corrija o corpo ou confira o status do serviço.
Enviar para produção
Rota: POST /services/{id}/production.
Envia o serviço para a produção da central e registra como responsável o vendedor com o e-mail informado. O efeito é o mesmo de o vendedor aprovar o serviço para produção no Cortecloud. Use esta rota com o serviço aprovado (6).
{ "sellerEmail": "vendedor@example.com" }
- O e-mail precisa ser de um vendedor ativo na central da requisição; se não for, a resposta é
422. - A resposta
202confirma que o envio foi aceito. O status muda logo depois: acompanhe porGET /services/{id}, ou por webhook, até o serviço chegar a enviado para produção (7). Enquanto o envio é processado,status.codepode trazer um código intermediário que não está na tabela de status. - Se o Cortecloud recusar o envio, por exemplo por saldo insuficiente, a resposta é
502com o motivo na mensagem.