Padrão obrigatório para TODAS as rotas do frontend. Qualquer novo módulo, submenu, aba ou card DEVE seguir estas regras. Atualizado: 2026-04-04
Princípios
- Ingles obrigatório — URLs em ingles para padrão internacional
- Hierarquia refletida na URL — todo submenu/aba/card tem sua própria rota
- kebab-case — palavras separadas por hifen (ex:
flow-builder,cart-recovery) - Sem abas por useState — abas SEMPRE usam sub-rotas do App Router
- Redirect no pai — pagina pai redireciona para a sub-rota padrão
- Sem rotas orfas — toda pagina pertence a um grupo (nunca na raiz do dashboard)
Mapa Completo de Rotas
Getting Started (Primeiros Passos)
/getting-started
/launchpad → redirect → /getting-started (compat v0.6.1-beta)
Dashboard
/dashboard → Visão geral (KPIs, hero banner, widgets, atalhos)
/dashboard/overview → redirect → /dashboard (compat 2026-05-01)
/dashboard/reports → Hub de relatórios
/dashboard/reports/nps
/dashboard/reports/support
/dashboard/reports/pipeline
/dashboard/reports/whatsapp (Em breve)
/dashboard/reports/ai (Em breve)
/dashboard/reports/attribution (Em breve)
Inbox (Atendimento)
/inbox/chat
/inbox/pipeline
/inbox/pipeline/leads
/inbox/protocols
/inbox/quick-replies
/inbox/schedules
/inbox/tasks
Contacts (Contatos/CRM)
/contacts → redirect → /contacts/all
/contacts/all
/contacts/import
/contacts/tags
/contacts/wallets
/contacts/companies
/contacts/segments
/contacts/[id]
AI & Agents (IA & Agentes)
/ai/settings
/ai/agent
/ai/prompts
/ai/knowledge-base
/ai/monitor
/ai/content
Campaigns (Campanhas WhatsApp)
Reorg 2026-05-06:
/campaigns/status→/inbox/status(Atendimento) e/campaigns/tracking→/dashboard/reports/tracking. URLs antigas redirecionam para as novas (preservam bookmarks).
/campaigns → redirect → /campaigns/campaigns
/campaigns/campaigns
/campaigns/campaigns/new
/campaigns/campaigns/[id]
/campaigns/contact-lists (label exibido: "Listas de Disparo")
/campaigns/phrases
/campaigns/settings
/campaigns/settings/anti-spam
/campaigns/settings/rotation
/campaigns/status → redirect → /inbox/status
/campaigns/tracking → redirect → /dashboard/reports/tracking
Automation (Automação)
Reorg 2026-05-06:
/settings/birthday→/automation/birthday(aniversário é automação por gatilho de data).
/automation/flow-builder
/automation/flow-builder/[id]
/automation/receptors
/automation/cart-recovery
/automation/cart-recovery/settings
/automation/birthday (NEW — antes: /settings/birthday)
/automation/instagram-automation
/automation/instagram-automation/rules
/automation/instagram-automation/logs
Email Marketing
/email-marketing → redirect → /email-marketing/overview
/email-marketing/overview
/email-marketing/campaigns
/email-marketing/campaigns/new
/email-marketing/lists
/email-marketing/templates
/email-marketing/automations
/email-marketing/settings
Integrations (Integrações)
/integrations/connections
/integrations/connections/[id]
/integrations/connections/[id]/about
/integrations/connections/[id]/history
/integrations/connections/[id]/access
/integrations/ecommerce
/integrations/external-automations
Settings (Configurações)
Reorg 2026-05-06: Macros, Campos Personalizados, Aniversário e Comunicações saíram daqui (ver respectivas seções). "Pipeline" renomeado para "Modelo do Pipeline" no label (rota mantida).
/settings → redirect → /settings/general
/settings/general
/settings/organization
/settings/pipeline (label: "Modelo do Pipeline")
/settings/queues
/settings/users
/settings/roles
/settings/nps
/settings/backup
/settings/audit-logs
/settings/api
/settings/birthday → redirect → /automation/birthday
/settings/custom-fields → redirect → /contacts/custom-fields
/settings/macros → redirect → /inbox/macros
/settings/communications → redirect → /settings (deletada — agora só /admin/communications)
Inbox (Atendimento)
Reorg 2026-05-06: Macros e Status WhatsApp foram movidos para cá.
/inbox
/inbox/chat
/inbox/triage
/inbox/ads
/inbox/pipeline
/inbox/protocols
/inbox/quick-replies
/inbox/macros (NEW — antes: /settings/macros)
/inbox/schedules
/inbox/tasks
/inbox/team-chat
/inbox/status (NEW — antes: /campaigns/status)
Contacts (Contatos)
Reorg 2026-05-06: Campos Personalizados foi movido para cá. Segmentos e Carteiras (que existiam órfãs) foram expostas no sidebar.
/contacts → redirect → /contacts/all
/contacts/all
/contacts/import
/contacts/tags
/contacts/segments
/contacts/wallets
/contacts/companies
/contacts/companies/[id]
/contacts/custom-fields (NEW — antes: /settings/custom-fields)
/contacts/[id]
Dashboard / Reports
Reorg 2026-05-06: Rastreamento (CAPI) foi movido para cá.
/dashboard
/dashboard/reports
/dashboard/reports/nps
/dashboard/reports/support
/dashboard/reports/pipeline
/dashboard/reports/whatsapp
/dashboard/reports/ai
/dashboard/reports/attribution
/dashboard/reports/tracking (NEW — antes: /campaigns/tracking)
Affiliate (Programa de Afiliados)
/affiliate (pagina inicial educativa — vende o programa, calculadora, FAQ)
/affiliate/dashboard (painel de comissoes — lista indicacoes + projecao mensal)
/affiliate/materials (criativos prontos — banners, copies WhatsApp/email/redes, treinamento)
/affiliate/settings (walletId Asaas + link de indicacao)
Navegação: sub-rotas aparecem como submenus expansíveis na sidebar (padrão do app).
A página /affiliate é uma "landing interna" para educar o cliente logado sobre o programa.
Agenda (Calendário)
/agenda (FullCalendar com appointments — modulo simples sem sub-rotas)
Templates (Templates Meta WhatsApp Oficial)
/templates (listagem e gestao de templates aprovados na Meta)
Suggestions (Sugerir Melhorias)
/suggestions (modulo simples — formulario de feedback do cliente)
Admin (Equipe Interna — staff only)
/admin → redirect → /admin/overview
/admin/overview
/admin/clients
/admin/now
/admin/now/service
/admin/now/queues
/admin/now/summary
/admin/connections
/admin/history
/admin/plans
/admin/emails
/admin/email-engine
/admin/ai-brain
/admin/ai-brain/agents/[name]
/admin/ai-brain/agents/[name]/overview
/admin/ai-brain/agents/[name]/prompt
/admin/ai-brain/agents/[name]/tools
/admin/ai-brain/knowledge-base
/admin/ai-brain/chat
/admin/keys
/admin/staff
/admin/impersonate
Help (Central de Ajuda)
/help → redirect → /help/docs
/help/docs
/help/docs/[category] (ex: /help/docs/changelog)
/help/videos
/help/ai
/help/suggestions
Profile & User
/profile
/billing
/notifications
/logout (handled by Clerk)
Standalone (fora do dashboard)
/checkout
/sign-in
/sign-up
/register
/login
Regras para Novos Módulos
Ao criar um novo módulo:
- Escolher o grupo pai (inbox, contacts, ai, campaigns, etc.)
- Criar pasta dentro do grupo:
(dashboard)/[grupo]/[modulo]/page.tsx - Se tiver abas: criar sub-pastas para cada aba
- Atualizar
app-sidebar.tsxcom o novo href - Atualizar
sidebar-search.tsxcom o novo item
Ao criar abas dentro de um módulo:
- NUNCA usar
useStatepara trocar abas - Criar
layout.tsxcom header + navegação por<Link> - Criar
[aba]/page.tsxpara cada aba - O
page.tsxpai fazredirect()para a aba padrão - Usar
usePathname()para detectar a aba ativa
Exemplo de estrutura com abas:
modulo/
layout.tsx → header compartilhado + tab nav com <Link>
page.tsx → redirect("/modulo/aba-padrao")
aba-1/
page.tsx → conteudo da aba 1
aba-2/
page.tsx → conteudo da aba 2
Migração: Rotas Antigas → Novas
| Rota Antiga | Nova Rota |
|---|---|
| /chat | /inbox/chat |
| /pipeline | /inbox/pipeline |
| /protocols | /inbox/protocols |
| /quick-replies | /inbox/quick-replies |
| /schedules | /inbox/schedules |
| /tasks | /inbox/tasks |
| /tags | /contacts/tags |
| /wallets | /contacts/wallets |
| /prompts | /ai/prompts |
| /ai-monitor | /ai/monitor |
| /contact-lists | /campaigns/contact-lists |
| /phrase-lists | /campaigns/phrases |
| /tracking | /dashboard/reports/tracking (Reorg 2026-05-06) |
| /campaigns-config | /campaigns/settings |
| /flow-builder | /automation/flow-builder |
| /cart-recovery | /automation/cart-recovery |
| /instagram-automation | /automation/instagram-automation |
| /connections | /integrations/connections |
| /ecommerce | /integrations/ecommerce |
| /settings/integrations | /integrations/external-automations |
| /queues | /settings/queues |
| /users | /settings/users |
| /birthday-settings | /automation/birthday (Reorg 2026-05-06) |
| /financeiro | /billing |
| /reports | /dashboard/reports |
| /tickets | /inbox/chat (merged) |
Reorganização 2026-05-06 — mudanças adicionais
| Rota Antiga | Nova Rota | Motivo |
|---|---|---|
| /campaigns/status | /inbox/status | Stories WhatsApp = operação WhatsApp diária |
| /campaigns/tracking | /dashboard/reports/tracking | É relatório de ROI (qualquer origem), não só campanhas |
| /settings/macros | /inbox/macros | Atalhos de chat = contexto operacional do atendente |
| /settings/custom-fields | /contacts/custom-fields | Atributos extras de contato |
| /settings/birthday | /automation/birthday | Automação por gatilho de data |
| /settings/communications | /settings (deletada) | Welcome WA é operação da plataforma (só /admin/communications) |