# AI3D API v2 model: tripo-retarget Apply preset animations to a rigged model with Tripo's animation retarget endpoint. - AI3D model ID: `tripo-retarget` (native Tripo API, `animations/retarget`) - Task: `model_to_model` - Provider adapter: `tripo` - Availability: listed in `GET /v2/models` only once Tripo operations are enabled on the deployment. Until then `POST /v2/jobs` returns `400 unknown model`. The operator-only Tripo animation gateway is separate; see the Tripo animation operations guide. - Provider reference: Create a normal prepaid AI3D job. Do not call Tripo directly or put a provider key in a client. ```http POST https://api.ai3d.dev/v2/jobs Authorization: Bearer Content-Type: application/json Idempotency-Key: ``` ```json { "model": "tripo-retarget", "source_job_id": "3f6c0e2e-6a3f-4f1e-9d0c-1b2a3c4d5e6f", "input": { "animations": ["preset:biped:walk", "preset:biped:run"], "out_format": "glb" } } ``` Source model: `source_job_id` only, the UUID of your own completed `tripo-rig` job. Retarget does not accept `model_url`, because Tripo accepts only the task of a rigged model. Do not put `source_job_id` inside `input`. Any other source job returns 422. Animations: send exactly one of `animation` (a single preset string) or `animations` (1 to 5 unique preset strings). Each preset matches `preset:` with lowercase letters, digits, `_`, `:`, or `-`. Presets follow the rig version of the source job: a `v1.0-20240301` rig uses `preset:biped:` (for example `preset:biped:walk`), while a `v2.5-20260210` rig uses names such as `preset:idle`, `preset:walk`, `preset:run`, or `preset:quadruped:walk`. A mismatch returns 422. Optional `input` settings: `out_format` (`glb` or `fbx`), `bake_animation`, `export_with_geometry`, and `animate_in_place`. Reserve (an upper bound, in Tripo credits at $0.01 each): 10 credits per animation. | Animations | Credits | USD | | --- | --- | --- | | 1 | 10 | 0.10 | | 2 | 20 | 0.20 | | 5 | 50 | 0.50 | AI3D reserves before dispatch and settles against Tripo's reported credits, never more than the reserve. A job that fails at Tripo is not charged. Errors: `404` source job not found (also returned for another account's job), `409` source job has not completed successfully, `422` invalid settings or a source job that cannot be used. Failed jobs report `provider_input_invalid`, `provider_request_rejected`, or `provider_insufficient_credits`. Output: the animated model is archived in `artifacts` (GLB or FBX). FBX results are download-only. Poll `GET /v2/jobs/{job_id}` until `succeeded`, `failed`, or `submission_unknown`. Use the same idempotency key when safely retrying a timed-out request.