Referência
Lavandaria
A lavandaria de serviço: o catálogo (categorias, tipos de roupa, serviços, urgências, máquinas), as ordens de serviço com peças e etiquetas, o prazo prometido, a produção por fases (triagem, lavagem, secagem, acabamento, qualidade, pronta) com lotes em máquinas, os incidentes, as mensagens aos clientes e o levantamento, que emite um documento fiscal do núcleo pelo fluxo de sempre. Na recepção não se factura nada.
A lavandaria de serviço: o catálogo (categorias, tipos de roupa, serviços, urgências, máquinas), as ordens de serviço com peças e etiquetas, o prazo prometido, a produção por fases (triagem, lavagem, secagem, acabamento, qualidade, pronta) com lotes em máquinas, os incidentes, as mensagens aos clientes e o levantamento, que emite um documento fiscal do núcleo pelo fluxo de sempre. Na recepção não se factura nada.
| Operação | O que faz |
|---|---|
GET /api/lavandaria/categorias | As categorias de roupa (com o peso médio de cada peça). |
POST /api/lavandaria/categorias | Cria uma categoria de roupa. |
PUT /api/lavandaria/categorias/{id} | Altera uma categoria de roupa. |
GET /api/lavandaria/tipos-de-roupa | Os tipos de roupa. |
POST /api/lavandaria/tipos-de-roupa | Cria um tipo de roupa. |
PUT /api/lavandaria/tipos-de-roupa/{id} | Altera um tipo de roupa. |
GET /api/lavandaria/servicos | Os serviços de lavandaria, com as fases por que passam e os preços. |
POST /api/lavandaria/servicos | Cria um serviço de lavandaria, ligado a um artigo do catálogo. |
PUT /api/lavandaria/servicos/{id} | Altera um serviço de lavandaria. |
GET /api/lavandaria/urgencias | Os níveis de urgência (prazo mais curto, com acréscimo). |
POST /api/lavandaria/urgencias | Cria um nível de urgência: o nome, as horas de prazo e o acréscimo percentual. |
PUT /api/lavandaria/urgencias/{id} | Altera um nível de urgência. |
GET /api/lavandaria/maquinas | As máquinas da lavandaria, com a capacidade e o estado. |
POST /api/lavandaria/maquinas | Cria uma máquina. |
PUT /api/lavandaria/maquinas/{id} | Altera uma máquina. |
POST /api/lavandaria/maquinas/{id}/avaria | Declara a avaria de uma máquina: a máquina sai do planeamento e, se tinha um lote em ciclo, o lote pára e as peças voltam à fila para outra máquina. |
POST /api/lavandaria/maquinas/{id}/manutencao | Põe uma máquina em manutenção. |
POST /api/lavandaria/maquinas/{id}/servico | Repõe uma máquina em serviço. |
GET /api/lavandaria/configuracao | A configuração da lavandaria: prefixo das ordens, horário, folga de produção, tolerância de peso e política de abandono. |
PUT /api/lavandaria/configuracao | Define a configuração da lavandaria. |
GET /api/lavandaria/ordens | As ordens de serviço do estabelecimento. |
POST /api/lavandaria/ordens | Recebe a roupa: cria a ordem de serviço com os itens, os preços (gravados no item, já com a urgência) e o prazo prometido. |
GET /api/lavandaria/ordens/{id} | Uma ordem de serviço completa, com as peças e o seu percurso. |
POST /api/lavandaria/ordens/{id}/cancelar | Cancela uma ordem, com motivo. |
GET /api/lavandaria/ordens/{id}/levantamento/preparacao | O que se cobraria agora por estas peças, calculado pelo mesmo caminho que a emissão (IVA, retenções, promoções e arredondamento incluídos). |
POST /api/lavandaria/ordens/{id}/levantamento | O levantamento: o cliente leva as peças que estão prontas (todas ou só algumas) e paga. |
POST /api/lavandaria/ordens/{id}/abandonar | Marca uma ordem pronta e não levantada como abandonada, com o destino dado à roupa. |
GET /api/lavandaria/prazo | Quando ficaria pronta uma encomenda assim, antes de a gravar. |
GET /api/lavandaria/pecas/{codigo} | Procura uma peça pela etiqueta: onde está, em que ordem e o que lhe aconteceu. |
POST /api/lavandaria/pecas/avancar | Faz avançar a peça para a fase seguinte da sua rota. |
POST /api/lavandaria/pecas/qualidade/aprovar | Aprova a qualidade e arruma a peça: fica pronta, com a posição onde está (prateleira, cabide, cacifo). |
POST /api/lavandaria/pecas/qualidade/reprovar | Reprova a peça na qualidade. |
PUT /api/lavandaria/pecas/{itemId}/peso-de-saida | Regista o peso da roupa à saída e diz se a diferença para a entrada passa a tolerância. |
PUT /api/lavandaria/pecas/{itemId}/peso-de-entrada | Corrige o peso de entrada de um saco pesado mal, antes de entrar em produção. |
POST /api/lavandaria/pecas/{itemId}/fotos | Anexa uma fotografia a uma peça. |
GET /api/lavandaria/fotos/{id} | Descarrega uma fotografia de uma peça. |
GET /api/lavandaria/quadro | O quadro de produção: uma coluna por fase (triagem, lavagem, secagem, acabamento, qualidade, pronta) com as peças que lá estão, as atrasadas primeiro. |
GET /api/lavandaria/lotes/fila | As peças à espera de entrar num lote, numa fase. |
GET /api/lavandaria/lotes/sugestao | Propõe lotes para as máquinas livres do tipo certo. |
GET /api/lavandaria/lotes | Os lotes em máquinas. |
POST /api/lavandaria/lotes | Fecha um lote: a máquina entra em ciclo e as peças passam à fase do lote. |
POST /api/lavandaria/lotes/{id}/terminar | Termina o ciclo: a máquina fica livre e as peças avançam para a fase seguinte da sua rota. |
POST /api/lavandaria/lotes/{id}/parar | Pára um lote em ciclo sem avaria (por exemplo, uma peça posta por engano): as peças voltam à fila e a máquina fica livre. |
GET /api/lavandaria/incidentes | Os incidentes (peça perdida, trocada, danificada…). |
POST /api/lavandaria/incidentes | Abre um incidente numa ordem ou numa peça. |
POST /api/lavandaria/incidentes/{id}/resolver | Resolve um incidente: reprocessar, reparar, indemnizar ou sem razão. |
GET /api/lavandaria/notificacoes | As mensagens da lavandaria aos clientes, com o canal, o texto e o resultado. |
POST /api/lavandaria/notificacoes/{id}/enviada | Marca uma mensagem como enviada (o balcão abriu a ligação de WhatsApp e enviou-a). |
GET /api/lavandaria/painel | O painel do gerente: a produção do dia, o prazo cumprido, o dinheiro parado em roupa por levantar, a não-qualidade e as máquinas. |
/api/lavandaria/categorias#As categorias de roupa (com o peso médio de cada peça).
apenasActivas (por omissão, verdadeiro).
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
apenasActivas | na pesquisa | verdadeiro/falso |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/categorias' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/categorias#Cria uma categoria de roupa.
nome, icone, pesoMedioKg, ordem e activa.
Corpo do pedido (JSON · GuardarCategoriaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
nome | texto | sim | O nome. |
icone | texto ou nulo | ||
pesoMedioKg | número | sim | |
ordem | número inteiro | sim | |
activa | verdadeiro/falso | sim |
Resposta
Devolve 201 com o id do registo criado.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/categorias' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"pesoMedioKg": 0,
"ordem": 1,
"activa": false
}'
/api/lavandaria/categorias/{id}#Altera uma categoria de roupa.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · GuardarCategoriaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
nome | texto | sim | O nome. |
icone | texto ou nulo | ||
pesoMedioKg | número | sim | |
ordem | número inteiro | sim | |
activa | verdadeiro/falso | sim |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/categorias/<id>' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"pesoMedioKg": 0,
"ordem": 1,
"activa": false
}'
/api/lavandaria/tipos-de-roupa#Os tipos de roupa.
apenasActivos (por omissão, verdadeiro).
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
apenasActivos | na pesquisa | verdadeiro/falso |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/tipos-de-roupa' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/tipos-de-roupa#Cria um tipo de roupa.
Corpo do pedido (JSON · GuardarTipoDeRoupaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
nome | texto | sim | O nome. |
ordem | número inteiro | sim | |
activo | verdadeiro/falso | sim | Se está activo. |
Resposta
Devolve 201 com o id do registo criado.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/tipos-de-roupa' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"ordem": 1,
"activo": false
}'
/api/lavandaria/tipos-de-roupa/{id}#Altera um tipo de roupa.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · GuardarTipoDeRoupaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
nome | texto | sim | O nome. |
ordem | número inteiro | sim | |
activo | verdadeiro/falso | sim | Se está activo. |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/tipos-de-roupa/<id>' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"ordem": 1,
"activo": false
}'
/api/lavandaria/servicos#Os serviços de lavandaria, com as fases por que passam e os preços.
apenasActivos (por omissão, verdadeiro).
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
apenasActivos | na pesquisa | verdadeiro/falso |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/servicos' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/servicos#Cria um serviço de lavandaria, ligado a um artigo do catálogo.
produtoId liga o serviço ao artigo que se factura. unidade: Peca ou Quilo. lavagem, secagem e acabamento dizem por que fases passa a roupa; programa: Algodao, Sintetico, Delicado, Pesado, ASeco ou Nenhum (serviços sem lavagem); prazoHoras, precoBase e precos (por categoria ou tipo de roupa) completam o serviço; exigeAceitacaoDeRisco pede que o cliente aceite o risco.
Corpo do pedido (JSON · GuardarServicoDeLavandariaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
produtoId | identificador (UUID) | sim | O artigo. |
nome | texto | sim | O nome. |
grupo | texto ou nulo | ||
unidade | uma de: «Peca», «Quilo» | sim | |
lavagem | verdadeiro/falso | sim | |
secagem | verdadeiro/falso | sim | |
acabamento | verdadeiro/falso | sim | |
programa | uma de: «Algodao», «Sintetico», «Delicado», «Pesado», «ASeco», «Nenhum» | sim | |
prazoHoras | número | sim | |
precoBase | número ou nulo | ||
exigeAceitacaoDeRisco | verdadeiro/falso | sim | |
activo | verdadeiro/falso | sim | Se está activo. |
precos | lista de objectos | sim | |
precos[].categoriaId | identificador (UUID) ou nulo | ||
precos[].tipoDeRoupaId | identificador (UUID) ou nulo | ||
precos[].preco | número | sim |
Resposta
Devolve 201 com o id do registo criado.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/servicos' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"produtoId": "00000000-0000-0000-0000-000000000000",
"nome": "texto",
"unidade": "Peca",
"lavagem": false,
"secagem": false,
"acabamento": false,
"programa": "Algodao",
"prazoHoras": 0,
"exigeAceitacaoDeRisco": false,
"activo": false,
"precos": [
{
"preco": 0
}
]
}'
/api/lavandaria/servicos/{id}#Altera um serviço de lavandaria.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · GuardarServicoDeLavandariaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
produtoId | identificador (UUID) | sim | O artigo. |
nome | texto | sim | O nome. |
grupo | texto ou nulo | ||
unidade | uma de: «Peca», «Quilo» | sim | |
lavagem | verdadeiro/falso | sim | |
secagem | verdadeiro/falso | sim | |
acabamento | verdadeiro/falso | sim | |
programa | uma de: «Algodao», «Sintetico», «Delicado», «Pesado», «ASeco», «Nenhum» | sim | |
prazoHoras | número | sim | |
precoBase | número ou nulo | ||
exigeAceitacaoDeRisco | verdadeiro/falso | sim | |
activo | verdadeiro/falso | sim | Se está activo. |
precos | lista de objectos | sim | |
precos[].categoriaId | identificador (UUID) ou nulo | ||
precos[].tipoDeRoupaId | identificador (UUID) ou nulo | ||
precos[].preco | número | sim |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/servicos/<id>' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"produtoId": "00000000-0000-0000-0000-000000000000",
"nome": "texto",
"unidade": "Peca",
"lavagem": false,
"secagem": false,
"acabamento": false,
"programa": "Algodao",
"prazoHoras": 0,
"exigeAceitacaoDeRisco": false,
"activo": false,
"precos": [
{
"preco": 0
}
]
}'
/api/lavandaria/urgencias#Os níveis de urgência (prazo mais curto, com acréscimo).
apenasActivas (por omissão, verdadeiro).
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
apenasActivas | na pesquisa | verdadeiro/falso |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/urgencias' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/urgencias#Cria um nível de urgência: o nome, as horas de prazo e o acréscimo percentual.
Corpo do pedido (JSON · GuardarUrgenciaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
nome | texto | sim | O nome. |
horas | número | sim | |
acrescimoPct | número | sim | |
activa | verdadeiro/falso | sim |
Resposta
Devolve 201 com o id do registo criado.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/urgencias' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"horas": 0,
"acrescimoPct": 0,
"activa": false
}'
/api/lavandaria/urgencias/{id}#Altera um nível de urgência.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · GuardarUrgenciaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
nome | texto | sim | O nome. |
horas | número | sim | |
acrescimoPct | número | sim | |
activa | verdadeiro/falso | sim |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/urgencias/<id>' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"horas": 0,
"acrescimoPct": 0,
"activa": false
}'
/api/lavandaria/maquinas#As máquinas da lavandaria, com a capacidade e o estado.
apenasActivas (por omissão, verdadeiro). lojaId é opcional quando a chave só tem um estabelecimento.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
lojaId | na pesquisa | identificador (UUID) | |
apenasActivas | na pesquisa | verdadeiro/falso |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/maquinas' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/maquinas#Cria uma máquina.
tipo: Lavar, Secar, LavarASeco, Calandra, Prensa ou Tunel; capacidadeKg. lojaId é opcional quando a chave só tem um estabelecimento.
Corpo do pedido (JSON · GuardarMaquinaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
lojaId | identificador (UUID) ou nulo | O estabelecimento. | |
nome | texto | sim | O nome. |
tipo | uma de: «Lavar», «Secar», «LavarASeco», «Calandra», «Prensa», «Tunel» | sim | |
capacidadeKg | número | sim | |
activa | verdadeiro/falso | sim |
Resposta
Devolve 201 com o id do registo criado.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/maquinas' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"tipo": "Lavar",
"capacidadeKg": 0,
"activa": false
}'
/api/lavandaria/maquinas/{id}#Altera uma máquina.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · GuardarMaquinaCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
id | identificador (UUID) ou nulo | Identificador único (UUID). | |
lojaId | identificador (UUID) ou nulo | O estabelecimento. | |
nome | texto | sim | O nome. |
tipo | uma de: «Lavar», «Secar», «LavarASeco», «Calandra», «Prensa», «Tunel» | sim | |
capacidadeKg | número | sim | |
activa | verdadeiro/falso | sim |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/maquinas/<id>' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"nome": "texto",
"tipo": "Lavar",
"capacidadeKg": 0,
"activa": false
}'
/api/lavandaria/maquinas/{id}/avaria#Declara a avaria de uma máquina: a máquina sai do planeamento e, se tinha um lote em ciclo, o lote pára e as peças voltam à fila para outra máquina.
nota descreve a avaria. Devolve quantas peças voltaram à fila, para quem tem prazo em risco ser avisado.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · NotaPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
nota | texto ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/maquinas/<id>/avaria' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{}'
/api/lavandaria/maquinas/{id}/manutencao#Põe uma máquina em manutenção.
nota (opcional).
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · NotaPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
nota | texto ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/maquinas/<id>/manutencao' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{}'
/api/lavandaria/maquinas/{id}/servico#Repõe uma máquina em serviço.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/maquinas/<id>/servico' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/configuracao#A configuração da lavandaria: prefixo das ordens, horário, folga de produção, tolerância de peso e política de abandono.
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/configuracao' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/configuracao#Define a configuração da lavandaria.
prefixoDaOrdem, abertura, fecho, dias, folgaDeProducaoHoras, capacidadeDiariaKg, diasParaPorLevantar, toleranciaDePesoPct, maximoDeReprocessamentos, abandonoActivo e diasParaAbandono.
A política de abandono só deve activar-se depois de validada juridicamente: os dias vêm dessa validação, não do sistema.
Devolve 204, sem corpo.
Corpo do pedido (JSON · DefinirConfiguracaoDaLavandariaCommand)
| Campo | Tipo | Obrigatório |
|---|---|---|
prefixoDaOrdem | texto | sim |
abertura | texto | sim |
fecho | texto | sim |
dias | lista de número inteiro | sim |
folgaDeProducaoHoras | número | sim |
capacidadeDiariaKg | número ou nulo | |
diasParaPorLevantar | número inteiro | sim |
toleranciaDePesoPct | número | sim |
maximoDeReprocessamentos | número inteiro | sim |
abandonoActivo | verdadeiro/falso | sim |
diasParaAbandono | número inteiro ou nulo |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/configuracao' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"prefixoDaOrdem": "texto",
"abertura": "texto",
"fecho": "texto",
"dias": [
1
],
"folgaDeProducaoHoras": 0,
"diasParaPorLevantar": 1,
"toleranciaDePesoPct": 0,
"maximoDeReprocessamentos": 1,
"abandonoActivo": false
}'
/api/lavandaria/ordens#As ordens de serviço do estabelecimento.
Sem estado, só as abertas (recebidas, em produção, prontas). Estados: Recebida, EmProducao, Pronta, Entregue, Cancelada e Abandonada. filtro procura no número, no código de acompanhamento, no contacto, no nome e telefone do cliente e nas etiquetas das peças. Outros filtros: soAtrasadas, soPorLevantar, clienteId e maximo (por omissão 100). lojaId é opcional quando a chave só tem um estabelecimento.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
lojaId | na pesquisa | identificador (UUID) | |
estado | na pesquisa | uma de: «Recebida», «EmProducao», «Pronta», «Entregue», «Cancelada», «Abandonada», «null» | |
filtro | na pesquisa | texto | |
soAtrasadas | na pesquisa | verdadeiro/falso | |
soPorLevantar | na pesquisa | verdadeiro/falso | |
clienteId | na pesquisa | identificador (UUID) | |
maximo | na pesquisa | número inteiro |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/ordens' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/ordens#Recebe a roupa: cria a ordem de serviço com os itens, os preços (gravados no item, já com a urgência) e o prazo prometido.
canal: Balcao, Telefone, Recolha, App, Cacifo ou Contrato. O cliente pode ser um cliente da empresa (clienteId) ou só um contacto (contactoNome, contactoTelefone). Deixa pronta a mensagem «Recebemos a tua roupa». Nada se factura na recepção.
Envie Idempotency-Key: repetir o pedido não o executa duas vezes. Ver Idempotência.
Corpo do pedido (JSON · ReceberOrdemCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
lojaId | identificador (UUID) ou nulo | O estabelecimento. | |
clienteId | identificador (UUID) ou nulo | O cliente do documento. | |
contactoNome | texto ou nulo | ||
contactoTelefone | texto ou nulo | ||
canal | uma de: «Balcao», «Telefone», «Recolha», «App», «Cacifo», «Contrato» | sim | |
urgenciaId | identificador (UUID) ou nulo | ||
observacoes | texto ou nulo | ||
itens | lista de objectos | sim | |
itens[].tipo | uma de: «Peca», «Saco» | sim | |
itens[].categoriaId | identificador (UUID) ou nulo | ||
itens[].tipoDeRoupaId | identificador (UUID) ou nulo | ||
itens[].descricao | texto | sim | A descrição. |
itens[].cor | uma de: «Branca», «Clara», «Escura» | sim | |
itens[].pesoKg | número ou nulo | ||
itens[].quantidadeDePecas | número inteiro ou nulo | ||
itens[].servicosIds | lista de identificador (UUID) | sim | |
itens[].estadoNaEntrada | texto ou nulo | ||
itens[].objectosEncontrados | texto ou nulo | ||
itens[].valorDeclarado | número ou nulo | ||
itens[].aceitouRisco | verdadeiro/falso | sim | |
itens[].instrucoes | texto ou nulo |
Resposta
Devolve 201 com o id do registo criado.
Erros específicos
IDEMPOTENCIA_CONFLITO — além dos gerais.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/ordens' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"canal": "Balcao",
"itens": [
{
"tipo": "Peca",
"descricao": "texto",
"cor": "Branca",
"servicosIds": [
"00000000-0000-0000-0000-000000000000"
],
"aceitouRisco": false
}
]
}'
/api/lavandaria/ordens/{id}#Uma ordem de serviço completa, com as peças e o seu percurso.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/ordens/<id>' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/ordens/{id}/cancelar#Cancela uma ordem, com motivo.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · MotivoPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
motivo | texto | sim |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/ordens/<id>/cancelar' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"motivo": "texto"
}'
/api/lavandaria/ordens/{id}/levantamento/preparacao#O que se cobraria agora por estas peças, calculado pelo mesmo caminho que a emissão (IVA, retenções, promoções e arredondamento incluídos).
itensIds indica as peças. Quem cobra deve cobrar este valor, com IVA, e nunca a soma dos preços das peças. Não emite nada nem altera a ordem.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
itensIds | na pesquisa | lista de identificador (UUID) | sim |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/ordens/<id>/levantamento/preparacao' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/ordens/{id}/levantamento#O levantamento: o cliente leva as peças que estão prontas (todas ou só algumas) e paga.
Emite-se um documento pelo mesmo comando do «Novo documento»: factura/recibo se se paga no acto, factura (conta corrente) se não há pagamentos e o cliente a tem. As linhas juntam-se por serviço e preço. O documento e a entrega das peças fazem-se na mesma transacção.
entregaId é a identificação do levantamento (repetir com o mesmo valor devolve a mesma entrega), itensIds as peças, pagamentos os pagamentos e levantadoPor quem levanta.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · LevantamentoPedido)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
entregaId | identificador (UUID) | sim | |
itensIds | lista de identificador (UUID) ou nulo | ||
pagamentos | lista de objectos ou nulo | ||
pagamentos[].metodoPagamentoId | identificador (UUID) | sim | O método de pagamento. |
pagamentos[].valor | número | sim | O valor. |
levantadoPor | texto ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/ordens/<id>/levantamento' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"entregaId": "00000000-0000-0000-0000-000000000000"
}'
/api/lavandaria/ordens/{id}/abandonar#Marca uma ordem pronta e não levantada como abandonada, com o destino dado à roupa.
Só existe se a empresa activou a política de abandono, só depois de passados os dias definidos e só com a aprovação do gerente. A dívida continua registada na ordem; nada se apaga.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · DestinoPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
destino | texto ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/ordens/<id>/abandonar' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{}'
/api/lavandaria/prazo#Quando ficaria pronta uma encomenda assim, antes de a gravar.
servicosIds (um ou mais), urgenciaId, pesoKg e lojaId. O balcão mostra o prazo ao cliente enquanto escolhe os serviços e a urgência.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
servicosIds | na pesquisa | lista de identificador (UUID) | sim |
lojaId | na pesquisa | identificador (UUID) | |
urgenciaId | na pesquisa | identificador (UUID) | |
pesoKg | na pesquisa | número |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/prazo' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/pecas/{codigo}#Procura uma peça pela etiqueta: onde está, em que ordem e o que lhe aconteceu.
É a resposta à pergunta «onde está a minha camisa?».
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
codigo | no caminho | texto | sim |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/pecas/<codigo>' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/pecas/avancar#Faz avançar a peça para a fase seguinte da sua rota.
Indica a peça por itemId ou por codigo (a etiqueta). Com porLeitura regista-se como leitura da etiqueta; sem ela, como movimento manual no quadro.
Corpo do pedido (JSON · AvancarPedido)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
itemId | identificador (UUID) ou nulo | ||
codigo | texto ou nulo | O código curto. | |
porLeitura | verdadeiro/falso | sim | |
nota | texto ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/pecas/avancar' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"porLeitura": false
}'
/api/lavandaria/pecas/qualidade/aprovar#Aprova a qualidade e arruma a peça: fica pronta, com a posição onde está (prateleira, cabide, cacifo).
Quando é a última peça, a ordem fica pronta e o cliente é avisado. Indica a peça por itemId ou codigo; localizacao é a posição.
Corpo do pedido (JSON · AprovarPedido)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
itemId | identificador (UUID) ou nulo | ||
codigo | texto ou nulo | O código curto. | |
localizacao | texto ou nulo | Onde fica o armazém. |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/pecas/qualidade/aprovar' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{}'
/api/lavandaria/pecas/qualidade/reprovar#Reprova a peça na qualidade.
destino é a fase a que volta (Triagem, Lavagem, Secagem ou Acabamento) e motivo é obrigatório. Com tentativas disponíveis volta à fase indicada, sem custo para o cliente; esgotadas, fica «não recuperável» e abre-se um incidente automaticamente.
Corpo do pedido (JSON · ReprovarPedido)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
itemId | identificador (UUID) ou nulo | ||
codigo | texto ou nulo | O código curto. | |
destino | uma de: «Triagem», «Lavagem», «Secagem», «Acabamento», «Qualidade», «Pronta», «Entregue», «NaoRecuperavel», «Perdida», «Cancelada» | sim | |
motivo | texto ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/pecas/qualidade/reprovar' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"destino": "Triagem"
}'
/api/lavandaria/pecas/{itemId}/peso-de-saida#Regista o peso da roupa à saída e diz se a diferença para a entrada passa a tolerância.
kg. A diferença pode dever-se a roupa trocada, humidade ou perda.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
itemId | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · PesoPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
kg | número | sim |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/pecas/<itemId>/peso-de-saida' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"kg": 0
}'
/api/lavandaria/pecas/{itemId}/peso-de-entrada#Corrige o peso de entrada de um saco pesado mal, antes de entrar em produção.
kg. Refaz o preço dos serviços por quilo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
itemId | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · PesoPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
kg | número | sim |
Pedido
curl -X PUT 'https://<endereço-da-API>/api/lavandaria/pecas/<itemId>/peso-de-entrada' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Content-Type: application/json' \
-d '{
"kg": 0
}'
/api/lavandaria/pecas/{itemId}/fotos#Anexa uma fotografia a uma peça.
Envio de ficheiro (multipart/form-data): a fotografia vai no campo ficheiro e o momento (Entrada, Saida ou Incidente) é obrigatório.
Um ficheiro vazio, ou que exceda o limite de tamanho, é recusado.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
itemId | no caminho | identificador (UUID) | sim |
momento | na pesquisa | uma de: «Entrada», «Saida», «Incidente» | sim |
Resposta
Devolve 201 com o id do registo criado.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/pecas/<itemId>/fotos' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/fotos/{id}#Descarrega uma fotografia de uma peça.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Resposta
Devolve 200 com a imagem.
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/fotos/<id>' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/quadro#O quadro de produção: uma coluna por fase (triagem, lavagem, secagem, acabamento, qualidade, pronta) com as peças que lá estão, as atrasadas primeiro.
Cada coluna mostra um número limitado de cartões, mas diz o total. lojaId é opcional quando a chave só tem um estabelecimento.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
lojaId | na pesquisa | identificador (UUID) |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/quadro' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/lotes/fila#As peças à espera de entrar num lote, numa fase.
fase (por omissão Lavagem). lojaId é opcional quando a chave só tem um estabelecimento.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
fase | na pesquisa | uma de: «Triagem», «Lavagem», «Secagem», «Acabamento», «Qualidade», «Pronta», «Entregue», «NaoRecuperavel», «Perdida», «Cancelada» | |
lojaId | na pesquisa | identificador (UUID) |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/lotes/fila' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/lotes/sugestao#Propõe lotes para as máquinas livres do tipo certo.
É só uma proposta: nada se grava até o lote ser fechado. fase (por omissão Lavagem). lojaId é opcional quando a chave só tem um estabelecimento.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
fase | na pesquisa | uma de: «Triagem», «Lavagem», «Secagem», «Acabamento», «Qualidade», «Pronta», «Entregue», «NaoRecuperavel», «Perdida», «Cancelada» | |
lojaId | na pesquisa | identificador (UUID) |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/lotes/sugestao' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/lotes#Os lotes em máquinas.
Filtros: estado (EmCiclo, Concluido ou Cancelado) e maximo (por omissão 50). lojaId é opcional quando a chave só tem um estabelecimento.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
lojaId | na pesquisa | identificador (UUID) | |
estado | na pesquisa | uma de: «EmCiclo», «Concluido», «Cancelado», «null» | |
maximo | na pesquisa | número inteiro |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/lotes' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/lotes#Fecha um lote: a máquina entra em ciclo e as peças passam à fase do lote.
maquinaId, fase, itensIds e nota. Confere a compatibilidade e a capacidade: um lote montado à mão não escapa às regras. Devolve 201 com o lote.
Corpo do pedido (JSON · FecharLoteCommand)
| Campo | Tipo | Obrigatório |
|---|---|---|
maquinaId | identificador (UUID) | sim |
fase | uma de: «Triagem», «Lavagem», «Secagem», «Acabamento», «Qualidade», «Pronta», «Entregue», «NaoRecuperavel», «Perdida», «Cancelada» | sim |
itensIds | lista de identificador (UUID) | sim |
nota | texto ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/lotes' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"maquinaId": "00000000-0000-0000-0000-000000000000",
"fase": "Triagem",
"itensIds": [
"00000000-0000-0000-0000-000000000000"
]
}'
/api/lavandaria/lotes/{id}/terminar#Termina o ciclo: a máquina fica livre e as peças avançam para a fase seguinte da sua rota.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/lotes/<id>/terminar' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/lotes/{id}/parar#Pára um lote em ciclo sem avaria (por exemplo, uma peça posta por engano): as peças voltam à fila e a máquina fica livre.
motivo é obrigatório.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · MotivoPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
motivo | texto | sim |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/lotes/<id>/parar' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"motivo": "texto"
}'
/api/lavandaria/incidentes#Os incidentes (peça perdida, trocada, danificada…).
Filtros: estado (Aberto ou Resolvido), ordemId e maximo (por omissão 100).
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
estado | na pesquisa | uma de: «Aberto», «Resolvido», «null» | |
ordemId | na pesquisa | identificador (UUID) | |
maximo | na pesquisa | número inteiro |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/incidentes' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/incidentes#Abre um incidente numa ordem ou numa peça.
tipo: Perdida, Trocada, Danificada, NodoaNaoSaiu, Atraso, ObjectoEstranho ou Outro. Com darComoPerdida, a peça deixa de contar para a entrega.
Corpo do pedido (JSON · AbrirIncidenteCommand)
| Campo | Tipo | Obrigatório | Significado |
|---|---|---|---|
ordemId | identificador (UUID) | sim | |
itemId | identificador (UUID) ou nulo | ||
tipo | uma de: «Perdida», «Trocada», «Danificada», «NodoaNaoSaiu», «Atraso», «ObjectoEstranho», «Outro» | sim | |
descricao | texto | sim | A descrição. |
darComoPerdida | verdadeiro/falso | sim |
Resposta
Devolve 201 com o id do registo criado.
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/incidentes' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"ordemId": "00000000-0000-0000-0000-000000000000",
"tipo": "Perdida",
"descricao": "texto",
"darComoPerdida": false
}'
/api/lavandaria/incidentes/{id}/resolver#Resolve um incidente: reprocessar, reparar, indemnizar ou sem razão.
resolucao: Reprocessar (a peça pronta volta à produção sem custo), Reparar, Indemnizar ou SemRazao. A indemnização só a aprova o gerente. A nota de crédito ou o pagamento da indemnização emitem-se pelo núcleo, no documento que corresponde; este registo guarda a decisão e o valor aprovado.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Corpo do pedido (JSON · ResolverPedido)
| Campo | Tipo | Obrigatório |
|---|---|---|
resolucao | uma de: «Reprocessar», «Reparar», «Indemnizar», «SemRazao» | sim |
detalhe | texto ou nulo | |
valorDaIndemnizacao | número ou nulo | |
custoInterno | número ou nulo | |
destinoDoReprocessamento | uma de: «Triagem», «Lavagem», «Secagem», «Acabamento», «Qualidade», «Pronta», «Entregue», «NaoRecuperavel», «Perdida», «Cancelada» ou nulo |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/incidentes/<id>/resolver' \
-H 'X-Api-Key: <a-sua-chave>' \
-H 'Idempotency-Key: <um-GUID-novo>' \
-H 'Content-Type: application/json' \
-d '{
"resolucao": "Reprocessar"
}'
/api/lavandaria/notificacoes#As mensagens da lavandaria aos clientes, com o canal, o texto e o resultado.
Filtros: estado (Pendente, Enviada ou Falhou), canal (Email ou WhatsAppLigacao), ordemId e maximo (por omissão 100).
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
estado | na pesquisa | uma de: «Pendente», «Enviada», «Falhou», «null» | |
canal | na pesquisa | uma de: «Email», «WhatsAppLigacao», «null» | |
ordemId | na pesquisa | identificador (UUID) | |
maximo | na pesquisa | número inteiro |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/notificacoes' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/notificacoes/{id}/enviada#Marca uma mensagem como enviada (o balcão abriu a ligação de WhatsApp e enviou-a).
A plataforma não envia mensagens de WhatsApp em nome de ninguém: deixa a mensagem pronta e a ligação.
Devolve 204, sem corpo.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
id | no caminho | identificador (UUID) | sim |
Pedido
curl -X POST 'https://<endereço-da-API>/api/lavandaria/notificacoes/<id>/enviada' \
-H 'X-Api-Key: <a-sua-chave>'
/api/lavandaria/painel#O painel do gerente: a produção do dia, o prazo cumprido, o dinheiro parado em roupa por levantar, a não-qualidade e as máquinas.
lojaId é opcional quando a chave só tem um estabelecimento.
Parâmetros
| Nome | Onde | Tipo | Obrigatório |
|---|---|---|---|
lojaId | na pesquisa | identificador (UUID) |
Pedido
curl 'https://<endereço-da-API>/api/lavandaria/painel' \
-H 'X-Api-Key: <a-sua-chave>'