Câmara, Senado, TSE, PNCP, Receita e Compras.gov.br são consultados ao vivo — a primeira abertura de uma ficha pode levar alguns segundos; as seguintes vêm do cache.
Câmara, Senado, TSE, PNCP, Receita e Compras.gov.br são consultados ao vivo — a primeira abertura de uma ficha pode levar alguns segundos; as seguintes vêm do cache.
Toda fonte de dado público que o Monitor conhece: 92 sem chave, 137 testadas com sucesso. Cada entrada é um JSON em data/apis/ — adicionar uma API nova é um pull request de 30 linhas.
curl e registram o status real com data. Se um endpoint quebrar, abra issue "API quebrada"; se faltar uma (a Câmara Municipal da sua cidade, o TCE do seu estado), abra "nova API" com o JSON preenchido. Ver os arquivos ↗Fonte universal de contratos de 5.570 municípios + estados + União desde 2024. Base do Radar de Contratos e das red flags de contratação.
tamanhoPagina < 10 devolve 400. Sem filtro por fornecedor nesta API — usar /api/search/ ou Portal da Transparência.
Preço unitário item a item — comparar entre órgãos e com Painel de Preços para achar sobrepreço.
Ids vêm do numeroControlePNCP: {cnpj}-{tipo}-{sequencial}/{ano}.
Único jeito público de listar contratos POR FORNECEDOR no PNCP sem chave.
Não oficial: pode mudar sem aviso.
Sanções (CEIS/CNEP), contratos por fornecedor, emendas por parlamentar, servidores. É a chave que liga fornecedor ↔ político ↔ punição.
Cadastrar e-mail em portaldatransparencia.gov.br/api-de-dados/cadastrar-email; usar header chave-api-dados. No app: env PORTAL_TRANSPARENCIA_KEY.
Rate limit rígido: cachear. Sem CORS: sempre server-side. Atenção: /servidores exige órgão de lotação/exercício ou CPF — não aceita busca só por nome.
Descoberta programática de fontes: localizar URL atual de CSVs (CNPJ, CEIS, servidores etc.) sem hardcode. Catálogo, não dado final.
Login gov.br em dados.gov.br > Perfil > 'Chave de acesso'; header chave-api-dados-abertos
A antiga API CKAN /api/3/action também responde 401 hoje. Página do dataset é HTML público (200).
Núcleo do cruzamento: contrato x fornecedor x sanção x servidor x emenda. Base da 'Ficha do Político' e 'Radar de Contratos'.
Cadastro em portaldatransparencia.gov.br/api-de-dados/cadastrar-email; header chave-api-dados
OpenAPI público em /v3/api-docs. Sem CORS: proxy server-side obrigatório.
Transferências FPM/FPE por município, precatórios, garantias da União a estados: base para 'quanto seu município recebeu vs. o que licitou'.
CKAN padrão; slugs de dataset descobertos via package_search.
Saúde fiscal de cada prefeitura/estado; gasto com pessoal e restos a pagar em ano eleitoral; município que não entrega contas = red flag.
id_ente = código IBGE (2 dígitos p/ UF, 7 p/ município).
Seguir o dinheiro do empenho ao pagamento; picos de pagamento pré-eleição; favorecidos recorrentes.
CSV mensal sem auth; consulta granular via API Portal da Transparência (chave)
SIAFI em si não tem API pública; Tesouro Gerencial exige credencial de servidor. O aberto é o espelho no Portal da Transparência.
Emendas RP6/RP8/RP9 (relator/comissão) por autor e localidade; dotação inflada vs. executada.
Painel Qlik público (sem login) + arquivos CSV anuais; API SOAP/JSON antiga descontinuada
Para JSON use Portal da Transparência /emendas ou dataset 'orcamento-federal' no dados.gov.br.
Base do grafo empresa-sócio: laranjas, empresas de fachada, sócio de fornecedor = parente/assessor de político.
Sem auth; ZIPs mensais (Empresas0..9, Estabelecimentos0..9, Socios0..9, Simples, tabelas de domínio) em pasta Nextcloud
Layout em PDF no dataset do dados.gov.br. CPF de sócio vem mascarado; cruzar por nome+faixa etária.
Dispensas em série abaixo do teto, fornecedor único vencendo tudo num órgão, ata carona; item x preço p/ superfaturamento.
Consulta pública sem auth (rotas /usuarios e /alice exigem login)
Sem parâmetros obrigatórios retorna 404 (não 400) — atenção. OpenAPI em /v3/api-docs.
Única fonte nacional obrigatória (Lei 14.133) que cobre prefeituras: dispensas municipais, mesmo fornecedor em N municípios, contratos assinados em período eleitoral.
Também há /api/search/ (busca textual) que resetou conexão no teste. Cobertura municipal cresce desde 2024.
Extratos de contrato/dispensa/inexigibilidade e nomeações no dia; base p/ alertas 'novo contrato com empresa X'.
Cadastro gratuito em inlabs.in.gov.br/acessar.php; login por sessão (cookie) e download de ZIP diário por seção
Busca web in.gov.br/consulta falhou hoje (HTTP/2 PROTOCOL_ERROR / empty reply) — instável para scraping.
Carga completa para o banco local (sem rate limit da API): servidor sócio de fornecedor, emenda para município do próprio parlamentar, cartão corporativo em ano eleitoral.
Sem auth; ZIP por mês/dia; padrão /{tema}/{AAAAMM} ou /{tema}/{AAAAMMDD}
Nomes exatos de arquivo mudam por tema; ver página de cada tema.
Formato internacional padronizado (tender/award/contract) — facilita reuso de ferramentas OCDS (Kingfisher, red flags do Open Contracting Partnership).
buyerID, releaseStartDate e releaseEndDate obrigatórios.
CNES liga unidade de saúde ao CNPJ mantenedor e ao gestor municipal; cruzar com contratos de OS/OSCIP, estoques de medicamentos vs. licitações e óbitos vs. hospitais.
Sem chave; paginação limit/offset (limit máx 20)
Swagger em /static/swagger.json (~80 paths). Testado /cnes/estabelecimentos?limit=1 → 200 JSON. Muitas rotas antigas mudaram de nome — sempre reler o swagger.
Séries de mortalidade/internação por município para detectar hospitais fantasmas, superfaturamento de AIH e desvios em epidemias (dengue, SRAG).
Download CSV/DBC por dataset; API CKAN /api/3 respondeu 404 hoje
opendatasus.saude.gov.br redireciona (302) para dadosabertos.saude.gov.br. /dataset/sim → 200. Endpoint CKAN JSON não disponível (404).
Base primária p/ auditar produção hospitalar (AIH) x repasses do Fundo Nacional de Saúde x contratos com OS; ferramenta pysus (Python) automatiza.
Download de arquivos .DBC (formato próprio; converter com read.dbc/pysus). FTP ftp.datasus.gov.br/dissemin/publicos/
Página 200; FTP direto (ftp.datasus.gov.br) não respondeu via curl HTTP hoje (000) — usar cliente FTP/pysus. Tabnet (tabnet.datasus.gov.br) é só interface HTML.
Verificar se hospital/clínica contratada existe, quem é o mantenedor (CNPJ) e quais profissionais estão vinculados (médicos fantasmas em folha).
Consulta web; endpoints internos /services/* (instáveis)
Preferir apidadosabertos.saude.gov.br/cnes para JSON estável.
Picos anormais de concessão por agência (fraude em benefícios), cruzar CPF de servidores/políticos com BPC/aposentadoria (via Portal da Transparência), e volume de descontos associativos ilegais.
CSV mensais de benefícios concedidos/cessados publicados no gov.br e dados.gov.br (busca 'Previdência Social')
Páginas 200. dadosabertos.dataprev.gov.br não resolve (000). Não há API JSON — só arquivos.
Fundos de pensão de estatais foram foco da Lava Jato/Greenfield: cruzar dirigentes indicados politicamente x investimentos em FIPs x empresas sancionadas.
Arquivos CSV/XLSX (cadastro de EFPC, planos, patrocinadores, investimentos, autos de infração)
URL correta tem 'acesso-a-informacao-1'. Somente arquivos.
Denominadores para per capita (gasto por habitante, contratos por PIB municipal), deflacionar contratos por IPCA/INPC e detectar municípios com despesa desproporcional à população.
Sem chave
Todos os 6 agregados testados → 200. Alternativa: https://apisidra.ibge.gov.br/values/t/1737/n1/all/v/63/p/last%201 (200).
Chave-mestra de junção: código IBGE conecta TSE, SICONFI, FNDE, DATASUS, TCEs. Obrigatório para o Radar de Contratos por município.
Sem chave
Testado /estados/35/municipios → 200.
Mapas coropléticos de gasto/sanções/obras paradas por município; geoftp.ibge.gov.br/organizacao_do_territorio/malhas_territoriais/ para shapefiles completos (200).
Sem chave; parâmetro formato=application/vnd.geo+json | application/json (topojson) | image/svg+xml
Malhas do Censo 2022 e microdados em https://ftp.ibge.gov.br/Censos/Censo_Demografico_2022/ (200); POF em https://ftp.ibge.gov.br/Orcamentos_Familiares/... (200).
Setor censitário permite medir vulnerabilidade da população onde obras foram paralisadas ou onde políticos concentram emendas.
Download direto de ZIP/CSV
Censo 2022 e POF diretórios → 200.
Número de matrículas por escola/município é o denominador do FUNDEB e do PNAE (merenda) e do PNATE (transporte): detectar 'alunos fantasmas' e repasses inflados.
ZIP anual com CSV + dicionário
ZIP 2024 → 200 (arquivo grande, centenas de MB).
Resultado educacional x gasto per capita em educação (SIOPE) expõe municípios que gastam muito e entregam pouco — sinal de desvio.
ZIP anual
ZIP 2023 → 200.
Verifica se prefeitura aplicou o mínimo constitucional (25%) e o FUNDEB (70% em profissionais); cruzar com contratos de merenda/transporte escolar e com prefeito candidato à reeleição.
Relatórios HTML/XLS por município e ano; datasets CSV via dados.gov.br (organização FNDE)
fnde.gov.br/dadosabertos redireciona ao dados.gov.br. Relatório local → 200 (HTML).
Prefeituras com prestação de contas reprovada/omissa que continuam recebendo; valores de merenda por aluno x preços do contrato; comparar com Censo Escolar.
Consulta pública por UF/município/programa/ano; SIGPC em https://www.fnde.gov.br/sigpcadm/sistema.pu
Ambas as páginas → 200. Sem API JSON; scraping de formulário Oracle PL/SQL.
Cruzar CNPJ embargado/multado com contratos públicos e doações eleitorais; fazendas de políticos com embargo; madeireiras autorizadas no SINAFLOR ligadas a candidatos.
API CKAN sem chave; arquivos CSV/ZIP diretos
package_search → 200; ambos ZIP CSV → 200. Diretório /dados/SINAFLOR/ → 403 (usar busca CKAN).
Sobrepor polígonos de desmatamento com CAR/SIGEF de políticos e fornecedores; municípios campeões de desmatamento x emendas e licenças.
OGC WFS/WMS sem chave; outputFormat=application/json p/ GeoJSON
GetCapabilities DETER e PRODES → 200. GetFeature grande deu timeout em 20s — usar bbox/CQL_FILTER e maxFeatures. A antiga /api/v1 → 404.
CAR autodeclarado revela fazendas de políticos/candidatos e sobreposição com terras públicas, TI e embargos IBAMA.
Download de shapefile por município exige resolver captcha na página; consulta pública por número CAR
Sem API; captcha impede automação direta. Alternativa: base 'CAR' já tratada por MapBiomas/Imaflora (esfera civil).
Parcelas georreferenciadas com nome do detentor: cruzar com candidatos, grilagem em assentamentos e sobreposição com áreas embargadas.
Download de shapefiles/CSV por UF sem login (export_shp.py); Acervo Fundiário exige cadastro
export_shp.py → 200; ZIP SP → 200. acervofundiario → 302 (login).
Setorização de risco geológico x obras de contenção contratadas e emendas de defesa civil (obras em área sem risco ou risco sem obra).
ArcGIS REST (?f=json) e downloads em geosgb.sgb.gov.br/geosgb/downloads.html
REST ?f=json → 200; downloads → 200; geoportal.cprm.gov.br antigo não responde.
Ponto único para achar camadas oficiais (unidades de conservação, terras indígenas, obras) e cruzar com fazendas/obras de interesse.
OGC WFS/WMS sem chave; GeoNetwork API /geonetwork/srv/api/records
GetCapabilities → 200; catalog.search → 200; inde.gov.br/api/catalogo bloqueia curl (WAF 'Request Rejected').
Denominador para contratos de sinalização, radares e transporte; frota oficial x locação de veículos por prefeituras. RENAVAM individual não é público.
XLSX mensais por UF/município/tipo/combustível/ano-fabricação
Página 2026 → 200 com links XLSX.
Aeronaves em nome de empresas contratadas ou de políticos (patrimônio incompatível); operadores de táxi-aéreo usados em campanhas.
CSV direto
CSV → 200.
Concessionárias rodoviárias: fiscalizações, multas e reequilíbrios contratuais x doações a políticos; empresas de ônibus fretado usadas em campanha.
API CKAN sem chave
package_search → 200.
Arrendamentos e autorizações de terminais portuários x empresas doadoras; movimentação de carga como indício de subfaturamento em concessões.
Datasets no dados.gov.br; Estatístico Aquaviário (web3.antaq.gov.br) fora do ar hoje
Reverificar web3.antaq.gov.br/ea/sense/download.html.
Trechos com pavimento ruim logo após obra contratada = indício de superfaturamento/má execução; cruzar contratos DNIT (Transparência) com condição da via.
CKAN; api em /dadosabertos/api/3/action/*
Portal CKAN → 200 com datasets listados.
Trechos com muitos acidentes x obras de segurança viária prometidas/contratadas e não entregues; base para 'obras que salvariam vidas'.
CSV anuais hospedados no Google Drive (links na página) e /arqcsv
Página → 200; downloads via Google Drive.
Empreendimentos de geração e distribuidoras (CNPJ) x sanções x doações; multas não pagas por concessionárias; subsídios (CDE) por beneficiário.
CKAN + datastore_search (SQL-like) sem chave
package_search → 200. datastore_search exige resource_id válido (409 sem ele).
Postos que abastecem frotas públicas: preço cobrado x média ANP da cidade; postos autuados vencendo licitação; postos de políticos.
CSV/XLSX por tema (páginas gov.br)
Páginas multas/fiscalização/preços → 200.
Provedores de internet contratados por prefeituras/escolas (conectividade) x cobertura real declarada; rádios comunitárias e outorgas de políticos.
ZIP/CSV direto; painéis em informacoes.anatel.gov.br
ZIP → 200. dados.anatel.gov.br redireciona p/ /dados/hub/ (vazio via curl).
Fornecedores de medicamentos/EPIs sem AFE vencendo licitações (pandemia); tempo de análise de petições x lobby.
Diretório h5ai com CSV
Diretório → 200 com CSVs listados.
Planos de saúde de servidores contratados por estados/municípios: operadora com dívida de ressarcimento ao SUS ou classificação prudencial ruim; agenda de autoridades da ANS.
Diretório HTTP com CSV/ZIP
Diretório → 200.
Produtoras beneficiadas por FSA/Lei Rouanet ligadas a políticos ou a agências de publicidade governamental.
Datasets no dados.gov.br (CSV)
dados.ancine.gov.br → 403; usar gov.br/dados.gov.br.
Deflatores, PIB municipal, indicadores sociais e de segurança para contextualizar gastos e emendas.
Sem chave; OData ($filter, $top)
Metadados?$top=1 → 200. HTTP (sem TLS) — usar proxy server-side.
Índice para localizar CSVs de órgãos sem portal próprio (INSS, PREVIC, ANTAQ, ANCINE, ANVISA); não é fonte primária.
API /api/publico/* exige header chave-api-dados (cadastro em dados.gov.br); páginas HTML públicas
Páginas HTML → 200; /api/publico sem chave → 401.
Agência pública com licença CC BY (reprodução permitida com crédito) — a única fonte jornalística cujo texto integral pode ser reproduzido legalmente.
Sem chave.
Estatal: risco de viés pró-governo do momento; sinalizar.
Base da Ficha 360 do deputado: gastos com CNPJ (cruzar com Receita/CEIS/doadores), produtividade, votações, presença, comissões.
Paginação por links rel=next. Arquivos bulk (CSV/JSON/XLSX) por ano em /arquivos/ para CEAP, votações, presenças.
Ficha 360 do senador: mandatos, votos, produtividade. Gastos (CEAPS) ficam no Portal da Transparência do Senado (CSV anual).
Respostas JSON espelham o XML (objetos aninhados; listas com 1 item podem vir como objeto). Header Accept: application/json.
Fecha a lacuna da cota dos senadores em JSON: permite as mesmas red flags da CEAP (fornecedor dominante, combustível, divulgação, nota elevada) e cruzamento com Receita/PNCP.
Descoberta na pesquisa de 18/08/2026; resposta grande não cabe no cache de dados do Next (>2 MB).
Fonte oficial (domínio público) do que cada deputado faz/vota; filtrar por nome no título/descrição para a coletânea sem risco de copyright.
Sem chave.
Slugs de editoria em CAIXA-ALTA com hífen. Conteúdo institucional (tende a ser neutro/positivo).
Atividade oficial de senadores; filtrar por nome. Domínio público.
Sem chave.
ATENÇÃO: /noticias/feed e /noticias/feed/todasnoticias devolvem HTML (página Plone), não XML. O XML real é /noticias/RSS. Feed mistura áudio/vídeo/texto — filtrar prefixo 'Áudio:'/'Vídeo:' se quiser só texto.
Coração do Manual do Candidato 2026: bens (evolução patrimonial), doadores, fornecedores de campanha, processos, situação da candidatura.
Campos de prestação de contas de 2026 só aparecem a partir de setembro. Foto: /divulga/rest/arquivo/img/{idEleicao}/{idCandidato}/{UF}.
Bulk histórico completo (1945→2026): bens, receitas/despesas de campanha, resultados por seção, filiados. Base para séries e cruzamentos offline.
Dados são ZIP/CSV grandes; processar fora do serverless (GitHub Actions / DuckDB).
Dicionário de ids obrigatório para todo o resto (idEleicao, códigos de cargo e de município TSE). Limite de gastos permite red flag 'gastou/arrecadou acima do teto' e 'estouro de contratação de cabos eleitorais'.
Sem chave. Endpoints descobertos no bundle Angular do site (main.*.js + chunks lazy).
Não existe /eleicao/eleicao-atual (404) apesar de citado no JS. /eleicao/estados/{ano}/ano e /eleicao/periodoEleicao retornam vazio. Para eleições municipais o parâmetro 'UF' das rotas de candidatura é o código TSE do município (5 dígitos).
Núcleo do 'Manual do Candidato 2026' e da linha do tempo: bens declarados por eleição (evolução patrimonial), CNPJ de campanha (chave para cruzar com PNCP/Portal da Transparência), números de processo (chave para DataJud), certidões criminais em PDF, flags de motivo de indeferimento (Ficha Limpa/abuso de poder/compra de voto), histórico de candidaturas com ids.
Sem chave.
Em 17/08/2026: 13 candidatos a presidente, 1.092 a dep. federal em SP; 97% 'Aguardando julgamento' (deferimento sai até 14/09). O detalhe já traz bens, sites, certidões e vices. 'nomeUrna' como filtro do /pesquisar dá 422. Lista traz cpf=null; só o detalhe traz CPF. Detalhe de 2022 já traz descricaoTotalizacao (Eleito por QP, Suplente...).
Base do cruzamento 'doador que é fornecedor do governo' e 'fornecedor de campanha que vira contratado': CPF/CNPJ de doadores e fornecedores + extrato bancário real da conta de campanha (contrapartes!) + NFes. Compare limiteDeGasto vs totalDespesasPagas; FEFC vs total; concentração de fornecedores; doações devolvidas (fonte vedada).
Sem chave.
Para 2026 o consolidado já devolve idPrestador e cnpj de campanha, mas idUltimaEntrega=null, dataUltimaAtualizacaoContas='1989-12-31' (sentinela) e dadosConsolidados=null: as contas só aparecem após a 1ª entrega parcial (calendário: parciais em setembro; final até 3/11/2026). tipoOrdenacao aceita 'lista' | 'rank' | 'alfabetico' (números dão 404). Para eleições < 2016 usar /preteritas/doador-fornecedor/... (formato diferente).
Ponto de partida do 'Radar de doadores': dado um CNPJ (fornecedor do governo, empresa sancionada) descobrir tudo que ele doou/vendeu a campanhas; ranking 2026 já mostra doadores milionários pré-campanha (R$11,8 mi em doações declaradas em 17/08/2026). Dívidas de campanha assumidas por partidos = red flag de 'quem paga a conta depois'.
Sem chave.
Ordem dos parâmetros importa: totalizador é /{idEleicao}/{cpfCnpj} (invertido retorna nulos). /ranks/doadores/{idEleicao}/{UF} dá 400 — o 2º parâmetro é o ANO. Rankings sem CSV (urlCsv=null).
Carga em massa para o banco do projeto: CPF do candidato + bens por eleição (2006→2026) para evolução patrimonial; motivo_cassacao para 'ficha suja'; certidões criminais para leitura/OCR; de-para TSE↔IBGE.
Download direto (HTTP/2, sem chave). CSV latin1, separador ';', aspas em tudo, um CSV por UF + BRASIL dentro do zip + leiame.pdf.
Atualizados diariamente durante o período eleitoral (last-modified 17/08/2026 15:36). Em 2026 CD_ELEICAO no CSV = 6257 (código curto) enquanto o DivulgaCand usa 20322002026 — chave comum é SQ_CANDIDATO = id do DivulgaCand. Valores monetários com vírgula decimal. '#NULO'/'#NE'/-1/-3 = ausência.
Base histórica completa (2002→2024) para treinar red flags: doador-fornecedor cruzado, doações de servidores/beneficiários de programas, doadores com CNAE incompatível, fornecedores recém-abertos, laranja (mesmo endereço/sócio), FEFC concentrado em poucos candidatos, despesas com 'militância' inflada.
Download direto. Zips grandes (2022 candidatos = 473 MB).
Ainda não existe pacote 2026 (17/08/2026); durante a campanha os dados nascem no DivulgaCand (REST) e o zip consolidado sai depois. O TSE reprocessa retroativamente (2022 modificado em 08/2026), então re-baixar periodicamente. Antes de 2016 as receitas ficam em receitas_candidatos_{ano}_brasil.txt com layout diferente.
Base para 'votação atípica' (seções/municípios com voto concentrado em candidato + doadores/fornecedores locais), custo por voto (despesa ÷ votos) e comparação de desempenho antes/depois de emendas.
Download direto.
Existem também 'resultados-eleicoes-suplementares-{ano}' e 'resultados-{ano}-arquivos-transmitidos-para-totalizacao'. Para 2026 os arquivos só surgem após 4/10/2026.
Único JSON oficial de resultado em tempo quase real (noite da eleição) e histórico por município → alimentar 'linha do tempo' (eleito/não eleito/QP/média) e 'custo por voto'. Códigos de cargo com 4 dígitos (0001 presidente … 0013 vereador).
Sem chave (CDN Akamai). Ambientes: /oficial e /simulado.
Chaves abreviadas (s=seções, st=totalizadas, e=eleitorado, c=comparecimento, a=abstenção, vb=brancos, vn=nulos, cand[]: n=número, nm=nome, vap=votos, pvap=%, st=situação). Códigos ainda não publicados para 2026 (aparecem em ele-c.json semanas antes do pleito; procure pl[] com dt=04/10/2026).
Detectar 'curral eleitoral': salto de eleitores transferidos para município pequeno antes do pleito; denominador para custo por eleitor e votação atípica.
Download direto.
Também há dashboards em sig.tse.jus.br (Oracle APEX) mas estão atrás de bot-protection F5 (curl recebe página TSPD).
Cruzar pagante da pesquisa com doadores/fornecedores de campanha e com contratados públicos (pesquisa paga por empreiteira = red flag); institutos com CNPJ recém-aberto ou sem estatístico registrado.
Download direto (atualizado diariamente: last-modified 17/08/2026 08:47).
A consulta interativa PesqEle (inter04.tse.jus.br/pesqele-publico) não resolve DNS hoje; usar o zip diário.
Ficha 'processos eleitorais' do político sem depender do PJe (que está atrás de anti-bot): AIJE/AIME/cassação por abuso de poder e compra de votos, ligados ao SQ_CANDIDATO/NR_PROCESSO.
Download direto.
Ainda não há processual-2026 (surge após o julgamento dos registros). Combinar com numeroProcesso do DivulgaCand e com DataJud para movimentações atuais.
Onde vai o Fundo Partidário fora da campanha: fornecedores recorrentes de diretórios, gastos com advogados/consultorias ligados a dirigentes, sobreposição fornecedor-do-partido × fornecedor-do-governo.
Download direto.
Filiados nominais por partido/UF (antigo filiados_{partido}_{uf}.zip) retornam 404 — verificado.
Quem manda no dinheiro do partido: presidentes e tesoureiros (respFinanceiro=SIM) com CPF → cruzar com fornecedores de campanha, sócios de empresas (Receita/CNPJ) e contratos públicos; detectar dirigente que é servidor comissionado ou fornecedor do governo.
Sem chave (API interna do SPA AngularJS; endpoints extraídos de scripts.*.js).
sqPartido no filtro é o NÚMERO do partido (22=PL). /participaOrgaoPartidario/consulta?cpf= depende de serviço da Receita (retornou 500). /cargos dá NumberFormatException sem parâmetro.
Único lugar com partes, andamentos completos e documentos públicos dos processos eleitorais (AIJE, AIME, RCand). Usar como link de saída na ficha e, se necessário, Playwright para extrair.
Sem chave, mas protegido por F5/TSPD (desafio JavaScript + cookies): curl recebe HTML de challenge; precisa de navegador headless.
Alternativas: DataJud (metadados) + CSVs 'processual-{ano}' do CDN + PDF das decisões pelo /divulga/rest/arquivo/doc quando anexadas ao registro.
Só para o próprio cidadão. Para o projeto, o equivalente público está nos ARQUIVOS do registro de candidatura (certidões criminais em /divulga/rest/arquivo/doc e no zip certidao_criminal_{ano}_{UF}) e no campo descricaoSituacao/motivos.
SPA que exige dados pessoais do eleitor (título ou CPF, nome, data de nascimento, nome da mãe) — não é API pública; portal www.tse.jus.br devolve 403 (Akamai) para clientes não-navegador.
Não tentar automatizar emissão de certidão de terceiros (dados pessoais). Registrar apenas link.
Doador (CNPJ/CPF) x fornecedor do governo; evolução patrimonial do candidato entre eleições; empresa doadora que vira contratada.
Detalhado em apis-eleitoral.json (ids tse-*). Aqui só o índice CKAN + CDN.
Ficha do político em tempo real na campanha 2026: bens, empresas em que é sócio, doadores.
Ver apis-eleitoral.json para detalhes.
Vinculação eleito -> mandato -> contratos assinados no mandato.
Código da eleição 2026 provável 2062262026 (padrão DivulgaCand); confirmar quando publicado.
Gasto declarado com impulsionamento (Meta/Google) por candidato — comparar com o que aparece nas bibliotecas de anúncios (subdeclaração = indício).
Sem chave (CKAN API); arquivos ZIP/CSV grandes.
Busca por 'impulsionamento' no CKAN retorna 0 — o dado está DENTRO das despesas de campanha, não como dataset próprio. DivulgaCandContas (divulgacandcontas.tse.jus.br) é a UI; entrada detalhada do TSE fica no arquivo de APIs eleitorais.
Ponte oficial entre o número de processo que o DivulgaCand entrega (RCand, DRAP, prestação de contas, cassação) e a movimentação real (indeferimento, recurso, trânsito em julgado). Classes úteis: 11532 RCand, 11526 AIJE, 11527 AIME, 11529 Rp, 12193 PC-Prestação de contas eleitorais.
Header 'Authorization: APIKey <chave pública>' — a chave pública atual está publicada na wiki do DataJud (cDZHYzlZa0JadVREZDJCendQbXY6SkJlTzNjLV9TRENyQk1RdnFKZGRQdw==); pode ser rotacionada pelo CNJ.
Alias correto usa hífen: api_publica_tre-sp (api_publica_tresp e tre_sp → index_not_found). Não traz partes nem teor das decisões (só metadados/movimentos). Sem chave: 401.
Inelegibilidade por improbidade (LC 64/90 art. 1º, I, 'l') — condenação colegiada com suspensão de direitos políticos = ficha suja. Cruzar CPF do candidato (do detalhe DivulgaCand) com o CNCIAI.
Sem chave; formulário HTML (GET com parâmetros) — sem JSON.
Scraping simples (tabela). Há também o CNIA (inelegibilidade) integrado. Respeitar robots e cache. O Portal da Transparência (CGU) expõe CNEP/CEIS/CEAF por API — ver arquivo apis-federal.
Contar/acompanhar ações de improbidade, ações penais e execuções contra CNPJ/CPF (não expõe partes; usar número CNJ obtido em diários/DOU). Base para 'ficha judicial' de candidatos e fornecedores.
Header 'Authorization: APIKey <chave pública oficial>' publicada na wiki (hoje: cDZHYzlZa0JadVREZDJCendQbXY6SkJlTzNjLV9TRENyQk1RdnFKZGRQdw==); POST JSON no formato Elasticsearch
Testado POST TJSP com chave pública → 200. Chave pode rotacionar: ler sempre da wiki. Sem nome de partes (LGPD).
Ficha Limpa (LC 64/90 art. 1º, I, 'g' e 'l'): candidato/gestor com contas irregulares ou inabilitado; empresa inidônea que doa ou fornece para campanha. Cruzar por CPF (formatado com pontos) e CNPJ com doadores/fornecedores do DivulgaCand.
Sem chave (Oracle REST Data Services).
Filtros ?nome=/?cpf= são ignorados (retorna tudo) — baixar tudo e filtrar localmente. A 'Lista de responsáveis com contas julgadas irregulares para fins eleitorais' que o TCU envia ao TSE fica no app APEX contas.tcu.gov.br/ords/f?p=1660 (sem API testável; loop de redirects em curl).
Detectar fornecedor punido ganhando contrato/licitação; alerta vermelho automático no CNPJ.
Mesma chave do Portal da Transparência (chave-api-dados). CSV diário sem auth.
Também disponível no dataset 'ceis' no dados.gov.br.
Empresas condenadas por corrupção; cruzar com doações eleitorais e contratos vigentes.
chave-api-dados; CSV sem auth
Ex-servidor expulso virando sócio de fornecedora; OSC impedida recebendo emenda.
chave-api-dados; CSV sem auth em /download-de-dados/cepim e /download-de-dados/ceaf
Checagem instantânea de fornecedor/candidato: inidôneo TCU, inabilitado ou com contas irregulares (lista enviada ao TSE — inelegibilidade Ficha Limpa).
Sem chave
GET certidão → 200; POST lista inidôneos → 200 (GET dá 405). Lista para o TSE (implicação eleitoral) em https://certidoes.apps.tcu.gov.br/lista-implicacao-eleitoral.
Acórdãos citam CNPJ/CPF, órgãos e obras auditadas: minerar por fornecedor ou por município; painel de dirigentes (INDICADOR:DIRIGENTES) e obras paralisadas.
Sem chave
recupera-acordaos → 200; termos-contratuais → 200. dadosabertos.tcu.gov.br / dados.tcu.gov.br não resolvem mais — usar sites.tcu.gov.br/dados-abertos.
Licitações municipais do RS com vencedor/CNPJ e valor: direcionamento, fracionamento, fornecedor único; cruzar com doadores de prefeitos.
CKAN sem chave; CSV.zip por órgão/ano
package_list → 200; package_search licitações → 200 com URLs CSV.
Despesa municipal linha a linha (AUDESP) para todos os 644 municípios de SP: ranking de fornecedores por prefeitura, cruzar com CEIS/CNEP e doações.
Sem chave; JSON por município (slug) / ano / mês
/municipios → 200; /despesas/adamantina/2024/01 → 200. Dados abertos AUDESP em massa: transparencia.tce.sp.gov.br/conjunto-de-dados.
Licitações e contratos municipais de MG com CNPJ vencedor: mesma lógica do TCE-RS/SP.
SPA Angular com download de CSV/ZIP por tema/ano (sem API CKAN — /api/3 → 404)
Raiz → 200 (SPA); endpoints CKAN 404. Descobrir links de download via XHR do SPA.
Licitações/contratos municipais do PR.
Downloads CSV por município/ano (SIM-AM)
Reverificar; site instável hoje.
Auditorias e julgamentos de contratos da Prefeitura de SP (maior orçamento municipal do país).
Página de dados abertos com arquivos (CSV/XLSX) e sistema de processos
Página → 200; sem API JSON identificada.
Licitações/contratos dos 246 municípios de GO.
Catálogo de serviços REST listado no SPA (servico-rest-list); alguns exigem token
Raiz → 200 (SPA Angular). Paths REST não descobertos por curl — abrir no navegador para ver catálogo.
Histórico de alterações contratuais (troca de sócio às vésperas de contrato) só via certidão; use CNPJ aberto da Receita como proxy.
Sem API pública aberta. JUCESP Online exige cadastro/login e cobra por certidão; REDESIM oferece consulta de viabilidade e 'Consulta CNPJ' web sem API. Dados societários abertos = arquivos da Receita.
Lacuna real: nenhuma junta expõe API aberta. Alternativa paga: SERPRO/Infosimples.
Atos do governo paulista (maior orçamento estadual). Só scraping.
Sem API JSON documentada; busca web/ASPX e novo portal doe.sp.gov.br (Next.js) com endpoints internos
Levantamento geral: nenhum DOE estadual tem API JSON pública documentada; RJ (ioerj.com.br) e SP são HTML/PDF; alguns (ES, PR, MG-JusBrasil) só PDF. Querido Diário cobre parte.
Atos estaduais RJ; requer OCR/parsing de PDF.
Sem API; PDFs por edição
Ponto de entrada para localizar CSVs atuais de cias abertas e fundos.
Diretórios /dados/... são navegáveis (Apache index).
Conselheiros/diretores de estatais e concessionárias com histórico político; acionistas controladores atrás de fornecedores do Estado; transações com partes relacionadas.
ZIP anual sem auth
Inclui fre_cia_aberta_administrador_membro_conselho_fiscal, fre_cia_aberta_posicao_acionaria, etc.
Fatos relevantes de estatais e concessionárias (contratos, investigações, acordos de leniência) com data para cruzar com negociações e decisões públicas.
ZIP anual sem auth; contém link para o PDF de cada documento
Compras/vendas de insiders em estatais (Petrobras, BB, Eletrobras) antes de anúncios governamentais; sinal de vazamento de informação.
ZIP anual sem auth
Dados agregados por grupo (diretoria, conselho, controlador), não por pessoa.
Fundos exclusivos de políticos/agentes públicos (bens declarados no TSE citam CNPJ do fundo); RPPS municipais aplicando em fundos podres.
CSV/ZIP sem auth
cad_fi.csv tem ~40 MB; usar cad_fi_hist para histórico.
Preço/volume de estatais em torno de decisões governamentais e insider (VLMO); avaliar bens declarados em ações.
ZIP anual/mensal/diário sem auth (layout posicional)
Layout fixo de 245 caracteres; documentação no site B3.
Volume anômalo em ação de estatal antes de fato relevante; complementa COTAHIST com dados intradiários.
Endpoint /api/download/requestname retorna token; depois /api/download/?token=... baixa CSV
up2data é produto pago; o que é público sem login está aqui e no COTAHIST. Cotações em tempo real não são abertas.
Mapear CNPJ de listada -> códigoCVM -> FRE/IPE; identificar concessionárias e estatais no grafo.
Parâmetro é JSON base64 na URL
Não oficial/documentado; pode mudar sem aviso.
Deflacionar contratos e patrimônio (IPCA), converter contratos em dólar (PTAX), comparar reajustes contratuais vs. inflação.
Busca de códigos de série em www3.bcb.gov.br/sgspub.
Converter contratos/importações em moeda estrangeira; comparar câmbio contratado vs. oficial em compras superfaturadas.
OData v4; $filter/$select suportados.
Proxy de atividade econômica municipal (contraste com receita própria declarada no SICONFI); dado agregado, sem CPF.
Bancos públicos estaduais/regionais e cooperativas ligadas a políticos; saúde de banco que recebe depósitos judiciais/folha de prefeitura.
Chamar função sem parâmetro exige '()' no path. Testar AnoMes com data-base publicada (trimestral).
Contexto macro; taxa de juros praticada vs. juros de empréstimos consignados/precatórios em contratos públicos.
Não existem em Olinda hoje: Reservas_Internacionais, CapitaisEstrangeiros, scr_agregados (404) — usar SGS (reservas: série 13621; base monetária 1788) e dadosabertos.bcb.gov.br p/ SCR agregado (CSV).
Crédito rural/empresarial explodindo em município específico; fluxo de capital estrangeiro por país (paraísos fiscais).
CKAN sem auth; dados em CSV
SCR individual é sigiloso; só agregado é público. Olinda não tem serviço scr_agregados/CapitaisEstrangeiros hoje (404).
Chave CNPJ->código CVM para ligar fornecedores/concessionárias ao FRE/IPE; receita da empresa vs. volume contratado com o Estado (dependência do governo).
CSV/ZIP sem auth
Ficha da empresa fornecedora/doadora: idade do CNPJ, capital social, sócios, situação. Alternativa: minhareceita.org/{cnpj}.
Base atualizada mensalmente a partir dos arquivos abertos da Receita.
Achar nomeações, dispensas, aditivos e decretos que não estão em API estruturada — busca por nome de político/CNPJ em diários.
Host correto é api.queridodiario.ok.org.br (o domínio queridodiario.ok.org.br/api devolve HTML).
Comparar gasto declarado com impulsionamento (tipoDespesa 'Publicidade em redes sociais'/fornecedores FACEBOOK SERVICOS ONLINE DO BRASIL LTDA 13347016000117 e GOOGLE BRASIL INTERNET LTDA 06990590000123) vs faixa de gasto na Ad Library; anúncios pagos por terceiros (bylines ≠ CNPJ de campanha) = caixa 2 digital / doação estimável não declarada.
Access token de usuário/app com identidade verificada para 'ads_archive' (categoria POLITICAL_AND_ISSUE_ADS). Sem token retorna OAuthException. Relatório agregado (CSV) em https://www.facebook.com/ads/library/report/?country=BR (download exige sessão).
Requer conta verificada (documento) para dados políticos. Guardar page_id dos candidatos (rede_social_candidato_{ano}.zip traz URLs de Facebook/Instagram).
Mesmo cruzamento da Meta: gasto declarado no DivulgaCand com GOOGLE BRASIL INTERNET LTDA vs gasto observado por anunciante; anunciantes que não são o CNPJ de campanha.
CSV público sem chave; BigQuery: bigquery-public-data.google_political_ads (conta Google).
Filtrar regions contendo 'BR'. Verificação de anunciante político brasileiro depende de cadastro na plataforma.
Atalho para análise histórica sem baixar 10 GB de zips: id_candidato_bd amarra o mesmo político em várias eleições; joins prontos entre bens, receitas, despesas e resultados.
Metadados GraphQL sem chave; dados via BigQuery (projeto basedosdados, precisa conta Google/billing free-tier) ou pacote Python 'basedosdados'.
Defasagem: 2026 só entra após o TSE consolidar; para o ano corrente usar DivulgaCand/CDN. Slug GraphQL do dataset é 'eleicoes' (id eef764df-...), tabela BigQuery é br_tse_eleicoes.
Referência histórica/acadêmica; hoje substituída pela Base dos Dados.
Sem chave (quando estava no ar).
Não usar em produção. Código do cliente R/Python (cepespR, cepesp-python) ainda serve como documentação de agregações.
Backup de dados eleitorais tratados; útil também para 'sócios de empresas' (dataset socios-brasil) para achar laranjas entre doadores.
Header 'Authorization: Token <chave>' (cadastro gratuito em brasil.io/auth/tokens-api/).
Verificar slug atual das bases eleitorais após obter token.
Contexto de atuação parlamentar; usar como link de saída na ficha (não é fonte primária).
Site público (petite-vue + d3); sem API documentada — dados embutidos na página/JSON estático.
Papo de Urna (papodeurna.com.br) não resolve DNS em 17/08/2026 — projeto aparentemente descontinuado.
Reuso de código e validação cruzada de endpoints; 30+ repositórios usam a mesma base REST (busca 'gh search code').
Código aberto.
Nenhum deles cobre extratos bancários, NFes, doador-fornecedor por CNPJ ou prestação partidária — os endpoints deste catálogo vão além.
Join pronto entre TSE x CNPJ x contratos federais x sanções sem baixar ZIPs; ideal para batch noturno.
GraphQL de metadados sem auth (POST). Dados: BigQuery projeto 'basedosdados' com conta Google (1 TB/mês grátis) ou pacote pip basedosdados
GET no endpoint retorna 400 (só POST). Atualização de algumas tabelas atrasa meses.
Mesma utilidade da BrasilAPI, com opção de rodar localmente para consultas em massa (milhares de fornecedores).
Ideal para hospedar cópia própria e evitar rate limit.
Onde não há PNCP nem API municipal, é a única via automatizável para dispensas, nomeações e decretos de prefeituras.
Domínio queridodiario.ok.org.br/api devolve HTML do front; usar api.queridodiario.ok.org.br. Cobertura ~parcial dos 5.570 municípios.
Coletânea de mídia de qualquer político em segundos (100 itens/consulta, título+link+veículo+data). Base do 'Radar de Mídia' da Ficha do Político.
Sem chave. Só HTTP GET.
COPYRIGHT explícito no feed: 'made available solely for the purpose of rendering Google News results within a personal feed reader for personal, non-commercial use. Any other use is expressly prohibited'. Uso em produto público é zona cinzenta -> exibir só título+veículo+data e linkar; nunca armazenar corpo; considerar substituir por RSS diretos dos veículos + GDELT. Links são redirecionadores news.google.com/rss/articles/... (não é a URL final; resolver server-side com cuidado). Máx 100 itens; título vem com sufixo ' - Veículo'.
Índice global gratuito de notícias c/ 3 meses de janela (ou startdatetime/enddatetime desde 2017). Serve como agregador SEM restrição de copyright do Google, para linha do tempo de escândalos e picos de cobertura.
Sem chave.
Testado: sourcelang:por funciona; sourcecountry:BR filtra domínios BR. Títulos às vezes perdem acentos ('inteno de voto por posio'). Query precisa >= 1 termo textual (aspas p/ frase). Retorna texto plano de rate limit em vez de JSON — tratar parse error como retry após 6 s. Timespan máximo default 3 meses; usar startdatetime=YYYYMMDDHHMMSS para histórico. maxrecords até 250.
Agrega em 1 chamada as checagens de Aos Fatos, Lupa, Comprova, Estadão Verifica, AFP Checamos, UOL Confere etc. (todas publicam ClaimReview). Aba 'Checagens' da Ficha do Político.
API key do Google Cloud (habilitar 'Fact Check Tools API'); ?key=... na query string
Gratuita, mas exige chave; guardar server-side. Também existe o Fact Check Explorer (UI) em toolbox.google.com/factcheck/explorer. Cobertura depende dos veículos marcarem ClaimReview.
Chave de desambiguação de homônimos e 'cola' entre bases: QID -> IDs da Câmara (P4348), Senado (P4360)?, TSE, foto livre, cargos c/ datas (P580/P582 qualifiers), partidos históricos. Alimenta cabeçalho da Ficha do Político.
Sem chave. Enviar User-Agent identificável (obrigatório na SPARQL).
Atenção: busca 'Arthur Lira' retorna 1º Q23904977 (o político); Q18348563 é outro item. P102 pode listar partidos antigos sem qualificador de data — checar P580/P582. Licença CC0.
Bio curta + foto + link p/ seção de controvérsias; summary devolve o QID para cruzar com Wikidata.
Sem chave; enviar User-Agent.
Conteúdo CC BY-SA: exibir com atribuição. Texto pode ter viés/vandalismo — usar só como ponto de partida.
Picos de visualização = escândalo/evento; cruzar com timeline GDELT. Barato e sem copyright.
Sem chave; User-Agent obrigatório.
Dados a partir de 2015-07. Sem PII.
Veículo político especializado, cobertura de Congresso e bastidores; ótimo p/ coletânea.
Sem chave.
/poder-politica/feed/ redireciona p/ home (não existe). Só título+link+data; conteúdo é copyright do veículo.
Especializado em Congresso, ética parlamentar e escândalos; histórico de prêmio 'Congresso em Foco'.
Sem chave.
Domínio antigo congressoemfoco.uol.com.br redireciona (301) para www.congressoemfoco.com.br.
Maior portal do país; feed limpo com título/link/data. Fato ou Fake é a checagem do grupo.
Sem chave.
Resposta vem gzip — usar Accept-Encoding/--compressed. Copyright Globo: só metadados.
Referência nacional; muitos furos de investigação.
Sem chave.
RSS 0.91 (sem pubDate em alguns itens). Paywall no destino.
Cobertura política + Estadão Verifica (checagem, membro IFCN).
Sem chave.
Feed do Estadão Verifica dedicado não confirmado (título do canal veio genérico); /estadao-verifica/feed/ = 404. Alternativa: Fact Check Tools API filtrando reviewPublisherSiteFilter=estadao.com.br.
Forte em Brasília/bastidores e denúncias; feed por editoria (WordPress).
Sem chave.
Provavelmente existe /colunas/.../feed e busca ?s=&feed=rss2 (padrão WP).
Volume alto de política; filtrar por nome.
Sem chave.
/politica/feed/ = 404; usar geral e filtrar por categoria.
Especializado em Judiciário/STF/TSE e Congresso — decisões que atingem políticos.
Sem chave.
Parte do conteúdo é paywall (JOTA PRO).
Explicadores e contexto (bom p/ 'entenda o caso').
Sem chave.
Paywall parcial.
Investigativo sem fins lucrativos; licença Creative Commons (CC BY-ND) — permite republicar com crédito.
Sem chave.
Também mantém o Truco (checagem) historicamente.
Investigativo (Vaza Jato etc.); linha editorial declaradamente progressista — marcar viés.
Sem chave.
Cobertura internacional/independente de escândalos BR; útil como contraponto de viés.
Sem chave.
Checagem signatária IFCN; também mantém o Radar Aos Fatos (monitor de desinformação). Filtrar por nome no título.
Sem chave.
/feed/ na raiz = 404. Descrição do item traz o 1º parágrafo (não armazenar).
1ª agência de checagem do país (IFCN); ótima cobertura de campanha 2026.
Sem chave.
lupa.uol.com.br redireciona (301) para www.agencialupa.org.
Checagem colaborativa focada em eleições e políticas públicas; conteúdo republicável pelos veículos-membro.
Sem chave.
Path com acento (publicações) — URL-encode.
Desmente correntes de WhatsApp sobre políticos; complementa agências IFCN.
Sem chave.
Independente; metodologia menos formal que Lupa/Aos Fatos.
Site de checagem mais antigo do BR (2002); histórico longo de boatos políticos.
Sem chave.
Nota/ranking de deputados e senadores por critérios (presença, economia, gastos, processos) + votações-chave; útil como sinal agregado na Ficha (com ressalva de viés).
Sem chave (API não documentada publicamente; consumida pelo front Next.js).
Detalhe individual NÃO exposto em /parlamentares/{id} nem /{slug} (404) — página do político é renderizada no front (ranking.org.br/politicos/{slug}); ~1102 páginas x 1 = ~1100 parlamentares (inclui ex-mandatos). Filtros ?uf= e ?cargo= NÃO filtram (ignorados). A OSC tem viés liberal-conservador declarado (critérios 'economia de mercado') — exibir como opinião de terceiro, não como fato. politicos.org.br redireciona (302) para ranking.org.br.
Gastos com anúncios eleitorais no Google/YouTube por anunciante verificado, incl. Brasil (regiões com verificação eleitoral). Cruzar com TSE.
UI pública sem API; dataset público no BigQuery (bigquery-public-data.google_political_ads) exige conta GCP; bundle CSV em storage.googleapis.com/transparencyreport/google-political-ads-transparency-bundle.zip
Verificar se BR consta na cobertura de 'election ads' do bundle no ano corrente (Google exige verificação de anunciantes eleitorais no BR desde 2022).