Send a client chat message

Send a message for a browser client-token chat session. The request streams flow/agent events over Server-Sent Events. `turnId` and `submitMode` are optional and let newer Persona clients suppress stale interrupted responses; older clients can omit both fields. Opt-in `join` accepts exactly one new user message whose `id` equals `turnId` for visitor-owned native durable agents. A new execution streams SSE; joining an existing execution returns a 202 delivery receipt without replacing its response. Retry with the same turn and message IDs.

Request

This endpoint expects an object.
messageslist of objectsRequired
sessionIdstringRequired>=1 character
assistantMessageIdstringOptional
clientToolslist of objectsOptional
clientToolsFingerprintstringOptional<=128 characters
identityProofobjectOptional
Customer-native auth proof for the Identity Exchange. When present and the surface has a matching integration, the verified tenant/end-user replace any body-asserted tenant/endUser (which are never trusted for web-embedded callers). When Identity Exchange admission is disabled for the caller, the proof is accepted but ignored and confers no trust.
inputsmap from strings to anyOptional
metadatamap from strings to anyOptional
submitModeenumOptional
Allowed values:
turnIdstringOptional1-128 characters

Response

SSE stream of chat execution events
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object
OR
object

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
429
Too Many Requests Error
500
Internal Server Error
501
Not Implemented Error