Avatars

Partial update for an avatar's editable identity fields.

<br/>Powers the pencil-edit affordances on /avatars/:id. Body<br/>contract is defined by UpdateAvatarRequest (extra-forbid, length<br/>bounded). Unknown fields → 422 from the schema layer; an empty body<br/>is a no-op that returns the current detail bundle with 200<br/>(idempotent).<br/><br/>On success the response mirrors GET /api/v1/avatars/<id>/detail<br/>so the SPA can drop the new payload straight into its react-query<br/>cache via setQueryData without an extra round trip.<br/><br/>Backend note on "niche": the avatar model exposes category_id<br/>(FK to account_categories), not a free-text niche column. The<br/>SPA's resolveCategoryId(niche, categories) helper turns the<br/>wizard's niche key into a category_id before posting; this<br/>endpoint accepts category_id directly. The string "niche" is<br/>rejected (extra-forbid) so the SPA cannot silently fail-silent on<br/>a misnamed key.

patch/api/v1/avatars/{avatar_id}

Request

  • Base URL: https://api.avatarfactory.io (the document declares no server; this is the origin it was published from)
  • URL: https://api.avatarfactory.io/api/v1/avatars/{avatar_id}
  • Auth: one of:
    • API key in cookie session
    • HTTP bearer

Path parameters

avatar_idinteger required

Request body

category_idinteger nullable
descriptionstring nullable
forbidden_topicsstring nullable
image_promptstring nullable
namestring nullable
signature_phrasesstring nullable
storystring nullable
target_audiencestring nullable
voice_descriptionstring nullable

Response

OK

age_bandstring nullable
archivedinteger
auto_publishinteger
biostring nullable
category_idinteger nullable
controversy_levelinteger nullable
created_atstring date-time nullable
currently_lives_instring nullable
default_enginestring nullable
default_text_stylestring nullable
descriptionstring nullable
face_imagestring nullable
first_outfit_statusstring nullable
forbidden_topicsstring nullable
gemini_readyboolean
genderstring nullable
heygen_avatar_idstring nullable
heygen_expressionstring nullable
heygen_sync_errorstring nullable
heygen_sync_statusstring nullable
heygen_talking_stylestring nullable
idinteger required
image_promptstring nullable
instagram_display_namestring nullable
instagram_handlestring nullable
is_templateboolean
motion_promptstring nullable
namestring required
native_languagestring nullable
originstring nullable
outfit_countinteger
posting_frequencyinteger nullable
posting_timesstring nullable
professionstring nullable
scene_guidelinesstring nullable
signature_phrasesstring nullable
speaking_stylestring nullable
storystring nullable
target_audiencestring nullable
tiktok_handlestring nullable
timezonestring nullable
updated_atstring date-time nullable
voice_descriptionstring nullable
voice_idstring nullable
voice_integration_idinteger nullable
voice_modelstring nullable
voice_namestring nullable
voice_similaritynumber nullable
voice_speednumber nullable
voice_stabilitynumber nullable
voice_stylenumber nullable

Changes

No recorded changes to this operation across all 1 revision of this API.