ब्लॉग पर वापस जाएं

समस्या निवारणगाइड

सामान्य कनेक्शन त्रुटियाँ और उन्हें कैसे ठीक करें

CheapTokens API से कनेक्ट करते समय 401, 402, 400, 404, 413, 429 और 503 का क्या अर्थ है, रिस्पॉन्स कैसे दिखते हैं, और प्रत्येक को कैसे ठीक करें।

CheapTokens Team द्वाराप्रकाशित 5 मिनट का पाठ

टर्मिनल में संक्षिप्त स्पष्टीकरण के साथ HTTP स्टेटस कोड 401, 402, 400, 404 और 429 की सूची
इस पृष्ठ पर
  1. त्वरित जाँच
  2. 401 — अमान्य API कुंजी
  3. 402 — खाली बैलेंस या अनुरोध में कुंजी नहीं
  4. 404 — गलत पता
  5. 400 — मॉडल नहीं मिला
  6. 413 — अनुरोध बहुत बड़ा
  7. 429 — बहुत अधिक अनुरोध
  8. 503 — मॉडल अस्थायी रूप से अनुपलब्ध
  9. लंबी प्रतीक्षाएँ और टाइमआउट

लगभग हर कनेक्शन समस्या चार चीज़ों पर आती है: पता, कुंजी, मॉडल ID और बैलेंस। नीचे दिए गए त्वरित जाँच से शुरू करें, फिर अपना स्टेटस कोड खोजें। यहाँ उद्धृत रिस्पॉन्स बॉडी API के वास्तविक रिस्पॉन्स हैं (अक्टूबर 2026)।

त्वरित जाँच#

bash
# 1. The address is reachable — this request needs no key
curl https://api.cheaptokens.dev/v1/models

# 2. The key and the balance work — a tiny request (costs a fraction of a cent)
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "deepseek-ai/DeepSeek-V4-Flash-0731", "max_tokens": 5,
       "messages": [{"role": "user", "content": "ping"}]}'

अगर पहला कमांड विफल होता है, तो कारण आपकी तरफ़ का नेटवर्क, पते में टाइपो — या सेवा का अस्थायी रूप से अनुपलब्ध होना हो सकता है। अगर केवल दूसरा विफल होता है, तो नीचे उसका स्टेटस कोड देखें। अगर दोनों काम करते हैं लेकिन आपका टूल नहीं करता, तो टूल की सेटिंग्स की तुलना इन दो कमांडों से करें।

401 — अमान्य API कुंजी#

json
{"error": {"message": "Invalid API key", "type": "authentication_error"}}

Anthropic शैली के क्लाइंट को अपने प्रारूप में वही त्रुटि मिलती है:

json
{"type": "error", "error": {"type": "authentication_error", "message": "Invalid API key"}}

कारण:

  • कुंजी कॉपी करते समय एक अक्षर छूट गया, स्पेस या कोट्स शामिल हो गए;
  • डैशबोर्ड में कुंजी रोटेट कर दी गई — पुरानी अब काम नहीं करती;
  • CheapTokens कुंजी के बजाय किसी अन्य सेवा (जैसे OpenAI) की कुंजी सेट है;
  • इस टर्मिनल में एनवायरनमेंट वेरिएबल खाली है: echo ${#CHEAPTOKENS_API_KEY} इसकी लंबाई प्रिंट करता है।

डैशबोर्ड कुंजी केवल एक बार दिखाता है। अगर यह खो गई है, तो नई पाने के लिए Rotate दबाएँ और जहाँ-जहाँ इसका उपयोग होता है वहाँ इसे अपडेट करें।

402 — खाली बैलेंस या अनुरोध में कुंजी नहीं#

API दो अलग-अलग स्थितियों में 402 लौटाता है:

  1. बैलेंस खत्म हो गया है। अनुरोध बैलेंस से भुगतान किए जाते हैं; जब यह खत्म हो जाता है, तो कुंजी रोक दी जाती है। डैशबोर्ड में टॉप अप करें और अनुरोध फिर से पास होने लगेंगे।
  2. अनुरोध में कोई कुंजी ही नहीं है। अगर Authorization हेडर (या Anthropic-शैली क्लाइंट के लिए x-api-key) गायब है, तो API insufficient_funds प्रकार के साथ 402 उत्तर देता है। जाँचें कि आपका टूल वाकई कुंजी भेजता है: OpenAI शैली Authorization: Bearer <key> है।

404 — गलत पता#

json
{"error": {"message": "Invalid URL (GET /v1/chat/completion)", "type": "invalid_request_error", "param": null, "code": null}}

पाथ में टाइपो है — यहाँ completions के बजाय completion। अन्य सामान्य कारण:

  • बेस URL में /v1 नहीं है। OpenAI-शैली क्लाइंट को https://api.cheaptokens.dev/v1 चाहिए। /v1 के बिना अनुरोध API तक नहीं पहुँचता और आपको JSON के बजाय एक सादा HTML 404 पेज मिलता है।
  • /v1 दो बार। कुछ क्लाइंट स्वयं /v1 जोड़ते हैं; तब बेस URL रूट होना चाहिए, https://api.cheaptokens.dev। Anthropic-शैली क्लाइंट हमेशा रूट पता उपयोग करते हैं।

400 — मॉडल नहीं मिला#

json
{"error": {"message": "Model \"deepseek-v4-flash\" not found. Available: …", "type": "invalid_request_error", "param": "model"}}

मॉडल ID पूरी ID होनी चाहिए, स्लैश से पहले के प्रीफ़िक्स सहित: deepseek-ai/DeepSeek-V4-Flash-0731, deepseek-v4-flash नहीं। ऊपरी या निचला केस मायने नहीं रखता। त्रुटि संदेश उपलब्ध ID की सूची देता है, और पूरी सूची हमेशा GET /v1/models पर होती है।

विकृत अनुरोध बॉडी के लिए भी 400 वापस आता है — उदाहरण के लिए खाली messages ऐरे (messages field is required and must be a non-empty array) या role के बिना संदेश।

413 — अनुरोध बहुत बड़ा#

अनुरोध बॉडी 16 MB तक सीमित है। एजेंट इसे बड़ी फ़ाइलें या लॉग कॉन्टेक्स्ट में डालकर छू सकते हैं। केवल वे हिस्से भेजें जिनकी मॉडल को ज़रूरत है और लंबे टूल आउटपुट को छोटा करें।

429 — बहुत अधिक अनुरोध#

अगर आपको 429 मिलता है, तो धीमे चलें। रिस्पॉन्स में Retry-After हेडर होता है जिसमें प्रतीक्षा के सेकंड की संख्या होती है। आधिकारिक OpenAI SDK स्वचालित रूप से पुनः प्रयास करते हैं (max_retries); अपने कोड में, अगले प्रयास से पहले Retry-After तक प्रतीक्षा करें।

503 — मॉडल अस्थायी रूप से अनुपलब्ध#

कोई मॉडल अस्थायी रूप से अनुपलब्ध हो सकता है; तब API model_unavailable प्रकार के साथ 503 उत्तर देता है, और साइट पर मॉडल कार्ड "temporarily unavailable" दिखाता है। बाद में पुनः प्रयास करें या model फ़ील्ड को किसी अन्य मॉडल पर स्विच करें — कुंजी और पता वही रहते हैं।

लंबी प्रतीक्षाएँ और टाइमआउट#

zai-org/GLM-5.3-Flash जैसे रीज़निंग मॉडल उत्तर देने से पहले सोचते हैं, इसलिए पहला टोकन कुछ समय ले सकता है। streaming का उपयोग करें या क्लाइंट टाइमआउट बढ़ाएँ — उदाहरण के लिए OpenAI SDK में timeout=120।