Repository navigation
API publica
Rótulo: Referência TL;DR: Lista consolidada dos endpoints HTTP das 3 APIs. Para schema interativo, abra o Scalar de cada serviço. Última revisão: 2026-05-18
Em dev local:
- OS → http://localhost:5016/scalar (ou
:8081/scalarvia Compose) - Cadastros → http://localhost:8082/scalar (Compose)
- Pagamentos → http://localhost:5017/scalar (ou
:8083/scalarvia Compose)
Em produção: bloqueado externamente; acesse via kubectl port-forward.
Base: /api/ordens-de-servico
| Método | Rota | Auth | Descrição |
|---|---|---|---|
POST |
/ |
admin | Criar OS (202) |
GET |
/{id} |
client/admin | Buscar OS |
GET |
/ |
client/admin | Listar OS (paginado) |
GET |
/status/{status} |
client/admin | Listar OS por status |
POST |
/{id}/produtos |
admin | Adicionar produto (202) |
DELETE |
/{id}/produtos/{produtoId} |
admin | Remover produto (202) |
POST |
/{id}/servicos |
admin | Adicionar serviço (202) |
DELETE |
/{id}/servicos/{servicoId} |
admin | Remover serviço (202) |
PATCH |
/{id}/avancar |
admin | Avançar etapa (202) |
PATCH |
/{id}/reverter |
admin | Reverter etapa (202) |
PATCH |
/{id}/cancelar |
admin | Cancelar (202) |
| Método | Rota | Auth | Descrição |
|---|---|---|---|
POST |
/api/clientes |
admin | Criar cliente |
GET |
/api/clientes/{id} |
admin / M2M | Buscar cliente |
GET |
/api/clientes |
admin | Listar |
PATCH |
/api/clientes/{id} |
admin | Atualizar |
DELETE |
/api/clientes/{id} |
admin | Soft delete |
POST |
/api/produtos |
admin | Criar produto |
GET |
/api/produtos/{id} |
admin | Buscar produto |
POST |
/api/webhooks/orcamentos/{token} |
público + HMAC | Aprovar/rejeitar orçamento |
| Método | Rota | Auth | Descrição |
|---|---|---|---|
POST |
/api/pagamentos |
admin | Solicitar geração (202) |
GET |
/api/pagamentos/{id} |
client/admin | Buscar pagamento |
GET |
/api/pagamentos/{id}/status |
admin | Forçar consulta MP (debug) |
POST |
/api/webhooks/mercadopago |
público + HMAC | Callback do Mercado Pago |
Rota via API Gateway: POST /oauth2/token (não-autenticado).
Ver Lambda CognitoToken.
Ver Endpoints de health-check.
Endpoints de mutação retornam 202 Accepted — o trabalho é enfileirado, o cliente deve polar para ver o resultado. Ver Para integradores externos.
🔧 Mecânica Hermes — Tech Challenge 13SOAT (FIAP) · Wiki pública, não inclua credenciais · Editar a Wiki · Plano editorial
🏠 Home
📖 Visão geral
🧭 Como usar a Wiki
🚀 Início rápido
🏛️ Arquitetura
Padrões transversais
- Clean Architecture + DDD + CQRS
- Result Pattern
- State Pattern
- SAGA com MassTransit
- Outbox transacional
- Idempotência cross-service
- DLQ observability
Mensageria
Persistência
Segurança
- Autenticação Cognito + JWT
- Autorização por scopes
- M2M Client Credentials
- Webhooks assinados (HMAC)
- Modelo de ameaças
🔁 Fluxos de negócio
- Caminho feliz
- Orçamento rejeitado
- Pagamento recusado e recriado
- Pagamento expirado
- Cancelamento em execução
- Cancelamento em aguardando pagamento
- Idempotência de webhook
- Proteção por timeout da SAGA
🛠️ Infraestrutura e deploy
- Diagrama AWS completo
- Provisionamento (Terraform)
- Cluster Kubernetes
- API Gateway + VPC Link
- Cognito
- Lambda CognitoToken
- Bancos de dados
- RabbitMQ
- Pipelines GitHub Actions
📊 Observabilidade
- Visão geral
- Logs
- Métricas de negócio
- Métricas de mensageria
- Traces distribuídos
- Dashboards e alertas
🧪 Qualidade
🚨 Operação
- Runbook macro
- Runbook — Ordem de Serviço
- Runbook — Cadastros
- Runbook — Pagamentos
- Resposta a incidentes
- Forçar limpeza de namespace
🧩 SDK compartilhado
👥 Contribuição
📚 Referência
🧠 Decisões