Gemini Enterprise for Customer Experience v1 API - Class Tool (1.0.0-beta01)

public sealed class Tool : IMessage<Tool>, IEquatable<Tool>, IDeepCloneable<Tool>, IBufferMessage, IMessage

Reference documentation and code samples for the Gemini Enterprise for Customer Experience v1 API class Tool.

A tool represents an action that the CES agent can take to achieve certain goals.

Inheritance

object > Tool

Namespace

Google.Cloud.Ces.V1

Assembly

Google.Cloud.Ces.V1.dll

Constructors

Tool()

public Tool()

Tool(Tool)

public Tool(Tool other)
Parameter
Name Description
other Tool

Properties

ClientFunction

public ClientFunction ClientFunction { get; set; }

Optional. The client function.

Property Value
Type Description
ClientFunction

ConnectorTool

public ConnectorTool ConnectorTool { get; set; }

Optional. The Integration Connector tool.

Property Value
Type Description
ConnectorTool

CreateTime

public Timestamp CreateTime { get; set; }

Output only. Timestamp when the tool was created.

Property Value
Type Description
Timestamp

DataStoreTool

public DataStoreTool DataStoreTool { get; set; }

Optional. The data store tool.

Property Value
Type Description
DataStoreTool

DisplayName

public string DisplayName { get; set; }

Output only. The display name of the tool, derived based on the tool's type. For example, display name of a [ClientFunction][Tool.ClientFunction] is derived from its name property.

Property Value
Type Description
string

Etag

public string Etag { get; set; }

Etag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.

Property Value
Type Description
string

ExecutionType

public ExecutionType ExecutionType { get; set; }

Optional. The execution type of the tool.

Property Value
Type Description
ExecutionType

FileSearchTool

public FileSearchTool FileSearchTool { get; set; }

Optional. The file search tool.

Property Value
Type Description
FileSearchTool

GeneratedSummary

public string GeneratedSummary { get; set; }

Output only. If the tool is generated by the LLM assistant, this field contains a descriptive summary of the generation.

Property Value
Type Description
string

GoogleSearchTool

public GoogleSearchTool GoogleSearchTool { get; set; }

Optional. The google search tool.

Property Value
Type Description
GoogleSearchTool

McpTool

public McpTool McpTool { get; set; }

Optional. The MCP tool. An MCP tool cannot be created or updated directly and is managed by the MCP toolset.

Property Value
Type Description
McpTool

Name

public string Name { get; set; }

Identifier. The unique identifier of the tool. Format:

  • projects/{project}/locations/{location}/apps/{app}/tools/{tool} for ## standalone tools.

projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool} for tools retrieved from a toolset. These tools are dynamic and output-only, they cannot be referenced directly where a tool is expected.

Property Value
Type Description
string

OpenApiTool

public OpenApiTool OpenApiTool { get; set; }

Optional. The open API tool.

Property Value
Type Description
OpenApiTool

PythonFunction

public PythonFunction PythonFunction { get; set; }

Optional. The python function tool.

Property Value
Type Description
PythonFunction

SystemTool

public SystemTool SystemTool { get; set; }

Optional. The system tool.

Property Value
Type Description
SystemTool

ToolFakeConfig

public ToolFakeConfig ToolFakeConfig { get; set; }

Optional. Configuration for tool behavior in fake mode.

Property Value
Type Description
ToolFakeConfig

ToolName

public ToolName ToolName { get; set; }

ToolName-typed view over the Name resource name property.

Property Value
Type Description
ToolName

ToolTypeCase

public Tool.ToolTypeOneofCase ToolTypeCase { get; }
Property Value
Type Description
ToolToolTypeOneofCase

UpdateTime

public Timestamp UpdateTime { get; set; }

Output only. Timestamp when the tool was last updated.

Property Value
Type Description
Timestamp

WidgetTool

public WidgetTool WidgetTool { get; set; }

Optional. The widget tool.

Property Value
Type Description
WidgetTool