क्लाइंट लाइब्रेरी
finlight आठ आधिकारिक क्लाइंट लाइब्रेरी प्रकाशित करता है। हर एक उसी 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 फ़ीड, जो भाषा के मुहावरेदार स्ट्रीम प्रकार (async इटरेटर, चैनल,
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 — JSR पर @finlight/client के रूप में भी प्रकाशित
npm install finlight-client
यदि आप Gradle के बजाय Maven से बिल्ड करते हैं, तो वही कोऑर्डिनेट घोषित करें:
<dependency>
<groupId>me.finlight</groupId>
<artifactId>finlight-client</artifactId>
<version>0.1.0</version>
</dependency>
स्रोत रिपॉजिटरी
हर क्लाइंट MIT लाइसेंस के तहत खुले रूप में विकसित किया जाता है। इश्यू और पुल रिक्वेस्ट का स्वागत है।
- 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 के माध्यम से पुश किए गए लेख प्राप्त करें
- कोई बग मिला या कोई भाषा चाहिए जो उपलब्ध नहीं है? सहायता के माध्यम से संपर्क करें