Bibliotecas cliente
O finlight publica oito bibliotecas cliente oficiais. Cada uma envolve a mesma superfície REST, WebSocket e de webhooks documentada no restante destas páginas, então você pode escolher a que combina com sua stack em vez de escrever as chamadas HTTP na mão.
| Linguagem | Pacote | Requer | Streaming |
|---|---|---|---|
| TypeScript / JavaScript | finlight-client (npm) | Node.js | Sim |
| Python | finlight-client (PyPI) | Python 3.7+ | Sim |
| Go | github.com/callbk/finlight-client-go | Go 1.23+ | Sim |
| .NET / C# | Finlight.Client (NuGet) | .NET 8+ | Sim |
| Java / Kotlin | me.finlight:finlight-client (Maven) | Java 17+ | Sim |
| PHP | finlight/client (Packagist) | PHP 8.1+ | Não |
| Ruby | finlight-client (RubyGems) | Ruby 3.2+ | Sim |
| Rust | finlight-client (crates.io) | Rust 1.85+ | Sim |
O que cada cliente oferece
As bibliotecas são construídas segundo a mesma especificação, então trocar de linguagem não muda os conceitos com os quais você trabalha:
- REST: buscar artigos, obter um artigo específico pelo link e listar as fontes disponíveis — consulte Endpoints.
- Streaming em tempo real: tanto o feed WebSocket aprimorado quanto o feed bruto, expostos como o tipo de stream idiomático da linguagem (iteradores assíncronos, canais,
Streams). As reconexões, o keepalive ping/pong e a rotação proativa da conexão são tratados por você — consulte Fundamentos de WebSocket. - Resiliência: novas tentativas com backoff exponencial em respostas
429e5xx, de modo que falhas transitórias e limites de taxa não apareçam como erros no seu código. - Verificação de webhooks: checagem de assinatura HMAC-SHA256 com proteção contra repetição, de acordo com Autenticação de webhooks.
- Autenticação: você passa sua chave de API para o construtor e o cliente a envia no cabeçalho
X-API-KEYem cada requisição.
A única exceção deliberada é o cliente PHP, que não implementa streaming por WebSocket — o modelo de requisição/resposta do PHP combina mal com uma conexão de longa duração. Use webhooks para a entrega push em uma aplicação PHP.
Nada nas bibliotecas é privilegiado: tudo o que elas fazem está disponível por HTTP e WebSocket puros, então cURL ou qualquer cliente HTTP continua sendo uma opção totalmente suportada.
Instalação
Cada cliente lê sua chave de API do construtor e a envia no cabeçalho X-API-KEY. Obtenha uma chave no painel do finlight.
Instalação
# npm — também publicado no JSR como @finlight/client
npm install finlight-client
Se você compila com Maven em vez de Gradle, declare a mesma coordenada:
<dependency>
<groupId>me.finlight</groupId>
<artifactId>finlight-client</artifactId>
<version>0.1.0</version>
</dependency>
Repositórios de código
Cada cliente é desenvolvido de forma aberta sob a licença MIT. Issues e pull requests são bem-vindos.
- TypeScript / JavaScript — jubeiargh/finlight-client
- Python — jubeiargh/finlight-client-py
- Go — callbk/finlight-client-go
- .NET / C# — callbk/finlight-client-dotnet
- Java / Kotlin — callbk/finlight-client-java
- PHP — callbk/finlight-client-php
- Ruby — callbk/finlight-client-ruby
- Rust — callbk/finlight-client-rust
O que vem a seguir?
- Faça sua primeira chamada com o Início rápido
- Explore a referência completa dos endpoints REST
- Aprenda a sintaxe de consulta em Construção avançada de consultas
- Transmita artigos em tempo real com o Início rápido de WebSocket
- Receba artigos por push via Webhooks
- Encontrou um bug ou sente falta de alguma linguagem? Fale com a gente pelo Suporte