- Resource: Tool
- OpenApiTool
- Authentication
- ApiKeyConfig
- RequestLocation
- OAuthConfig
- OauthGrantType
- ServiceAgentAuthConfig
- ServiceAgentAuth
- BearerTokenConfig
- TLSConfig
- CACert
- ServiceDirectoryConfig
- DataStoreTool
- FallbackPrompt
- ExtensionTool
- FunctionTool
- ToolType
- Methods
Resource: Tool
A tool provides a list of actions which are available to the Playbook
to attain its goal. A Tool consists of a description of the tool's usage and a specification of the tool which contains the schema and authentication information.
JSON representation |
---|
{ "name": string, "displayName": string, "description": string, "toolType": enum ( |
Fields | |
---|---|
name |
The unique identifier of the Tool. Format: |
display |
Required. The human-readable name of the Tool, unique within an agent. |
description |
Required. High level description of the Tool and its usage. |
tool |
Output only. The tool type. |
Union field specification . Specification of the Tool. specification can be only one of the following: |
|
open |
OpenAPI specification of the Tool. |
data |
Data store search tool specification. |
extension |
Vertex extension tool specification. |
function |
Client side executed function specification. |
OpenApiTool
An OpenAPI tool is a way to provide the Tool specifications in the Open API schema format.
JSON representation |
---|
{ "authentication": { object ( |
Fields | |
---|---|
authentication |
Optional. Authentication information required by the API. |
tls |
Optional. TLS configuration for the HTTPS verification. |
service |
Optional. Service Directory configuration. |
Union field schema . Schema representation. schema can be only one of the following: |
|
text |
Required. The OpenAPI schema specified as a text. |
Authentication
Authentication information required for API calls
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field auth_config . The auth configuration. auth_config can be only one of the following: |
|
api |
Config for API key auth. |
oauth |
Config for OAuth. |
service |
Config for Diglogflow service agent auth. |
bearer |
Config for bearer token auth. |
ApiKeyConfig
Config for authentication with API key.
JSON representation |
---|
{
"keyName": string,
"apiKey": string,
"requestLocation": enum ( |
Fields | |
---|---|
key |
Required. The parameter name or the header name of the API key. E.g., If the API request is "https://example.com/act?X-Api-Key= |
api |
Required. The API key. |
request |
Required. Key location in the request. |
RequestLocation
The location of the API key in the request.
Enums | |
---|---|
REQUEST_LOCATION_UNSPECIFIED |
Default value. This value is unused. |
HEADER |
Represents the key in http header. |
QUERY_STRING |
Represents the key in query string. |
OAuthConfig
Config for authentication with OAuth.
JSON representation |
---|
{
"oauthGrantType": enum ( |
Fields | |
---|---|
oauth |
Required. OAuth grant types. |
client |
Required. The client ID from the OAuth provider. |
client |
Required. The client secret from the OAuth provider. |
token |
Required. The token endpoint in the OAuth provider to exchange for an access token. |
scopes[] |
Optional. The OAuth scopes to grant. |
OauthGrantType
OAuth grant types. Only client credential grant is supported.
Enums | |
---|---|
OAUTH_GRANT_TYPE_UNSPECIFIED |
Default value. This value is unused. |
CLIENT_CREDENTIAL |
Represents the client credential flow. |
ServiceAgentAuthConfig
Config for auth using Diglogflow service agent.
JSON representation |
---|
{
"serviceAgentAuth": enum ( |
Fields | |
---|---|
service |
Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header. |
ServiceAgentAuth
Indicate the auth token type generated from the Diglogflow service agent.
Enums | |
---|---|
SERVICE_AGENT_AUTH_UNSPECIFIED |
Service agent auth type unspecified. Default to ID_TOKEN. |
ID_TOKEN |
Use ID token generated from service agent. This can be used to access Cloud Function and Cloud Run after you grant Invoker role to service-<PROJECT-NUMBER>@gcp-sa-dialogflow.iam.gserviceaccount.com . |
ACCESS_TOKEN |
Use access token generated from service agent. This can be used to access other Google Cloud APIs after you grant required roles to service-<PROJECT-NUMBER>@gcp-sa-dialogflow.iam.gserviceaccount.com . |
BearerTokenConfig
Config for authentication using bearer token.
JSON representation |
---|
{ "token": string } |
Fields | |
---|---|
token |
Required. The text token appended to the text |
TLSConfig
The TLS configuration.
JSON representation |
---|
{
"caCerts": [
{
object ( |
Fields | |
---|---|
ca |
Required. Specifies a list of allowed custom CA certificates for HTTPS verification. |
CACert
The CA certificate.
JSON representation |
---|
{ "displayName": string, "cert": string } |
Fields | |
---|---|
display |
Required. The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates. |
cert |
Required. The allowed custom CA certificates (in DER format) for HTTPS verification. This overrides the default SSL trust store. If this is empty or unspecified, Dialogflow will use Google's default trust store to verify certificates. N.B. Make sure the HTTPS server certificates are signed with "subject alt name". For instance a certificate can be self-signed using the following command, openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'") A base64-encoded string. |
ServiceDirectoryConfig
Configuration for tools using Service Directory.
JSON representation |
---|
{ "service": string } |
Fields | |
---|---|
service |
Required. The name of Service Directory service. Format: |
DataStoreTool
A DataStoreTool is a way to provide specifications needed to search a list of data stores.
JSON representation |
---|
{ "dataStoreConnections": [ { object ( |
Fields | |
---|---|
data |
Required. List of data stores to search. |
fallback |
Required. Fallback prompt configurations to use. |
FallbackPrompt
This type has no fields.
A FallbackPrompt is a way to provide specifications for the Data Store fallback prompt when generating responses.
ExtensionTool
An ExtensionTool is a way to use Vertex Extensions as a tool.
JSON representation |
---|
{ "name": string } |
Fields | |
---|---|
name |
Required. The full name of the referenced vertex extension. Formats: |
FunctionTool
A Function tool describes the functions to be invoked on the client side.
JSON representation |
---|
{ "inputSchema": { object }, "outputSchema": { object } } |
Fields | |
---|---|
input |
Optional. The JSON schema is encapsulated in a |
output |
Optional. The JSON schema is encapsulated in a |
ToolType
Represents the type of the tool.
Enums | |
---|---|
TOOL_TYPE_UNSPECIFIED |
Default value. This value is unused. |
CUSTOMIZED_TOOL |
Customer provided tool. |
BUILTIN_TOOL |
First party built-in tool created by Dialogflow which cannot be modified. |
Methods |
|
---|---|
|
Creates a Tool in the specified agent. |
|
Deletes a specified Tool . |
|
Exports the selected tools. |
|
Retrieves the specified Tool . |
|
Returns a list of Tools in the specified agent. |
|
Update the specified Tool . |