# API — Módulo Fantasma (NÃO IMPLEMENTADO)

## 1. O que é o módulo

Grupo de módulos headless para exposição de rotas de API pública/privada, webhooks e integrações externas. Projetado para conter módulos sem interface no menu lateral do CMS (suprimidos automaticamente pelo `SidebarComposer`), registrando apenas rotas em `Routes/api.php`.

**Status:** NÃO IMPLEMENTADO. Apenas esboço conceitual.

## 2. Estrutura de dados

Inexistente. Não há modelos, migrations ou tabelas.

## 3. Dependências

Inexistentes.

## 4. Tabelas

Nenhuma.

## 5. Arquivos

```
V2/Modules/API/
└── README.md        # Apenas esboço conceitual descrevendo o propósito do grupo
```

OBS: O módulo `_Exemplos/ExemploAPI/` serve como módulo modelo de referência para implementações futuras, contendo Controller, ModuleProvider, Routes e Views completos.

## 6. Observações/Sugestão

Para implementar seguindo os padrões V2:

1. Criar `V2/Modules/API/{NomeDoModulo}/` com a estrutura padrão:
   - `Controllers/{Nome}ApiController.php` — endpoints REST (index, show, store, update, destroy)
   - `Models/{Nome}.php` — modelo Eloquent com UUID primário
   - `Services/{Nome}Service.php` — lógica de negócio
   - `Routes/api.php` — rotas prefixadas com `api/v2/{recurso}`
   - `ModuleProvider.php` — retornar array vazio em `getConfig()` ou `null` para não renderizar no sidebar OU implementar uma chave `'hidden' => true` (a ser respeitada pelo SidebarComposer)
   - Opcional: `Requests/{Nome}Request.php` para validação
   - Opcional: `Migrations/` se houver persistência

2. O `ModuleProvider` **não** precisa implementar `getConfig()` com sidebar — o `SidebarComposer` já suprime grupos que não têm `title` ou cujo módulo explicite `hidden`.

3. Autenticação: usar middleware `auth:api` ou token-based (Sentinel API). Não usar `CmsAuthenticate`.

4. Exemplo concreto de módulos possíveis:
   - **API de Conteúdo** — endpoints públicos para notícias, licitações, diário oficial (consumido por apps/sites parceiros)
   - **Webhook Receiver** — recebe notificações de serviços externos (ex: webhook do governo federal)
   - **API de Status** — health check e métricas do sistema
