MessageIn
One message from the end user: the text of the turn, plus optional media.
What the end user says in this turn.
Possible values: non-empty and <= 32000 characters
attachments object[]nullable
Media to attach to this turn (up to 10 items). null or an empty list means no media.
Possible values: <= 10
Identifier of an owned file created via POST /v1/files. Provide exactly one of file_id or file_data.
Base64-encoded file bytes (a data:…;base64, prefix is accepted and ignored). Provide exactly one of file_id or file_data.
a2ui_action object
Set when the user sent this message by acting on an a2ui surface (a button tap, a form submit): the renderer's a2ui action message, as is. text still holds what the user sees themselves send, such as the button's label. Only an a2ui session takes one.
- A2uiActionIn
- null
A UI action from an a2ui surface: the renderer's a2ui action message, as is.
The a2ui protocol version: v1.0.
v1.0action objectrequired
What the user did on an a2ui surface, as the renderer reports it.
The name of the component's action.event.
Possible values: <= 64 characters, Value must match regular expression ^[^\x00-\x1f\x7f\u0085\u2028\u2029]+$
The surfaceId of the surface the component is on.
Possible values: <= 200 characters, Value must match regular expression ^[^\x00-\x1f\x7f\u0085\u2028\u2029]+$
The id of the component the user acted on.
Possible values: <= 200 characters, Value must match regular expression ^[^\x00-\x1f\x7f\u0085\u2028\u2029]+$
When the user acted (ISO 8601), as the renderer reports it.
Possible values: <= 64 characters
The context of the component's action.event with its data bindings resolved: the values the user picked or entered. At most 4000 characters as JSON, nested at most 8 levels deep.
The component's action.event.userMessage. Taken and not used: text is what the user said.
Possible values: <= 2000 characters
Client-side metadata the renderer attaches. Taken and not used; bounded like context.
true to receive the task on this request: the response is a stream of the task's own frames, as the session's event stream sends them, from its first frame through its end frame — or for at most 10 minutes, like any event stream.
false{
"text": "What should I pack for three days in Lisbon in March?"
}