The Auto-Rigging & Animation API allows you to programmatically rig 3D models and apply animations to them using Meshy's backend capabilities. This section provides the necessary details to integrate these features into your application.
Please note that programmatic rigging and animation currently only works well with standard humanoid (bipedal) assets with clearly defined limbs and body structure at this time.
Endpoints for submitting and retrieving character rigging tasks. Rigging involves creating an internal skeleton (armature) and binding the model's mesh (skin) to it, making it ready for animation.
This endpoint allows you to create a new rigging task for a given 3D model. Upon successful completion, it provides a rigged character in standard formats and optionally basic walking/running animations.
Currently, auto-rigging is not suitable for the following models:
Untextured meshes
Non-humanoid assets
Humanoid assets with unclear limb and body structure
Parameters
Required attributes
Name
input_task_id
Type
string
Description
The input task that needs to be rigged. Required if model_url is not provided. We currently support textured humanoid models.
Only one of input_task_id or model_url may be used as input for rigging.
Name
model_url
Type
string
Description
Please provide a 3D model for Meshy to rig via a publicly accessible URL or Data URI. We currently support textured humanoid GLB files (.glb format). Required if input_task_id is not provided.
Only one of input_task_id or model_url may be used as input for rigging.
Optional attributes
Name
height_meters
Type
number
Description
The approximate height of the character model in meters. This aids in scaling and rigging accuracy. It must be a positive number. Default: 1.7.
Name
texture_image_url
Type
string
Description
Model's base color texture image. Publicly accessible URL or Data URI. We currently support .png formats.
Returns
The result property of the response contains the task id of the newly created rigging task.
The Rigging Task object represents the work unit for rigging a character.
Properties
Name
id
Type
string
Description
Unique identifier for the task.
Name
status
Type
string
Description
Status of the task. Possible values: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Progress of the task (0-100). 0 if not started, 100 if succeeded.
Name
created_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task was created.
A timestamp represents the number of milliseconds elapsed since January 1, 1970 UTC, following
the RFC 3339 standard.
For example, Friday, September 1, 2023 12:00:00 PM GMT is represented as 1693569600000. This applies
to all timestamps in Meshy API.
Name
started_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task started processing. 0 if not started.
Name
finished_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task finished. 0 if not finished.
Name
expires_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task result assets expire and may be deleted.
Name
task_error
Type
object
Description
Error object if the task failed, otherwise an object with an empty message string.
Name
message
Type
string
Description
Detailed error message. Empty if task succeeded.
Name
result
Type
object
Description
Contains the output asset URLs if the task SUCCEEDED, null otherwise.
Name
rigged_character_fbx_url
Type
string
Description
Downloadable URL for the rigged character in FBX format.
Name
basic_animations
Type
object (optional)
Description
Contains URLs for default animations. (e.g. if generate_basic_animations was implicitly true or enabled by default).
Name
walking_glb_url
Type
string
Description
Downloadable URL for walking animation in GLB format (with skin).
Name
walking_fbx_url
Type
string
Description
Downloadable URL for walking animation in FBX format (with skin).
Name
walking_armature_glb_url
Type
string
Description
Downloadable URL for walking animation armature in GLB format.
Name
running_glb_url
Type
string
Description
Downloadable URL for running animation in GLB format (with skin).
Name
running_fbx_url
Type
string
Description
Downloadable URL for running animation in FBX format (with skin).
Name
running_armature_glb_url
Type
string
Description
Downloadable URL for running animation armature in GLB format.
Name
preceding_tasks
Type
integer
Description
The count of preceding tasks in the queue. Meaningful only if status is PENDING.
The Animation Task object represents the work unit for applying an animation to a rigged character.
Properties
Name
id
Type
string
Description
Unique identifier for the task.
Name
status
Type
string
Description
Status of the task. Possible values: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Progress of the task (0-100).
Name
created_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task was created.
A timestamp represents the number of milliseconds elapsed since January 1, 1970 UTC, following
the RFC 3339 standard.
For example, Friday, September 1, 2023 12:00:00 PM GMT is represented as 1693569600000. This applies
to all timestamps in Meshy API.
Name
started_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task started processing. 0 if not started.
Name
finished_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task finished. 0 if not finished.
Name
expires_at
Type
timestamp
Description
Timestamp (milliseconds since epoch) when the task result assets expire.
Name
task_error
Type
object
Description
Error object if the task failed, otherwise an object with an empty message string.
Name
message
Type
string
Description
Detailed error message. Empty if task succeeded.
Name
result
Type
object
Description
Contains the output animation URLs if the task SUCCEEDED.
Name
animation_glb_url
Type
string
Description
Downloadable URL for the animation in GLB format.
Name
animation_fbx_url
Type
string
Description
Downloadable URL for the animation in FBX format.
Name
processed_usdz_url
Type
string
Description
Downloadable URL for the processed animation in USDZ format.
Name
processed_armature_fbx_url
Type
string
Description
Downloadable URL for the processed armature in FBX format.
Name
processed_animation_fps_fbx_url
Type
string
Description
Downloadable URL for the animation with changed FPS in FBX format (e.g., if change_fps operation was used).
Name
preceding_tasks
Type
integer
Description
The count of preceding tasks in the queue. Meaningful only if status is PENDING.