📡 Lista Completa de Endpoints - ecosif-compliance
📋 Visão Geral
Este documento lista todos os endpoints REST disponíveis no serviço ecosif-compliance, especializado em validação de conformidade contábil.
Base URL: http://localhost:8021
Swagger UI: http://localhost:8021/docs/
🏷️ Tags
Os endpoints estão organizados nas seguintes categorias:
- Regras - Gerenciamento de regras de validação
- Validação - Execução de validações
- Consultas - Consultas de dados auxiliares
- Processos - Histórico de execuções
📋 Regras
Listar Regras
- Método:
GET - URL:
/api/compliance/rule/list - Descrição: Retorna lista de todas as regras de validação cadastradas.
- Autenticação: Não requerida (pode variar por ambiente)
- Response: Lista de regras em JSON
- Exemplo:
json [ { "id": 1, "name": "Regra de Validação de Saldo", "description": "..." } ]
Adicionar Regra
- Método:
POST - URL:
/api/compliance/rule/add - Descrição: Adiciona uma nova regra de validação.
- Autenticação: Não requerida (pode variar por ambiente)
- Content-Type:
application/x-www-form-urlencoded - Parâmetros:
cluetypeid(int, obrigatório) - ID do tipo de indíciobusinesssystemid(int, obrigatório) - ID do sistema de negócioname(string, obrigatório) - Nome da regradocuments(JSON array, obrigatório) - Lista de IDs de documentosbasebegin(string, obrigatório) - Data base início (YYYY-MM)baseend(string, opcional) - Data base fim (YYYY-MM)description(string, opcional) - Descrição da regravaliditybegin(string, obrigatório) - Validade inicial (YYYY-MM-DD)validityend(string, opcional) - Validade final (YYYY-MM-DD)script(string, opcional) - Script DSL de validação- Response: Regra criada em JSON
Atualizar Regra
- Método:
POST - URL:
/api/compliance/rule/update - Descrição: Atualiza uma regra de validação existente.
- Autenticação: Não requerida (pode variar por ambiente)
- Content-Type:
application/x-www-form-urlencoded - Parâmetros: (mesmos de adicionar regra)
- Response: Regra atualizada em JSON
✅ Validação
Executar Validação
- Método:
POST - URL:
/api/compliance/run - Descrição: Executa validação de conformidade para documentos contábeis.
- Autenticação: Não requerida (pode variar por ambiente)
- Content-Type:
application/x-www-form-urlencoded - Parâmetros:
refmonth(string, obrigatório) - Mês de referência (YYYY-MM)branchid(int, opcional) - ID da filial específicacompanyid(int, opcional) - ID da empresabranchfrom(string, opcional) - Filial inicial (com companyid)branchto(string, opcional) - Filial final (com companyid)documentid(int, opcional) - ID do documentodocumentcode(string, opcional) - Código do documento- Response: Resultado da validação com processos executados
Testar Regra
- Método:
POST - URL:
/api/compliance/test - Descrição: Testa uma regra de validação sem persistir resultado.
- Autenticação: Não requerida (pode variar por ambiente)
- Content-Type:
application/x-www-form-urlencoded - Parâmetros:
script(string, obrigatório) - Script DSL da regrarefmonth(string, obrigatório) - Mês de referência (YYYY-MM)- Response: Resultado do teste
🔍 Consultas
Listar Tipos de Indício
- Método:
GET - URL:
/api/compliance/cluetype/list - Descrição: Retorna lista de tipos de indício (classificações de problemas).
- Response: Lista de tipos de indício
Listar Sistemas de Negócio
- Método:
GET - URL:
/api/compliance/businesssystem/list - Descrição: Retorna lista de sistemas de negócio configurados.
- Response: Lista de sistemas de negócio
Listar Documentos
- Método:
GET - URL:
/api/compliance/document/list - Descrição: Retorna lista de documentos contábeis disponíveis para validação.
- Response: Lista de documentos
📊 Processos
Listar Resultados de Processos
- Método:
GET - URL:
/api/compliance/process/result/listou/api/compliance/process/result/list/<since>ou/api/compliance/process/result/list/<since>/<companyid> - Descrição: Retorna lista de processos de validação executados.
- Parâmetros:
since(string, opcional) - Data início (YYYY-MM) para filtrarcompanyid(int, opcional) - ID da empresa para filtrar- Response: Lista de processos executados
Obter Resultado de Processo
- Método:
GET - URL:
/api/compliance/process/result/get/<processid> - Descrição: Retorna detalhes de um processo de validação específico.
- Parâmetros:
processid(int, obrigatório) - ID do processo- Response: Detalhes do processo e resultados das regras
💚 Saúde
Health Check
- Método:
GET - URL:
/health - Descrição: Endpoint de verificação de saúde do serviço.
- Response:
json { "status": "healthy", "service": "ecosif-compliance", "version": "0.1.02.202509121", "timestamp": "2025-12-01T10:00:00" }
📝 DSL - Linguagem de Regras
O serviço utiliza uma DSL (Domain-Specific Language) customizada para definir regras de validação:
Funções Disponíveis
SALDO_CONTA(conta, data)- Retorna saldo de uma contaSOMA_SALDO_CONTAS([contas], data)- Soma saldos de múltiplas contasVARIACAO_SALDO(conta, data1, data2)- Variação de saldoDIFERENCA_PERCENTUAL_SALDOS(saldo1, saldo2)- Diferença percentual
Estruturas de Controle
IF condição THEN expressão ELSE expressãoRETORNA valor- Retorna sucessoERRO "mensagem"- Retorna erro
Exemplo de Script
IF SALDO_CONTA("1.1.01", "2025-11") > 1000000 THEN
ERRO "Saldo muito alto"
ELSE
RETORNA "OK"
🔐 Autenticação
Atualmente o serviço não requer autenticação, mas em produção deve ser integrado com o sistema de autenticação do eCosif (JWT).
📊 Códigos de Status HTTP
| Código | Descrição |
|---|---|
200 |
OK - Requisição bem-sucedida |
400 |
Bad Request - Dados inválidos |
500 |
Internal Server Error - Erro interno |
503 |
Service Unavailable - Serviço indisponível (health check) |
Última Atualização: 2025-12-01