Índice
A2AService(interfaz)APIKeySecurityScheme(mensaje)AgentCapabilities(mensaje)AgentCard(mensaje)AgentCardSignature(mensaje)AgentExtension(mensaje)AgentInterface(mensaje)AgentProvider(mensaje)AgentSkill(mensaje)Artifact(mensaje)AuthenticationInfo(mensaje)AuthorizationCodeOAuthFlow(mensaje)CancelTaskRequest(mensaje)ClientCredentialsOAuthFlow(mensaje)CreateTaskPushNotificationConfigRequest(mensaje)DataPart(mensaje)DeleteTaskPushNotificationConfigRequest(mensaje)FilePart(mensaje)GetAgentCardRequest(mensaje)GetTaskPushNotificationConfigRequest(mensaje)GetTaskRequest(mensaje)HTTPAuthSecurityScheme(mensaje)ImplicitOAuthFlow(mensaje)ListTaskPushNotificationConfigRequest(mensaje)ListTaskPushNotificationConfigResponse(mensaje)Message(mensaje)MutualTlsSecurityScheme(mensaje)OAuth2SecurityScheme(mensaje)OAuthFlows(mensaje)OpenIdConnectSecurityScheme(mensaje)Part(mensaje)PasswordOAuthFlow(mensaje)PushNotificationConfig(mensaje)Role(enum)Security(mensaje)SecurityScheme(mensaje)SendMessageConfiguration(mensaje)SendMessageRequest(mensaje)SendMessageResponse(mensaje)StreamResponse(mensaje)StringList(mensaje)Task(mensaje)TaskArtifactUpdateEvent(mensaje)TaskPushNotificationConfig(mensaje)TaskState(enum)TaskStatus(mensaje)TaskStatusUpdateEvent(mensaje)TaskSubscriptionRequest(mensaje)
A2AService
A2AService define la versión de gRPC del protocolo A2A. Tiene una forma ligeramente diferente a la versión de JSONRPC para adaptarse mejor a AIP-127, cuando corresponda. Los sustantivos son AgentCard, Message, Task y TaskPushNotificationConfig.
- Los mensajes no son un recurso estándar, por lo que no hay una interfaz de get/delete/update/list, solo métodos personalizados de envío y transmisión.
- Las tareas tienen una interfaz get y métodos personalizados de cancelación y suscripción.
- TaskPushNotificationConfig es un recurso cuyo elemento superior es una tarea. Tienen métodos get, list y create.
- AgentCard es un recurso estático que solo tiene un método get.
| CancelTask |
|---|
|
Cancela una tarea del agente. Si se admite, no se deben esperar más actualizaciones de la tarea.
|
| CreateTaskPushNotificationConfig |
|---|
|
Establece una configuración de notificaciones push para una tarea.
|
| DeleteTaskPushNotificationConfig |
|---|
|
Borra la configuración de una notificación push para una tarea.
|
| GetAgentCard |
|---|
|
GetAgentCard devuelve la tarjeta del agente.
|
| GetTask |
|---|
|
Obtén el estado actual de una tarea del agente.
|
| GetTaskPushNotificationConfig |
|---|
|
Obtiene la configuración de notificaciones push para una tarea.
|
| ListTaskPushNotificationConfig |
|---|
|
Obtén una lista de las notificaciones push configuradas para una tarea.
|
| SendMessage |
|---|
|
Enviar un mensaje al agente Esta es una llamada de bloqueo que devolverá la tarea una vez que se complete o una LRO si se solicita.
|
| SendStreamingMessage |
|---|
|
SendStreamingMessage es una llamada de transmisión que devolverá un flujo de eventos de actualización de tareas hasta que la tarea se encuentre en un estado interrumpido o final.
|
| TaskSubscription |
|---|
|
TaskSubscription es una llamada de transmisión que devolverá un flujo de eventos de actualización de tareas. Esto adjunta la transmisión a una tarea existente en proceso. Si la tarea se completó, la transmisión devolverá la tarea completada (como GetTask) y cerrará la transmisión.
|
APIKeySecurityScheme
| Campos | |
|---|---|
description |
Es la descripción de este esquema de seguridad. |
location |
Ubicación de la clave de API. Los valores válidos son "query", "header" o "cookie". |
name |
Es el nombre del parámetro de encabezado, consulta o cookie que se usará. |
AgentCapabilities
Define el conjunto de funciones de A2A que admite el agente.
| Campos | |
|---|---|
streaming |
Si el agente admitirá respuestas de transmisión |
push_notifications |
Si el agente puede enviar notificaciones push al webhook del cliente |
extensions[] |
Extensiones compatibles con este agente. |
AgentCard
La tarjeta de agente transmite información clave: - Detalles generales (versión, nombre, descripción, usos) - Habilidades: Conjunto de acciones o soluciones que el agente puede realizar - Modalidades predeterminadas o tipos de contenido compatibles con el agente. - Requisitos de autenticación Next ID: 19
| Campos | |
|---|---|
protocol_version |
Es la versión del protocolo A2A que admite este agente. |
name |
Es el nombre del agente legible por humanos. Ejemplo: "Agente de recetas" |
description |
Es una descripción del dominio de acción o el espacio de solución del agente. Ejemplo: "Agente que ayuda a los usuarios con recetas y cocina". |
url |
Es una URL a la dirección en la que se aloja el agente. Representa el extremo preferido según lo declaró el agente. |
preferred_transport |
Es el transporte del extremo preferido. Si está vacío, el valor predeterminado es JSONRPC. |
additional_interfaces[] |
Anuncio de los transportes adicionales admitidos. El cliente puede usar cualquiera de los transportes admitidos. |
provider |
Es el proveedor de servicios del agente. |
version |
Es la versión del agente. Ejemplo: "1.0.0" |
documentation_url |
Es una URL que proporciona documentación adicional sobre el agente. |
capabilities |
Es el conjunto de capacidades de A2A que admite el agente. |
security_schemes |
Son los detalles del esquema de seguridad que se usan para la autenticación con este agente. |
security[] |
protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Requisitos de seguridad para comunicarse con el agente. Esta lista se puede ver como una operación OR de operaciones AND. Cada objeto de la lista describe un conjunto posible de requisitos de seguridad que deben estar presentes en una solicitud. Esto permite especificar, por ejemplo, que "los llamadores deben usar OAuth O una clave de API Y mTLS". Ejemplo: security { schemes { key: "oauth" value { list: ["read"] } } } security { schemes { key: "api-key" } schemes { key: "mtls" } } |
default_input_modes[] |
protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Es el conjunto de modos de interacción que admite el agente en todas las habilidades. Este parámetro se puede anular por habilidad. Se definen como tipos de MIME. |
default_output_modes[] |
Son los tipos de MIME admitidos como resultados de este agente. |
skills[] |
Las habilidades representan una unidad de capacidad que un agente puede realizar. Esto puede parecer algo abstracto, pero representa un conjunto más específico de acciones en las que es muy probable que el agente tenga éxito. |
supports_authenticated_extended_card |
Indica si el agente admite proporcionar una tarjeta de agente extendida cuando el usuario se autentica, es decir, si la tarjeta de .well-known es diferente de la tarjeta de GetAgentCard. |
signatures[] |
Son las firmas web JSON calculadas para esta AgentCard. |
icon_url |
Es una URL opcional a un ícono del agente. |
AgentCardSignature
AgentCardSignature representa una firma JWS de un AgentCard. Sigue el formato JSON de una firma web JSON (JWS) de RFC 7515.
| Campos | |
|---|---|
protected |
Obligatorio. Es el encabezado JWS protegido para la firma. Siempre es un objeto JSON codificado en base64url. Obligatorio. |
signature |
Obligatorio. Es la firma calculada, codificada en base64url. Obligatorio. |
header |
Son los valores del encabezado JWS no protegido. |
AgentExtension
Es una declaración de una extensión compatible con un agente.
| Campos | |
|---|---|
uri |
Es el URI de la extensión. Ejemplo: "https://developers.google.com/identity/protocols/oauth2" |
description |
Es una descripción de cómo este agente usa la extensión. Ejemplo: "Autenticación de Google OAuth 2.0" |
required |
Indica si el cliente debe cumplir con requisitos específicos de la extensión. Ejemplo: false |
params |
Es la configuración opcional de la extensión. |
AgentInterface
Define información de transporte adicional para el agente.
| Campos | |
|---|---|
url |
Es la URL en la que se encuentra esta interfaz. |
transport |
El transporte admitió esta URL. Es una cadena de formulario abierto que se puede extender fácilmente para muchos protocolos de transporte. Los principales que se admiten oficialmente son JSONRPC, gRPC y HTTP+JSON. |
tenant |
Es el arrendatario que se establecerá en la solicitud cuando se llame al agente. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
AgentProvider
Representa información sobre el proveedor de servicios de un agente.
| Campos | |
|---|---|
url |
URL de referencia de los proveedores. Ejemplo: "https://ai.google.dev" |
organization |
Nombre de la organización del proveedor. Ejemplo: "Google" |
AgentSkill
AgentSkill representa una unidad de acción o solución que el agente puede realizar. Se puede considerar como un tipo de solución altamente confiable que se le puede encargar a un agente. Los agentes tienen autonomía para elegir cómo y cuándo usar habilidades específicas, pero los clientes deben tener la certeza de que, si se define la habilidad, esa unidad de acción se puede realizar de manera confiable.
| Campos | |
|---|---|
id |
Es el identificador único de la habilidad dentro de este agente. |
name |
Es un nombre legible para la habilidad. |
description |
Es una descripción legible por humanos (o por LLM) de los detalles y el comportamiento de la habilidad. |
tags[] |
Es un conjunto de etiquetas para que la skill mejore la categorización o el uso. Ejemplo: ["cocina", "asistencia al cliente", "facturación"] |
examples[] |
Es un conjunto de preguntas de ejemplo que esta skill está diseñada para responder. Estos ejemplos deberían ayudar a la persona que llama a comprender cómo formular solicitudes al agente para alcanzar objetivos específicos. Ejemplo: [“Necesito una receta de pan”] |
input_modes[] |
Son las modalidades de entrada posibles que se admiten. |
output_modes[] |
Modalidades de salida posibles que se producen |
security[] |
protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Esquemas de seguridad necesarios para que el agente aproveche esta habilidad. Al igual que en el objeto AgentCard.security general, esta lista representa un OR lógico de los objetos de requisitos de seguridad. Cada objeto es un conjunto de esquemas de seguridad que se deben usar juntos (un AND lógico). protolint:enable REPEATED_FIELD_NAMES_PLURALIZED |
Artefacto
Los artefactos son el contenedor de los resultados de las tareas completadas. Son similares a los mensajes, pero están diseñados para ser el resultado de una tarea, a diferencia de la comunicación de punto a punto.
| Campos | |
|---|---|
artifact_id |
Es el identificador único (p.ej., UUID) del artefacto. Debe ser único al menos dentro de una tarea. |
name |
Es un nombre legible para el artefacto. |
description |
Es una descripción legible del artefacto (opcional). |
parts[] |
Es el contenido del artefacto. |
metadata |
Son los metadatos opcionales incluidos con el artefacto. |
extensions[] |
Son los URIs de las extensiones que están presentes en este artefacto o que contribuyeron a él. |
AuthenticationInfo
Define los detalles de autenticación que se usan para las notificaciones push.
| Campos | |
|---|---|
schemes[] |
Esquemas de autenticación admitidos, p. ej., Basic, Bearer, etc. |
credentials |
Credenciales opcionales |
AuthorizationCodeOAuthFlow
| Campos | |
|---|---|
authorization_url |
Es la URL de autorización que se usará para este flujo. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
token_url |
Es la URL del token que se usará para este flujo. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
refresh_url |
Es la URL que se usará para obtener tokens de actualización. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
scopes |
Son los permisos disponibles para el esquema de seguridad de OAuth2. Es un mapa entre el nombre del alcance y una descripción breve de este. El mapa PUEDE estar vacío. |
CancelTaskRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
name |
Es el nombre del recurso de la tarea que se cancelará. Formato: tasks/{task_id} |
ClientCredentialsOAuthFlow
| Campos | |
|---|---|
token_url |
Es la URL del token que se usará para este flujo. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
refresh_url |
Es la URL que se usará para obtener tokens de actualización. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
scopes |
Son los permisos disponibles para el esquema de seguridad de OAuth2. Es un mapa entre el nombre del alcance y una descripción breve de este. El mapa PUEDE estar vacío. |
CreateTaskPushNotificationConfigRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
parent |
Obligatorio. Es el recurso de tarea principal para esta configuración. Formato: tasks/{task_id} |
config_id |
Obligatorio. ID de la configuración nueva. |
config |
Obligatorio. Es la configuración que se creará. |
DataPart
DataPart representa un blob estructurado. Por lo general, se trata de una carga útil de JSON.
| Campos | |
|---|---|
data |
|
DeleteTaskPushNotificationConfigRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
name |
Es el nombre del recurso de la configuración que se borrará. Formato: tasks/{task_id}/pushNotificationConfigs/{config_id} |
FilePart
FilePart representa las diferentes formas en que se pueden proporcionar los archivos. Si los archivos son pequeños, se admite la transferencia directa de bytes a través de file_with_bytes. Si el archivo es grande, el agente debe leer el contenido según corresponda directamente desde la fuente file_with_uri.
| Campos | |
|---|---|
mime_type |
|
name |
|
Campo de unión
|
|
file_with_uri |
|
file_with_bytes |
|
GetAgentCardRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
GetTaskPushNotificationConfigRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
name |
Es el nombre del recurso de la configuración que se recuperará. Formato: tasks/{task_id}/pushNotificationConfigs/{config_id} |
GetTaskRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
name |
Obligatorio. Es el nombre del recurso de la tarea. Formato: tasks/{task_id} |
history_length |
Es la cantidad de mensajes más recientes del historial de la tarea que se recuperarán. |
HTTPAuthSecurityScheme
| Campos | |
|---|---|
description |
Es la descripción de este esquema de seguridad. |
scheme |
Nombre del esquema de autenticación HTTP que se usará en el encabezado de autorización, como se define en RFC7235. Los valores que se usen DEBEN registrarse en el registro de esquemas de autenticación de IANA. El valor no distingue mayúsculas de minúsculas, como se define en RFC7235. |
bearer_format |
Es una sugerencia para que el cliente identifique el formato del token de portador. Los tokens de portador suelen generarse en un servidor de autorización, por lo que esta información se proporciona principalmente con fines de documentación. |
ImplicitOAuthFlow
| Campos | |
|---|---|
authorization_url |
Es la URL de autorización que se usará para este flujo. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
refresh_url |
Es la URL que se usará para obtener tokens de actualización. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
scopes |
Son los permisos disponibles para el esquema de seguridad de OAuth2. Es un mapa entre el nombre del alcance y una descripción breve de este. El mapa PUEDE estar vacío. |
ListTaskPushNotificationConfigRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
parent |
Es el recurso de la tarea principal. Formato: tasks/{task_id} |
page_size |
Para la AIP-158, estos campos están presentes. Por lo general, no se usa ni es necesario. Es la cantidad máxima de configuraciones que se devolverán. Si no se especifica, se devolverán todos los parámetros de configuración. |
page_token |
Es un token de página que se recibió de una llamada a ListTaskPushNotificationConfigRequest anterior. Proporciona esto para recuperar la página siguiente. Cuando se pagina, todos los demás parámetros proporcionados a |
ListTaskPushNotificationConfigResponse
| Campos | |
|---|---|
configs[] |
Es la lista de configuraciones de notificaciones push. |
next_page_token |
Un token, que se puede enviar como |
Mensaje
Un mensaje es una unidad de comunicación entre el cliente y el servidor. Se asocia con un contexto y, de manera opcional, con una tarea. Dado que el servidor es responsable de la definición del contexto, siempre debe proporcionar un context_id en sus mensajes. De manera opcional, el cliente puede proporcionar el context_id si conoce el contexto con el que se asociará el mensaje. De manera similar para task_id, excepto que el servidor decide si se crea una tarea y si se incluye el task_id.
| Campos | |
|---|---|
message_id |
Es el identificador único (p.ej., UUID) del mensaje. Este campo es obligatorio y lo crea el creador del mensaje. |
context_id |
Es el ID de contexto del mensaje. Este campo es opcional y, si se configura, el mensaje se asociará con el contexto determinado. |
task_id |
Es el ID de la tarea del mensaje. Este parámetro es opcional y, si se configura, el mensaje se asociará con la tarea determinada. |
role |
Es un rol para el mensaje. |
content[] |
protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Content es el contenedor del contenido del mensaje. |
metadata |
protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Es cualquier metadato opcional que se puede proporcionar junto con el mensaje. |
extensions[] |
Son los URIs de las extensiones que están presentes en este mensaje o que contribuyeron a él. |
MutualTlsSecurityScheme
| Campos | |
|---|---|
description |
Es la descripción de este esquema de seguridad. |
OAuth2SecurityScheme
| Campos | |
|---|---|
description |
Es la descripción de este esquema de seguridad. |
flows |
Objeto que contiene información de configuración para los tipos de flujo admitidos |
oauth2_metadata_url |
Es la URL de los metadatos del servidor de autorización de oauth2 RFC8414. Se requiere TLS. |
OAuthFlows
| Campos | |
|---|---|
Campo de unión
|
|
authorization_code |
|
client_credentials |
|
implicit |
|
password |
|
OpenIdConnectSecurityScheme
| Campos | |
|---|---|
description |
Es la descripción de este esquema de seguridad. |
open_id_connect_url |
Es la URL conocida para descubrir los metadatos del proveedor de [[OpenID-Connect-Discovery]]. |
Parte
Part representa un contenedor para una sección de contenido de comunicación. Las partes pueden ser puramente textuales, algún tipo de archivo (imagen, video, etc.) o un BLOB de datos estructurados (es decir, JSON).
| Campos | |
|---|---|
metadata |
Son los metadatos opcionales asociados a esta parte. |
Campo de unión
|
|
text |
|
file |
|
data |
|
PasswordOAuthFlow
| Campos | |
|---|---|
token_url |
Es la URL del token que se usará para este flujo. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
refresh_url |
Es la URL que se usará para obtener tokens de actualización. Debe tener el formato de una URL. El estándar de OAuth2 requiere el uso de TLS. |
scopes |
Son los permisos disponibles para el esquema de seguridad de OAuth2. Es un mapa entre el nombre del alcance y una descripción breve de este. El mapa PUEDE estar vacío. |
PushNotificationConfig
Es la configuración para establecer notificaciones push sobre actualizaciones de tareas.
| Campos | |
|---|---|
id |
Es un identificador único (p.ej., UUID) para esta notificación push. |
url |
URL a la que se enviará la notificación |
token |
Token único para esta tarea o sesión |
authentication |
Es la información sobre la autenticación que se enviará con la notificación. |
Rol
| Enums | |
|---|---|
ROLE_UNSPECIFIED |
|
ROLE_USER |
El rol USER se refiere a la comunicación del cliente al servidor. |
ROLE_AGENT |
El rol AGENT hace referencia a la comunicación del servidor al cliente. |
Seguridad
| Campos | |
|---|---|
schemes |
|
SecurityScheme
| Campos | |
|---|---|
Campo de unión
|
|
api_key_security_scheme |
|
http_auth_security_scheme |
|
oauth2_security_scheme |
|
open_id_connect_security_scheme |
|
mtls_security_scheme |
|
SendMessageConfiguration
Es la configuración de una solicitud de mensaje.
| Campos | |
|---|---|
accepted_output_modes[] |
Son los modos de salida con los que se espera que responda el agente. |
push_notification |
Es la configuración de un webhook que se puede usar para recibir actualizaciones. |
history_length |
Es la cantidad máxima de mensajes que se incluirán en el historial. Si es 0, el historial será ilimitado. |
blocking |
Si es verdadero, el mensaje bloqueará la ejecución hasta que se complete la tarea. Si es falso, el mensaje no bloqueará la tarea y se devolverá de inmediato. Es responsabilidad del llamador verificar si hay actualizaciones de tareas. |
SendMessageRequest
///////// Request Messages ///////////
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
request |
Obligatorio. Es el mensaje que se enviará al agente. |
configuration |
Es la configuración de la solicitud de envío. |
metadata |
Son metadatos opcionales para la solicitud. |
SendMessageResponse
////// Response Messages ///////////
| Campos | |
|---|---|
Campo de unión
|
|
task |
|
msg |
|
StreamResponse
Es la respuesta de transmisión para un mensaje. La transmisión debe ser una de las siguientes secuencias: Si la respuesta es un mensaje, la transmisión debe contener un solo mensaje y, luego, cerrarse. Si la respuesta es un ciclo de vida de la tarea, la primera respuesta debe ser un objeto Task seguido de cero o más objetos TaskStatusUpdateEvent y TaskArtifactUpdateEvent. La transmisión debe completarse cuando la tarea se encuentre en un estado interrumpido o terminal. Las transmisiones que finalizan antes de que se cumplan estas condiciones
| Campos | |
|---|---|
Campo de unión
|
|
task |
|
msg |
|
status_update |
|
artifact_update |
|
StringList
protolint:disable REPEATED_FIELD_NAMES_PLURALIZED
| Campos | |
|---|---|
list[] |
|
Tarea
La tarea es la unidad de acción principal para A2A. Tiene un estado actual y, cuando se crean resultados para la tarea, se almacenan en el artefacto. Si hay varios turnos para una tarea, estos se almacenan en el historial.
| Campos | |
|---|---|
id |
Es el identificador único (p.ej., UUID) de la tarea, que genera el servidor para una tarea nueva. |
context_id |
Es el identificador único (p.ej., UUID) de la colección contextual de interacciones (tareas y mensajes). Es creado por el servidor A2A. |
status |
Es el estado actual de una tarea, incluido el estado y un mensaje. |
artifacts[] |
Es un conjunto de artefactos de salida para una tarea. |
history[] |
protolint:disable REPEATED_FIELD_NAMES_PLURALIZED Es el historial de interacciones de una tarea. |
metadata |
protolint:enable REPEATED_FIELD_NAMES_PLURALIZED Un objeto clave/valor para almacenar metadatos personalizados sobre una tarea. |
TaskArtifactUpdateEvent
TaskArtifactUpdateEvent representa un delta de tareas en el que se generó un artefacto.
| Campos | |
|---|---|
task_id |
ID de la tarea para este artefacto |
context_id |
ID del contexto al que pertenece esta tarea |
artifact |
El artefacto en sí |
append |
Indica si se debe agregar a una anterior ya producida. |
last_chunk |
Indica si representa la última parte de un artefacto. |
metadata |
Son los metadatos opcionales asociados con la actualización del artefacto. |
TaskPushNotificationConfig
| Campos | |
|---|---|
name |
El nombre del recurso de la configuración. Formato: tasks/{task_id}/pushNotificationConfigs/{config_id} |
push_notification_config |
Son los detalles de configuración de la notificación push. |
TaskState
Es el conjunto de estados en los que puede estar una tarea.
| Enums | |
|---|---|
TASK_STATE_UNSPECIFIED |
|
TASK_STATE_SUBMITTED |
Representa el estado que confirma que se creó una tarea. |
TASK_STATE_WORKING |
Representa el estado en el que una tarea se está procesando de forma activa. |
TASK_STATE_COMPLETED |
Representa el estado en el que se finaliza una tarea. Este es un estado terminal. |
TASK_STATE_FAILED |
Representa el estado de una tarea que se completó, pero falló. Este es un estado terminal. |
TASK_STATE_CANCELLED |
Representa el estado de una tarea que se canceló antes de finalizar. Este es un estado terminal. |
TASK_STATE_INPUT_REQUIRED |
Representa el estado que requiere información para completar la tarea. Este es un estado interrumpido. |
TASK_STATE_REJECTED |
Representa el estado en el que el agente decidió no realizar la tarea. Esto se puede hacer durante la creación inicial de la tarea o más adelante, una vez que un agente haya determinado que no puede o no quiere continuar. Este es un estado terminal. |
TASK_STATE_AUTH_REQUIRED |
Representa el estado que indica que se necesita alguna autenticación del cliente upstream. Se espera que la autenticación se realice fuera de banda, por lo que este no es un estado interrumpido o terminal. |
TaskStatus
Es un contenedor para el estado de una tarea.
| Campos | |
|---|---|
state |
Es el estado actual de esta tarea. |
update |
Es un mensaje asociado al estado. |
timestamp |
Es la marca de tiempo en la que se registró el estado. Ejemplo: "2023-10-27T10:00:00Z" |
TaskStatusUpdateEvent
TaskStatusUpdateEvent es un evento delta en una tarea que indica que esta cambió.
| Campos | |
|---|---|
task_id |
ID de la tarea que se cambió |
context_id |
ID del contexto al que pertenece la tarea |
status |
Es el nuevo estado de la tarea. |
final |
Indica si esta es la última actualización de estado esperada para esta tarea. |
metadata |
Son metadatos opcionales para asociar con la actualización de la tarea. |
TaskSubscriptionRequest
| Campos | |
|---|---|
tenant |
Es el inquilino opcional, que se proporciona como un parámetro de ruta de acceso. Es experimental y podría cambiar para el lanzamiento de la versión 1.0. |
name |
Es el nombre del recurso de la tarea a la que se realizará la suscripción. Formato: tasks/{task_id} |