MCP Tools Reference: ces.googleapis.com

Outil : create_toolset

Crée un ensemble d'outils dans l'application donnée.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP create_toolset.

Requête curl
                  
curl --location 'https://ces.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "create_toolset",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schéma d'entrée

Message de requête pour AgentService.CreateToolset.

CreateToolsetRequest

Représentation JSON
{
  "parent": string,
  "toolsetId": string,
  "toolset": {
    object (Toolset)
  }
}
Champs
parent

string

Obligatoire. Nom de ressource de l'application dans laquelle créer un ensemble d'outils.

toolsetId

string

Facultatif. ID à utiliser pour l'ensemble d'outils, qui constituera le composant final du nom de ressource de l'ensemble d'outils. Si aucun ID n'est fourni, un ID unique est automatiquement attribué à l'ensemble d'outils.

toolset

object (Toolset)

Obligatoire. Ensemble d'outils à créer.

Ensemble d'outils

Représentation JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "timeout": string,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "executionType": enum (ExecutionType),
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field toolset_type can be only one of the following:
  "mcpToolset": {
    object (McpToolset)
  },
  "openApiToolset": {
    object (OpenApiToolset)
  },
  "connectorToolset": {
    object (ConnectorToolset)
  }
  // End of list of possible types for union field toolset_type.
}
Champs
name

string

Identifiant. Identifiant unique de l'ensemble d'outils. Format : projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Facultatif. Nom à afficher de l'ensemble d'outils. Doit être unique dans la même application.

description

string

Facultatif. Description de l'ensemble d'outils.

timeout

string (Duration format)

Facultatif. Délai d'exécution de l'ensemble d'outils. Si ce paramètre n'est pas défini, le délai d'inactivité par défaut est de 30 secondes pour les ensembles d'outils SYNCHRONOUS et de 60 secondes pour les ensembles d'outils ASYNCHRONOUS.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création de l'ensemble d'outils.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la dernière mise à jour de l'ensemble d'outils.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

ETag utilisé pour s'assurer que l'objet n'a pas été modifié lors d'une opération de lecture/modification/écriture. Si l'etag est vide, la mise à jour écrasera toutes les modifications simultanées.

executionType

enum (ExecutionType)

Facultatif. Type d'exécution des outils dans l'ensemble d'outils.

toolFakeConfig

object (ToolFakeConfig)

Facultatif. Configuration du comportement des outils en mode simulation.

Champ d'union toolset_type. Type de l'ensemble d'outils. toolset_type ne peut être qu'un des éléments suivants :
mcpToolset

object (McpToolset)

Facultatif. Ensemble d'outils contenant la liste des outils proposés par le serveur MCP.

openApiToolset

object (OpenApiToolset)

Facultatif. Ensemble d'outils contenant une liste d'outils définis par un schéma OpenAPI.

connectorToolset

object (ConnectorToolset)

Facultatif. Ensemble d'outils qui génère des outils à partir d'une connexion Integration Connectors.

McpToolset

Représentation JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
Champs
serverAddress

string

Obligatoire. Adresse du serveur MCP (par exemple, "https://example.com/mcp/"). Si le serveur est créé avec le SDK MCP, l'URL doit être suffixée par "/mcp/". Seuls les serveurs basés sur le transport HTTP Streamable sont acceptés. Pour en savoir plus, consultez https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

Facultatif. Informations d'authentification requises pour accéder aux outils et exécuter un outil sur le serveur MCP. Pour l'authentification par jeton du porteur, le jeton ne s'applique qu'à l'exécution de l'outil, et non à la liste des outils. Cela nécessite que les outils puissent être listés sans authentification.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facultatif. Configuration Annuaire des services pour VPC-SC, utilisée pour résoudre les noms de service dans un périmètre.

tlsConfig

object (TlsConfig)

Facultatif. Configuration TLS. Inclut les certificats de serveur personnalisés auxquels le client doit faire confiance.

customHeaders

map (key: string, value: string)

Facultatif. En-têtes personnalisés à envoyer dans la requête au serveur MCP. Les valeurs doivent être au format $context.variables.<name_of_variable> et peuvent être définies dans les variables de session. Pour en savoir plus, consultez https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

toolOverrides[]

object (McpToolOverride)

Facultatif. Remplacements pour les outils individuels de cet ensemble d'outils. Cela permet de remplacer des détails spécifiques tels que les descriptions ou les noms, ou d'épingler les états des outils afin qu'ils ne soient pas entièrement dynamiques.

ApiAuthentication

Représentation JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
Champs
Champ d'union auth_config. Configuration de l'authentification. auth_config ne peut être qu'un des éléments suivants :
apiKeyConfig

object (ApiKeyConfig)

Facultatif. Configuration pour l'authentification par clé API.

oauthConfig

object (OAuthConfig)

Facultatif. Configuration pour OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Facultatif. Configuration pour l'authentification par jeton d'identification générée à partir de l'agent de service CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Facultatif. Configuration pour l'authentification du compte de service.

bearerTokenConfig

object (BearerTokenConfig)

Facultatif. Configuration pour l'authentification par jeton du porteur.

ApiKeyConfig

Représentation JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Champs
keyName

string

Obligatoire. Nom du paramètre ou de l'en-tête de la clé API. Exemple : Si la requête API est "https://example.com/act?X-Api-Key=", "X-Api-Key" est le nom du paramètre.

apiKeySecretVersion

string

Obligatoire. Nom de la ressource de version secrète Secret Manager stockant la clé API. Format : projects/{project}/secrets/{secret}/versions/{version}

Remarque : Vous devez attribuer le rôle roles/secretmanager.secretAccessor à l'agent de service CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Obligatoire. Emplacement de la clé dans la requête.

OAuthConfig

Représentation JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Champs
oauthGrantType

enum (OauthGrantType)

Obligatoire. Types d'attribution OAuth.

clientId

string

Obligatoire. ID client du fournisseur OAuth.

clientSecretVersion

string

Obligatoire. Nom de la ressource de version du secret Secret Manager stockant le code secret du client. Format : projects/{project}/secrets/{secret}/versions/{version}

Remarque : Vous devez attribuer le rôle roles/secretmanager.secretAccessor à l'agent de service CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Obligatoire. Point de terminaison du jeton dans le fournisseur OAuth pour l'échange d'un jeton d'accès.

scopes[]

string

Facultatif. Champs d'application OAuth à accorder.

ServiceAccountAuthConfig

Représentation JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Champs
serviceAccount

string

Obligatoire. Adresse e-mail du compte de service utilisé pour l'authentification. CES utilise ce compte de service pour échanger un jeton d'accès, qui est ensuite envoyé dans l'en-tête Authorization de la requête.

Le compte de service doit disposer du rôle roles/iam.serviceAccountTokenCreator attribué à l'agent de service CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Facultatif. Champs d'application OAuth à accorder. Si aucune valeur n'est spécifiée, le champ d'application par défaut https://www.googleapis.com/auth/cloud-platform est utilisé.

BearerTokenConfig

Représentation JSON
{
  "token": string
}
Champs
token

string

Obligatoire. Jeton de support. Il doit respecter le format $context.variables.<name_of_variable>.

ServiceDirectoryConfig

Représentation JSON
{
  "service": string
}
Champs
service

string

Obligatoire. Nom du service Annuaire des services. Format : projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. L'emplacement de l'annuaire des services doit être identique à celui de l'application.

TlsConfig

Représentation JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Champs
caCerts[]

object (CaCert)

Obligatoire. Indique une liste de certificats CA personnalisés autorisés pour la validation HTTPS.

CaCert

Représentation JSON
{
  "displayName": string,
  "cert": string
}
Champs
displayName

string

Obligatoire. Nom des certificats CA personnalisés autorisés. Cela permet de lever toute ambiguïté concernant les certificats d'autorité de certification personnalisés.

cert

string (bytes format)

Obligatoire. Certificats CA personnalisés autorisés (au format DER) pour la validation HTTPS. Cela remplace le magasin de confiance SSL par défaut. Si ce champ est vide ou n'est pas spécifié, CES utilisera le magasin de confiance par défaut de Google pour valider les certificats. Remarque : Assurez-vous que les certificats de serveur HTTPS sont signés avec "subject alt name". Par exemple, un certificat peut être autosigné à l'aide de la commande suivante :

   openssl x509 -req -days 200 -in example.com.csr \
     -signkey example.com.key \
     -out example.com.crt \
     -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

Chaîne encodée en base64.

CustomHeadersEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

McpToolOverride

Représentation JSON
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
Champs
tool

string

Obligatoire. Nom d'origine de l'outil tel qu'il est émis par le serveur MCP.

nameOverride

string

Facultatif. Si ce nom est indiqué, l'outil l'utilise dans l'agent à la place du nom d'origine. Il est principalement utilisé comme alias si le serveur MCP propose des outils mal nommés.

descriptionOverride

string

Facultatif. Si elle est présente, cet outil utilise cette description au lieu de la description d'origine du serveur.

snapshot

object (McpToolDefinition)

Uniquement en sortie. Si cet outil est présent, il est "épinglé" et utilise les valeurs du snapshot comme valeurs de remplacement si le serveur devient temporairement indisponible ou si aucun remplacement n'est présent.

McpToolDefinition

Représentation JSON
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
Champs
description

string

Uniquement en sortie. Description de l'outil MCP. Cette valeur peut être remplacée par description_override dans McpToolOverride.

inputSchema

object (Schema)

Uniquement en sortie. Schéma des arguments d'entrée de l'outil MCP.

outputSchema

object (Schema)

Uniquement en sortie. Schéma des arguments de sortie de l'outil MCP.

Schéma

Représentation JSON
{
  "type": enum (Type),
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "description": string,
  "items": {
    object (Schema)
  },
  "nullable": boolean,
  "uniqueItems": boolean,
  "prefixItems": [
    {
      object (Schema)
    }
  ],
  "additionalProperties": {
    object (Schema)
  },
  "anyOf": [
    {
      object (Schema)
    }
  ],
  "enum": [
    string
  ],
  "default": value,
  "ref": string,
  "defs": {
    string: {
      object (Schema)
    },
    ...
  },
  "title": string,
  "minItems": string,
  "maxItems": string,

  // Union field _minimum can be only one of the following:
  "minimum": number
  // End of list of possible types for union field _minimum.

  // Union field _maximum can be only one of the following:
  "maximum": number
  // End of list of possible types for union field _maximum.
}
Champs
type

enum (Type)

Obligatoire. Type des données.

properties

map (key: string, value: object (Schema))

Facultatif. Propriétés de Type.OBJECT.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Facultatif. Propriétés requises de Type.OBJECT.

description

string

Facultatif. Description des données.

items

object (Schema)

Facultatif. Schéma des éléments de Type.ARRAY.

nullable

boolean

Facultatif. Indique si la valeur peut être nulle.

uniqueItems

boolean

Facultatif. Indique que les éléments du tableau doivent être uniques. Ne s'applique qu'à TYPE.ARRAY.

prefixItems[]

object (Schema)

Facultatif. Schémas des éléments initiaux de Type.ARRAY.

additionalProperties

object (Schema)

Facultatif. Peut être une valeur booléenne ou un objet. Contrôle la présence de propriétés supplémentaires.

anyOf[]

object (Schema)

Facultatif. La valeur doit être validée par rapport à l'un ou plusieurs des sous-schémas de la liste.

enum[]

string

Facultatif. Valeurs possibles de l'élément de type primitif avec le format enum. Exemples : 1. Nous pouvons définir la direction comme suit : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. Nous pouvons définir le numéro d'appartement comme suit : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Facultatif. Valeur par défaut des données.

ref

string

Facultatif. Permet les références indirectes entre les nœuds de schéma. La valeur doit être une référence valide à un enfant de la racine defs.

Par exemple, le schéma suivant définit une référence à un nœud de schéma nommé "Pet" :

type: object
properties:
  pet:
    ref: #/defs/Pet
defs:
  Pet:
    type: object
    properties:
      name:
        type: string

La valeur de la propriété "pet" est une référence au nœud de schéma nommé "Pet". Pour en savoir plus, consultez https://json-schema.org/understanding-json-schema/structuring.

defs

map (key: string, value: object (Schema))

Facultatif. Carte des définitions à utiliser par ref. Uniquement autorisé à la racine du schéma.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Facultatif. Titre du schéma.

minItems

string (int64 format)

Facultatif. Nombre minimal d'éléments pour Type.ARRAY.

maxItems

string (int64 format)

Facultatif. Nombre maximal d'éléments pour Type.ARRAY.

Champ d'union _minimum.

_minimum ne peut être qu'un des éléments suivants :

minimum

number

Facultatif. Valeur minimale pour Type.INTEGER et Type.NUMBER.

Champ d'union _maximum.

_maximum ne peut être qu'un des éléments suivants :

maximum

number

Facultatif. Valeur maximale pour Type.INTEGER et Type.NUMBER.

PropertiesEntry

Représentation JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Champs
key

string

value

object (Schema)

Valeur

Représentation JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Champs
Champ d'union kind. Type de valeur. kind ne peut être qu'un des éléments suivants :
nullValue

null

Représente un null JSON.

numberValue

number

Représente un nombre JSON. Ne doit pas être NaN, Infinity ni -Infinity, car ces valeurs ne sont pas acceptées dans JSON. Il ne peut pas non plus représenter de grandes valeurs Int64, car le format JSON ne les accepte généralement pas dans son type numérique.

stringValue

string

Représente une chaîne JSON.

boolValue

boolean

Représente une valeur booléenne JSON (littéral true ou false en JSON).

structValue

object (Struct format)

Représente un objet JSON.

listValue

array (ListValue format)

Représente un tableau JSON.

Struct

Représentation JSON
{
  "fields": {
    string: value,
    ...
  }
}
Champs
fields

map (key: string, value: value (Value format))

Carte non ordonnée de valeurs typées de manière dynamique.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Représentation JSON
{
  "key": string,
  "value": value
}
Champs
key

string

value

value (Value format)

ListValue

Représentation JSON
{
  "values": [
    value
  ]
}
Champs
values[]

value (Value format)

Champ répété de valeurs typées de manière dynamique.

DefsEntry

Représentation JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Champs
key

string

value

object (Schema)

OpenApiToolset

Représentation JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Champs
openApiSchema

string

Obligatoire. Schéma OpenAPI de l'ensemble d'outils.

apiAuthentication

object (ApiAuthentication)

Facultatif. Informations d'authentification requises par l'API.

tlsConfig

object (TlsConfig)

Facultatif. Configuration TLS. Inclut les certificats de serveur personnalisés

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facultatif. Configuration de l'annuaire des services.

ignoreUnknownFields

boolean

Facultatif. Si la valeur est "true", l'agent ignore les champs inconnus dans la réponse de l'API pour toutes les opérations définies dans le schéma OpenAPI.

url

string

Facultatif. URL du serveur du schéma Open API. Ce champ n'est défini dans les ensembles d'outils que dans les dépendances d'environnement lors du processus d'exportation si le schéma contient une URL de serveur. Lors du processus d'importation, si cette URL est présente dans les dépendances de l'environnement et que le schéma comporte l'espace réservé $env_var, elle remplacera l'espace réservé dans le schéma.

ConnectorToolset

Représentation JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Champs
connection

string

Obligatoire. Nom complet de la ressource de la connexion Integration Connectors référencée. Format : projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Facultatif. Configure la façon dont l'authentification est gérée dans Integration Connectors. Par défaut, une authentification d'administrateur est transmise dans les requêtes de l'API Integration Connectors. Vous pouvez la remplacer par une autre configuration d'authentification de l'utilisateur final. Remarque : La substitution de l'authentification doit être activée pour la connexion afin de pouvoir spécifier une configuration EUC ici. Sinon, la création de l'ensemble d'outils échouera. Consultez https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override.

connectorActions[]

object (Action)

Obligatoire. Liste des actions de connecteur/opérations d'entité pour lesquelles générer des outils.

EndUserAuthConfig

Représentation JSON
{

  // Union field auth_config can be only one of the following:
  "oauth2AuthCodeConfig": {
    object (Oauth2AuthCodeConfig)
  },
  "oauth2JwtBearerConfig": {
    object (Oauth2JwtBearerConfig)
  }
  // End of list of possible types for union field auth_config.
}
Champs
Champ d'union auth_config. Configuration de l'authentification. auth_config ne peut être qu'un des éléments suivants :
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Authentification par code d'autorisation OAuth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Authentification par attribution d'autorisation OAuth 2.0 avec profil JWT.

Oauth2AuthCodeConfig

Représentation JSON
{
  "oauthToken": string
}
Champs
oauthToken

string

Obligatoire. Nom du paramètre de jeton OAuth à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Représentation JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Champs
issuer

string

Obligatoire. Nom du paramètre de l'émetteur à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

subject

string

Obligatoire. Nom du paramètre d'objet à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

clientKey

string

Obligatoire. Nom du paramètre client à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

Action

Représentation JSON
{
  "inputFields": [
    string
  ],
  "outputFields": [
    string
  ],

  // Union field action_spec can be only one of the following:
  "connectionActionId": string,
  "entityOperation": {
    object (EntityOperation)
  }
  // End of list of possible types for union field action_spec.
}
Champs
inputFields[]

string

Facultatif. Champs d'entité à utiliser comme entrées pour l'opération. Si aucun champ n'est spécifié, tous les champs de l'entité seront utilisés.

outputFields[]

string

Facultatif. Champs d'entité à renvoyer à partir de l'opération. Si aucun champ n'est spécifié, tous les champs de l'entité sont renvoyés.

Champ d'union action_spec. Spécification d'une action à configurer pour que l'outil l'utilise. action_spec ne peut être qu'un des éléments suivants :
connectionActionId

string

ID d'une action de connexion que l'outil doit utiliser.

entityOperation

object (EntityOperation)

Configuration de l'opération d'entité à utiliser par l'outil.

EntityOperation

Représentation JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Champs
entityId

string

Obligatoire. ID de l'entité.

operation

enum (OperationType)

Obligatoire. Opération à effectuer sur l'entité.

Durée

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Secondes signées de la période. La valeur doit être comprise entre -315 576 000 000 et +315 576 000 000 (inclus). Remarque : Ces limites sont calculées à partir de : 60 s/min * 60 min/h * 24 h/jour * 365,25 jours/an * 10 000 ans.

nanos

integer

Fractions de secondes signées avec une précision de l'ordre de la nanoseconde pour la durée. Les durées inférieures à une seconde sont représentées par un champ seconds égal à 0 et un champ nanos positif ou négatif. Pour les durées d'une seconde ou plus, une valeur non nulle pour le champ nanos doit avoir le même signe que le champ seconds. La valeur doit être comprise entre -999 999 999 et +999 999 999 inclus.

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. La valeur doit être comprise entre 0 et 999 999 999 inclus.

ToolFakeConfig

Représentation JSON
{
  "enableFakeMode": boolean,

  // Union field tool_response can be only one of the following:
  "codeBlock": {
    object (CodeBlock)
  }
  // End of list of possible types for union field tool_response.
}
Champs
enableFakeMode

boolean

Facultatif. Indique si l'outil utilise le mode factice.

Champ d'union tool_response. La réponse est statique ou fournie par une fonction Python. tool_response ne peut être qu'un des éléments suivants :
codeBlock

object (CodeBlock)

Facultatif. Bloc de code qui sera exécuté à la place d'un véritable appel d'outil.

CodeBlock

Représentation JSON
{
  "pythonCode": string
}
Champs
pythonCode

string

Obligatoire. Code Python qui sera appelé en mode faux outil. Signature de la fonction Python attendue : pour intercepter tous les appels d'outil : def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: pour intercepter un appel d'outil spécifique : def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: si la fonction renvoie "None", le véritable outil sera appelé à la place.

RequestLocation

Emplacement de la clé API dans la requête.

Enums
REQUEST_LOCATION_UNSPECIFIED Non spécifié. Cette valeur ne doit pas être utilisée.
HEADER Représente la clé dans l'en-tête HTTP.
QUERY_STRING Représente la clé dans la chaîne de requête.

OauthGrantType

Types d'attribution OAuth. Seule l'attribution d'identifiants client est acceptée.

Enums
OAUTH_GRANT_TYPE_UNSPECIFIED Non spécifié. La valeur par défaut est CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL Représente le flux d'identifiants client.

Type

Types de données OpenAPI.

Enums
TYPE_UNSPECIFIED Type non spécifié
STRING Type de chaîne.
INTEGER Type entier.
NUMBER Type de nombre.
BOOLEAN Type booléen.
OBJECT Type d'objet.
ARRAY Type de tableau.

NullValue

Représente un null JSON.

NullValue est une sentinelle qui utilise une énumération avec une seule valeur pour représenter la valeur nulle de l'union de type Value.

Un champ de type NullValue avec une valeur autre que 0 est considéré comme non valide. La plupart des sérialiseurs ProtoJSON émettent un Value avec un null_value défini comme null JSON, quelle que soit la valeur entière, et effectuent donc un aller-retour vers une valeur 0.

Enums
NULL_VALUE Valeur nulle.

OperationType

Opération à effectuer sur l'entité.

Enums
OPERATION_TYPE_UNSPECIFIED Type d'opération non spécifié. Non valide. La création ou la mise à jour de ConnectorTool échouera.
LIST Opération de liste.
GET Obtenir une opération.
CREATE Opération de création.
UPDATE Opération de mise à jour.
DELETE Supprimer une opération.

ExecutionType

Type d'exécution de l'outil ou de l'ensemble d'outils.

Enums
EXECUTION_TYPE_UNSPECIFIED Le type d'exécution n'est pas spécifié. Prend la valeur SYNCHRONOUS par défaut s'il n'est pas spécifié.
SYNCHRONOUS L'outil est exécuté de manière synchrone. La session est bloquée jusqu'à ce que l'outil renvoie une réponse.
ASYNCHRONOUS L'outil est exécuté de manière asynchrone. La session se poursuivra pendant l'exécution de l'outil.

Schéma de sortie

Un ensemble d'outils représente un groupe d'outils gérés de manière dynamique et pouvant être utilisés par l'agent.

Ensemble d'outils

Représentation JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "timeout": string,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "executionType": enum (ExecutionType),
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field toolset_type can be only one of the following:
  "mcpToolset": {
    object (McpToolset)
  },
  "openApiToolset": {
    object (OpenApiToolset)
  },
  "connectorToolset": {
    object (ConnectorToolset)
  }
  // End of list of possible types for union field toolset_type.
}
Champs
name

string

Identifiant. Identifiant unique de l'ensemble d'outils. Format : projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Facultatif. Nom à afficher de l'ensemble d'outils. Doit être unique dans la même application.

description

string

Facultatif. Description de l'ensemble d'outils.

timeout

string (Duration format)

Facultatif. Délai d'exécution de l'ensemble d'outils. Si ce paramètre n'est pas défini, le délai d'inactivité par défaut est de 30 secondes pour les ensembles d'outils SYNCHRONOUS et de 60 secondes pour les ensembles d'outils ASYNCHRONOUS.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création de l'ensemble d'outils.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la dernière mise à jour de l'ensemble d'outils.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

ETag utilisé pour s'assurer que l'objet n'a pas été modifié lors d'une opération de lecture/modification/écriture. Si l'etag est vide, la mise à jour écrasera toutes les modifications simultanées.

executionType

enum (ExecutionType)

Facultatif. Type d'exécution des outils dans l'ensemble d'outils.

toolFakeConfig

object (ToolFakeConfig)

Facultatif. Configuration du comportement des outils en mode simulation.

Champ d'union toolset_type. Type de l'ensemble d'outils. toolset_type ne peut être qu'un des éléments suivants :
mcpToolset

object (McpToolset)

Facultatif. Ensemble d'outils contenant la liste des outils proposés par le serveur MCP.

openApiToolset

object (OpenApiToolset)

Facultatif. Ensemble d'outils contenant une liste d'outils définis par un schéma OpenAPI.

connectorToolset

object (ConnectorToolset)

Facultatif. Ensemble d'outils qui génère des outils à partir d'une connexion Integration Connectors.

McpToolset

Représentation JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
Champs
serverAddress

string

Obligatoire. Adresse du serveur MCP (par exemple, "https://example.com/mcp/"). Si le serveur est créé avec le SDK MCP, l'URL doit être suffixée par "/mcp/". Seuls les serveurs basés sur le transport HTTP Streamable sont acceptés. Pour en savoir plus, consultez https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

Facultatif. Informations d'authentification requises pour accéder aux outils et exécuter un outil sur le serveur MCP. Pour l'authentification par jeton du porteur, le jeton ne s'applique qu'à l'exécution de l'outil, et non à la liste des outils. Cela nécessite que les outils puissent être listés sans authentification.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facultatif. Configuration Annuaire des services pour VPC-SC, utilisée pour résoudre les noms de service dans un périmètre.

tlsConfig

object (TlsConfig)

Facultatif. Configuration TLS. Inclut les certificats de serveur personnalisés auxquels le client doit faire confiance.

customHeaders

map (key: string, value: string)

Facultatif. En-têtes personnalisés à envoyer dans la requête au serveur MCP. Les valeurs doivent être au format $context.variables.<name_of_variable> et peuvent être définies dans les variables de session. Pour en savoir plus, consultez https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

toolOverrides[]

object (McpToolOverride)

Facultatif. Remplacements pour les outils individuels de cet ensemble d'outils. Cela permet de remplacer des détails spécifiques tels que les descriptions ou les noms, ou d'épingler les états des outils afin qu'ils ne soient pas entièrement dynamiques.

ApiAuthentication

Représentation JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
Champs
Champ d'union auth_config. Configuration de l'authentification. auth_config ne peut être qu'un des éléments suivants :
apiKeyConfig

object (ApiKeyConfig)

Facultatif. Configuration pour l'authentification par clé API.

oauthConfig

object (OAuthConfig)

Facultatif. Configuration pour OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Facultatif. Configuration pour l'authentification par jeton d'identification générée à partir de l'agent de service CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Facultatif. Configuration pour l'authentification du compte de service.

bearerTokenConfig

object (BearerTokenConfig)

Facultatif. Configuration pour l'authentification par jeton du porteur.

ApiKeyConfig

Représentation JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Champs
keyName

string

Obligatoire. Nom du paramètre ou de l'en-tête de la clé API. Exemple : Si la requête API est "https://example.com/act?X-Api-Key=", "X-Api-Key" est le nom du paramètre.

apiKeySecretVersion

string

Obligatoire. Nom de la ressource de version secrète Secret Manager stockant la clé API. Format : projects/{project}/secrets/{secret}/versions/{version}

Remarque : Vous devez attribuer le rôle roles/secretmanager.secretAccessor à l'agent de service CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Obligatoire. Emplacement de la clé dans la requête.

OAuthConfig

Représentation JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Champs
oauthGrantType

enum (OauthGrantType)

Obligatoire. Types d'attribution OAuth.

clientId

string

Obligatoire. ID client du fournisseur OAuth.

clientSecretVersion

string

Obligatoire. Nom de la ressource de version du secret Secret Manager stockant le code secret du client. Format : projects/{project}/secrets/{secret}/versions/{version}

Remarque : Vous devez attribuer le rôle roles/secretmanager.secretAccessor à l'agent de service CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Obligatoire. Point de terminaison du jeton dans le fournisseur OAuth pour l'échange d'un jeton d'accès.

scopes[]

string

Facultatif. Champs d'application OAuth à accorder.

ServiceAccountAuthConfig

Représentation JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Champs
serviceAccount

string

Obligatoire. Adresse e-mail du compte de service utilisé pour l'authentification. CES utilise ce compte de service pour échanger un jeton d'accès, qui est ensuite envoyé dans l'en-tête Authorization de la requête.

Le compte de service doit disposer du rôle roles/iam.serviceAccountTokenCreator attribué à l'agent de service CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Facultatif. Champs d'application OAuth à accorder. Si aucune valeur n'est spécifiée, le champ d'application par défaut https://www.googleapis.com/auth/cloud-platform est utilisé.

BearerTokenConfig

Représentation JSON
{
  "token": string
}
Champs
token

string

Obligatoire. Jeton de support. Il doit respecter le format $context.variables.<name_of_variable>.

ServiceDirectoryConfig

Représentation JSON
{
  "service": string
}
Champs
service

string

Obligatoire. Nom du service Annuaire des services. Format : projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. L'emplacement de l'annuaire des services doit être identique à celui de l'application.

TlsConfig

Représentation JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Champs
caCerts[]

object (CaCert)

Obligatoire. Indique une liste de certificats CA personnalisés autorisés pour la validation HTTPS.

CaCert

Représentation JSON
{
  "displayName": string,
  "cert": string
}
Champs
displayName

string

Obligatoire. Nom des certificats CA personnalisés autorisés. Cela permet de lever toute ambiguïté concernant les certificats d'autorité de certification personnalisés.

cert

string (bytes format)

Obligatoire. Certificats CA personnalisés autorisés (au format DER) pour la validation HTTPS. Cela remplace le magasin de confiance SSL par défaut. Si ce champ est vide ou n'est pas spécifié, CES utilisera le magasin de confiance par défaut de Google pour valider les certificats. Remarque : Assurez-vous que les certificats de serveur HTTPS sont signés avec "subject alt name". Par exemple, un certificat peut être autosigné à l'aide de la commande suivante :

   openssl x509 -req -days 200 -in example.com.csr \
     -signkey example.com.key \
     -out example.com.crt \
     -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

Chaîne encodée en base64.

CustomHeadersEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

McpToolOverride

Représentation JSON
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
Champs
tool

string

Obligatoire. Nom d'origine de l'outil tel qu'il est émis par le serveur MCP.

nameOverride

string

Facultatif. Si ce nom est indiqué, l'outil l'utilise dans l'agent à la place du nom d'origine. Il est principalement utilisé comme alias si le serveur MCP propose des outils mal nommés.

descriptionOverride

string

Facultatif. Si elle est présente, cet outil utilise cette description au lieu de la description d'origine du serveur.

snapshot

object (McpToolDefinition)

Uniquement en sortie. Si cet outil est présent, il est "épinglé" et utilise les valeurs du snapshot comme valeurs de remplacement si le serveur devient temporairement indisponible ou si aucun remplacement n'est présent.

McpToolDefinition

Représentation JSON
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
Champs
description

string

Uniquement en sortie. Description de l'outil MCP. Cette valeur peut être remplacée par description_override dans McpToolOverride.

inputSchema

object (Schema)

Uniquement en sortie. Schéma des arguments d'entrée de l'outil MCP.

outputSchema

object (Schema)

Uniquement en sortie. Schéma des arguments de sortie de l'outil MCP.

Schéma

Représentation JSON
{
  "type": enum (Type),
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "description": string,
  "items": {
    object (Schema)
  },
  "nullable": boolean,
  "uniqueItems": boolean,
  "prefixItems": [
    {
      object (Schema)
    }
  ],
  "additionalProperties": {
    object (Schema)
  },
  "anyOf": [
    {
      object (Schema)
    }
  ],
  "enum": [
    string
  ],
  "default": value,
  "ref": string,
  "defs": {
    string: {
      object (Schema)
    },
    ...
  },
  "title": string,
  "minItems": string,
  "maxItems": string,

  // Union field _minimum can be only one of the following:
  "minimum": number
  // End of list of possible types for union field _minimum.

  // Union field _maximum can be only one of the following:
  "maximum": number
  // End of list of possible types for union field _maximum.
}
Champs
type

enum (Type)

Obligatoire. Type des données.

properties

map (key: string, value: object (Schema))

Facultatif. Propriétés de Type.OBJECT.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Facultatif. Propriétés requises de Type.OBJECT.

description

string

Facultatif. Description des données.

items

object (Schema)

Facultatif. Schéma des éléments de Type.ARRAY.

nullable

boolean

Facultatif. Indique si la valeur peut être nulle.

uniqueItems

boolean

Facultatif. Indique que les éléments du tableau doivent être uniques. Ne s'applique qu'à TYPE.ARRAY.

prefixItems[]

object (Schema)

Facultatif. Schémas des éléments initiaux de Type.ARRAY.

additionalProperties

object (Schema)

Facultatif. Peut être une valeur booléenne ou un objet. Contrôle la présence de propriétés supplémentaires.

anyOf[]

object (Schema)

Facultatif. La valeur doit être validée par rapport à l'un ou plusieurs des sous-schémas de la liste.

enum[]

string

Facultatif. Valeurs possibles de l'élément de type primitif avec le format enum. Exemples : 1. Nous pouvons définir la direction comme suit : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. Nous pouvons définir le numéro d'appartement comme suit : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Facultatif. Valeur par défaut des données.

ref

string

Facultatif. Permet les références indirectes entre les nœuds de schéma. La valeur doit être une référence valide à un enfant de la racine defs.

Par exemple, le schéma suivant définit une référence à un nœud de schéma nommé "Pet" :

type: object
properties:
  pet:
    ref: #/defs/Pet
defs:
  Pet:
    type: object
    properties:
      name:
        type: string

La valeur de la propriété "pet" est une référence au nœud de schéma nommé "Pet". Pour en savoir plus, consultez https://json-schema.org/understanding-json-schema/structuring.

defs

map (key: string, value: object (Schema))

Facultatif. Carte des définitions à utiliser par ref. Uniquement autorisé à la racine du schéma.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Facultatif. Titre du schéma.

minItems

string (int64 format)

Facultatif. Nombre minimal d'éléments pour Type.ARRAY.

maxItems

string (int64 format)

Facultatif. Nombre maximal d'éléments pour Type.ARRAY.

Champ d'union _minimum.

_minimum ne peut être qu'un des éléments suivants :

minimum

number

Facultatif. Valeur minimale pour Type.INTEGER et Type.NUMBER.

Champ d'union _maximum.

_maximum ne peut être qu'un des éléments suivants :

maximum

number

Facultatif. Valeur maximale pour Type.INTEGER et Type.NUMBER.

PropertiesEntry

Représentation JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Champs
key

string

value

object (Schema)

Valeur

Représentation JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Champs
Champ d'union kind. Type de valeur. kind ne peut être qu'un des éléments suivants :
nullValue

null

Représente un null JSON.

numberValue

number

Représente un nombre JSON. Ne doit pas être NaN, Infinity ni -Infinity, car ces valeurs ne sont pas acceptées dans JSON. Il ne peut pas non plus représenter de grandes valeurs Int64, car le format JSON ne les accepte généralement pas dans son type numérique.

stringValue

string

Représente une chaîne JSON.

boolValue

boolean

Représente une valeur booléenne JSON (littéral true ou false en JSON).

structValue

object (Struct format)

Représente un objet JSON.

listValue

array (ListValue format)

Représente un tableau JSON.

Struct

Représentation JSON
{
  "fields": {
    string: value,
    ...
  }
}
Champs
fields

map (key: string, value: value (Value format))

Carte non ordonnée de valeurs typées de manière dynamique.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Représentation JSON
{
  "key": string,
  "value": value
}
Champs
key

string

value

value (Value format)

ListValue

Représentation JSON
{
  "values": [
    value
  ]
}
Champs
values[]

value (Value format)

Champ répété de valeurs typées de manière dynamique.

DefsEntry

Représentation JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Champs
key

string

value

object (Schema)

OpenApiToolset

Représentation JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Champs
openApiSchema

string

Obligatoire. Schéma OpenAPI de l'ensemble d'outils.

apiAuthentication

object (ApiAuthentication)

Facultatif. Informations d'authentification requises par l'API.

tlsConfig

object (TlsConfig)

Facultatif. Configuration TLS. Inclut les certificats de serveur personnalisés

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facultatif. Configuration de l'annuaire des services.

ignoreUnknownFields

boolean

Facultatif. Si la valeur est "true", l'agent ignore les champs inconnus dans la réponse de l'API pour toutes les opérations définies dans le schéma OpenAPI.

url

string

Facultatif. URL du serveur du schéma Open API. Ce champ n'est défini dans les ensembles d'outils que dans les dépendances d'environnement lors du processus d'exportation si le schéma contient une URL de serveur. Lors du processus d'importation, si cette URL est présente dans les dépendances de l'environnement et que le schéma comporte l'espace réservé $env_var, elle remplacera l'espace réservé dans le schéma.

ConnectorToolset

Représentation JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Champs
connection

string

Obligatoire. Nom complet de la ressource de la connexion Integration Connectors référencée. Format : projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Facultatif. Configure la façon dont l'authentification est gérée dans Integration Connectors. Par défaut, une authentification d'administrateur est transmise dans les requêtes de l'API Integration Connectors. Vous pouvez la remplacer par une autre configuration d'authentification de l'utilisateur final. Remarque : La substitution de l'authentification doit être activée pour la connexion afin de pouvoir spécifier une configuration EUC ici. Sinon, la création de l'ensemble d'outils échouera. Consultez https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override.

connectorActions[]

object (Action)

Obligatoire. Liste des actions de connecteur/opérations d'entité pour lesquelles générer des outils.

EndUserAuthConfig

Représentation JSON
{

  // Union field auth_config can be only one of the following:
  "oauth2AuthCodeConfig": {
    object (Oauth2AuthCodeConfig)
  },
  "oauth2JwtBearerConfig": {
    object (Oauth2JwtBearerConfig)
  }
  // End of list of possible types for union field auth_config.
}
Champs
Champ d'union auth_config. Configuration de l'authentification. auth_config ne peut être qu'un des éléments suivants :
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Authentification par code d'autorisation OAuth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Authentification par attribution d'autorisation OAuth 2.0 avec profil JWT.

Oauth2AuthCodeConfig

Représentation JSON
{
  "oauthToken": string
}
Champs
oauthToken

string

Obligatoire. Nom du paramètre de jeton OAuth à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Représentation JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Champs
issuer

string

Obligatoire. Nom du paramètre de l'émetteur à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

subject

string

Obligatoire. Nom du paramètre d'objet à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

clientKey

string

Obligatoire. Nom du paramètre client à transmettre. Il doit respecter le format $context.variables.<name_of_variable>.

Action

Représentation JSON
{
  "inputFields": [
    string
  ],
  "outputFields": [
    string
  ],

  // Union field action_spec can be only one of the following:
  "connectionActionId": string,
  "entityOperation": {
    object (EntityOperation)
  }
  // End of list of possible types for union field action_spec.
}
Champs
inputFields[]

string

Facultatif. Champs d'entité à utiliser comme entrées pour l'opération. Si aucun champ n'est spécifié, tous les champs de l'entité seront utilisés.

outputFields[]

string

Facultatif. Champs d'entité à renvoyer à partir de l'opération. Si aucun champ n'est spécifié, tous les champs de l'entité sont renvoyés.

Champ d'union action_spec. Spécification d'une action à configurer pour que l'outil l'utilise. action_spec ne peut être qu'un des éléments suivants :
connectionActionId

string

ID d'une action de connexion que l'outil doit utiliser.

entityOperation

object (EntityOperation)

Configuration de l'opération d'entité à utiliser par l'outil.

EntityOperation

Représentation JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Champs
entityId

string

Obligatoire. ID de l'entité.

operation

enum (OperationType)

Obligatoire. Opération à effectuer sur l'entité.

Durée

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Secondes signées de la période. La valeur doit être comprise entre -315 576 000 000 et +315 576 000 000 (inclus). Remarque : Ces limites sont calculées à partir de : 60 s/min * 60 min/h * 24 h/jour * 365,25 jours/an * 10 000 ans.

nanos

integer

Fractions de secondes signées avec une précision de l'ordre de la nanoseconde pour la durée. Les durées inférieures à une seconde sont représentées par un champ seconds égal à 0 et un champ nanos positif ou négatif. Pour les durées d'une seconde ou plus, une valeur non nulle pour le champ nanos doit avoir le même signe que le champ seconds. La valeur doit être comprise entre -999 999 999 et +999 999 999 inclus.

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. La valeur doit être comprise entre 0 et 999 999 999 inclus.

ToolFakeConfig

Représentation JSON
{
  "enableFakeMode": boolean,

  // Union field tool_response can be only one of the following:
  "codeBlock": {
    object (CodeBlock)
  }
  // End of list of possible types for union field tool_response.
}
Champs
enableFakeMode

boolean

Facultatif. Indique si l'outil utilise le mode factice.

Champ d'union tool_response. La réponse est statique ou fournie par une fonction Python. tool_response ne peut être qu'un des éléments suivants :
codeBlock

object (CodeBlock)

Facultatif. Bloc de code qui sera exécuté à la place d'un véritable appel d'outil.

CodeBlock

Représentation JSON
{
  "pythonCode": string
}
Champs
pythonCode

string

Obligatoire. Code Python qui sera appelé en mode faux outil. Signature de la fonction Python attendue : pour intercepter tous les appels d'outil : def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: pour intercepter un appel d'outil spécifique : def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: si la fonction renvoie "None", le véritable outil sera appelé à la place.

RequestLocation

Emplacement de la clé API dans la requête.

Enums
REQUEST_LOCATION_UNSPECIFIED Non spécifié. Cette valeur ne doit pas être utilisée.
HEADER Représente la clé dans l'en-tête HTTP.
QUERY_STRING Représente la clé dans la chaîne de requête.

OauthGrantType

Types d'attribution OAuth. Seule l'attribution d'identifiants client est acceptée.

Enums
OAUTH_GRANT_TYPE_UNSPECIFIED Non spécifié. La valeur par défaut est CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL Représente le flux d'identifiants client.

Type

Types de données OpenAPI.

Enums
TYPE_UNSPECIFIED Type non spécifié
STRING Type de chaîne.
INTEGER Type entier.
NUMBER Type de nombre.
BOOLEAN Type booléen.
OBJECT Type d'objet.
ARRAY Type de tableau.

NullValue

Représente un null JSON.

NullValue est une sentinelle qui utilise une énumération avec une seule valeur pour représenter la valeur nulle de l'union de type Value.

Un champ de type NullValue avec une valeur autre que 0 est considéré comme non valide. La plupart des sérialiseurs ProtoJSON émettent un Value avec un null_value défini comme null JSON, quelle que soit la valeur entière, et effectuent donc un aller-retour vers une valeur 0.

Enums
NULL_VALUE Valeur nulle.

OperationType

Opération à effectuer sur l'entité.

Enums
OPERATION_TYPE_UNSPECIFIED Type d'opération non spécifié. Non valide. La création ou la mise à jour de ConnectorTool échouera.
LIST Opération de liste.
GET Obtenir une opération.
CREATE Opération de création.
UPDATE Opération de mise à jour.
DELETE Supprimer une opération.

ExecutionType

Type d'exécution de l'outil ou de l'ensemble d'outils.

Enums
EXECUTION_TYPE_UNSPECIFIED Le type d'exécution n'est pas spécifié. Prend la valeur SYNCHRONOUS par défaut s'il n'est pas spécifié.
SYNCHRONOUS L'outil est exécuté de manière synchrone. La session est bloquée jusqu'à ce que l'outil renvoie une réponse.
ASYNCHRONOUS L'outil est exécuté de manière asynchrone. La session se poursuivra pendant l'exécution de l'outil.

Annotations d'outils

Indication de destruction : ✅ | Indication d'idempotence : ❌ | Indication de lecture seule : ❌ | Indication de monde ouvert : ❌