Para monitorar processos do PJe e do Projudi sem raspar sites de tribunal, combine duas fontes oficiais do Conselho Nacional de Justiça (CNJ): a API Pública do DataJud, que entrega capa e movimentações de processos públicos de todos os tribunais, e a API do Diário de Justiça Eletrônico Nacional (DJEN), que publica intimações e atos por número de OAB ou de processo. No n8n, um gatilho agendado consulta essas fontes, filtra o que é novo, um nó de IA classifica cada movimentação por urgência e um webhook do Discord avisa o canal certo da equipe.
A IA aqui faz triagem, não controle de prazo. Quem confere a intimação no sistema oficial e conta o prazo continua sendo o advogado. Abaixo estão as fontes, o fluxo completo no n8n, os limites de uso de cada API e os cuidados com LGPD e segredo de justiça.
Resumo rápido
- DataJud: API pública do CNJ, no padrão Elasticsearch, com metadados e movimentos de processos públicos. Os termos restringem o uso a fins não comerciais.
- DJEN (Comunica PJe): API pública de consulta das comunicações publicadas, com filtros por OAB, processo, tribunal e data, sujeita a limite de requisições por IP.
- Raspagem de portais de tribunal é frágil e pode violar termos de uso; usar vários IPs para driblar limites é tratado como abuso pelo CNJ.
- Fluxo no n8n: Schedule Trigger, HTTP Request, filtro de novidades, Text Classifier e Discord.
- Mande para o Discord só o mínimo: número do processo, tipo de ato, classificação e link. Nada de texto integral com nome de partes.
Fontes legítimas de dados processuais
O PJe é o sistema do CNJ adotado por muitos tribunais, e o Projudi é usado por outros. Para o monitoramento, você não precisa falar com cada sistema: as fontes nacionais já consolidam os dados.
| Fonte | O que entrega | Como consultar | Limites relevantes |
|---|---|---|---|
| API Pública do DataJud | Capa do processo (classe, assuntos, órgão julgador) e lista de movimentos com data e hora | POST em um endpoint por tribunal, com chave pública no cabeçalho | Versão Beta; uso não comercial; CNJ não garante atualidade dos dados |
| API do DJEN (Comunica PJe) | Intimações, despachos, decisões e editais publicados no diário nacional, com texto | GET sem autenticação, filtrando por OAB, processo, tribunal e data | Controle de taxa por IP; algumas consultas limitadas a 10 mil resultados |
| Serviços push dos tribunais | E-mail quando há movimentação nos processos cadastrados | Cadastro no site de cada tribunal; o n8n lê a caixa de entrada | Serviço informativo; regras variam por tribunal |
O DataJud tem um campo sistema que indica o sistema processual de origem no tribunal, útil para separar processos do PJe e do Projudi no mesmo painel. Já o DJEN, segundo a Resolução CNJ 455/2022, é o meio de intimação dos advogados quando a ciência não exige vista ou intimação pessoal, o que o torna a fonte mais importante para alertas de prazo.
Por que não raspar os portais dos tribunais
Raspar as páginas de consulta processual parece mais rápido, mas cria três problemas. Primeiro, muitos portais têm captcha e termos que vedam acesso automatizado, e contorná-los expõe o escritório. Segundo, qualquer mudança de layout quebra o robô em silêncio, e um alerta que deixa de chegar é pior que nenhum alerta. Terceiro, o próprio CNJ, na documentação da API do DJEN, avisa que usar vários IPs para contornar o controle de taxa é uso abusivo e pode resultar em bloqueio.
As APIs oficiais resolvem isso com dados estruturados, documentação pública e regras claras. Quando um dado não estiver nelas, a alternativa é o serviço push do tribunal ou um fornecedor contratado que tenha acordo para acessar os dados.
Como funcionam as APIs do DataJud e do DJEN
DataJud
A URL base é https://api-publica.datajud.cnj.jus.br/, seguida do alias do tribunal, por exemplo api_publica_trt3/_search para o TRT da 3ª Região ou api_publica_tjpr/_search para o TJPR. A autenticação usa o cabeçalho Authorization: APIKey [Chave Pública]. A chave vigente fica publicada na página de acesso da wiki do DataJud, e o CNJ avisa que pode trocá-la a qualquer momento; por isso, guarde-a numa credencial do n8n que você atualiza em um lugar só.
As buscas seguem a sintaxe do Elasticsearch. Para um processo específico, o corpo da requisição é:
{
"query": { "match": { "numeroProcesso": "NUMERO_SEM_PONTOS_E_TRACOS" } }
}
A resposta traz o array movimentos, cada um com codigo, nome, dataHora e complementos. Os códigos seguem as Tabelas Processuais Unificadas do CNJ, o que ajuda a criar regras fixas antes mesmo da IA.
Leia o termo de uso antes de colocar em produção. Ele afirma que a API é fornecida exclusivamente para fins legais, não comerciais e autorizados, que o usuário não pode explorar comercialmente a API ou informação derivada dela e que o CNJ não garante precisão, integridade ou atualidade dos dados. Para um escritório que acompanha os próprios processos, avalie com o jurídico se o uso se enquadra; para revender monitoramento como produto, a resposta tende a ser não.
DJEN
A consulta pública é um GET em https://comunicaapi.pje.jus.br/api/v1/comunicacao, com parâmetros como numeroOab, ufOab, numeroProcesso, siglaTribunal, dataDisponibilizacaoInicio e dataDisponibilizacaoFim (formato aaaa-mm-dd). A documentação pede pelo menos um filtro principal e aceita 5 ou 100 itens por página. As respostas trazem os cabeçalhos x-ratelimit-limit e x-ratelimit-remaining; ao receber erro 429, a orientação oficial é esperar um minuto antes de tentar de novo.
Workflow no n8n, nó a nó
- Schedule Trigger: roda em intervalos fixos. Para o DJEN, uma consulta por dia útil, depois do horário de disponibilização dos cadernos, costuma bastar. Para o DataJud, algumas vezes ao dia.
- Lista de processos: uma planilha ou tabela no banco com número do processo, alias do tribunal, cliente interno (um código, não o nome) e responsável.
- HTTP Request (DataJud): método POST, URL do tribunal, credencial com o cabeçalho de autorização e o corpo com
numeroProcesso. Ative a opção de lotes (batching) com pausa entre requisições. - HTTP Request (DJEN): método GET, com
numeroOab,ufOabe a data do dia. Configure novas tentativas com espera para tratar o 429. - Code: transforma o array de movimentos em itens individuais e cria uma chave única, como número do processo mais
dataHoramais código do movimento. - Remove Duplicates: com a operação que remove itens processados em execuções anteriores, só o que é novo segue adiante.
- Text Classifier: recebe o nome do movimento ou o texto da comunicação e devolve uma categoria.
- Discord: cada saída do classificador vai para um canal, com mensagem curta e link para a fonte oficial.
Um exemplo de Code node para achatar os movimentos do DataJud:
const saida = [];
for (const item of $input.all()) {
for (const hit of item.json.hits?.hits ?? []) {
const p = hit._source;
for (const m of p.movimentos ?? []) {
saida.push({ json: {
chave: `${p.numeroProcesso}|${m.dataHora}|${m.codigo}`,
processo: p.numeroProcesso,
tribunal: p.tribunal,
sistema: p.sistema?.nome,
movimento: m.nome,
dataHora: m.dataHora
}});
}
}
}
return saida;
O mesmo desenho aparece no nosso guia de monitoramento de CNDT de fornecedores com n8n, que também consulta fonte pública e alerta a equipe.
Classificação por urgência com IA
O nó Text Classifier do n8n envia cada item a um modelo de linguagem e o encaminha para a saída da categoria escolhida. Você define as categorias e uma descrição de cada uma. Há opções para permitir mais de uma categoria por item e para decidir o que fazer quando não há correspondência clara: por padrão o item é descartado, mas você pode mandá-lo para uma saída “Other”. Em monitoramento jurídico, nunca descarte: envie o “Other” para revisão humana.
| Categoria | Descrição para o modelo | Canal no Discord |
|---|---|---|
| Urgente | Intimação ou citação que abre prazo, decisão liminar, designação de audiência, sentença | #prazos, com menção ao responsável |
| Atenção | Despacho que pede manifestação, juntada de petição da parte contrária, conclusão ao juiz | #acompanhamento |
| Informativo | Remessa interna, certidão, mudança de fase sem ato para o escritório | #movimentacoes |
| Other | Sem correspondência clara | #revisar |
Combine IA com regra fixa. Movimentos com códigos conhecidos podem ser classificados direto por um nó Switch, e a IA fica com o texto livre das comunicações do DJEN. O modelo não deve calcular prazo: a contagem depende de regras processuais, feriados e suspensões que precisam ser conferidas pelo advogado.
Enviando o alerta ao Discord
O nó Discord do n8n aceita três formas de autenticação: bot, OAuth2 e webhook. Para alertas, o webhook é o mais simples: crie um webhook em cada canal nas configurações do servidor e cole a URL na credencial. Pela documentação do Discord, a execução de um webhook aceita texto de até 2.000 caracteres e até 10 embeds por mensagem, e pode publicar dentro de uma thread específica com o parâmetro thread_id.
Um bom formato de alerta tem quatro linhas: categoria, número do processo e tribunal, nome do movimento ou tipo de comunicação, e link para conferir no sistema oficial. A URL do webhook funciona como senha, porque quem a tiver publica no canal. Guarde-a só na credencial do n8n e troque se vazar. Se quiser comparar com outra plataforma de mensagens, veja o tutorial de bot de alertas no Telegram com n8n.
LGPD, sigilo e segredo de justiça
Processo judicial envolve dados pessoais e, às vezes, dados sensíveis, como saúde em ações previdenciárias. A Lei Geral de Proteção de Dados (Lei 13.709/2018) continua valendo para o que o escritório coleta e repassa.
- Segredo de justiça: o DataJud informa que resguarda processos sigilosos e dados de partes. Isso não autoriza relaxar: processos em segredo que o escritório acompanha por outros meios não devem entrar nesse fluxo.
- Texto do DJEN: a comunicação publicada pode trazer nomes de partes e advogados. Use o texto apenas na classificação e não o republique no Discord.
- Fornecedor de IA: use API com contrato de tratamento de dados e sem uso para treino. Envie ao modelo só o trecho necessário.
- Discord como terceiro: as mensagens ficam nos servidores de uma empresa estrangeira. Servidor privado, canais restritos à equipe e autenticação em dois fatores para os membros.
- Retenção: apague alertas antigos de tempos em tempos; o registro oficial é o sistema do tribunal.
O sigilo profissional também pesa. O artigo sobre IA para advogados e cuidados com sigilo aprofunda o tema.
Exemplo: escritório trabalhista em Belo Horizonte
Um escritório trabalhista de Belo Horizonte atua principalmente no TRT da 3ª Região e acompanha processos de clientes empresariais. O fluxo montado no n8n ficou assim:
- Às 7h dos dias úteis, o Schedule Trigger consulta o DJEN pelo número de OAB de cada advogado do escritório, com a data do dia.
- Ao longo do dia, outro gatilho consulta o endpoint
api_publica_trt3do DataJud para a lista de processos ativos, guardada numa planilha com códigos internos de cliente. - O Remove Duplicates deixa passar só comunicações e movimentos ainda não vistos.
- Uma intimação para manifestação sobre cálculos chega pelo DJEN. O Text Classifier marca como “Urgente” e o Discord publica no #prazos, mencionando a advogada responsável, com número do processo e link do diário.
- Ela abre o PJe, confere a intimação, registra o prazo no sistema de gestão do escritório e reage à mensagem para indicar que assumiu.
- Um movimento de remessa interna cai em “Informativo” e vai para o #movimentacoes, sem notificar ninguém.
O escritório trata o Discord como sinal, não como registro: o controle de prazos continua no sistema de gestão, e o fluxo existe para que nada passe despercebido entre uma conferência e outra.
Erros comuns
- Confiar no alerta como intimação. Prazo se confere no sistema oficial e se conta com as regras processuais.
- Ignorar o termo de uso do DataJud. A cláusula de uso não comercial pesa para quem vende monitoramento.
- Descartar o que a IA não soube classificar. Mande para revisão humana.
- Colar o texto integral da publicação no Discord. Expõe dados de partes a mais pessoas do que o necessário.
- Disparar requisições em paralelo sem pausa. O DJEN responde com 429 e pode bloquear o IP.
- Fixar a chave do DataJud no código. Ela muda; use credencial central.
Perguntas frequentes
O DataJud substitui a consulta no PJe ou no Projudi?
Não. Ele consolida metadados e movimentos de processos públicos, mas o próprio CNJ diz que não garante a atualidade dos dados. Use-o como sinal e confirme no sistema do tribunal.
Preciso de cadastro para usar as APIs?
Não para a consulta pública. O DataJud usa uma chave pública divulgada na wiki, e a consulta de comunicações do DJEN dispensa autenticação. Os endpoints autenticados do DJEN são de uso exclusivo dos tribunais.
Com que frequência consultar?
Para o DJEN, uma vez por dia útil após a disponibilização dos cadernos resolve a maioria dos casos. Para o DataJud, algumas vezes ao dia, sempre respeitando os limites e com pausas entre requisições.
Posso monitorar processos em segredo de justiça?
Não por essas fontes públicas, que resguardam processos sigilosos. Nesses casos, o acompanhamento é feito no sistema do tribunal, com o acesso do advogado habilitado.
Funciona com Slack ou Teams no lugar do Discord?
Sim. O n8n tem nós para várias plataformas; basta trocar o último passo e manter as mesmas regras de conteúdo mínimo.
Fontes e leitura recomendada
- Wiki do DataJud: API Pública (acesso, endpoints, glossário e termo de uso)
- Documentação da API pública do DJEN
- CNJ: comunicações processuais, DJEN e Domicílio Judicial Eletrônico
- n8n: Text Classifier node
- n8n: Remove Duplicates node
- n8n: Discord node
- Discord Developer Docs: Webhook Resource
- Lei Geral de Proteção de Dados (Lei 13.709/2018)