Lista de Endpoints - ecosif-masterdata

Base URL

Nota: Todos os endpoints (exceto /actuator/** e /swagger-ui/**) requerem autenticação JWT.


🏢 Empresas (Company)

POST /company

Cria uma nova empresa.

Autenticação: Requerida (Bearer Token)

Body:

{
  "name": "Nome da Empresa",
  "cnpj": "12345678000190",
  "zipCode": "01310100"
}

Response: 201 Created - CompanyDTO


GET /companies

Lista todas as empresas do sistema.

Autenticação: Requerida

Response: 200 OK - List


GET /usercompanies

Lista empresas associadas ao usuário autenticado.

Autenticação: Requerida

Response: 200 OK - List


GET /companies/{id}

Obtém uma empresa por ID.

Autenticação: Requerida

Response: 200 OK - CompanyDTO


GET /companies/bycompany/{company}

Obtém empresa por código da empresa.

Autenticação: Requerida

Response: 200 OK - CompanyDTO


PUT /companies/{id}

Atualiza uma empresa existente.

Autenticação: Requerida

Body: CompanyDTO

Response: 200 OK - CompanyDTO


DELETE /companies/{id}

Exclui uma empresa.

Autenticação: Requerida

Response: 200 OK


GET /companies/cnpj/{cnpj}

Consulta dados de CNPJ via API externa.

Autenticação: Requerida

Response: 200 OK - Dados do CNPJ


GET /companies/cep/{zipCode}

Consulta CEP via API externa.

Autenticação: Requerida

Response: 200 OK - Dados do CEP


🏢 Filiais (Branch)

POST /branch

Cria uma nova filial.

Autenticação: Requerida

Body: BranchDTO

Response: 201 Created - BranchDTO


GET /allbranch/{company}

Lista todas as filiais de uma empresa.

Autenticação: Requerida

Response: 200 OK - List


GET /branch/{id}

Obtém uma filial por ID.

Autenticação: Requerida

Response: 200 OK - BranchDTO


GET /branch/bybranch/{branch}

Obtém filial por código.

Autenticação: Requerida

Response: 200 OK - BranchDTO


GET /companybranch/{company}

Lista filiais de uma empresa com detalhes.

Autenticação: Requerida

Response: 200 OK - List


GET /allbranch

Lista todas as filiais do sistema.

Autenticação: Requerida

Response: 200 OK - List


PUT /branch/{id}

Atualiza uma filial.

Autenticação: Requerida

Body: BranchDTO

Response: 200 OK - BranchDTO


DELETE /branch/{id}

Exclui uma filial.

Autenticação: Requerida

Response: 200 OK


📊 Plano de Contas (Chart of Accounts)

POST /chartOfAccounts

Cria uma nova conta no plano de contas.

Autenticação: Requerida

Query Params: confirmed (boolean, opcional, padrão: false)

Body: ChartOfAccountsDTO

Response: 201 Created - ChartOfAccountsDTO


GET /chartOfAccounts/

Lista todas as contas do plano de contas.

Autenticação: Requerida

Response: 200 OK - List


GET /chartOfAccounts/detail/

Lista contas com detalhes.

Autenticação: Requerida

Response: 200 OK - List


GET /chartOfAccounts/getNrChildren/{company}/{branch}

Obtém número de filhos de uma conta.

Autenticação: Requerida

Response: 200 OK - Integer


GET /chartOfAccounts/getallcoa/{company}/{branch}

Lista todas as contas de uma empresa/filial.

Autenticação: Requerida

Response: 200 OK - List


GET /chartOfAccounts/{id}

Obtém uma conta por ID.

Autenticação: Requerida

Response: 200 OK - ChartOfAccountsDTO


PUT /chartOfAccounts/{id}

Atualiza uma conta.

Autenticação: Requerida

Body: ChartOfAccountsDTO

Response: 200 OK - ChartOfAccountsDTO


DELETE /chartOfAccounts/{id}

Exclui uma conta (apenas se não tiver filhos ou lançamentos).

Autenticação: Requerida

Response: 200 OK


📅 Calendário (Calendar)

POST /calendar/{company}/{branch}

Cria ou atualiza calendário para uma empresa/filial.

Autenticação: Requerida

Body: CalendarDTO

Response: 201 Created - CalendarDTO


GET /calendar/{company}/{branch}/{month}/{year}

Obtém calendário de um mês específico.

Autenticação: Requerida

Response: 200 OK - List


GET /calendar/monthclosed/{company}/{branch}/{month}/{year}

Verifica se o mês está fechado.

Autenticação: Requerida

Response: 200 OK - Boolean


GET /calendar/isDayAvailable/{company}/{branch}/{day}/{month}/{year}

Verifica se um dia está disponível para lançamentos.

Autenticação: Requerida

Response: 200 OK - Boolean


GET /calendar/closeday/{company}/{branch}

Obtém dias fechados.

Autenticação: Requerida

Response: 200 OK - List


GET /calendar/hasEntries/{company}/{branch}/{day}/{month}/{year}

Verifica se há lançamentos em um dia.

Autenticação: Requerida

Response: 200 OK - Boolean


📝 Documentos (Document)

POST /document

Cria um novo documento.

Autenticação: Requerida

Body: DocumentDTO

Response: 201 Created - DocumentDTO


GET /alldocument/{batchId}

Lista todos os documentos de um lote.

Autenticação: Requerida

Response: 200 OK - List


GET /document/{id}

Obtém um documento por ID.

Autenticação: Requerida

Response: 200 OK - DocumentDTO


DELETE /document/{id}

Exclui um documento.

Autenticação: Requerida

Response: 200 OK


GET /documentsummary/{batchId}

Obtém resumo de documentos de um lote.

Autenticação: Requerida

Response: 200 OK - DocumentSummaryDTO


📋 Lançamentos (Entry)

POST /entry

Cria um novo lançamento contábil.

Autenticação: Requerida

Body: EntryDTO

Response: 201 Created - EntryDTO


GET /allentry/{documentId}

Lista todos os lançamentos de um documento.

Autenticação: Requerida

Response: 200 OK - List


GET /entry/{id}

Obtém um lançamento por ID.

Autenticação: Requerida

Response: 200 OK - EntryDTO


GET /entry/all

Lista todos os lançamentos (com paginação).

Autenticação: Requerida

Response: 200 OK - List


GET /entrysummary/{batchId}

Obtém resumo de lançamentos de um lote.

Autenticação: Requerida

Response: 200 OK - EntrySummaryDTO


DELETE /entry/{id}

Exclui um lançamento.

Autenticação: Requerida

Response: 200 OK


📦 Lotes (Batch)

POST /batch

Cria um novo lote contábil.

Autenticação: Requerida

Body: BatchDTO

Response: 201 Created - BatchDTO


GET /allbatch/{company}/{branch}

Lista todos os lotes de uma empresa/filial.

Autenticação: Requerida

Response: 200 OK - List


GET /batch/{id}

Obtém um lote por ID.

Autenticação: Requerida

Response: 200 OK - BatchDTO


GET /batchsummary/{company}/{branch}

Obtém resumo de lotes.

Autenticação: Requerida

Response: 200 OK - BatchSummaryDTO


DELETE /batch/{id}

Exclui um lote.

Autenticação: Requerida

Response: 200 OK


📜 Históricos (History)

POST /history

Cria um novo histórico padrão.

Autenticação: Requerida

Body: HistoryDTO

Response: 201 Created - HistoryDTO


GET /history/

Lista todos os históricos.

Autenticação: Requerida

Response: 200 OK - List


GET /history/{id}

Obtém um histórico por ID.

Autenticação: Requerida

Response: 200 OK - HistoryDTO


PUT /history/{id}

Atualiza um histórico.

Autenticação: Requerida

Body: HistoryDTO

Response: 200 OK - HistoryDTO


DELETE /history/{id}

Exclui um histórico.

Autenticação: Requerida

Response: 200 OK


🏷️ Grupos (Group)

POST /group

Cria um novo grupo.

Autenticação: Requerida

Body: GroupDTO

Response: 201 Created - GroupDTO


GET /group/getall

Lista todos os grupos.

Autenticação: Requerida

Response: 200 OK - List


GET /group/{id}

Obtém um grupo por ID.

Autenticação: Requerida

Response: 200 OK - GroupDTO


DELETE /group/{id}

Exclui um grupo.

Autenticação: Requerida

Response: 200 OK


🔄 Consolidação (Consolidation)

POST /runconsolidation

Executa processo de consolidação contábil.

Autenticação: Requerida

Body: ConsolidationDTO

Response: 200 OK - GenericResponse

Nota: Operação assíncrona que pode levar tempo.


🔧 Configurações

Opções da Empresa (Company Options)

POST /company/options

Cria opções de empresa.

Autenticação: Requerida

Body: CompanyOptionsDTO

Response: 201 Created - CompanyOptionsDTO


GET /company/options/

Lista todas as opções.

Autenticação: Requerida

Response: 200 OK - List


GET /company/options/{id}

Obtém opções por ID.

Autenticação: Requerida

Response: 200 OK - CompanyOptionsDTO


GET /company/options/company/{company}/{branch}

Obtém opções de uma empresa/filial específica.

Autenticação: Requerida

Response: 200 OK - CompanyOptionsDTO


PUT /company/options/{id}

Atualiza opções.

Autenticação: Requerida

Body: CompanyOptionsDTO

Response: 200 OK - CompanyOptionsDTO


DELETE /company/options/{id}

Exclui opções.

Autenticação: Requerida

Response: 200 OK


Configurações de Fechamento (Closure Settings)

POST /closuresettings

Cria configurações de fechamento.

Autenticação: Requerida

Body: ClosureSettingsDTO

Response: 201 Created - ClosureSettingsDTO


GET /closuressetting/all

Lista todas as configurações de fechamento.

Autenticação: Requerida

Response: 200 OK - List


GET /closuresettings/{id}

Obtém configurações por ID.

Autenticação: Requerida

Response: 200 OK - ClosureSettingsDTO


GET /closuressettings/company-and-branch/{company}/{branch}

Obtém configurações de uma empresa/filial.

Autenticação: Requerida

Response: 200 OK - ClosureSettingsDTO


PUT /closuresettings/{id}

Atualiza configurações.

Autenticação: Requerida

Body: ClosureSettingsDTO

Response: 200 OK - ClosureSettingsDTO


DELETE /closuresettings/{id}

Exclui configurações.

Autenticação: Requerida

Response: 200 OK


Configurações de Fundo (Fund Settings)

POST /fund/settings

Cria configurações de fundo.

Autenticação: Requerida

Body: FundSettingsDTO

Response: 201 Created - FundSettingsDTO


GET /fund/settings/

Lista todas as configurações de fundo.

Autenticação: Requerida

Response: 200 OK - List


GET /fund/settings/{id}

Obtém configurações por ID.

Autenticação: Requerida

Response: 200 OK - FundSettingsDTO


PUT /fund/settings/{id}

Atualiza configurações.

Autenticação: Requerida

Body: FundSettingsDTO

Response: 200 OK - FundSettingsDTO


DELETE /fund/settings/{id}

Exclui configurações.

Autenticação: Requerida

Response: 200 OK


Tipo de Fundo (Fund Type)

POST /fundType

Cria um novo tipo de fundo.

Autenticação: Requerida

Body: FundTypeDTO

Response: 201 Created - FundTypeDTO


GET /fundType/

Lista todos os tipos de fundo.

Autenticação: Requerida

Response: 200 OK - List


GET /fundType/{id}

Obtém tipo de fundo por ID.

Autenticação: Requerida

Response: 200 OK - FundTypeDTO


PUT /fundType/{id}

Atualiza tipo de fundo.

Autenticação: Requerida

Body: FundTypeDTO

Response: 200 OK - FundTypeDTO


DELETE /fundType/{id}

Exclui tipo de fundo.

Autenticação: Requerida

Response: 200 OK


📋 Rotinas (Routine)

POST /routine

Cria uma nova rotina.

Autenticação: Requerida

Body: RoutineDTO

Response: 201 Created - RoutineDTO


GET /routine

Lista todas as rotinas.

Autenticação: Requerida

Response: 200 OK - List


PUT /routine/{id}

Atualiza uma rotina.

Autenticação: Requerida

Body: RoutineDTO

Response: 200 OK - RoutineDTO


DELETE /routine/{id}

Exclui uma rotina.

Autenticação: Requerida

Response: 200 OK


🔐 Acesso a Rotinas (Routine Access)

POST /access

Cria acesso de usuário/grupo a uma rotina.

Autenticação: Requerida

Body: RoutineAccessDTO

Response: 201 Created - RoutineAccessDTO


GET /access/{routineId}

Lista acessos de uma rotina.

Autenticação: Requerida

Response: 200 OK - List


PUT /access/{id}

Atualiza acesso.

Autenticação: Requerida

Body: RoutineAccessDTO

Response: 200 OK - RoutineAccessDTO


DELETE /access/{id}

Exclui acesso.

Autenticação: Requerida

Response: 200 OK


📊 Abertura de Mês (Month Opening)

POST /monthOpening/{company}/{branch}

Abre um novo mês contábil.

Autenticação: Requerida

Body: MonthOpeningDTO

Response: 201 Created - MonthOpeningDTO


GET /monthOpening/{company}/{branch}

Obtém informações de abertura de mês.

Autenticação: Requerida

Response: 200 OK - MonthOpeningDTO


📈 Cálculo de Cota (Quota Calculation)

POST /quotacalculation/

Cria configuração de cálculo de cota.

Autenticação: Requerida

Body: QuotaCalculationConfigurationDTO

Response: 201 Created - QuotaCalculationConfigurationDTO


GET /quotacalculation/{company}/{branch}

Obtém configuração de cálculo de cota.

Autenticação: Requerida

Response: 200 OK - QuotaCalculationConfigurationDTO


GET /quotacalculation/all

Lista todas as configurações.

Autenticação: Requerida

Response: 200 OK - List


📊 Taxa de Cota (Tax Quota Calculation)

GET /taxquotacalculation/{company}/{branch}

Obtém cálculo de taxa de cota.

Autenticação: Requerida

Response: 200 OK - TaxQuotaCalculationDTO


📋 Planos de Contas de Referência

POST /referenceChartOfAccounts

Cria plano de contas de referência.

Autenticação: Requerida

Body: ReferenceChartOfAccountsDTO

Response: 201 Created - ReferenceChartOfAccountsDTO


GET /referenceChartOfAccounts/all

Lista todos os planos de referência.

Autenticação: Requerida

Response: 200 OK - List


GET /referenceChartOfAccounts/{planRef_uuid}

Obtém plano por UUID.

Autenticação: Requerida

Response: 200 OK - ReferenceChartOfAccountsDTO


PUT /referenceChartOfAccounts/{planRef_uuid}

Atualiza plano.

Autenticação: Requerida

Body: ReferenceChartOfAccountsDTO

Response: 200 OK - ReferenceChartOfAccountsDTO


DELETE /referenceChartOfAccounts/{planRef_uuid}

Exclui plano.

Autenticação: Requerida

Response: 200 OK


📝 Detalhes de Planos de Referência

POST /referenceChartOfAccountsDetails

Cria detalhe de plano de referência.

Autenticação: Requerida

Body: ReferenceChartOfAccountsDetailsDTO

Response: 201 Created - ReferenceChartOfAccountsDetailsDTO


GET /referenceChartOfAccountsDetails/all

Lista todos os detalhes.

Autenticação: Requerida

Response: 200 OK - List


GET /referenceChartOfAccountsDetails/{accountRef_uuid}

Obtém detalhe por UUID.

Autenticação: Requerida

Response: 200 OK - ReferenceChartOfAccountsDetailsDTO


PUT /referenceChartOfAccountsDetails/{accountRef_uuid}

Atualiza detalhe.

Autenticação: Requerida

Body: ReferenceChartOfAccountsDetailsDTO

Response: 200 OK - ReferenceChartOfAccountsDetailsDTO


DELETE /referenceChartOfAccountsDetails/{accountRef_uuid}

Exclui detalhe.

Autenticação: Requerida

Response: 200 OK


📄 Liberações Padrão (Standard Release)

GET /release/all

Lista todas as liberações padrão.

Autenticação: Requerida

Response: 200 OK - List


POST /release/{company}/{branch}

Cria liberação padrão para empresa/filial.

Autenticação: Requerida

Body: StandardReleaseDTO

Response: 201 Created - StandardReleaseDTO


GET /release/{company}/{branch}/{code}

Obtém liberação específica.

Autenticação: Requerida

Response: 200 OK - StandardReleaseDTO


PUT /release/{company}/{branch}

Atualiza liberação.

Autenticação: Requerida

Body: StandardReleaseDTO

Response: 200 OK - StandardReleaseDTO


DELETE /release/{id}

Exclui liberação.

Autenticação: Requerida

Response: 200 OK


📊 Dados de Liberação (Standard Release Data)

GET /releasedata/{company}/{branch}

Lista dados de liberação.

Autenticação: Requerida

Response: 200 OK - List


GET /releasedata/{company}/{branch}/{code}

Obtém dados específicos.

Autenticação: Requerida

Response: 200 OK - StandardReleaseDataDTO


POST /releasedata/

Cria dados de liberação.

Autenticação: Requerida

Body: StandardReleaseDataDTO

Response: 201 Created - StandardReleaseDataDTO


DELETE /releasedata/{id}

Exclui dados de liberação.

Autenticação: Requerida

Response: 200 OK


🔧 Administrativo (Admin)

GET /admin/docker-logs

Obtém logs de containers Docker.

Autenticação: Requerida

Query Params: - service (string, obrigatório): Nome do serviço - lines (integer, opcional, padrão: 100): Número de linhas

Response: 200 OK - DockerLogsResponse


GET /admin/docker-logs/services

Lista serviços disponíveis para logs.

Autenticação: Requerida

Response: 200 OK - AvailableServicesResponse


📊 Monitoramento (Actuator)

GET /actuator/health

Health check da aplicação.

Autenticação: Não requerida

Response: 200 OK - Health status


GET /actuator/info

Informações da aplicação.

Autenticação: Não requerida

Response: 200 OK - Info


GET /actuator/prometheus

Métricas Prometheus.

Autenticação: Não requerida

Response: 200 OK - Prometheus metrics


📚 Documentação

GET /swagger-ui.html

Interface Swagger UI.

Autenticação: Não requerida


GET /v3/api-docs

Especificação OpenAPI 3.0.

Autenticação: Não requerida

Response: 200 OK - OpenAPI JSON


🔑 Autenticação

Todos os endpoints protegidos requerem token JWT no header:

Authorization: Bearer <token>

Para obter o token, faça login no serviço ecosif-auth (porta 8080):

curl -X POST http://localhost:8080/api/auth/signin \
  -H "Content-Type: application/json" \
  -d '{
    "username": "admin",
    "password": "senha",
    "azure": false
  }'

📝 Observações

  1. Multi-tenancy: Muitos endpoints requerem parâmetros company e branch para isolamento de dados
  2. Validações: Endpoints validam regras de negócio antes de persistir
  3. Transações: Operações críticas são transacionais
  4. Permissões: Alguns endpoints verificam permissões do usuário

Para mais detalhes sobre cada endpoint, consulte a Documentação OpenAPI ou acesse o Swagger UI em http://localhost:8081/swagger-ui.html.