v1

latestOpenAPI 3.0.0Creative Commons Attribution 3.02026-07-1336218221.3 KB
projects

Creates a new tool in the given app.

post/v1/{+parent}/tools

Path parameters

parentstring required

Required. The resource name of the app to create a tool in.

Query parameters

toolIdstring

Optional. The ID to use for the tool, which will become the final component of the tool's resource name. If not provided, a unique ID will be automatically assigned for the tool.

Request body

namestring

Identifier. The resource name 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.

updateTimestring google-datetime

Output only. Timestamp when the tool was last updated.

createTimestring google-datetime

Output only. Timestamp when the tool was created.

executionType'EXECUTION_TYPE_UNSPECIFIED' | 'SYNCHRONOUS' | 'ASYNCHRONOUS'

Optional. The execution type of the tool.

displayNamestring

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

etagstring

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.

generatedSummarystring

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

timeoutstring google-duration

Optional. The timeout for the tool execution. If not set, the default timeout is 30 seconds for SYNCHRONOUS tools and 60 seconds for ASYNCHRONOUS tools.

Response

Successful response