मुख्य सामग्री पर जाएं
X API मानक HTTP स्टेटस कोड का उपयोग करता है। सफल अनुरोध 2xx codes लौटाते हैं; errors के मामले में 4xx या 5xx codes लौटाए जाते हैं, जिनका विवरण रिस्पॉन्स बॉडी में होता है।

HTTP स्टेटस कोड

सफल कोड

Codeअर्थविवरण
200ठीक हैअनुरोध सफल रहा
201बनाया गयासंसाधन बनाया गया (POST requests)
204कोई सामग्री नहींरिस्पॉन्स बॉडी के बिना सफलता (DELETE requests)

क्लाइंट त्रुटि कोड

Codeअर्थसामान्य कारण
400अमान्य अनुरोधअमान्य JSON, गलत तरीके से बनी क्वेरी, आवश्यक पैरामीटर मौजूद नहीं हैं
401अनधिकृतअमान्य या अनुपस्थित प्रमाणीकरण क्रेडेंशियल
403निषिद्धप्रमाणीकरण वैध है, लेकिन इस संसाधन या action के लिए अनुमति नहीं है
404नहीं मिलासंसाधन मौजूद नहीं है या उसे हटा दिया गया है
409विरोधस्ट्रीम में कोई rule नहीं है (केवल filtered स्ट्रीम)
429बहुत अधिक अनुरोधरेट लिमिट या usage cap पार हो गई है

सर्वर त्रुटि कोड

कोडअर्थक्या करें
500आंतरिक सर्वर त्रुटिप्रतीक्षा करें और फिर से प्रयास करें; स्टेटस पेज देखें
502बैड गेटवेप्रतीक्षा करें और फिर से प्रयास करें
503सेवा अनुपलब्धX पर अत्यधिक लोड है; प्रतीक्षा करें और फिर से प्रयास करें
504गेटवे टाइमआउटप्रतीक्षा करें और फिर से प्रयास करें

त्रुटि प्रतिक्रिया का प्रारूप

त्रुटि प्रतिक्रियाओं में संरचित विवरण शामिल होते हैं:
{
  "title": "Invalid Request",
  "detail": "The 'query' parameter is required.",
  "type": "https://api.x.com/2/problems/invalid-request"
}
फ़ील्डविवरण
typeत्रुटि type की पहचान करने वाला URI
titleत्रुटि का संक्षिप्त विवरण
detailइस त्रुटि का विशिष्ट स्पष्टीकरण
त्रुटि के type के आधार पर अतिरिक्त फ़ील्ड्स मौजूद हो सकते हैं।

त्रुटि के प्रकार

TypeDescription
about:blankसामान्य त्रुटि (HTTP status code देखें)
.../invalid-requestगलत प्रारूप वाला अनुरोध या अमान्य पैरामीटर
.../resource-not-foundपोस्ट, उपयोगकर्ता या अन्य संसाधन मौजूद नहीं है
.../not-authorized-for-resourceनिजी/संरक्षित सामग्री की पहुँच नहीं है
.../client-forbiddenऐप नामांकित नहीं है या उसके पास आवश्यक पहुँच नहीं है
.../usage-cappedउपयोग सीमा पार हो गई
.../rate-limit-exceededरेट लिमिट पार हो गई
.../streaming-connectionस्ट्रीम कनेक्शन में समस्या
.../rule-capफ़िल्टर की गई स्ट्रीम के लिए नियम बहुत अधिक हैं
.../invalid-rulesनियम सिंटैक्स में त्रुटि
.../duplicate-rulesनियम पहले से मौजूद है

आंशिक त्रुटियाँ

कुछ अनुरोध आंशिक रूप से सफल हो सकते हैं। 200 प्रतिक्रिया में data और errors दोनों शामिल हो सकते हैं:
{
  "data": [
    {"id": "123", "text": "Hello"}
  ],
  "errors": [
    {
      "resource_id": "456",
      "resource_type": "tweet",
      "title": "Not Found Error",
      "detail": "Could not find tweet with id: [456].",
      "type": "https://api.x.com/2/problems/resource-not-found"
    }
  ]
}
ऐसा तब होता है, जब एक साथ कई संसाधनों का अनुरोध किया जाता है और उनमें से कुछ उपलब्ध नहीं होते।

सामान्य errors का समस्या निवारण

अपना प्रमाणीकरण जांचें:
  • पुष्टि करें कि आप इस endpoint के लिए सही प्रमाणीकरण विधि का उपयोग कर रहे हैं
  • सुनिश्चित करें कि credentials दोबारा जनरेट नहीं किए गए हैं
  • Authorization header का फ़ॉर्मैट जांचें
  • OAuth 1.0a के लिए, signature calculation की पुष्टि करें
प्रमाणीकरण गाइड →
अपनी पहुंच जांचें:
  • पुष्टि करें कि आपके ऐप को इस endpoint का access प्राप्त है
  • कुछ endpoints के लिए विशेष enrollment या approval की आवश्यकता होती है
  • user-context endpoints के लिए उपयुक्त OAuth scopes चाहिए
  • resource निजी या संरक्षित हो सकता है
रेट लिमिट लागू है:
  • दोबारा कोशिश कब करनी है, यह जानने के लिए x-rate-limit-reset header जांचें
  • exponential backoff लागू करें
  • responses को cache करने पर विचार करें
  • requests को पूरे time window में फैलाएं
रेट लिमिट्स गाइड →
अपने अनुरोध को ठीक करें:
  • JSON syntax की जांच करें
  • देखें कि कोई आवश्यक parameters छूट तो नहीं गए हैं
  • parameter types की पुष्टि करें (strings बनाम numbers)
  • queries में special characters को escape करें
इन बातों की जांच करें:
  • संरक्षित accounts की पोस्ट्स केवल authorization के साथ ही दिखाई देती हैं
  • deleted पोस्ट्स 404 लौटाती हैं
  • कुछ पोस्ट्स कुछ regions में withheld हो सकती हैं
  • पुष्टि करें कि search query syntax सही है
पुनःकनेक्शन संभालें:
  • backoff के साथ automatic reconnect लागू करें
  • छूटे हुए data के लिए recovery features का उपयोग करें
  • full-buffer disconnects की जांच करें (client पर्याप्त तेज़ी से consume नहीं कर रहा है)
  • पुष्टि करें कि कम से कम एक स्ट्रीम rule मौजूद है
स्ट्रीमिंग गाइड →

रेट लिमिट हेडर

हर रिस्पॉन्स में रेट लिमिट की जानकारी शामिल होती है:
x-rate-limit-limit: 900
x-rate-limit-remaining: 847
x-rate-limit-reset: 1705420800
शीर्षकविवरण
x-rate-limit-limitवर्तमान विंडो में अधिकतम अनुरोध
x-rate-limit-remainingशेष अनुरोध
x-rate-limit-resetविंडो रीसेट होने का Unix टाइमस्टैम्प

सर्वोत्तम प्रथाएँ

स्टेटस कोड जाँचें

रिस्पॉन्स बॉडी को parse करने से पहले हमेशा HTTP स्टेटस जाँचें।

आंशिक errors को संभालें

200 रिस्पॉन्स में भी errors array की जाँच करें।

रीट्राई लॉजिक लागू करें

429 और 5xx errors के लिए exponential backoff का उपयोग करें।

अनुरोध का विवरण लॉग करें

डीबगिंग के लिए request ID और timestamp शामिल करें।

मदद पाना

त्रुटियों से जुड़े प्रश्न पोस्ट करते समय, इनमें यह जानकारी शामिल करें:
  • API endpoint URL
  • अनुरोध हेडर (क्रेडेंशियल्स हटा दें)
  • पूरी त्रुटि प्रतिक्रिया
  • आप क्या होने की अपेक्षा कर रहे थे
  • आपने कौन-कौन से चरण आज़माए हैं

डेवलपर फ़ोरम

प्रश्न पूछें और समाधान खोजें।

API स्टेटस

ज्ञात समस्याओं की जाँच करें।