A photo avatar is built from a single still image. It is the fastest way into the API: no recording session, and no consent step, since a group created from a photo reports consent_status of null. The image is still of a real person, so have their permission before you use it, as Avatar Consent explains.
1
Create the avatar
file also takes { "type": "asset_id", "asset_id": "..." } from POST /v3/assets, or base64 content. Add avatar_group_id to add this photo as another look on a character you already have; consent_status is a property of the group, so the response reports whatever that group already carries.Save avatar_item.id from the response. That is the avatar_id for video creation.2
Wait for processing
Poll A
GET /v3/avatars/looks/{look_id} until status leaves processing.completed look returns preview_image_url and the supported_api_engines it renders on. A failed one carries error.code of training_failed or moderation_failed, with the reason in error.message.3
Render
Photo avatars accept Pick a voice with
motion_prompt and expressiveness on POST /v3/videos, which direct how much the subject moves while speaking.GET /v3/voices, or set one as the character default through PATCH /v3/avatars/{group_id} and leave voice_id out. The Photo Avatar recipe covers the render end to end.Give the character more looks
The photo is the identity reference for everything that follows. Pass its look id asavatar_id to Prompt to Avatar to put the same person in a new outfit or setting, or apply a Look Pack for a coordinated set in one call.
New looks join the same character, and GET /v3/avatars/looks?group_id=... lists them all.
