Skip to Content

POST /persona/update

Update Persona

Update personas using composable infra architecture.

Request Body (UpdatePersonaApiRequest)

FieldTypeRequiredDescription
personasUpdatePersonaItem[]NoList of persona items to update (required on first call when all is false)
allbooleanNoWhen true, apply patch to every persona matching the filter fields below (minus excluded_ids)
excluded_idsstring[]NoUUIDs to skip even when matched by all-mode filters
patchUpdatePersonaPatchNoShared change set applied to every matched row when all=true (sparse — only set fields are updated; patch.id ignored)
searchstringNoFull-text search query
scenario_idsstring[]NoFilter by scenario UUIDs
field_idsstring[]NoFilter by field UUIDs
filter_department_idsstring[]NoFilter by department UUIDs
scenario_searchstringNoSearch text for scenario facet (no-op for row filtering)
field_searchstringNoSearch text for field facet (no-op for row filtering)
department_searchstringNoSearch text for department facet (no-op for row filtering)
color_searchstringNoSearch text for color facet (no-op for row filtering)
icon_searchstringNoSearch text for icon facet (no-op for row filtering)
voice_searchstringNoSearch text for voice facet (no-op for row filtering)
instruction_searchstringNoSearch text for instruction facet (no-op for row filtering)
idempotency_keystringNoOperation key for ack — promotes or rejects a dormant update
softbooleanNoStage the update dormant (active=False) — propose; the ack ({idempotency_key, accept}) promotes/rejects it
acceptbooleanNoAccept (promote) or reject dormant state. Only meaningful with idempotency_key

Response (UpdatePersonaApiResponse)

FieldTypeRequiredDescription
resultsPersonaResultItem[]YesPer-persona update results
idempotency_keystringNoIdempotency key echoed back for client correlation
personasListPersonaApiPersona[]NoHydrated rows for the successfully-updated personas (mirrors /persona/search shape)
Last updated on