Meshy Rigging Multi Animation
Tích hợp
meshy/rigging/multi-animation
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/meshy/rigging/multi-animation?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/meshy/rigging/multi-animation?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92,
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/meshy/rigging/multi-animation", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/vi/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.ru/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "meshy/rigging/multi-animation",
"input": {
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
}
}
Gọi mô hình Meshy Rigging Multi Animation (meshy/rigging/multi-animation) qua Doitong API. Tài liệu cho tác nhân: https://doitong.com/vi/developers/models/meshy/rigging/multi-animation.md
POST https://api.doitong.ru/v1/run/meshy/rigging/multi-animation?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
}
Nếu trạng thái phản hồi là "queued" hoặc "running", hãy thăm dò GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20 cho đến khi trạng thái là "succeeded"; tệp nằm trong outputs[].url. POST https://api.doitong.ru/v1/quote/meshy/rigging/multi-animation với cùng nội dung sẽ trả về giá chính xác trước khi chạy.
Các tệp như ví dụ: 0,44 $ 440 tín dụng API · ≈ 46,40 ₽ tệp của bạn được đo trước khi chạy Chạy trên trang này
Khóa API mới của bạn. Khóa này chỉ hiển thị lúc này và đã được chèn vào mã cũng như trường khóa API bên dưới. Hãy giữ bí mật: không bao giờ đưa khóa này vào mã chạy trong trình duyệt.
Kết quả đầu tiên của bạn sẽ xuất hiện ở đây
Tạo một yêu cầu bên dưới và chạy bằng khóa API của bạn. Đầu ra được sao chép vào bộ lưu trữ của chúng tôi, giữ vĩnh viễn hoặc 7 ngày miễn phí.
Tạo một yêu cầu
Các điều khiển được tạo từ lược đồ mô hình. Mã và giá sẽ cập nhật khi bạn thay đổi chúng.
/run/meshy/rigging/multi-animation?wait=20
báo giá → 0,44 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/meshy/rigging/multi-animation?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/meshy/rigging/multi-animation?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92,
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/meshy/rigging/multi-animation", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "meshy/rigging/multi-animation",
"input": {
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
},
"wait_seconds": 20
}
}
}
Chạy yêu cầu này
Key của bạn vẫn nằm trong trình duyệt này: key chỉ được gửi đến Doitong API và chỉ được lưu trong localStorage nếu bạn chọn Ghi nhớ. Nhận khóa API
Giới thiệu về Meshy Rigging Multi Animation
Gắn khung xương cho GLB hình người từ `model_url` và tạo một đoạn hoạt ảnh cho mỗi ID trong `animation_action_ids`, tất cả trên cùng một bộ khung xương. Các đoạn được trả về theo thứ tự yêu cầu trong mảng `animations`, cùng với các tệp GLB và FBX đã gắn khung xương cũng như hoạt ảnh đi bộ và chạy cơ bản. Cần ít nhất một ID. `height_meters` đặt chiều cao xấp xỉ của nhân vật.
Tham số
model_urlbắt buộc
height_meterstùy chọn
animation_action_idsbắt buộc
enable_safety_checkertùy chọn
Đầu ra
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "meshy/rigging/multi-animation",
"status": "succeeded",
"created_at": "2026-10-20T12:00:00Z",
"started_at": "2026-10-20T12:00:02Z",
"completed_at": "2026-10-20T12:00:09Z",
"queue_position": null,
"cost": {
"credits": 440,
"usd": "0.44",
"charged": 440,
"refunded": 0
},
"input": {
"model_url": "https://example.com/your-file.glb",
"animation_action_ids": [
36,
92
]
},
"output": {
"rigged_character_glb": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"rigged_character_fbx": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"basic_animations": {
"walking_glb": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"walking_fbx": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"walking_armature_glb": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"running_glb": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"running_fbx": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"running_armature_glb": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
}
},
"animations": [
{
"action_id": 1,
"animation_glb": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
},
"animation_fbx": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
}
}
],
"rig_task_id": "string"
},
"outputs": [
{
"type": "file",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_size": 1843200,
"stored": true
}
],
"error": null,
"metrics": {
"inference_seconds": 6.8
},
"urls": {
"self": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Các trường đầu ra
- rigged_character_glb
- object {url, content_type, file_name, file_size} | nullNhân vật định dạng GLB đã được gắn xương.
- rigged_character_fbx
- object {url, content_type, file_name, file_size} | nullNhân vật định dạng FBX đã được gắn xương.
- basic_animations
- object {walking_glb, walking_fbx, walking_armature_glb, running_glb, running_fbx, running_armature_glb} | nullHoạt ảnh đi bộ và chạy cơ bản được cung cấp cùng quá trình gắn xương.
- animations
- array of object {action_id, animation_glb, animation_fbx}Các kết quả hoạt ảnh theo thứ tự, tương ứng với các ID hành động trong yêu cầu. Mỗi ID được yêu cầu có một mục chứa clip được tạo bằng bộ xương.
- rig_task_id
- string | nullMã định danh tác vụ gắn xương trong Meshy.
Các biến thể Meshy Rigging khác
Thêm mô hình: 3D
Dành cho tác nhân AI: trang này ở dạng Markdown tại https://doitong.com/vi/developers/models/meshy/rigging/multi-animation.md. Tất cả mô hình và hướng dẫn: https://doitong.com/developers/llms.txt