Create a persona
Creates a draft persona and starts generating its photo: a close-up portrait and a full-body shot of the same person. Credits are charged now (see GET /personas/catalog), even on a workspace with unlimited usage, and refunded if the photo fails.
With face_ids the persona keeps the identity of the person in the photos, and only the traits listed in face_photo_groups are applied.
Responds 202 with image_status: generating. Poll GET /personas/{id} every 5 seconds until it is ready or failed.
Authorization
apiKey In: header
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/personas" \ -H "Content-Type: application/json" \ -d '{ "chips": { "vibe": "natural", "gender": "female", "age": "18_24", "origin": "latin", "skin": "very_light", "eyes": "brown", "hair_style": "buzz", "hair_color": "black", "facial_hair": "none", "face": "none", "body": "slim", "outfit": "basic", "accessory": "none", "mark": "none" } }'{ "id": "string", "name": "string", "status": "draft", "chips": { "vibe": "natural", "gender": "female", "age": "18_24", "origin": "latin", "skin": "very_light", "eyes": "brown", "hair_style": "buzz", "hair_color": "black", "facial_hair": "none", "face": "none", "body": "slim", "outfit": "basic", "accessory": "none", "mark": "none" }, "uses_face_photos": true, "preset_id": "string", "image_status": "generating", "error_code": "MEDIA_REJECTED", "image_url": "string", "eta": { "started_at": "string", "expected_seconds": 0 }, "versions": [ { "id": "string", "current": true, "image_url": "string", "face_url": "string", "feedback": "up", "feedback_reason": "string", "created_at": "string" } ]}List personas GET
Returns the workspace's personas, newest first, drafts included. `image_status` and `video_generating` say what is still being generated, so one call shows every persona in progress.
Upload a reference photo POST
Sends one photo of a real person as `multipart/form-data`, to make a persona that looks like them. Only the user's own face, as an adult, is allowed: `own_face_adult` must be `true` and is the user's statement of that. JPEG, PNG, WebP or HEIC up to 10 MB. A close, sharp photo of the face gives the most faithful result. Pass the returned `id` in `face_ids` of `POST /personas` within 24 hours. Up to 6 photos per persona.