模型结果 API
获取结果状态和地址
GET https://tiangongtuxue.com/api/v1/models/:modelId/result
Authorization: Bearer <access-token>
成功响应:
{
"status": "succeeded", "phase": "completed", "message": null, "retryable": false,
"task": { "id": "task-id", "attempt": 1, "status": "succeeded", "errorCode": null, "errorMessage": null },
"timestamps": { "createdAt": "2026-10-04T10:00:00.000Z", "finishedAt": "2026-10-04T10:02:00.000Z" },
"url": "https://tiangongtuxue.com/api/v1/models/model-id/assets/visual",
"imageUrl": "https://tiangongtuxue.com/api/v1/models/model-id/assets/preview"
}
| 返回参数 | 类型 | 说明 |
|---|---|---|
status | string | 当前生命周期状态 |
phase | string | 面向 UI 的阶段名称 |
message | string/null | 状态或失败提示 |
retryable | boolean | 失败时是否可以重试 |
task | object/null | 当前任务摘要 |
task.id | string | 任务 ID |
task.attempt | number | 尝试次数 |
task.status | string | 任务状态 |
task.errorCode | string/null | 错误码 |
task.errorMessage | string/null | 错误消息 |
timestamps | object | 生命周期时间戳 |
url | string/null | 三维结果业务地址,仅成功时返回 |
imageUrl | string/null | 预览图业务地址,仅成功时返回 |
未完成时 url 和 imageUrl 为 null;失败时优先读取 retryable,不要仅根据 HTTP 状态决定是否重试。
获取三维结果和预览图
GET /api/v1/models/:modelId/assets/visual
GET /api/v1/models/:modelId/assets/preview
Authorization: Bearer <access-token>
两个接口成功时返回临时文件响应或跳转;接口会校验工程权限。不要保存永久文件地址,建议每次打开页面前重新获取结果地址。
JavaScript
const r = await fetch(`${base}/v1/models/${modelId}/result`, { headers: { Authorization: `Bearer ${accessToken}` } });
const result = await r.json();
if (result.status === 'succeeded') viewer.load(result.url);
Python
r = requests.get(f"{base}/v1/models/{model_id}/result", headers={"Authorization": f"Bearer {access_token}"}, timeout=15)
r.raise_for_status()
result = r.json()
if result["status"] == "succeeded":
visual_url = result["url"]
Java
var request = java.net.http.HttpRequest.newBuilder()
.uri(java.net.URI.create(base + "/v1/models/" + modelId + "/result"))
.header("Authorization", "Bearer " + accessToken).GET().build();
var response = client.send(request, java.net.http.HttpResponse.BodyHandlers.ofString());
curl
curl --fail-with-body "$TUO_API_BASE_URL/v1/models/$MODEL_ID/result" \
-H "Authorization: Bearer $TUO_ACCESS_TOKEN"
curl -L "$TUO_API_BASE_URL/v1/models/$MODEL_ID/assets/visual" \
-H "Authorization: Bearer $TUO_ACCESS_TOKEN" -o model.tgvdata
常见错误:401/403 表示令牌或工程权限无效;404 表示模型或对应资产不存在;409 表示结果尚未就绪。