MCP Tools Reference: ces.googleapis.com

כלי: create_toolset

יצירת ערכת כלים חדשה באפליקציה הנתונה.

בדוגמה הבאה אפשר לראות איך משתמשים ב-curl כדי להפעיל את כלי ה-MCP‏ create_toolset.

בקשת 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
}'
                

סכימת הקלט

בקשת הודעה עבור AgentService.CreateToolset.

CreateToolsetRequest

ייצוג ב-JSON
{
  "parent": string,
  "toolsetId": string,
  "toolset": {
    object (Toolset)
  }
}
שדות
parent

string

חובה. שם המשאב של האפליקציה שבה רוצים ליצור את ערכת הכלים.

toolsetId

string

זה שינוי אופציונלי. המזהה לשימוש בערכת הכלים, שיהפוך לרכיב הסופי של שם המשאב של ערכת הכלים. אם לא מספקים מזהה, המערכת מקצה באופן אוטומטי מזהה ייחודי לערכת הכלים.

toolset

object (Toolset)

חובה. ערכת הכלים ליצירה.

ערכת כלים

ייצוג ב-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.
}
שדות
name

string

מזהה. המזהה הייחודי של ערכת הכלים. פורמט: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

זה שינוי אופציונלי. השם המוצג של ערכת הכלים. המזהה חייב להיות ייחודי באותה אפליקציה.

description

string

זה שינוי אופציונלי. תיאור של ערכת הכלים.

timeout

string (Duration format)

זה שינוי אופציונלי. הזמן הקצוב לתפוגה של הפעלת ערכת הכלים. אם לא מגדירים את המדיניות, ברירת המחדל של הזמן הקצוב לתפוגה היא 30 שניות עבור ערכות כלים של SYNCHRONOUS ו-60 שניות עבור ערכות כלים של ASYNCHRONOUS.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב-s. דוגמה: "3.5s".

createTime

string (Timestamp format)

פלט בלבד. חותמת זמן של מועד יצירת ערכת הכלים.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

פלט בלבד. חותמת זמן של מועד העדכון האחרון של ערכת הכלים.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

etag

string

תג ETag שמשמש כדי לוודא שהאובייקט לא השתנה במהלך פעולת קריאה-שינוי-כתיבה. אם ה-etag ריק, העדכון יחליף את כל השינויים שמתבצעים בו-זמנית.

executionType

enum (ExecutionType)

זה שינוי אופציונלי. סוג הביצוע של הכלים בערכת הכלים.

toolFakeConfig

object (ToolFakeConfig)

זה שינוי אופציונלי. הגדרות של התנהגות הכלים במצב מזויף.

שדה איחוד toolset_type. סוג ערכת הכלים. הערך toolset_type יכול להיות רק אחד מהבאים:
mcpToolset

object (McpToolset)

זה שינוי אופציונלי. ערכת כלים שמכילה רשימה של כלים שמוצעים על ידי שרת ה-MCP.

openApiToolset

object (OpenApiToolset)

זה שינוי אופציונלי. ערכת כלים שמכילה רשימה של כלים שמוגדרים על ידי סכימת OpenAPI.

connectorToolset

object (ConnectorToolset)

זה שינוי אופציונלי. ערכת כלים שיוצרת כלים מחיבור של Integration Connectors.

McpToolset

ייצוג ב-JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
שדות
serverAddress

string

חובה. הכתובת של שרת ה-MCP, לדוגמה, 'https://example.com/mcp/‎'. אם השרת בנוי באמצעות MCP SDK, צריך להוסיף את הסיומת ‎/mcp/‎ לכתובת ה-URL. יש תמיכה רק בשרתים מבוססי-תעבורה של HTTP שניתן להזרים מהם. פרטים נוספים זמינים בכתובת https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

זה שינוי אופציונלי. פרטי אימות שנדרשים כדי לגשת לכלים ולהריץ כלי מול שרת ה-MCP. באימות באמצעות טוקן bearer, הטוקן חל רק על הפעלת הכלי, ולא על כלי הרישום. לכן, צריך לוודא שאפשר לראות את רשימת הכלים בלי אימות.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

זה שינוי אופציונלי. הגדרת Service Directory ל-VPC-SC, שמשמשת לפתרון שמות שירותים בתוך perimeter.

tlsConfig

object (TlsConfig)

זה שינוי אופציונלי. הגדרת TLS. כולל את אישורי השרת בהתאמה אישית שהלקוח צריך לסמוך עליהם.

customHeaders

map (key: string, value: string)

זה שינוי אופציונלי. הכותרות המותאמות אישית לשליחה בבקשה לשרת ה-MCP. הערכים צריכים להיות בפורמט $context.variables.<name_of_variable> ואפשר להגדיר אותם במשתני הסשן. פרטים נוספים זמינים בכתובת https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

toolOverrides[]

object (McpToolOverride)

זה שינוי אופציונלי. שינויים שחלים על כלים ספציפיים בערכת הכלים הזו. כך אפשר לשנות פרטים ספציפיים כמו תיאורים או שמות, או להצמיד את מצבי הכלים כדי שלא יהיו דינמיים לחלוטין.

ApiAuthentication

ייצוג ב-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.
}
שדות
שדה איחוד auth_config. הגדרת האימות. הערך auth_config יכול להיות רק אחד מהבאים:
apiKeyConfig

object (ApiKeyConfig)

זה שינוי אופציונלי. הגדרות לאימות באמצעות מפתח API.

oauthConfig

object (OAuthConfig)

זה שינוי אופציונלי. הגדרות ל-OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

זה שינוי אופציונלי. ההגדרה לאימות באמצעות אסימון מזהה שנוצר מסוכן שירות של CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

זה שינוי אופציונלי. הגדרות לאימות של חשבון שירות.

bearerTokenConfig

object (BearerTokenConfig)

זה שינוי אופציונלי. הגדרות לאימות באמצעות טוקן Bearer.

ApiKeyConfig

ייצוג ב-JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
שדות
keyName

string

חובה. שם הפרמטר או שם הכותרת של מפתח ה-API. למשל, אם בקשת ה-API היא ‎https://example.com/act?X-Api-Key=‎, ‏X-Api-Key הוא שם הפרמטר.

apiKeySecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן מפתח ה-API. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

חובה. מיקום המפתח בבקשה.

OAuthConfig

ייצוג ב-JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
שדות
oauthGrantType

enum (OauthGrantType)

חובה. סוגי הרשאות OAuth.

clientId

string

חובה. מזהה הלקוח מספק OAuth.

clientSecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן סוד הלקוח. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

חובה. נקודת הקצה של הטוקן אצל ספק ה-OAuth להחלפה באסימון גישה.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק.

ServiceAccountAuthConfig

ייצוג ב-JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
שדות
serviceAccount

string

חובה. כתובת האימייל של חשבון השירות שמשמש לאימות. מערכת CES משתמשת בחשבון השירות הזה כדי להחליף טוקן גישה, ואז טוקן הגישה נשלח בכותרת Authorization של הבקשה.

לחשבון השירות צריך להיות מוקצה התפקיד roles/iam.serviceAccountTokenCreator לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק. אם לא מציינים היקף, המערכת משתמשת בהיקף ברירת המחדל https://www.googleapis.com/auth/cloud-platform.

BearerTokenConfig

ייצוג ב-JSON
{
  "token": string
}
שדות
token

string

חובה. טוקן למוכ"ז. חייב להיות בפורמט $context.variables.<name_of_variable>.

ServiceDirectoryConfig

ייצוג ב-JSON
{
  "service": string
}
שדות
service

string

חובה. השם של שירות Service Directory. פורמט: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service} המיקום של ספריית השירותים צריך להיות זהה למיקום של האפליקציה.

TlsConfig

ייצוג ב-JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
שדות
caCerts[]

object (CaCert)

חובה. מציינת רשימה של אישורי CA מותאמים אישית שמותרים לאימות HTTPS.

CaCert

ייצוג ב-JSON
{
  "displayName": string,
  "cert": string
}
שדות
displayName

string

חובה. השם של אישורי ה-CA המותאמים אישית שמותרים. אפשר להשתמש בזה כדי להבחין בין אישורי CA מותאמים אישית.

cert

string (bytes format)

חובה. אישורי CA מותאמים אישית שמותרים (בפורמט DER) לאימות HTTPS. ההגדרה הזו מבטלת את ברירת המחדל של מאגר האישורים של SSL. אם הרשימה ריקה או לא צוינה, CES ישתמש במאגר האישורים של Google כדי לאמת אישורים. הערה: חשוב לוודא שאישורי השרת של HTTPS חתומים עם 'שם חלופי לנושא'. לדוגמה, אפשר להשתמש בפקודה הבאה כדי ליצור אישור בחתימה עצמית:

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

מחרוזת בקידוד Base64.

CustomHeadersEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

McpToolOverride

ייצוג ב-JSON
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
שדות
tool

string

חובה. השם המקורי של הכלי כפי שהוא מועבר על ידי שרת ה-MCP.

nameOverride

string

זה שינוי אופציונלי. אם השם הזה קיים, הכלי משתמש בו בנציג במקום בשם המקורי. השימוש העיקרי בזה הוא ככינוי אם הכלים בשרת ה-MCP לא קיבלו שמות טובים.

descriptionOverride

string

זה שינוי אופציונלי. אם התיאור הזה קיים, הכלי משתמש בו במקום בתיאור המקורי מהשרת.

snapshot

object (McpToolDefinition)

פלט בלבד. אם הכלי הזה קיים, הוא מוצמד ומשתמש בערכי התמונה כגיבוי אם השרת לא זמין באופן זמני או אם לא קיים ביטול.

McpToolDefinition

ייצוג ב-JSON
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
שדות
description

string

פלט בלבד. תיאור הכלי MCP. אפשר לשנות את ההגדרה הזו באמצעות description_override ב-McpToolOverride.

inputSchema

object (Schema)

פלט בלבד. הסכימה של ארגומנטי הקלט של כלי ה-MCP.

outputSchema

object (Schema)

פלט בלבד. הסכימה של ארגומנטי הפלט של כלי ה-MCP.

סכימה

ייצוג ב-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.
}
שדות
type

enum (Type)

חובה. סוג הנתונים.

properties

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

זה שינוי אופציונלי. מאפיינים של Type.OBJECT.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

זה שינוי אופציונלי. מאפייני חובה של Type.OBJECT.

description

string

זה שינוי אופציונלי. תיאור הנתונים.

items

object (Schema)

זה שינוי אופציונלי. סכימה של רכיבים מסוג ARRAY.

nullable

boolean

זה שינוי אופציונלי. מציין אם הערך יכול להיות null.

uniqueItems

boolean

זה שינוי אופציונלי. מציינים שהפריטים במערך צריכים להיות ייחודיים. ההגדרה רלוונטית רק ל-TYPE.ARRAY.

prefixItems[]

object (Schema)

זה שינוי אופציונלי. סכימות של רכיבים ראשוניים מסוג ARRAY.

additionalProperties

object (Schema)

זה שינוי אופציונלי. יכול להיות ערך בוליאני או אובייקט, שקובע את הנוכחות של מאפיינים נוספים.

anyOf[]

object (Schema)

זה שינוי אופציונלי. הערך צריך להיות מאומת מול כל אחת (אחת או יותר) מסכימות המשנה ברשימה.

enum[]

string

זה שינוי אופציונלי. ערכים אפשריים של רכיב מסוג פרימיטיבי עם פורמט enum. דוגמאות: 1. אפשר להגדיר כיוון כך : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. אפשר להגדיר את מספר הדירה כך : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

זה שינוי אופציונלי. ערך ברירת המחדל של הנתונים.

ref

string

זה שינוי אופציונלי. מאפשר הפניות עקיפות בין צמתי סכימה. הערך צריך להיות הפניה חוקית לצאצא של רכיב הבסיס defs.

לדוגמה, הסכימה הבאה מגדירה הפניה לצומת סכימה בשם Pet:

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

הערך של המאפיין pet הוא הפניה לצומת הסכימה שנקרא Pet. פרטים נוספים זמינים בכתובת https://json-schema.org/understanding-json-schema/structuring.

defs

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

זה שינוי אופציונלי. מפה של הגדרות לשימוש על ידי ref. מותר להשתמש במאפיין הזה רק ברמת הבסיס של הסכימה.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

זה שינוי אופציונלי. השם של הסכימה.

minItems

string (int64 format)

זה שינוי אופציונלי. מספר המינימום של הרכיבים עבור Type.ARRAY.

maxItems

string (int64 format)

זה שינוי אופציונלי. המספר המקסימלי של הרכיבים עבור Type.ARRAY.

שדה איחוד _minimum.

הערך _minimum יכול להיות רק אחד מהבאים:

minimum

number

זה שינוי אופציונלי. הערך המינימלי של Type.INTEGER ו-Type.NUMBER.

שדה איחוד _maximum.

הערך _maximum יכול להיות רק אחד מהבאים:

maximum

number

זה שינוי אופציונלי. הערך המקסימלי של Type.INTEGER ו-Type.NUMBER.

PropertiesEntry

ייצוג ב-JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
שדות
key

string

value

object (Schema)

ערך

ייצוג ב-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.
}
שדות
שדה איחוד kind. סוג הערך. הערך kind יכול להיות רק אחד מהבאים:
nullValue

null

מייצג null JSON.

numberValue

number

מייצג מספר JSON. הערך לא יכול להיות NaN, Infinity או -Infinity, כי אין תמיכה בערכים האלה ב-JSON. בנוסף, אי אפשר לייצג ערכי Int64 גדולים, כי פורמט JSON בדרך כלל לא תומך בהם בסוג המספר שלו.

stringValue

string

מייצג מחרוזת JSON.

boolValue

boolean

מייצג ערך בוליאני ב-JSON (הערך המילולי true או false ב-JSON).

structValue

object (Struct format)

מייצג אובייקט JSON.

listValue

array (ListValue format)

מייצג מערך JSON.

Struct

ייצוג ב-JSON
{
  "fields": {
    string: value,
    ...
  }
}
שדות
fields

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

מפה לא מסודרת של ערכים עם הקלדה דינמית.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

ייצוג ב-JSON
{
  "key": string,
  "value": value
}
שדות
key

string

value

value (Value format)

ListValue

ייצוג ב-JSON
{
  "values": [
    value
  ]
}
שדות
values[]

value (Value format)

שדה חוזר של ערכים עם הקלדה דינמית.

DefsEntry

ייצוג ב-JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
שדות
key

string

value

object (Schema)

OpenApiToolset

ייצוג ב-JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
שדות
openApiSchema

string

חובה. סכימת OpenAPI של ערכת הכלים.

apiAuthentication

object (ApiAuthentication)

זה שינוי אופציונלי. פרטי האימות שנדרשים על ידי ה-API.

tlsConfig

object (TlsConfig)

זה שינוי אופציונלי. הגדרת TLS. כולל את אישורי השרת המותאמים אישית

serviceDirectoryConfig

object (ServiceDirectoryConfig)

זה שינוי אופציונלי. הגדרת ספריית השירותים.

ignoreUnknownFields

boolean

זה שינוי אופציונלי. אם הערך הוא true, הסוכן יתעלם משדות לא ידועים בתגובת ה-API לכל הפעולות שמוגדרות בסכימת OpenAPI.

url

string

זה שינוי אופציונלי. כתובת ה-URL של השרת של סכימת Open API. השדה הזה מוגדר רק בערכות כלים בתלות הסביבתית במהלך תהליך הייצוא, אם הסכימה מכילה כתובת URL של שרת. במהלך תהליך הייבוא, אם כתובת ה-URL הזו מופיעה בתלות בסביבה ולסכימה יש פלייסהולדר מסוג ‎ $env_var, הפלייסהולדר יוחלף בסכימה.

ConnectorToolset

ייצוג ב-JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
שדות
connection

string

חובה. השם המלא של המשאב של חיבור Integration Connectors שאליו מתייחסים. פורמט: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

זה שינוי אופציונלי. הגדרה של אופן הטיפול באימות ב-Integration Connectors. כברירת מחדל, אימות אדמין מועבר בבקשות ל-Integration Connectors API. אפשר לשנות את ההגדרה הזו באמצעות הגדרת אימות אחרת למשתמשי הקצה. הערה: כדי לציין כאן הגדרת EUC, צריך להפעיל את האפשרות 'ביטול הגדרות אימות' בחיבור – אחרת, יצירת ערכת הכלים תיכשל. מידע נוסף זמין בכתובת: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

חובה. רשימת הפעולות או הפעולות על ישויות של המחבר ליצירת כלים.

EndUserAuthConfig

ייצוג ב-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.
}
שדות
שדה איחוד auth_config. הגדרת האימות. הערך auth_config יכול להיות רק אחד מהבאים:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

אימות באמצעות קוד הרשאה ל-Oauth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

אימות של הרשאת גישה מסוג OAuth 2.0 בפרופיל JWT.

Oauth2AuthCodeConfig

ייצוג ב-JSON
{
  "oauthToken": string
}
שדות
oauthToken

string

חובה. שם הפרמטר של טוקן OAuth להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

ייצוג ב-JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
שדות
issuer

string

חובה. שם הפרמטר של המנפיק להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

subject

string

חובה. שם הפרמטר של הנושא להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

clientKey

string

חובה. שם פרמטר של לקוח להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

פעולה

ייצוג ב-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.
}
שדות
inputFields[]

string

זה שינוי אופציונלי. שדות של הישות שמשמשים כקלט לפעולה. אם לא מציינים שדות, המערכת משתמשת בכל השדות של הישות.

outputFields[]

string

זה שינוי אופציונלי. שדות הישות שיוחזרו מהפעולה. אם לא מציינים שדות, כל השדות של הישות יוחזרו.

שדה איחוד action_spec. מפרט של פעולה להגדרה לשימוש בכלי. הערך action_spec יכול להיות רק אחד מהבאים:
connectionActionId

string

מזהה של פעולת חיבור שהכלי ישתמש בה.

entityOperation

object (EntityOperation)

הגדרת פעולת ישות לשימוש בכלי.

EntityOperation

ייצוג ב-JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
שדות
entityId

string

חובה. המזהה של הישות.

operation

enum (OperationType)

חובה. הפעולה שצריך לבצע בישות.

משך

ייצוג ב-JSON
{
  "seconds": string,
  "nanos": integer
}
שדות
seconds

string (int64 format)

שניות חתומות של טווח הזמן. הערך חייב להיות בין ‎-315,576,000,000 לבין ‎+315,576,000,000, כולל. הערה: הגבולות האלה מחושבים לפי: 60 שניות בדקה * 60 דקות בשעה * 24 שעות ביממה * 365.25 ימים בשנה * 10,000 שנים

nanos

integer

שברים חתומים של שנייה ברזולוציית ננו-שנייה של טווח הזמן. משכי זמן של פחות משנייה מיוצגים באמצעות שדה seconds עם הערך 0 ושדה nanos עם ערך חיובי או שלילי. למשכי זמן של שנייה אחת או יותר, הערך בשדה nanos צריך להיות שונה מאפס ובעל אותו סימן כמו הערך בשדה seconds. הערך צריך להיות בין ‎-999,999,999 לבין ‎+999,999,999, כולל.

חותמת הזמן

ייצוג ב-JSON
{
  "seconds": string,
  "nanos": integer
}
שדות
seconds

string (int64 format)

מייצג את השניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) ב-1970-01-01T00:00:00Z. הערך חייב להיות בין ‎-62135596800 ל-‎253402300799, כולל (שמתאים לטווח 0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z).

nanos

integer

שבריר לא שלילי של שנייה ברזולוציית ננו-שנייה. השדה הזה מייצג את החלק של הננו-שנייה במשך הזמן, ולא מהווה חלופה לשניות. ערכי שניות שליליים עם שברים עדיין צריכים לכלול ערכי ננו-שניות לא שליליים שסופרים קדימה בזמן. הערך חייב להיות בין 0 ל-999,999,999, כולל.

ToolFakeConfig

ייצוג ב-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.
}
שדות
enableFakeMode

boolean

זה שינוי אופציונלי. אם הכלי משתמש במצב מזויף.

שדה איחוד tool_response. התגובה היא סטטית או שהיא מסופקת על ידי פונקציית Python. הערך tool_response יכול להיות רק אחד מהבאים:
codeBlock

object (CodeBlock)

זה שינוי אופציונלי. בלוק קוד שיופעל במקום קריאה אמיתית לכלי.

CodeBlock

ייצוג ב-JSON
{
  "pythonCode": string
}
שדות
pythonCode

string

חובה. קוד Python שיופעל במצב מזויף של הכלי. חתימת פונקציית Python הצפויה – כדי לתפוס את כל קריאות הכלים: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: כדי לתפוס קריאה ספציפית לכלי: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: אם הפונקציה מחזירה None, הכלי האמיתי יופעל במקום זאת.

RequestLocation

המיקום של מפתח ה-API בבקשה.

טיפוסים בני מנייה (enum)
REQUEST_LOCATION_UNSPECIFIED לא צוין. אין להשתמש בערך הזה.
HEADER מייצג את המפתח בכותרת ה-HTTP.
QUERY_STRING מייצג את המפתח במחרוזת של שאילתה.

OauthGrantType

סוגי הרשאות OAuth. יש תמיכה רק ב-client credential grant.

טיפוסים בני מנייה (enum)
OAUTH_GRANT_TYPE_UNSPECIFIED לא צוין. ברירת המחדל היא CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL מייצג את תהליך פרטי הכניסה של הלקוח.

סוג

סוגי נתונים של OpenAPI.

טיפוסים בני מנייה (enum)
TYPE_UNSPECIFIED הסוג לא צוין.
STRING סוג המחרוזת.
INTEGER סוג Integer.
NUMBER סוג המספר.
BOOLEAN סוג בוליאני.
OBJECT סוג האובייקט.
ARRAY סוג המערך.

NullValue

מייצג null JSON.

NullValue הוא ערך שמירה, שמשתמש בערך מספרי עם ערך אחד בלבד כדי לייצג את ערך ה-null עבור איחוד הסוגים Value.

שדה מסוג NullValue עם ערך כלשהו שאינו 0 נחשב לא תקין. רוב כלי הסריאליזציה של ProtoJSON יפלטו Value עם null_value שמוגדר כ-null JSON בלי קשר לערך המספרי, ולכן יבצעו המרה הלוך ושוב לערך 0.

טיפוסים בני מנייה (enum)
NULL_VALUE ערך null.

OperationType

הפעולה שצריך לבצע על היישות.

טיפוסים בני מנייה (enum)
OPERATION_TYPE_UNSPECIFIED לא צוין סוג הפעולה. לא תקין, יצירה או עדכון של ConnectorTool ייכשלו.
LIST פעולה ברשימה.
GET קבלת פעולה.
CREATE פעולת יצירה.
UPDATE פעולת עדכון.
DELETE פעולת מחיקה.

ExecutionType

סוג הביצוע של הכלי או של ערכת הכלים.

טיפוסים בני מנייה (enum)
EXECUTION_TYPE_UNSPECIFIED לא צוין סוג ההפעלה. אם לא מציינים ערך, ברירת המחדל היא SYNCHRONOUS.
SYNCHRONOUS הכלי מופעל באופן סינכרוני. הסשן ייחסם עד שהכלי יחזור.
ASYNCHRONOUS הכלי מופעל באופן אסינכרוני. הסשן ימשיך בזמן שהכלי פועל.

סכימת הפלט

ערכת כלים מייצגת קבוצה של כלים שמנוהלים באופן דינמי ושהסוכן יכול להשתמש בהם.

ערכת כלים

ייצוג ב-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.
}
שדות
name

string

מזהה. המזהה הייחודי של ערכת הכלים. פורמט: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

זה שינוי אופציונלי. השם המוצג של ערכת הכלים. המזהה חייב להיות ייחודי באותה אפליקציה.

description

string

זה שינוי אופציונלי. תיאור של ערכת הכלים.

timeout

string (Duration format)

זה שינוי אופציונלי. הזמן הקצוב לתפוגה של הפעלת ערכת הכלים. אם לא מגדירים את המדיניות, ברירת המחדל של הזמן הקצוב לתפוגה היא 30 שניות עבור ערכות כלים של SYNCHRONOUS ו-60 שניות עבור ערכות כלים של ASYNCHRONOUS.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב-s. דוגמה: "3.5s".

createTime

string (Timestamp format)

פלט בלבד. חותמת זמן של מועד יצירת ערכת הכלים.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

פלט בלבד. חותמת זמן של מועד העדכון האחרון של ערכת הכלים.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

etag

string

תג ETag שמשמש כדי לוודא שהאובייקט לא השתנה במהלך פעולת קריאה-שינוי-כתיבה. אם ה-etag ריק, העדכון יחליף את כל השינויים שמתבצעים בו-זמנית.

executionType

enum (ExecutionType)

זה שינוי אופציונלי. סוג הביצוע של הכלים בערכת הכלים.

toolFakeConfig

object (ToolFakeConfig)

זה שינוי אופציונלי. הגדרות של התנהגות הכלים במצב מזויף.

שדה איחוד toolset_type. סוג ערכת הכלים. הערך toolset_type יכול להיות רק אחד מהבאים:
mcpToolset

object (McpToolset)

זה שינוי אופציונלי. ערכת כלים שמכילה רשימה של כלים שמוצעים על ידי שרת ה-MCP.

openApiToolset

object (OpenApiToolset)

זה שינוי אופציונלי. ערכת כלים שמכילה רשימה של כלים שמוגדרים על ידי סכימת OpenAPI.

connectorToolset

object (ConnectorToolset)

זה שינוי אופציונלי. ערכת כלים שיוצרת כלים מחיבור של Integration Connectors.

McpToolset

ייצוג ב-JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
שדות
serverAddress

string

חובה. הכתובת של שרת ה-MCP, לדוגמה, 'https://example.com/mcp/‎'. אם השרת בנוי באמצעות MCP SDK, צריך להוסיף את הסיומת ‎/mcp/‎ לכתובת ה-URL. יש תמיכה רק בשרתים מבוססי-תעבורה של HTTP שניתן להזרים מהם. פרטים נוספים זמינים בכתובת https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

זה שינוי אופציונלי. פרטי אימות שנדרשים כדי לגשת לכלים ולהריץ כלי מול שרת ה-MCP. באימות באמצעות טוקן bearer, הטוקן חל רק על הפעלת הכלי, ולא על כלי הרישום. לכן, צריך לוודא שאפשר לראות את רשימת הכלים בלי אימות.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

זה שינוי אופציונלי. הגדרת Service Directory ל-VPC-SC, שמשמשת לפתרון שמות שירותים בתוך perimeter.

tlsConfig

object (TlsConfig)

זה שינוי אופציונלי. הגדרת TLS. כולל את אישורי השרת בהתאמה אישית שהלקוח צריך לסמוך עליהם.

customHeaders

map (key: string, value: string)

זה שינוי אופציונלי. הכותרות המותאמות אישית לשליחה בבקשה לשרת ה-MCP. הערכים צריכים להיות בפורמט $context.variables.<name_of_variable> ואפשר להגדיר אותם במשתני הסשן. פרטים נוספים זמינים בכתובת https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

toolOverrides[]

object (McpToolOverride)

זה שינוי אופציונלי. שינויים שחלים על כלים ספציפיים בערכת הכלים הזו. כך אפשר לשנות פרטים ספציפיים כמו תיאורים או שמות, או להצמיד את מצבי הכלים כדי שלא יהיו דינמיים לחלוטין.

ApiAuthentication

ייצוג ב-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.
}
שדות
שדה איחוד auth_config. הגדרת האימות. הערך auth_config יכול להיות רק אחד מהבאים:
apiKeyConfig

object (ApiKeyConfig)

זה שינוי אופציונלי. הגדרות לאימות באמצעות מפתח API.

oauthConfig

object (OAuthConfig)

זה שינוי אופציונלי. הגדרות ל-OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

זה שינוי אופציונלי. ההגדרה לאימות באמצעות אסימון מזהה שנוצר מסוכן שירות של CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

זה שינוי אופציונלי. הגדרות לאימות של חשבון שירות.

bearerTokenConfig

object (BearerTokenConfig)

זה שינוי אופציונלי. הגדרות לאימות באמצעות טוקן Bearer.

ApiKeyConfig

ייצוג ב-JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
שדות
keyName

string

חובה. שם הפרמטר או שם הכותרת של מפתח ה-API. למשל, אם בקשת ה-API היא ‎https://example.com/act?X-Api-Key=‎, ‏X-Api-Key הוא שם הפרמטר.

apiKeySecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן מפתח ה-API. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

חובה. מיקום המפתח בבקשה.

OAuthConfig

ייצוג ב-JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
שדות
oauthGrantType

enum (OauthGrantType)

חובה. סוגי הרשאות OAuth.

clientId

string

חובה. מזהה הלקוח מספק OAuth.

clientSecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן סוד הלקוח. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

חובה. נקודת הקצה של הטוקן אצל ספק ה-OAuth להחלפה באסימון גישה.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק.

ServiceAccountAuthConfig

ייצוג ב-JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
שדות
serviceAccount

string

חובה. כתובת האימייל של חשבון השירות שמשמש לאימות. מערכת CES משתמשת בחשבון השירות הזה כדי להחליף טוקן גישה, ואז טוקן הגישה נשלח בכותרת Authorization של הבקשה.

לחשבון השירות צריך להיות מוקצה התפקיד roles/iam.serviceAccountTokenCreator לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק. אם לא מציינים היקף, המערכת משתמשת בהיקף ברירת המחדל https://www.googleapis.com/auth/cloud-platform.

BearerTokenConfig

ייצוג ב-JSON
{
  "token": string
}
שדות
token

string

חובה. טוקן למוכ"ז. חייב להיות בפורמט $context.variables.<name_of_variable>.

ServiceDirectoryConfig

ייצוג ב-JSON
{
  "service": string
}
שדות
service

string

חובה. השם של שירות Service Directory. פורמט: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service} המיקום של ספריית השירותים צריך להיות זהה למיקום של האפליקציה.

TlsConfig

ייצוג ב-JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
שדות
caCerts[]

object (CaCert)

חובה. מציינת רשימה של אישורי CA מותאמים אישית שמותרים לאימות HTTPS.

CaCert

ייצוג ב-JSON
{
  "displayName": string,
  "cert": string
}
שדות
displayName

string

חובה. השם של אישורי ה-CA המותאמים אישית שמותרים. אפשר להשתמש בזה כדי להבחין בין אישורי CA מותאמים אישית.

cert

string (bytes format)

חובה. אישורי CA מותאמים אישית שמותרים (בפורמט DER) לאימות HTTPS. ההגדרה הזו מבטלת את ברירת המחדל של מאגר האישורים של SSL. אם הרשימה ריקה או לא צוינה, CES ישתמש במאגר האישורים של Google כדי לאמת אישורים. הערה: חשוב לוודא שאישורי השרת של HTTPS חתומים עם 'שם חלופי לנושא'. לדוגמה, אפשר להשתמש בפקודה הבאה כדי ליצור אישור בחתימה עצמית:

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

מחרוזת בקידוד Base64.

CustomHeadersEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

McpToolOverride

ייצוג ב-JSON
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
שדות
tool

string

חובה. השם המקורי של הכלי כפי שהוא מועבר על ידי שרת ה-MCP.

nameOverride

string

זה שינוי אופציונלי. אם השם הזה קיים, הכלי משתמש בו בנציג במקום בשם המקורי. השימוש העיקרי בזה הוא ככינוי אם הכלים בשרת ה-MCP לא קיבלו שמות טובים.

descriptionOverride

string

זה שינוי אופציונלי. אם התיאור הזה קיים, הכלי משתמש בו במקום בתיאור המקורי מהשרת.

snapshot

object (McpToolDefinition)

פלט בלבד. אם הכלי הזה קיים, הוא מוצמד ומשתמש בערכי התמונה כגיבוי אם השרת לא זמין באופן זמני או אם לא קיים ביטול.

McpToolDefinition

ייצוג ב-JSON
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
שדות
description

string

פלט בלבד. תיאור הכלי MCP. אפשר לשנות את ההגדרה הזו באמצעות description_override ב-McpToolOverride.

inputSchema

object (Schema)

פלט בלבד. הסכימה של ארגומנטי הקלט של כלי ה-MCP.

outputSchema

object (Schema)

פלט בלבד. הסכימה של ארגומנטי הפלט של כלי ה-MCP.

סכימה

ייצוג ב-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.
}
שדות
type

enum (Type)

חובה. סוג הנתונים.

properties

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

זה שינוי אופציונלי. מאפיינים של Type.OBJECT.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

זה שינוי אופציונלי. מאפייני חובה של Type.OBJECT.

description

string

זה שינוי אופציונלי. תיאור הנתונים.

items

object (Schema)

זה שינוי אופציונלי. סכימה של רכיבים מסוג ARRAY.

nullable

boolean

זה שינוי אופציונלי. מציין אם הערך יכול להיות null.

uniqueItems

boolean

זה שינוי אופציונלי. מציינים שהפריטים במערך צריכים להיות ייחודיים. ההגדרה רלוונטית רק ל-TYPE.ARRAY.

prefixItems[]

object (Schema)

זה שינוי אופציונלי. סכימות של רכיבים ראשוניים מסוג ARRAY.

additionalProperties

object (Schema)

זה שינוי אופציונלי. יכול להיות ערך בוליאני או אובייקט, שקובע את הנוכחות של מאפיינים נוספים.

anyOf[]

object (Schema)

זה שינוי אופציונלי. הערך צריך להיות מאומת מול כל אחת (אחת או יותר) מסכימות המשנה ברשימה.

enum[]

string

זה שינוי אופציונלי. ערכים אפשריים של רכיב מסוג פרימיטיבי עם פורמט enum. דוגמאות: 1. אפשר להגדיר כיוון כך : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. אפשר להגדיר את מספר הדירה כך : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

זה שינוי אופציונלי. ערך ברירת המחדל של הנתונים.

ref

string

זה שינוי אופציונלי. מאפשר הפניות עקיפות בין צמתי סכימה. הערך צריך להיות הפניה חוקית לצאצא של רכיב הבסיס defs.

לדוגמה, הסכימה הבאה מגדירה הפניה לצומת סכימה בשם Pet:

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

הערך של המאפיין pet הוא הפניה לצומת הסכימה שנקרא Pet. פרטים נוספים זמינים בכתובת https://json-schema.org/understanding-json-schema/structuring.

defs

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

זה שינוי אופציונלי. מפה של הגדרות לשימוש על ידי ref. מותר להשתמש במאפיין הזה רק ברמת הבסיס של הסכימה.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

זה שינוי אופציונלי. השם של הסכימה.

minItems

string (int64 format)

זה שינוי אופציונלי. מספר המינימום של הרכיבים עבור Type.ARRAY.

maxItems

string (int64 format)

זה שינוי אופציונלי. המספר המקסימלי של הרכיבים עבור Type.ARRAY.

שדה איחוד _minimum.

הערך _minimum יכול להיות רק אחד מהבאים:

minimum

number

זה שינוי אופציונלי. הערך המינימלי של Type.INTEGER ו-Type.NUMBER.

שדה איחוד _maximum.

הערך _maximum יכול להיות רק אחד מהבאים:

maximum

number

זה שינוי אופציונלי. הערך המקסימלי של Type.INTEGER ו-Type.NUMBER.

PropertiesEntry

ייצוג ב-JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
שדות
key

string

value

object (Schema)

ערך

ייצוג ב-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.
}
שדות
שדה איחוד kind. סוג הערך. הערך kind יכול להיות רק אחד מהבאים:
nullValue

null

מייצג null JSON.

numberValue

number

מייצג מספר JSON. הערך לא יכול להיות NaN, Infinity או -Infinity, כי אין תמיכה בערכים האלה ב-JSON. בנוסף, אי אפשר לייצג ערכי Int64 גדולים, כי פורמט JSON בדרך כלל לא תומך בהם בסוג המספר שלו.

stringValue

string

מייצג מחרוזת JSON.

boolValue

boolean

מייצג ערך בוליאני ב-JSON (הערך המילולי true או false ב-JSON).

structValue

object (Struct format)

מייצג אובייקט JSON.

listValue

array (ListValue format)

מייצג מערך JSON.

Struct

ייצוג ב-JSON
{
  "fields": {
    string: value,
    ...
  }
}
שדות
fields

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

מפה לא מסודרת של ערכים עם הקלדה דינמית.

אובייקט שמכיל רשימה של "key": value זוגות. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

ייצוג ב-JSON
{
  "key": string,
  "value": value
}
שדות
key

string

value

value (Value format)

ListValue

ייצוג ב-JSON
{
  "values": [
    value
  ]
}
שדות
values[]

value (Value format)

שדה חוזר של ערכים עם הקלדה דינמית.

DefsEntry

ייצוג ב-JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
שדות
key

string

value

object (Schema)

OpenApiToolset

ייצוג ב-JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
שדות
openApiSchema

string

חובה. סכימת OpenAPI של ערכת הכלים.

apiAuthentication

object (ApiAuthentication)

זה שינוי אופציונלי. פרטי האימות שנדרשים על ידי ה-API.

tlsConfig

object (TlsConfig)

זה שינוי אופציונלי. הגדרת TLS. כולל את אישורי השרת המותאמים אישית

serviceDirectoryConfig

object (ServiceDirectoryConfig)

זה שינוי אופציונלי. הגדרת ספריית השירותים.

ignoreUnknownFields

boolean

זה שינוי אופציונלי. אם הערך הוא true, הסוכן יתעלם משדות לא ידועים בתגובת ה-API לכל הפעולות שמוגדרות בסכימת OpenAPI.

url

string

זה שינוי אופציונלי. כתובת ה-URL של השרת של סכימת Open API. השדה הזה מוגדר רק בערכות כלים בתלות הסביבתית במהלך תהליך הייצוא, אם הסכימה מכילה כתובת URL של שרת. במהלך תהליך הייבוא, אם כתובת ה-URL הזו מופיעה בתלות בסביבה ולסכימה יש פלייסהולדר מסוג ‎ $env_var, הפלייסהולדר יוחלף בסכימה.

ConnectorToolset

ייצוג ב-JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
שדות
connection

string

חובה. השם המלא של המשאב של חיבור Integration Connectors שאליו מתייחסים. פורמט: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

זה שינוי אופציונלי. הגדרה של אופן הטיפול באימות ב-Integration Connectors. כברירת מחדל, אימות אדמין מועבר בבקשות ל-Integration Connectors API. אפשר לשנות את ההגדרה הזו באמצעות הגדרת אימות אחרת למשתמשי הקצה. הערה: כדי לציין כאן הגדרת EUC, צריך להפעיל את האפשרות 'ביטול הגדרות אימות' בחיבור – אחרת, יצירת ערכת הכלים תיכשל. מידע נוסף זמין בכתובת: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

חובה. רשימת הפעולות או הפעולות על ישויות של המחבר ליצירת כלים.

EndUserAuthConfig

ייצוג ב-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.
}
שדות
שדה איחוד auth_config. הגדרת האימות. הערך auth_config יכול להיות רק אחד מהבאים:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

אימות באמצעות קוד הרשאה ל-Oauth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

אימות של הרשאת גישה מסוג OAuth 2.0 בפרופיל JWT.

Oauth2AuthCodeConfig

ייצוג ב-JSON
{
  "oauthToken": string
}
שדות
oauthToken

string

חובה. שם הפרמטר של טוקן OAuth להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

ייצוג ב-JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
שדות
issuer

string

חובה. שם הפרמטר של המנפיק להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

subject

string

חובה. שם הפרמטר של הנושא להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

clientKey

string

חובה. שם פרמטר של לקוח להעברה. חייב להיות בפורמט $context.variables.<name_of_variable>.

פעולה

ייצוג ב-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.
}
שדות
inputFields[]

string

זה שינוי אופציונלי. שדות של הישות שמשמשים כקלט לפעולה. אם לא מציינים שדות, המערכת משתמשת בכל השדות של הישות.

outputFields[]

string

זה שינוי אופציונלי. שדות הישות שיוחזרו מהפעולה. אם לא מציינים שדות, כל השדות של הישות יוחזרו.

שדה איחוד action_spec. מפרט של פעולה להגדרה לשימוש בכלי. הערך action_spec יכול להיות רק אחד מהבאים:
connectionActionId

string

מזהה של פעולת חיבור שהכלי ישתמש בה.

entityOperation

object (EntityOperation)

הגדרת פעולת ישות לשימוש בכלי.

EntityOperation

ייצוג ב-JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
שדות
entityId

string

חובה. המזהה של הישות.

operation

enum (OperationType)

חובה. הפעולה שצריך לבצע בישות.

משך

ייצוג ב-JSON
{
  "seconds": string,
  "nanos": integer
}
שדות
seconds

string (int64 format)

שניות חתומות של טווח הזמן. הערך חייב להיות בין ‎-315,576,000,000 לבין ‎+315,576,000,000, כולל. הערה: הגבולות האלה מחושבים לפי: 60 שניות בדקה * 60 דקות בשעה * 24 שעות ביממה * 365.25 ימים בשנה * 10,000 שנים

nanos

integer

שברים חתומים של שנייה ברזולוציית ננו-שנייה של טווח הזמן. משכי זמן של פחות משנייה מיוצגים באמצעות שדה seconds עם הערך 0 ושדה nanos עם ערך חיובי או שלילי. למשכי זמן של שנייה אחת או יותר, הערך בשדה nanos צריך להיות שונה מאפס ובעל אותו סימן כמו הערך בשדה seconds. הערך צריך להיות בין ‎-999,999,999 לבין ‎+999,999,999, כולל.

חותמת הזמן

ייצוג ב-JSON
{
  "seconds": string,
  "nanos": integer
}
שדות
seconds

string (int64 format)

מייצג את השניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) ב-1970-01-01T00:00:00Z. הערך חייב להיות בין ‎-62135596800 ל-‎253402300799, כולל (שמתאים לטווח 0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z).

nanos

integer

שבריר לא שלילי של שנייה ברזולוציית ננו-שנייה. השדה הזה מייצג את החלק של הננו-שנייה במשך הזמן, ולא מהווה חלופה לשניות. ערכי שניות שליליים עם שברים עדיין צריכים לכלול ערכי ננו-שניות לא שליליים שסופרים קדימה בזמן. הערך חייב להיות בין 0 ל-999,999,999, כולל.

ToolFakeConfig

ייצוג ב-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.
}
שדות
enableFakeMode

boolean

זה שינוי אופציונלי. אם הכלי משתמש במצב מזויף.

שדה איחוד tool_response. התגובה היא סטטית או שהיא מסופקת על ידי פונקציית Python. הערך tool_response יכול להיות רק אחד מהבאים:
codeBlock

object (CodeBlock)

זה שינוי אופציונלי. בלוק קוד שיופעל במקום קריאה אמיתית לכלי.

CodeBlock

ייצוג ב-JSON
{
  "pythonCode": string
}
שדות
pythonCode

string

חובה. קוד Python שיופעל במצב מזויף של הכלי. חתימת פונקציית Python הצפויה – כדי לתפוס את כל קריאות הכלים: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: כדי לתפוס קריאה ספציפית לכלי: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: אם הפונקציה מחזירה None, הכלי האמיתי יופעל במקום זאת.

RequestLocation

המיקום של מפתח ה-API בבקשה.

טיפוסים בני מנייה (enum)
REQUEST_LOCATION_UNSPECIFIED לא צוין. אין להשתמש בערך הזה.
HEADER מייצג את המפתח בכותרת ה-HTTP.
QUERY_STRING מייצג את המפתח במחרוזת של שאילתה.

OauthGrantType

סוגי הרשאות OAuth. יש תמיכה רק ב-client credential grant.

טיפוסים בני מנייה (enum)
OAUTH_GRANT_TYPE_UNSPECIFIED לא צוין. ברירת המחדל היא CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL מייצג את תהליך פרטי הכניסה של הלקוח.

סוג

סוגי נתונים של OpenAPI.

טיפוסים בני מנייה (enum)
TYPE_UNSPECIFIED הסוג לא צוין.
STRING סוג המחרוזת.
INTEGER סוג Integer.
NUMBER סוג המספר.
BOOLEAN סוג בוליאני.
OBJECT סוג האובייקט.
ARRAY סוג המערך.

NullValue

מייצג null JSON.

NullValue הוא ערך שמירה, שמשתמש בערך מספרי עם ערך אחד בלבד כדי לייצג את ערך ה-null עבור איחוד הסוגים Value.

שדה מסוג NullValue עם ערך כלשהו שאינו 0 נחשב לא תקין. רוב כלי הסריאליזציה של ProtoJSON יפלטו Value עם null_value שמוגדר כ-null JSON בלי קשר לערך המספרי, ולכן יבצעו המרה הלוך ושוב לערך 0.

טיפוסים בני מנייה (enum)
NULL_VALUE ערך null.

OperationType

הפעולה שצריך לבצע על היישות.

טיפוסים בני מנייה (enum)
OPERATION_TYPE_UNSPECIFIED לא צוין סוג הפעולה. לא תקין, יצירה או עדכון של ConnectorTool ייכשלו.
LIST פעולה ברשימה.
GET קבלת פעולה.
CREATE פעולת יצירה.
UPDATE פעולת עדכון.
DELETE פעולת מחיקה.

ExecutionType

סוג הביצוע של הכלי או של ערכת הכלים.

טיפוסים בני מנייה (enum)
EXECUTION_TYPE_UNSPECIFIED לא צוין סוג ההפעלה. אם לא מציינים ערך, ברירת המחדל היא SYNCHRONOUS.
SYNCHRONOUS הכלי מופעל באופן סינכרוני. הסשן ייחסם עד שהכלי יחזור.
ASYNCHRONOUS הכלי מופעל באופן אסינכרוני. הסשן ימשיך בזמן שהכלי פועל.

הערות על כלים

רמז הרסני: ✅ | רמז אידמפוטנטי: ❌ | רמז לקריאה בלבד: ❌ | רמז לעולם פתוח: ❌