मुख्य सामग्री पर जाएं

OAuth 1.0a

उद्देश्यमेथड
3-legged OAuth flow और X के साथ साइन इन का चरण 1
किसी Consumer एप्लिकेशन को उपयोगकर्ता प्राधिकरण का अनुरोध करने के लिए OAuth Request Token प्राप्त करने की अनुमति देता है।
POST oauth/request_token
3-legged OAuth flow और X के साथ साइन इन का चरण 2
किसी Consumer एप्लिकेशन को उपयोगकर्ता प्राधिकरण का अनुरोध करने के लिए OAuth Request Token का उपयोग करने की अनुमति देता है।
GET oauth/authenticate
3-legged OAuth flow और X के साथ साइन इन का चरण 2
किसी Consumer एप्लिकेशन को उपयोगकर्ता प्राधिकरण का अनुरोध करने के लिए OAuth Request Token का उपयोग करने की अनुमति देता है।
GET oauth/authorize
3-legged OAuth flow और X के साथ साइन इन का चरण 3
किसी Consumer एप्लिकेशन को OAuth Request Token के बदले OAuth Access Token प्राप्त करने की अनुमति देता है।
POST oauth/access_token
किसी पंजीकृत एप्लिकेशन को जारी किए गए OAuth Access Token को निरस्त करने की अनुमति देता है।POST oauth/invalidate_token

OAuth 2.0 बेयरर टोकन

उद्देश्यमेथड
किसी पंजीकृत ऐप को OAuth 2 app-only बेयरर टोकन जनरेट करने की अनुमति देता है, जिसका उपयोग उपयोगकर्ता कॉन्टेक्स्ट के बिना ऐप की ओर से API अनुरोध करने के लिए किया जा सकता है।POST oauth2/token
किसी पंजीकृत ऐप को जारी किए गए OAuth 2 app-only बेयरर टोकन को रद्द करने की अनुमति देता है।POST oauth2/invalidate_token

POST oauth/request_token

किसी Consumer application को उपयोगकर्ता की अनुमति का अनुरोध करने के लिए OAuth Request Token प्राप्त करने देता है। यह मेथड OAuth 1.0 authentication flow के Section 6.1 को पूरा करता है। हम चाहते हैं कि आप OAuth authorization के सभी चरणों के लिए HTTPS का उपयोग करें। उपयोग संबंधी नोट: oauth_nonce के लिए केवल ASCII मान स्वीकार किए जाते हैं संसाधन URL https://api.x.com/oauth/request_token संसाधन जानकारी
रिस्पॉन्स प्रारूपJSON
प्रमाणीकरण आवश्यक है?नहीं
रेट लिमिट लागूहाँ
पैरामीटर
NameRequiredDescriptionExample
oauth_callbackrequiredOAuth 1.0a अनुपालन के लिए यह पैरामीटर required है। यहाँ आप जो मान देते हैं, उसका उपयोग उस URL के रूप में किया जाएगा, जिस पर उपयोगकर्ता को रीडायरेक्ट किया जाएगा, यदि वह आपके application को अपने खाते तक पहुँच की अनुमति देता है। out-of-band pin mode के लिए इसे oob पर सेट करें। desktop/mobile applications में उपयोग के लिए custom callbacks निर्दिष्ट करने का यह भी तरीका है। pre-registered callback की परवाह किए बिना, इस चरण में हमेशा oauth_callback भेजें।

हम चाहते हैं कि इस endpoint के साथ उपयोग की जाने वाली किसी भी callback URL को developer.x.com पर ऐप की settings में कॉन्फ़िगर किया गया हो*
http://themattharris.local/auth.php twitterclient://callback
x_auth_access_typeoptionalकिसी application द्वारा उपयोगकर्ता के खाते के लिए अनुरोधित access level को override करता है। समर्थित मान read या write हैं। इस पैरामीटर का उद्देश्य डेवलपर को एक read/write application रजिस्टर करने देना है, साथ ही जहाँ उपयुक्त हो वहाँ केवल read access का अनुरोध करने की सुविधा देना भी है।
अपने callback URLs को स्वीकृत करने के तरीके के बारे में इस पेज पर और जानें। कृपया ध्यान दें - यदि आप developer.x.com पर अपने X खाते में लॉग इन हैं, तो आप X apps को X app dashboard के माध्यम से देख और संपादित कर सकते हैं। उदाहरण अनुरोध अनुरोध URL: POST https://api.x.com/oauth/request_token अनुरोध POST Body: N/A Authorization Header: OAuth oauth_nonce="K7ny27JTpKVsTgdyLdDfmQQWVLERj2zAK5BslRsqyw", oauth_callback="http%3A%2F%2Fmyapp.com%3A3005%2Ftwitter%2Fprocess_callback", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1300228849", oauth_consumer_key="OqEqJeafRSF11jBMStrZz", oauth_signature="Pc%2BMLdv028fxCErFyi8KXFM%2BddU%3D", oauth_version="1.0" रिस्पॉन्स: oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik&oauth_token_secret=Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM&oauth_callback_confirmed=true

GET oauth/authorize

किसी Consumer ऐप को उपयोगकर्ता की अनुमति का अनुरोध करने के लिए OAuth Request Token का उपयोग करने की अनुमति देता है। यह मेथड OAuth 1.0 authentication flow के Section 6.2 को पूरा करता है। डेस्कटॉप ऐप्लिकेशन को इसी मेथड का उपयोग करना चाहिए (और वे GET oauth / authenticate का उपयोग नहीं कर सकते)। उपयोग संबंधी नोट: इस मेथड में oauth_callback कभी नहीं भेजा जाता; इसके बजाय, इसे POST oauth / request_token में दें। संसाधन URL https://api.x.com/oauth/authorize संसाधन जानकारी
रिस्पॉन्स प्रारूपJSON
प्रमाणीकरण आवश्यक है?हाँ
रेट लिमिट लागू है?हाँ
पैरामीटर
नामआवश्यकविवरणडिफ़ॉल्ट मानउदाहरण
force_loginवैकल्पिकयह सुनिश्चित करने के लिए उपयोगकर्ता को अपने क्रेडेंशियल दर्ज करने के लिए बाध्य करता है कि सही उपयोगकर्ता खाते को अनुमति मिले।
screen_nameवैकल्पिकOAuth लॉगिन स्क्रीन के उपयोगकर्ता नाम इनपुट बॉक्स में दिए गए मान को पहले से भर देता है।
उदाहरण अनुरोध उपयोगकर्ता को वेब ब्राउज़र में oauth/authorize चरण पर भेजें, जिसमें oauth_token पैरामीटर शामिल हो: https://api.x.com/oauth/authorize?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik

GET oauth/authenticate

किसी Consumer ऐप को उपयोगकर्ता से प्राधिकरण का अनुरोध करने के लिए OAuth request_token का उपयोग करने की अनुमति देता है। यह मेथड callback authentication flow का उपयोग करने वाले ऐप्लिकेशनों के लिए OAuth 1.0 authentication flow के Section 6.2 का विकल्प है। जब तक force_login पैरामीटर को true पर सेट नहीं किया जाता, यह मेथड एक्सेस प्राधिकरण के लिए वर्तमान में लॉग इन उपयोगकर्ता को खाते के रूप में उपयोग करेगा। यह मेथड GET oauth / authorize से इस मामले में अलग है कि अगर उपयोगकर्ता पहले ही ऐप को अनुमति दे चुका है, तो उपयोगकर्ता को ऐप को दोबारा स्वीकृति दिए बिना ही रीडायरेक्ट कर दिया जाएगा। इस व्यवहार को सक्षम करने के लिए, आपको अपने application record में Use Sign in with X सेटिंग को सक्षम करना होगा। संसाधन URL https://api.x.com/oauth/authenticate संसाधन जानकारी
रिस्पॉन्स प्रारूपJSON
प्रमाणीकरण आवश्यक है?हाँ
रेट लिमिट लागूहाँ
पैरामीटर
नामआवश्यकविवरणडिफ़ॉल्ट मानउदाहरण
force_loginoptionalयह सुनिश्चित करने के लिए कि सही उपयोगकर्ता खाता अधिकृत हो, उपयोगकर्ता को अपने क्रेडेंशियल दर्ज करने के लिए बाध्य करता है।true
screen_nameoptionalदिए गए मान से OAuth लॉगिन स्क्रीन के उपयोगकर्ता नाम इनपुट बॉक्स को पहले से भर देता है।
उदाहरण अनुरोध उपयोगकर्ता को वेब ब्राउज़र में oauth/authenticate चरण पर भेजें, जिसमें oauth_token पैरामीटर शामिल हो: https://api.x.com/oauth/authenticate?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik

POST oauth/access_token

एक Consumer एप्लिकेशन को OAuth Request Token के बदले OAuth Access Token का आदान-प्रदान करने की अनुमति देता है। यह मेथड OAuth 1.0 authentication flow के Section 6.3 को पूरा करता है। संसाधन URL https://api.x.com/oauth/access_token संसाधन जानकारी
रिस्पॉन्स प्रारूपJSON
प्रमाणीकरण आवश्यक है?हाँ
रेट लिमिट लागू है?हाँ
पैरामीटर
नामआवश्यकविवरणडिफ़ॉल्ट मानउदाहरण
oauth_tokenrequiredयहाँ oauth_token वही होना चाहिए जो request_token चरण में लौटाए गए oauth_token के समान हो।
oauth_verifierrequiredअगर आप OAuth web-flow का उपयोग कर रहे हैं, तो इस पैरामीटर को callback URL में लौटाए गए oauth_verifier के मान पर सेट करें। अगर आप out-of-band OAuth का उपयोग कर रहे हैं, तो इस मान को PIN code पर सेट करें। OAuth 1.0a अनुपालन के लिए यह पैरामीटर required है। OAuth 1.0a को सख्ती से लागू किया जाता है, और oauth_verifier का उपयोग न करने वाले एप्लिकेशन OAuth flow पूरा नहीं कर पाएंगे।
उदाहरण अनुरोध POST https://api.x.com/oauth/access_token?oauth_token=qLBVyoAAAAAAx72QAAATZxQWU6P&oauth_verifier=ghLM8lYmAxDbaqL912RZSRjCCEXKDIzx PIN-आधारित POST https://api.x.com/oauth/access_token?oauth_token=9Npq8AAAAAAAx72QBRABZ4DAfY9&oauth_verifier=4868795 उदाहरण रिस्पॉन्स oauth_token=6253282-eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY&oauth_token_secret=2EEfA6BG5ly3sR3XjE0IBSnlQu4ZrUzPiYTmrkVU&user_id=6253282&screen_name=xapi

POST oauth/invalidate_token

किसी पंजीकृत ऐप को अपने क्लाइंट क्रेडेंशियल प्रस्तुत करके जारी किए गए OAuth access_token को निरस्त करने की अनुमति देता है। access_token अमान्य हो जाने के बाद, उसे दोबारा बनाने के नए प्रयास पर एक अलग Access Token मिलेगा और अमान्य किए गए token का उपयोग अब नहीं किया जा सकेगा। संसाधन URL https://api.x.com/1.1/oauth/invalidate_token संसाधन जानकारी
रिस्पॉन्स प्रारूपJSON
प्रमाणीकरण आवश्यक है?हाँ - उन access token के साथ उपयोगकर्ता संदर्भ, जिन्हें आप अमान्य करना चाहते हैं
रेट लिमिट लागू है?हाँ
उदाहरण अनुरोध
        curl --request POST
          --url 'https://api.x.com/1.1/oauth/invalidate_token.json'
          --header 'authorization: OAuth oauth_consumer_key="CLIENT_KEY",
         oauth_nonce="AUTO_GENERATED_NONCE", oauth_signature="AUTO_GENERATED_SIGNATURE",
         oauth_signature_method="HMAC-SHA1", oauth_timestamp="AUTO_GENERATED_TIMESTAMP",
         oauth_token="ACCESS_TOKEN", oauth_version="1.0"'
उदाहरण रिस्पॉन्स
        HTTP/1.1 200 OK
        Content-Type: application/json; charset=utf-8
        Content-Length: 127
        ...

        {"access_token":"ACCESS_TOKEN"}
टोकन अमान्य होने के बाद त्रुटि रिस्पॉन्स का उदाहरण
        HTTP/1.1 401 Authorization Required
        ...

        {"errors": [{
          "code": 89,
          "message": "Invalid or expired token."}
        ]}

POST oauth2/token

यह किसी पंजीकृत ऐप को OAuth 2 बेयरर टोकन प्राप्त करने की अनुमति देता है, जिसका उपयोग उपयोगकर्ता संदर्भ के बिना ऐप की ओर से API अनुरोध करने के लिए किया जा सकता है। इसे केवल-ऐप प्रमाणीकरण कहा जाता है। oauth2/invalidate_token का उपयोग करके बेयरर टोकन को अमान्य किया जा सकता है। एक बार बेयरर टोकन अमान्य हो जाने पर, नया टोकन बनाने के प्रयासों से एक अलग बेयरर टोकन मिलेगा और पिछले टोकन का उपयोग फिर स्वीकार नहीं किया जाएगा। किसी ऐप के लिए एक समय में केवल एक ही बेयरर टोकन सक्रिय हो सकता है, और इस मेथड पर बार-बार किए गए अनुरोध तब तक वही पहले से मौजूद टोकन लौटाएँगे, जब तक उसे अमान्य न कर दिया जाए। सफल रिस्पॉन्स में जारी किए गए बेयरर टोकन का विवरण देने वाली JSON संरचना शामिल होती है। इस मेथड से प्राप्त टोकन को कैश किया जाना चाहिए। यदि बहुत अधिक बार प्रयास किया जाता है, तो अनुरोध HTTP 403 और code 99 के साथ अस्वीकार कर दिए जाएँगे। संसाधन URL https://api.x.com/oauth2/token संसाधन जानकारी
रिस्पॉन्स प्रारूपJSON
क्या प्रमाणीकरण आवश्यक है?हाँ - अपने API key को username और API key secret को password के रूप में उपयोग करते हुए Basic auth
क्या रेट लिमिट लागू है?हाँ
पैरामीटर
नामआवश्यकविवरणडिफ़ॉल्ट मानउदाहरण
grant_typerequiredयह ऐप द्वारा अनुरोधित grant के type को निर्दिष्ट करता है। वर्तमान में केवल client_credentials की अनुमति है। अधिक जानकारी के लिए केवल-ऐप प्रमाणीकरण देखें।client_credentials
उदाहरण अनुरोध
    POST /oauth2/token HTTP/1.1
    Host: api.x.com
    User-Agent: My X App v1.0.23
    Authorization: Basic eHZ6MWV2R ... o4OERSZHlPZw==
    Content-Type: application/x-www-form-urlencoded;charset=UTF-8
    Content-Length: 29
    Accept-Encoding: gzip

    grant_type=client_credentials
उदाहरण रिस्पॉन्स:
    HTTP/1.1 200 OK
    Status: 200 OK
    Content-Type: application/json; charset=utf-8
    ...
    Content-Encoding: gzip
    Content-Length: 140

    {"token_type":"bearer","access_token":"AAAA%2FAAA%3DAAAAAAAA"}

POST oauth2/invalidate_token

किसी पंजीकृत ऐप को अपने client credentials प्रस्तुत करके जारी किए गए OAuth 2.0 बेयरर टोकन को निरस्त करने की अनुमति देता है। एक बार बेयरर टोकन अमान्य हो जाने पर, नया बनाने के प्रयासों में एक अलग बेयरर टोकन मिलेगा और अमान्य किए गए टोकन का उपयोग अब नहीं किया जा सकेगा। सफल रिस्पॉन्स में निरस्त किए गए बेयरर टोकन का विवरण देने वाली JSON-संरचना शामिल होती है। संसाधन URL https://api.x.com/oauth2/invalidate_token संसाधन जानकारी
रिस्पॉन्स प्रारूपJSON
प्रमाणीकरण आवश्यक है?हाँ - OAuth 1.0a के साथ ऐप की consumer API keys और ऐप के स्वामी का access token और access token secret
रेट लिमिट लागूहाँ
पैरामीटर
नामआवश्यकविवरण
access_tokenआवश्यकउस बेयरर टोकन का मान जिसे आप अमान्य करना चाहते हैं
उदाहरण अनुरोध
        curl --request POST
          --url 'https://api.x.com/oauth2/invalidate_token?access_token=AAAA%2FAAA%3DAAAAAAAA'
          --header 'authorization: OAuth oauth_consumer_key="CLIENT_KEY",
         oauth_nonce="AUTO_GENERATED_NONCE", oauth_signature="AUTO_GENERATED_SIGNATURE",
         oauth_signature_method="HMAC-SHA1", oauth_timestamp="AUTO_GENERATED_TIMESTAMP",
         oauth_token="ACCESS_TOKEN", oauth_version="1.0"'
उदाहरण रिस्पॉन्स
         Status: 200 OK
         Content-Type: application/json; charset=utf-8
         Content-Length: 135
         ...
       {
        "access_token": "AAAA%2FAAA%3DAAAAAAAA"
        }