सामग्री पर जाएँ
API गाइड

त्रुटियाँ

Markdown के रूप में देखें अपडेट किया गया

हर एंडपॉइंट एक ही तरह विफल होता है: एक HTTP स्थिति और एक JSON एनवलप।

JSON
{
  "error": {
    "type": "invalid_request",
    "code": "invalid_input",
    "message": "duration must be one of 5, 10.",
    "param": "duration",
    "details": [ { "param": "duration", "message": "duration must be one of 5, 10." } ],
    "request_id": null,
    "doc_url": "https://doitong.com/developers/docs/errors#invalid_input"
  }
}
फ़ील्ड अर्थ
type त्रुटि की व्यापक श्रेणी। इसी के आधार पर तय करें कि क्या करना है।
code सटीक कारण, स्थिर और मशीन-पठनीय। हर कोड का नीचे एक अनुभाग है; doc_url उससे लिंक करता है।
message मनुष्यों के पढ़ने योग्य विवरण, जिसे लॉग करना या डेवलपर को दिखाना सुरक्षित है।
param त्रुटि वाला इनपुट पैरामीटर या हेडर, यदि कोई हो।
details इनपुट त्रुटियों के लिए मिली हर समस्या: [{ "param", "message" }]।
request_id संबंधित अनुरोध, यदि कोई मौजूद हो।

त्रुटि लौटाने वाले कॉल के लिए कोई शुल्क नहीं लिया जाता। स्वीकार किए जाने के बाद विफल होने वाला अनुरोध failed स्थिति बनाए रखता है, अनुरोध ऑब्जेक्ट में error: { "type", "code", "message" } रखता है और अपने-आप रिफंड हो जाता है।

प्रकार

प्रकार HTTP स्थिति क्या करें
invalid_request 400, 413 या 422 अनुरोध ठीक करें। उसी कॉल को दोबारा भेजने पर फिर विफलता होगी।
authentication_error 401 Authorization: Bearer <key> में मान्य कुंजी भेजें।
permission_error 403 आवश्यक स्कोप वाली कुंजी का उपयोग करें।
not_found 404 मॉडल id या अनुरोध id जाँचें।
insufficient_credits 402 API शेष राशि में टॉप-अप करें (त्रुटि में top_up_url)।
budget_exceeded 402 कुंजी का अपना बजट समाप्त हो गया है। अंतिम उपाय: कुंजी के स्वामी से इसे बढ़ाने को कहें।
conflict 409 संसाधन ऐसी स्थिति में नहीं है जो इस कॉल की अनुमति दे।
rate_limited 429 Retry-After सेकंड प्रतीक्षा करें, फिर दोबारा प्रयास करें।
upstream_error 502 मॉडल बैकएंड विफल हुआ। उसी Idempotency-Key के साथ दोबारा प्रयास करना सुरक्षित है: यह फिर चलेगा; आपसे शुल्क नहीं लिया गया।
service_unavailable 503 API रुका हुआ है या कोई निर्भरता उपलब्ध नहीं है। बाद में दोबारा प्रयास करें।
internal_error 500 हमारी बग। दोबारा प्रयास करें; समस्या बनी रहने पर समय और request_id के साथ सहायता से संपर्क करें।

कोड

invalid_request

सामान्य रूप से गलत अनुरोध (400)।

invalid_json

बॉडी मान्य JSON नहीं है (400)।

invalid_body

बॉडी मान्य JSON है, लेकिन ऑब्जेक्ट नहीं है; मॉडल इनपुट JSON ऑब्जेक्ट होना चाहिए (400)।

body_too_large

बॉडी 16 MB से बड़ी है (413)। बड़ी फ़ाइल अपलोड करें और उसके बजाय उसका URL भेजें (फ़ाइलें देखें)।

invalid_parameter

किसी क्वेरी पैरामीटर का मान गलत है, जैसे limit का 1 से 100 के बाहर होना, wait का संख्या न होना, अज्ञात status या category, या storage का permanent / temporary के अलावा कुछ होना (400)। param उसका नाम बताता है।

invalid_category

GET /openapi.json?category= में ऐसी श्रेणी दी गई है जो मौजूद नहीं है (400)। GET https://api.doitong.com/v1/categories उन्हें सूचीबद्ध करता है।

invalid_cursor

सूची कॉल का cursor इस सूची से संबंधित नहीं है (400)। बिना कर्सर के फिर से शुरू करें।

invalid_idempotency_key

Idempotency-Key हेडर खाली है या 255 वर्णों से लंबा है (400)।

invalid_arguments

MCP टूल कॉल में कोई आर्ग्युमेंट अनुपस्थित या गलत रूप में है (केवल MCP)। param आर्ग्युमेंट का नाम बताता है।

invalid_input

मॉडल इनपुट सत्यापन में पास नहीं होता (422): अज्ञात पैरामीटर (संदेश निकटतम मान्य नाम सुझाता है), आवश्यक पैरामीटर अनुपस्थित, गलत प्रकार, अनुमत सूची या सीमा से बाहर का मान, या अलग-अलग मानों के साथ कैनोनिकल और नेटिव नाम दोनों दिए गए हैं। param पहली गलत पैरामीटर है और details उन सभी की सूची देता है। कोई शुल्क नहीं लिया जाता।

unsupported_file

किसी फ़ाइल का प्रकार स्वीकार्य नहीं है (422), जैसे असमर्थित एक्सटेंशन वाला अपलोड, या ऐसा content_type जो एक्सटेंशन से मेल नहीं खाता।

invalid_webhook_url

webhook_url सार्वजनिक https:// URL नहीं है (422)। निजी, स्थानीय और सादे http:// पते अस्वीकार किए जाते हैं।

missing_api_key

एंडपॉइंट को API कुंजी चाहिए, लेकिन कोई भेजी नहीं गई (401)।

invalid_api_key

कुंजी अज्ञात, रद्द या समाप्त हो चुकी है (401)।

insufficient_scope

कुंजी में इस कॉल के लिए आवश्यक स्कोप नहीं है (403), जैसे रन के लिए models:run, या अनुरोध और शेष राशि पढ़ने के लिए models:read। प्रमाणीकरण देखें।

account_disabled

खाता बंद या निलंबित है (403)। इसकी कुंजियाँ अब काम नहीं करतीं।

not_found

पथ मौजूद नहीं है (404)।

model_not_found

इस id वाला कोई सार्वजनिक मॉडल नहीं है (404)। GET https://api.doitong.com/v1/models से मॉडल सूचीबद्ध करें।

request_not_found

आपके खाते में इस id वाला कोई अनुरोध मौजूद नहीं है (404)। अन्य खातों के अनुरोध कभी दिखाई नहीं देते।

insufficient_credits

खाते की API शेष राशि (API क्रेडिट, 1,000 API क्रेडिट = $1 — Doitong ऐप्स के क्रेडिट नहीं) इस कॉल की कीमत को कवर नहीं करती (402)। कुछ भी चार्ज किए जाने से पहले प्रतिक्रिया भेजी जाती है। त्रुटि में top_up_url होता है; https://doitong.com/developers/dashboard#balance पर राशि जोड़ें और दोबारा प्रयास करें।

JSON
{ "error": { "type": "insufficient_credits", "code": "insufficient_credits",
             "message": "This request costs 560 API credits ($0.56); the API balance is 120 API credits ($0.12). Top up at https://doitong.com/developers/dashboard#balance",
             "top_up_url": "https://doitong.com/developers/dashboard#balance", "doc_url": "https://doitong.com/developers/docs/errors#insufficient_credits" } }

budget_exceeded

कॉल API कुंजी के अपने API क्रेडिट बजट से अधिक हो जाएगी (402)। बजट कुंजी का स्वामी निर्धारित करता है; जब तक वह इसे बढ़ाता नहीं, दोबारा प्रयास करने से मदद नहीं मिलेगी।

conflict

कॉल संसाधन की वर्तमान स्थिति से टकराती है (409)।

idempotency_mismatch

Idempotency-Key का उपयोग पहले अलग बॉडी के साथ किया जा चुका है (409)। नए ऑपरेशन के लिए नई कुंजी का उपयोग करें।

idempotency_in_progress

उसी Idempotency-Key वाला अनुरोध अभी बनाया जा रहा है (409)। इसे प्राप्त करने के लिए कुछ क्षण बाद दोबारा प्रयास करें।

request_active

अनुरोध अभी queued या running है, इसलिए अभी हटाने के लिए इसकी कोई फ़ाइल नहीं है (409)। इसके पूरा होने के बाद उन्हें हटाएँ।

not_cancelable

अनुरोध पहले ही succeeded या failed है और रद्द नहीं किया जा सकता (409)।

rate_limited

वर्तमान विंडो में कुंजी ने बहुत अधिक अनुरोध किए (429)। X-RateLimit-* और Retry-After हेडर देखें।

too_many_inflight

खाते में पहले से 10 अनुरोध queued या running हैं (429)। उनमें से एक के पूरा होने पर अगला शुरू करें।

upstream_error

मॉडल बैकएंड ने अनुरोध अस्वीकार किया या विफल हुआ (रन पर 502, या अनुरोध पर इस कोड के साथ failed)। API क्रेडिट रिफंड किए जाते हैं। यदि बैकएंड ने स्वयं इनपुट अस्वीकार किया, तो कॉल इसके संदेश के साथ 422 invalid_input लौटाती है।

upstream_lost

मॉडल बैकएंड को अब अनुरोध का पता नहीं है, इसलिए परिणाम कभी नहीं आएगा। यह इस कोड के साथ failed (type upstream_error) पर समाप्त होता है और रिफंड किया जाता है। इसे फिर से चलाएँ।

timeout

अनुरोध अपनी सीमा से अधिक समय तक चला (इमेज के लिए 15 मिनट, वीडियो के लिए 60, अन्य के लिए 30) और रोक दिया गया। यह इस कोड के साथ failed पर समाप्त होता है और रिफंड किया जाता है।

service_unavailable

API अस्थायी रूप से रुका हुआ है, या फ़ाइल अपलोड जैसी कोई निर्भरता उपलब्ध नहीं है (503)। बाद में दोबारा प्रयास करें।

internal_error

हमारी ओर से कुछ गड़बड़ हुई (500)। दोबारा प्रयास करें; समस्या बनी रहने पर सहायता से संपर्क करें।

charge_failed

आंतरिक समस्या के कारण खाते से शुल्क नहीं लिया जा सका (500)। अनुरोध को failed चिह्नित किया जाता है; कुछ भी नहीं काटा गया। दोबारा प्रयास करें।

pricing_unavailable

मॉडल की कीमत कॉन्फ़िगर नहीं है, इसलिए अभी उसका कोटेशन या रन नहीं किया जा सकता (500)।