# Integração com Diários Oficiais - LexMind

## Visão Geral

O LexMind agora possui integração real com a API DataJud do CNJ para buscar publicações processuais automaticamente.

## Fontes de Dados

### 1. API DataJud (CNJ) - Fonte Principal
- **URL Base:** https://api-publica.datajud.cnj.jus.br/
- **Autenticação:** API Key pública do CNJ
- **Tribunais Suportados:** Todos os TJs, TRFs, STJ, STF, TST
- **Dados Retornados:** Movimentações processuais (publicações, intimações, citações, etc.)

### 2. DJe TJSP (Backup - não implementado)
- Pode ser adicionado via scraping se necessário

## Arquivos Criados/Modificados

```
src/lib/
├── diarios-service.ts       # Service principal de integração
├── publicacoes-service.ts   # Cálculo de prazos e tipos

src/app/api/publicacoes/buscar/
├── route.ts                 # API atualizada para busca real

scripts/
├── buscar-publicacoes.ts    # Script de busca diária (cron)
├── testar-datajud.ts        # Teste de conexão com API
├── teste-integracao.ts      # Teste completo do service
├── teste-standalone.ts      # Teste isolado
```

## Uso

### Busca Manual (via API)
```bash
# Buscar publicações de um processo específico
curl -X POST https://lexmind.com.br/api/publicacoes/buscar \
  -H "Content-Type: application/json" \
  -H "Cookie: <session>" \
  -d '{"processoId": "cuid-do-processo"}'

# Buscar todos os processos ativos do usuário
curl -X POST https://lexmind.com.br/api/publicacoes/buscar \
  -H "Cookie: <session>"
```

### Busca Diária (Cron)
```bash
cd /var/www/lexmind
npx ts-node scripts/buscar-publicacoes.ts
```

### Testes
```bash
# Testar conexão com DataJud
npx ts-node scripts/testar-datajud.ts

# Testar busca com processo real
npx ts-node scripts/teste-standalone.ts
```

## Tipos de Publicação Detectados

| Tipo | Código CNJ | Keywords |
|------|------------|----------|
| INTIMACAO | 12265, 12021 | intimação, fica intimado |
| CITACAO | 14, 12037 | citação, fica citado |
| SENTENCA | 22, 848 | sentença, julgo procedente |
| ACORDAO | 217, 219 | acórdão, acordam os desembargadores |
| DESPACHO | 11010, 11383 | despacho, determino |
| PUBLICACAO | 92 | (genérico) |

## Cálculo de Prazos

- INTIMACAO/CITACAO/SENTENCA/ACORDAO: 15 dias úteis
- DESPACHO: 5 dias úteis
- OUTROS: 5 dias úteis

## Rate Limiting

- Delay de 500ms entre requisições em lote
- Busca processos dos últimos 30 dias por padrão

## Configuração do Cron

Para executar a busca diariamente às 7h:

```bash
# Via crontab no servidor
0 7 * * * cd /var/www/lexmind && /usr/bin/npx ts-node scripts/buscar-publicacoes.ts >> /var/log/lexmind-publicacoes.log 2>&1

# Ou via Clawdbot (remoto)
clawdbot cron add "0 7 * * *" "ssh jarvis-do 'cd /var/www/lexmind && npx ts-node scripts/buscar-publicacoes.ts'"
```

## Troubleshooting

### API retorna erro 401
- Verificar se a API Key está correta
- A key pública do CNJ raramente muda

### Processo não encontrado
- Verificar formato do número (20 dígitos sem formatação)
- Verificar se o tribunal está correto
- Alguns processos podem estar em sigilo

### Timeout na busca
- Aumentar delay entre requisições
- Verificar conectividade de rede

## Manutenção

- Monitorar logs de busca diária
- Verificar se há novos códigos de movimentos no CNJ
- Atualizar mapeamento de tribunais se necessário
