Catálogo de endpoints
Última atualização: 16/09/2026. 191 arquivos em backend/api/**.
Base: {APP_URL}/backend/api + path da tabela. Auth padrão: sessão
(cookie). CSRF: header X-CSRF-Token onde a coluna marca sim ou onde
o módulo (Tarefas/Comercial) exige em todo POST.
Legenda:
- Enforced: o PHP chama
backend_require_method(outros verbos → 405). - Flag: chave canônica quando o código a declara; “módulo / sessão” = auth do domínio sem uma única flag no arquivo fino.
- Super-admin bypassa flags via
backend_permission_user_can().
Contrato: ../api.md. OpenAPI: openapi.yaml. Matriz de autorização (subset): ../permissoes-matriz-endpoints.md.
Core
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /health.php | pública | não | — | Diagnóstico env + ping MySQL (has_db_password, sem vazar senha) |
Auth
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| POST | /auth/login.php | pública + rate limit | não | — | Login bcrypt, popula sessão |
| POST | /auth/forgot-password.php | pública | não | — | Envia e-mail de reset |
| POST | /auth/reset-password.php | token | não | — | Grava nova senha |
| GET/POST | /auth/logout.php | sessão | não | — | Destroi sessão |
| GET | /auth/csrf-token.php | sessão | emite | — | Devolve csrf_token |
| GET | /auth/permissoes.php | sessão | não | — | Revalida flags + hash SHA-256 |
| GET | /auth/white-label-id.php | sessão | não | — | white_label_id do operador |
Storage
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /storage/drive-health.php | sessão | não | admin / storage | Saude da service account Drive |
| GET | /storage/ver-arquivo.php | sessão | não | sessão | Proxy de arquivo (Drive ou disco) |
Dashboard
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /dashboard/bootstrap.php | sessão | não | dashboard.* | Payload inicial de KPIs/filtros |
| GET | /dashboard/contagem-proposta.php | sessão | não | dashboard.* | Contagem de propostas |
| GET | /dashboard/estabelecimentos-filtro.php | sessão | não | dashboard.* | Options de EC no filtro |
| GET | /dashboard/usuarios-filtro.php | sessão | não | dashboard.* | Options de usuários |
| GET | /dashboard/white-labels-filtro.php | sessão | não | dashboard.* | Options de WL (super-admin) |
| GET | /dashboard/top10-estabelecimentos-tpv-mes.php | sessão | não | dashboard.* | Ranking TPV do mês |
Usuários
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /usuarios/listar.php | sessão | não | usuarios.ver_todos / escopo | Lista colaboradores |
| GET | /usuarios/detalhes.php | sessão | não | módulo | Ficha do usuário |
| POST | /usuarios/salvar.php | sessão | rec. | usuarios.cadastrar | Cadastro (serviço de registration) |
| POST/PUT | /usuarios/atualizar.php | sessão | rec. | usuarios.editar | Atualiza cadastro |
| POST | /usuarios/atualizar-status.php | sessão | rec. | usuarios.aprovar / editar | Ativo / bloqueado / pendente |
| POST | /usuarios/excluir.php | sessão | rec. | usuarios.excluir | Exclusão |
| POST | /usuarios/validar-cadastro.php | sessão | rec. | módulo | Validação pré-save (CPF/e-mail) |
| GET/POST | /usuarios/taxas.php | sessão | rec. | taxas usuário | Custo efetivo do colaborador |
| GET/POST | /usuarios/taxas-mdr.php | sessão | rec. | taxas usuário | MDR do colaborador |
| GET | /usuarios/taxas-padrao.php | sessão | não | módulo | Defaults para herança |
Permissões
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /permissoes/usuarios.php | sessão | não | permissoes.* / admin.permissoes | Lista usuários p/ gestão |
| GET | /permissoes/buscar.php | sessão | não | idem + Política B | Catálogo + flags do alvo |
| POST | /permissoes/salvar.php | sessão | sim | idem | Persiste permissao_usuario |
| GET | /permissoes/listar-usuario.php | sessão | não | idem | Flags de um user_id |
| GET | /permissoes/buscar-escopo-white-label.php | sessão | não | WL escopo | Lê white_label_permissao |
| POST | /permissoes/salvar-escopo-white-label.php | sessão | sim | WL escopo | Grava delegação do tenant |
| GET | /permissoes/verificar-colaboradores.php | sessão | não | módulo | Gate de tela colaboradores |
| GET | /permissoes/verificar-estabelecimentos.php | sessão | não | módulo | Gate de tela EC |
| GET | /permissoes/verificar-terminais.php | sessão | não | módulo | Gate de tela terminais |
White Label
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /white-label/listar.php | sessão | não | white_label.* | Lista tenants |
| GET | /white-label/listar-ativos.php | sessão | não | módulo | Só ativos (selects) |
| GET | /white-label/listar-select.php | sessão | não | módulo | Options compactas |
| GET | /white-label/buscar.php | sessão | não | módulo | Ficha |
| POST | /white-label/salvar.php | sessão | rec. | white_label.cadastrar | Cria tenant + herança de taxas |
| POST | /white-label/atualizar.php | sessão | rec. | white_label.editar | Atualiza cadastro/branding |
| POST | /white-label/alterar-status.php | sessão | sim | white_label.editar | Ativa / inativa |
| POST | /white-label/excluir.php | sessão | sim | white_label.excluir | Exclui |
| GET/POST | /white-label/taxas.php | sessão | rec. | white_label.gerenciar_taxas | Taxas custo efetivo |
| GET/POST | /white-label/gestao-taxas.php | sessão | rec. | idem | Tela de gestão / MDR |
| GET | /white-label/buscar-cnpj.php | sessão | não | cadastrar | Lookup CNPJ |
| GET | /white-label/buscar-cep.php | sessão | não | cadastrar | ViaCEP |
| GET | /white-label/buscar-bancos.php | sessão | não | cadastrar | COMPE |
| POST | /white-label/corrigir-logotipos.php | sessão | rec. | editar | Repara paths de logo |
Planos
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /planos/listar-locais.php | sessão | não | planos.* | Planos no banco local |
| GET | /planos/listar-remotos.php | sessão | não | módulo | Planos na Movingpay |
| GET | /planos/listar-select.php | sessão | não | módulo | Options p/ vínculo EC |
| GET | /planos/buscar-planos.php | sessão | não | módulo | Busca |
| GET | /planos/detalhes.php | sessão | não | módulo | Ficha |
| GET | /planos/detalhes-cet.php | sessão | não | módulo | CET detalhado |
| GET | /planos/plano-edicao.php | sessão | não | editar | Payload do popup de edição |
| POST | /planos/processar-cadastro.php | sessão | rec. | planos.cadastrar | Cria plano + taxas |
| POST | /planos/processar-edicao-popup.php | sessão | rec. | planos.editar | Atualiza via popup |
| POST | /planos/processar-exclusao.php | sessão | rec. | planos.excluir | Exclui se sem vínculo |
| GET | /planos/taxas-debito.php | sessão | não | módulo | Tabela débito |
Gestão de taxas
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /gestao-taxas/listar_usuarios.php | sessão | não | taxas | Usuários p/ override |
| GET | /gestao-taxas/listar_bandeiras.php | sessão | não | taxas | Catálogo de bandeiras |
| GET | /gestao-taxas/listar_taxas.php | sessão | não | taxas | Grid de taxas |
| GET | /gestao-taxas/padrao.php | sessão | não | taxas | Tabela padrão do sistema |
| POST | /gestao-taxas/criar_taxa.php | sessão | rec. | taxas | Cria linha |
| POST | /gestao-taxas/atualizar_taxa.php | sessão | rec. | taxas | Atualiza (incl. cash-in) |
| POST | /gestao-taxas/salvar_taxa_mdr.php | sessão | rec. | taxas | Persiste MDR |
Estabelecimentos
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /estabelecimentos/listar-locais.php | sessão | não | estabelecimentos.* | Carteira local |
| GET | /estabelecimentos/listar-remotos.php | sessão | não | módulo | Carteira na adquirente |
| GET | /estabelecimentos/detalhes.php | sessão | não | módulo | Modal de detalhes |
| POST | /estabelecimentos/processar-cadastro.php | sessão | rec. | cadastrar | Fluxo padrão |
| POST | /estabelecimentos/processar-cadastro-mdr.php | sessão | rec. | cadastrar | Fluxo MDR + Movingpay |
| POST | /estabelecimentos/atualizar-local.php | sessão | rec. | editar | Patch local (+ sync remoto) |
| POST | /estabelecimentos/atualizar-remoto.php | sessão | rec. | editar | Patch na adquirente |
| POST | /estabelecimentos/excluir.php | sessão | rec. | excluir | Remove local e vínculos |
| POST | /estabelecimentos/aprovar.php | sessão | rec. | aprovar / compliance | Aprova cadastro |
| POST | /estabelecimentos/trocar-representante.php | sessão | rec. | estabelecimentos.trocar_representante | Troca + log |
| GET | /estabelecimentos/usuarios-trocar-representante.php | sessão | não | mesma flag | Candidatos à troca |
| POST | /estabelecimentos/vincular-plano.php | sessão | rec. | editar | Associa plano |
| GET | /estabelecimentos/contatos.php | sessão | não | módulo | Contatos |
| GET | /estabelecimentos/enderecos.php | sessão | não | módulo | Endereços |
| GET | /estabelecimentos/contas-bancarias.php | sessão | não | módulo | Contas |
| GET | /estabelecimentos/terminais.php | sessão | não | módulo | POS do EC |
| GET | /estabelecimentos/bancos.php | sessão | não | módulo | COMPE |
| POST | /estabelecimentos/sync-bancos.php | sessão | rec. | módulo | Sincroniza bancos |
| GET/POST | /estabelecimentos/cnae-cnpj.php | sessão | não | módulo | CNAE via CNPJ |
| GET/POST | /estabelecimentos/mcc-cnae.php | sessão | não | módulo | De-para MCC |
| GET | /estabelecimentos/taxas-padrao.php | sessão | não | módulo | Defaults p/ cadastro |
| POST | /estabelecimentos/upload-documento.php | sessão | sim | docs/KYC | Upload (allowlist MIME) |
| POST | /estabelecimentos/criar-painel.php | sessão | rec. | painel | Cria user_ec + token de senha |
| GET | /estabelecimentos/painel-existente.php | sessão | não | painel | Já existe painel? |
| POST | /estabelecimentos/reenviar-credenciais.php | sessão | rec. | painel | Reenvia link de definir senha |
Terminais
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /terminais/listar-locais.php | sessão | não | terminais.* | Lista local |
| GET | /terminais/listar-remotos.php | sessão | não | módulo | Lista adquirente |
| GET | /terminais/terminais-estabelecimento.php | sessão | não | módulo | POS de um EC |
| GET | /terminais/usuarios-vinculo.php | sessão | não | módulo | Usuários p/ vínculo |
| POST | /terminais/cadastrar.php | sessão | rec. | cadastrar | Cadastro unitário |
| POST | /terminais/cadastrar-lote.php | sessão | rec. | lote | CSV em lote |
| GET | /terminais/download-modelo-csv.php | sessão | não | lote | Template CSV |
| POST | /terminais/atualizar.php | sessão | rec. | editar | Patch + sync |
| POST | /terminais/excluir.php | sessão | rec. | excluir | Remove |
| POST | /terminais/vincular-dispositivo.php | sessão | rec. | vínculo | TID na adquirente |
| POST | /terminais/desvincular-dispositivo.php | sessão | rec. | vínculo | Desvincula TID |
Propostas
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /propostas/listar.php | sessão | não | propostas.* | Lista |
| GET | /propostas/detalhes.php | sessão | não | visualizar | Ficha |
| POST | /propostas/salvar.php | sessão | rec. | propostas.criar | Cria |
| POST/PUT | /propostas/atualizar.php | sessão | rec. | propostas.editar | Atualiza |
| POST/DELETE | /propostas/deletar.php | sessão | rec. | propostas.excluir | Exclui |
| POST | /propostas/enviar.php | sessão | rec. | enviar | Dispara contrato/fluxo |
| GET | /propostas/taxas.php | sessão | não | módulo | Taxas da proposta |
| GET | /propostas/taxas-mensais.php | sessão | não | módulo | Visão mensal |
| GET | /propostas/representantes/listar.php | sessão | não | módulo | Representantes |
| POST | /propostas/representantes/nomes.php | sessão | rec. | módulo | Resolve nomes |
| POST | /propostas/representantes/trocar.php | sessão | rec. | trocar | Troca na proposta |
| GET | /propostas/simulador/taxas.php | sessão | não | simulador | Tabela p/ simulação |
| GET | /propostas/simulador/calcular.php | sessão | não | simulador | Calcula CET/MCC |
| GET/POST | /propostas/simulador/buscar-mcc.php | sessão | não | simulador | Lookup MCC |
| POST | /propostas/simulador/salvar-taxas-base.php | sessão | rec. | simulador | Persiste base simulada |
Comercial / Leads
Módulo de tenant (tenant_modules). CSRF obrigatório em POST.
Flags da família leads.* / comercial.read.
| Método | Path | CSRF | Flag | Descrição |
|---|---|---|---|---|
| GET | /comercial/catalogo.php | não | leads.read | Stages, sources, reasons |
| GET | /comercial/dashboard.php | não | leads.read | KPIs |
| GET | /comercial/leads.php | não | leads.read + escopo | Lista / funil |
| GET | /comercial/detalhes.php | não | leads.read | Ficha |
| POST | /comercial/salvar-lead.php | sim | leads.create / update | Cria/edita |
| POST | /comercial/excluir-lead.php | sim | leads.delete | Exclui |
| POST | /comercial/mudar-etapa.php | sim | leads.stage.change | Funil (ganho/perda) |
| POST | /comercial/atividades.php | sim | leads.activities.manage | Timeline |
| GET/POST | /comercial/visitas.php | POST sim | leads.visits.manage | Agenda / check-in |
| POST | /comercial/propostas.php | sim | leads.proposals.manage | Proposta a partir do lead |
| POST | /comercial/routes.php | sim | leads.routes.manage | Gerador de roteiro |
| GET | /comercial/exportar-csv.php | não | leads.export | CSV |
| POST | /comercial/importar-csv.php | sim | leads.import | CSV |
| POST | /comercial/importar-documento.php | sim | leads.import | Doc avulso |
| POST | /comercial/places-search.php | sim | leads.import + plataforma | Google Places busca |
| POST | /comercial/places-import.php | sim | leads.import + plataforma | Importa lugares |
| GET/POST | /comercial/places-quota.php | POST sim | import / leads.admin | Cota Places |
| POST | /comercial/converter.php | sim | leads.convert | Lead → EC/proposta |
| POST | /comercial/configuracoes.php | sim | leads.admin | Config do módulo |
| POST | /comercial/modulo-white-label.php | sim | leads.admin | Liga/desliga no tenant |
| GET | /comercial/buscar-cnpj.php | não | leads.read | Receita/CNPJ |
| GET | /comercial/evolucao.php | não | leads.read | Evolução comercial |
| GET | /comercial/monitoramento.php | não | leads.read | Feed 7 dias |
| GET | /comercial/lead-photo.php | não | leads.read | Foto do lead |
Tarefas
Módulo de tenant. CSRF em todo POST. index.php = GET lista + POST cria.
| Método | Path | CSRF | Flag | Descrição |
|---|---|---|---|---|
| GET | /tarefas/index.php | — | tarefas.read* | Lista paginada |
| POST | /tarefas/index.php | sim | tarefas.create | Cria tarefa |
| GET | /tarefas/show.php | não | read | Detalhe |
| POST | /tarefas/update.php | sim | update | Edita |
| POST | /tarefas/delete.php | sim | delete | Exclui |
| POST | /tarefas/bulk-create.php | sim | create | Lote |
| POST | /tarefas/change-status.php | sim | status (+ regra extra) | Kanban/status |
| GET | /tarefas/kanban.php | não | read | Cards (teto 200) |
| GET | /tarefas/kpis.php | não | read | KPIs |
| POST | /tarefas/step-create.php | sim | update | Item de checklist |
| POST | /tarefas/step-toggle.php | sim | update | Marca passo |
| POST | /tarefas/flow-step-create.php | sim | update | Etapa de fluxo |
| POST | /tarefas/flow-step-delete.php | sim | update | Remove etapa |
| POST | /tarefas/comment-create.php | sim | comment | Comentário interno |
| POST | /tarefas/document-upload.php | sim | update | Anexo (≤3, 10 MB) |
| POST | /tarefas/ai-summary.php | sim | read + OpenAI | Resumo gpt-4o-mini |
| POST | /tarefas/modulo-white-label.php | sim | admin | Liga/desliga no tenant |
Compliance
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /compliance/listar.php | sessão | não | compliance.* | Fila |
| GET | /compliance/buscar-estabelecimento.php | sessão | não | módulo | Lookup EC |
| POST | /compliance/criar.php | sessão | rec. | criar | Abre análise |
| POST | /compliance/atualizar-status.php | sessão | rec. | status | Aprova / reprova |
| POST | /compliance/atualizar-documento.php | sessão | rec. | docs | Status do documento |
| POST | /compliance/atualizar-anotacoes.php | sessão | rec. | anotar | Notas internas |
| GET/POST | /compliance/processar-pendentes.php | sessão | rec. | processar | Lote de pendentes |
Assinaturas (Autentique)
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /assinaturas/listar.php | sessão | não | assinaturas.visualizar | Ativos |
| GET | /assinaturas/listar-arquivados.php | sessão | não | visualizar | Arquivo |
| GET | /assinaturas/propostas.php | sessão | não | criar | Propostas elegíveis |
| POST | /assinaturas/criar.php | sessão | rec. | assinaturas.criar | Envia envelope |
| GET | /assinaturas/baixar.php | sessão | não | visualizar | Download |
| POST | /assinaturas/arquivar.php | sessão | rec. | gerenciar | Arquiva |
| POST | /assinaturas/desarquivar.php | sessão | rec. | gerenciar | Restaura |
| POST | /assinaturas/excluir.php | sessão | rec. | excluir | Remove |
| POST | /assinaturas/webhook.php | HMAC | não | — | Evento Autentique (público) |
Transações
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /transacoes/listar.php | sessão | não | transacoes.visualizar | Lista |
| GET | /transacoes/detalhes.php | sessão | não | visualizar | Ficha |
| GET | /transacoes/dashboard.php | sessão | não | dashboard | Agregados p/ gráficos |
| GET | /transacoes/exportar-csv.php | sessão | não | exportar | CSV |
| GET/POST | /transacoes/polling.php | sessão | não | visualizar | Incremental p/ UI |
| POST | /transacoes/log-client.php | sessão | não | — | Log de erro do browser |
Financeiro
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET | /financeiro/alugueis/listar.php | sessão | não | financeiro | Aluguel de POS |
| GET | /financeiro/comissoes/listar.php | sessão | não | comissões | Apuração |
| GET | /financeiro/comissoes/detalhes-estabelecimento.php | sessão | não | comissões | Drill-down EC |
| GET | /financeiro/comissoes/exportar-geral.php | sessão | não | exportar | CSV geral |
| GET | /financeiro/comissoes/exportar-estabelecimento.php | sessão | não | exportar | CSV por EC |
| GET | /financeiro/comissoes/white-labels-filtro.php | sessão | não | comissões | Filtro WL |
| GET | /financeiro/external/comissoes.php | token API | não | finance.commissions_read | Integração externa (user_id obrigatório) |
Split de pagamentos (frontend/pages/financeiro/split/) é front-only com mock — sem endpoints neste snapshot.
Conta
| Método | Path | Auth | CSRF | Flag | Descrição |
|---|---|---|---|---|---|
| GET/POST | /conta/perfil.php | sessão | POST rec. | própria conta | Perfil |
| POST | /conta/senha.php | sessão | rec. | própria conta | Troca senha (política 8+ / maiúsc. / dígito) |
| GET/POST | /conta/configuracoes.php | sessão | POST rec. | super-admin p/ SMTP global | Preferências, Places, Evolution |
Vestigial
| Método | Path | Auth | Descrição |
|---|---|---|---|
| POST | /consig/salvar-consignado.php | sessão | Consignado sem tela; não evoluir sem spec |
Regenerar OpenAPI
powershell -File tools/generate_openapi.ps1
Depois ajuste este markdown se o verbo ou a flag mudou. O YAML cobre os 191 paths; este arquivo documenta intenção de negócio e autorização.