Skip to main content
X API पोस्ट्स, उपयोगकर्ताओं, मीडिया आदि का प्रतिनिधित्व करने वाले संरचित JSON ऑब्जेक्ट लौटाता है। यह संदर्भ हर ऑब्जेक्ट type के लिए उपलब्ध प्रत्येक फ़ील्ड का विवरण देता है।

त्वरित नेविगेशन

विशिष्ट फ़ील्ड्स का अनुरोध करने के लिए फ़ील्ड्स पैरामीटर का उपयोग करें, और संबंधित ऑब्जेक्ट शामिल करने के लिए expansions का उपयोग करें।

पोस्ट (Tweet)

पोस्ट्स, X पर सामग्री की मुख्य इकाई हैं। प्रत्येक पोस्ट ऑब्जेक्ट में टेक्स्ट, मेटाडेटा और लेखक, मीडिया तथा पोल जैसे संबंधित ऑब्जेक्ट्स के संदर्भ शामिल होते हैं। डिफ़ॉल्ट फ़ील्ड्स: id, text, edit_history_tweet_ids अतिरिक्त फ़ील्ड्स का अनुरोध करने के लिए tweet.fields का उपयोग करें और संबंधित ऑब्जेक्ट्स शामिल करने के लिए expansions का उपयोग करें।

पोस्ट के सभी फ़ील्ड्स

Tweet ऑब्जेक्ट प्राप्त करना नमूना अनुरोध निम्नलिखित अनुरोध में, हम Tweets lookup endpoint पर Tweet के लिए फ़ील्ड्स का अनुरोध कर रहे हैं। $BEARER_TOKEN को अपने जनरेट किए गए बेयरर टोकन से बदलना न भूलें।
उदाहरण रिस्पॉन्स

User

user ऑब्जेक्ट में संदर्भित उपयोगकर्ता का वर्णन करने वाला Twitter उपयोगकर्ता खाते से संबंधित मेटाडेटा होता है। user ऑब्जेक्ट users lookup एंडपॉइंट से लौटाया जाने वाला प्राथमिक ऑब्जेक्ट है। इस एंडपॉइंट पर अतिरिक्त उपयोगकर्ता फ़ील्ड्स का अनुरोध करते समय, बस फ़ील्ड्स पैरामीटर user.fields का उपयोग करें। user ऑब्जेक्ट Tweet ऑब्जेक्ट में एक चाइल्ड ऑब्जेक्ट के रूप में भी मिल सकता है और इसे expand भी किया जा सकता है। केवल डिफ़ॉल्ट फ़ील्ड्स वाला संक्षिप्त ऑब्जेक्ट पाने के लिए, यह ऑब्जेक्ट ?expansions=author_id या ?expansions=in_reply_to_user_id के साथ expansion के लिए उपलब्ध है। ऑब्जेक्ट को पूरा करने के लिए अतिरिक्त फ़ील्ड्स का अनुरोध करते समय, फ़ील्ड्स पैरामीटर user.fields के साथ expansion का उपयोग करें।   उपयोगकर्ता ऑब्जेक्ट प्राप्त करना नमूना अनुरोध निम्नलिखित अनुरोध में, हम users lookup एंडपॉइंट पर उपयोगकर्ता के लिए फ़ील्ड्स का अनुरोध कर रहे हैं। सुनिश्चित करें कि आप $BEARER_TOKEN को अपने द्वारा जनरेट किए गए बेयरर टोकन से बदलें।  
नमूना रिस्पॉन्स

Space

Spaces, लाइव ऑडियो बातचीत के ज़रिए अभिव्यक्ति और सहभागिता की सुविधा देते हैं। Space डेटा डिक्शनरी में किसी Space से जुड़ा प्रासंगिक मेटाडेटा शामिल होता है; सभी विवरण रीयल टाइम में अपडेट होते रहते हैं। User ऑब्जेक्ट user resource में मिल सकते हैं और उन्हें expand किया जा सकता है। इन ऑब्जेक्ट्स को expansions query parameter में host_ids, creator_id, speaker_ids, mentioned_user_ids में से कम-से-कम एक जोड़कर expansion के लिए उपलब्ध कराया जा सकता है। Tweets के विपरीत, Spaces अस्थायी होते हैं और उनके समाप्त होने के बाद या उनके creator द्वारा रद्द किए जाने पर उपलब्ध नहीं रहते। जब आपका ऐप Spaces डेटा को हैंडल करता है, तो सबसे अद्यतित जानकारी लौटाना आपकी ज़िम्मेदारी होती है और जो डेटा अब प्लेटफ़ॉर्म पर उपलब्ध नहीं है, उसे हटाना भी ज़रूरी है। Spaces lookup endpoints यह सुनिश्चित करने में आपकी मदद कर सकते हैं कि आप उपयोगकर्ताओं की अपेक्षाओं और मंशा का सम्मान करें। **Space ऑब्जेक्ट प्राप्त करना ** नमूना अनुरोध निम्नलिखित अनुरोध में, हम Spaces lookup endpoint पर Space के लिए फ़ील्ड्स का अनुरोध कर रहे हैं। $BEARER_TOKEN को अपने जनरेट किए गए बेयरर टोकन से बदलना न भूलें।
** उदाहरण रिस्पॉन्स **

सूची

सूची ऑब्जेक्ट में संदर्भित सूची का वर्णन करने वाला Twitter Lists मेटाडेटा शामिल होता है। सूची ऑब्जेक्ट, सूची lookup endpoint द्वारा लौटाया जाने वाला प्राथमिक ऑब्जेक्ट है। इस endpoint पर अतिरिक्त सूची फ़ील्ड्स का अनुरोध करते समय, बस फ़ील्ड्स पैरामीटर list.fields का उपयोग करें। सूची ऑब्जेक्ट अन्य डेटा ऑब्जेक्ट्स के child के रूप में नहीं मिलता। हालांकि, user ऑब्जेक्ट्स user resource में मिल सकते हैं और उन्हें expand किया जा सकता है। ये ऑब्जेक्ट्स, expansions query parameter में owner_id जोड़कर expansion के लिए उपलब्ध हो जाते हैं। प्राथमिक सूची ऑब्जेक्ट को पूरा करने के लिए अतिरिक्त फ़ील्ड्स का अनुरोध करते समय, इस expansion का उपयोग list.fields फ़ील्ड्स पैरामीटर के साथ करें, और expansion ऑब्जेक्ट को पूरा करने के लिए user.fields का उपयोग करें। User ऑब्जेक्ट प्राप्त करना नमूना अनुरोध निम्नलिखित अनुरोध में, हम सूची lookup by ID endpoint पर user के लिए फ़ील्ड्स का अनुरोध कर रहे हैं। $BEARER_TOKEN को अपने जनरेट किए गए बेयरर टोकन से बदलें।
** उदाहरण रिस्पॉन्स**

मीडिया

मीडिया से आशय किसी Tweet से संलग्न किसी भी इमेज, GIF या वीडियो से है। मीडिया ऑब्जेक्ट किसी भी endpoint पर प्राथमिक ऑब्जेक्ट नहीं होता, लेकिन इसे Tweet ऑब्जेक्ट में पाया जा सकता है और विस्तारित किया जा सकता है। केवल डिफ़ॉल्ट फ़ील्ड्स वाले संक्षिप्त ऑब्जेक्ट को पाने के लिए यह ऑब्जेक्ट ?expansions=attachments.media_keys के साथ expansion के लिए उपलब्ध है। ऑब्जेक्ट को पूरा करने के लिए अतिरिक्त फ़ील्ड्स का अनुरोध करते समय फ़ील्ड पैरामीटर media.fields के साथ expansion का उपयोग करें। मीडिया ऑब्जेक्ट प्राप्त करना नमूना अनुरोध निम्नलिखित अनुरोध में, हम Tweet lookup एंडपॉइंट पर Tweet से संलग्न media ऑब्जेक्ट के लिए फ़ील्ड्स का अनुरोध कर रहे हैं। चूँकि media, Tweet का एक चाइल्ड ऑब्जेक्ट है, इसलिए attachment.media_keys एक्सपैंशन आवश्यक है। $BEARER_TOKEN को अपने स्वयं के जनरेट किए गए बेयरर टोकन से बदलना न भूलें।

पोल

Tweet में शामिल पोल किसी भी एंडपॉइंट पर प्राथमिक ऑब्जेक्ट नहीं होता, लेकिन इसे Tweet ऑब्जेक्ट में पाया जा सकता है और expanded किया जा सकता है। केवल डिफ़ॉल्ट फ़ील्ड्स वाला संक्षिप्त ऑब्जेक्ट पाने के लिए यह ऑब्जेक्ट ?expansions=attachments.poll_ids के साथ expansion हेतु उपलब्ध है। ऑब्जेक्ट को पूरा करने के लिए अतिरिक्त फ़ील्ड्स का अनुरोध करते समय poll.fields फ़ील्ड्स पैरामीटर के साथ इस expansion का उपयोग करें। पोल ऑब्जेक्ट प्राप्त करना नमूना अनुरोध नीचे दिए गए अनुरोध में, हम Tweets lookup एंडपॉइंट पर Tweet से जुड़े पोल ऑब्जेक्ट के लिए फ़ील्ड्स का अनुरोध कर रहे हैं। चूंकि poll, Tweet का एक child object है, इसलिए attachments.poll_id expansion आवश्यक है। $BEARER_TOKEN को अपने जनरेट किए गए बेयरर टोकन से बदलना न भूलें।
नमूना रिस्पॉन्स

स्थान

Tweet में टैग किया गया स्थान किसी भी endpoint पर प्राथमिक ऑब्जेक्ट नहीं होता, लेकिन इसे Tweet resource में पाया जा सकता है और expand किया जा सकता है। केवल default फ़ील्ड्स वाला संक्षिप्त ऑब्जेक्ट पाने के लिए यह ऑब्जेक्ट ?expansions=geo.place_id के साथ expansion के लिए उपलब्ध है। ऑब्जेक्ट को पूरा करने के लिए अतिरिक्त फ़ील्ड्स का अनुरोध करते समय field parameter place.fields के साथ expansion का उपयोग करें। किसी place ऑब्जेक्ट को प्राप्त करना नमूना अनुरोध निम्नलिखित अनुरोध में, हम Tweets lookup endpoint पर Tweet से जुड़े place ऑब्जेक्ट के लिए फ़ील्ड्स का अनुरोध कर रहे हैं। क्योंकि place, Tweet का एक child ऑब्जेक्ट है, इसलिए geo.place_id expansion आवश्यक है। $BEARER_TOKEN को अपने जनरेट किए गए बेयरर टोकन से बदलना न भूलें।
उदाहरण रिस्पॉन्स

Direct Message ईवेंट्स

Direct Message (DM) वार्तालाप ईवेंट्स से मिलकर बनते हैं। X API v2 फिलहाल तीन ईवेंट टाइप्स को सपोर्ट करता है: MessageCreate, ParticipantsJoin, और ParticipantsLeave। DM ईवेंट ऑब्जेक्ट्स Direct Message lookup एंडपॉइंट्स से लौटाए जाते हैं, और MessageCreate ईवेंट तब बनता है जब Manage Direct Messages एंडपॉइंट्स का उपयोग करके Direct Messages सफलतापूर्वक बनाए जाते हैं। DM ईवेंट्स का अनुरोध करते समय, डिफ़ॉल्ट रूप से तीन ईवेंट ऑब्जेक्ट एट्रिब्यूट्स, या फ़ील्ड्स, शामिल होते हैं: id, event_type, और text। अतिरिक्त ईवेंट फ़ील्ड्स पाने के लिए, अन्य फ़ील्ड्स चुनने हेतु fields पैरामीटर dm_event.fields का उपयोग करें। अन्य उपलब्ध ईवेंट फ़ील्ड्स में ये शामिल हैं: dm_conversation_id, created_at, sender_id, attachments, participant_ids, और referenced_tweets। इनमें से कई फ़ील्ड्स, Direct Message ईवेंट से जुड़े अन्य X ऑब्जेक्ट्स की IDs उपलब्ध कराती हैं:
  • sender_id - उस अकाउंट की ID जिसने संदेश भेजा, या जिसने किसी प्रतिभागी को ग्रुप वार्तालाप में आमंत्रित किया
  • partricipants_ids - अकाउंट IDs की एक array। ParticipantsJoin और ParticipantsLeave ईवेंट्स के लिए, इस array में उस अकाउंट की एक ही ID होगी जिसने ईवेंट बनाया
  • attachments - उस कॉन्टेंट के लिए media IDs देता है जिसे प्रेषक ने Twitter पर अपलोड किया है
  • referenced_tweets - अगर text फ़ील्ड में कोई Tweet URL मिलता है, तो उस Tweet की ID रिस्पॉन्स में शामिल की जाती है
इन Twitter ऑब्जेक्ट IDs को विस्तारित करने के लिए sender_id, participant_ids, referenced_tweets.id, और attachments.media_keys expansions उपलब्ध हैं। Direct Message event object प्राप्त करना नमूना अनुरोध इस उदाहरण में, हम एक ऐसा अनुरोध बनाएँगे जो one-to-one वार्तालाप से जुड़े इवेंट्स को प्राप्त करता है। यह अनुरोध मूलभूत Direct Message event फ़ील्ड्स लौटाएगा, साथ ही referenced Tweets और उनके authors के लिए अतिरिक्त फ़ील्ड्स भी लौटाएगा। आइए ऐसी query बनाएँ जो निम्नलिखित माँगे:
  • मूलभूत event attributes, जैसे यह कब बनाया गया था और यह किस वार्तालाप का हिस्सा है (dm_conversation)।
  • Direct Message भेजने वाले का account ID और description।
  • किसी भी referenced Tweet का टेक्स्ट, और वह कब पोस्ट किया गया था।
  • किसी भी referenced Tweet author का account ID और description।
इन attributes को लौटाने के लिए, आपकी request query में निम्नलिखित शामिल होंगे: ?dm_event.fields=id,sender_id,text,created_at,dm_conversation_id&expansions=sender_id,referenced_tweets.id&tweet.fields=created_at,text,author_id&user.fields=description
सुनिश्चित करें कि आप $BEARER_TOKEN को अपने द्वारा जनरेट किए गए बेयरर टोकन से बदल दें। नमूना रिस्पॉन्स

Community

Communities, X उपयोगकर्ताओं के लिए जुड़ने, साझा करने और उन चर्चाओं के और करीब आने के समर्पित स्थान हैं जिनकी उन्हें सबसे ज़्यादा परवाह है। Communities में पोस्ट्स को X पर कोई भी देख सकता है, लेकिन चर्चा में शामिल होने और उसमें भाग लेने की अनुमति केवल उसी Community के अन्य लोगों को होती है। Community ऑब्जेक्ट में किसी Community के बारे में प्रासंगिक मेटाडेटा शामिल होता है। Community ऑब्जेक्ट्स प्राप्त करना नमूना अनुरोध निम्नलिखित अनुरोध में, हम दिए गए कीवर्ड के आधार पर Communities की सूची खोजते समय विशिष्ट फ़ील्ड्स का अनुरोध कर रहे हैं। $BEARER_TOKEN को अपने जनरेट किए गए बेयरर टोकन से बदलना न भूलें।
उदाहरण रिस्पॉन्स

फ़ील्ड्स और expansions का उपयोग कैसे करें

डिफ़ॉल्ट रूप से, X API v2 डेटा ऑब्जेक्ट में फ़ील्ड्स या expansions पैरामीटर का उपयोग किए बिना रिक्वेस्ट करने पर कुछ ही डिफ़ॉल्ट फ़ील्ड्स शामिल होते हैं। यह गाइड आपको दिखाएगी कि अपने रिक्वेस्ट में fields और expansions क्वेरी पैरामीटर का उपयोग करके अपने रिस्पॉन्स में अतिरिक्त ऑब्जेक्ट और फ़ील्ड्स कैसे प्राप्त करें। इस गाइड में, हम नीचे दिए गए Tweet स्क्रीनशॉट में दिख रहे कई फ़ील्ड्स का अनुरोध करेंगे।   इस छवि में @X द्वारा पोस्ट किए गए एक Tweet का स्क्रीनशॉट शामिल है। आप Tweet का टेक्स्ट, उपयोगकर्ता नाम, प्रकाशित होने की तारीख और समय, स्रोत और सार्वजनिक मेट्रिक्स देख सकते हैं। इसमें एक वीडियो भी शामिल है। जैसा कि आप स्क्रीनशॉट में देख सकते हैं, Tweet से जुड़ी जानकारी के कई हिस्से दिखाई दे रहे हैं, जिनमें Tweet लेखक, Tweet मेट्रिक्स, बनाया गया टाइमस्टैम्प, वीडियो और वीडियो व्यू काउंट शामिल हैं। डेटा के कुछ ऐसे हिस्से भी हैं जो स्क्रीनशॉट में दिखाई नहीं देते, लेकिन फिर भी अनुरोध करने के लिए उपलब्ध हैं।  API को रिक्वेस्ट करते समय, डिफ़ॉल्ट रिस्पॉन्स सरल होता है और उसमें केवल डिफ़ॉल्ट Tweet फ़ील्ड्स (id और text) शामिल होते हैं। साथ ही, आपको केवल वही प्राथमिक ऑब्जेक्ट मिलेगा जो आपके द्वारा उपयोग किए जा रहे endpoint से लौटता है, उससे जुड़े अन्य संबद्ध डेटा ऑब्जेक्ट नहीं। यह सरलता, फ़ील्ड्स और expansions पैरामीटर के साथ मिलकर, आपको अपने उपयोग के मामले के अनुसार केवल उन्हीं फ़ील्ड्स का अनुरोध करने में सक्षम बनाती है जिनकी आपको आवश्यकता है।   

अतिरिक्त फ़ील्ड्स और ऑब्जेक्ट्स का अनुरोध करना।

सबसे पहले, हम एक Tweet ID और GET /tweets endpoint का उपयोग करके एक Tweet ऑब्जेक्ट का अनुरोध करेंगे। अनुरोध:
रिस्पॉन्स:
निम्नलिखित चरण-दर-चरण गाइड आपको बताएगी कि स्क्रीनशॉट में दिखाई देने वाला अतिरिक्त डेटा कैसे प्राप्त करें।
  1. हमारे ऑब्जेक्ट मॉडल का उपयोग करके या एंडपॉइंट्स के API संदर्भ पृष्ठों में फ़ील्ड्स की सूची देखकर, उन अतिरिक्त फ़ील्ड्स की पहचान करें जिनका आप अनुरोध करना चाहते हैं। इस स्थिति में, हम निम्नलिखित अतिरिक्त फ़ील्ड्स का अनुरोध करेंगे: attachments, author_id, created_at, public_metrics.
  2. ऊपर दिए गए फ़ील्ड्स को कॉमा-सेपरेटेड सूची के रूप में मान बनाकर tweet.fields क्वेरी पैरामीटर बनाएँ: ?tweet.fields=attachments,author_id,created_at,public_metrics
  3. आपके द्वारा पहले किए गए GET /tweets अनुरोध में query parameter जोड़ें।
अनुरोध: curl --request GET --url 'https://api.x.com/2/tweets?ids=1260294888811347969&tweet.fields=attachments,author_id,created_at,public_metrics' \ --header 'Authorization: Bearer $BEARER_TOKEN' रिस्पॉन्स:
  1. अब हम Tweet में शामिल वीडियो से जुड़े फ़ील्ड्स का अनुरोध करेंगे। इसके लिए expansions पैरामीटर का उपयोग करेंगे और attachments.media_keys को इसका मान देते हुए इसे अनुरोध में जोड़ेंगे।
?expansions=attachments.media_keys अनुरोध:
रिस्पॉन्स, जिसमें मीडिया ऑब्जेक्ट को includes ऑब्जेक्ट में दर्शाया गया है:
  1. और अंत में, हम वीडियो का व्यू काउंट और अवधि प्राप्त करेंगे। ये डिफ़ॉल्ट फ़ील्ड्स नहीं हैं, इसलिए इन्हें अलग से अनुरोध करना होगा। अपने अनुरोध में media.fields पैरामीटर के साथ कॉमा-सेपरेटेड वैल्यू public_metrics और duration_ms का उपयोग करें।
?media.fields=public_metrics,duration_ms अनुरोध:   curl --request GET --url 'https://api.x.com/2/tweets?ids=1260294888811347969&tweet.fields=attachments,author_id,created_at,public_metrics&expansions=attachments.media_keys&media.fields=duration_ms,public_metrics' --header 'Authorization: Bearer $BEARER_TOKEN' रिस्पॉन्स, जिसमें अब वह सारा डेटा शामिल है जो Tweet के स्क्रीनशॉट में दिखाया गया है:  
कुल मिलाकर, इस उदाहरण में हमने निम्नलिखित पैरामीटर शामिल किए हैं:
  • ids=1260294888811347969
  • tweet.fields=attachments,author_id,created_at,public_metrics
  • expansions=attachments.media_keys
  • media.fields=public_metrics,duration_ms  
इन सभी को एक साथ जोड़ने पर, पूरी क्वेरी स्ट्रिंग इस प्रकार दिखती है:

X API v2 के उदाहरण पेलोड

Tweet

Tweet का जवाब

Extended Tweet

मीडिया सहित Tweet

रीट्वीट किया गया Quote Tweet