مواد پر جائیں
API گائیڈ

فائلیں

Markdown کے طور پر دیکھیں اپ ڈیٹ کیا گیا

وہ ماڈلز جو تصاویر، ویڈیو یا آڈیو لیتے ہیں، انہیں تین میں سے کسی بھی شکل میں قبول کرتے ہیں۔ ہر ماڈل صفحہ اپنے فائل پیرامیٹرز (مثلاً image، images، videos، audios) کی نشان دہی کرتا ہے۔

1. عوامی URL

کوئی بھی https:// (یا http://) URL جسے ماڈل ڈاؤن لوڈ کر سکے:

JSON
{ "image": "https://example.com/photos/product.jpg" }

فائل cookies یا login کے بغیر قابل رسائی ہونی چاہیے، اور درخواست شروع ہونے تک قابل رسائی رہنی چاہیے۔ ہر ماڈل صفحہ اپنے فائل پیرامیٹرز کے سائز اور dimension کی حدود درج کرتا ہے۔

2. data URI

چھوٹی فائلیں 10 MB تک کی data: URI کے طور پر inline بھیجی جا سکتی ہیں:

JSON
{ "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." }

Base64 باڈی کو فائل سے تقریباً ایک تہائی بڑا کر دیتا ہے، اس لیے بڑی فائلوں کے لیے اپ لوڈز کو ترجیح دیں۔

3. اپ لوڈ

مقامی فائلوں کے لیے اپ لوڈ URL طلب کریں، بائٹس وہاں PUT کریں، اور واپس ملنے والے file_url کو ماڈل کو دیں۔ اپ لوڈ URL بنانا مفت ہے۔

1 · اپ لوڈ URL حاصل کریں
curl -X POST "https://api.doitong.com/v1/files" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename": "product.jpg", "content_type": "image/jpeg", "size": 482113}'
201 Created · اپ لوڈ
{
  "object": "upload",
  "upload_url": "https://…signed upload URL…",
  "file_url": "https://content.doitong.com/…/product.jpg",
  "method": "PUT",
  "headers": { "Content-Type": "image/jpeg" },
  "content_type": "image/jpeg",
  "expires_in": 3600,
  "max_bytes": 15728640
}
2 · بالکل واپس ملنے والے ہیڈرز کے ساتھ بائٹس اپ لوڈ کریں
curl -X PUT "<upload_url>" -H "Content-Type: image/jpeg" --data-binary @product.jpg
3 · file_url کو ماڈل کے ان پٹ کے طور پر استعمال کریں
curl -X POST "https://api.doitong.com/v1/run/{model_id}?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"image": "https://content.doitong.com/…/product.jpg", "prompt": "..."}'
  • معاون اپ لوڈز: .jpg، .jpeg، .png، .webp (15 MB تک) اور .mp4، .mov، .webm (200 MB تک)۔ ایکسٹینشن قسم متعین کرتی ہے؛ content_type کا اس سے مطابقت رکھنا ضروری ہے۔
  • اپ لوڈ URL ایک گھنٹے تک درست رہتا ہے۔ file_url درست رہتا ہے۔
  • آڈیو کے لیے عوامی URL یا data URI استعمال کریں۔

آؤٹ پٹ فائلیں

آپ منتخب کرتے ہیں کہ آؤٹ پٹ فائلیں کتنی دیر رکھی جائیں:

  • ہمیشہ کے لیے (permanent، ڈیفالٹ): جب تک آپ انہیں حذف نہ کریں، فی GB فی ماہ 100 API کریڈٹس (⁨$0.10⁩)، روزانہ ایک بار API بیلنس سے چارج کیے جائیں گے (1 GB = 1024³ bytes)۔
  • 7 دن (temporary): مفت، پھر ہمارے اسٹوریج سے حذف کر دی جائیں گی۔

dashboard میں "فائلیں ہمیشہ کے لیے محفوظ رکھیں" سوئچ یا PATCH /account/storage کے ذریعے ڈیفالٹ مقرر کریں، اور فی رَن اسے ?storage=temporary (یا permanent) سے بدلیں:

ٹرمینل
curl -X PATCH "https://api.doitong.com/v1/account/storage" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"mode": "temporary"}'

ہر درخواست اپنی storage (mode، bytes، expires_at، expired) دکھاتی ہے۔ یہ ترتیب نئی درخواستوں پر لاگو ہوتی ہے؛ جو فائلیں آپ پہلے سے ہمیشہ کے لیے رکھتے ہیں وہ اس وقت تک رہتی ہیں جب تک آپ انہیں DELETE /requests/{id}/files سے حذف نہ کریں (دیکھیں درخواستیں)۔ اگر API بیلنس اسٹوریج کی ادائیگی نہ کر سکے تو آپ کو ای میل ملے گی اور رکھی گئی فائلوں کے temporary بننے سے پہلے ٹاپ اَپ کے لیے 30 دن ملیں گے۔