Radar Perene / api/docs
API pública e widget
A Leitura do dia do Radar Perene está disponível como endpoint JSON público e widget embedável. Sem cadastro, sem chave de API, sem rate limit individual. Citação obrigatória.
Esta documentação cobre o endpoint, o schema do response, três tamanhos de widget e a política de uso.
1. Endpoint
GET https://radarperene.com.br/api/leitura-do-dia.json
Resposta: `application/json`. Cache CDN: 4 horas. CORS: aberto (qualquer origem). Atualização: diária, ao fechamento do pulso de mercado brasileiro.
2. Exemplo de chamada
curl -s https://radarperene.com.br/api/leitura-do-dia.json | jq
Resposta exemplo:
{
"data_referencia": "2026-06-04",
"score_risk_br": 38.1,
"regime_br": "defensivo_moderado",
"score_regime_global": 51.6,
"regime_global": "neutro",
"lente_destaque": "patrimonial",
"analogo": "2018-09",
"componentes_visiveis": {
"ifix_ibov_percentil": 78,
"financas_ibov_percentil": 22,
"vale_ouro_percentil": 35
},
"divergencias": ["BR defensivo × Global neutro — leitura contida"],
"cadencia": "diaria",
"atualizado_em": "2026-06-04T19:00:00-03:00",
"metodologia": "https://radarperene.com.br/metodologia",
"disclaimer": "Leitura descritiva. Não constitui parecer ou recomendação. Consulte profissional habilitado."
}
3. Schema do response
| Campo | Tipo | Descrição |
|---|---|---|
| `data_referencia` | `string` (ISO 8601 — `YYYY-MM-DD`) | Data de fechamento da leitura. |
| `score_risk_br` | `number` (0–100) | Score agregado do Regime Brasil. |
| `regime_br` | `string` (enum) | Bucket categórico do Regime Brasil: `risk_off_forte` · `risk_off_moderado` (`defensivo_moderado`) · `neutro` · `risk_on_moderado` · `risk_on_amplo`. |
| `score_regime_global` | `number` (0–100) | Score agregado do Regime Global. |
| `regime_global` | `string` (enum) | Bucket categórico do Regime Global, mesmo conjunto. |
| `lente_destaque` | `string` (enum) | Lente principal pressionando a leitura agregada: `patrimonial` · `macro` · `institucional` · `imobiliaria` · `eleitoral`. |
| `analogo` | `string` ou `null` | Slug da janela histórica análoga (ex.: `2018-09`), ou `null` quando não houver similaridade suficiente. |
| `componentes_visiveis` | `object` | Mapa de percentis editorialmente expostos. Pesos e fórmulas não são expostos por design (ver Metodologia §2.4). |
| `divergencias` | `array<string>` | Lista de divergências cross-eixo relevantes do dia. |
| `cadencia` | `string` | Sempre `"diaria"` para este endpoint. |
| `atualizado_em` | `string` (ISO 8601 com timezone) | Timestamp de atualização do snapshot. |
| `metodologia` | `string` (URL) | Link para a página de metodologia canônica. |
| `disclaimer` | `string` | Aviso de uso obrigatório se o output for exibido publicamente. |
Campos podem ser adicionados em versões futuras sem quebrar compatibilidade. Campos existentes não serão removidos sem deprecation declarada com 90 dias de antecedência.
4. Widget embedável — três tamanhos
Todos os widgets renderizam HTML estático legível por crawler (não dependem de JavaScript para conteúdo).
Pequeno (300×120 px) — apenas score Risk-BR + bucket:
<iframe
src="https://radarperene.com.br/widget/leitura-do-dia?size=small&theme=light"
width="300" height="120"
frameborder="0"
loading="lazy"
title="Radar Perene — Leitura do dia">
</iframe>
Médio (480×280 px) — score + regime + análogo + 1-linha de comentário:
<iframe
src="https://radarperene.com.br/widget/leitura-do-dia?size=medium&theme=light"
width="480" height="280"
frameborder="0"
loading="lazy"
title="Radar Perene — Leitura do dia">
</iframe>
Grande (720×440 px) — leitura completa incluindo divergências e percentis visíveis:
<iframe
src="https://radarperene.com.br/widget/leitura-do-dia?size=large&theme=light"
width="720" height="440"
frameborder="0"
loading="lazy"
title="Radar Perene — Leitura do dia">
</iframe>
Parâmetros opcionais:
- `theme=light | dark` (padrão: `light`).
- `lang=pt | en` (padrão: detectado pelo Accept-Language do visitante).
Citação automática ao Radar Perene é renderizada dentro do widget. Não é permitido removê-la.
5. Política de uso
Resumo. Termos completos em /termos §6.
- Gratuito. Sem chave, sem cadastro, sem rate limit por usuário individual.
- Atribuição obrigatória: "Fonte: Radar Perene" com link clicável para a URL de origem. O widget já carrega a atribuição.
- Uso comercial permitido sob a mesma atribuição.
- Modificação do output permitida se a citação esclarecer que o dado foi processado.
- Vedado: revender o output como se fosse próprio sem atribuição; gerar volume claramente abusivo; usar para falsa atribuição de parecer; treinar modelos de IA proprietários sobre o corpus completo sem autorização.
6. Versionamento
A API segue versionamento semântico. Esta é a v1.
- Mudanças que adicionam campos: minor (v1.x.x → v1.(x+1).0). Compatibilidade preservada.
- Mudanças que alteram semântica de campos existentes: major (v1 → v2). Anunciadas com 90 dias de antecedência. Versão antiga permanece acessível durante a transição em `/api/v1/leitura-do-dia.json` (URL atual sem prefixo é apelido sempre da última versão estável).
7. Sem SLA formal
O Radar Perene não oferece SLA contratual para o endpoint público — é serviço gratuito. Empregamos esforços razoáveis para manter o endpoint disponível com cache CDN agressivo. Em caso de incidente prolongado, a página principal (/) traz aviso.
Para SLA, considere o plano Founder Access (acesso à plataforma autenticada com SLA aplicável aos serviços principais).
8. Suporte
Dúvidas técnicas sobre a API ou o widget: [contato a definir]@radarperene.com.br. Sem promessa de tempo de resposta para uso da camada gratuita; respostas em ordem de chegada conforme capacidade do solo operator.