API de Dados

Dados LATAM Tech
via API REST.

Documentação completa dos endpoints REST para acessar startups, investimentos, conteúdo editorial e métricas de AI agents do ecossistema tech da América Latina.

Visão Geral

APIs disponíveis.

Endpoints REST com paginação, filtros e respostas em JSON. Todos os dados incluem proveniência e scores de confiança.

Autenticação

API Key via header.

Todas as requisições precisam de uma API key válida enviada no header Authorization.

Header de autenticação
Authorization: Bearer YOUR_API_KEY

Sem API key? Solicite acesso pelo formulário abaixo. Nossa equipe responde em até 48 horas com sua chave e documentação.

API DE EMPRESAS

Empresas.

Startups e empresas do ecossistema tech da América Latina com filtros por setor, cidade, país e tags.

GET/api/companies

Lista empresas com filtros opcionais e paginação.

Parâmetros

ParâmetroTipoDefaultDescrição
sectorstringFiltra por setor (ex: Fintech, SaaS)
citystringFiltra por cidade (ex: São Paulo)
countrystringFiltra por país (ex: Brazil, Mexico)
statusstringactiveStatus da empresa
searchstringBusca no nome (case-insensitive)
tagsstringFiltra por tag (JSON contains)
limitint20Itens por página (max 100)
offsetint0Deslocamento para paginação

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
namestringNome da empresa
slugstringSlug URL-friendly
descriptionstring?Descrição completa
short_descriptionstring?Descrição curta
sectorstring?Setor (ex: Fintech, SaaS)
sub_sectorstring?Sub-setor
citystring?Cidade sede
statestring?Estado
countrystringPaís (default: Brazil)
tagsstring[]?Tags descritivas
tech_stackstring[]?Tecnologias usadas
founded_datedate?Data de fundação
team_sizeint?Tamanho da equipe
business_modelstring?Modelo de negócio
websitestring?URL do site
github_urlstring?URL do GitHub
linkedin_urlstring?URL do LinkedIn
twitter_urlstring?URL do Twitter/X
source_countintNúmero de fontes verificadas
statusstringStatus (active, inactive)
created_atdatetime?Data de criação no sistema

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/companies?sector=Fintech&limit=5"
Resposta
{
  "items": [
    {
      "name": "Nubank",
      "slug": "nubank",
      "sector": "Fintech",
      "country": "Brazil",
      "city": "Sao Paulo",
      "tags": ["neobank", "fintech", "payments"],
      "tech_stack": ["Clojure", "Kafka", "Datomic"],
      "team_size": 8000,
      "source_count": 12,
      "status": "active"
    }
  ],
  "total": 847,
  "limit": 5,
  "offset": 0
}
GET/api/companies/{slug}

Retorna o perfil completo de uma empresa pelo slug.

Parâmetros

ParâmetroTipoDefaultDescrição
slugobrigatóriostringSlug da empresa (ex: nubank)

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
namestringNome da empresa
slugstringSlug URL-friendly
descriptionstring?Descrição completa
short_descriptionstring?Descrição curta
sectorstring?Setor (ex: Fintech, SaaS)
sub_sectorstring?Sub-setor
citystring?Cidade sede
statestring?Estado
countrystringPaís (default: Brazil)
tagsstring[]?Tags descritivas
tech_stackstring[]?Tecnologias usadas
founded_datedate?Data de fundação
team_sizeint?Tamanho da equipe
business_modelstring?Modelo de negócio
websitestring?URL do site
github_urlstring?URL do GitHub
linkedin_urlstring?URL do LinkedIn
twitter_urlstring?URL do Twitter/X
source_countintNúmero de fontes verificadas
statusstringStatus (active, inactive)
created_atdatetime?Data de criação no sistema
metadata_object?Metadados adicionais

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/companies/nubank"
Resposta
{
  "id": "a1b2c3d4-...",
  "name": "Nubank",
  "slug": "nubank",
  "sector": "Fintech",
  "sub_sector": "Neobank",
  "city": "Sao Paulo",
  "country": "Brazil",
  "tags": ["neobank", "fintech", "payments"],
  "tech_stack": ["Clojure", "Kafka", "Datomic"],
  "founded_date": "2013-05-06",
  "team_size": 8000,
  "website": "https://nubank.com.br",
  "source_count": 12,
  "status": "active"
}
API DE CONTEÚDO

Conteúdo.

Conteúdo editorial gerado por AI agents — newsletters, trend reports, análises e deep dives.

GET/api/content

Lista conteúdo publicado com filtros e paginação.

Parâmetros

ParâmetroTipoDefaultDescrição
content_typestringFiltra tipo (DATA_REPORT, ANALYSIS, DEEP_DIVE, etc.)
content_type_excludestringExclui um tipo de conteúdo
agent_namestringFiltra por agente (sintese, radar, codigo)
statusstringStatus de revisão (published, draft)
searchstringBusca no título (case-insensitive)
limitint20Itens por página (max 100)
offsetint0Deslocamento para paginação

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
titlestringTítulo do conteúdo
slugstringSlug URL-friendly
subtitlestring?Subtítulo
content_typestringTipo: DATA_REPORT, ANALYSIS, DEEP_DIVE, ARTICLE, etc.
summarystring?Resumo do conteúdo
agent_namestring?Agente que gerou (sintese, radar, codigo, etc.)
confidence_dqfloat?Score de qualidade de dados (0-1)
confidence_acfloat?Score de confiança analítica (0-1)
review_statusstringStatus: draft, review, published, retracted
published_atdatetime?Data de publicação
sourcesstring[]?URLs das fontes utilizadas
meta_descriptionstring?Descrição para SEO
author_namestring?Nome do autor/agente

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/content?content_type=DATA_REPORT&limit=5"
Resposta
{
  "items": [
    {
      "title": "Sinal Semanal #48",
      "slug": "sinal-semanal-48",
      "content_type": "DATA_REPORT",
      "agent_name": "sintese",
      "confidence_dq": 0.87,
      "confidence_ac": 0.82,
      "review_status": "published",
      "published_at": "2026-02-23T10:00:00Z",
      "sources": ["techcrunch.com", "bloomberg.com"]
    }
  ],
  "total": 156,
  "limit": 5,
  "offset": 0
}
GET/api/content/{slug}

Retorna o conteúdo completo pelo slug, incluindo corpo em Markdown.

Parâmetros

ParâmetroTipoDefaultDescrição
slugobrigatóriostringSlug do conteúdo

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
titlestringTítulo do conteúdo
slugstringSlug URL-friendly
subtitlestring?Subtítulo
content_typestringTipo: DATA_REPORT, ANALYSIS, DEEP_DIVE, ARTICLE, etc.
summarystring?Resumo do conteúdo
agent_namestring?Agente que gerou (sintese, radar, codigo, etc.)
confidence_dqfloat?Score de qualidade de dados (0-1)
confidence_acfloat?Score de confiança analítica (0-1)
review_statusstringStatus: draft, review, published, retracted
published_atdatetime?Data de publicação
sourcesstring[]?URLs das fontes utilizadas
meta_descriptionstring?Descrição para SEO
author_namestring?Nome do autor/agente
body_mdstringCorpo completo em Markdown
body_htmlstring?Corpo renderizado em HTML
canonical_urlstring?URL canônica

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/content/sinal-semanal-48"
Resposta
{
  "title": "Sinal Semanal #48",
  "slug": "sinal-semanal-48",
  "content_type": "DATA_REPORT",
  "agent_name": "sintese",
  "confidence_dq": 0.87,
  "body_md": "# Sinal Semanal #48\n\n## Destaques...",
  "body_html": "<h1>Sinal Semanal #48</h1>...",
  "published_at": "2026-02-23T10:00:00Z"
}
GET/api/content/newsletter/latest

Retorna a newsletter mais recente publicada.

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
titlestringTítulo do conteúdo
slugstringSlug URL-friendly
subtitlestring?Subtítulo
content_typestringTipo: DATA_REPORT, ANALYSIS, DEEP_DIVE, ARTICLE, etc.
summarystring?Resumo do conteúdo
agent_namestring?Agente que gerou (sintese, radar, codigo, etc.)
confidence_dqfloat?Score de qualidade de dados (0-1)
confidence_acfloat?Score de confiança analítica (0-1)
review_statusstringStatus: draft, review, published, retracted
published_atdatetime?Data de publicação
sourcesstring[]?URLs das fontes utilizadas
meta_descriptionstring?Descrição para SEO
author_namestring?Nome do autor/agente

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/content/newsletter/latest"
Resposta
{
  "title": "Sinal Semanal #48",
  "slug": "sinal-semanal-48",
  "content_type": "DATA_REPORT",
  "agent_name": "sintese",
  "confidence_dq": 0.87,
  "published_at": "2026-02-23T10:00:00Z"
}
API DE AGENTES

Agentes.

Status e métricas dos AI agents — execuções, itens processados, confiança e fontes.

GET/api/agents/summary

Resumo da última execução de cada agente ativo.

Campos da Resposta

CampoTipoDescrição
agent_namestringNome do agente (radar, sintese, codigo, etc.)
last_rundatetime?Data/hora da última execução
statusstringStatus: running, completed, failed, cancelled
items_processedintItens processados na última execução
avg_confidencefloat?Confiança média (0-1)
sourcesintNúmero de fontes utilizadas
error_countintErros na última execução

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/agents/summary"
Resposta
[
  {
    "agent_name": "radar",
    "last_run": "2026-02-23T08:00:00Z",
    "status": "completed",
    "items_processed": 438,
    "avg_confidence": 0.82,
    "sources": 27,
    "error_count": 0
  },
  {
    "agent_name": "sintese",
    "last_run": "2026-02-23T10:00:00Z",
    "status": "completed",
    "items_processed": 156,
    "avg_confidence": 0.87,
    "sources": 14,
    "error_count": 0
  }
]
GET/api/agents/runs

Histórico de execuções dos agentes com filtros.

Parâmetros

ParâmetroTipoDefaultDescrição
agent_namestringFiltra por agente
statusstringFiltra por status (running, completed, failed)
limitint20Itens por página (max 100)
offsetint0Deslocamento para paginação

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único da execução
agent_namestringNome do agente
run_idstringID único da execução
statusstringStatus: running, completed, failed, cancelled
started_atdatetimeInício da execução
completed_atdatetime?Fim da execução
items_collectedint?Itens coletados
items_processedint?Itens processados
avg_confidencefloat?Confiança média
error_countintNúmero de erros

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/agents/runs?agent_name=radar&limit=3"
Resposta
[
  {
    "id": "a1b2c3d4-...",
    "agent_name": "radar",
    "run_id": "radar-2026-02-23-08",
    "status": "completed",
    "started_at": "2026-02-23T08:00:00Z",
    "completed_at": "2026-02-23T08:12:34Z",
    "items_collected": 512,
    "items_processed": 438,
    "avg_confidence": 0.82,
    "error_count": 0
  }
]
API DE SINAIS

Sinais.

Social signals coletados pelo agente RADAR — posts, clusters de tendencias, vozes influentes e o pulse semanal.

GET/api/signals

Lista sinais coletados com filtros opcionais e paginacao.

Parâmetros

ParâmetroTipoDefaultDescrição
platformstringFiltra por plataforma (twitter, reddit, bluesky, rss)
themestringFiltra por tema (AI, Fintech, AI in Banking)
limitint20Itens por página (max 100)
offsetint0Deslocamento para paginação

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
platformstringPlataforma (twitter, reddit, bluesky, rss)
post_urlstringURL do post original
author_handlestringHandle do autor
author_display_namestringNome de exibição do autor
textstringTexto do post
published_atdatetimeData de publicação
metricsobjectEngajamento: likes, replies, reposts
themestringTema principal (AI, Fintech, AI in Banking)
sub_themestring?Sub-tema
sentimentfloatSentimento: -1 (negativo) a 1 (positivo)
authority_scorefloatScore de autoridade do autor (0-1)

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/signals?theme=AI&limit=5"
Resposta
{
  "items": [
    {
      "id": "a1b2c3d4-...",
      "platform": "twitter",
      "author_handle": "karpathy",
      "text": "The most important AI trend right now is...",
      "published_at": "2026-02-23T09:15:00Z",
      "metrics": { "likes": 4200, "reposts": 980, "replies": 210 },
      "theme": "AI",
      "sentiment": 0.72,
      "authority_score": 0.94
    }
  ],
  "total": 12483,
  "limit": 5,
  "offset": 0
}
GET/api/signals/feed

Lista itens do Feed Curado — sinais com headline editorial, contexto e mídia, ordenados por relevância.

Parâmetros

ParâmetroTipoDefaultDescrição
themestringFiltra por categoria (AI, Fintech, Banking, Startup). Alias: category
limitint20Itens por página (max 100)
offsetint0Deslocamento para paginação

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
editorial_headlinestringTítulo editorial em pt-BR
editorial_contextstring?Contexto editorial: por que isso importa
relevance_scoreintScore de relevância (0-100)
categorystringCategoria: AI, Fintech, Banking, Startup
original_textstring?Texto original truncado
original_urlstring?URL do post original
platformstring?Plataforma de origem
author_handlestring?Handle do autor
thumbnail_urlstring?URL da imagem og:image
video_embedobject?Embed de vídeo: { platform, embed_url, thumbnail }
themestring?Tema (mapeado da categoria)
curated_atdatetime?Data da curadoria

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/signals/feed?theme=AI&limit=10"
Resposta
{
  "items": [
    {
      "id": "b134...",
      "editorial_headline": "Mega-IPOs de SpaceX, OpenAI e Anthropic vão testar o mercado",
      "editorial_context": "A possível onda de IPOs pode redefinir valuations...",
      "relevance_score": 88,
      "category": "AI",
      "platform": "web",
      "original_url": "https://www.newcomer.co/p/mega-ipos",
      "thumbnail_url": "https://substackcdn.com/image/...",
      "video_embed": null,
      "curated_at": "2026-04-05T11:49:55Z"
    }
  ],
  "total": 15,
  "limit": 20,
  "offset": 0
}
GET/api/signals/clusters

Lista clusters de tendencias detectados pelo agente RADAR.

Parâmetros

ParâmetroTipoDefaultDescrição
themestringFiltra por tema
limitint20Itens por página (max 100)
offsetint0Deslocamento para paginação

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
namestringNome do cluster de tendencia
slugstringSlug URL-friendly
themestringTema principal
sub_themestring?Sub-tema
descriptionstringDescricao do cluster
signal_countintNumero de sinais no cluster
composite_scorefloatScore composto (0-1)
narrative_stagestringEstagio narrativo: emerging, accelerating, peaking, declining
top_voicesobject[]Principais vozes: handle, name, authority
top_postsobject[]Posts mais relevantes
week_numberintSemana do ano
yearintAno
first_moverobject?Quem postou primeiro: handle, name, posted_at

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/signals/clusters?theme=Fintech&limit=5"
Resposta
{
  "items": [
    {
      "id": "b2c3d4e5-...",
      "name": "Open Finance no Brasil",
      "slug": "open-finance-brasil",
      "theme": "Fintech",
      "narrative_stage": "accelerating",
      "signal_count": 284,
      "composite_score": 0.78,
      "week_number": 8,
      "year": 2026
    }
  ],
  "total": 47,
  "limit": 5,
  "offset": 0
}
GET/api/signals/clusters/{slug}

Retorna o detalhe completo de um cluster pelo slug.

Parâmetros

ParâmetroTipoDefaultDescrição
slugobrigatóriostringSlug do cluster

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
namestringNome do cluster de tendencia
slugstringSlug URL-friendly
themestringTema principal
sub_themestring?Sub-tema
descriptionstringDescricao do cluster
signal_countintNumero de sinais no cluster
composite_scorefloatScore composto (0-1)
narrative_stagestringEstagio narrativo: emerging, accelerating, peaking, declining
top_voicesobject[]Principais vozes: handle, name, authority
top_postsobject[]Posts mais relevantes
week_numberintSemana do ano
yearintAno
first_moverobject?Quem postou primeiro: handle, name, posted_at

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/signals/clusters/open-finance-brasil"
Resposta
{
  "id": "b2c3d4e5-...",
  "name": "Open Finance no Brasil",
  "slug": "open-finance-brasil",
  "theme": "Fintech",
  "sub_theme": "Regulatorio",
  "description": "Discussoes sobre regulamentacao e adocao de open finance...",
  "signal_count": 284,
  "composite_score": 0.78,
  "narrative_stage": "accelerating",
  "top_voices": [{ "handle": "bcboficial", "name": "BCB", "authority": 0.91 }],
  "top_posts": [{ "url": "https://...", "text": "...", "author": "bcboficial", "platform": "twitter" }],
  "week_number": 8,
  "year": 2026,
  "first_mover": { "handle": "fintech_br", "name": "Fintech BR", "posted_at": "2026-02-20T07:30:00Z" }
}
GET/api/signals/pulse

Retorna o pulse semanal mais recente publicado.

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
week_numberintSemana do ano
yearintAno
slugstringSlug URL-friendly (ex: pulse-2026-w08)
accelerating_themesobject[]?Temas acelerando: name, score, delta
emerging_signalsobject[]?Sinais emergentes: name, score, platforms
top_postsobject[]?Posts mais relevantes da semana
top_voicesobject[]?Vozes mais ativas da semana
statusstringStatus: draft, published

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/signals/pulse"
Resposta
{
  "id": "c3d4e5f6-...",
  "week_number": 8,
  "year": 2026,
  "slug": "pulse-2026-w08",
  "accelerating_themes": [
    { "name": "LLM Inference Costs", "score": 0.91, "delta": 0.18 },
    { "name": "Open Finance", "score": 0.78, "delta": 0.12 }
  ],
  "emerging_signals": [
    { "name": "AI Agents em Producao", "score": 0.63, "platforms": ["twitter", "reddit"] }
  ],
  "status": "published"
}
GET/api/signals/voices

Lista contas monitoradas pelo agente RADAR, ordenadas por autoridade.

Parâmetros

ParâmetroTipoDefaultDescrição
account_typestringFiltra por tipo: founder, vc, executive, thought_leader, company
limitint20Itens por página (max 100)
offsetint0Deslocamento para paginação

Campos da Resposta

CampoTipoDescrição
idUUIDIdentificador único
platformstringPlataforma monitorada
handlestringHandle da conta
display_namestring?Nome de exibicao
account_typestring?Tipo: founder, vc, executive, thought_leader, company
authority_scorefloatScore de autoridade (0-1)
follower_countint?Numero de seguidores
biostring?Biografia
profile_urlstring?URL do perfil
sector_tagsstring[]?Tags de setor
is_activebooleanConta ativa no monitoramento

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/signals/voices?account_type=vc&limit=5"
Resposta
{
  "items": [
    {
      "id": "d4e5f6a7-...",
      "platform": "twitter",
      "handle": "sequoia",
      "display_name": "Sequoia Capital",
      "account_type": "vc",
      "authority_score": 0.96,
      "follower_count": 850000,
      "sector_tags": ["fintech", "ai", "saas"],
      "is_active": true
    }
  ],
  "total": 312,
  "limit": 5,
  "offset": 0
}
GET/api/signals/stats

Retorna estatisticas agregadas do sistema de sinais.

Campos da Resposta

CampoTipoDescrição
total_signalsintTotal de sinais coletados
total_clustersintTotal de clusters ativos
total_voicesintTotal de vozes monitoradas
platformsobjectContagem por plataforma: { twitter: N, ... }
themesobjectContagem por tema: { AI: N, Fintech: N, ... }

Exemplo

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.sinal.tech/api/signals/stats"
Resposta
{
  "total_signals": 12483,
  "total_clusters": 47,
  "total_voices": 312,
  "platforms": {
    "twitter": 7840,
    "reddit": 2910,
    "bluesky": 1200,
    "rss": 533
  },
  "themes": {
    "AI": 6200,
    "Fintech": 4100,
    "AI in Banking": 2183
  }
}
API DE INVESTIMENTOSEm breve

Investimentos.

Rodadas de investimento LATAM com dados verificados de multiplas fontes.

GET/api/funding

Campos planejados

companystringNome da empresa
company_slugstringSlug da empresa
countrystringPaís
stagestringEstágio da rodada
amount_usdintValor em USD
lead_investorsstring[]Investidores líderes
announced_atdateData do anúncio
source_urlstringURL da fonte
Paginação e Filtros

Padrões compartilhados.

Todos os endpoints de listagem seguem o mesmo envelope de paginação e aceitam os parâmetros limit e offset.

Envelope de paginação
{
  "items": [...],     // Array de objetos
  "total": 847,       // Total de registros (antes da paginação)
  "limit": 20,        // Tamanho da página (default: 20, max: 100)
  "offset": 0         // Deslocamento atual
}

Filtro de busca

O parâmetro search faz busca case-insensitive (LIKE) no campo principal do recurso (nome para empresas, título para conteúdo).

Códigos de Erro

Respostas de erro.

Todas as respostas de erro seguem o formato padrão com o campo detail.

Formato de erro
{
  "detail": "Company 'xyz' not found"
}
CódigoNomeDescrição
200OKRequisição bem-sucedida
201CreatedRecurso criado com sucesso
400Bad RequestParâmetros inválidos ou faltando
401UnauthorizedAPI key ausente ou inválida
404Not FoundRecurso não encontrado
422Unprocessable EntityErro de validação nos dados enviados
429Too Many RequestsLimite de requisições excedido
500Internal Server ErrorErro interno do servidor
SOLICITAR ACESSO

Solicite acesso a API.

Preencha o formulário abaixo. Nossa equipe analisa cada solicitação e responde em até 48 horas com sua API Key e documentação.