ShareAI Platform Docs

PKCE के साथ ग्राहक को अधिकृत करें

S256 PKCE के साथ ShareAI ऑथराइजेशन-कोड फ्लो को लागू करें, स्टेट को सत्यापित करें और कोड को अपने एप्लिकेशन बैकएंड पर एक्सचेंज करें।

Markdown के रूप में देखें
इस पेज पर

यह फ्लो एक ग्राहक खाते को आपके एप्लिकेशन से जोड़ता है। ग्राहक साइन इन करता है, व्यक्तिगत या संगठन खाता चुनता है और अनुरोधित अनुमतियों को स्वीकृति देता है। इसके बाद आपका बैकएंड शॉर्ट-लिव्ड कोड को टोकन के लिए एक्सचेंज करता है।

शुरू करने से पहले#

पूर्ण एप्लिकेशन पंजीकरण. आपको एक सटीक पंजीकृत कॉलबैक, सर्वर-हेल्ड क्लाइंट क्रेडेंशियल्स और ब्राउज़र ऑथराइजेशन पूरा करने के लिए एक सर्वर-साइड सेशन की आवश्यकता है।

1. ऑथराइजेशन अनुरोध बनाएं#

GET https://auth.shareai.now/oauth/authorize

ग्राहक से एप्लिकेशन को ऑथराइज करने के लिए कहें।

बेस URL
https://auth.shareai.now
प्रमाणीकरण
ब्राउज़र रीडायरेक्ट; पंजीकृत एप्लिकेशन

प्रत्येक प्रयास के लिए एक नया वेरिफायर, स्टेट और नॉन्स जनरेट करें। इन्हें प्रारंभिक उपयोगकर्ता के सर्वर-साइड सेशन में स्टोर करें। ब्राउज़र रीडायरेक्ट में SHA-256 चैलेंज भेजें, कभी भी वेरिफायर नहीं। केवल वही स्कोप्स अनुरोध करें जो आपके एप्लिकेशन को चाहिए।

Python

import base64
import hashlib
import secrets
import urllib.parse

verifier = secrets.token_urlsafe(48)
challenge = base64.urlsafe_b64encode(hashlib.sha256(verifier.encode()).digest()).rstrip(b"=").decode()
state = secrets.token_urlsafe(32)
nonce = secrets.token_urlsafe(32)
# Store verifier, state and nonce in the user's server-side session.
params = {
    "response_type": "code",
    "client_id": "YOUR_CLIENT_ID",
    "redirect_uri": "https://app.example.com/auth/shareai/callback",
    "scope": "openid profile surcharge",
    "state": state,
    "nonce": nonce,
    "code_challenge": challenge,
    "code_challenge_method": "S256",
}
print("https://auth.shareai.now/oauth/authorize?" + urllib.parse.urlencode(params))

2. कॉलबैक को सत्यापित करें#

यदि ऑथराइजेशन अस्वीकृत है, तो OAuth त्रुटि को सामान्य रद्दीकरण के रूप में संभालें। अन्यथा, उपयोग करने से पहले लौटाए गए state को सहेजे गए मान से तुलना करें। गुम या असंगत स्टेट को अस्वीकार करें। सहेजे गए स्टेट को केवल एक बार उपयोग करें; किसी अन्य ब्राउज़र सेशन द्वारा सबमिट किए गए कॉलबैक URLs को स्वीकार न करें।

3. कोड एक्सचेंज करें#

POST https://auth.shareai.now/oauth/token

एक बार उपयोग किए जाने वाले कोड और मिलते-जुलते PKCE वेरिफायर का एक्सचेंज करें।

बेस URL
https://auth.shareai.now
प्रमाणीकरण
गोपनीय क्लाइंट प्रमाणीकरण

cURL

curl --fail-with-body "https://auth.shareai.now/oauth/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "grant_type=authorization_code" \
  --data-urlencode "client_id=$SHAREAI_CLIENT_ID" \
  --data-urlencode "client_secret=$SHAREAI_CLIENT_SECRET" \
  --data-urlencode "code=$AUTHORIZATION_CODE" \
  --data-urlencode "redirect_uri=https://app.example.com/auth/shareai/callback" \
  --data-urlencode "code_verifier=$PKCE_VERIFIER"

क्लाइंट के लिए कॉन्फ़िगर की गई क्लाइंट प्रमाणीकरण विधि का उपयोग करें। उदाहरण फॉर्म-आधारित क्लाइंट प्रमाणीकरण का उपयोग करता है। एक ही कोड को दो बार न भेजें; उपयोग किए गए या समाप्त कोड के बाद ऑथराइजेशन फिर से शुरू करें।

4. परिणाम को स्टोर करें और अपने ऐप सेशन को स्थापित करें#

एक्सेस और रिफ्रेश टोकन को अपने बैकएंड में स्टोर करें। लौटाए गए expires_in का उपयोग करें बजाय इसके कि स्थायी टोकन मान लें। यदि आप ID टोकन का उपयोग करते हैं, तो इसके दावों पर भरोसा करने से पहले इसके हस्ताक्षर को जारीकर्ता के JWKS, अपेक्षित जारीकर्ता, क्लाइंट ऑडियंस, समाप्ति और आपके मूल नॉन्स के साथ सत्यापित करें।

जीवनचक्र जारी रखें#

रिफ्रेश और रोटेशन · स्कोप्स और खाता पहचान · OAuth चैट अनुरोध

अंतिम अपडेट सितम्बर 15, 2026

ShareAI प्लेटफ़ॉर्म दस्तावेज़
सभी दस्तावेज़ीकरण

शीर्षक या सामग्री द्वारा खोजें।

इस पेज के बारे में पूछें

इस पेज को एक्सप्लोर करने के लिए एक सहायक चुनें। आप पेज को कॉपी करके अपनी बातचीत में पेस्ट भी कर सकते हैं।

Ask ChatGPTAsk ClaudeAsk GrokAsk ShareAI