> **Reading as an AI agent?** This is the Markdown version of https://docs.meshy.ai/api/animation-library.
>
> - Full docs index: https://docs.meshy.ai/llms.txt
> - Single-fetch full content: https://docs.meshy.ai/llms-full.txt
> - Tool-calling access via MCP server: https://docs.meshy.ai/api/ai

---
# Animation Library Reference

Every preset action you can retarget onto a rigged character, with a preview of each. Use the `action_id` when creating an animation task with the [Animation API](/api/animation). To fetch the same catalog as JSON — for building your own picker — call [`GET /openapi/v1/animations/library`](/api/animation#list-animations).

---

## Available Animations
To apply several of these animations to the same character in one request — and receive them as a single file with one clip per animation — pass their ids as [`action_ids`](/api/animation#create-an-animation-task) instead of a single `action_id`.

> The full list of available animations (with `action_id`, name, category, preview URL) is served as JSON at https://api.meshy.ai/web/public/animations/resources — fetch it directly to retrieve the current catalog.

---

## Usage Example
To apply an animation to your rigged character, use the action_id in your API request:

```javascript
const payload = {
  rig_task_id: "YOUR_RIGGING_TASK_ID",
  action_id: 92,  // Double Combo Attack animation
};

// Send this payload to the POST /openapi/v1/animations endpoint
```

To apply several animations at once and receive one file containing all of them
as separate clips, pass `action_ids` instead. The clips appear in the order
listed here:

```javascript
const payload = {
  rig_task_id: "YOUR_RIGGING_TASK_ID",
  action_ids: [10, 25, 92], // idle, walk, then Double Combo Attack
};

// Send this payload to the POST /openapi/v1/animations endpoint
```

For more details on how to create animation tasks, see the [Animation API documentation](/api/animation#create-an-animation-task).
