MCP Tools Reference: ces.googleapis.com

Alat: create_toolset

Membuat toolset baru di aplikasi yang ditentukan.

Contoh berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP create_toolset.

Permintaan 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
}'
                

Skema Input

Pesan permintaan untuk AgentService.CreateToolset.

CreateToolsetRequest

Representasi JSON
{
  "parent": string,
  "toolsetId": string,
  "toolset": {
    object (Toolset)
  }
}
Kolom
parent

string

Wajib. Nama resource aplikasi tempat membuat toolset.

toolsetId

string

Opsional. ID yang akan digunakan untuk toolset, yang akan menjadi komponen akhir dari nama resource toolset. Jika tidak diberikan, ID unik akan otomatis ditetapkan untuk toolset.

toolset

object (Toolset)

Wajib. Kumpulan alat yang akan dibuat.

Toolset

Representasi 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.
}
Kolom
name

string

ID. ID unik toolset. Format: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Opsional. Nama tampilan toolset. Harus unik dalam aplikasi yang sama.

description

string

Opsional. Deskripsi toolset.

timeout

string (Duration format)

Opsional. Waktu tunggu untuk eksekusi toolset. Jika tidak ditetapkan, waktu tunggu default adalah 30 detik untuk toolset SYNCHRONOUS dan 60 detik untuk toolset ASYNCHRONOUS.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat toolset dibuat.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat toolset terakhir diperbarui.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

etag

string

ETag yang digunakan untuk memastikan objek tidak berubah selama operasi baca-ubah-tulis. Jika etag kosong, pembaruan akan menimpa perubahan serentak.

executionType

enum (ExecutionType)

Opsional. Jenis eksekusi alat dalam toolset.

toolFakeConfig

object (ToolFakeConfig)

Opsional. Konfigurasi untuk perilaku alat dalam mode palsu.

Kolom union toolset_type. Jenis toolset. toolset_type hanya ada berupa salah satu diantara berikut:
mcpToolset

object (McpToolset)

Opsional. Toolset yang berisi daftar alat yang ditawarkan oleh server MCP.

openApiToolset

object (OpenApiToolset)

Opsional. Toolset yang berisi daftar alat yang ditentukan oleh skema OpenAPI.

connectorToolset

object (ConnectorToolset)

Opsional. Kumpulan alat yang membuat alat dari Koneksi Integration Connectors.

McpToolset

Representasi JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
Kolom
serverAddress

string

Wajib. Alamat server MCP, misalnya, "https://example.com/mcp/". Jika server dibangun dengan MCP SDK, URL harus memiliki akhiran "/mcp/". Hanya server berbasis transport HTTP yang dapat di-streaming yang didukung. Lihat https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http untuk mengetahui detail selengkapnya.

apiAuthentication

object (ApiAuthentication)

Opsional. Informasi autentikasi yang diperlukan untuk mengakses alat dan menjalankan alat terhadap server MCP. Untuk autentikasi token pembawa, token hanya berlaku untuk eksekusi alat, bukan untuk alat listingan. Hal ini mengharuskan alat dapat dicantumkan tanpa autentikasi.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opsional. Konfigurasi Service Directory untuk VPC-SC, yang digunakan untuk menyelesaikan nama layanan dalam perimeter.

tlsConfig

object (TlsConfig)

Opsional. Konfigurasi TLS. Mencakup sertifikat server kustom yang harus dipercaya oleh klien.

customHeaders

map (key: string, value: string)

Opsional. Header kustom yang akan dikirim dalam permintaan ke server MCP. Nilai harus dalam format $context.variables.<name_of_variable> dan dapat ditetapkan dalam variabel sesi. Lihat https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection untuk mengetahui detail selengkapnya.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

toolOverrides[]

object (McpToolOverride)

Opsional. Penggantian untuk setiap alat dalam set alat ini. Hal ini memungkinkan penggantian detail tertentu seperti deskripsi, nama, atau menyematkan status alat sehingga tidak sepenuhnya dinamis.

ApiAuthentication

Representasi 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.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
apiKeyConfig

object (ApiKeyConfig)

Opsional. Konfigurasi untuk autentikasi kunci API.

oauthConfig

object (OAuthConfig)

Opsional. Konfigurasi untuk OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opsional. Konfigurasi untuk autentikasi token ID yang dibuat dari agen layanan CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opsional. Konfigurasi untuk autentikasi akun layanan.

bearerTokenConfig

object (BearerTokenConfig)

Opsional. Konfigurasi untuk autentikasi token pembawa.

ApiKeyConfig

Representasi JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Kolom
keyName

string

Wajib. Nama parameter atau nama header kunci API. Misalnya, Jika permintaan API adalah "https://example.com/act?X-Api-Key=", "X-Api-Key" akan menjadi nama parameter.

apiKeySecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan kunci API. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Wajib. Lokasi kunci dalam permintaan.

OAuthConfig

Representasi JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Kolom
oauthGrantType

enum (OauthGrantType)

Wajib. Jenis pemberian izin OAuth.

clientId

string

Wajib. ID klien dari penyedia OAuth.

clientSecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan rahasia klien. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Wajib. Endpoint token di penyedia OAuth untuk ditukar dengan token akses.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan.

ServiceAccountAuthConfig

Representasi JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Kolom
serviceAccount

string

Wajib. Alamat email akun layanan yang digunakan untuk autentikasi. CES menggunakan akun layanan ini untuk menukar token akses dan token akses tersebut kemudian dikirim di header Authorization permintaan.

Akun layanan harus memiliki peran roles/iam.serviceAccountTokenCreator yang diberikan kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan. Jika tidak ditentukan, cakupan default https://www.googleapis.com/auth/cloud-platform akan digunakan.

BearerTokenConfig

Representasi JSON
{
  "token": string
}
Kolom
token

string

Wajib. Token pemilik. Harus dalam format $context.variables.<name_of_variable>.

ServiceDirectoryConfig

Representasi JSON
{
  "service": string
}
Kolom
service

string

Wajib. Nama layanan Service Directory. Format: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Lokasi direktori layanan harus sama dengan lokasi aplikasi.

TlsConfig

Representasi JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Kolom
caCerts[]

object (CaCert)

Wajib. Menentukan daftar sertifikat CA kustom yang diizinkan untuk verifikasi HTTPS.

CaCert

Representasi JSON
{
  "displayName": string,
  "cert": string
}
Kolom
displayName

string

Wajib. Nama sertifikat CA kustom yang diizinkan. Ini dapat digunakan untuk membedakan sertifikat CA kustom.

cert

string (bytes format)

Wajib. Sertifikat CA kustom yang diizinkan (dalam format DER) untuk verifikasi HTTPS. Tindakan ini akan menggantikan trust store SSL default. Jika kosong atau tidak ditentukan, CES akan menggunakan penyimpanan tepercaya default Google untuk memverifikasi sertifikat. Catatan: Pastikan sertifikat server HTTPS ditandatangani dengan "subject alt name". Misalnya, sertifikat dapat ditandatangani sendiri menggunakan perintah berikut:

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

String berenkode base64.

CustomHeadersEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

McpToolOverride

Representasi JSON
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
Kolom
tool

string

Wajib. Nama asli alat saat dikeluarkan oleh server MCP.

nameOverride

string

Opsional. Jika ada, alat ini menggunakan nama ini di Agen, bukan nama asli. Ini terutama digunakan sebagai alias jika server MCP menawarkan alat yang namanya kurang baik.

descriptionOverride

string

Opsional. Jika ada, alat ini akan menggunakan deskripsi ini, bukan deskripsi asli dari server.

snapshot

object (McpToolDefinition)

Hanya output. Jika ada, alat ini akan "Disematkan" dan menggunakan nilai snapshot sebagai penggantian jika server tidak tersedia untuk sementara atau jika tidak ada Penggantian.

McpToolDefinition

Representasi JSON
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
Kolom
description

string

Hanya output. Deskripsi alat MCP. Nilai ini dapat diganti oleh description_override di McpToolOverride.

inputSchema

object (Schema)

Hanya output. Skema argumen input alat MCP.

outputSchema

object (Schema)

Hanya output. Skema argumen output alat MCP.

Skema

Representasi 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.
}
Kolom
type

enum (Type)

Wajib. Jenis data.

properties

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

Opsional. Properti Type.OBJECT.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Opsional. Properti wajib Type.OBJECT.

description

string

Opsional. Deskripsi data.

items

object (Schema)

Opsional. Skema elemen Type.ARRAY.

nullable

boolean

Opsional. Menunjukkan apakah nilai boleh berupa null.

uniqueItems

boolean

Opsional. Menunjukkan bahwa item dalam array harus unik. Hanya berlaku untuk TYPE.ARRAY.

prefixItems[]

object (Schema)

Opsional. Skema elemen awal Type.ARRAY.

additionalProperties

object (Schema)

Opsional. Dapat berupa boolean atau objek, mengontrol keberadaan properti tambahan.

anyOf[]

object (Schema)

Opsional. Nilai harus divalidasi terhadap salah satu (satu atau beberapa) subskema dalam daftar.

enum[]

string

Opsional. Kemungkinan nilai elemen jenis primitif dengan format enum. Contoh: 1. Kita dapat menentukan arah sebagai : {type:STRING, format:enum, enum:["TIMUR", NORTH", "SELATAN", "BARAT"]} 2. Kita dapat menentukan nomor apartemen sebagai : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Opsional. Nilai default data.

ref

string

Opsional. Memungkinkan referensi tidak langsung antar-node skema. Nilai harus berupa referensi yang valid ke turunan defs akar.

Misalnya, skema berikut menentukan referensi ke node skema bernama "Pet":

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

Nilai properti "pet" adalah referensi ke node skema bernama "Pet". Lihat detailnya di https://json-schema.org/understanding-json-schema/structuring.

defs

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

Opsional. Peta definisi untuk digunakan oleh ref. Hanya diizinkan di root skema.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Opsional. Judul skema.

minItems

string (int64 format)

Opsional. Jumlah minimum elemen untuk Type.ARRAY.

maxItems

string (int64 format)

Opsional. Jumlah maksimum elemen untuk Type.ARRAY.

Kolom union _minimum.

_minimum hanya dapat berupa salah satu dari hal berikut:

minimum

number

Opsional. Nilai minimum untuk Type.INTEGER dan Type.NUMBER.

Kolom union _maximum.

_maximum hanya dapat berupa salah satu dari hal berikut:

maximum

number

Opsional. Nilai maksimum untuk Type.INTEGER dan Type.NUMBER.

PropertiesEntry

Representasi JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Kolom
key

string

value

object (Schema)

Nilai

Representasi 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.
}
Kolom
Kolom union kind. Jenis nilai. kind hanya ada berupa salah satu diantara berikut:
nullValue

null

Mewakili JSON null.

numberValue

number

Mewakili angka JSON. Tidak boleh NaN, Infinity, atau -Infinity, karena tidak didukung dalam JSON. Hal ini juga tidak dapat merepresentasikan nilai Int64 besar, karena format JSON umumnya tidak mendukungnya dalam jenis angka.

stringValue

string

Mewakili string JSON.

boolValue

boolean

Mewakili boolean JSON (literal true atau false dalam JSON).

structValue

object (Struct format)

Mewakili objek JSON.

listValue

array (ListValue format)

Mewakili array JSON.

Struct

Representasi JSON
{
  "fields": {
    string: value,
    ...
  }
}
Kolom
fields

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

Peta nilai yang diketik secara dinamis dan tidak berurutan.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representasi JSON
{
  "key": string,
  "value": value
}
Kolom
key

string

value

value (Value format)

ListValue

Representasi JSON
{
  "values": [
    value
  ]
}
Kolom
values[]

value (Value format)

Kolom berulang dari nilai yang diketik secara dinamis.

DefsEntry

Representasi JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Kolom
key

string

value

object (Schema)

OpenApiToolset

Representasi JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Kolom
openApiSchema

string

Wajib. Skema OpenAPI toolset.

apiAuthentication

object (ApiAuthentication)

Opsional. Informasi autentikasi yang diperlukan oleh API.

tlsConfig

object (TlsConfig)

Opsional. Konfigurasi TLS. Mencakup sertifikat server kustom

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opsional. Konfigurasi Direktori Layanan.

ignoreUnknownFields

boolean

Opsional. Jika benar (true), agen akan mengabaikan kolom yang tidak diketahui dalam respons API untuk semua operasi yang ditentukan dalam skema OpenAPI.

url

string

Opsional. URL server skema Open API. Kolom ini hanya ditetapkan di toolset dalam dependensi lingkungan selama proses ekspor jika skema berisi URL server. Selama proses impor, jika URL ini ada dalam dependensi lingkungan dan skema memiliki placeholder $env_var, URL ini akan menggantikan placeholder dalam skema.

ConnectorToolset

Representasi JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Kolom
connection

string

Wajib. Nama resource lengkap Koneksi Integration Connectors yang dirujuk. Format: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Opsional. Mengonfigurasi cara penanganan autentikasi di Integration Connectors. Secara default, autentikasi admin diteruskan dalam permintaan API Integration Connectors. Anda dapat menggantinya dengan konfigurasi autentikasi pengguna akhir yang berbeda. Catatan: Koneksi harus mengaktifkan penggantian autentikasi agar dapat menentukan konfigurasi EUC di sini. Jika tidak, pembuatan Toolset akan gagal. Lihat: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

Wajib. Daftar tindakan konektor/operasi entitas untuk membuat alat.

EndUserAuthConfig

Representasi 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.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autentikasi Kode Otorisasi Oauth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autentikasi Pemberian Otorisasi OAuth 2.0 Profil JWT.

Oauth2AuthCodeConfig

Representasi JSON
{
  "oauthToken": string
}
Kolom
oauthToken

string

Wajib. Nama parameter token OAuth yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Representasi JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Kolom
issuer

string

Wajib. Nama parameter penerbit yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

subject

string

Wajib. Nama parameter subjek yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

clientKey

string

Wajib. Nama parameter klien yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

Tindakan

Representasi 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.
}
Kolom
inputFields[]

string

Opsional. Kolom entitas yang akan digunakan sebagai input untuk operasi. Jika tidak ada kolom yang ditentukan, semua kolom Entitas akan digunakan.

outputFields[]

string

Opsional. Kolom entitas yang akan ditampilkan dari operasi. Jika tidak ada kolom yang ditentukan, semua kolom Entity akan ditampilkan.

Kolom union action_spec. Spesifikasi untuk tindakan yang akan dikonfigurasi agar dapat digunakan oleh alat. action_spec hanya ada berupa salah satu diantara berikut:
connectionActionId

string

ID tindakan Koneksi yang akan digunakan alat.

entityOperation

object (EntityOperation)

Konfigurasi operasi entitas yang akan digunakan alat.

EntityOperation

Representasi JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Kolom
entityId

string

Wajib. ID entitas.

operation

enum (OperationType)

Wajib. Operasi yang akan dilakukan pada entity.

Durasi

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Detik yang ditandatangani dari rentang waktu. Harus dari -315.576.000.000 hingga +315.576.000.000 inklusif. Catatan: batas ini dihitung dari: 60 dtk/mnt * 60 mnt/j * 24 j/hr * 365,25 hr/thn * 10.000 thn

nanos

integer

Pecahan detik bertanda pada resolusi nanodetik rentang waktu. Durasi kurang dari satu detik ditampilkan dengan kolom seconds 0 dan kolom nanos positif atau negatif. Untuk durasi satu detik atau lebih, nilai non-nol untuk kolom nanos harus memiliki tanda yang sama dengan kolom seconds. Harus dari -999.999.999 hingga +999.999.999 inklusif.

Stempel waktu

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z).

nanos

integer

Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nano non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif.

ToolFakeConfig

Representasi 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.
}
Kolom
enableFakeMode

boolean

Opsional. Apakah alat menggunakan mode palsu.

Kolom union tool_response. Respons bersifat statis atau disediakan oleh fungsi python. tool_response hanya ada berupa salah satu diantara berikut:
codeBlock

object (CodeBlock)

Opsional. Blok kode yang akan dieksekusi, bukan panggilan alat yang sebenarnya.

CodeBlock

Representasi JSON
{
  "pythonCode": string
}
Kolom
pythonCode

string

Wajib. Kode Python yang akan dipanggil dalam mode tiruan alat. Tanda tangan fungsi Python yang diharapkan - Untuk menangkap semua panggilan alat: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Untuk menangkap panggilan alat tertentu: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Jika fungsi menampilkan None, alat sebenarnya akan dipanggil.

RequestLocation

Lokasi kunci API dalam permintaan.

Enum
REQUEST_LOCATION_UNSPECIFIED Tidak ditentukan. Nilai ini tidak boleh digunakan.
HEADER Merepresentasikan kunci di header http.
QUERY_STRING Mewakili kunci dalam string kueri.

OauthGrantType

Jenis pemberian izin OAuth. Hanya pemberian kredensial klien yang didukung.

Enum
OAUTH_GRANT_TYPE_UNSPECIFIED Tidak ditentukan. Default-nya adalah CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL Mewakili alur kredensial klien.

Jenis

Jenis data OpenAPI.

Enum
TYPE_UNSPECIFIED Jenis tidak ditentukan.
STRING Jenis string.
INTEGER Jenis bilangan bulat.
NUMBER Jenis angka.
BOOLEAN Jenis Boolean.
OBJECT Jenis objek.
ARRAY Jenis array.

NullValue

Mewakili JSON null.

NullValue adalah sentinel, menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.

Kolom berjenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memancarkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, dan akan melakukan perjalanan pulang pergi ke nilai 0.

Enum
NULL_VALUE Nilai null.

OperationType

Operasi yang akan dilakukan pada entity.

Enum
OPERATION_TYPE_UNSPECIFIED Jenis operasi tidak ditentukan. Tidak valid, pembuatan/pembaruan ConnectorTool akan gagal.
LIST Operasi daftar.
GET Mendapatkan operasi.
CREATE Buat operasi.
UPDATE Operasi update.
DELETE Hapus operasi.

ExecutionType

Jenis eksekusi alat atau set alat.

Enum
EXECUTION_TYPE_UNSPECIFIED Jenis eksekusi tidak ditentukan. Nilai defaultnya adalah SYNCHRONOUS jika tidak ditentukan.
SYNCHRONOUS Alat ini dieksekusi secara sinkron. Sesi diblokir hingga alat kembali.
ASYNCHRONOUS Alat ini dijalankan secara asinkron. Sesi akan berlanjut saat alat dijalankan.

Skema Output

Toolset mewakili sekelompok alat yang dikelola secara dinamis yang dapat digunakan oleh agen.

Toolset

Representasi 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.
}
Kolom
name

string

ID. ID unik toolset. Format: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Opsional. Nama tampilan toolset. Harus unik dalam aplikasi yang sama.

description

string

Opsional. Deskripsi toolset.

timeout

string (Duration format)

Opsional. Waktu tunggu untuk eksekusi toolset. Jika tidak ditetapkan, waktu tunggu default adalah 30 detik untuk toolset SYNCHRONOUS dan 60 detik untuk toolset ASYNCHRONOUS.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat toolset dibuat.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat toolset terakhir diperbarui.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

etag

string

ETag yang digunakan untuk memastikan objek tidak berubah selama operasi baca-ubah-tulis. Jika etag kosong, pembaruan akan menimpa perubahan serentak.

executionType

enum (ExecutionType)

Opsional. Jenis eksekusi alat dalam toolset.

toolFakeConfig

object (ToolFakeConfig)

Opsional. Konfigurasi untuk perilaku alat dalam mode palsu.

Kolom union toolset_type. Jenis toolset. toolset_type hanya ada berupa salah satu diantara berikut:
mcpToolset

object (McpToolset)

Opsional. Toolset yang berisi daftar alat yang ditawarkan oleh server MCP.

openApiToolset

object (OpenApiToolset)

Opsional. Toolset yang berisi daftar alat yang ditentukan oleh skema OpenAPI.

connectorToolset

object (ConnectorToolset)

Opsional. Kumpulan alat yang membuat alat dari Koneksi Integration Connectors.

McpToolset

Representasi JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
Kolom
serverAddress

string

Wajib. Alamat server MCP, misalnya, "https://example.com/mcp/". Jika server dibangun dengan MCP SDK, URL harus memiliki akhiran "/mcp/". Hanya server berbasis transport HTTP yang dapat di-streaming yang didukung. Lihat https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http untuk mengetahui detail selengkapnya.

apiAuthentication

object (ApiAuthentication)

Opsional. Informasi autentikasi yang diperlukan untuk mengakses alat dan menjalankan alat terhadap server MCP. Untuk autentikasi token pembawa, token hanya berlaku untuk eksekusi alat, bukan untuk alat listingan. Hal ini mengharuskan alat dapat dicantumkan tanpa autentikasi.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opsional. Konfigurasi Service Directory untuk VPC-SC, yang digunakan untuk menyelesaikan nama layanan dalam perimeter.

tlsConfig

object (TlsConfig)

Opsional. Konfigurasi TLS. Mencakup sertifikat server kustom yang harus dipercaya oleh klien.

customHeaders

map (key: string, value: string)

Opsional. Header kustom yang akan dikirim dalam permintaan ke server MCP. Nilai harus dalam format $context.variables.<name_of_variable> dan dapat ditetapkan dalam variabel sesi. Lihat https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection untuk mengetahui detail selengkapnya.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

toolOverrides[]

object (McpToolOverride)

Opsional. Penggantian untuk setiap alat dalam set alat ini. Hal ini memungkinkan penggantian detail tertentu seperti deskripsi, nama, atau menyematkan status alat sehingga tidak sepenuhnya dinamis.

ApiAuthentication

Representasi 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.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
apiKeyConfig

object (ApiKeyConfig)

Opsional. Konfigurasi untuk autentikasi kunci API.

oauthConfig

object (OAuthConfig)

Opsional. Konfigurasi untuk OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opsional. Konfigurasi untuk autentikasi token ID yang dibuat dari agen layanan CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opsional. Konfigurasi untuk autentikasi akun layanan.

bearerTokenConfig

object (BearerTokenConfig)

Opsional. Konfigurasi untuk autentikasi token pembawa.

ApiKeyConfig

Representasi JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Kolom
keyName

string

Wajib. Nama parameter atau nama header kunci API. Misalnya, Jika permintaan API adalah "https://example.com/act?X-Api-Key=", "X-Api-Key" akan menjadi nama parameter.

apiKeySecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan kunci API. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Wajib. Lokasi kunci dalam permintaan.

OAuthConfig

Representasi JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Kolom
oauthGrantType

enum (OauthGrantType)

Wajib. Jenis pemberian izin OAuth.

clientId

string

Wajib. ID klien dari penyedia OAuth.

clientSecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan rahasia klien. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Wajib. Endpoint token di penyedia OAuth untuk ditukar dengan token akses.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan.

ServiceAccountAuthConfig

Representasi JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Kolom
serviceAccount

string

Wajib. Alamat email akun layanan yang digunakan untuk autentikasi. CES menggunakan akun layanan ini untuk menukar token akses dan token akses tersebut kemudian dikirim di header Authorization permintaan.

Akun layanan harus memiliki peran roles/iam.serviceAccountTokenCreator yang diberikan kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan. Jika tidak ditentukan, cakupan default https://www.googleapis.com/auth/cloud-platform akan digunakan.

BearerTokenConfig

Representasi JSON
{
  "token": string
}
Kolom
token

string

Wajib. Token pemilik. Harus dalam format $context.variables.<name_of_variable>.

ServiceDirectoryConfig

Representasi JSON
{
  "service": string
}
Kolom
service

string

Wajib. Nama layanan Service Directory. Format: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Lokasi direktori layanan harus sama dengan lokasi aplikasi.

TlsConfig

Representasi JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Kolom
caCerts[]

object (CaCert)

Wajib. Menentukan daftar sertifikat CA kustom yang diizinkan untuk verifikasi HTTPS.

CaCert

Representasi JSON
{
  "displayName": string,
  "cert": string
}
Kolom
displayName

string

Wajib. Nama sertifikat CA kustom yang diizinkan. Ini dapat digunakan untuk membedakan sertifikat CA kustom.

cert

string (bytes format)

Wajib. Sertifikat CA kustom yang diizinkan (dalam format DER) untuk verifikasi HTTPS. Tindakan ini akan menggantikan trust store SSL default. Jika kosong atau tidak ditentukan, CES akan menggunakan penyimpanan tepercaya default Google untuk memverifikasi sertifikat. Catatan: Pastikan sertifikat server HTTPS ditandatangani dengan "subject alt name". Misalnya, sertifikat dapat ditandatangani sendiri menggunakan perintah berikut:

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

String berenkode base64.

CustomHeadersEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

McpToolOverride

Representasi JSON
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
Kolom
tool

string

Wajib. Nama asli alat saat dikeluarkan oleh server MCP.

nameOverride

string

Opsional. Jika ada, alat ini menggunakan nama ini di Agen, bukan nama asli. Ini terutama digunakan sebagai alias jika server MCP menawarkan alat yang namanya kurang baik.

descriptionOverride

string

Opsional. Jika ada, alat ini akan menggunakan deskripsi ini, bukan deskripsi asli dari server.

snapshot

object (McpToolDefinition)

Hanya output. Jika ada, alat ini akan "Disematkan" dan menggunakan nilai snapshot sebagai penggantian jika server tidak tersedia untuk sementara atau jika tidak ada Penggantian.

McpToolDefinition

Representasi JSON
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
Kolom
description

string

Hanya output. Deskripsi alat MCP. Nilai ini dapat diganti oleh description_override di McpToolOverride.

inputSchema

object (Schema)

Hanya output. Skema argumen input alat MCP.

outputSchema

object (Schema)

Hanya output. Skema argumen output alat MCP.

Skema

Representasi 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.
}
Kolom
type

enum (Type)

Wajib. Jenis data.

properties

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

Opsional. Properti Type.OBJECT.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Opsional. Properti wajib Type.OBJECT.

description

string

Opsional. Deskripsi data.

items

object (Schema)

Opsional. Skema elemen Type.ARRAY.

nullable

boolean

Opsional. Menunjukkan apakah nilai boleh berupa null.

uniqueItems

boolean

Opsional. Menunjukkan bahwa item dalam array harus unik. Hanya berlaku untuk TYPE.ARRAY.

prefixItems[]

object (Schema)

Opsional. Skema elemen awal Type.ARRAY.

additionalProperties

object (Schema)

Opsional. Dapat berupa boolean atau objek, mengontrol keberadaan properti tambahan.

anyOf[]

object (Schema)

Opsional. Nilai harus divalidasi terhadap salah satu (satu atau beberapa) subskema dalam daftar.

enum[]

string

Opsional. Kemungkinan nilai elemen jenis primitif dengan format enum. Contoh: 1. Kita dapat menentukan arah sebagai : {type:STRING, format:enum, enum:["TIMUR", NORTH", "SELATAN", "BARAT"]} 2. Kita dapat menentukan nomor apartemen sebagai : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Opsional. Nilai default data.

ref

string

Opsional. Memungkinkan referensi tidak langsung antar-node skema. Nilai harus berupa referensi yang valid ke turunan defs akar.

Misalnya, skema berikut menentukan referensi ke node skema bernama "Pet":

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

Nilai properti "pet" adalah referensi ke node skema bernama "Pet". Lihat detailnya di https://json-schema.org/understanding-json-schema/structuring.

defs

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

Opsional. Peta definisi untuk digunakan oleh ref. Hanya diizinkan di root skema.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Opsional. Judul skema.

minItems

string (int64 format)

Opsional. Jumlah minimum elemen untuk Type.ARRAY.

maxItems

string (int64 format)

Opsional. Jumlah maksimum elemen untuk Type.ARRAY.

Kolom union _minimum.

_minimum hanya dapat berupa salah satu dari hal berikut:

minimum

number

Opsional. Nilai minimum untuk Type.INTEGER dan Type.NUMBER.

Kolom union _maximum.

_maximum hanya dapat berupa salah satu dari hal berikut:

maximum

number

Opsional. Nilai maksimum untuk Type.INTEGER dan Type.NUMBER.

PropertiesEntry

Representasi JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Kolom
key

string

value

object (Schema)

Nilai

Representasi 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.
}
Kolom
Kolom union kind. Jenis nilai. kind hanya ada berupa salah satu diantara berikut:
nullValue

null

Mewakili JSON null.

numberValue

number

Mewakili angka JSON. Tidak boleh NaN, Infinity, atau -Infinity, karena tidak didukung dalam JSON. Hal ini juga tidak dapat merepresentasikan nilai Int64 besar, karena format JSON umumnya tidak mendukungnya dalam jenis angka.

stringValue

string

Mewakili string JSON.

boolValue

boolean

Mewakili boolean JSON (literal true atau false dalam JSON).

structValue

object (Struct format)

Mewakili objek JSON.

listValue

array (ListValue format)

Mewakili array JSON.

Struct

Representasi JSON
{
  "fields": {
    string: value,
    ...
  }
}
Kolom
fields

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

Peta nilai yang diketik secara dinamis dan tidak berurutan.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representasi JSON
{
  "key": string,
  "value": value
}
Kolom
key

string

value

value (Value format)

ListValue

Representasi JSON
{
  "values": [
    value
  ]
}
Kolom
values[]

value (Value format)

Kolom berulang dari nilai yang diketik secara dinamis.

DefsEntry

Representasi JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Kolom
key

string

value

object (Schema)

OpenApiToolset

Representasi JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Kolom
openApiSchema

string

Wajib. Skema OpenAPI toolset.

apiAuthentication

object (ApiAuthentication)

Opsional. Informasi autentikasi yang diperlukan oleh API.

tlsConfig

object (TlsConfig)

Opsional. Konfigurasi TLS. Mencakup sertifikat server kustom

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opsional. Konfigurasi Direktori Layanan.

ignoreUnknownFields

boolean

Opsional. Jika benar (true), agen akan mengabaikan kolom yang tidak diketahui dalam respons API untuk semua operasi yang ditentukan dalam skema OpenAPI.

url

string

Opsional. URL server skema Open API. Kolom ini hanya ditetapkan di toolset dalam dependensi lingkungan selama proses ekspor jika skema berisi URL server. Selama proses impor, jika URL ini ada dalam dependensi lingkungan dan skema memiliki placeholder $env_var, URL ini akan menggantikan placeholder dalam skema.

ConnectorToolset

Representasi JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Kolom
connection

string

Wajib. Nama resource lengkap Koneksi Integration Connectors yang dirujuk. Format: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Opsional. Mengonfigurasi cara penanganan autentikasi di Integration Connectors. Secara default, autentikasi admin diteruskan dalam permintaan API Integration Connectors. Anda dapat menggantinya dengan konfigurasi autentikasi pengguna akhir yang berbeda. Catatan: Koneksi harus mengaktifkan penggantian autentikasi agar dapat menentukan konfigurasi EUC di sini. Jika tidak, pembuatan Toolset akan gagal. Lihat: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

Wajib. Daftar tindakan konektor/operasi entitas untuk membuat alat.

EndUserAuthConfig

Representasi 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.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autentikasi Kode Otorisasi Oauth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autentikasi Pemberian Otorisasi OAuth 2.0 Profil JWT.

Oauth2AuthCodeConfig

Representasi JSON
{
  "oauthToken": string
}
Kolom
oauthToken

string

Wajib. Nama parameter token OAuth yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Representasi JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Kolom
issuer

string

Wajib. Nama parameter penerbit yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

subject

string

Wajib. Nama parameter subjek yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

clientKey

string

Wajib. Nama parameter klien yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

Tindakan

Representasi 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.
}
Kolom
inputFields[]

string

Opsional. Kolom entitas yang akan digunakan sebagai input untuk operasi. Jika tidak ada kolom yang ditentukan, semua kolom Entitas akan digunakan.

outputFields[]

string

Opsional. Kolom entitas yang akan ditampilkan dari operasi. Jika tidak ada kolom yang ditentukan, semua kolom Entity akan ditampilkan.

Kolom union action_spec. Spesifikasi untuk tindakan yang akan dikonfigurasi agar dapat digunakan oleh alat. action_spec hanya ada berupa salah satu diantara berikut:
connectionActionId

string

ID tindakan Koneksi yang akan digunakan alat.

entityOperation

object (EntityOperation)

Konfigurasi operasi entitas yang akan digunakan alat.

EntityOperation

Representasi JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Kolom
entityId

string

Wajib. ID entitas.

operation

enum (OperationType)

Wajib. Operasi yang akan dilakukan pada entity.

Durasi

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Detik yang ditandatangani dari rentang waktu. Harus dari -315.576.000.000 hingga +315.576.000.000 inklusif. Catatan: batas ini dihitung dari: 60 dtk/mnt * 60 mnt/j * 24 j/hr * 365,25 hr/thn * 10.000 thn

nanos

integer

Pecahan detik bertanda pada resolusi nanodetik rentang waktu. Durasi kurang dari satu detik ditampilkan dengan kolom seconds 0 dan kolom nanos positif atau negatif. Untuk durasi satu detik atau lebih, nilai non-nol untuk kolom nanos harus memiliki tanda yang sama dengan kolom seconds. Harus dari -999.999.999 hingga +999.999.999 inklusif.

Stempel waktu

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z).

nanos

integer

Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nano non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif.

ToolFakeConfig

Representasi 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.
}
Kolom
enableFakeMode

boolean

Opsional. Apakah alat menggunakan mode palsu.

Kolom union tool_response. Respons bersifat statis atau disediakan oleh fungsi python. tool_response hanya ada berupa salah satu diantara berikut:
codeBlock

object (CodeBlock)

Opsional. Blok kode yang akan dieksekusi, bukan panggilan alat yang sebenarnya.

CodeBlock

Representasi JSON
{
  "pythonCode": string
}
Kolom
pythonCode

string

Wajib. Kode Python yang akan dipanggil dalam mode tiruan alat. Tanda tangan fungsi Python yang diharapkan - Untuk menangkap semua panggilan alat: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Untuk menangkap panggilan alat tertentu: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Jika fungsi menampilkan None, alat sebenarnya akan dipanggil.

RequestLocation

Lokasi kunci API dalam permintaan.

Enum
REQUEST_LOCATION_UNSPECIFIED Tidak ditentukan. Nilai ini tidak boleh digunakan.
HEADER Merepresentasikan kunci di header http.
QUERY_STRING Mewakili kunci dalam string kueri.

OauthGrantType

Jenis pemberian izin OAuth. Hanya pemberian kredensial klien yang didukung.

Enum
OAUTH_GRANT_TYPE_UNSPECIFIED Tidak ditentukan. Default-nya adalah CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL Mewakili alur kredensial klien.

Jenis

Jenis data OpenAPI.

Enum
TYPE_UNSPECIFIED Jenis tidak ditentukan.
STRING Jenis string.
INTEGER Jenis bilangan bulat.
NUMBER Jenis angka.
BOOLEAN Jenis Boolean.
OBJECT Jenis objek.
ARRAY Jenis array.

NullValue

Mewakili JSON null.

NullValue adalah sentinel, menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.

Kolom berjenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memancarkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, dan akan melakukan perjalanan pulang pergi ke nilai 0.

Enum
NULL_VALUE Nilai null.

OperationType

Operasi yang akan dilakukan pada entity.

Enum
OPERATION_TYPE_UNSPECIFIED Jenis operasi tidak ditentukan. Tidak valid, pembuatan/pembaruan ConnectorTool akan gagal.
LIST Operasi daftar.
GET Mendapatkan operasi.
CREATE Buat operasi.
UPDATE Operasi update.
DELETE Hapus operasi.

ExecutionType

Jenis eksekusi alat atau set alat.

Enum
EXECUTION_TYPE_UNSPECIFIED Jenis eksekusi tidak ditentukan. Nilai defaultnya adalah SYNCHRONOUS jika tidak ditentukan.
SYNCHRONOUS Alat ini dieksekusi secara sinkron. Sesi diblokir hingga alat kembali.
ASYNCHRONOUS Alat ini dijalankan secara asinkron. Sesi akan berlanjut saat alat dijalankan.

Anotasi Alat

Petunjuk Destruktif: ✅ | Petunjuk Idempoten: ❌ | Petunjuk Hanya Baca: ❌ | Petunjuk Dunia Terbuka: ❌