डेवलपर्स के लिए SMLLR REST API: यह क्या करता है इसका एक सीधा जवाब
डेवलपर्स के लिए एक ईमानदार टेक्निकल मैनुअल। जानें कि SMLLR का REST API असल में क्या कवर करता है — रिपोर्टिंग और एनालिटिक्स एक्सेस — और यह एक QR-हैवी एप्लिकेशन में कैसे फिट बैठता है।
पहले उम्मीदें सेट करें: यह एक रिपोर्टिंग API है, जेनरेशन API नहीं
अगर आप एक SaaS प्लेटफॉर्म, ई-कॉमर्स कंपनी, या लॉजिस्टिक्स फर्म के लिए SMLLR का मूल्यांकन कर रहे हैं जिसे प्रोग्रामेटिकली हज़ारों यूनीक डायनामिक कोड जेनरेट करने की ज़रूरत है, यह पहले से जान लेना उचित है: SMLLR का पब्लिक API QR कोड नहीं बनाता या एडिट नहीं करता। यह एक रीड-ओनली रिपोर्टिंग API है — आपके अकाउंट, इंडिविजुअल QR कोड, कैंपेन, और क्लाइंट के लिए स्कैन एनालिटिक्स को आपके खुद के सिस्टम में खींचने के लिए बनाया गया। QR कोड क्रिएशन और डेस्टिनेशन-URL एडिटिंग SMLLR डैशबोर्ड के ज़रिए होती है। यह गाइड बिल्कुल यह कवर करती है कि API क्या कवर करता है, ताकि आप इसके खिलाफ बनाने से पहले तय कर सकें कि यह आपके इंटीग्रेशन में फिट बैठता है या नहीं।
ऑथेंटिकेशन: एक सिंगल API की, OAuth नहीं
ऑथेंटिकेशन एक स्टैटिक, हाई-एंट्रॉपी API की है (फॉर्मेट smllr_live_...), डैशबोर्ड में Settings → API से जेनरेट की गई — सिर्फ Premium प्लान पर उपलब्ध, बिना किसी फ्री या लोअर-टियर एक्सेस के। इसे x-api-key हेडर के तौर पर भेजें, या Authorization में एक Bearer टोकन के तौर पर। कोई OAuth2 फ्लो नहीं है, कोई स्कोप्ड/रिस्ट्रिक्टेड की नहीं है, और मैनेज करने के लिए कोई टोकन एक्सपायरी नहीं है — अगर एक की कॉम्प्रोमाइज़ हो जाए, इसे Settings से रीजेनरेट करें और पुरानी वाली तुरंत काम करना बंद कर देगी।
एंडपॉइंट: अकाउंट, QR, कैंपेन, और क्लाइंट एनालिटिक्स
हर एंडपॉइंट एक GET रिक्वेस्ट है जो एक { success, data } JSON envelope रिटर्न करता है, जिसमें जहां प्रासंगिक हो period (7d/30d/90d/all) स्वीकार किया जाता है। लिस्ट एंडपॉइंट (/qrs, /campaigns, /clients) ऑफसेट-पेजिनेटेड के बजाय कर्सर-पेजिनेटेड हैं।
- GET /summary — पीरियड के लिए अकाउंट-वाइड स्कैन टोटल
- GET /qrs और GET /qr/:id — अपने QR कोड लिस्ट करें, या एक के लिए पूरा एनालिटिक्स खींचें
- GET /campaigns और GET /campaign/:id — कैंपेन-लेवल एग्रीगेटेड एनालिटिक्स
- GET /clients और GET /client/:id — एजेंसियों के लिए, प्रति-क्लाइंट एग्रीगेटेड एनालिटिक्स
- लिस्ट रिस्पॉन्स में बिल्ट-इन 'इनसाइट्स' शामिल हैं (जैसे ज़ीरो लाइफटाइम स्कैन वाले QR कोड, जल्द खत्म होने वाले कैंपेन) जब तक आप `?insights=false` पास न करें
API में क्या नहीं है: क्रिएशन और बल्क बैच
गैप के बारे में सीधे बात करें, क्योंकि ये वे फीचर हैं जो डेवलपर सबसे ज़्यादा मांगते हैं: एक QR कोड की डेस्टिनेशन URL बनाने या अपडेट करने के लिए कोई एंडपॉइंट नहीं है — यह सिर्फ डैशबोर्ड पर होता है। किसी भी मौजूदा सेल्फ-सर्व प्लान पर कोई बल्क/बैच क्रिएशन एंडपॉइंट नहीं है (एक CSV बल्क-क्रिएट फीचर सिर्फ थोड़े से ग्रैंडफादर्ड लीगेसी अकाउंट के लिए मौजूद है, किसी भी मौजूदा टियर पर नए ग्राहकों के लिए नहीं)। अगर आपको एक स्कैन पर रियल-टाइम रिएक्शन चाहिए, तो यह REST API का काम नहीं है — इसके बजाय Webhooks (Pro प्लान और ऊपर) इस्तेमाल करें: एक URL या एक Slack चैनल रजिस्टर करें और SMLLR इसके होते ही एक साइन्ड पेलोड पुश करता है, कोई पोलिंग ज़रूरी नहीं।
रेट लिमिट और इनके भीतर काम करना
API प्रति API की प्रति मिनट 60 रिक्वेस्ट तक रेट-लिमिटेड है — एक फ्लैट लिमिट, कुछ ऐसा नहीं जो हायर प्लान पर बढ़े। यह प्रति की ट्रैक किया जाता है, इसलिए यह उसी ऑफिस नेटवर्क या NAT'd इंफ्रास्ट्रक्चर से असंबंधित ट्रैफिक के साथ शेयर नहीं होता। एक शेड्यूल्ड सिंक के लिए (जैसे हर कुछ मिनट में एक BI डैशबोर्ड रीफ्रेश करना) यह जनरस है; रियल-टाइम पोलिंग के करीब किसी भी चीज़ के लिए, आप रिक्वेस्ट को स्पेस आउट करना चाहेंगे और एक 429 पर तुरंत रीट्राई करने के बजाय बैक ऑफ करना चाहेंगे।
यह API असल में किसके लिए अच्छा है
ऊपर बताए गए गैप के बावजूद, रिपोर्टिंग API असली-दुनिया के इंटीग्रेशन का एक असल में उपयोगी सेट कवर करता है: QR/कैंपेन/क्लाइंट स्कैन डेटा को एक इंटरनल BI टूल या Pandas पाइपलाइन में फीड करना, एक एजेंसी के लिए एक हल्का कस्टम क्लाइंट-रिपोर्टिंग व्यू बनाना (SMLLR के अपने होस्टेड क्लाइंट डैशबोर्ड के विकल्प के तौर पर), या एक डेटा वेयरहाउस में एक पीरियोडिक एक्सपोर्ट शेड्यूल करना। अगर आपकी ज़रूरत 'SMLLR से प्रोग्रामेटिकली स्कैन डेटा निकालना' है, यह अच्छी तरह फिट बैठता है। अगर आपकी ज़रूरत 'डैशबोर्ड को छुए बिना QR कोड बनाना और मैनेज करना' है, यह आज उसे कवर नहीं करता।
अक्सर पूछे जाने वाले सवाल
क्या QR कोड जेनरेट करने के लिए कोई API है?
नहीं। SMLLR का पब्लिक API रीड-ओनली रिपोर्टिंग है — यह स्कैन एनालिटिक्स रिटर्न करता है, QR क्रिएशन या एडिटिंग नहीं। QR कोड SMLLR डैशबोर्ड के ज़रिए बनाए और एडिट किए जाते हैं।
क्या API रियल-टाइम स्कैन इवेंट के लिए वेबहुक सपोर्ट करता है?
REST API खुद पुल-ओनली है, लेकिन SMLLR के पास बिल्कुल इसके लिए एक अलग Webhooks फीचर है (Pro प्लान और ऊपर) — एक URL या एक Slack चैनल रजिस्टर करें और पोलिंग के बजाय स्कैन या QR इवेंट होते ही एक साइन्ड पेलोड पुश पाएं।
क्या मैं API के ज़रिए बल्क में QR कोड बना सकता हूं?
किसी भी मौजूदा सेल्फ-सर्व प्लान पर नहीं। एक CSV बल्क-क्रिएट फीचर सिर्फ थोड़े से ग्रैंडफादर्ड लीगेसी अकाउंट के लिए मौजूद है; यह नए Starter, Basic, Pro, या Premium ग्राहकों के लिए उपलब्ध नहीं है।
मैं API के ज़रिए स्कैन कैसे ट्रैक करूं?
रिपोर्टिंग एंडपॉइंट इस्तेमाल करें — अकाउंट-वाइड टोटल के लिए GET /summary, एक सिंगल कोड के लिए GET /qr/:id, एग्रीगेटेड व्यू के लिए GET /campaign/:id और GET /client/:id। सभी JSON स्कैन एनालिटिक्स रिटर्न करते हैं।
API के लिए रेट लिमिट क्या है?
प्रति API की प्रति मिनट 60 रिक्वेस्ट — एक फ्लैट लिमिट जो हायर प्लान पर नहीं बढ़ती। यह प्रति की ट्रैक किया जाता है, इसलिए यह उसी नेटवर्क पर असंबंधित इंटीग्रेशन के साथ शेयर नहीं होता।