सामग्री पर जाएं
PollsLive

डेवलपर गाइड

OAuth 2.0 Client Credentials

मानक Client Credentials प्रवाह (RFC 6749 §4.4) से बिना उपयोगकर्ता सेशन के सर्वर-साइड एकीकरण प्रमाणित करें।

अवलोकन

Client Credentials अनुदान उन सर्वर-से-सर्वर एकीकरणों के लिए है जहां कोई व्यक्ति मौजूद नहीं होता: CI पाइपलाइन, cron जॉब, बैकएंड सेवाएं और SaaS प्लेटफ़ॉर्म एकीकरण। आपका एप्लिकेशन client_id / client_secret जोड़ी को अल्पकालिक Bearer एक्सेस टोकन से बदलता है।

टोकन एंडपॉइंट

POST https://pollslive.com/api/oauth/token

टोकन अवधि

3600 सेकंड (1 घंटा)

आवश्यक प्लान

कोई भी सशुल्क प्लान (Pro और उससे ऊपर)

OAuth बनाम API कुंजियां कब चुनें

परिदृश्यअनुशंसित क्रेडेंशियल
व्यक्तिगत स्वचालन / स्क्रिप्टAPI कुंजी
आंतरिक सर्वर प्रक्रिया, एक वर्कस्पेसAPI कुंजी
कई ग्राहकों के लिए PollsLive एकीकृत करने वाला SaaS उत्पादप्रति ग्राहक वर्कस्पेस OAuth Client Credentials
बिना डाउनटाइम ज़ीरो-ट्रस्ट रोटेशनOAuth (टोकन अपने आप समाप्त होते हैं) या API कुंजी रोटेशन
स्कोप-सीमित तृतीय-पक्ष पहुंचस्कोप के साथ OAuth

1. OAuth क्लाइंट बनाएं

Studio → डेवलपर API → OAuth 2.0 क्लाइंट पर जाएं और OAuth क्लाइंट बनाएं पर क्लिक करें। क्लाइंट को स्पष्ट नाम दें और चाहें तो स्कोप सीमित करें।

अपना clientSecret तुरंत सहेजें। API कुंजी की तरह यह ठीक एक बार दिखाया जाता है और कभी सादे पाठ में संग्रहीत नहीं होता।

2. एक्सेस टोकन प्राप्त करें

टोकन एंडपॉइंट पर application/x-www-form-urlencoded (RFC मानक) या application/json (सुविधा के लिए) के साथ POST अनुरोध भेजें:

अनुरोध: form-urlencoded (RFC मानक)
curl -X POST https://pollslive.com/api/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=plv_cid_…&client_secret=plv_cs_…&scope=polls:read polls:write"
अनुरोध: JSON (सुविधा)
curl -X POST https://pollslive.com/api/oauth/token \
  -H "Content-Type: application/json" \
  -d '{
    "grant_type": "client_credentials",
    "client_id": "plv_cid_…",
    "client_secret": "plv_cs_…",
    "scope": "polls:read polls:write"
  }'
प्रतिक्रिया
{
  "access_token": "plv_oauth_…",
  "token_type": "Bearer",
  "expires_in": 3600,
  "scope": "polls:read polls:write"
}

त्रुटियां RFC 6749 §5.2 प्रारूप का पालन करती हैं। { "error": "invalid_client", "error_description": "…" }

3. टोकन का उपयोग करें

हर API अनुरोध में access_token को Bearer टोकन के रूप में शामिल करें, बिल्कुल API कुंजी की तरह:

प्रमाणित अनुरोध
curl https://pollslive.com/api/v1/polls \
  -H "Authorization: Bearer plv_oauth_…"

आपके एप्लिकेशन को टोकन कैश करना चाहिए और तभी नया मांगना चाहिए जब expires_in नज़दीक आ रहा हो (जैसे 5 मिनट से कम बचने पर)।

टोकन अवधि और नवीनीकरण

टोकन 1 घंटे तक मान्य हैं (expires_in: 3600)। कोई रिफ़्रेश टोकन नहीं है। मौजूदा समाप्त होने पर बस अपने क्लाइंट क्रेडेंशियल से नया मांग लें। चूंकि यह सर्वर-साइड प्रवाह है, क्लाइंट सीक्रेट कभी आपके बैकएंड से बाहर नहीं जाता।

टोकन रोटेशन पैटर्न (Node.js)
let token = null;
let expiresAt = 0;

async function getToken() {
  if (token && Date.now() < expiresAt - 5 * 60 * 1000) return token;

  const res = await fetch("https://pollslive.com/api/oauth/token", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      grant_type: "client_credentials",
      client_id: process.env.OAUTH_CLIENT_ID,
      client_secret: process.env.OAUTH_CLIENT_SECRET,
    }),
  });
  const data = await res.json();
  token = data.access_token;
  expiresAt = Date.now() + data.expires_in * 1000;
  return token;
}

स्कोप

स्कोप से आप सीमित करते हैं कि कोई OAuth क्लाइंट क्या कर सकता है। क्लाइंट बनाते समय कोई स्कोप न दें तो उसे पूरी वर्कस्पेस पहुंच मिलती है (API कुंजी के बराबर)।

पूरी सूची के लिए स्कोप संदर्भिका देखें।

क्लाइंट रद्द करें

क्लाइंट रद्द करते ही उसके लिए जारी सभी टोकन तुरंत अमान्य हो जाते हैं। टोकन का उपयोग कर रहे चालू अनुरोध 401 invalid_oauth_token के साथ विफल होंगे।

Studio → डेवलपर API → OAuth 2.0 क्लाइंट पर जाकर रद्द करें पर क्लिक करें।

अभी भी कोई सवाल है?

हमारी टीम मदद करने में खुश होगी।

हमसे संपर्क करें

आपको साइन इन रखने और डुप्लिकेट वोट रोकने के लिए हम आवश्यक कुकीज़ का उपयोग करते हैं। आपकी अनुमति से, हम पेज व्यू गिनने के लिए Cloudflare Web Analytics और यह देखने के लिए Whop Pixel का भी उपयोग करते हैं कि कौन-सी विज़िट खरीद तक ले जाती हैं। कुकी नीति