Pular para o conteúdo

Por onde começar

A Kitelife Radar é uma rede de estações meteorológicas instaladas em pontos de vento. Cada estação mede vento, rajada, direção, temperatura, umidade, pressão, chuva e índice UV, e publica uma leitura a cada poucos segundos.

Esta API entrega esses dados. Toda leitura, em qualquer canal, é o mesmo objeto:

{
"stationId": "stn_barra-da-tijuca-01",
"observedAt": "2026-08-26T17:42:08Z",
"timeSource": "station",
"windSpeedKnots": 18.2,
"windGustKnots": 24.6,
"windDirectionDegrees": 118,
"temperatureCelsius": 27.4,
"humidityPercent": 71,
"pressureAbsoluteHpa": 1012.4,
"pressureSeaLevelHpa": 1012.9,
"rainRateMmPerHour": 0,
"uvIndex": 3.1
}

Vento em nós, e toda grandeza traz a unidade no nome do campo. Todo instante é UTC.

A escolha entre eles é sobre como você consome, não sobre o que recebe.

Você quer Canal Como funciona
O vento agora, uma vez REST Você pergunta, a API responde
Histórico e gráficos REST, rota de série Blocos agregados de 1 min a 1 dia
Poucas estações ao vivo numa tela WebSocket Conexão aberta, leitura empurrada na hora
Fluxo contínuo de muitas estações AMQP Fila durável, guarda enquanto você está fora

Três atalhos que evitam retrabalho:

Não faça polling na REST para ter dado ao vivo. As estações publicam a cada poucos segundos. Um cliente em polling ou chega tarde ou desperdiça requisições contra a sua cota, e nos dois casos existe um canal melhor.

Não use WebSocket para não perder nada. O WebSocket não retém: cliente desconectado perde o que passou. Isso é adequado para uma interface, onde só importa o valor de agora, e inadequado para um pipeline de dados.

Não use AMQP para consultar. A fila entrega o que chega a partir de agora. Histórico é REST.

Com a sua chave em mãos, o catálogo de estações é o ponto de partida. Os id que ele devolve são a chave de tudo, em todos os canais.

Terminal window
curl https://api.radar-sandbox.kitelife.com.br/v1/stations -H "X-Api-Key: $RADAR_API_KEY"

Depois, a leitura mais recente de uma delas:

Terminal window
curl https://api.radar-sandbox.kitelife.com.br/v1/stations/stn_barra-da-tijuca-01/readings/latest -H "X-Api-Key: $RADAR_API_KEY"

Se as duas responderem, a integração está de pé. O resto é escolher o canal.

  • Grandezas e unidades: vento em nós, direção de onde sopra, duas pressões diferentes. A maioria dos erros de integração está aqui, não no código.
  • Autenticação: chave por integrador, e como o handshake do WebSocket difere entre servidor e navegador.
  • Erros: o formato é o mesmo em toda falha, e o campo em que programar é o code.
  • Limites de uso: cotas, cabeçalhos de controle e o que fazer diante de um 429.

Não é previsão do tempo. São medições de estações físicas, do que está acontecendo agora e do que já aconteceu. Não há projeção para o futuro em nenhuma rota.

Também não é um serviço de escrita. Todos os canais são de leitura: não há rota para criar, alterar ou apagar nada, e o relay AMQP entrega sem aceitar publicação de volta.