அங்கீகாரம்
மாதிரியை இயக்கும் அல்லது உங்கள் கோரிக்கைகளைப் படிக்கும் ஒவ்வொரு அழைப்புக்கும் API விசை தேவை. பட்டியல் (GET /models,
GET /categories), POST /quote மற்றும் OpenAPI ஆவணம் பொதுவில் உள்ளன.
API விசைகள்
https://doitong.com/developers/dashboard#keys இல் விசைகளை உருவாக்கி திரும்பப்பெறலாம். ஒரு விசை doitong_ ஐத் தொடர்ந்து வரும் 64 ஹெக்ஸாடெசிமல் எழுத்துகளாக இருக்கும்; அதை உருவாக்கும்போது ஒருமுறை மட்டுமே காட்டப்படும். அதை
Authorization தலைப்பில் அனுப்பவும்:
curl https://api.doitong.ru/v1/account -H "Authorization: Bearer $DOITONG_API_KEY"
X-API-Key: <key> என்பதும் செயல்படும்.
விசையில்லாத கோரிக்கைக்கு missing_api_key குறியீட்டுடன் 401 கிடைக்கும்; தெரியாத, திரும்பப்பெறப்பட்ட அல்லது காலாவதியான விசைக்கும் 401 கிடைக்கும்.
வரம்புகள்
ஒவ்வொரு விசையும் வரம்புகளைக் கொண்டிருக்கும். மாதிரி API இவற்றைச் சரிபார்க்கிறது:
| செயல் | தேவையான வரம்பு |
|---|---|
| மாதிரியை இயக்குதல், கோரிக்கையை ரத்துசெய்தல், கோரிக்கையின் கோப்புகளை நீக்குதல், சேமிப்பக அமைப்பை மாற்றுதல் | models:run (பழைய images:create அல்லது videos:create கொண்ட விசைகளும் செயல்படும்) |
| பதிவேற்ற URL உருவாக்குதல் | models:run அல்லது media:upload |
| கோரிக்கைகள், கணக்கைப் படித்தல் | models:read (மாதிரிகளை இயக்கக்கூடிய விசையால் படிக்கவும் முடியும்) |
புதிய விசைகள் இயல்புநிலையாக models:read மற்றும் models:run ஆகியவற்றைப் பெறும். சரியான வரம்பில்லாத அழைப்புக்கு insufficient_scope குறியீட்டுடன்
403 கிடைக்கும்.
கிரெடிட் பட்ஜெட்டுகள்
ஒரு விசைக்கு கணக்கு உரிமையாளரால் அமைக்கப்பட்ட, API கிரெடிட்களில் (1,000 API கிரெடிட்கள் = $1) தனிப்பட்ட பட்ஜெட் இருக்கலாம்: மொத்த பட்ஜெட், தினசரி பட்ஜெட் (கடந்த 24 மணிநேரம்) அல்லது இரண்டும். இயக்கத்திற்குக் கட்டணம் விதிக்கப்படுவதற்கு முன், இந்த API மூலம் அந்த விசை ஏற்கனவே செலவிட்ட தொகைக்கு எதிராகச் செலவு சரிபார்க்கப்படும் (பணத்தைத் திருப்பியளித்தலைக் கணக்கில் கொண்டு). வரம்பை மீறும் இயக்கம் மறுக்கப்பட்டு 402 budget_exceeded கிடைக்கும்; எந்தக் கட்டணமும் விதிக்கப்படாது.
பட்ஜெட் இல்லாத விசை API இருப்பு வரை செலவிடலாம். தனியாக, API இருப்பால் ஈடுகட்ட முடியாத இயக்கத்திற்கு top_up_url உடன் 402 insufficient_credits கிடைக்கும்.
GET https://api.doitong.ru/v1/account API இருப்பையும் விசையின் மீதமுள்ள பட்ஜெட்டையும் (இரண்டும் API கிரெடிட்களில்) காட்டும்:
{
"object": "account",
"credits": 125000,
"balance": { "credits": 125000, "usd": "125.00" },
"top_up_url": "https://doitong.ru/developers/dashboard#balance",
"key": {
"name": "Production server",
"prefix": "doitong_3fa9c1e...",
"scopes": ["models:read", "models:run"],
"budget_remaining": 50000,
"rate_limit": 3600,
"rate_limit_remaining": 3571
},
"webhook_signing_secret": "whsec_..."
}
விசைக்கு சொந்தமாக பட்ஜெட் இல்லாதபோது budget_remaining என்பது null ஆக இருக்கும்.
விகித வரம்புகள்
வரம்பு வேறுவிதமாக அமைக்கப்படாதவரை, ஒவ்வொரு விசையும் ஒரு மணிநேரத்திற்கு 3600 கோரிக்கைகளைச் செய்யலாம். ஒவ்வொரு அங்கீகரிக்கப்பட்ட பதிலும் தற்போதைய நிலையை உள்ளடக்கும்:
| தலைப்பு | பொருள் |
|---|---|
X-RateLimit-Limit |
தற்போதைய காலவரம்பில் அனுமதிக்கப்படும் கோரிக்கைகள் |
X-RateLimit-Remaining |
தற்போதைய காலவரம்பில் மீதமுள்ள கோரிக்கைகள் |
X-RateLimit-Reset |
காலவரம்பு மீட்டமைக்கப்படும் Unix நேரம் |
வரம்பை மீறினால், Retry-After தலைப்புடன் 429 கிடைக்கும் (வினாடிகள்). ?wait= உடன் நீண்ட polling ஒவ்வொரு அழைப்பையும் ஒரு கோரிக்கையாகக் கணக்கிடும்; எனவே வேகமாக polling செய்வதைவிடக் காத்திருப்பது குறைந்த செலவாகும்.
ஒவ்வொரு கணக்கிற்கும் ஒரே நேரத்தில் செயல்பாட்டிலுள்ள (queued அல்லது running) கோரிக்கைகளுக்கு 10 என்ற வரம்பும் உள்ளது. மேலும் ஒன்றைத் தொடங்கினால் 429 too_many_inflight கிடைக்கும்; ஒன்று முடிந்த பிறகு அதை மீண்டும் தொடங்குங்கள்.