ファイル
画像、動画、音声を受け付けるモデルは、3つの形式のいずれでも入力できます。各モデルページには、ファイルの
パラメータ(例: image、images、videos、audios)が記載されています。
1. 公開URL
モデルがダウンロードできる任意の https://(または http://)URL:
{ "image": "https://example.com/photos/product.jpg" }
ファイルにはCookieやログインなしでアクセスでき、リクエストが開始されるまでアクセス可能な状態を維持する必要があります。各モデル ページには、ファイルのパラメータのサイズおよび寸法の制限が記載されています。
2. data URI
小さなファイルは、最大10 MBの data: URIとしてインラインで指定できます:
{ "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." }
Base64を使用すると本文がファイルより約3分の1大きくなるため、大きなファイルにはアップロードを使用してください。
3. アップロード
ローカルのファイルの場合は、アップロードURLを取得し、そこにバイト列を PUT して、返された file_url をモデルに渡します。
アップロード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": "..."}'
- 対応するアップロード:
.jpg、.jpeg、.png、.webp(最大15 MB)、.mp4、.mov、.webm(最大200 MB)。 拡張子によって種類が設定されるため、content_typeは拡張子と一致している必要があります。 - アップロードURLの有効期限は1時間です。
file_urlは有効なままです。 - 音声には、公開URLまたはdata URIを使用してください。
出力ファイル
出力ファイルを保持する期間を選択できます:
- 永久(
permanent、デフォルト): 削除するまで、1 GBあたり月 100 APIクレジット ($0.10)。料金はAPIの残高から1日1回請求されます(1 GB = 1024³ bytes)。 - 7日間(
temporary): 無料。その後、当社のストレージから削除されます。
ダッシュボードの「ファイルを永久保存」スイッチまたは
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の残高でストレージ料金を支払えない場合は、メールが届き、保持中のファイルが一時的なものになる前に 30日間チャージする猶予があります。