クライアントライブラリ
finlight は 8 つの公式クライアントライブラリを公開しています。いずれも、これらのドキュメントの他のページで説明されているものと同じ REST、WebSocket、webhook のインターフェースをラップしているため、HTTP 呼び出しを自分で書く代わりに、ご自身のスタックに合ったものを選べます。
| 言語 | パッケージ | 要件 | ストリーミング |
|---|---|---|---|
| TypeScript / JavaScript | finlight-client (npm) | Node.js | はい |
| Python | finlight-client (PyPI) | Python 3.7+ | はい |
| Go | github.com/callbk/finlight-client-go | Go 1.23+ | はい |
| .NET / C# | Finlight.Client (NuGet) | .NET 8+ | はい |
| Java / Kotlin | me.finlight:finlight-client (Maven) | Java 17+ | はい |
| PHP | finlight/client (Packagist) | PHP 8.1+ | いいえ |
| Ruby | finlight-client (RubyGems) | Ruby 3.2+ | はい |
| Rust | finlight-client (crates.io) | Rust 1.85+ | はい |
すべてのクライアントに共通する機能
これらのライブラリは同じ仕様に基づいて作られているため、言語を切り替えても扱う概念は変わりません:
- REST:記事の検索、リンクによる単一記事の取得、利用可能なソースの一覧 — エンドポイントをご覧ください。
- リアルタイムストリーミング:拡張フィードと生の WebSocket フィードの両方を、その言語で慣用的なストリーム型(非同期イテレーター、チャネル、
Stream)として提供します。再接続、ping/pong のキープアライブ、先回りの接続ローテーションは自動的に処理されます — WebSocket の基本をご覧ください。 - 耐障害性:
429および5xxのレスポンスに対して指数バックオフ付きで再試行するため、一時的な失敗やレート制限がコード上のエラーとして表面化しません。 - Webhook 検証:リプレイ保護付きの HMAC-SHA256 署名チェックで、Webhook 認証に対応します。
- 認証:API キーをコンストラクターに渡すと、クライアントがすべてのリクエストで
X-API-KEYヘッダーとして送信します。
意図的な唯一の例外は PHP クライアントで、WebSocket ストリーミングを実装していません — PHP のリクエスト/レスポンスモデルは長時間の接続に適していないためです。PHP アプリケーションへのプッシュ配信には webhooks を使用してください。
ライブラリに特権的なものは何もありません。その機能はすべて素の HTTP と WebSocket で利用できるため、cURL や任意の HTTP クライアントも引き続き完全にサポートされる選択肢です。
インストール
どのクライアントもコンストラクターから API キーを読み取り、X-API-KEY ヘッダーとして送信します。キーは finlight ダッシュボードで取得してください。
インストール
# npm — @finlight/client として JSR にも公開
npm install finlight-client
Gradle ではなく Maven でビルドする場合は、同じ座標を宣言します:
<dependency>
<groupId>me.finlight</groupId>
<artifactId>finlight-client</artifactId>
<version>0.1.0</version>
</dependency>
ソースリポジトリ
すべてのクライアントは MIT ライセンスのもとでオープンに開発されています。Issue や pull request を歓迎します。
- 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
次のステップ
- クイックスタートで最初の呼び出しを行う
- REST エンドポイントリファレンスの全体を見る
- 高度なクエリ構築でクエリ構文を学ぶ
- WebSocket クイックスタートで記事をリアルタイムにストリーミングする
- Webhooks でプッシュ配信された記事を受け取る
- バグを見つけましたか、または対応していない言語をご希望ですか?サポートからご連絡ください