Archivos
Los modelos que aceptan imágenes, vídeo o audio los admiten en cualquiera de estas tres formas. Cada página de modelo marca sus parámetros de archivo (por ejemplo, image, images, videos, audios).
1. Una URL pública
Cualquier URL https:// (o http://) que el modelo pueda descargar:
{ "image": "https://example.com/photos/product.jpg" }
El archivo debe estar disponible sin cookies ni inicio de sesión y seguir estando disponible hasta que se inicie la solicitud. Cada página de modelo enumera los límites de tamaño y dimensiones de sus parámetros de archivo.
2. Un URI de datos
Los archivos pequeños pueden incluirse como un URI data: de hasta 10 MB:
{ "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." }
Base64 hace que el cuerpo sea aproximadamente un tercio más grande que el archivo, así que es preferible subir los archivos grandes.
3. Una carga
Para archivos locales, solicita una URL de carga, haz PUT de los bytes allí y pasa el file_url devuelto al modelo. Crear la URL de carga es gratis.
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": "..."}'
- Cargas compatibles:
.jpg,.jpeg,.png,.webp(hasta 15 MB) y.mp4,.mov,.webm(hasta 200 MB). La extensión establece el tipo;content_typedebe coincidir. - La URL de carga es válida durante una hora.
file_urlsigue siendo válida. - Para audio, usa una URL pública o un URI de datos.
Archivos de salida
Tú eliges cuánto tiempo se conservan los archivos de salida:
- Para siempre (
permanent, el predeterminado): hasta que los elimines, por 100 créditos de API (0,10 $) por GB al mes, cobrados una vez al día del saldo de API (1 GB = 1024³ bytes). - 7 días (
temporary): gratis y después se eliminan de nuestro almacenamiento.
Establece el valor predeterminado con el interruptor «Conservar archivos para siempre» del panel de control o con PATCH /account/storage, y sobrescríbelo por ejecución con ?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"}'
Cada solicitud muestra su propio storage (mode, bytes, expires_at, expired). La configuración se aplica a las solicitudes nuevas; los archivos que ya conservas para siempre permanecen hasta que los elimines con DELETE /requests/{id}/files (consulta Solicitudes). Si el saldo de API no puede pagar el almacenamiento, recibes un correo electrónico y dispones de 30 días para hacer una recarga antes de que los archivos conservados pasen a ser temporales.