Pular para o conteúdo
INTEGRAÇÃO

Conecte o 12 Brain Jornal ao seu agente

três formas (MCP, RSS, API) leem os mesmos dados: seleção, repercussão e as edições diária, semanal e mensal. Escolha a que serve à sua ferramenta. Todas anônimas e somente leitura, sem cadastro e sem chave de API.

Serviço normalVersão 4.0.0Anônimo e somente leitura · sem chave
REST API · 4.0.0

GET anônimo, pronto para usar

Sem token: funciona direto em requisição de navegador entre origens, no curl e nos clientes HTTP padrão de qualquer linguagem. O caminho é /api/v1, e os campos e códigos de erro seguem a OpenAPI.

A primeira requisição
curl --compressed 'https://jornal.12brain.org/api/v1/items?mode=selected&window=24h&limit=20'

Filtrar por categoria

Acrescente category à requisição de novidades para trazer apenas aquela categoria; sem o parâmetro, vêm todas. O campo category de cada item devolvido usa os valores da tabela abaixo.

CategoriaParâmetro
Tecnologiacategory=tecnologia
Produtos e serviçoscategory=produtos
Mercadocategory=industry
Ciênciacategory=paper
Práticacategory=tip
Opiniãocategory=opinion

Mais econômico e mais rápido

  1. 01
    Ligue a compressão

    No curl, use --compressed; em outros clientes, habilite gzip ou br. O JSON comprimido fica entre 1/4 e 1/8 do tamanho.

  2. 02
    Use o ETag

    Guarde o ETag da resposta e envie If-None-Match na próxima. Sem mudança, a resposta é 304, sem corpo.

  3. 03
    Respeite o ritmo

    Novidades e repercussão, no máximo uma vez por minuto. A edição diária, uma vez depois de todos os dias às 08:00; a semanal e a mensal, uma vez após a publicação. Ao voltar páginas, pare no item que você já tem.

Com que frequência muda: novidades entram ao longo de todo o dia, a seleção muda de algumas a algumas dezenas de vezes por dia, e sai uma edição diária todos os dias às 08:00, uma semanal toda segunda-feira às 10:00 e uma mensal todo dia 1º às 10:30, no horário de Brasília.

Visão geral dos endpoints

CaminhoPara que serveCom que frequência
Novidades
/api/v1/itemsSeleção ou todas as novidades dos últimos 7 dias, com filtro por categoria, janela de tempo e palavra-chaveno máximo uma vez por minuto
Repercussão e eventos
/api/v1/hot-topicsOs 10 fatos em maior repercussão agorano máximo uma vez por minuto
/api/v1/stories/{publicId}A linha do tempo das reportagens de um fato, o panorama por IA e os fatos relacionadosquando precisar
Diário
/api/v1/dailies/latestA edição diária mais recenteuma vez após todos os dias às 08:00
/api/v1/dailies/{date}Edição diária de uma data; matéria retirada deixa de ser citadavalide o ETag antes de usar, depois de o cache expirar
/api/v1/dailiesÍndice de datas das edições diáriasuma vez por dia
Semanal e mensal
/api/v1/weeklies/latestA edição semanal mais recente: manchete, panorama e os destaques da semana, por seçãouma vez após toda segunda-feira às 10:00
/api/v1/weeklies/{week}Uma semana específica, em formato ISO como 2026-W39; matéria retirada deixa de ser citadavalide o ETag antes de usar, depois de o cache expirar
/api/v1/weekliesÍndice das edições semanaisuma vez por semana
/api/v1/monthlies/latestA edição mensal mais recenteuma vez após todo dia 1º às 10:30
/api/v1/monthlies/{month}Um mês específico, como 2026-09valide o ETag antes de usar, depois de o cache expirar
/api/v1/monthliesÍndice das edições mensaisuma vez por mês
Para assistentes de IA
/api/v1/agentInstruções de uso para agentes; os endereços listados devolvem Markdown em português já organizadoquando precisar
Sincronização completa da seleção
/api/v1/selected/snapshotToda a seleção atual, paginada até o fimapenas na primeira vez
/api/v1/selected/changesInclusões, alterações e retiradas posterioresa cada poucos minutos

Usos comuns

bash
# Primeira vez: guarde o ETag do cabeçalho da resposta
curl --compressed -i 'https://jornal.12brain.org/api/v1/items?mode=selected&window=24h&limit=20'
# Depois, no máximo uma vez por minuto, enviando o ETag; 304 significa sem mudança
curl --compressed -i -H 'If-None-Match: <ETag anterior>' 'https://jornal.12brain.org/api/v1/items?mode=selected&window=24h&limit=20'

Para voltar páginas, devolva page.nextCursor como cursor e pare ao alcançar o item que você já tem. Não releia os 7 dias inteiros a cada vez.

Quando der erro

400
Parâmetro inválido: corrija pela OpenAPI e pelo code devolvido, sem trocar automaticamente por uma consulta mais ampla. Cursor inválido ou fora da janela devolve invalid_cursor; recomece da primeira página.
409
snapshot_required: o incremento não pode continuar com segurança; tire um novo retrato completo.
429
Requisições muito próximas: espere o Retry-After e não repita em paralelo.
5xx
Use recuo exponencial e o último resultado bem-sucedido. O serviço público não promete SLA.

Poder chamar de forma anônima não significa que todo uso esteja autorizado: Uso anônimo e somente leitura. Cite o 12 Brain Jornal e preserve o link para a fonte original.. Veja Regras de uso.