Tool version is a snapshot of the tool at certain timestamp.
To get more information about ToolVersion, see:
- API documentation
- How-to Guides
Example Usage
Dialogflowcx Tool Version Open Api
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as std from "@pulumi/std";
const agent = new gcp.diagflow.CxAgent("agent", {
displayName: "dialogflowcx-agent-open-api",
location: "global",
defaultLanguageCode: "en",
timeZone: "America/New_York",
description: "Example description.",
});
const tool = new gcp.diagflow.CxTool("tool", {
parent: agent.id,
displayName: "open-api-tool",
description: "Example Description",
openApiSpec: {
authentication: {
oauthConfig: {
oauthGrantType: "CLIENT_CREDENTIAL",
clientId: "example client ID",
clientSecret: "example client secret",
scopes: ["example scope"],
secretVersionForClientSecret: "projects/-/secrets/-/versions/-",
tokenEndpoint: "https://example.com/oauth/token",
},
},
tlsConfig: {
caCerts: [{
displayName: "example ca cert name",
cert: std.base64encode({
input: "example cert",
}).then(invoke => invoke.result),
}],
},
serviceDirectoryConfig: {
service: "projects/-/locations/-/namespaces/-/services/-",
},
textSchema: ` {
\\"openapi\\": \\"3.0.0\\",
\\"info\\": {
\\"title\\": \\"Time API\\",
\\"version\\": \\"1.0.0\\",
\\"description\\": \\"A simple API to get the current time.\\"
},
\\"servers\\": [
{
\\"url\\": \\"https://example-api-endpoint.com\\"
}
],
\\"paths\\": {
\\"/time\\": {
\\"get\\": {
\\"operationId\\": \\"getCurrentTime\\",
\\"summary\\": \\"Gets the current server time.\\",
\\"responses\\": {
\\"200\\": {
\\"description\\": \\"Successful response with the current time.\\",
\\"content\\": {
\\"application/json\\": {
\\"schema\\": {
\\"type\\": \\"object\\",
\\"properties\\": {
\\"currentTime\\": {
\\"type\\": \\"string\\",
\\"format\\": \\"date-time\\",
\\"description\\": \\"The current time in ISO 8601 format.\\"
}
}
}
}
}
}
}
}
}
}
}
`,
},
});
const openApiToolVersion = new gcp.diagflow.CxToolVersion("open_api_tool_version", {
parent: tool.id,
displayName: "Example Open API Tool Version",
tool: {
displayName: "open-api-tool",
description: "Example Description",
openApiSpec: {
authentication: {
oauthConfig: {
oauthGrantType: "CLIENT_CREDENTIAL",
clientId: "example client ID",
clientSecret: "example client secret",
scopes: ["example scope"],
secretVersionForClientSecret: "projects/-/secrets/-/versions/-",
tokenEndpoint: "https://example.com/oauth/token",
},
},
tlsConfig: {
caCerts: [{
displayName: "example ca cert name",
cert: std.base64encode({
input: "example cert",
}).then(invoke => invoke.result),
}],
},
serviceDirectoryConfig: {
service: "projects/-/locations/-/namespaces/-/services/-",
},
textSchema: ` {
\\"openapi\\": \\"3.0.0\\",
\\"info\\": {
\\"title\\": \\"Time API\\",
\\"version\\": \\"1.0.0\\",
\\"description\\": \\"A simple API to get the current time.\\"
},
\\"servers\\": [
{
\\"url\\": \\"https://example-api-endpoint.com\\"
}
],
\\"paths\\": {
\\"/time\\": {
\\"get\\": {
\\"operationId\\": \\"getCurrentTime\\",
\\"summary\\": \\"Gets the current server time.\\",
\\"responses\\": {
\\"200\\": {
\\"description\\": \\"Successful response with the current time.\\",
\\"content\\": {
\\"application/json\\": {
\\"schema\\": {
\\"type\\": \\"object\\",
\\"properties\\": {
\\"currentTime\\": {
\\"type\\": \\"string\\",
\\"format\\": \\"date-time\\",
\\"description\\": \\"The current time in ISO 8601 format.\\"
}
}
}
}
}
}
}
}
}
}
}
`,
},
},
});
import pulumi
import pulumi_gcp as gcp
import pulumi_std as std
agent = gcp.diagflow.CxAgent("agent",
display_name="dialogflowcx-agent-open-api",
location="global",
default_language_code="en",
time_zone="America/New_York",
description="Example description.")
tool = gcp.diagflow.CxTool("tool",
parent=agent.id,
display_name="open-api-tool",
description="Example Description",
open_api_spec={
"authentication": {
"oauth_config": {
"oauth_grant_type": "CLIENT_CREDENTIAL",
"client_id": "example client ID",
"client_secret": "example client secret",
"scopes": ["example scope"],
"secret_version_for_client_secret": "projects/-/secrets/-/versions/-",
"token_endpoint": "https://example.com/oauth/token",
},
},
"tls_config": {
"ca_certs": [{
"display_name": "example ca cert name",
"cert": std.base64encode(input="example cert").result,
}],
},
"service_directory_config": {
"service": "projects/-/locations/-/namespaces/-/services/-",
},
"text_schema": """ {
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
""",
})
open_api_tool_version = gcp.diagflow.CxToolVersion("open_api_tool_version",
parent=tool.id,
display_name="Example Open API Tool Version",
tool={
"display_name": "open-api-tool",
"description": "Example Description",
"open_api_spec": {
"authentication": {
"oauth_config": {
"oauth_grant_type": "CLIENT_CREDENTIAL",
"client_id": "example client ID",
"client_secret": "example client secret",
"scopes": ["example scope"],
"secret_version_for_client_secret": "projects/-/secrets/-/versions/-",
"token_endpoint": "https://example.com/oauth/token",
},
},
"tls_config": {
"ca_certs": [{
"display_name": "example ca cert name",
"cert": std.base64encode(input="example cert").result,
}],
},
"service_directory_config": {
"service": "projects/-/locations/-/namespaces/-/services/-",
},
"text_schema": """ {
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
""",
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/diagflow"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
agent, err := diagflow.NewCxAgent(ctx, "agent", &diagflow.CxAgentArgs{
DisplayName: pulumi.String("dialogflowcx-agent-open-api"),
Location: pulumi.String("global"),
DefaultLanguageCode: pulumi.String("en"),
TimeZone: pulumi.String("America/New_York"),
Description: pulumi.String("Example description."),
})
if err != nil {
return err
}
invokeBase64encode, err := std.Base64encode(ctx, &std.Base64encodeArgs{
Input: "example cert",
}, nil)
if err != nil {
return err
}
tool, err := diagflow.NewCxTool(ctx, "tool", &diagflow.CxToolArgs{
Parent: agent.ID(),
DisplayName: pulumi.String("open-api-tool"),
Description: pulumi.String("Example Description"),
OpenApiSpec: &diagflow.CxToolOpenApiSpecArgs{
Authentication: &diagflow.CxToolOpenApiSpecAuthenticationArgs{
OauthConfig: &diagflow.CxToolOpenApiSpecAuthenticationOauthConfigArgs{
OauthGrantType: pulumi.String("CLIENT_CREDENTIAL"),
ClientId: pulumi.String("example client ID"),
ClientSecret: pulumi.String("example client secret"),
Scopes: pulumi.StringArray{
pulumi.String("example scope"),
},
SecretVersionForClientSecret: pulumi.String("projects/-/secrets/-/versions/-"),
TokenEndpoint: pulumi.String("https://example.com/oauth/token"),
},
},
TlsConfig: &diagflow.CxToolOpenApiSpecTlsConfigArgs{
CaCerts: diagflow.CxToolOpenApiSpecTlsConfigCaCertArray{
&diagflow.CxToolOpenApiSpecTlsConfigCaCertArgs{
DisplayName: pulumi.String("example ca cert name"),
Cert: pulumi.String(invokeBase64encode.Result),
},
},
},
ServiceDirectoryConfig: &diagflow.CxToolOpenApiSpecServiceDirectoryConfigArgs{
Service: pulumi.String("projects/-/locations/-/namespaces/-/services/-"),
},
TextSchema: pulumi.String(` {
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
`),
},
})
if err != nil {
return err
}
invokeBase64encode1, err := std.Base64encode(ctx, &std.Base64encodeArgs{
Input: "example cert",
}, nil)
if err != nil {
return err
}
_, err = diagflow.NewCxToolVersion(ctx, "open_api_tool_version", &diagflow.CxToolVersionArgs{
Parent: tool.ID(),
DisplayName: pulumi.String("Example Open API Tool Version"),
Tool: &diagflow.CxToolVersionToolArgs{
DisplayName: pulumi.String("open-api-tool"),
Description: pulumi.String("Example Description"),
OpenApiSpec: &diagflow.CxToolVersionToolOpenApiSpecArgs{
Authentication: &diagflow.CxToolVersionToolOpenApiSpecAuthenticationArgs{
OauthConfig: &diagflow.CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs{
OauthGrantType: pulumi.String("CLIENT_CREDENTIAL"),
ClientId: pulumi.String("example client ID"),
ClientSecret: pulumi.String("example client secret"),
Scopes: pulumi.StringArray{
pulumi.String("example scope"),
},
SecretVersionForClientSecret: pulumi.String("projects/-/secrets/-/versions/-"),
TokenEndpoint: pulumi.String("https://example.com/oauth/token"),
},
},
TlsConfig: &diagflow.CxToolVersionToolOpenApiSpecTlsConfigArgs{
CaCerts: diagflow.CxToolVersionToolOpenApiSpecTlsConfigCaCertArray{
&diagflow.CxToolVersionToolOpenApiSpecTlsConfigCaCertArgs{
DisplayName: pulumi.String("example ca cert name"),
Cert: pulumi.String(invokeBase64encode1.Result),
},
},
},
ServiceDirectoryConfig: &diagflow.CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs{
Service: pulumi.String("projects/-/locations/-/namespaces/-/services/-"),
},
TextSchema: pulumi.String(` {
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
`),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var agent = new Gcp.Diagflow.CxAgent("agent", new()
{
DisplayName = "dialogflowcx-agent-open-api",
Location = "global",
DefaultLanguageCode = "en",
TimeZone = "America/New_York",
Description = "Example description.",
});
var tool = new Gcp.Diagflow.CxTool("tool", new()
{
Parent = agent.Id,
DisplayName = "open-api-tool",
Description = "Example Description",
OpenApiSpec = new Gcp.Diagflow.Inputs.CxToolOpenApiSpecArgs
{
Authentication = new Gcp.Diagflow.Inputs.CxToolOpenApiSpecAuthenticationArgs
{
OauthConfig = new Gcp.Diagflow.Inputs.CxToolOpenApiSpecAuthenticationOauthConfigArgs
{
OauthGrantType = "CLIENT_CREDENTIAL",
ClientId = "example client ID",
ClientSecret = "example client secret",
Scopes = new[]
{
"example scope",
},
SecretVersionForClientSecret = "projects/-/secrets/-/versions/-",
TokenEndpoint = "https://example.com/oauth/token",
},
},
TlsConfig = new Gcp.Diagflow.Inputs.CxToolOpenApiSpecTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Diagflow.Inputs.CxToolOpenApiSpecTlsConfigCaCertArgs
{
DisplayName = "example ca cert name",
Cert = Std.Base64encode.Invoke(new()
{
Input = "example cert",
}).Apply(invoke => invoke.Result),
},
},
},
ServiceDirectoryConfig = new Gcp.Diagflow.Inputs.CxToolOpenApiSpecServiceDirectoryConfigArgs
{
Service = "projects/-/locations/-/namespaces/-/services/-",
},
TextSchema = @" {
\""openapi\"": \""3.0.0\"",
\""info\"": {
\""title\"": \""Time API\"",
\""version\"": \""1.0.0\"",
\""description\"": \""A simple API to get the current time.\""
},
\""servers\"": [
{
\""url\"": \""https://example-api-endpoint.com\""
}
],
\""paths\"": {
\""/time\"": {
\""get\"": {
\""operationId\"": \""getCurrentTime\"",
\""summary\"": \""Gets the current server time.\"",
\""responses\"": {
\""200\"": {
\""description\"": \""Successful response with the current time.\"",
\""content\"": {
\""application/json\"": {
\""schema\"": {
\""type\"": \""object\"",
\""properties\"": {
\""currentTime\"": {
\""type\"": \""string\"",
\""format\"": \""date-time\"",
\""description\"": \""The current time in ISO 8601 format.\""
}
}
}
}
}
}
}
}
}
}
}
",
},
});
var openApiToolVersion = new Gcp.Diagflow.CxToolVersion("open_api_tool_version", new()
{
Parent = tool.Id,
DisplayName = "Example Open API Tool Version",
Tool = new Gcp.Diagflow.Inputs.CxToolVersionToolArgs
{
DisplayName = "open-api-tool",
Description = "Example Description",
OpenApiSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecArgs
{
Authentication = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecAuthenticationArgs
{
OauthConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs
{
OauthGrantType = "CLIENT_CREDENTIAL",
ClientId = "example client ID",
ClientSecret = "example client secret",
Scopes = new[]
{
"example scope",
},
SecretVersionForClientSecret = "projects/-/secrets/-/versions/-",
TokenEndpoint = "https://example.com/oauth/token",
},
},
TlsConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecTlsConfigCaCertArgs
{
DisplayName = "example ca cert name",
Cert = Std.Base64encode.Invoke(new()
{
Input = "example cert",
}).Apply(invoke => invoke.Result),
},
},
},
ServiceDirectoryConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs
{
Service = "projects/-/locations/-/namespaces/-/services/-",
},
TextSchema = @" {
\""openapi\"": \""3.0.0\"",
\""info\"": {
\""title\"": \""Time API\"",
\""version\"": \""1.0.0\"",
\""description\"": \""A simple API to get the current time.\""
},
\""servers\"": [
{
\""url\"": \""https://example-api-endpoint.com\""
}
],
\""paths\"": {
\""/time\"": {
\""get\"": {
\""operationId\"": \""getCurrentTime\"",
\""summary\"": \""Gets the current server time.\"",
\""responses\"": {
\""200\"": {
\""description\"": \""Successful response with the current time.\"",
\""content\"": {
\""application/json\"": {
\""schema\"": {
\""type\"": \""object\"",
\""properties\"": {
\""currentTime\"": {
\""type\"": \""string\"",
\""format\"": \""date-time\"",
\""description\"": \""The current time in ISO 8601 format.\""
}
}
}
}
}
}
}
}
}
}
}
",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.diagflow.CxAgent;
import com.pulumi.gcp.diagflow.CxAgentArgs;
import com.pulumi.gcp.diagflow.CxTool;
import com.pulumi.gcp.diagflow.CxToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolOpenApiSpecArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolOpenApiSpecAuthenticationArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolOpenApiSpecAuthenticationOauthConfigArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolOpenApiSpecTlsConfigArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolOpenApiSpecServiceDirectoryConfigArgs;
import com.pulumi.std.StdFunctions;
import com.pulumi.std.inputs.Base64encodeArgs;
import com.pulumi.gcp.diagflow.CxToolVersion;
import com.pulumi.gcp.diagflow.CxToolVersionArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolOpenApiSpecArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolOpenApiSpecAuthenticationArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolOpenApiSpecTlsConfigArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var agent = new CxAgent("agent", CxAgentArgs.builder()
.displayName("dialogflowcx-agent-open-api")
.location("global")
.defaultLanguageCode("en")
.timeZone("America/New_York")
.description("Example description.")
.build());
var tool = new CxTool("tool", CxToolArgs.builder()
.parent(agent.id())
.displayName("open-api-tool")
.description("Example Description")
.openApiSpec(CxToolOpenApiSpecArgs.builder()
.authentication(CxToolOpenApiSpecAuthenticationArgs.builder()
.oauthConfig(CxToolOpenApiSpecAuthenticationOauthConfigArgs.builder()
.oauthGrantType("CLIENT_CREDENTIAL")
.clientId("example client ID")
.clientSecret("example client secret")
.scopes("example scope")
.secretVersionForClientSecret("projects/-/secrets/-/versions/-")
.tokenEndpoint("https://example.com/oauth/token")
.build())
.build())
.tlsConfig(CxToolOpenApiSpecTlsConfigArgs.builder()
.caCerts(CxToolOpenApiSpecTlsConfigCaCertArgs.builder()
.displayName("example ca cert name")
.cert(StdFunctions.base64encode(Base64encodeArgs.builder()
.input("example cert")
.build()).result())
.build())
.build())
.serviceDirectoryConfig(CxToolOpenApiSpecServiceDirectoryConfigArgs.builder()
.service("projects/-/locations/-/namespaces/-/services/-")
.build())
.textSchema("""
{
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
""")
.build())
.build());
var openApiToolVersion = new CxToolVersion("openApiToolVersion", CxToolVersionArgs.builder()
.parent(tool.id())
.displayName("Example Open API Tool Version")
.tool(CxToolVersionToolArgs.builder()
.displayName("open-api-tool")
.description("Example Description")
.openApiSpec(CxToolVersionToolOpenApiSpecArgs.builder()
.authentication(CxToolVersionToolOpenApiSpecAuthenticationArgs.builder()
.oauthConfig(CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs.builder()
.oauthGrantType("CLIENT_CREDENTIAL")
.clientId("example client ID")
.clientSecret("example client secret")
.scopes("example scope")
.secretVersionForClientSecret("projects/-/secrets/-/versions/-")
.tokenEndpoint("https://example.com/oauth/token")
.build())
.build())
.tlsConfig(CxToolVersionToolOpenApiSpecTlsConfigArgs.builder()
.caCerts(CxToolVersionToolOpenApiSpecTlsConfigCaCertArgs.builder()
.displayName("example ca cert name")
.cert(StdFunctions.base64encode(Base64encodeArgs.builder()
.input("example cert")
.build()).result())
.build())
.build())
.serviceDirectoryConfig(CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs.builder()
.service("projects/-/locations/-/namespaces/-/services/-")
.build())
.textSchema("""
{
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
""")
.build())
.build())
.build());
}
}
resources:
agent:
type: gcp:diagflow:CxAgent
properties:
displayName: dialogflowcx-agent-open-api
location: global
defaultLanguageCode: en
timeZone: America/New_York
description: Example description.
tool:
type: gcp:diagflow:CxTool
properties:
parent: ${agent.id}
displayName: open-api-tool
description: Example Description
openApiSpec:
authentication:
oauthConfig:
oauthGrantType: CLIENT_CREDENTIAL
clientId: example client ID
clientSecret: example client secret
scopes:
- example scope
secretVersionForClientSecret: projects/-/secrets/-/versions/-
tokenEndpoint: https://example.com/oauth/token
tlsConfig:
caCerts:
- displayName: example ca cert name
cert:
fn::invoke:
function: std:base64encode
arguments:
input: example cert
return: result
serviceDirectoryConfig:
service: projects/-/locations/-/namespaces/-/services/-
textSchema: |2
{
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
openApiToolVersion:
type: gcp:diagflow:CxToolVersion
name: open_api_tool_version
properties:
parent: ${tool.id}
displayName: Example Open API Tool Version
tool:
displayName: open-api-tool
description: Example Description
openApiSpec:
authentication:
oauthConfig:
oauthGrantType: CLIENT_CREDENTIAL
clientId: example client ID
clientSecret: example client secret
scopes:
- example scope
secretVersionForClientSecret: projects/-/secrets/-/versions/-
tokenEndpoint: https://example.com/oauth/token
tlsConfig:
caCerts:
- displayName: example ca cert name
cert:
fn::invoke:
function: std:base64encode
arguments:
input: example cert
return: result
serviceDirectoryConfig:
service: projects/-/locations/-/namespaces/-/services/-
textSchema: |2
{
\"openapi\": \"3.0.0\",
\"info\": {
\"title\": \"Time API\",
\"version\": \"1.0.0\",
\"description\": \"A simple API to get the current time.\"
},
\"servers\": [
{
\"url\": \"https://example-api-endpoint.com\"
}
],
\"paths\": {
\"/time\": {
\"get\": {
\"operationId\": \"getCurrentTime\",
\"summary\": \"Gets the current server time.\",
\"responses\": {
\"200\": {
\"description\": \"Successful response with the current time.\",
\"content\": {
\"application/json\": {
\"schema\": {
\"type\": \"object\",
\"properties\": {
\"currentTime\": {
\"type\": \"string\",
\"format\": \"date-time\",
\"description\": \"The current time in ISO 8601 format.\"
}
}
}
}
}
}
}
}
}
}
}
Dialogflowcx Tool Version Data Store
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const myDatastore = new gcp.discoveryengine.DataStore("my_datastore", {
location: "global",
dataStoreId: "datastore-tool-version",
displayName: "datastore for Tool test",
industryVertical: "GENERIC",
contentConfig: "NO_CONTENT",
solutionTypes: ["SOLUTION_TYPE_CHAT"],
});
const agent = new gcp.diagflow.CxAgent("agent", {
displayName: "dialogflowcx-agent-data-store",
location: "global",
defaultLanguageCode: "en",
timeZone: "America/New_York",
description: "Example description.",
deleteChatEngineOnDestroy: true,
}, {
dependsOn: [myDatastore],
});
const project = gcp.organizations.getProject({});
const tool = new gcp.diagflow.CxTool("tool", {
parent: agent.id,
displayName: "datastore-tool",
description: "Example Description",
dataStoreSpec: {
dataStoreConnections: [{
dataStoreType: "UNSTRUCTURED",
dataStore: pulumi.all([project, myDatastore.dataStoreId]).apply(([project, dataStoreId]) => `projects/${project.number}/locations/global/collections/default_collection/dataStores/${dataStoreId}`),
documentProcessingMode: "DOCUMENTS",
}],
fallbackPrompt: {},
},
}, {
dependsOn: [
myDatastore,
agent,
],
});
const dataStoreToolVersion = new gcp.diagflow.CxToolVersion("data_store_tool_version", {
parent: tool.id,
displayName: "Example Data Store Tool Version",
tool: {
displayName: "datastore-tool",
description: "Example Description",
dataStoreSpec: {
dataStoreConnections: [{
dataStoreType: "UNSTRUCTURED",
dataStore: pulumi.all([project, myDatastore.dataStoreId]).apply(([project, dataStoreId]) => `projects/${project.number}/locations/global/collections/default_collection/dataStores/${dataStoreId}`),
documentProcessingMode: "DOCUMENTS",
}],
fallbackPrompt: {},
},
},
}, {
dependsOn: [
myDatastore,
agent,
],
});
import pulumi
import pulumi_gcp as gcp
my_datastore = gcp.discoveryengine.DataStore("my_datastore",
location="global",
data_store_id="datastore-tool-version",
display_name="datastore for Tool test",
industry_vertical="GENERIC",
content_config="NO_CONTENT",
solution_types=["SOLUTION_TYPE_CHAT"])
agent = gcp.diagflow.CxAgent("agent",
display_name="dialogflowcx-agent-data-store",
location="global",
default_language_code="en",
time_zone="America/New_York",
description="Example description.",
delete_chat_engine_on_destroy=True,
opts = pulumi.ResourceOptions(depends_on=[my_datastore]))
project = gcp.organizations.get_project()
tool = gcp.diagflow.CxTool("tool",
parent=agent.id,
display_name="datastore-tool",
description="Example Description",
data_store_spec={
"data_store_connections": [{
"data_store_type": "UNSTRUCTURED",
"data_store": my_datastore.data_store_id.apply(lambda data_store_id: f"projects/{project.number}/locations/global/collections/default_collection/dataStores/{data_store_id}"),
"document_processing_mode": "DOCUMENTS",
}],
"fallback_prompt": {},
},
opts = pulumi.ResourceOptions(depends_on=[
my_datastore,
agent,
]))
data_store_tool_version = gcp.diagflow.CxToolVersion("data_store_tool_version",
parent=tool.id,
display_name="Example Data Store Tool Version",
tool={
"display_name": "datastore-tool",
"description": "Example Description",
"data_store_spec": {
"data_store_connections": [{
"data_store_type": "UNSTRUCTURED",
"data_store": my_datastore.data_store_id.apply(lambda data_store_id: f"projects/{project.number}/locations/global/collections/default_collection/dataStores/{data_store_id}"),
"document_processing_mode": "DOCUMENTS",
}],
"fallback_prompt": {},
},
},
opts = pulumi.ResourceOptions(depends_on=[
my_datastore,
agent,
]))
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/diagflow"
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/discoveryengine"
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
myDatastore, err := discoveryengine.NewDataStore(ctx, "my_datastore", &discoveryengine.DataStoreArgs{
Location: pulumi.String("global"),
DataStoreId: pulumi.String("datastore-tool-version"),
DisplayName: pulumi.String("datastore for Tool test"),
IndustryVertical: pulumi.String("GENERIC"),
ContentConfig: pulumi.String("NO_CONTENT"),
SolutionTypes: pulumi.StringArray{
pulumi.String("SOLUTION_TYPE_CHAT"),
},
})
if err != nil {
return err
}
agent, err := diagflow.NewCxAgent(ctx, "agent", &diagflow.CxAgentArgs{
DisplayName: pulumi.String("dialogflowcx-agent-data-store"),
Location: pulumi.String("global"),
DefaultLanguageCode: pulumi.String("en"),
TimeZone: pulumi.String("America/New_York"),
Description: pulumi.String("Example description."),
DeleteChatEngineOnDestroy: pulumi.Bool(true),
}, pulumi.DependsOn([]pulumi.Resource{
myDatastore,
}))
if err != nil {
return err
}
project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
if err != nil {
return err
}
tool, err := diagflow.NewCxTool(ctx, "tool", &diagflow.CxToolArgs{
Parent: agent.ID(),
DisplayName: pulumi.String("datastore-tool"),
Description: pulumi.String("Example Description"),
DataStoreSpec: &diagflow.CxToolDataStoreSpecArgs{
DataStoreConnections: diagflow.CxToolDataStoreSpecDataStoreConnectionArray{
&diagflow.CxToolDataStoreSpecDataStoreConnectionArgs{
DataStoreType: pulumi.String("UNSTRUCTURED"),
DataStore: myDatastore.DataStoreId.ApplyT(func(dataStoreId string) (string, error) {
return fmt.Sprintf("projects/%v/locations/global/collections/default_collection/dataStores/%v", project.Number, dataStoreId), nil
}).(pulumi.StringOutput),
DocumentProcessingMode: pulumi.String("DOCUMENTS"),
},
},
FallbackPrompt: &diagflow.CxToolDataStoreSpecFallbackPromptArgs{},
},
}, pulumi.DependsOn([]pulumi.Resource{
myDatastore,
agent,
}))
if err != nil {
return err
}
_, err = diagflow.NewCxToolVersion(ctx, "data_store_tool_version", &diagflow.CxToolVersionArgs{
Parent: tool.ID(),
DisplayName: pulumi.String("Example Data Store Tool Version"),
Tool: &diagflow.CxToolVersionToolArgs{
DisplayName: pulumi.String("datastore-tool"),
Description: pulumi.String("Example Description"),
DataStoreSpec: &diagflow.CxToolVersionToolDataStoreSpecArgs{
DataStoreConnections: diagflow.CxToolVersionToolDataStoreSpecDataStoreConnectionArray{
&diagflow.CxToolVersionToolDataStoreSpecDataStoreConnectionArgs{
DataStoreType: pulumi.String("UNSTRUCTURED"),
DataStore: myDatastore.DataStoreId.ApplyT(func(dataStoreId string) (string, error) {
return fmt.Sprintf("projects/%v/locations/global/collections/default_collection/dataStores/%v", project.Number, dataStoreId), nil
}).(pulumi.StringOutput),
DocumentProcessingMode: pulumi.String("DOCUMENTS"),
},
},
FallbackPrompt: &diagflow.CxToolVersionToolDataStoreSpecFallbackPromptArgs{},
},
},
}, pulumi.DependsOn([]pulumi.Resource{
myDatastore,
agent,
}))
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var myDatastore = new Gcp.DiscoveryEngine.DataStore("my_datastore", new()
{
Location = "global",
DataStoreId = "datastore-tool-version",
DisplayName = "datastore for Tool test",
IndustryVertical = "GENERIC",
ContentConfig = "NO_CONTENT",
SolutionTypes = new[]
{
"SOLUTION_TYPE_CHAT",
},
});
var agent = new Gcp.Diagflow.CxAgent("agent", new()
{
DisplayName = "dialogflowcx-agent-data-store",
Location = "global",
DefaultLanguageCode = "en",
TimeZone = "America/New_York",
Description = "Example description.",
DeleteChatEngineOnDestroy = true,
}, new CustomResourceOptions
{
DependsOn =
{
myDatastore,
},
});
var project = Gcp.Organizations.GetProject.Invoke();
var tool = new Gcp.Diagflow.CxTool("tool", new()
{
Parent = agent.Id,
DisplayName = "datastore-tool",
Description = "Example Description",
DataStoreSpec = new Gcp.Diagflow.Inputs.CxToolDataStoreSpecArgs
{
DataStoreConnections = new[]
{
new Gcp.Diagflow.Inputs.CxToolDataStoreSpecDataStoreConnectionArgs
{
DataStoreType = "UNSTRUCTURED",
DataStore = Output.Tuple(project, myDatastore.DataStoreId).Apply(values =>
{
var project = values.Item1;
var dataStoreId = values.Item2;
return $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}/locations/global/collections/default_collection/dataStores/{dataStoreId}";
}),
DocumentProcessingMode = "DOCUMENTS",
},
},
FallbackPrompt = null,
},
}, new CustomResourceOptions
{
DependsOn =
{
myDatastore,
agent,
},
});
var dataStoreToolVersion = new Gcp.Diagflow.CxToolVersion("data_store_tool_version", new()
{
Parent = tool.Id,
DisplayName = "Example Data Store Tool Version",
Tool = new Gcp.Diagflow.Inputs.CxToolVersionToolArgs
{
DisplayName = "datastore-tool",
Description = "Example Description",
DataStoreSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolDataStoreSpecArgs
{
DataStoreConnections = new[]
{
new Gcp.Diagflow.Inputs.CxToolVersionToolDataStoreSpecDataStoreConnectionArgs
{
DataStoreType = "UNSTRUCTURED",
DataStore = Output.Tuple(project, myDatastore.DataStoreId).Apply(values =>
{
var project = values.Item1;
var dataStoreId = values.Item2;
return $"projects/{project.Apply(getProjectResult => getProjectResult.Number)}/locations/global/collections/default_collection/dataStores/{dataStoreId}";
}),
DocumentProcessingMode = "DOCUMENTS",
},
},
FallbackPrompt = null,
},
},
}, new CustomResourceOptions
{
DependsOn =
{
myDatastore,
agent,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.discoveryengine.DataStore;
import com.pulumi.gcp.discoveryengine.DataStoreArgs;
import com.pulumi.gcp.diagflow.CxAgent;
import com.pulumi.gcp.diagflow.CxAgentArgs;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.diagflow.CxTool;
import com.pulumi.gcp.diagflow.CxToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolDataStoreSpecArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolDataStoreSpecFallbackPromptArgs;
import com.pulumi.gcp.diagflow.CxToolVersion;
import com.pulumi.gcp.diagflow.CxToolVersionArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolDataStoreSpecArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolDataStoreSpecFallbackPromptArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var myDatastore = new DataStore("myDatastore", DataStoreArgs.builder()
.location("global")
.dataStoreId("datastore-tool-version")
.displayName("datastore for Tool test")
.industryVertical("GENERIC")
.contentConfig("NO_CONTENT")
.solutionTypes("SOLUTION_TYPE_CHAT")
.build());
var agent = new CxAgent("agent", CxAgentArgs.builder()
.displayName("dialogflowcx-agent-data-store")
.location("global")
.defaultLanguageCode("en")
.timeZone("America/New_York")
.description("Example description.")
.deleteChatEngineOnDestroy(true)
.build(), CustomResourceOptions.builder()
.dependsOn(myDatastore)
.build());
final var project = OrganizationsFunctions.getProject(GetProjectArgs.builder()
.build());
var tool = new CxTool("tool", CxToolArgs.builder()
.parent(agent.id())
.displayName("datastore-tool")
.description("Example Description")
.dataStoreSpec(CxToolDataStoreSpecArgs.builder()
.dataStoreConnections(CxToolDataStoreSpecDataStoreConnectionArgs.builder()
.dataStoreType("UNSTRUCTURED")
.dataStore(myDatastore.dataStoreId().applyValue(_dataStoreId -> String.format("projects/%s/locations/global/collections/default_collection/dataStores/%s", project.number(),_dataStoreId)))
.documentProcessingMode("DOCUMENTS")
.build())
.fallbackPrompt(CxToolDataStoreSpecFallbackPromptArgs.builder()
.build())
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(
myDatastore,
agent)
.build());
var dataStoreToolVersion = new CxToolVersion("dataStoreToolVersion", CxToolVersionArgs.builder()
.parent(tool.id())
.displayName("Example Data Store Tool Version")
.tool(CxToolVersionToolArgs.builder()
.displayName("datastore-tool")
.description("Example Description")
.dataStoreSpec(CxToolVersionToolDataStoreSpecArgs.builder()
.dataStoreConnections(CxToolVersionToolDataStoreSpecDataStoreConnectionArgs.builder()
.dataStoreType("UNSTRUCTURED")
.dataStore(myDatastore.dataStoreId().applyValue(_dataStoreId -> String.format("projects/%s/locations/global/collections/default_collection/dataStores/%s", project.number(),_dataStoreId)))
.documentProcessingMode("DOCUMENTS")
.build())
.fallbackPrompt(CxToolVersionToolDataStoreSpecFallbackPromptArgs.builder()
.build())
.build())
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(
myDatastore,
agent)
.build());
}
}
resources:
agent:
type: gcp:diagflow:CxAgent
properties:
displayName: dialogflowcx-agent-data-store
location: global
defaultLanguageCode: en
timeZone: America/New_York
description: Example description.
deleteChatEngineOnDestroy: true
options:
dependsOn:
- ${myDatastore}
tool:
type: gcp:diagflow:CxTool
properties:
parent: ${agent.id}
displayName: datastore-tool
description: Example Description
dataStoreSpec:
dataStoreConnections:
- dataStoreType: UNSTRUCTURED
dataStore: projects/${project.number}/locations/global/collections/default_collection/dataStores/${myDatastore.dataStoreId}
documentProcessingMode: DOCUMENTS
fallbackPrompt: {}
options:
dependsOn:
- ${myDatastore}
- ${agent}
myDatastore:
type: gcp:discoveryengine:DataStore
name: my_datastore
properties:
location: global
dataStoreId: datastore-tool-version
displayName: datastore for Tool test
industryVertical: GENERIC
contentConfig: NO_CONTENT
solutionTypes:
- SOLUTION_TYPE_CHAT
dataStoreToolVersion:
type: gcp:diagflow:CxToolVersion
name: data_store_tool_version
properties:
parent: ${tool.id}
displayName: Example Data Store Tool Version
tool:
displayName: datastore-tool
description: Example Description
dataStoreSpec:
dataStoreConnections:
- dataStoreType: UNSTRUCTURED
dataStore: projects/${project.number}/locations/global/collections/default_collection/dataStores/${myDatastore.dataStoreId}
documentProcessingMode: DOCUMENTS
fallbackPrompt: {}
options:
dependsOn:
- ${myDatastore}
- ${agent}
variables:
project:
fn::invoke:
function: gcp:organizations:getProject
arguments: {}
Dialogflowcx Tool Version Function
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const agent = new gcp.diagflow.CxAgent("agent", {
displayName: "dialogflowcx-agent-fucntion",
location: "global",
defaultLanguageCode: "en",
timeZone: "America/New_York",
description: "Example description.",
});
const tool = new gcp.diagflow.CxTool("tool", {
parent: agent.id,
displayName: "function-tool",
description: "Example Description",
functionSpec: {
inputSchema: ` {
\\"type\\": \\"object\\",
\\"properties\\": {
\\"message_to_echo\\": {
\\"type\\": \\"string\\",
\\"description\\": \\"The message that should be echoed back.\\"
}
},
\\"required\\": [
\\"message_to_echo\\"
]
}
`,
outputSchema: ` {
\\"type\\": \\"object\\",
\\"properties\\": {
\\"echoed_message\\": {
\\"type\\": \\"string\\",
\\"description\\": \\"The message that is echoed back.\\"
}
}
}
`,
},
});
const functionToolVersion = new gcp.diagflow.CxToolVersion("function_tool_version", {
parent: tool.id,
displayName: "Example Function Tool Version",
tool: {
displayName: "function-tool",
description: "Example Description",
functionSpec: {
inputSchema: ` {
\\"type\\": \\"object\\",
\\"properties\\": {
\\"message_to_echo\\": {
\\"type\\": \\"string\\",
\\"description\\": \\"The message that should be echoed back.\\"
}
},
\\"required\\": [
\\"message_to_echo\\"
]
}
`,
outputSchema: ` {
\\"type\\": \\"object\\",
\\"properties\\": {
\\"echoed_message\\": {
\\"type\\": \\"string\\",
\\"description\\": \\"The message that is echoed back.\\"
}
}
}
`,
},
},
});
import pulumi
import pulumi_gcp as gcp
agent = gcp.diagflow.CxAgent("agent",
display_name="dialogflowcx-agent-fucntion",
location="global",
default_language_code="en",
time_zone="America/New_York",
description="Example description.")
tool = gcp.diagflow.CxTool("tool",
parent=agent.id,
display_name="function-tool",
description="Example Description",
function_spec={
"input_schema": """ {
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
""",
"output_schema": """ {
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
""",
})
function_tool_version = gcp.diagflow.CxToolVersion("function_tool_version",
parent=tool.id,
display_name="Example Function Tool Version",
tool={
"display_name": "function-tool",
"description": "Example Description",
"function_spec": {
"input_schema": """ {
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
""",
"output_schema": """ {
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
""",
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/diagflow"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
agent, err := diagflow.NewCxAgent(ctx, "agent", &diagflow.CxAgentArgs{
DisplayName: pulumi.String("dialogflowcx-agent-fucntion"),
Location: pulumi.String("global"),
DefaultLanguageCode: pulumi.String("en"),
TimeZone: pulumi.String("America/New_York"),
Description: pulumi.String("Example description."),
})
if err != nil {
return err
}
tool, err := diagflow.NewCxTool(ctx, "tool", &diagflow.CxToolArgs{
Parent: agent.ID(),
DisplayName: pulumi.String("function-tool"),
Description: pulumi.String("Example Description"),
FunctionSpec: &diagflow.CxToolFunctionSpecArgs{
InputSchema: pulumi.String(` {
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
`),
OutputSchema: pulumi.String(` {
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
`),
},
})
if err != nil {
return err
}
_, err = diagflow.NewCxToolVersion(ctx, "function_tool_version", &diagflow.CxToolVersionArgs{
Parent: tool.ID(),
DisplayName: pulumi.String("Example Function Tool Version"),
Tool: &diagflow.CxToolVersionToolArgs{
DisplayName: pulumi.String("function-tool"),
Description: pulumi.String("Example Description"),
FunctionSpec: &diagflow.CxToolVersionToolFunctionSpecArgs{
InputSchema: pulumi.String(` {
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
`),
OutputSchema: pulumi.String(` {
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
`),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var agent = new Gcp.Diagflow.CxAgent("agent", new()
{
DisplayName = "dialogflowcx-agent-fucntion",
Location = "global",
DefaultLanguageCode = "en",
TimeZone = "America/New_York",
Description = "Example description.",
});
var tool = new Gcp.Diagflow.CxTool("tool", new()
{
Parent = agent.Id,
DisplayName = "function-tool",
Description = "Example Description",
FunctionSpec = new Gcp.Diagflow.Inputs.CxToolFunctionSpecArgs
{
InputSchema = @" {
\""type\"": \""object\"",
\""properties\"": {
\""message_to_echo\"": {
\""type\"": \""string\"",
\""description\"": \""The message that should be echoed back.\""
}
},
\""required\"": [
\""message_to_echo\""
]
}
",
OutputSchema = @" {
\""type\"": \""object\"",
\""properties\"": {
\""echoed_message\"": {
\""type\"": \""string\"",
\""description\"": \""The message that is echoed back.\""
}
}
}
",
},
});
var functionToolVersion = new Gcp.Diagflow.CxToolVersion("function_tool_version", new()
{
Parent = tool.Id,
DisplayName = "Example Function Tool Version",
Tool = new Gcp.Diagflow.Inputs.CxToolVersionToolArgs
{
DisplayName = "function-tool",
Description = "Example Description",
FunctionSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolFunctionSpecArgs
{
InputSchema = @" {
\""type\"": \""object\"",
\""properties\"": {
\""message_to_echo\"": {
\""type\"": \""string\"",
\""description\"": \""The message that should be echoed back.\""
}
},
\""required\"": [
\""message_to_echo\""
]
}
",
OutputSchema = @" {
\""type\"": \""object\"",
\""properties\"": {
\""echoed_message\"": {
\""type\"": \""string\"",
\""description\"": \""The message that is echoed back.\""
}
}
}
",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.diagflow.CxAgent;
import com.pulumi.gcp.diagflow.CxAgentArgs;
import com.pulumi.gcp.diagflow.CxTool;
import com.pulumi.gcp.diagflow.CxToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolFunctionSpecArgs;
import com.pulumi.gcp.diagflow.CxToolVersion;
import com.pulumi.gcp.diagflow.CxToolVersionArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolFunctionSpecArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var agent = new CxAgent("agent", CxAgentArgs.builder()
.displayName("dialogflowcx-agent-fucntion")
.location("global")
.defaultLanguageCode("en")
.timeZone("America/New_York")
.description("Example description.")
.build());
var tool = new CxTool("tool", CxToolArgs.builder()
.parent(agent.id())
.displayName("function-tool")
.description("Example Description")
.functionSpec(CxToolFunctionSpecArgs.builder()
.inputSchema("""
{
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
""")
.outputSchema("""
{
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
""")
.build())
.build());
var functionToolVersion = new CxToolVersion("functionToolVersion", CxToolVersionArgs.builder()
.parent(tool.id())
.displayName("Example Function Tool Version")
.tool(CxToolVersionToolArgs.builder()
.displayName("function-tool")
.description("Example Description")
.functionSpec(CxToolVersionToolFunctionSpecArgs.builder()
.inputSchema("""
{
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
""")
.outputSchema("""
{
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
""")
.build())
.build())
.build());
}
}
resources:
agent:
type: gcp:diagflow:CxAgent
properties:
displayName: dialogflowcx-agent-fucntion
location: global
defaultLanguageCode: en
timeZone: America/New_York
description: Example description.
tool:
type: gcp:diagflow:CxTool
properties:
parent: ${agent.id}
displayName: function-tool
description: Example Description
functionSpec:
inputSchema: |2
{
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
outputSchema: |2
{
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
functionToolVersion:
type: gcp:diagflow:CxToolVersion
name: function_tool_version
properties:
parent: ${tool.id}
displayName: Example Function Tool Version
tool:
displayName: function-tool
description: Example Description
functionSpec:
inputSchema: |2
{
\"type\": \"object\",
\"properties\": {
\"message_to_echo\": {
\"type\": \"string\",
\"description\": \"The message that should be echoed back.\"
}
},
\"required\": [
\"message_to_echo\"
]
}
outputSchema: |2
{
\"type\": \"object\",
\"properties\": {
\"echoed_message\": {
\"type\": \"string\",
\"description\": \"The message that is echoed back.\"
}
}
}
Dialogflowcx Tool Version Connector
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const agent = new gcp.diagflow.CxAgent("agent", {
displayName: "dialogflowcx-agent-connector",
location: "us-central1",
defaultLanguageCode: "en",
timeZone: "America/New_York",
description: "Example description.",
deleteChatEngineOnDestroy: true,
});
const bqDataset = new gcp.bigquery.Dataset("bq_dataset", {
datasetId: "example_dataset",
friendlyName: "test",
description: "This is a test description",
location: "us-central1",
deleteContentsOnDestroy: true,
});
const testProject = gcp.organizations.getProject({});
const integrationConnector = new gcp.integrationconnectors.Connection("integration_connector", {
name: "example-connection",
location: "us-central1",
connectorVersion: pulumi.interpolate`projects/${agent.project}/locations/global/providers/gcp/connectors/bigquery/versions/1`,
description: "tf created description",
configVariables: [
{
key: "dataset_id",
stringValue: bqDataset.datasetId,
},
{
key: "project_id",
stringValue: agent.project,
},
{
key: "support_native_data_type",
booleanValue: false,
},
{
key: "proxy_enabled",
booleanValue: false,
},
],
serviceAccount: testProject.then(testProject => `${testProject.number}-compute@developer.gserviceaccount.com`),
authConfig: {
authType: "AUTH_TYPE_UNSPECIFIED",
},
});
const bqTable = new gcp.bigquery.Table("bq_table", {
deletionProtection: false,
datasetId: bqDataset.datasetId,
tableId: "example_table",
});
const connectorSaDatasetPerms = new gcp.bigquery.DatasetIamMember("connector_sa_dataset_perms", {
project: testProject.then(testProject => testProject.projectId),
datasetId: bqDataset.datasetId,
role: "roles/bigquery.dataEditor",
member: testProject.then(testProject => `serviceAccount:${testProject.number}-compute@developer.gserviceaccount.com`),
});
const tool = new gcp.diagflow.CxTool("tool", {
parent: agent.id,
displayName: "connector-tool",
description: "Example Description",
connectorSpec: {
name: pulumi.interpolate`projects/${agent.project}/locations/us-central1/connections/${integrationConnector.name}`,
actions: [
{
connectionActionId: "ExecuteCustomQuery",
inputFields: ["test1"],
outputFields: ["test1"],
},
{
entityOperation: {
entityId: bqTable.tableId,
operation: "LIST",
},
},
],
},
});
const connectorToolVersion = new gcp.diagflow.CxToolVersion("connector_tool_version", {
parent: tool.id,
displayName: "Example Connector Tool Version",
tool: {
displayName: "connector-tool",
description: "Example Description",
connectorSpec: {
name: pulumi.interpolate`projects/${agent.project}/locations/us-central1/connections/${integrationConnector.name}`,
actions: [
{
connectionActionId: "ExecuteCustomQuery",
inputFields: ["test1"],
outputFields: ["test1"],
},
{
entityOperation: {
entityId: bqTable.tableId,
operation: "LIST",
},
},
],
},
},
});
import pulumi
import pulumi_gcp as gcp
agent = gcp.diagflow.CxAgent("agent",
display_name="dialogflowcx-agent-connector",
location="us-central1",
default_language_code="en",
time_zone="America/New_York",
description="Example description.",
delete_chat_engine_on_destroy=True)
bq_dataset = gcp.bigquery.Dataset("bq_dataset",
dataset_id="example_dataset",
friendly_name="test",
description="This is a test description",
location="us-central1",
delete_contents_on_destroy=True)
test_project = gcp.organizations.get_project()
integration_connector = gcp.integrationconnectors.Connection("integration_connector",
name="example-connection",
location="us-central1",
connector_version=agent.project.apply(lambda project: f"projects/{project}/locations/global/providers/gcp/connectors/bigquery/versions/1"),
description="tf created description",
config_variables=[
{
"key": "dataset_id",
"string_value": bq_dataset.dataset_id,
},
{
"key": "project_id",
"string_value": agent.project,
},
{
"key": "support_native_data_type",
"boolean_value": False,
},
{
"key": "proxy_enabled",
"boolean_value": False,
},
],
service_account=f"{test_project.number}-compute@developer.gserviceaccount.com",
auth_config={
"auth_type": "AUTH_TYPE_UNSPECIFIED",
})
bq_table = gcp.bigquery.Table("bq_table",
deletion_protection=False,
dataset_id=bq_dataset.dataset_id,
table_id="example_table")
connector_sa_dataset_perms = gcp.bigquery.DatasetIamMember("connector_sa_dataset_perms",
project=test_project.project_id,
dataset_id=bq_dataset.dataset_id,
role="roles/bigquery.dataEditor",
member=f"serviceAccount:{test_project.number}-compute@developer.gserviceaccount.com")
tool = gcp.diagflow.CxTool("tool",
parent=agent.id,
display_name="connector-tool",
description="Example Description",
connector_spec={
"name": pulumi.Output.all(
project=agent.project,
name=integration_connector.name
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/us-central1/connections/{resolved_outputs['name']}")
,
"actions": [
{
"connection_action_id": "ExecuteCustomQuery",
"input_fields": ["test1"],
"output_fields": ["test1"],
},
{
"entity_operation": {
"entity_id": bq_table.table_id,
"operation": "LIST",
},
},
],
})
connector_tool_version = gcp.diagflow.CxToolVersion("connector_tool_version",
parent=tool.id,
display_name="Example Connector Tool Version",
tool={
"display_name": "connector-tool",
"description": "Example Description",
"connector_spec": {
"name": pulumi.Output.all(
project=agent.project,
name=integration_connector.name
).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project']}/locations/us-central1/connections/{resolved_outputs['name']}")
,
"actions": [
{
"connection_action_id": "ExecuteCustomQuery",
"input_fields": ["test1"],
"output_fields": ["test1"],
},
{
"entity_operation": {
"entity_id": bq_table.table_id,
"operation": "LIST",
},
},
],
},
})
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/bigquery"
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/diagflow"
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/integrationconnectors"
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
agent, err := diagflow.NewCxAgent(ctx, "agent", &diagflow.CxAgentArgs{
DisplayName: pulumi.String("dialogflowcx-agent-connector"),
Location: pulumi.String("us-central1"),
DefaultLanguageCode: pulumi.String("en"),
TimeZone: pulumi.String("America/New_York"),
Description: pulumi.String("Example description."),
DeleteChatEngineOnDestroy: pulumi.Bool(true),
})
if err != nil {
return err
}
bqDataset, err := bigquery.NewDataset(ctx, "bq_dataset", &bigquery.DatasetArgs{
DatasetId: pulumi.String("example_dataset"),
FriendlyName: pulumi.String("test"),
Description: pulumi.String("This is a test description"),
Location: pulumi.String("us-central1"),
DeleteContentsOnDestroy: pulumi.Bool(true),
})
if err != nil {
return err
}
testProject, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
if err != nil {
return err
}
integrationConnector, err := integrationconnectors.NewConnection(ctx, "integration_connector", &integrationconnectors.ConnectionArgs{
Name: pulumi.String("example-connection"),
Location: pulumi.String("us-central1"),
ConnectorVersion: agent.Project.ApplyT(func(project string) (string, error) {
return fmt.Sprintf("projects/%v/locations/global/providers/gcp/connectors/bigquery/versions/1", project), nil
}).(pulumi.StringOutput),
Description: pulumi.String("tf created description"),
ConfigVariables: integrationconnectors.ConnectionConfigVariableArray{
&integrationconnectors.ConnectionConfigVariableArgs{
Key: pulumi.String("dataset_id"),
StringValue: bqDataset.DatasetId,
},
&integrationconnectors.ConnectionConfigVariableArgs{
Key: pulumi.String("project_id"),
StringValue: agent.Project,
},
&integrationconnectors.ConnectionConfigVariableArgs{
Key: pulumi.String("support_native_data_type"),
BooleanValue: pulumi.Bool(false),
},
&integrationconnectors.ConnectionConfigVariableArgs{
Key: pulumi.String("proxy_enabled"),
BooleanValue: pulumi.Bool(false),
},
},
ServiceAccount: pulumi.Sprintf("%v-compute@developer.gserviceaccount.com", testProject.Number),
AuthConfig: &integrationconnectors.ConnectionAuthConfigArgs{
AuthType: pulumi.String("AUTH_TYPE_UNSPECIFIED"),
},
})
if err != nil {
return err
}
bqTable, err := bigquery.NewTable(ctx, "bq_table", &bigquery.TableArgs{
DeletionProtection: pulumi.Bool(false),
DatasetId: bqDataset.DatasetId,
TableId: pulumi.String("example_table"),
})
if err != nil {
return err
}
_, err = bigquery.NewDatasetIamMember(ctx, "connector_sa_dataset_perms", &bigquery.DatasetIamMemberArgs{
Project: pulumi.String(testProject.ProjectId),
DatasetId: bqDataset.DatasetId,
Role: pulumi.String("roles/bigquery.dataEditor"),
Member: pulumi.Sprintf("serviceAccount:%v-compute@developer.gserviceaccount.com", testProject.Number),
})
if err != nil {
return err
}
tool, err := diagflow.NewCxTool(ctx, "tool", &diagflow.CxToolArgs{
Parent: agent.ID(),
DisplayName: pulumi.String("connector-tool"),
Description: pulumi.String("Example Description"),
ConnectorSpec: &diagflow.CxToolConnectorSpecArgs{
Name: pulumi.All(agent.Project, integrationConnector.Name).ApplyT(func(_args []interface{}) (string, error) {
project := _args[0].(string)
name := _args[1].(string)
return fmt.Sprintf("projects/%v/locations/us-central1/connections/%v", project, name), nil
}).(pulumi.StringOutput),
Actions: diagflow.CxToolConnectorSpecActionArray{
&diagflow.CxToolConnectorSpecActionArgs{
ConnectionActionId: pulumi.String("ExecuteCustomQuery"),
InputFields: pulumi.StringArray{
pulumi.String("test1"),
},
OutputFields: pulumi.StringArray{
pulumi.String("test1"),
},
},
&diagflow.CxToolConnectorSpecActionArgs{
EntityOperation: &diagflow.CxToolConnectorSpecActionEntityOperationArgs{
EntityId: bqTable.TableId,
Operation: pulumi.String("LIST"),
},
},
},
},
})
if err != nil {
return err
}
_, err = diagflow.NewCxToolVersion(ctx, "connector_tool_version", &diagflow.CxToolVersionArgs{
Parent: tool.ID(),
DisplayName: pulumi.String("Example Connector Tool Version"),
Tool: &diagflow.CxToolVersionToolArgs{
DisplayName: pulumi.String("connector-tool"),
Description: pulumi.String("Example Description"),
ConnectorSpec: &diagflow.CxToolVersionToolConnectorSpecArgs{
Name: pulumi.All(agent.Project, integrationConnector.Name).ApplyT(func(_args []interface{}) (string, error) {
project := _args[0].(string)
name := _args[1].(string)
return fmt.Sprintf("projects/%v/locations/us-central1/connections/%v", project, name), nil
}).(pulumi.StringOutput),
Actions: diagflow.CxToolVersionToolConnectorSpecActionArray{
&diagflow.CxToolVersionToolConnectorSpecActionArgs{
ConnectionActionId: pulumi.String("ExecuteCustomQuery"),
InputFields: pulumi.StringArray{
pulumi.String("test1"),
},
OutputFields: pulumi.StringArray{
pulumi.String("test1"),
},
},
&diagflow.CxToolVersionToolConnectorSpecActionArgs{
EntityOperation: &diagflow.CxToolVersionToolConnectorSpecActionEntityOperationArgs{
EntityId: bqTable.TableId,
Operation: pulumi.String("LIST"),
},
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var agent = new Gcp.Diagflow.CxAgent("agent", new()
{
DisplayName = "dialogflowcx-agent-connector",
Location = "us-central1",
DefaultLanguageCode = "en",
TimeZone = "America/New_York",
Description = "Example description.",
DeleteChatEngineOnDestroy = true,
});
var bqDataset = new Gcp.BigQuery.Dataset("bq_dataset", new()
{
DatasetId = "example_dataset",
FriendlyName = "test",
Description = "This is a test description",
Location = "us-central1",
DeleteContentsOnDestroy = true,
});
var testProject = Gcp.Organizations.GetProject.Invoke();
var integrationConnector = new Gcp.IntegrationConnectors.Connection("integration_connector", new()
{
Name = "example-connection",
Location = "us-central1",
ConnectorVersion = agent.Project.Apply(project => $"projects/{project}/locations/global/providers/gcp/connectors/bigquery/versions/1"),
Description = "tf created description",
ConfigVariables = new[]
{
new Gcp.IntegrationConnectors.Inputs.ConnectionConfigVariableArgs
{
Key = "dataset_id",
StringValue = bqDataset.DatasetId,
},
new Gcp.IntegrationConnectors.Inputs.ConnectionConfigVariableArgs
{
Key = "project_id",
StringValue = agent.Project,
},
new Gcp.IntegrationConnectors.Inputs.ConnectionConfigVariableArgs
{
Key = "support_native_data_type",
BooleanValue = false,
},
new Gcp.IntegrationConnectors.Inputs.ConnectionConfigVariableArgs
{
Key = "proxy_enabled",
BooleanValue = false,
},
},
ServiceAccount = $"{testProject.Apply(getProjectResult => getProjectResult.Number)}-compute@developer.gserviceaccount.com",
AuthConfig = new Gcp.IntegrationConnectors.Inputs.ConnectionAuthConfigArgs
{
AuthType = "AUTH_TYPE_UNSPECIFIED",
},
});
var bqTable = new Gcp.BigQuery.Table("bq_table", new()
{
DeletionProtection = false,
DatasetId = bqDataset.DatasetId,
TableId = "example_table",
});
var connectorSaDatasetPerms = new Gcp.BigQuery.DatasetIamMember("connector_sa_dataset_perms", new()
{
Project = testProject.Apply(getProjectResult => getProjectResult.ProjectId),
DatasetId = bqDataset.DatasetId,
Role = "roles/bigquery.dataEditor",
Member = $"serviceAccount:{testProject.Apply(getProjectResult => getProjectResult.Number)}-compute@developer.gserviceaccount.com",
});
var tool = new Gcp.Diagflow.CxTool("tool", new()
{
Parent = agent.Id,
DisplayName = "connector-tool",
Description = "Example Description",
ConnectorSpec = new Gcp.Diagflow.Inputs.CxToolConnectorSpecArgs
{
Name = Output.Tuple(agent.Project, integrationConnector.Name).Apply(values =>
{
var project = values.Item1;
var name = values.Item2;
return $"projects/{project}/locations/us-central1/connections/{name}";
}),
Actions = new[]
{
new Gcp.Diagflow.Inputs.CxToolConnectorSpecActionArgs
{
ConnectionActionId = "ExecuteCustomQuery",
InputFields = new[]
{
"test1",
},
OutputFields = new[]
{
"test1",
},
},
new Gcp.Diagflow.Inputs.CxToolConnectorSpecActionArgs
{
EntityOperation = new Gcp.Diagflow.Inputs.CxToolConnectorSpecActionEntityOperationArgs
{
EntityId = bqTable.TableId,
Operation = "LIST",
},
},
},
},
});
var connectorToolVersion = new Gcp.Diagflow.CxToolVersion("connector_tool_version", new()
{
Parent = tool.Id,
DisplayName = "Example Connector Tool Version",
Tool = new Gcp.Diagflow.Inputs.CxToolVersionToolArgs
{
DisplayName = "connector-tool",
Description = "Example Description",
ConnectorSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecArgs
{
Name = Output.Tuple(agent.Project, integrationConnector.Name).Apply(values =>
{
var project = values.Item1;
var name = values.Item2;
return $"projects/{project}/locations/us-central1/connections/{name}";
}),
Actions = new[]
{
new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecActionArgs
{
ConnectionActionId = "ExecuteCustomQuery",
InputFields = new[]
{
"test1",
},
OutputFields = new[]
{
"test1",
},
},
new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecActionArgs
{
EntityOperation = new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecActionEntityOperationArgs
{
EntityId = bqTable.TableId,
Operation = "LIST",
},
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.diagflow.CxAgent;
import com.pulumi.gcp.diagflow.CxAgentArgs;
import com.pulumi.gcp.bigquery.Dataset;
import com.pulumi.gcp.bigquery.DatasetArgs;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.integrationconnectors.Connection;
import com.pulumi.gcp.integrationconnectors.ConnectionArgs;
import com.pulumi.gcp.integrationconnectors.inputs.ConnectionConfigVariableArgs;
import com.pulumi.gcp.integrationconnectors.inputs.ConnectionAuthConfigArgs;
import com.pulumi.gcp.bigquery.Table;
import com.pulumi.gcp.bigquery.TableArgs;
import com.pulumi.gcp.bigquery.DatasetIamMember;
import com.pulumi.gcp.bigquery.DatasetIamMemberArgs;
import com.pulumi.gcp.diagflow.CxTool;
import com.pulumi.gcp.diagflow.CxToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolConnectorSpecArgs;
import com.pulumi.gcp.diagflow.CxToolVersion;
import com.pulumi.gcp.diagflow.CxToolVersionArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolArgs;
import com.pulumi.gcp.diagflow.inputs.CxToolVersionToolConnectorSpecArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var agent = new CxAgent("agent", CxAgentArgs.builder()
.displayName("dialogflowcx-agent-connector")
.location("us-central1")
.defaultLanguageCode("en")
.timeZone("America/New_York")
.description("Example description.")
.deleteChatEngineOnDestroy(true)
.build());
var bqDataset = new Dataset("bqDataset", DatasetArgs.builder()
.datasetId("example_dataset")
.friendlyName("test")
.description("This is a test description")
.location("us-central1")
.deleteContentsOnDestroy(true)
.build());
final var testProject = OrganizationsFunctions.getProject(GetProjectArgs.builder()
.build());
var integrationConnector = new Connection("integrationConnector", ConnectionArgs.builder()
.name("example-connection")
.location("us-central1")
.connectorVersion(agent.project().applyValue(_project -> String.format("projects/%s/locations/global/providers/gcp/connectors/bigquery/versions/1", _project)))
.description("tf created description")
.configVariables(
ConnectionConfigVariableArgs.builder()
.key("dataset_id")
.stringValue(bqDataset.datasetId())
.build(),
ConnectionConfigVariableArgs.builder()
.key("project_id")
.stringValue(agent.project())
.build(),
ConnectionConfigVariableArgs.builder()
.key("support_native_data_type")
.booleanValue(false)
.build(),
ConnectionConfigVariableArgs.builder()
.key("proxy_enabled")
.booleanValue(false)
.build())
.serviceAccount(String.format("%s-compute@developer.gserviceaccount.com", testProject.number()))
.authConfig(ConnectionAuthConfigArgs.builder()
.authType("AUTH_TYPE_UNSPECIFIED")
.build())
.build());
var bqTable = new Table("bqTable", TableArgs.builder()
.deletionProtection(false)
.datasetId(bqDataset.datasetId())
.tableId("example_table")
.build());
var connectorSaDatasetPerms = new DatasetIamMember("connectorSaDatasetPerms", DatasetIamMemberArgs.builder()
.project(testProject.projectId())
.datasetId(bqDataset.datasetId())
.role("roles/bigquery.dataEditor")
.member(String.format("serviceAccount:%s-compute@developer.gserviceaccount.com", testProject.number()))
.build());
var tool = new CxTool("tool", CxToolArgs.builder()
.parent(agent.id())
.displayName("connector-tool")
.description("Example Description")
.connectorSpec(CxToolConnectorSpecArgs.builder()
.name(Output.tuple(agent.project(), integrationConnector.name()).applyValue(values -> {
var project = values.t1;
var name = values.t2;
return String.format("projects/%s/locations/us-central1/connections/%s", project,name);
}))
.actions(
CxToolConnectorSpecActionArgs.builder()
.connectionActionId("ExecuteCustomQuery")
.inputFields("test1")
.outputFields("test1")
.build(),
CxToolConnectorSpecActionArgs.builder()
.entityOperation(CxToolConnectorSpecActionEntityOperationArgs.builder()
.entityId(bqTable.tableId())
.operation("LIST")
.build())
.build())
.build())
.build());
var connectorToolVersion = new CxToolVersion("connectorToolVersion", CxToolVersionArgs.builder()
.parent(tool.id())
.displayName("Example Connector Tool Version")
.tool(CxToolVersionToolArgs.builder()
.displayName("connector-tool")
.description("Example Description")
.connectorSpec(CxToolVersionToolConnectorSpecArgs.builder()
.name(Output.tuple(agent.project(), integrationConnector.name()).applyValue(values -> {
var project = values.t1;
var name = values.t2;
return String.format("projects/%s/locations/us-central1/connections/%s", project,name);
}))
.actions(
CxToolVersionToolConnectorSpecActionArgs.builder()
.connectionActionId("ExecuteCustomQuery")
.inputFields("test1")
.outputFields("test1")
.build(),
CxToolVersionToolConnectorSpecActionArgs.builder()
.entityOperation(CxToolVersionToolConnectorSpecActionEntityOperationArgs.builder()
.entityId(bqTable.tableId())
.operation("LIST")
.build())
.build())
.build())
.build())
.build());
}
}
resources:
agent:
type: gcp:diagflow:CxAgent
properties:
displayName: dialogflowcx-agent-connector
location: us-central1
defaultLanguageCode: en
timeZone: America/New_York
description: Example description.
deleteChatEngineOnDestroy: true
integrationConnector:
type: gcp:integrationconnectors:Connection
name: integration_connector
properties:
name: example-connection
location: us-central1
connectorVersion: projects/${agent.project}/locations/global/providers/gcp/connectors/bigquery/versions/1
description: tf created description
configVariables:
- key: dataset_id
stringValue: ${bqDataset.datasetId}
- key: project_id
stringValue: ${agent.project}
- key: support_native_data_type
booleanValue: false
- key: proxy_enabled
booleanValue: false
serviceAccount: ${testProject.number}-compute@developer.gserviceaccount.com
authConfig:
authType: AUTH_TYPE_UNSPECIFIED
bqDataset:
type: gcp:bigquery:Dataset
name: bq_dataset
properties:
datasetId: example_dataset
friendlyName: test
description: This is a test description
location: us-central1
deleteContentsOnDestroy: true
bqTable:
type: gcp:bigquery:Table
name: bq_table
properties:
deletionProtection: false
datasetId: ${bqDataset.datasetId}
tableId: example_table
connectorSaDatasetPerms:
type: gcp:bigquery:DatasetIamMember
name: connector_sa_dataset_perms
properties:
project: ${testProject.projectId}
datasetId: ${bqDataset.datasetId}
role: roles/bigquery.dataEditor
member: serviceAccount:${testProject.number}-compute@developer.gserviceaccount.com
tool:
type: gcp:diagflow:CxTool
properties:
parent: ${agent.id}
displayName: connector-tool
description: Example Description
connectorSpec:
name: projects/${agent.project}/locations/us-central1/connections/${integrationConnector.name}
actions:
- connectionActionId: ExecuteCustomQuery
inputFields:
- test1
outputFields:
- test1
- entityOperation:
entityId: ${bqTable.tableId}
operation: LIST
connectorToolVersion:
type: gcp:diagflow:CxToolVersion
name: connector_tool_version
properties:
parent: ${tool.id}
displayName: Example Connector Tool Version
tool:
displayName: connector-tool
description: Example Description
connectorSpec:
name: projects/${agent.project}/locations/us-central1/connections/${integrationConnector.name}
actions:
- connectionActionId: ExecuteCustomQuery
inputFields:
- test1
outputFields:
- test1
- entityOperation:
entityId: ${bqTable.tableId}
operation: LIST
variables:
testProject:
fn::invoke:
function: gcp:organizations:getProject
arguments: {}
Create CxToolVersion Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CxToolVersion(name: string, args: CxToolVersionArgs, opts?: CustomResourceOptions);@overload
def CxToolVersion(resource_name: str,
args: CxToolVersionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def CxToolVersion(resource_name: str,
opts: Optional[ResourceOptions] = None,
display_name: Optional[str] = None,
parent: Optional[str] = None,
tool: Optional[CxToolVersionToolArgs] = None)func NewCxToolVersion(ctx *Context, name string, args CxToolVersionArgs, opts ...ResourceOption) (*CxToolVersion, error)public CxToolVersion(string name, CxToolVersionArgs args, CustomResourceOptions? opts = null)
public CxToolVersion(String name, CxToolVersionArgs args)
public CxToolVersion(String name, CxToolVersionArgs args, CustomResourceOptions options)
type: gcp:diagflow:CxToolVersion
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args CxToolVersionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args CxToolVersionArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args CxToolVersionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CxToolVersionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CxToolVersionArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var cxToolVersionResource = new Gcp.Diagflow.CxToolVersion("cxToolVersionResource", new()
{
DisplayName = "string",
Parent = "string",
Tool = new Gcp.Diagflow.Inputs.CxToolVersionToolArgs
{
Description = "string",
DisplayName = "string",
ConnectorSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecArgs
{
Actions = new[]
{
new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecActionArgs
{
ConnectionActionId = "string",
EntityOperation = new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecActionEntityOperationArgs
{
EntityId = "string",
Operation = "string",
},
InputFields = new[]
{
"string",
},
OutputFields = new[]
{
"string",
},
},
},
Name = "string",
EndUserAuthConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecEndUserAuthConfigArgs
{
Oauth2AuthCodeConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfigArgs
{
OauthToken = "string",
},
Oauth2JwtBearerConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2JwtBearerConfigArgs
{
ClientKey = "string",
Issuer = "string",
Subject = "string",
},
},
},
DataStoreSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolDataStoreSpecArgs
{
DataStoreConnections = new[]
{
new Gcp.Diagflow.Inputs.CxToolVersionToolDataStoreSpecDataStoreConnectionArgs
{
DataStore = "string",
DataStoreType = "string",
DocumentProcessingMode = "string",
},
},
FallbackPrompt = null,
},
FunctionSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolFunctionSpecArgs
{
InputSchema = "string",
OutputSchema = "string",
},
Name = "string",
OpenApiSpec = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecArgs
{
TextSchema = "string",
Authentication = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecAuthenticationArgs
{
ApiKeyConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecAuthenticationApiKeyConfigArgs
{
KeyName = "string",
RequestLocation = "string",
ApiKey = "string",
SecretVersionForApiKey = "string",
},
BearerTokenConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecAuthenticationBearerTokenConfigArgs
{
SecretVersionForToken = "string",
Token = "string",
},
OauthConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs
{
ClientId = "string",
OauthGrantType = "string",
TokenEndpoint = "string",
ClientSecret = "string",
Scopes = new[]
{
"string",
},
SecretVersionForClientSecret = "string",
},
ServiceAgentAuthConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecAuthenticationServiceAgentAuthConfigArgs
{
ServiceAgentAuth = "string",
},
},
ServiceDirectoryConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs
{
Service = "string",
},
TlsConfig = new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Diagflow.Inputs.CxToolVersionToolOpenApiSpecTlsConfigCaCertArgs
{
Cert = "string",
DisplayName = "string",
},
},
},
},
ToolType = "string",
},
});
example, err := diagflow.NewCxToolVersion(ctx, "cxToolVersionResource", &diagflow.CxToolVersionArgs{
DisplayName: pulumi.String("string"),
Parent: pulumi.String("string"),
Tool: &diagflow.CxToolVersionToolArgs{
Description: pulumi.String("string"),
DisplayName: pulumi.String("string"),
ConnectorSpec: &diagflow.CxToolVersionToolConnectorSpecArgs{
Actions: diagflow.CxToolVersionToolConnectorSpecActionArray{
&diagflow.CxToolVersionToolConnectorSpecActionArgs{
ConnectionActionId: pulumi.String("string"),
EntityOperation: &diagflow.CxToolVersionToolConnectorSpecActionEntityOperationArgs{
EntityId: pulumi.String("string"),
Operation: pulumi.String("string"),
},
InputFields: pulumi.StringArray{
pulumi.String("string"),
},
OutputFields: pulumi.StringArray{
pulumi.String("string"),
},
},
},
Name: pulumi.String("string"),
EndUserAuthConfig: &diagflow.CxToolVersionToolConnectorSpecEndUserAuthConfigArgs{
Oauth2AuthCodeConfig: &diagflow.CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfigArgs{
OauthToken: pulumi.String("string"),
},
Oauth2JwtBearerConfig: &diagflow.CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2JwtBearerConfigArgs{
ClientKey: pulumi.String("string"),
Issuer: pulumi.String("string"),
Subject: pulumi.String("string"),
},
},
},
DataStoreSpec: &diagflow.CxToolVersionToolDataStoreSpecArgs{
DataStoreConnections: diagflow.CxToolVersionToolDataStoreSpecDataStoreConnectionArray{
&diagflow.CxToolVersionToolDataStoreSpecDataStoreConnectionArgs{
DataStore: pulumi.String("string"),
DataStoreType: pulumi.String("string"),
DocumentProcessingMode: pulumi.String("string"),
},
},
FallbackPrompt: &diagflow.CxToolVersionToolDataStoreSpecFallbackPromptArgs{},
},
FunctionSpec: &diagflow.CxToolVersionToolFunctionSpecArgs{
InputSchema: pulumi.String("string"),
OutputSchema: pulumi.String("string"),
},
Name: pulumi.String("string"),
OpenApiSpec: &diagflow.CxToolVersionToolOpenApiSpecArgs{
TextSchema: pulumi.String("string"),
Authentication: &diagflow.CxToolVersionToolOpenApiSpecAuthenticationArgs{
ApiKeyConfig: &diagflow.CxToolVersionToolOpenApiSpecAuthenticationApiKeyConfigArgs{
KeyName: pulumi.String("string"),
RequestLocation: pulumi.String("string"),
ApiKey: pulumi.String("string"),
SecretVersionForApiKey: pulumi.String("string"),
},
BearerTokenConfig: &diagflow.CxToolVersionToolOpenApiSpecAuthenticationBearerTokenConfigArgs{
SecretVersionForToken: pulumi.String("string"),
Token: pulumi.String("string"),
},
OauthConfig: &diagflow.CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs{
ClientId: pulumi.String("string"),
OauthGrantType: pulumi.String("string"),
TokenEndpoint: pulumi.String("string"),
ClientSecret: pulumi.String("string"),
Scopes: pulumi.StringArray{
pulumi.String("string"),
},
SecretVersionForClientSecret: pulumi.String("string"),
},
ServiceAgentAuthConfig: &diagflow.CxToolVersionToolOpenApiSpecAuthenticationServiceAgentAuthConfigArgs{
ServiceAgentAuth: pulumi.String("string"),
},
},
ServiceDirectoryConfig: &diagflow.CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs{
Service: pulumi.String("string"),
},
TlsConfig: &diagflow.CxToolVersionToolOpenApiSpecTlsConfigArgs{
CaCerts: diagflow.CxToolVersionToolOpenApiSpecTlsConfigCaCertArray{
&diagflow.CxToolVersionToolOpenApiSpecTlsConfigCaCertArgs{
Cert: pulumi.String("string"),
DisplayName: pulumi.String("string"),
},
},
},
},
ToolType: pulumi.String("string"),
},
})
var cxToolVersionResource = new CxToolVersion("cxToolVersionResource", CxToolVersionArgs.builder()
.displayName("string")
.parent("string")
.tool(CxToolVersionToolArgs.builder()
.description("string")
.displayName("string")
.connectorSpec(CxToolVersionToolConnectorSpecArgs.builder()
.actions(CxToolVersionToolConnectorSpecActionArgs.builder()
.connectionActionId("string")
.entityOperation(CxToolVersionToolConnectorSpecActionEntityOperationArgs.builder()
.entityId("string")
.operation("string")
.build())
.inputFields("string")
.outputFields("string")
.build())
.name("string")
.endUserAuthConfig(CxToolVersionToolConnectorSpecEndUserAuthConfigArgs.builder()
.oauth2AuthCodeConfig(CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfigArgs.builder()
.oauthToken("string")
.build())
.oauth2JwtBearerConfig(CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2JwtBearerConfigArgs.builder()
.clientKey("string")
.issuer("string")
.subject("string")
.build())
.build())
.build())
.dataStoreSpec(CxToolVersionToolDataStoreSpecArgs.builder()
.dataStoreConnections(CxToolVersionToolDataStoreSpecDataStoreConnectionArgs.builder()
.dataStore("string")
.dataStoreType("string")
.documentProcessingMode("string")
.build())
.fallbackPrompt(CxToolVersionToolDataStoreSpecFallbackPromptArgs.builder()
.build())
.build())
.functionSpec(CxToolVersionToolFunctionSpecArgs.builder()
.inputSchema("string")
.outputSchema("string")
.build())
.name("string")
.openApiSpec(CxToolVersionToolOpenApiSpecArgs.builder()
.textSchema("string")
.authentication(CxToolVersionToolOpenApiSpecAuthenticationArgs.builder()
.apiKeyConfig(CxToolVersionToolOpenApiSpecAuthenticationApiKeyConfigArgs.builder()
.keyName("string")
.requestLocation("string")
.apiKey("string")
.secretVersionForApiKey("string")
.build())
.bearerTokenConfig(CxToolVersionToolOpenApiSpecAuthenticationBearerTokenConfigArgs.builder()
.secretVersionForToken("string")
.token("string")
.build())
.oauthConfig(CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs.builder()
.clientId("string")
.oauthGrantType("string")
.tokenEndpoint("string")
.clientSecret("string")
.scopes("string")
.secretVersionForClientSecret("string")
.build())
.serviceAgentAuthConfig(CxToolVersionToolOpenApiSpecAuthenticationServiceAgentAuthConfigArgs.builder()
.serviceAgentAuth("string")
.build())
.build())
.serviceDirectoryConfig(CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs.builder()
.service("string")
.build())
.tlsConfig(CxToolVersionToolOpenApiSpecTlsConfigArgs.builder()
.caCerts(CxToolVersionToolOpenApiSpecTlsConfigCaCertArgs.builder()
.cert("string")
.displayName("string")
.build())
.build())
.build())
.toolType("string")
.build())
.build());
cx_tool_version_resource = gcp.diagflow.CxToolVersion("cxToolVersionResource",
display_name="string",
parent="string",
tool={
"description": "string",
"display_name": "string",
"connector_spec": {
"actions": [{
"connection_action_id": "string",
"entity_operation": {
"entity_id": "string",
"operation": "string",
},
"input_fields": ["string"],
"output_fields": ["string"],
}],
"name": "string",
"end_user_auth_config": {
"oauth2_auth_code_config": {
"oauth_token": "string",
},
"oauth2_jwt_bearer_config": {
"client_key": "string",
"issuer": "string",
"subject": "string",
},
},
},
"data_store_spec": {
"data_store_connections": [{
"data_store": "string",
"data_store_type": "string",
"document_processing_mode": "string",
}],
"fallback_prompt": {},
},
"function_spec": {
"input_schema": "string",
"output_schema": "string",
},
"name": "string",
"open_api_spec": {
"text_schema": "string",
"authentication": {
"api_key_config": {
"key_name": "string",
"request_location": "string",
"api_key": "string",
"secret_version_for_api_key": "string",
},
"bearer_token_config": {
"secret_version_for_token": "string",
"token": "string",
},
"oauth_config": {
"client_id": "string",
"oauth_grant_type": "string",
"token_endpoint": "string",
"client_secret": "string",
"scopes": ["string"],
"secret_version_for_client_secret": "string",
},
"service_agent_auth_config": {
"service_agent_auth": "string",
},
},
"service_directory_config": {
"service": "string",
},
"tls_config": {
"ca_certs": [{
"cert": "string",
"display_name": "string",
}],
},
},
"tool_type": "string",
})
const cxToolVersionResource = new gcp.diagflow.CxToolVersion("cxToolVersionResource", {
displayName: "string",
parent: "string",
tool: {
description: "string",
displayName: "string",
connectorSpec: {
actions: [{
connectionActionId: "string",
entityOperation: {
entityId: "string",
operation: "string",
},
inputFields: ["string"],
outputFields: ["string"],
}],
name: "string",
endUserAuthConfig: {
oauth2AuthCodeConfig: {
oauthToken: "string",
},
oauth2JwtBearerConfig: {
clientKey: "string",
issuer: "string",
subject: "string",
},
},
},
dataStoreSpec: {
dataStoreConnections: [{
dataStore: "string",
dataStoreType: "string",
documentProcessingMode: "string",
}],
fallbackPrompt: {},
},
functionSpec: {
inputSchema: "string",
outputSchema: "string",
},
name: "string",
openApiSpec: {
textSchema: "string",
authentication: {
apiKeyConfig: {
keyName: "string",
requestLocation: "string",
apiKey: "string",
secretVersionForApiKey: "string",
},
bearerTokenConfig: {
secretVersionForToken: "string",
token: "string",
},
oauthConfig: {
clientId: "string",
oauthGrantType: "string",
tokenEndpoint: "string",
clientSecret: "string",
scopes: ["string"],
secretVersionForClientSecret: "string",
},
serviceAgentAuthConfig: {
serviceAgentAuth: "string",
},
},
serviceDirectoryConfig: {
service: "string",
},
tlsConfig: {
caCerts: [{
cert: "string",
displayName: "string",
}],
},
},
toolType: "string",
},
});
type: gcp:diagflow:CxToolVersion
properties:
displayName: string
parent: string
tool:
connectorSpec:
actions:
- connectionActionId: string
entityOperation:
entityId: string
operation: string
inputFields:
- string
outputFields:
- string
endUserAuthConfig:
oauth2AuthCodeConfig:
oauthToken: string
oauth2JwtBearerConfig:
clientKey: string
issuer: string
subject: string
name: string
dataStoreSpec:
dataStoreConnections:
- dataStore: string
dataStoreType: string
documentProcessingMode: string
fallbackPrompt: {}
description: string
displayName: string
functionSpec:
inputSchema: string
outputSchema: string
name: string
openApiSpec:
authentication:
apiKeyConfig:
apiKey: string
keyName: string
requestLocation: string
secretVersionForApiKey: string
bearerTokenConfig:
secretVersionForToken: string
token: string
oauthConfig:
clientId: string
clientSecret: string
oauthGrantType: string
scopes:
- string
secretVersionForClientSecret: string
tokenEndpoint: string
serviceAgentAuthConfig:
serviceAgentAuth: string
serviceDirectoryConfig:
service: string
textSchema: string
tlsConfig:
caCerts:
- cert: string
displayName: string
toolType: string
CxToolVersion Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The CxToolVersion resource accepts the following input properties:
- Display
Name string - The display name of the tool version.
- Parent string
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- Tool
Cx
Tool Version Tool - Snapshot of the tool to be associated with this version. Structure is documented below.
- Display
Name string - The display name of the tool version.
- Parent string
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- Tool
Cx
Tool Version Tool Args - Snapshot of the tool to be associated with this version. Structure is documented below.
- display
Name String - The display name of the tool version.
- parent String
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool
Cx
Tool Version Tool - Snapshot of the tool to be associated with this version. Structure is documented below.
- display
Name string - The display name of the tool version.
- parent string
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool
Cx
Tool Version Tool - Snapshot of the tool to be associated with this version. Structure is documented below.
- display_
name str - The display name of the tool version.
- parent str
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool
Cx
Tool Version Tool Args - Snapshot of the tool to be associated with this version. Structure is documented below.
- display
Name String - The display name of the tool version.
- parent String
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool Property Map
- Snapshot of the tool to be associated with this version. Structure is documented below.
Outputs
All input properties are implicitly available as output properties. Additionally, the CxToolVersion resource produces the following output properties:
- Create
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- Update
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Create
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- Update
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- update
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- update
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create_
time str - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- update_
time str - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- update
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
Look up Existing CxToolVersion Resource
Get an existing CxToolVersion resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: CxToolVersionState, opts?: CustomResourceOptions): CxToolVersion@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
create_time: Optional[str] = None,
display_name: Optional[str] = None,
name: Optional[str] = None,
parent: Optional[str] = None,
tool: Optional[CxToolVersionToolArgs] = None,
update_time: Optional[str] = None) -> CxToolVersionfunc GetCxToolVersion(ctx *Context, name string, id IDInput, state *CxToolVersionState, opts ...ResourceOption) (*CxToolVersion, error)public static CxToolVersion Get(string name, Input<string> id, CxToolVersionState? state, CustomResourceOptions? opts = null)public static CxToolVersion get(String name, Output<String> id, CxToolVersionState state, CustomResourceOptions options)resources: _: type: gcp:diagflow:CxToolVersion get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Create
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Display
Name string - The display name of the tool version.
- Name string
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- Parent string
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- Tool
Cx
Tool Version Tool - Snapshot of the tool to be associated with this version. Structure is documented below.
- Update
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Create
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Display
Name string - The display name of the tool version.
- Name string
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- Parent string
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- Tool
Cx
Tool Version Tool Args - Snapshot of the tool to be associated with this version. Structure is documented below.
- Update
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- display
Name String - The display name of the tool version.
- name String
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- parent String
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool
Cx
Tool Version Tool - Snapshot of the tool to be associated with this version. Structure is documented below.
- update
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- display
Name string - The display name of the tool version.
- name string
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- parent string
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool
Cx
Tool Version Tool - Snapshot of the tool to be associated with this version. Structure is documented below.
- update
Time string - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create_
time str - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- display_
name str - The display name of the tool version.
- name str
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- parent str
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool
Cx
Tool Version Tool Args - Snapshot of the tool to be associated with this version. Structure is documented below.
- update_
time str - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- display
Name String - The display name of the tool version.
- name String
- The unique identifier of the tool version. Format: projects//locations//agents//tools//versions/.
- parent String
- The tool to create a Version for. Format: projects//locations//agents//tools/.
- tool Property Map
- Snapshot of the tool to be associated with this version. Structure is documented below.
- update
Time String - Last time the tool version was created or modified. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
Supporting Types
CxToolVersionTool, CxToolVersionToolArgs
- Description string
- High level description of the Tool and its usage.
- Display
Name string - The human-readable name of the tool, unique within the agent.
- Connector
Spec CxTool Version Tool Connector Spec - Integration connectors tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec,functionSpec, orconnectorSpecmay be set. Structure is documented below. - Data
Store CxSpec Tool Version Tool Data Store Spec - Data store search tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - Function
Spec CxTool Version Tool Function Spec - Client side executed function specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - Name string
- (Output) The unique identifier of the Tool. Format: projects//locations//agents//tools/.
- Open
Api CxSpec Tool Version Tool Open Api Spec - OpenAPI specification of the Tool.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - Tool
Type string - (Output) The tool type.
- Description string
- High level description of the Tool and its usage.
- Display
Name string - The human-readable name of the tool, unique within the agent.
- Connector
Spec CxTool Version Tool Connector Spec - Integration connectors tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec,functionSpec, orconnectorSpecmay be set. Structure is documented below. - Data
Store CxSpec Tool Version Tool Data Store Spec - Data store search tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - Function
Spec CxTool Version Tool Function Spec - Client side executed function specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - Name string
- (Output) The unique identifier of the Tool. Format: projects//locations//agents//tools/.
- Open
Api CxSpec Tool Version Tool Open Api Spec - OpenAPI specification of the Tool.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - Tool
Type string - (Output) The tool type.
- description String
- High level description of the Tool and its usage.
- display
Name String - The human-readable name of the tool, unique within the agent.
- connector
Spec CxTool Version Tool Connector Spec - Integration connectors tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec,functionSpec, orconnectorSpecmay be set. Structure is documented below. - data
Store CxSpec Tool Version Tool Data Store Spec - Data store search tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - function
Spec CxTool Version Tool Function Spec - Client side executed function specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - name String
- (Output) The unique identifier of the Tool. Format: projects//locations//agents//tools/.
- open
Api CxSpec Tool Version Tool Open Api Spec - OpenAPI specification of the Tool.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - tool
Type String - (Output) The tool type.
- description string
- High level description of the Tool and its usage.
- display
Name string - The human-readable name of the tool, unique within the agent.
- connector
Spec CxTool Version Tool Connector Spec - Integration connectors tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec,functionSpec, orconnectorSpecmay be set. Structure is documented below. - data
Store CxSpec Tool Version Tool Data Store Spec - Data store search tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - function
Spec CxTool Version Tool Function Spec - Client side executed function specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - name string
- (Output) The unique identifier of the Tool. Format: projects//locations//agents//tools/.
- open
Api CxSpec Tool Version Tool Open Api Spec - OpenAPI specification of the Tool.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - tool
Type string - (Output) The tool type.
- description str
- High level description of the Tool and its usage.
- display_
name str - The human-readable name of the tool, unique within the agent.
- connector_
spec CxTool Version Tool Connector Spec - Integration connectors tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec,functionSpec, orconnectorSpecmay be set. Structure is documented below. - data_
store_ Cxspec Tool Version Tool Data Store Spec - Data store search tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - function_
spec CxTool Version Tool Function Spec - Client side executed function specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - name str
- (Output) The unique identifier of the Tool. Format: projects//locations//agents//tools/.
- open_
api_ Cxspec Tool Version Tool Open Api Spec - OpenAPI specification of the Tool.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - tool_
type str - (Output) The tool type.
- description String
- High level description of the Tool and its usage.
- display
Name String - The human-readable name of the tool, unique within the agent.
- connector
Spec Property Map - Integration connectors tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec,functionSpec, orconnectorSpecmay be set. Structure is documented below. - data
Store Property MapSpec - Data store search tool specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - function
Spec Property Map - Client side executed function specification.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - name String
- (Output) The unique identifier of the Tool. Format: projects//locations//agents//tools/.
- open
Api Property MapSpec - OpenAPI specification of the Tool.
This field is part of a union field
specification: Only one ofopenApiSpec,dataStoreSpec, orfunctionSpecmay be set. Structure is documented below. - tool
Type String - (Output) The tool type.
CxToolVersionToolConnectorSpec, CxToolVersionToolConnectorSpecArgs
- Actions
List<Cx
Tool Version Tool Connector Spec Action> - Actions for the tool to use. Structure is documented below.
- Name string
- The full resource name of the referenced Integration Connectors Connection. Format: projects//locations//connections/*
- End
User CxAuth Config Tool Version Tool Connector Spec End User Auth Config - Integration Connectors end-user authentication configuration. If configured, the end-user authentication fields will be passed in the Integration Connectors API request and override the admin, default authentication configured for the Connection. Note: The Connection must have authentication override enabled in order to specify an EUC configuration here - otherwise, the ConnectorTool creation will fail. See: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override properties: Structure is documented below.
- Actions
[]Cx
Tool Version Tool Connector Spec Action - Actions for the tool to use. Structure is documented below.
- Name string
- The full resource name of the referenced Integration Connectors Connection. Format: projects//locations//connections/*
- End
User CxAuth Config Tool Version Tool Connector Spec End User Auth Config - Integration Connectors end-user authentication configuration. If configured, the end-user authentication fields will be passed in the Integration Connectors API request and override the admin, default authentication configured for the Connection. Note: The Connection must have authentication override enabled in order to specify an EUC configuration here - otherwise, the ConnectorTool creation will fail. See: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override properties: Structure is documented below.
- actions
List<Cx
Tool Version Tool Connector Spec Action> - Actions for the tool to use. Structure is documented below.
- name String
- The full resource name of the referenced Integration Connectors Connection. Format: projects//locations//connections/*
- end
User CxAuth Config Tool Version Tool Connector Spec End User Auth Config - Integration Connectors end-user authentication configuration. If configured, the end-user authentication fields will be passed in the Integration Connectors API request and override the admin, default authentication configured for the Connection. Note: The Connection must have authentication override enabled in order to specify an EUC configuration here - otherwise, the ConnectorTool creation will fail. See: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override properties: Structure is documented below.
- actions
Cx
Tool Version Tool Connector Spec Action[] - Actions for the tool to use. Structure is documented below.
- name string
- The full resource name of the referenced Integration Connectors Connection. Format: projects//locations//connections/*
- end
User CxAuth Config Tool Version Tool Connector Spec End User Auth Config - Integration Connectors end-user authentication configuration. If configured, the end-user authentication fields will be passed in the Integration Connectors API request and override the admin, default authentication configured for the Connection. Note: The Connection must have authentication override enabled in order to specify an EUC configuration here - otherwise, the ConnectorTool creation will fail. See: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override properties: Structure is documented below.
- actions
Sequence[Cx
Tool Version Tool Connector Spec Action] - Actions for the tool to use. Structure is documented below.
- name str
- The full resource name of the referenced Integration Connectors Connection. Format: projects//locations//connections/*
- end_
user_ Cxauth_ config Tool Version Tool Connector Spec End User Auth Config - Integration Connectors end-user authentication configuration. If configured, the end-user authentication fields will be passed in the Integration Connectors API request and override the admin, default authentication configured for the Connection. Note: The Connection must have authentication override enabled in order to specify an EUC configuration here - otherwise, the ConnectorTool creation will fail. See: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override properties: Structure is documented below.
- actions List<Property Map>
- Actions for the tool to use. Structure is documented below.
- name String
- The full resource name of the referenced Integration Connectors Connection. Format: projects//locations//connections/*
- end
User Property MapAuth Config - Integration Connectors end-user authentication configuration. If configured, the end-user authentication fields will be passed in the Integration Connectors API request and override the admin, default authentication configured for the Connection. Note: The Connection must have authentication override enabled in order to specify an EUC configuration here - otherwise, the ConnectorTool creation will fail. See: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override properties: Structure is documented below.
CxToolVersionToolConnectorSpecAction, CxToolVersionToolConnectorSpecActionArgs
- Connection
Action stringId - ID of a Connection action for the tool to use. This field is part of a required union field
action_spec. - Entity
Operation CxTool Version Tool Connector Spec Action Entity Operation - Entity operation configuration for the tool to use. This field is part of a required union field
action_spec. Structure is documented below. - Input
Fields List<string> - Entity fields to use as inputs for the operation. If no fields are specified, all fields of the Entity will be used.
- Output
Fields List<string> - Entity fields to return from the operation. If no fields are specified, all fields of the Entity will be returned.
- Connection
Action stringId - ID of a Connection action for the tool to use. This field is part of a required union field
action_spec. - Entity
Operation CxTool Version Tool Connector Spec Action Entity Operation - Entity operation configuration for the tool to use. This field is part of a required union field
action_spec. Structure is documented below. - Input
Fields []string - Entity fields to use as inputs for the operation. If no fields are specified, all fields of the Entity will be used.
- Output
Fields []string - Entity fields to return from the operation. If no fields are specified, all fields of the Entity will be returned.
- connection
Action StringId - ID of a Connection action for the tool to use. This field is part of a required union field
action_spec. - entity
Operation CxTool Version Tool Connector Spec Action Entity Operation - Entity operation configuration for the tool to use. This field is part of a required union field
action_spec. Structure is documented below. - input
Fields List<String> - Entity fields to use as inputs for the operation. If no fields are specified, all fields of the Entity will be used.
- output
Fields List<String> - Entity fields to return from the operation. If no fields are specified, all fields of the Entity will be returned.
- connection
Action stringId - ID of a Connection action for the tool to use. This field is part of a required union field
action_spec. - entity
Operation CxTool Version Tool Connector Spec Action Entity Operation - Entity operation configuration for the tool to use. This field is part of a required union field
action_spec. Structure is documented below. - input
Fields string[] - Entity fields to use as inputs for the operation. If no fields are specified, all fields of the Entity will be used.
- output
Fields string[] - Entity fields to return from the operation. If no fields are specified, all fields of the Entity will be returned.
- connection_
action_ strid - ID of a Connection action for the tool to use. This field is part of a required union field
action_spec. - entity_
operation CxTool Version Tool Connector Spec Action Entity Operation - Entity operation configuration for the tool to use. This field is part of a required union field
action_spec. Structure is documented below. - input_
fields Sequence[str] - Entity fields to use as inputs for the operation. If no fields are specified, all fields of the Entity will be used.
- output_
fields Sequence[str] - Entity fields to return from the operation. If no fields are specified, all fields of the Entity will be returned.
- connection
Action StringId - ID of a Connection action for the tool to use. This field is part of a required union field
action_spec. - entity
Operation Property Map - Entity operation configuration for the tool to use. This field is part of a required union field
action_spec. Structure is documented below. - input
Fields List<String> - Entity fields to use as inputs for the operation. If no fields are specified, all fields of the Entity will be used.
- output
Fields List<String> - Entity fields to return from the operation. If no fields are specified, all fields of the Entity will be returned.
CxToolVersionToolConnectorSpecActionEntityOperation, CxToolVersionToolConnectorSpecActionEntityOperationArgs
CxToolVersionToolConnectorSpecEndUserAuthConfig, CxToolVersionToolConnectorSpecEndUserAuthConfigArgs
- Oauth2Auth
Code CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Auth Code Config - Oauth 2.0 Authorization Code authentication. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below. - Oauth2Jwt
Bearer CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Jwt Bearer Config JWT Profile Oauth 2.0 Authorization Grant authentication.. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below.<a name=<span pulumi-lang-nodejs=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-dotnet=""NestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-go=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-python=""nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config"" pulumi-lang-yaml=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-java=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"">"nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config">The
oauth2_auth_code_configblock supports:
- Oauth2Auth
Code CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Auth Code Config - Oauth 2.0 Authorization Code authentication. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below. - Oauth2Jwt
Bearer CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Jwt Bearer Config JWT Profile Oauth 2.0 Authorization Grant authentication.. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below.<a name=<span pulumi-lang-nodejs=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-dotnet=""NestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-go=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-python=""nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config"" pulumi-lang-yaml=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-java=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"">"nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config">The
oauth2_auth_code_configblock supports:
- oauth2Auth
Code CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Auth Code Config - Oauth 2.0 Authorization Code authentication. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below. - oauth2Jwt
Bearer CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Jwt Bearer Config JWT Profile Oauth 2.0 Authorization Grant authentication.. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below.<a name=<span pulumi-lang-nodejs=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-dotnet=""NestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-go=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-python=""nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config"" pulumi-lang-yaml=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-java=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"">"nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config">The
oauth2_auth_code_configblock supports:
- oauth2Auth
Code CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Auth Code Config - Oauth 2.0 Authorization Code authentication. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below. - oauth2Jwt
Bearer CxConfig Tool Version Tool Connector Spec End User Auth Config Oauth2Jwt Bearer Config JWT Profile Oauth 2.0 Authorization Grant authentication.. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below.<a name=<span pulumi-lang-nodejs=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-dotnet=""NestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-go=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-python=""nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config"" pulumi-lang-yaml=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-java=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"">"nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config">The
oauth2_auth_code_configblock supports:
- oauth2_
auth_ Cxcode_ config Tool Version Tool Connector Spec End User Auth Config Oauth2Auth Code Config - Oauth 2.0 Authorization Code authentication. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below. - oauth2_
jwt_ Cxbearer_ config Tool Version Tool Connector Spec End User Auth Config Oauth2Jwt Bearer Config JWT Profile Oauth 2.0 Authorization Grant authentication.. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below.<a name=<span pulumi-lang-nodejs=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-dotnet=""NestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-go=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-python=""nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config"" pulumi-lang-yaml=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-java=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"">"nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config">The
oauth2_auth_code_configblock supports:
- oauth2Auth
Code Property MapConfig - Oauth 2.0 Authorization Code authentication. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below. - oauth2Jwt
Bearer Property MapConfig JWT Profile Oauth 2.0 Authorization Grant authentication.. This field is part of a union field
end_user_auth_config. Only one ofoauth2AuthCodeConfigoroauth2JwtBearerConfigmay be set. Structure is documented below.<a name=<span pulumi-lang-nodejs=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-dotnet=""NestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-go=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-python=""nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config"" pulumi-lang-yaml=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"" pulumi-lang-java=""nestedToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig"">"nested_tool_connector_spec_end_user_auth_config_oauth2_auth_code_config">The
oauth2_auth_code_configblock supports:
CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfig, CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2AuthCodeConfigArgs
- Oauth
Token string - Oauth token value or parameter name to pass it through.
- Oauth
Token string - Oauth token value or parameter name to pass it through.
- oauth
Token String - Oauth token value or parameter name to pass it through.
- oauth
Token string - Oauth token value or parameter name to pass it through.
- oauth_
token str - Oauth token value or parameter name to pass it through.
- oauth
Token String - Oauth token value or parameter name to pass it through.
CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2JwtBearerConfig, CxToolVersionToolConnectorSpecEndUserAuthConfigOauth2JwtBearerConfigArgs
- client_
key str - Client key value or parameter name to pass it through.
- issuer str
- Issuer value or parameter name to pass it through.
- subject str
- Subject value or parameter name to pass it through.
CxToolVersionToolDataStoreSpec, CxToolVersionToolDataStoreSpecArgs
- Data
Store List<CxConnections Tool Version Tool Data Store Spec Data Store Connection> - List of data stores to search. Structure is documented below.
- Fallback
Prompt CxTool Version Tool Data Store Spec Fallback Prompt - Fallback prompt configurations to use.
- Data
Store []CxConnections Tool Version Tool Data Store Spec Data Store Connection - List of data stores to search. Structure is documented below.
- Fallback
Prompt CxTool Version Tool Data Store Spec Fallback Prompt - Fallback prompt configurations to use.
- data
Store List<CxConnections Tool Version Tool Data Store Spec Data Store Connection> - List of data stores to search. Structure is documented below.
- fallback
Prompt CxTool Version Tool Data Store Spec Fallback Prompt - Fallback prompt configurations to use.
- data
Store CxConnections Tool Version Tool Data Store Spec Data Store Connection[] - List of data stores to search. Structure is documented below.
- fallback
Prompt CxTool Version Tool Data Store Spec Fallback Prompt - Fallback prompt configurations to use.
- data_
store_ Sequence[Cxconnections Tool Version Tool Data Store Spec Data Store Connection] - List of data stores to search. Structure is documented below.
- fallback_
prompt CxTool Version Tool Data Store Spec Fallback Prompt - Fallback prompt configurations to use.
- data
Store List<Property Map>Connections - List of data stores to search. Structure is documented below.
- fallback
Prompt Property Map - Fallback prompt configurations to use.
CxToolVersionToolDataStoreSpecDataStoreConnection, CxToolVersionToolDataStoreSpecDataStoreConnectionArgs
- Data
Store string - The full name of the referenced data store. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore} projects/{project}/locations/{location}/dataStores/{dataStore}
- Data
Store stringType - The type of the connected data store. See DataStoreType for valid values.
- Document
Processing stringMode - The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode. See DocumentProcessingMode for valid values.
- Data
Store string - The full name of the referenced data store. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore} projects/{project}/locations/{location}/dataStores/{dataStore}
- Data
Store stringType - The type of the connected data store. See DataStoreType for valid values.
- Document
Processing stringMode - The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode. See DocumentProcessingMode for valid values.
- data
Store String - The full name of the referenced data store. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore} projects/{project}/locations/{location}/dataStores/{dataStore}
- data
Store StringType - The type of the connected data store. See DataStoreType for valid values.
- document
Processing StringMode - The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode. See DocumentProcessingMode for valid values.
- data
Store string - The full name of the referenced data store. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore} projects/{project}/locations/{location}/dataStores/{dataStore}
- data
Store stringType - The type of the connected data store. See DataStoreType for valid values.
- document
Processing stringMode - The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode. See DocumentProcessingMode for valid values.
- data_
store str - The full name of the referenced data store. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore} projects/{project}/locations/{location}/dataStores/{dataStore}
- data_
store_ strtype - The type of the connected data store. See DataStoreType for valid values.
- document_
processing_ strmode - The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode. See DocumentProcessingMode for valid values.
- data
Store String - The full name of the referenced data store. Formats: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore} projects/{project}/locations/{location}/dataStores/{dataStore}
- data
Store StringType - The type of the connected data store. See DataStoreType for valid values.
- document
Processing StringMode - The document processing mode for the data store connection. Should only be set for PUBLIC_WEB and UNSTRUCTURED data stores. If not set it is considered as DOCUMENTS, as this is the legacy mode. See DocumentProcessingMode for valid values.
CxToolVersionToolFunctionSpec, CxToolVersionToolFunctionSpecArgs
- Input
Schema string - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the input of the function. This input is a JSON object that contains the function's parameters as properties of the object
- Output
Schema string - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the output of the function. This output is a JSON object that contains the function's parameters as properties of the object
- Input
Schema string - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the input of the function. This input is a JSON object that contains the function's parameters as properties of the object
- Output
Schema string - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the output of the function. This output is a JSON object that contains the function's parameters as properties of the object
- input
Schema String - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the input of the function. This input is a JSON object that contains the function's parameters as properties of the object
- output
Schema String - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the output of the function. This output is a JSON object that contains the function's parameters as properties of the object
- input
Schema string - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the input of the function. This input is a JSON object that contains the function's parameters as properties of the object
- output
Schema string - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the output of the function. This output is a JSON object that contains the function's parameters as properties of the object
- input_
schema str - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the input of the function. This input is a JSON object that contains the function's parameters as properties of the object
- output_
schema str - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the output of the function. This output is a JSON object that contains the function's parameters as properties of the object
- input
Schema String - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the input of the function. This input is a JSON object that contains the function's parameters as properties of the object
- output
Schema String - Optional. The JSON schema is encapsulated in a google.protobuf.Struct to describe the output of the function. This output is a JSON object that contains the function's parameters as properties of the object
CxToolVersionToolOpenApiSpec, CxToolVersionToolOpenApiSpecArgs
- Text
Schema string - The OpenAPI schema specified as a text.
This field is part of a union field
schema: only one oftextSchemamay be set. - Authentication
Cx
Tool Version Tool Open Api Spec Authentication - Optional. Authentication information required by the API. Structure is documented below.
- Service
Directory CxConfig Tool Version Tool Open Api Spec Service Directory Config - Optional. Service Directory configuration. Structure is documented below.
- Tls
Config CxTool Version Tool Open Api Spec Tls Config - Optional. TLS configuration for the HTTPS verification. Structure is documented below.
- Text
Schema string - The OpenAPI schema specified as a text.
This field is part of a union field
schema: only one oftextSchemamay be set. - Authentication
Cx
Tool Version Tool Open Api Spec Authentication - Optional. Authentication information required by the API. Structure is documented below.
- Service
Directory CxConfig Tool Version Tool Open Api Spec Service Directory Config - Optional. Service Directory configuration. Structure is documented below.
- Tls
Config CxTool Version Tool Open Api Spec Tls Config - Optional. TLS configuration for the HTTPS verification. Structure is documented below.
- text
Schema String - The OpenAPI schema specified as a text.
This field is part of a union field
schema: only one oftextSchemamay be set. - authentication
Cx
Tool Version Tool Open Api Spec Authentication - Optional. Authentication information required by the API. Structure is documented below.
- service
Directory CxConfig Tool Version Tool Open Api Spec Service Directory Config - Optional. Service Directory configuration. Structure is documented below.
- tls
Config CxTool Version Tool Open Api Spec Tls Config - Optional. TLS configuration for the HTTPS verification. Structure is documented below.
- text
Schema string - The OpenAPI schema specified as a text.
This field is part of a union field
schema: only one oftextSchemamay be set. - authentication
Cx
Tool Version Tool Open Api Spec Authentication - Optional. Authentication information required by the API. Structure is documented below.
- service
Directory CxConfig Tool Version Tool Open Api Spec Service Directory Config - Optional. Service Directory configuration. Structure is documented below.
- tls
Config CxTool Version Tool Open Api Spec Tls Config - Optional. TLS configuration for the HTTPS verification. Structure is documented below.
- text_
schema str - The OpenAPI schema specified as a text.
This field is part of a union field
schema: only one oftextSchemamay be set. - authentication
Cx
Tool Version Tool Open Api Spec Authentication - Optional. Authentication information required by the API. Structure is documented below.
- service_
directory_ Cxconfig Tool Version Tool Open Api Spec Service Directory Config - Optional. Service Directory configuration. Structure is documented below.
- tls_
config CxTool Version Tool Open Api Spec Tls Config - Optional. TLS configuration for the HTTPS verification. Structure is documented below.
- text
Schema String - The OpenAPI schema specified as a text.
This field is part of a union field
schema: only one oftextSchemamay be set. - authentication Property Map
- Optional. Authentication information required by the API. Structure is documented below.
- service
Directory Property MapConfig - Optional. Service Directory configuration. Structure is documented below.
- tls
Config Property Map - Optional. TLS configuration for the HTTPS verification. Structure is documented below.
CxToolVersionToolOpenApiSpecAuthentication, CxToolVersionToolOpenApiSpecAuthenticationArgs
- Api
Key CxConfig Tool Version Tool Open Api Spec Authentication Api Key Config - Config for API key auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - Bearer
Token CxConfig Tool Version Tool Open Api Spec Authentication Bearer Token Config - Config for bearer token auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - Oauth
Config CxTool Version Tool Open Api Spec Authentication Oauth Config - Config for OAuth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - Service
Agent CxAuth Config Tool Version Tool Open Api Spec Authentication Service Agent Auth Config - Config for Diglogflow service agent auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below.
- Api
Key CxConfig Tool Version Tool Open Api Spec Authentication Api Key Config - Config for API key auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - Bearer
Token CxConfig Tool Version Tool Open Api Spec Authentication Bearer Token Config - Config for bearer token auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - Oauth
Config CxTool Version Tool Open Api Spec Authentication Oauth Config - Config for OAuth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - Service
Agent CxAuth Config Tool Version Tool Open Api Spec Authentication Service Agent Auth Config - Config for Diglogflow service agent auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below.
- api
Key CxConfig Tool Version Tool Open Api Spec Authentication Api Key Config - Config for API key auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - bearer
Token CxConfig Tool Version Tool Open Api Spec Authentication Bearer Token Config - Config for bearer token auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - oauth
Config CxTool Version Tool Open Api Spec Authentication Oauth Config - Config for OAuth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - service
Agent CxAuth Config Tool Version Tool Open Api Spec Authentication Service Agent Auth Config - Config for Diglogflow service agent auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below.
- api
Key CxConfig Tool Version Tool Open Api Spec Authentication Api Key Config - Config for API key auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - bearer
Token CxConfig Tool Version Tool Open Api Spec Authentication Bearer Token Config - Config for bearer token auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - oauth
Config CxTool Version Tool Open Api Spec Authentication Oauth Config - Config for OAuth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - service
Agent CxAuth Config Tool Version Tool Open Api Spec Authentication Service Agent Auth Config - Config for Diglogflow service agent auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below.
- api_
key_ Cxconfig Tool Version Tool Open Api Spec Authentication Api Key Config - Config for API key auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - bearer_
token_ Cxconfig Tool Version Tool Open Api Spec Authentication Bearer Token Config - Config for bearer token auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - oauth_
config CxTool Version Tool Open Api Spec Authentication Oauth Config - Config for OAuth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - service_
agent_ Cxauth_ config Tool Version Tool Open Api Spec Authentication Service Agent Auth Config - Config for Diglogflow service agent auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below.
- api
Key Property MapConfig - Config for API key auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - bearer
Token Property MapConfig - Config for bearer token auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - oauth
Config Property Map - Config for OAuth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below. - service
Agent Property MapAuth Config - Config for Diglogflow service agent auth.
This field is part of a union field
auth_config: Only one ofapiKeyConfig,oauthConfig,serviceAgentAuthConfig, orbearerTokenConfigmay be set. Structure is documented below.
CxToolVersionToolOpenApiSpecAuthenticationApiKeyConfig, CxToolVersionToolOpenApiSpecAuthenticationApiKeyConfigArgs
- Key
Name string - 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=", "X-Api-Key" would be the parameter name.
- Request
Location string - Key location in the request. See RequestLocation for valid values.
- Api
Key string - Optional. The API key. If the `secretVersionForApiKey`` field is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan.
- Secret
Version stringFor Api Key - Optional. The name of the SecretManager secret version resource storing the API key. If this field is set, the apiKey field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- Key
Name string - 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=", "X-Api-Key" would be the parameter name.
- Request
Location string - Key location in the request. See RequestLocation for valid values.
- Api
Key string - Optional. The API key. If the `secretVersionForApiKey`` field is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan.
- Secret
Version stringFor Api Key - Optional. The name of the SecretManager secret version resource storing the API key. If this field is set, the apiKey field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- key
Name String - 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=", "X-Api-Key" would be the parameter name.
- request
Location String - Key location in the request. See RequestLocation for valid values.
- api
Key String - Optional. The API key. If the `secretVersionForApiKey`` field is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan.
- secret
Version StringFor Api Key - Optional. The name of the SecretManager secret version resource storing the API key. If this field is set, the apiKey field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- key
Name string - 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=", "X-Api-Key" would be the parameter name.
- request
Location string - Key location in the request. See RequestLocation for valid values.
- api
Key string - Optional. The API key. If the `secretVersionForApiKey`` field is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan.
- secret
Version stringFor Api Key - Optional. The name of the SecretManager secret version resource storing the API key. If this field is set, the apiKey field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- key_
name str - 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=", "X-Api-Key" would be the parameter name.
- request_
location str - Key location in the request. See RequestLocation for valid values.
- api_
key str - Optional. The API key. If the `secretVersionForApiKey`` field is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan.
- secret_
version_ strfor_ api_ key - Optional. The name of the SecretManager secret version resource storing the API key. If this field is set, the apiKey field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- key
Name String - 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=", "X-Api-Key" would be the parameter name.
- request
Location String - Key location in the request. See RequestLocation for valid values.
- api
Key String - Optional. The API key. If the `secretVersionForApiKey`` field is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan.
- secret
Version StringFor Api Key - Optional. The name of the SecretManager secret version resource storing the API key. If this field is set, the apiKey field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
CxToolVersionToolOpenApiSpecAuthenticationBearerTokenConfig, CxToolVersionToolOpenApiSpecAuthenticationBearerTokenConfigArgs
- Secret
Version stringFor Token - Optional. The name of the SecretManager secret version resource storing the Bearer token. If this field is set, the
tokenfield will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version} - Token string
- Optional. The text token appended to the text Bearer to the request Authorization header.
Session parameters reference can be used to pass the token dynamically, e.g.
$session.params.parameter-id. Note: This property is sensitive and will not be displayed in the plan.
- Secret
Version stringFor Token - Optional. The name of the SecretManager secret version resource storing the Bearer token. If this field is set, the
tokenfield will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version} - Token string
- Optional. The text token appended to the text Bearer to the request Authorization header.
Session parameters reference can be used to pass the token dynamically, e.g.
$session.params.parameter-id. Note: This property is sensitive and will not be displayed in the plan.
- secret
Version StringFor Token - Optional. The name of the SecretManager secret version resource storing the Bearer token. If this field is set, the
tokenfield will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version} - token String
- Optional. The text token appended to the text Bearer to the request Authorization header.
Session parameters reference can be used to pass the token dynamically, e.g.
$session.params.parameter-id. Note: This property is sensitive and will not be displayed in the plan.
- secret
Version stringFor Token - Optional. The name of the SecretManager secret version resource storing the Bearer token. If this field is set, the
tokenfield will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version} - token string
- Optional. The text token appended to the text Bearer to the request Authorization header.
Session parameters reference can be used to pass the token dynamically, e.g.
$session.params.parameter-id. Note: This property is sensitive and will not be displayed in the plan.
- secret_
version_ strfor_ token - Optional. The name of the SecretManager secret version resource storing the Bearer token. If this field is set, the
tokenfield will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version} - token str
- Optional. The text token appended to the text Bearer to the request Authorization header.
Session parameters reference can be used to pass the token dynamically, e.g.
$session.params.parameter-id. Note: This property is sensitive and will not be displayed in the plan.
- secret
Version StringFor Token - Optional. The name of the SecretManager secret version resource storing the Bearer token. If this field is set, the
tokenfield will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version} - token String
- Optional. The text token appended to the text Bearer to the request Authorization header.
Session parameters reference can be used to pass the token dynamically, e.g.
$session.params.parameter-id. Note: This property is sensitive and will not be displayed in the plan.
CxToolVersionToolOpenApiSpecAuthenticationOauthConfig, CxToolVersionToolOpenApiSpecAuthenticationOauthConfigArgs
- Client
Id string - The client ID from the OAuth provider.
- Oauth
Grant stringType - OAuth grant types. See OauthGrantType for valid values
- Token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- Client
Secret string - Optional. The client secret from the OAuth provider. If the
secretVersionForClientSecretfield is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan. - Scopes List<string>
- Optional. The OAuth scopes to grant.
- Secret
Version stringFor Client Secret - Optional. The name of the SecretManager secret version resource storing the client secret. If this field is set, the clientSecret field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- Client
Id string - The client ID from the OAuth provider.
- Oauth
Grant stringType - OAuth grant types. See OauthGrantType for valid values
- Token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- Client
Secret string - Optional. The client secret from the OAuth provider. If the
secretVersionForClientSecretfield is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan. - Scopes []string
- Optional. The OAuth scopes to grant.
- Secret
Version stringFor Client Secret - Optional. The name of the SecretManager secret version resource storing the client secret. If this field is set, the clientSecret field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- client
Id String - The client ID from the OAuth provider.
- oauth
Grant StringType - OAuth grant types. See OauthGrantType for valid values
- token
Endpoint String - The token endpoint in the OAuth provider to exchange for an access token.
- client
Secret String - Optional. The client secret from the OAuth provider. If the
secretVersionForClientSecretfield is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan. - scopes List<String>
- Optional. The OAuth scopes to grant.
- secret
Version StringFor Client Secret - Optional. The name of the SecretManager secret version resource storing the client secret. If this field is set, the clientSecret field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- client
Id string - The client ID from the OAuth provider.
- oauth
Grant stringType - OAuth grant types. See OauthGrantType for valid values
- token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- client
Secret string - Optional. The client secret from the OAuth provider. If the
secretVersionForClientSecretfield is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan. - scopes string[]
- Optional. The OAuth scopes to grant.
- secret
Version stringFor Client Secret - Optional. The name of the SecretManager secret version resource storing the client secret. If this field is set, the clientSecret field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- client_
id str - The client ID from the OAuth provider.
- oauth_
grant_ strtype - OAuth grant types. See OauthGrantType for valid values
- token_
endpoint str - The token endpoint in the OAuth provider to exchange for an access token.
- client_
secret str - Optional. The client secret from the OAuth provider. If the
secretVersionForClientSecretfield is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan. - scopes Sequence[str]
- Optional. The OAuth scopes to grant.
- secret_
version_ strfor_ client_ secret - Optional. The name of the SecretManager secret version resource storing the client secret. If this field is set, the clientSecret field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
- client
Id String - The client ID from the OAuth provider.
- oauth
Grant StringType - OAuth grant types. See OauthGrantType for valid values
- token
Endpoint String - The token endpoint in the OAuth provider to exchange for an access token.
- client
Secret String - Optional. The client secret from the OAuth provider. If the
secretVersionForClientSecretfield is set, this field will be ignored. Note: This property is sensitive and will not be displayed in the plan. - scopes List<String>
- Optional. The OAuth scopes to grant.
- secret
Version StringFor Client Secret - Optional. The name of the SecretManager secret version resource storing the client secret. If this field is set, the clientSecret field will be ignored. Format: projects/{project}/secrets/{secret}/versions/{version}
CxToolVersionToolOpenApiSpecAuthenticationServiceAgentAuthConfig, CxToolVersionToolOpenApiSpecAuthenticationServiceAgentAuthConfigArgs
- Service
Agent stringAuth - Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header. See ServiceAgentAuth for valid values.
- Service
Agent stringAuth - Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header. See ServiceAgentAuth for valid values.
- service
Agent StringAuth - Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header. See ServiceAgentAuth for valid values.
- service
Agent stringAuth - Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header. See ServiceAgentAuth for valid values.
- service_
agent_ strauth - Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header. See ServiceAgentAuth for valid values.
- service
Agent StringAuth - Optional. Indicate the auth token type generated from the Diglogflow service agent. The generated token is sent in the Authorization header. See ServiceAgentAuth for valid values.
CxToolVersionToolOpenApiSpecServiceDirectoryConfig, CxToolVersionToolOpenApiSpecServiceDirectoryConfigArgs
- Service string
- The name of Service Directory service. Format: projects//locations//namespaces//services/. LocationID of the service directory must be the same as the location of the agent.
- Service string
- The name of Service Directory service. Format: projects//locations//namespaces//services/. LocationID of the service directory must be the same as the location of the agent.
- service String
- The name of Service Directory service. Format: projects//locations//namespaces//services/. LocationID of the service directory must be the same as the location of the agent.
- service string
- The name of Service Directory service. Format: projects//locations//namespaces//services/. LocationID of the service directory must be the same as the location of the agent.
- service str
- The name of Service Directory service. Format: projects//locations//namespaces//services/. LocationID of the service directory must be the same as the location of the agent.
- service String
- The name of Service Directory service. Format: projects//locations//namespaces//services/. LocationID of the service directory must be the same as the location of the agent.
CxToolVersionToolOpenApiSpecTlsConfig, CxToolVersionToolOpenApiSpecTlsConfigArgs
- Ca
Certs List<CxTool Version Tool Open Api Spec Tls Config Ca Cert> - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- Ca
Certs []CxTool Version Tool Open Api Spec Tls Config Ca Cert - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca
Certs List<CxTool Version Tool Open Api Spec Tls Config Ca Cert> - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca
Certs CxTool Version Tool Open Api Spec Tls Config Ca Cert[] - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca_
certs Sequence[CxTool Version Tool Open Api Spec Tls Config Ca Cert] - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca
Certs List<Property Map> - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
CxToolVersionToolOpenApiSpecTlsConfigCaCert, CxToolVersionToolOpenApiSpecTlsConfigCaCertArgs
- Cert string
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.
- Display
Name string - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
- Cert string
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.
- Display
Name string - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
- cert String
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.
- display
Name String - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
- cert string
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.
- display
Name string - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
- cert str
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.
- display_
name str - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
- cert String
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.
- display
Name String - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
Import
ToolVersion can be imported using any of these accepted formats:
{{parent}}/versions/{{name}}{{parent}}/{{name}}
When using the pulumi import command, ToolVersion can be imported using one of the formats above. For example:
$ pulumi import gcp:diagflow/cxToolVersion:CxToolVersion default {{parent}}/versions/{{name}}
$ pulumi import gcp:diagflow/cxToolVersion:CxToolVersion default {{parent}}/{{name}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-betaTerraform Provider.
