---
title: "Re-pose an existing sprite into a new target pose while preserving the character, taking a source image (URL or base64), a pose name (or \"Other\" with a free-text description), and an optional n (1-4) for how many variations to produce. Only works with sprite image types (not icons, screenshots, etc.). Synchronous: the call blocks and returns an array of pose results, each containing the generated image url, the pose and description used, and a suggested motion_prompt tuned for that pose. Credits are charged only on success, scaled by the number of images generated. This is typically the first step before animating: call generatePose to set the character's pose, then feed the result (and its suggested motion_prompt) into animateSprite for the best animation quality; use rotateSprite instead when you want to change the camera angle rather than the pose. Pass an optional request_id to tag the results so you can locate them later via getSpriteResults. Requires an API key (user scope)."
method: POST
path: "/assets/sprite/pose"
tags: ["Spritesheets"]
---

# Re-pose an existing sprite into a new target pose while preserving the character, taking a source image (URL or base64), a pose name (or "Other" with a free-text description), and an optional n (1-4) for how many variations to produce. Only works with sprite image types (not icons, screenshots, etc.). Synchronous: the call blocks and returns an array of pose results, each containing the generated image url, the pose and description used, and a suggested motion_prompt tuned for that pose. Credits are charged only on success, scaled by the number of images generated. This is typically the first step before animating: call generatePose to set the character's pose, then feed the result (and its suggested motion_prompt) into animateSprite for the best animation quality; use rotateSprite instead when you want to change the camera angle rather than the pose. Pass an optional request_id to tag the results so you can locate them later via getSpriteResults. Requires an API key (user scope).

`POST /assets/sprite/pose`

## Request body

- GeneratePosePayload — Payload for generating a new pose for an existing sprite
  - `image` string, required — URL or base64-encoded source sprite image to generate a new pose from.
  - `pose` string, required — Target pose for the sprite. Use the value "Other" to generate other poses not listed in the accepted values, and fill the field description accordingly.
  - `description` string — Optional additional instructions or description to guide the pose generation.
  - `n` number — Number of pose variations to generate (1-4).
  - `augment_prompt` boolean — Augment the prompt behind the scenes. Disable to have more control.
  - `request_id` string — Optional client-provided identifier for this request. Use this to retrieve results later via the results endpoint.

## Response `200`

Success

- PoseResult[]
  - `url` string — URL of the generated pose image
  - `pose` string — The pose that was used to generate this image
  - `description` string — The pose description that was used to generate this image
  - `motion_prompt` string — A suggested motion prompt optimized for this pose. Can be used directly with 'animateSprite' for best animation results.

## Other responses

- `400` — Error

---

[API](https://skmtc.net/ludo/apis/ludo-ai-api.md) · [All operations](https://skmtc.net/ludo/apis/ludo-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ludo/ludo-ai-api/revisions/3af866d68651/schema)
