Ficheiros
Os modelos que aceitam imagens, vídeo ou áudio permitem-nos em qualquer uma de três formas. Cada página de modelo assinala os seus parâmetros de ficheiro (por exemplo, image, images, videos, audios).
1. Um URL público
Qualquer URL https:// (ou http://) que o modelo consiga transferir:
{ "image": "https://example.com/photos/product.jpg" }
O ficheiro tem de estar acessível sem cookies ou início de sessão e permanecer acessível até o pedido ter começado. Cada página de modelo lista os limites de tamanho e dimensões dos seus parâmetros de ficheiro.
2. Um URI de dados
Os ficheiros pequenos podem ser incluídos diretamente como um URI data: de até 10 MB:
{ "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." }
O Base64 torna o corpo cerca de um terço maior do que o ficheiro, por isso prefira carregamentos para ficheiros grandes.
3. Um carregamento
Para ficheiros locais, peça um URL de carregamento, faça PUT dos bytes para esse URL e passe o file_url devolvido ao modelo. A criação do URL de carregamento é gratuita.
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": "..."}'
- Carregamentos suportados:
.jpg,.jpeg,.png,.webp(até 15 MB) e.mp4,.mov,.webm(até 200 MB). A extensão define o tipo;content_typetem de corresponder-lhe. - O URL de carregamento é válido durante uma hora. O
file_urlpermanece válido. - Para áudio, use um URL público ou um URI de dados.
Ficheiros de saída
Escolhe durante quanto tempo os ficheiros de saída são mantidos:
- Para sempre (
permanent, a predefinição): até os eliminar, por 100 créditos de API (0,10 $) por GB por mês, cobrados uma vez por dia ao saldo de API (1 GB = 1024³ bytes). - 7 dias (
temporary): gratuito, sendo depois eliminado do nosso armazenamento.
Defina a predefinição com o interruptor "Guardar ficheiros para sempre" no dashboard ou com PATCH /account/storage, e substitua-a por execução com ?storage=temporary (ou 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 pedido mostra o seu próprio storage (mode, bytes, expires_at, expired). A definição aplica-se aos novos pedidos; os ficheiros que já mantém para sempre permanecem até os eliminar com DELETE /requests/{id}/files (consulte Pedidos). Se o saldo de API não conseguir pagar o armazenamento, recebe um email e dispõe de 30 dias para fazer um carregamento antes de os ficheiros mantidos passarem a temporários.