- animate_3d_model
- Animates a rigged humanoid GLB (two legs, two arms and a head, e.g. model.glb of a rig_3d_model job) from a description of a motion such as "A person walks forward confidently". Adds one animation clip, up to 10 seconds at 30 frames per second, to the model's own file: its mesh, textures and skeleton are unchanged. Planted feet stay where they land and on the floor. Accepts one self-contained, uncompressed GLB with one skeleton, up to 1,000,000 triangles. Returns model.glb (animated), motion.json (bone roles, facing, travel, foot contacts), motion_report.json (foot sliding, floating, floor penetration and rotation pops; status passed, needs_review or failed_checks) and motion_preview.png. Works best on everyday movement, gestures, dancing and combat, described as "A person…". A succeeded job means the motion was written, not that it looks right: read motion_report.json and look at motion_preview.png. This is an asynchronous job; use get_job to follow progress. A failed job is refunded. Costs 20 credits per job. Requires idempotency_key; retain it when retrying the same request.
- create_upload
- Returns a one-hour URL to PUT a local file to; then call the tool with the upload_id.
- get_job
- Status and results of a job; waits up to wait_seconds for it to finish.
- cancel_job
- Cancel a queued job or a workflow whose can_cancel is true; repeated calls never delete results.
- list_jobs
- Your most recent jobs, newest first.
- read_job_file
- Reads a text output (.txt .json .md .csv) of a succeeded job in chunks.