मुख्य सामग्री पर जाएं
X API में हर ऑब्जेक्ट—पोस्ट्स, उपयोगकर्ता, सूचियाँ, DMs, Spaces—की एक अद्वितीय id होती है। इन ids के काम करने का तरीका समझने से आपको विश्वसनीय इंटीग्रेशन बनाने में मदद मिलती है।

id प्रारूप

X ids 64-बिट unsigned integers होती हैं, जिन्हें “Snowflake” नामक सिस्टम का उपयोग करके जनरेट किया जाता है। प्रत्येक id में ये जानकारी एन्कोड होती है:
  • Timestamp — ऑब्जेक्ट कब बनाया गया था
  • Worker number — id किस सर्वर ने जनरेट की
  • Sequence number — उस मिलीसेकंड के भीतर का क्रम
इसका मतलब है कि ids मोटे तौर पर समय-क्रम में होती हैं: बड़ी ids आमतौर पर नए ऑब्जेक्ट्स को दर्शाती हैं।
ids सिर्फ़ किसी एक ऑब्जेक्ट type के भीतर ही नहीं, बल्कि पूरे X में वैश्विक रूप से अद्वितीय होती हैं।

स्ट्रिंग बनाम पूर्णांक निरूपण

अपने कोड में हमेशा स्ट्रिंग id का उपयोग करें। कुछ प्रोग्रामिंग भाषाएँ (जैसे JavaScript) 64-बिट पूर्णांकों को सटीक रूप से प्रदर्शित नहीं कर पाती हैं।
JavaScript में पूर्णांक 53 बिट तक सीमित होते हैं। इससे बड़े id के साथ परिशुद्धता की हानि होती है:
// यह परिशुद्धता खो देता है!
const id = 10765432100123456789;
console.log(id.toString()); // "10765432100123458000" — गलत!

// इसके बजाय स्ट्रिंग का उपयोग करें
const id = "10765432100123456789";
console.log(id); // "10765432100123456789" — सही!

API संस्करण

संस्करणid प्रारूप
X API v2डिफ़ॉल्ट रूप से ids स्ट्रिंग के रूप में लौटाई जाती हैं
X API v1.1id (पूर्णांक) और id_str (स्ट्रिंग) दोनों लौटाता है — हमेशा id_str का उपयोग करें

id के साथ कार्य करना

id का संग्रहण

अपने डेटाबेस में id को स्ट्रिंग या 64-बिट पूर्णांक के रूप में संग्रहीत करें:
डेटाबेसअनुशंसित type
PostgreSQLBIGINT या TEXT
MySQLBIGINT UNSIGNED या VARCHAR(20)
MongoDBस्ट्रिंग
SQLiteTEXT (SQLite पूर्णांक अधिकतम 63 बिट तक होते हैं)

ids की तुलना

कालानुक्रमिक क्रम तय करने के लिए ids की तुलना करते समय:
# Python - 64-बिट पूर्णांकों के लिए सुरक्षित
if int(id1) > int(id2):
    print("id1 is newer")

# JavaScript - स्ट्रिंग के रूप में तुलना करें (समान लंबाई वाले ids के लिए लेक्सिकोग्राफ़िक क्रम काम करता है)
# या BigInt का उपयोग करें
if (BigInt(id1) > BigInt(id2)) {
    console.log("id1 is newer");
}

सामान्य id प्रकार

ऑब्जेक्टउदाहरण idटिप्पणियाँ
पोस्ट (Tweet)1234567890123456789इसे Tweet id भी कहा जाता है
उपयोगकर्ता2244994945पुराने खातों की id छोटी होती हैं
सूची1234567890
Space1YqGodQbNXDxvअल्फ़ान्यूमेरिक, Snowflake फ़ॉर्मैट में नहीं
DM इवेंट1234567890123456789

डेटा शब्दकोश

प्रत्येक ऑब्जेक्ट प्रकार के लिए id फ़ील्ड्स देखें।

पोस्ट लुकअप

id के आधार पर पोस्ट्स प्राप्त करें।