အမှားများ
Endpoint တိုင်းသည် တူညီသောနည်းလမ်းဖြင့် ပျက်ကွက်သည်။ HTTP status နှင့် JSON envelope တစ်ခု ပါဝင်သည်။
{
"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"
}
}
| Field | အဓိပ္ပာယ် |
|---|---|
type |
အမှား၏ အထွေထွေအမျိုးအစား။ ၎င်းမှ မည်သို့လုပ်ဆောင်ရမည်ကို ဆုံးဖြတ်ပါ။ |
code |
တိကျသောအကြောင်းရင်းဖြစ်ပြီး တည်ငြိမ်ကာ စက်ဖြင့်ဖတ်နိုင်သည်။ Code တိုင်းတွင် အောက်တွင် အပိုင်းတစ်ခုရှိပြီး doc_url က ၎င်းထံသို့ လင့်ခ်ချိတ်ထားသည်။ |
message |
လူဖတ်နိုင်သော ရှင်းလင်းချက်ဖြစ်ပြီး မှတ်တမ်းတင်ရန် သို့မဟုတ် ဆော့ဖ်ဝဲရေးသားသူထံ ပြသရန် ဘေးကင်းသည်။ |
param |
အမှားဖြစ်စေသော ထည့်သွင်းချက် ပါရာမီတာ သို့မဟုတ် header ရှိပါက ၎င်းကို ဖော်ပြသည်။ |
details |
ထည့်သွင်းချက်အမှားများအတွက် တွေ့ရှိသည့် ပြဿနာတိုင်း: [{ "param", "message" }]။ |
request_id |
သက်ဆိုင်သည့် တောင်းဆိုချက်ရှိပါက ၎င်းကို ဖော်ပြသည်။ |
အမှားပြန်ပေးသော ခေါ်ဆိုမှုအတွက် မည်သည့်အရာမျှ ကောက်ခံမည်မဟုတ်ပါ။ လက်ခံပြီးနောက် ပျက်ကွက် သည့် တောင်းဆိုချက်သည် status
failed ကို ဆက်လက်ထားရှိပြီး တောင်းဆိုချက်အရာဝတ္ထုတွင် error: { "type", "code", "message" } ပါဝင်ကာ ငွေပြန်အမ်းမှုကို အလိုအလျောက် ပြုလုပ်ပေးသည်။
အမျိုးအစားများ
| အမျိုးအစား | HTTP status | လုပ်ဆောင်ရန် |
|---|---|---|
invalid_request |
400, 413 သို့မဟုတ် 422 | တောင်းဆိုချက်ကို ပြင်ဆင်ပါ။ တူညီသော ခေါ်ဆိုမှုကို ထပ်မံကြိုးစားလည်း ထပ်မံပျက်ကွက်မည်။ |
authentication_error |
401 | Authorization: Bearer <key> တွင် မှန်ကန်သော ကီးတစ်ခု ပေးပို့ပါ။ |
permission_error |
403 | လိုအပ်သော scope ပါသည့် ကီးကို အသုံးပြုပါ။ |
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 | မော်ဒယ် backend ပျက်ကွက်သည်။ တူညီသော Idempotency-Key ဖြင့် ထပ်မံကြိုးစားနိုင်သည်။ ထပ်မံလုပ်ဆောင်မည်ဖြစ်ပြီး ငွေမကောက်ခံထားပါ။ |
service_unavailable |
503 | API ကို ခေတ္တရပ်ထားခြင်း သို့မဟုတ် အားကိုးရသည့် ဝန်ဆောင်မှုတစ်ခု ပျက်နေခြင်း ဖြစ်သည်။ နောက်မှ ထပ်မံကြိုးစားပါ။ |
internal_error |
500 | ကျွန်ုပ်တို့ဘက်မှ အမှားဖြစ်သည်။ ထပ်မံကြိုးစားပါ။ ဆက်ဖြစ်နေပါက အချိန်နှင့် request_id ဖြင့် support ကို ဆက်သွယ်ပါ။ |
Code များ
invalid_request
ပုံစံမမှန်သော တောင်းဆိုချက်အထွေထွေ (400)။
invalid_json
Body သည် မှန်ကန်သော JSON မဟုတ်ပါ (400)။
invalid_body
Body သည် မှန်ကန်သော JSON ဖြစ်သော်လည်း object မဟုတ်ပါ။ မော်ဒယ်ထည့်သွင်းချက်သည် JSON object ဖြစ်ရမည် (400)။
body_too_large
Body သည် 16 MB ထက် ကြီးသည် (413)။ ဖိုင်ကြီးများကို upload လုပ်ပြီး ၎င်းတို့၏ URL ကို အစားထိုးပေးပို့ပါ (Files ကို ကြည့်ပါ)။
invalid_parameter
Query ပါရာမီတာတွင် မှားယွင်းသောတန်ဖိုး ပါဝင်သည်။ ဥပမာ limit သည် 1 မှ 100 အတွင်း မရှိခြင်း၊ wait သည် နံပါတ်မဟုတ်ခြင်း၊ မသိသော
status သို့မဟုတ် category ဖြစ်ခြင်း၊ သို့မဟုတ် permanent / temporary မဟုတ်သော storage ဖြစ်ခြင်း (400)။ param က ၎င်းကို ဖော်ပြသည်။
invalid_category
GET /openapi.json?category= သည် မရှိသော category တစ်ခုကို အမည်ပေးထားသည် (400)။ GET https://api.doitong.ru/v1/categories က ၎င်းတို့ကို စာရင်းပြုစုသည်။
invalid_cursor
စာရင်းခေါ်ဆိုမှု၏ cursor သည် ဤစာရင်းနှင့် မသက်ဆိုင်ပါ (400)။ Cursor မပါဘဲ အစမှ ပြန်စပါ။
invalid_idempotency_key
Idempotency-Key header သည် ဗလာဖြစ်နေခြင်း သို့မဟုတ် စာလုံး 255 ထက် ပိုခြင်း ဖြစ်သည် (400)။
invalid_arguments
MCP tool ခေါ်ဆိုမှုတွင် ပျောက်ဆုံးနေသော သို့မဟုတ် ပုံစံမမှန်သော argument ပါဝင်သည် (MCP သီးသန့်)။ param က argument ကို ဖော်ပြသည်။
invalid_input
မော်ဒယ်ထည့်သွင်းချက်သည် validation မအောင်မြင်ပါ (422)။ မသိသော ပါရာမီတာ (message က အနီးစပ်ဆုံး မှန်ကန်သောအမည်ကို အကြံပြုသည်)၊
လိုအပ်သော ပါရာမီတာ ပျောက်ဆုံးခြင်း၊ အမျိုးအစားမှားခြင်း၊ ခွင့်ပြုထားသောစာရင်း သို့မဟုတ် အကွာအဝေးပြင်ပ တန်ဖိုးဖြစ်ခြင်း၊ သို့မဟုတ် canonical အမည်နှင့်
native အမည်နှစ်ခုလုံးကို မတူညီသောတန်ဖိုးများဖြင့် ပေးထားခြင်း ဖြစ်နိုင်သည်။ param သည် ပထမဆုံးအမှားရှိသော ပါရာမီတာဖြစ်ပြီး details က ၎င်းတို့အားလုံးကို စာရင်းပြုစုသည်။
မည်သည့်အရာမျှ ကောက်ခံမည်မဟုတ်ပါ။
unsupported_file
ဖိုင်တွင် ကျွန်ုပ်တို့လက်မခံသော အမျိုးအစား ပါဝင်သည် (422)။ ဥပမာ မပံ့ပိုးသော extension ဖြင့် upload လုပ်ထားခြင်း သို့မဟုတ် extension နှင့် မကိုက်ညီသော content_type ဖြစ်ခြင်း။
invalid_webhook_url
webhook_url သည် အများပြည်သူသုံး https:// URL မဟုတ်ပါ (422)။ Private၊ local နှင့် ရိုးရိုး http:// လိပ်စာများကို ငြင်းပယ်သည်။
missing_api_key
Endpoint တွင် API ကီး လိုအပ်သော်လည်း မည်သည့်ကီးမျှ ပေးပို့ထားခြင်းမရှိပါ (401)။
invalid_api_key
ကီးကို မသိခြင်း၊ ရုပ်သိမ်းထားခြင်း သို့မဟုတ် သက်တမ်းကုန်ဆုံးခြင်း ဖြစ်သည် (401)။
insufficient_scope
ဤခေါ်ဆိုမှုလိုအပ်သော scope ကို ကီးတွင် မပါရှိပါ (403)။ ဥပမာ run အတွက် models:run သို့မဟုတ်
တောင်းဆိုချက်များနှင့် လက်ကျန်ကို ဖတ်ရန် models:read ဖြစ်သည်။ Authentication ကို ကြည့်ပါ။
account_disabled
အကောင့်ကို ပိတ်ထားခြင်း သို့မဟုတ် ဆိုင်းငံ့ထားခြင်း ဖြစ်သည် (403)။ ၎င်း၏ကီးများ အလုပ်မလုပ်တော့ပါ။
not_found
Path မရှိပါ (404)။
model_not_found
ဤ id ဖြင့် အများပြည်သူသုံး မော်ဒယ်မရှိပါ (404)။ GET https://api.doitong.ru/v1/models ဖြင့် မော်ဒယ်များကို စာရင်းပြုစုပါ။
request_not_found
ဤ id ဖြင့် သင့်အကောင့်တွင် တောင်းဆိုချက်မရှိပါ (404)။ အခြားအကောင့်များ၏ တောင်းဆိုချက်များကို မည်သည့်အခါမျှ မြင်နိုင်မည်မဟုတ်ပါ။
insufficient_credits
အကောင့်၏ API လက်ကျန် (API ခရက်ဒစ်၊ ၁,၀၀၀ API ခရက်ဒစ် = ၁ $ — Doitong အက်ပ်များ၏ ခရက်ဒစ်မဟုတ်ပါ) သည် ဤခေါ်ဆိုမှု၏ စျေးနှုန်းကို မလုံလောက်ပါ
(402)။ မည်သည့်အရာမျှ မကောက်ခံမီ response ကို ပေးပို့သည်။ အမှားတွင် top_up_url ပါဝင်သည်။ https://doitong.ru/developers/dashboard#balance တွင် ငွေဖြည့်ပြီး ထပ်မံကြိုးစားပါ။
{ "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.ru/developers/dashboard#balance",
"top_up_url": "https://doitong.ru/developers/dashboard#balance", "doc_url": "https://doitong.com/developers/docs/errors#insufficient_credits" } }
budget_exceeded
ခေါ်ဆိုမှုသည် API ကီး၏ ကိုယ်ပိုင် API ခရက်ဒစ် ဘတ်ဂျက်ကို ကျော်လွန်မည် (402)။ ဘတ်ဂျက်ကို ကီးပိုင်ရှင်က သတ်မှတ်ထားသည်။ ၎င်းတို့က တိုးမြှင့်မပေးမချင်း ထပ်မံကြိုးစားခြင်းဖြင့် အဆင်ပြေမည်မဟုတ်ပါ။
conflict
ခေါ်ဆိုမှုသည် အရင်းအမြစ်၏ လက်ရှိအခြေအနေနှင့် ဆန့်ကျင်နေသည် (409)။
idempotency_mismatch
Idempotency-Key ကို မတူညီသော body ဖြင့် အသုံးပြုပြီးသား ဖြစ်သည် (409)။ လုပ်ဆောင်ချက်အသစ်အတွက် ကီးအသစ်ကို အသုံးပြုပါ။
idempotency_in_progress
တူညီသော Idempotency-Key ဖြင့် တောင်းဆိုချက်တစ်ခုကို ယခုပင် ဖန်တီးနေသည် (409)။ ၎င်းကို ရရှိရန် ခဏအကြာတွင် ထပ်မံကြိုးစားပါ။
request_active
တောင်းဆိုချက်သည် queued သို့မဟုတ် running ဖြစ်နေဆဲဖြစ်သောကြောင့် ဖျက်ရန် ဖိုင်များ မရှိသေးပါ (409)။ ပြီးဆုံးသည့်အခါ ဖျက်ပါ။
not_cancelable
တောင်းဆိုချက်သည် succeeded သို့မဟုတ် failed ဖြစ်ပြီးသားဖြစ်၍ ပယ်ဖျက်၍မရပါ (409)။
rate_limited
လက်ရှိ window အတွင်း ကီးက တောင်းဆိုချက်များ အလွန်များစွာ ပြုလုပ်ထားသည် (429)။ X-RateLimit-* နှင့် Retry-After headers များကို ကြည့်ပါ။
too_many_inflight
အကောင့်တွင် queued သို့မဟုတ် running ဖြစ်နေသော တောင်းဆိုချက် 10 ခု ရှိပြီးသားဖြစ်သည် (429)။ ၎င်းတို့ထဲမှ တစ်ခု ပြီးဆုံးသည့်အခါ နောက်တစ်ခုကို စတင်ပါ။
upstream_error
မော်ဒယ် backend က တောင်းဆိုချက်ကို ငြင်းပယ်ခြင်း သို့မဟုတ် ပျက်ကွက်ခြင်း ဖြစ်သည် (run တွင် 502 သို့မဟုတ် တောင်းဆိုချက်တွင် ဤ code ဖြင့် failed)။ API ခရက်ဒစ်များကို
ငွေပြန်အမ်းသည်။ Backend က ထည့်သွင်းချက်ကို ကိုယ်တိုင် ငြင်းပယ်ခဲ့ပါက ခေါ်ဆိုမှုသည် ၎င်း၏ message နှင့်အတူ 422 invalid_input ကို ပြန်ပေးသည်။
upstream_lost
မော်ဒယ် backend သည် တောင်းဆိုချက်ကို မသိတော့သဖြင့် ရလဒ် မည်သည့်အခါမျှ ရရှိမည်မဟုတ်ပါ။ ဤ code ဖြင့် failed အဖြစ်
(type upstream_error) အဆုံးသတ်ပြီး ငွေပြန်အမ်းသည်။ ထပ်မံလုပ်ဆောင်ပါ။
timeout
တောင်းဆိုချက်သည် သတ်မှတ်ထားသော ကန့်သတ်ချိန်ထက် ပိုကြာသွားသောကြောင့် ရပ်တန့်ခဲ့သည် (ပုံများအတွက် 15 မိနစ်၊ ဗီဒီယိုအတွက် 60၊ အခြားအရာများအတွက် 30)။ ၎င်းသည်
ဤ code ဖြင့် failed အဖြစ် အဆုံးသတ်ပြီး ငွေပြန်အမ်းသည်။
service_unavailable
API ကို ယာယီရပ်ထားခြင်း သို့မဟုတ် ဖိုင် upload များကဲ့သို့ အားကိုးရသည့် ဝန်ဆောင်မှု ပျက်နေခြင်း ဖြစ်သည် (503)။ နောက်မှ ထပ်မံကြိုးစားပါ။
internal_error
ကျွန်ုပ်တို့ဘက်တွင် တစ်စုံတစ်ရာ ပျက်ကွက်သွားသည် (500)။ ထပ်မံကြိုးစားပါ။ ဆက်ဖြစ်နေပါက support ကို ဆက်သွယ်ပါ။
charge_failed
အတွင်းပိုင်းပြဿနာကြောင့် အကောင့်မှ ငွေမကောက်ခံနိုင်ပါ (500)။ တောင်းဆိုချက်ကို failed အဖြစ် မှတ်သားထားပြီး မည်သည့်ငွေမျှ
မယူထားပါ။ ထပ်မံကြိုးစားပါ။
pricing_unavailable
မော်ဒယ်၏ စျေးနှုန်းကို သတ်မှတ်ထားခြင်းမရှိသဖြင့် ယခုအချိန်တွင် စျေးနှုန်းဖော်ပြခြင်း သို့မဟုတ် လုပ်ဆောင်ခြင်း မပြုနိုင်ပါ (500)။