# メッシュパーツの完成
> **POST** `/v3/mesh/complete`
セグメント化されたメッシュ パーツを完成させ、欠落している領域を修復します。
## リクエストパラメータ
### リクエストヘッダー
| パラメータ | 種類 | 必須 | デフォルト | 説明 |
| :-: | :-: | :-: | :-: | :-: |
| Content-Type | 文字列 | はい | — | `application/json` |
| Authorization | 文字列 | はい | — | `Bearer {api_key}` |
### リクエストボディ
| パラメータ | 種類 | 必須 | デフォルト | 説明 |
| :-: | :-: | :-: | :-: | :-: |
| input | 文字列 | はい | — | `task_` で始まる `mesh/segment` タスクの task_id |
| model | 文字列 | いいえ | `v1.0-20250506` | 完成モデルバージョン(現在の唯一のバージョン) |
| part_names | 文字列[] | いいえ | すべての部品 | 完成させるパーツ名のリスト。省略した場合はすべての部分が完了します |
| completion_mode | 文字列 | いいえ | `ai_completion` | 完成モード:`ai_completion`(AI 拡散ベースの完成、デフォルト)または `quick_cap`(AI 生成なしの迅速な穴埋め) |
## リクエスト例
### AI 完成(デフォルト)
#### curl
```bash
curl -X POST https://openapi.tripo3d.ai/v3/mesh/complete \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"input": "task_abc123",
"part_names": ["head", "body"]
}'
```
### Python
```python
import requests
url = "https://openapi.tripo3d.ai/v3/mesh/complete"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
}
payload = {
"input": "task_abc123",
"part_names": ["head", "body"]
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
```
### JavaScript
```javascript
const url = "https://openapi.tripo3d.ai/v3/mesh/complete";
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
},
body: JSON.stringify({
input: "task_abc123",
part_names: ["head", "body"]
})
});
const data = await response.json();
console.log(data);
```
### クイックキャップ
#### curl
```bash
curl -X POST https://openapi.tripo3d.ai/v3/mesh/complete \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"input": "task_abc123",
"completion_mode": "quick_cap"
}'
```
#### Python
```python
payload = {
"input": "task_abc123",
"completion_mode": "quick_cap"
}
```
#### JavaScript
```javascript
body: JSON.stringify({
input: "task_abc123",
completion_mode: "quick_cap"
})
```
## 応答
### 成功した応答
```json
{
"code": 0,
"data": {
"task_id": "task_def456"
}
}
```
### 応答フィールド
| パラメータ | 種類 | 説明 |
| :-: | :-: | :-: |
| code | 整数 | ステータスコード。 `0` は成功を示します |
| data.task_id | 文字列 | 完了の進行状況と結果をポーリングするために使用される一意のタスク識別子 |
## エラーコード
| HTTP ステータスコード | エラーコード | 説明 | おすすめ |
| :-: | :-: | :-: | :-: |
| 429 | 2000 | 世代制限を超えました | リクエスト率を下げて後で再試行してください |
| 400 | 2002 | サポートされていないリクエストパラメータです | リクエストボディのパラメータ名と値の範囲を確認してください |
| 400 | 2006 | 入力ソースのタスクタイプが無効です | task_id が `mesh/segment` タスクに対応していることを確認します |
| 400 | 2007 | ソースタスクのステータスが成功ではありません | ソースタスクが完了するまで待ってから完了を開始します |
| 403 | 2010 | クレジットが不十分です | クレジットをリチャージして再試行してください |
メッシュパーツの完成
POST /v3/mesh/complete
セグメント化されたメッシュ パーツを完成させ、欠落している領域を修復します。
リクエストパラメータ
リクエストヘッダー
| パラメータ |
種類 |
必須 |
デフォルト |
説明 |
| Content-Type |
文字列 |
はい |
— |
application/json |
| Authorization |
文字列 |
はい |
— |
Bearer {api_key} |
リクエストボディ
| パラメータ |
種類 |
必須 |
デフォルト |
説明 |
| input |
文字列 |
はい |
— |
task_ で始まる mesh/segment タスクの task_id |
| model |
文字列 |
いいえ |
v1.0-20250506 |
完成モデルバージョン(現在の唯一のバージョン) |
| part_names |
文字列[] |
いいえ |
すべての部品 |
完成させるパーツ名のリスト。省略した場合はすべての部分が完了します |
| completion_mode |
文字列 |
いいえ |
ai_completion |
完成モード:ai_completion(AI 拡散ベースの完成、デフォルト)または quick_cap(AI 生成なしの迅速な穴埋め) |
リクエスト例
AI 完成(デフォルト)
-cmd">curl -X POST https://openapi.tripo3d.ai/v3/mesh/complete \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"input": "task_abc123",
"part_names": ["head", "body"]
}'
import requests
url = "https://openapi.tripo3d.ai/v3/mesh/complete"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
}
payload = {
"input": "task_abc123",
"part_names": ["head", "body"]
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
const url = "https://openapi.tripo3d.ai/v3/mesh/complete";
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
},
body: JSON.stringify({
input: "task_abc123",
part_names: ["head", "body"]
})
});
const data = await response.json();
console.log(data);
クイックキャップ
-cmd">curl -X POST https://openapi.tripo3d.ai/v3/mesh/complete \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"input": "task_abc123",
"completion_mode": "quick_cap"}'
payload = {
"input": "task_abc123",
"completion_mode": "quick_cap"
}
body: JSON.stringify({
input: "task_abc123",
completion_mode: "quick_cap"
})
応答
成功した応答
{
"code": 0,
"data": {
"task_id": "task_def456"}
}
応答フィールド
| パラメータ |
種類 |
説明 |
| code |
整数 |
ステータスコード。 0 は成功を示します |
| data.task_id |
文字列 |
完了の進行状況と結果をポーリングするために使用される一意のタスク識別子 |
エラーコード
| HTTP ステータスコード |
エラーコード |
説明 |
おすすめ |
| 429 |
2000 |
世代制限を超えました |
リクエスト率を下げて後で再試行してください |
| 400 |
2002 |
サポートされていないリクエストパラメータです |
リクエストボディのパラメータ名と値の範囲を確認してください |
| 400 |
2006 |
入力ソースのタスクタイプが無効です |
task_id が mesh/segment タスクに対応していることを確認します |
| 400 |
2007 |
ソースタスクのステータスが成功ではありません |
ソースタスクが完了するまで待ってから完了を開始します |
| 403 |
2010 |
クレジットが不十分です |
クレジットをリチャージして再試行してください |