Mga File
Tumatanggap ang mga modelong gumagamit ng larawan, video o audio ng alinman sa tatlong anyo. Tinutukoy ng page ng bawat modelo ang mga file parameter nito (halimbawa image, images, videos, audios).
1. Pampublikong URL
Anumang https:// (o http://) URL na mada-download ng modelo:
{ "image": "https://example.com/photos/product.jpg" }
Dapat maabot ang file nang walang cookies o login, at dapat itong manatiling maabot hanggang magsimula ang kahilingan. Inililista ng page ng bawat modelo ang mga limitasyon sa laki at dimensyon ng mga file parameter nito.
2. Data URI
Maaaring ilagay inline ang maliliit na file bilang data: URI na hanggang 10 MB:
{ "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." }
Pinapalaki ng Base64 ang body nang humigit-kumulang isang-katlo kumpara sa file, kaya mas mainam ang mga upload para sa malalaki.
3. Upload
Para sa mga lokal na file, humingi ng upload URL, i-PUT ang bytes doon, at ipasa sa modelo ang ibinalik na file_url. Libre ang paggawa ng upload 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}'
{
"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
}
curl -X PUT "<upload_url>" -H "Content-Type: image/jpeg" --data-binary @product.jpg
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": "..."}'
- Mga suportadong upload:
.jpg,.jpeg,.png,.webp(hanggang 15 MB) at.mp4,.mov,.webm(hanggang 200 MB). Itinatakda ng extension ang type; dapat tumugma rito angcontent_type. - May bisa ang upload URL nang isang oras. Mananatiling may bisa ang
file_url. - Para sa audio, gumamit ng pampublikong URL o data URI.
Mga output file
Ikaw ang pumipili kung gaano katagal pananatilihin ang mga output file:
- Walang hanggan (
permanent, ang default): hanggang i-delete mo ang mga ito, sa halagang 100 kredito ng API ($0.10) bawat GB bawat buwan, sinisingil isang beses bawat araw mula sa balanse ng API (1 GB = 1024³ bytes). - 7 araw (
temporary): libre, saka dine-delete mula sa aming storage.
Itakda ang default gamit ang switch na "Itago ang mga file habambuhay" sa dashboard o gamit ang PATCH /account/storage, at i-override bawat run gamit ang ?storage=temporary (o 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"}'
Ipinapakita ng bawat kahilingan ang sarili nitong storage (mode, bytes, expires_at, expired). Nalalapat ang setting sa mga bagong kahilingan; mananatili ang mga file na pinananatili mo nang walang hanggan hanggang i-delete mo ang mga ito gamit ang DELETE /requests/{id}/files (tingnan ang Mga Kahilingan). Kung hindi kayang bayaran ng balanse ng API ang storage, makakatanggap ka ng email at 30 araw para magdagdag ng balanse bago maging temporary ang mga file na pinananatili.