| <html><body> |
| <style> |
| |
| body, h1, h2, h3, div, span, p, pre, a { |
| margin: 0; |
| padding: 0; |
| border: 0; |
| font-weight: inherit; |
| font-style: inherit; |
| font-size: 100%; |
| font-family: inherit; |
| vertical-align: baseline; |
| } |
| |
| body { |
| font-size: 13px; |
| padding: 1em; |
| } |
| |
| h1 { |
| font-size: 26px; |
| margin-bottom: 1em; |
| } |
| |
| h2 { |
| font-size: 24px; |
| margin-bottom: 1em; |
| } |
| |
| h3 { |
| font-size: 20px; |
| margin-bottom: 1em; |
| margin-top: 1em; |
| } |
| |
| pre, code { |
| line-height: 1.5; |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; |
| } |
| |
| pre { |
| margin-top: 0.5em; |
| } |
| |
| h1, h2, h3, p { |
| font-family: Arial, sans serif; |
| } |
| |
| h1, h2, h3 { |
| border-bottom: solid #CCC 1px; |
| } |
| |
| .toc_element { |
| margin-top: 0.5em; |
| } |
| |
| .firstline { |
| margin-left: 2 em; |
| } |
| |
| .method { |
| margin-top: 1em; |
| border: solid 1px #CCC; |
| padding: 1em; |
| background: #EEE; |
| } |
| |
| .details { |
| font-weight: bold; |
| font-size: 14px; |
| } |
| |
| </style> |
| |
| <h1><a href="discoveryengine_v1.html">Discovery Engine API</a> . <a href="discoveryengine_v1.projects.html">projects</a> . <a href="discoveryengine_v1.projects.locations.html">locations</a> . <a href="discoveryengine_v1.projects.locations.collections.html">collections</a> . <a href="discoveryengine_v1.projects.locations.collections.engines.html">engines</a> . <a href="discoveryengine_v1.projects.locations.collections.engines.assistants.html">assistants</a> . <a href="discoveryengine_v1.projects.locations.collections.engines.assistants.agents.html">agents</a> . <a href="discoveryengine_v1.projects.locations.collections.engines.assistants.agents.message.html">message</a></h1> |
| <h2>Instance Methods</h2> |
| <p class="toc_element"> |
| <code><a href="#close">close()</a></code></p> |
| <p class="firstline">Close httplib2 connections.</p> |
| <p class="toc_element"> |
| <code><a href="#send">send(tenant, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Send a message to the agent. This is a blocking call that will return the task once it is completed, or a LRO if requested.</p> |
| <p class="toc_element"> |
| <code><a href="#stream">stream(tenant, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">SendStreamingMessage is a streaming call that will return a stream of task update events until the Task is in an interrupted or terminal state.</p> |
| <h3>Method Details</h3> |
| <div class="method"> |
| <code class="details" id="close">close()</code> |
| <pre>Close httplib2 connections.</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="send">send(tenant, body=None, x__xgafv=None)</code> |
| <pre>Send a message to the agent. This is a blocking call that will return the task once it is completed, or a LRO if requested. |
| |
| Args: |
| tenant: string, Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { # /////////// Request Messages /////////// |
| "configuration": { # Configuration of a send message request. # Configuration for the send request. |
| "acceptedOutputModes": [ # The output modes that the agent is expected to respond with. |
| "A String", |
| ], |
| "blocking": True or False, # If true, the message will be blocking until the task is completed. If false, the message will be non-blocking and the task will be returned immediately. It is the caller's responsibility to check for any task updates. |
| "historyLength": 42, # The maximum number of messages to include in the history. if 0, the history will be unlimited. |
| "pushNotification": { # Configuration for setting up push notifications for task updates. # A configuration of a webhook that can be used to receive updates |
| "authentication": { # Defines authentication details, used for push notifications. # Information about the authentication to sent with the notification |
| "credentials": "A String", # Optional credentials |
| "schemes": [ # Supported authentication schemes - e.g. Basic, Bearer, etc |
| "A String", |
| ], |
| }, |
| "id": "A String", # A unique identifier (e.g. UUID) for this push notification. |
| "token": "A String", # Token unique for this task/session |
| "url": "A String", # Url to send the notification too |
| }, |
| }, |
| "message": { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. # Required. The message to send to the agent. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| "metadata": { # Optional metadata for the request. |
| "a_key": "", # Properties of the object. |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # ////// Response Messages /////////// |
| "message": { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| "task": { # Task is the core unit of action for A2A. It has a current status and when results are created for the task they are stored in the artifact. If there are multiple turns for a task, these are stored in history. |
| "artifacts": [ # A set of output artifacts for a Task. |
| { # Artifacts are the container for task completed results. These are similar to Messages but are intended to be the product of a task, as opposed to point-to-point communication. |
| "artifactId": "A String", # Unique identifier (e.g. UUID) for the artifact. It must be at least unique within a task. |
| "description": "A String", # A human readable description of the artifact, optional. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Artifact. |
| "A String", |
| ], |
| "metadata": { # Optional metadata included with the artifact. |
| "a_key": "", # Properties of the object. |
| }, |
| "name": "A String", # A human readable name for the artifact. |
| "parts": [ # The content of the artifact. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| }, |
| ], |
| "contextId": "A String", # Unique identifier (e.g. UUID) for the contextual collection of interactions (tasks and messages). Created by the A2A server. |
| "history": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED The history of interactions from a task. |
| { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| ], |
| "id": "A String", # Unique identifier (e.g. UUID) for the task, generated by the server for a new task. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED A key/value object to store custom metadata about a task. |
| "a_key": "", # Properties of the object. |
| }, |
| "status": { # A container for the status of a task # The current status of a Task, including state and a message. |
| "message": { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. # A message associated with the status. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| "state": "A String", # The current state of this task |
| "timestamp": "A String", # Timestamp when the status was recorded. Example: "2023-10-27T10:00:00Z" |
| }, |
| }, |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="stream">stream(tenant, body=None, x__xgafv=None)</code> |
| <pre>SendStreamingMessage is a streaming call that will return a stream of task update events until the Task is in an interrupted or terminal state. |
| |
| Args: |
| tenant: string, Optional tenant, provided as a path parameter. Experimental, might still change for 1.0 release. (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { # /////////// Request Messages /////////// |
| "configuration": { # Configuration of a send message request. # Configuration for the send request. |
| "acceptedOutputModes": [ # The output modes that the agent is expected to respond with. |
| "A String", |
| ], |
| "blocking": True or False, # If true, the message will be blocking until the task is completed. If false, the message will be non-blocking and the task will be returned immediately. It is the caller's responsibility to check for any task updates. |
| "historyLength": 42, # The maximum number of messages to include in the history. if 0, the history will be unlimited. |
| "pushNotification": { # Configuration for setting up push notifications for task updates. # A configuration of a webhook that can be used to receive updates |
| "authentication": { # Defines authentication details, used for push notifications. # Information about the authentication to sent with the notification |
| "credentials": "A String", # Optional credentials |
| "schemes": [ # Supported authentication schemes - e.g. Basic, Bearer, etc |
| "A String", |
| ], |
| }, |
| "id": "A String", # A unique identifier (e.g. UUID) for this push notification. |
| "token": "A String", # Token unique for this task/session |
| "url": "A String", # Url to send the notification too |
| }, |
| }, |
| "message": { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. # Required. The message to send to the agent. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| "metadata": { # Optional metadata for the request. |
| "a_key": "", # Properties of the object. |
| }, |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # The stream response for a message. The stream should be one of the following sequences: If the response is a message, the stream should contain one, and only one, message and then close If the response is a task lifecycle, the first response should be a Task object followed by zero or more TaskStatusUpdateEvents and TaskArtifactUpdateEvents. The stream should complete when the Task if in an interrupted or terminal state. A stream that ends before these conditions are met are |
| "artifactUpdate": { # TaskArtifactUpdateEvent represents a task delta where an artifact has been generated. |
| "append": True or False, # Whether this should be appended to a prior one produced |
| "artifact": { # Artifacts are the container for task completed results. These are similar to Messages but are intended to be the product of a task, as opposed to point-to-point communication. # The artifact itself |
| "artifactId": "A String", # Unique identifier (e.g. UUID) for the artifact. It must be at least unique within a task. |
| "description": "A String", # A human readable description of the artifact, optional. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Artifact. |
| "A String", |
| ], |
| "metadata": { # Optional metadata included with the artifact. |
| "a_key": "", # Properties of the object. |
| }, |
| "name": "A String", # A human readable name for the artifact. |
| "parts": [ # The content of the artifact. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| }, |
| "contextId": "A String", # The id of the context that this task belongs too |
| "lastChunk": True or False, # Whether this represents the last part of an artifact |
| "metadata": { # Optional metadata associated with the artifact update. |
| "a_key": "", # Properties of the object. |
| }, |
| "taskId": "A String", # The id of the task for this artifact |
| }, |
| "message": { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| "statusUpdate": { # TaskStatusUpdateEvent is a delta even on a task indicating that a task has changed. |
| "contextId": "A String", # The id of the context that the task belongs to |
| "final": True or False, # Whether this is the last status update expected for this task. |
| "metadata": { # Optional metadata to associate with the task update. |
| "a_key": "", # Properties of the object. |
| }, |
| "status": { # A container for the status of a task # The new status of the task. |
| "message": { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. # A message associated with the status. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| "state": "A String", # The current state of this task |
| "timestamp": "A String", # Timestamp when the status was recorded. Example: "2023-10-27T10:00:00Z" |
| }, |
| "taskId": "A String", # The id of the task that is changed |
| }, |
| "task": { # Task is the core unit of action for A2A. It has a current status and when results are created for the task they are stored in the artifact. If there are multiple turns for a task, these are stored in history. |
| "artifacts": [ # A set of output artifacts for a Task. |
| { # Artifacts are the container for task completed results. These are similar to Messages but are intended to be the product of a task, as opposed to point-to-point communication. |
| "artifactId": "A String", # Unique identifier (e.g. UUID) for the artifact. It must be at least unique within a task. |
| "description": "A String", # A human readable description of the artifact, optional. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Artifact. |
| "A String", |
| ], |
| "metadata": { # Optional metadata included with the artifact. |
| "a_key": "", # Properties of the object. |
| }, |
| "name": "A String", # A human readable name for the artifact. |
| "parts": [ # The content of the artifact. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| }, |
| ], |
| "contextId": "A String", # Unique identifier (e.g. UUID) for the contextual collection of interactions (tasks and messages). Created by the A2A server. |
| "history": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED The history of interactions from a task. |
| { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| ], |
| "id": "A String", # Unique identifier (e.g. UUID) for the task, generated by the server for a new task. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED A key/value object to store custom metadata about a task. |
| "a_key": "", # Properties of the object. |
| }, |
| "status": { # A container for the status of a task # The current status of a Task, including state and a message. |
| "message": { # Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id. # A message associated with the status. |
| "content": [ # protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content is the container of the message content. |
| { # Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON). |
| "data": { # DataPart represents a structured blob. This is most commonly a JSON payload. |
| "data": { |
| "a_key": "", # Properties of the object. |
| }, |
| }, |
| "file": { # FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source. |
| "fileWithBytes": "A String", |
| "fileWithUri": "A String", |
| "mimeType": "A String", |
| "name": "A String", |
| }, |
| "metadata": { # Optional metadata associated with this part. |
| "a_key": "", # Properties of the object. |
| }, |
| "text": "A String", |
| }, |
| ], |
| "contextId": "A String", # The context id of the message. This is optional and if set, the message will be associated with the given context. |
| "extensions": [ # The URIs of extensions that are present or contributed to this Message. |
| "A String", |
| ], |
| "messageId": "A String", # The unique identifier (e.g. UUID)of the message. This is required and created by the message creator. |
| "metadata": { # protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Any optional metadata to provide along with the message. |
| "a_key": "", # Properties of the object. |
| }, |
| "role": "A String", # A role for the message. |
| "taskId": "A String", # The task id of the message. This is optional and if set, the message will be associated with the given task. |
| }, |
| "state": "A String", # The current state of this task |
| "timestamp": "A String", # Timestamp when the status was recorded. Example: "2023-10-27T10:00:00Z" |
| }, |
| }, |
| }</pre> |
| </div> |
| |
| </body></html> |