Fichiers
Les modèles qui acceptent des images, des vidéos ou de l’audio les prennent sous l’une de trois formes. Chaque page de modèle indique ses paramètres de fichier (par exemple image, images, videos, audios).
1. Une URL publique
Toute URL https:// (ou http://) que le modèle peut télécharger :
{ "image": "https://example.com/photos/product.jpg" }
Le fichier doit être accessible sans témoins ni connexion et le rester jusqu’au démarrage de la requête. Chaque page de modèle répertorie les limites de taille et de dimensions de ses paramètres de fichier.
2. Un URI de données
Les petits fichiers peuvent être intégrés directement sous forme d’URI data: de 10 Mo maximum :
{ "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." }
Le Base64 agrandit le corps d’environ un tiers par rapport au fichier; préférez donc les téléversements pour les fichiers volumineux.
3. Un téléversement
Pour les fichiers locaux, demandez une URL de téléversement, utilisez PUT pour y envoyer les octets, puis transmettez le file_url renvoyé au modèle. La création de l’URL de téléversement est gratuite.
curl -X POST "https://api.doitong.ru/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.ru/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": "..."}'
- Téléversements pris en charge :
.jpg,.jpeg,.png,.webp(jusqu’à 15 Mo) et.mp4,.mov,.webm(jusqu’à 200 Mo). L’extension définit le type;content_typedoit lui correspondre. - L’URL de téléversement est valide pendant une heure. Le
file_urlreste valide. - Pour l’audio, utilisez une URL publique ou un URI de données.
Fichiers de sortie
Vous choisissez la durée de conservation des fichiers de sortie :
- Indéfiniment (
permanent, par défaut) : jusqu’à leur suppression, pour 100 crédits API (0,10 $) par Go par mois, facturés une fois par jour à partir du solde API (1 Go = 1024³ octets). - 7 jours (
temporary) : gratuit, puis suppression du stockage.
Définissez la valeur par défaut avec le bouton « Conserver les fichiers pour toujours » du tableau de bord ou avec PATCH /account/storage, puis remplacez-la pour chaque exécution avec ?storage=temporary (ou permanent) :
curl -X PATCH "https://api.doitong.ru/v1/account/storage" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{"mode": "temporary"}'
Chaque requête affiche son propre storage (mode, bytes, expires_at, expired). Le réglage s’applique aux nouvelles requêtes; les fichiers que vous conservez déjà indéfiniment le restent jusqu’à leur suppression avec DELETE /requests/{id}/files (voir Requêtes). Si le solde API ne peut pas payer le stockage, vous recevez un courriel et disposez de 30 jours pour effectuer une recharge avant que les fichiers conservés deviennent temporaires.