# ファイルのアップロード (大きなファイル)
署名付きアップロード URL を作成すると、HTTP `PUT` を使用して大きなファイルをストレージに直接アップロードできるようになります。
マルチパートのアップロードの効率が低い場合は、大規模な 3D モデルまたは画像にこのフローを使用します。小さいファイルの場合は、標準のファイル アップロード エンドポイントも利用できます。
## エンドポイント
```http
POST /v3/files/presign
```
## アップロードの流れ
1. ファイル `format` を使用して `POST /v3/files/presign` を呼び出します。
2. HTTP `PUT` を使用して、ファイル バイトを `presigned_url` にアップロードします。
3. 返された `file_token` は、モデルのインポート、リトポロジ、モデルの変換、イメージから 3D モデルなど、後の API 呼び出しで `input` として使用します。
## リクエストボディ
| フィールド | 種類 | 必須 | 説明 |
| --- | --- | --- | --- |
| `format` | 文字列 | 必須 | 先頭にドットのないファイル拡張子 (`glb`、`fbx`、`png`、`webp` など)。 |
## 応答フィールド
| フィールド | 種類 | 説明 |
| --- | --- | --- |
| `presigned_url` | 文字列 | 一時的 HTTP `PUT` URL、30 分間有効。 |
| `file_token` | 文字列 | アップロード完了後に使用するファイル参照トークン。 |
| `expires_in` | 整数 | URL 有効期間 (秒)。 `1800`に固定されています。 |
## curl の例
```bash
curl -s -X POST https://openapi.tripo3d.ai/v3/files/presign \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"format":"glb"}'
curl -X PUT \
-H "Content-Type: application/octet-stream" \
-T model.glb \
"<presigned_url>"
```
Tripo `Authorization` ヘッダーをストレージ `PUT` リクエストに追加しないでください。
ファイルのアップロード (大きなファイル)
署名付きアップロード URL を作成すると、HTTP PUT を使用して大きなファイルをストレージに直接アップロードできるようになります。
マルチパートのアップロードの効率が低い場合は、大規模な 3D モデルまたは画像にこのフローを使用します。小さいファイルの場合は、標準のファイル アップロード エンドポイントも利用できます。
エンドポイント
アップロードの流れ
- ファイル
format を使用して POST /v3/files/presign を呼び出します。
- HTTP
PUT を使用して、ファイル バイトを presigned_url にアップロードします。
- 返された
file_token は、モデルのインポート、リトポロジ、モデルの変換、イメージから 3D モデルなど、後の API 呼び出しで input として使用します。
リクエストボディ
| フィールド |
種類 |
必須 |
説明 |
format |
文字列 |
必須 |
先頭にドットのないファイル拡張子 (glb、fbx、png、webp など)。 |
応答フィールド
| フィールド |
種類 |
説明 |
presigned_url |
文字列 |
一時的 HTTP PUT URL、30 分間有効。 |
file_token |
文字列 |
アップロード完了後に使用するファイル参照トークン。 |
expires_in |
整数 |
URL 有効期間 (秒)。 1800に固定されています。 |
curl の例
curl -s -X POST https://openapi.tripo3d.ai/v3/files/presign \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"format":"glb"}'
curl -X PUT \
-H "Content-Type: application/octet-stream" \
-T model.glb \
"<presigned_url>"
Tripo Authorization ヘッダーをストレージ PUT リクエストに追加しないでください。