published on Thursday, Mar 12, 2026 by Pulumi
published on Thursday, Mar 12, 2026 by Pulumi
Description
Example Usage
Ces Toolset Openapi Service Account Auth Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetOpenapiServiceAccountAuthConfig = new gcp.ces.Toolset("ces_toolset_openapi_service_account_auth_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
openApiToolset: {
openApiSchema: `openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`,
ignoreUnknownFields: false,
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
serviceAccountAuthConfig: {
serviceAccount: "testaccount@gmail.com",
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_openapi_service_account_auth_config = gcp.ces.Toolset("ces_toolset_openapi_service_account_auth_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
open_api_toolset={
"open_api_schema": """openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""",
"ignore_unknown_fields": False,
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"service_account_auth_config": {
"service_account": "testaccount@gmail.com",
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_openapi_service_account_auth_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
OpenApiToolset: &ces.ToolsetOpenApiToolsetArgs{
OpenApiSchema: pulumi.String(`openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`),
IgnoreUnknownFields: pulumi.Bool(false),
TlsConfig: &ces.ToolsetOpenApiToolsetTlsConfigArgs{
CaCerts: ces.ToolsetOpenApiToolsetTlsConfigCaCertArray{
&ces.ToolsetOpenApiToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetOpenApiToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetOpenApiToolsetApiAuthenticationArgs{
ServiceAccountAuthConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs{
ServiceAccount: pulumi.String("testaccount@gmail.com"),
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetOpenapiServiceAccountAuthConfig = new Gcp.Ces.Toolset("ces_toolset_openapi_service_account_auth_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
OpenApiToolset = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetArgs
{
OpenApiSchema = @"openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
",
IgnoreUnknownFields = false,
TlsConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationArgs
{
ServiceAccountAuthConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs
{
ServiceAccount = "testaccount@gmail.com",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetOpenapiServiceAccountAuthConfig = new Toolset("cesToolsetOpenapiServiceAccountAuthConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.openApiToolset(ToolsetOpenApiToolsetArgs.builder()
.openApiSchema("""
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""")
.ignoreUnknownFields(false)
.tlsConfig(ToolsetOpenApiToolsetTlsConfigArgs.builder()
.caCerts(ToolsetOpenApiToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetOpenApiToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetOpenApiToolsetApiAuthenticationArgs.builder()
.serviceAccountAuthConfig(ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs.builder()
.serviceAccount("testaccount@gmail.com")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetOpenapiServiceAccountAuthConfig:
type: gcp:ces:Toolset
name: ces_toolset_openapi_service_account_auth_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
openApiToolset:
openApiSchema: |
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
ignoreUnknownFields: false
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
serviceAccountAuthConfig:
serviceAccount: testaccount@gmail.com
Ces Toolset Openapi Oauth Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetOpenapiOauthConfig = new gcp.ces.Toolset("ces_toolset_openapi_oauth_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
openApiToolset: {
openApiSchema: `openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`,
ignoreUnknownFields: false,
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
oauthConfig: {
oauthGrantType: "CLIENT_CREDENTIAL",
clientId: "example_client_id",
clientSecretVersion: "projects/fake-project/secrets/fake-secret/versions/version1",
tokenEndpoint: "123",
scopes: ["scope1"],
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_openapi_oauth_config = gcp.ces.Toolset("ces_toolset_openapi_oauth_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
open_api_toolset={
"open_api_schema": """openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""",
"ignore_unknown_fields": False,
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"oauth_config": {
"oauth_grant_type": "CLIENT_CREDENTIAL",
"client_id": "example_client_id",
"client_secret_version": "projects/fake-project/secrets/fake-secret/versions/version1",
"token_endpoint": "123",
"scopes": ["scope1"],
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_openapi_oauth_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
OpenApiToolset: &ces.ToolsetOpenApiToolsetArgs{
OpenApiSchema: pulumi.String(`openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`),
IgnoreUnknownFields: pulumi.Bool(false),
TlsConfig: &ces.ToolsetOpenApiToolsetTlsConfigArgs{
CaCerts: ces.ToolsetOpenApiToolsetTlsConfigCaCertArray{
&ces.ToolsetOpenApiToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetOpenApiToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetOpenApiToolsetApiAuthenticationArgs{
OauthConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs{
OauthGrantType: pulumi.String("CLIENT_CREDENTIAL"),
ClientId: pulumi.String("example_client_id"),
ClientSecretVersion: pulumi.String("projects/fake-project/secrets/fake-secret/versions/version1"),
TokenEndpoint: pulumi.String("123"),
Scopes: pulumi.StringArray{
pulumi.String("scope1"),
},
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetOpenapiOauthConfig = new Gcp.Ces.Toolset("ces_toolset_openapi_oauth_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
OpenApiToolset = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetArgs
{
OpenApiSchema = @"openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
",
IgnoreUnknownFields = false,
TlsConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationArgs
{
OauthConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs
{
OauthGrantType = "CLIENT_CREDENTIAL",
ClientId = "example_client_id",
ClientSecretVersion = "projects/fake-project/secrets/fake-secret/versions/version1",
TokenEndpoint = "123",
Scopes = new[]
{
"scope1",
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetOpenapiOauthConfig = new Toolset("cesToolsetOpenapiOauthConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.openApiToolset(ToolsetOpenApiToolsetArgs.builder()
.openApiSchema("""
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""")
.ignoreUnknownFields(false)
.tlsConfig(ToolsetOpenApiToolsetTlsConfigArgs.builder()
.caCerts(ToolsetOpenApiToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetOpenApiToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetOpenApiToolsetApiAuthenticationArgs.builder()
.oauthConfig(ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs.builder()
.oauthGrantType("CLIENT_CREDENTIAL")
.clientId("example_client_id")
.clientSecretVersion("projects/fake-project/secrets/fake-secret/versions/version1")
.tokenEndpoint("123")
.scopes("scope1")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetOpenapiOauthConfig:
type: gcp:ces:Toolset
name: ces_toolset_openapi_oauth_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
openApiToolset:
openApiSchema: |
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
ignoreUnknownFields: false
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
oauthConfig:
oauthGrantType: CLIENT_CREDENTIAL
clientId: example_client_id
clientSecretVersion: projects/fake-project/secrets/fake-secret/versions/version1
tokenEndpoint: '123'
scopes:
- scope1
Ces Toolset Openapi Service Agent Id Token Auth Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetOpenapiServiceAgentIdTokenAuthConfig = new gcp.ces.Toolset("ces_toolset_openapi_service_agent_id_token_auth_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
openApiToolset: {
openApiSchema: `openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`,
ignoreUnknownFields: false,
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
serviceAgentIdTokenAuthConfig: {},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_openapi_service_agent_id_token_auth_config = gcp.ces.Toolset("ces_toolset_openapi_service_agent_id_token_auth_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
open_api_toolset={
"open_api_schema": """openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""",
"ignore_unknown_fields": False,
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"service_agent_id_token_auth_config": {},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_openapi_service_agent_id_token_auth_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
OpenApiToolset: &ces.ToolsetOpenApiToolsetArgs{
OpenApiSchema: pulumi.String(`openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`),
IgnoreUnknownFields: pulumi.Bool(false),
TlsConfig: &ces.ToolsetOpenApiToolsetTlsConfigArgs{
CaCerts: ces.ToolsetOpenApiToolsetTlsConfigCaCertArray{
&ces.ToolsetOpenApiToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetOpenApiToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetOpenApiToolsetApiAuthenticationArgs{
ServiceAgentIdTokenAuthConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs{},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetOpenapiServiceAgentIdTokenAuthConfig = new Gcp.Ces.Toolset("ces_toolset_openapi_service_agent_id_token_auth_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
OpenApiToolset = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetArgs
{
OpenApiSchema = @"openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
",
IgnoreUnknownFields = false,
TlsConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationArgs
{
ServiceAgentIdTokenAuthConfig = null,
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetOpenapiServiceAgentIdTokenAuthConfig = new Toolset("cesToolsetOpenapiServiceAgentIdTokenAuthConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.openApiToolset(ToolsetOpenApiToolsetArgs.builder()
.openApiSchema("""
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""")
.ignoreUnknownFields(false)
.tlsConfig(ToolsetOpenApiToolsetTlsConfigArgs.builder()
.caCerts(ToolsetOpenApiToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetOpenApiToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetOpenApiToolsetApiAuthenticationArgs.builder()
.serviceAgentIdTokenAuthConfig(ToolsetOpenApiToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs.builder()
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetOpenapiServiceAgentIdTokenAuthConfig:
type: gcp:ces:Toolset
name: ces_toolset_openapi_service_agent_id_token_auth_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
openApiToolset:
openApiSchema: |
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
ignoreUnknownFields: false
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
serviceAgentIdTokenAuthConfig: {}
Ces Toolset Openapi Api Key Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetOpenapiApiKeyConfig = new gcp.ces.Toolset("ces_toolset_openapi_api_key_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
description: "Test description",
executionType: "SYNCHRONOUS",
openApiToolset: {
openApiSchema: `openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`,
ignoreUnknownFields: false,
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
apiKeyConfig: {
keyName: "ExampleKey",
apiKeySecretVersion: "projects/fake-project/secrets/fake-secret/versions/version-1",
requestLocation: "HEADER",
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_openapi_api_key_config = gcp.ces.Toolset("ces_toolset_openapi_api_key_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
description="Test description",
execution_type="SYNCHRONOUS",
open_api_toolset={
"open_api_schema": """openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""",
"ignore_unknown_fields": False,
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"api_key_config": {
"key_name": "ExampleKey",
"api_key_secret_version": "projects/fake-project/secrets/fake-secret/versions/version-1",
"request_location": "HEADER",
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_openapi_api_key_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
Description: pulumi.String("Test description"),
ExecutionType: pulumi.String("SYNCHRONOUS"),
OpenApiToolset: &ces.ToolsetOpenApiToolsetArgs{
OpenApiSchema: pulumi.String(`openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`),
IgnoreUnknownFields: pulumi.Bool(false),
TlsConfig: &ces.ToolsetOpenApiToolsetTlsConfigArgs{
CaCerts: ces.ToolsetOpenApiToolsetTlsConfigCaCertArray{
&ces.ToolsetOpenApiToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetOpenApiToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetOpenApiToolsetApiAuthenticationArgs{
ApiKeyConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs{
KeyName: pulumi.String("ExampleKey"),
ApiKeySecretVersion: pulumi.String("projects/fake-project/secrets/fake-secret/versions/version-1"),
RequestLocation: pulumi.String("HEADER"),
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetOpenapiApiKeyConfig = new Gcp.Ces.Toolset("ces_toolset_openapi_api_key_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
Description = "Test description",
ExecutionType = "SYNCHRONOUS",
OpenApiToolset = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetArgs
{
OpenApiSchema = @"openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
",
IgnoreUnknownFields = false,
TlsConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationArgs
{
ApiKeyConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs
{
KeyName = "ExampleKey",
ApiKeySecretVersion = "projects/fake-project/secrets/fake-secret/versions/version-1",
RequestLocation = "HEADER",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetOpenapiApiKeyConfig = new Toolset("cesToolsetOpenapiApiKeyConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.description("Test description")
.executionType("SYNCHRONOUS")
.openApiToolset(ToolsetOpenApiToolsetArgs.builder()
.openApiSchema("""
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""")
.ignoreUnknownFields(false)
.tlsConfig(ToolsetOpenApiToolsetTlsConfigArgs.builder()
.caCerts(ToolsetOpenApiToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetOpenApiToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetOpenApiToolsetApiAuthenticationArgs.builder()
.apiKeyConfig(ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs.builder()
.keyName("ExampleKey")
.apiKeySecretVersion("projects/fake-project/secrets/fake-secret/versions/version-1")
.requestLocation("HEADER")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetOpenapiApiKeyConfig:
type: gcp:ces:Toolset
name: ces_toolset_openapi_api_key_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
description: Test description
executionType: SYNCHRONOUS
openApiToolset:
openApiSchema: |
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
ignoreUnknownFields: false
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
apiKeyConfig:
keyName: ExampleKey
apiKeySecretVersion: projects/fake-project/secrets/fake-secret/versions/version-1
requestLocation: HEADER
Ces Toolset Bearer Token Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetBearerTokenConfig = new gcp.ces.Toolset("ces_toolset_bearer_token_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
openApiToolset: {
openApiSchema: `openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`,
ignoreUnknownFields: false,
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
bearerTokenConfig: {
token: "$context.variables.my_ces_toolset_auth_token",
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_bearer_token_config = gcp.ces.Toolset("ces_toolset_bearer_token_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
open_api_toolset={
"open_api_schema": """openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""",
"ignore_unknown_fields": False,
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"bearer_token_config": {
"token": "$context.variables.my_ces_toolset_auth_token",
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_bearer_token_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
OpenApiToolset: &ces.ToolsetOpenApiToolsetArgs{
OpenApiSchema: pulumi.String(`openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
`),
IgnoreUnknownFields: pulumi.Bool(false),
TlsConfig: &ces.ToolsetOpenApiToolsetTlsConfigArgs{
CaCerts: ces.ToolsetOpenApiToolsetTlsConfigCaCertArray{
&ces.ToolsetOpenApiToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetOpenApiToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetOpenApiToolsetApiAuthenticationArgs{
BearerTokenConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs{
Token: pulumi.String("$context.variables.my_ces_toolset_auth_token"),
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetBearerTokenConfig = new Gcp.Ces.Toolset("ces_toolset_bearer_token_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
OpenApiToolset = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetArgs
{
OpenApiSchema = @"openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
",
IgnoreUnknownFields = false,
TlsConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationArgs
{
BearerTokenConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs
{
Token = "$context.variables.my_ces_toolset_auth_token",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetBearerTokenConfig = new Toolset("cesToolsetBearerTokenConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.openApiToolset(ToolsetOpenApiToolsetArgs.builder()
.openApiSchema("""
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
""")
.ignoreUnknownFields(false)
.tlsConfig(ToolsetOpenApiToolsetTlsConfigArgs.builder()
.caCerts(ToolsetOpenApiToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetOpenApiToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetOpenApiToolsetApiAuthenticationArgs.builder()
.bearerTokenConfig(ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs.builder()
.token("$context.variables.my_ces_toolset_auth_token")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetBearerTokenConfig:
type: gcp:ces:Toolset
name: ces_toolset_bearer_token_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
openApiToolset:
openApiSchema: |
openapi: 3.0.0
info:
title: My Sample API
version: 1.0.0
description: A simple API example
servers:
- url: https://api.example.com/v1
paths: {}
ignoreUnknownFields: false
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
bearerTokenConfig:
token: $context.variables.my_ces_toolset_auth_token
Ces Toolset Mcp Service Account Auth Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetMcpServiceAccountAuthConfig = new gcp.ces.Toolset("ces_toolset_mcp_service_account_auth_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
mcpToolset: {
serverAddress: "https://api.example.com/mcp/",
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
serviceAccountAuthConfig: {
serviceAccount: "my@service-account.com",
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_mcp_service_account_auth_config = gcp.ces.Toolset("ces_toolset_mcp_service_account_auth_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
mcp_toolset={
"server_address": "https://api.example.com/mcp/",
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"service_account_auth_config": {
"service_account": "my@service-account.com",
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_mcp_service_account_auth_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
McpToolset: &ces.ToolsetMcpToolsetArgs{
ServerAddress: pulumi.String("https://api.example.com/mcp/"),
TlsConfig: &ces.ToolsetMcpToolsetTlsConfigArgs{
CaCerts: ces.ToolsetMcpToolsetTlsConfigCaCertArray{
&ces.ToolsetMcpToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetMcpToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetMcpToolsetApiAuthenticationArgs{
ServiceAccountAuthConfig: &ces.ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs{
ServiceAccount: pulumi.String("my@service-account.com"),
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetMcpServiceAccountAuthConfig = new Gcp.Ces.Toolset("ces_toolset_mcp_service_account_auth_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
McpToolset = new Gcp.Ces.Inputs.ToolsetMcpToolsetArgs
{
ServerAddress = "https://api.example.com/mcp/",
TlsConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationArgs
{
ServiceAccountAuthConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs
{
ServiceAccount = "my@service-account.com",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetMcpServiceAccountAuthConfig = new Toolset("cesToolsetMcpServiceAccountAuthConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.mcpToolset(ToolsetMcpToolsetArgs.builder()
.serverAddress("https://api.example.com/mcp/")
.tlsConfig(ToolsetMcpToolsetTlsConfigArgs.builder()
.caCerts(ToolsetMcpToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetMcpToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetMcpToolsetApiAuthenticationArgs.builder()
.serviceAccountAuthConfig(ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs.builder()
.serviceAccount("my@service-account.com")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetMcpServiceAccountAuthConfig:
type: gcp:ces:Toolset
name: ces_toolset_mcp_service_account_auth_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
mcpToolset:
serverAddress: https://api.example.com/mcp/
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
serviceAccountAuthConfig:
serviceAccount: my@service-account.com
Ces Toolset Mcp Oauth Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetMcpOauthConfig = new gcp.ces.Toolset("ces_toolset_mcp_oauth_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
mcpToolset: {
serverAddress: "https://api.example.com/mcp/",
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
oauthConfig: {
oauthGrantType: "CLIENT_CREDENTIAL",
clientId: "example_client_id",
clientSecretVersion: "projects/fake-project/secrets/fake-secret/versions/version1",
tokenEndpoint: "123",
scopes: ["scope1"],
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_mcp_oauth_config = gcp.ces.Toolset("ces_toolset_mcp_oauth_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
mcp_toolset={
"server_address": "https://api.example.com/mcp/",
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"oauth_config": {
"oauth_grant_type": "CLIENT_CREDENTIAL",
"client_id": "example_client_id",
"client_secret_version": "projects/fake-project/secrets/fake-secret/versions/version1",
"token_endpoint": "123",
"scopes": ["scope1"],
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_mcp_oauth_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
McpToolset: &ces.ToolsetMcpToolsetArgs{
ServerAddress: pulumi.String("https://api.example.com/mcp/"),
TlsConfig: &ces.ToolsetMcpToolsetTlsConfigArgs{
CaCerts: ces.ToolsetMcpToolsetTlsConfigCaCertArray{
&ces.ToolsetMcpToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetMcpToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetMcpToolsetApiAuthenticationArgs{
OauthConfig: &ces.ToolsetMcpToolsetApiAuthenticationOauthConfigArgs{
OauthGrantType: pulumi.String("CLIENT_CREDENTIAL"),
ClientId: pulumi.String("example_client_id"),
ClientSecretVersion: pulumi.String("projects/fake-project/secrets/fake-secret/versions/version1"),
TokenEndpoint: pulumi.String("123"),
Scopes: pulumi.StringArray{
pulumi.String("scope1"),
},
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetMcpOauthConfig = new Gcp.Ces.Toolset("ces_toolset_mcp_oauth_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
McpToolset = new Gcp.Ces.Inputs.ToolsetMcpToolsetArgs
{
ServerAddress = "https://api.example.com/mcp/",
TlsConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationArgs
{
OauthConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationOauthConfigArgs
{
OauthGrantType = "CLIENT_CREDENTIAL",
ClientId = "example_client_id",
ClientSecretVersion = "projects/fake-project/secrets/fake-secret/versions/version1",
TokenEndpoint = "123",
Scopes = new[]
{
"scope1",
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationOauthConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetMcpOauthConfig = new Toolset("cesToolsetMcpOauthConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.mcpToolset(ToolsetMcpToolsetArgs.builder()
.serverAddress("https://api.example.com/mcp/")
.tlsConfig(ToolsetMcpToolsetTlsConfigArgs.builder()
.caCerts(ToolsetMcpToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetMcpToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetMcpToolsetApiAuthenticationArgs.builder()
.oauthConfig(ToolsetMcpToolsetApiAuthenticationOauthConfigArgs.builder()
.oauthGrantType("CLIENT_CREDENTIAL")
.clientId("example_client_id")
.clientSecretVersion("projects/fake-project/secrets/fake-secret/versions/version1")
.tokenEndpoint("123")
.scopes("scope1")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetMcpOauthConfig:
type: gcp:ces:Toolset
name: ces_toolset_mcp_oauth_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
mcpToolset:
serverAddress: https://api.example.com/mcp/
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
oauthConfig:
oauthGrantType: CLIENT_CREDENTIAL
clientId: example_client_id
clientSecretVersion: projects/fake-project/secrets/fake-secret/versions/version1
tokenEndpoint: '123'
scopes:
- scope1
Ces Toolset Mcp Service Agent Id Token Auth Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetMcpServiceAgentIdTokenAuthConfig = new gcp.ces.Toolset("ces_toolset_mcp_service_agent_id_token_auth_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
mcpToolset: {
serverAddress: "https://api.example.com/mcp/",
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
serviceAgentIdTokenAuthConfig: {},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_mcp_service_agent_id_token_auth_config = gcp.ces.Toolset("ces_toolset_mcp_service_agent_id_token_auth_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
mcp_toolset={
"server_address": "https://api.example.com/mcp/",
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"service_agent_id_token_auth_config": {},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_mcp_service_agent_id_token_auth_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
McpToolset: &ces.ToolsetMcpToolsetArgs{
ServerAddress: pulumi.String("https://api.example.com/mcp/"),
TlsConfig: &ces.ToolsetMcpToolsetTlsConfigArgs{
CaCerts: ces.ToolsetMcpToolsetTlsConfigCaCertArray{
&ces.ToolsetMcpToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetMcpToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetMcpToolsetApiAuthenticationArgs{
ServiceAgentIdTokenAuthConfig: &ces.ToolsetMcpToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs{},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetMcpServiceAgentIdTokenAuthConfig = new Gcp.Ces.Toolset("ces_toolset_mcp_service_agent_id_token_auth_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
McpToolset = new Gcp.Ces.Inputs.ToolsetMcpToolsetArgs
{
ServerAddress = "https://api.example.com/mcp/",
TlsConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationArgs
{
ServiceAgentIdTokenAuthConfig = null,
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetMcpServiceAgentIdTokenAuthConfig = new Toolset("cesToolsetMcpServiceAgentIdTokenAuthConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.mcpToolset(ToolsetMcpToolsetArgs.builder()
.serverAddress("https://api.example.com/mcp/")
.tlsConfig(ToolsetMcpToolsetTlsConfigArgs.builder()
.caCerts(ToolsetMcpToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetMcpToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetMcpToolsetApiAuthenticationArgs.builder()
.serviceAgentIdTokenAuthConfig(ToolsetMcpToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs.builder()
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetMcpServiceAgentIdTokenAuthConfig:
type: gcp:ces:Toolset
name: ces_toolset_mcp_service_agent_id_token_auth_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
mcpToolset:
serverAddress: https://api.example.com/mcp/
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
serviceAgentIdTokenAuthConfig: {}
Ces Toolset Mcp Api Key Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetMcpApiKeyConfig = new gcp.ces.Toolset("ces_toolset_mcp_api_key_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
description: "Test description",
executionType: "SYNCHRONOUS",
mcpToolset: {
serverAddress: "https://api.example.com/mcp/",
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
apiKeyConfig: {
keyName: "ExampleKey",
apiKeySecretVersion: "projects/fake-project/secrets/fake-secret/versions/version-1",
requestLocation: "HEADER",
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_mcp_api_key_config = gcp.ces.Toolset("ces_toolset_mcp_api_key_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
description="Test description",
execution_type="SYNCHRONOUS",
mcp_toolset={
"server_address": "https://api.example.com/mcp/",
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"api_key_config": {
"key_name": "ExampleKey",
"api_key_secret_version": "projects/fake-project/secrets/fake-secret/versions/version-1",
"request_location": "HEADER",
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_mcp_api_key_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
Description: pulumi.String("Test description"),
ExecutionType: pulumi.String("SYNCHRONOUS"),
McpToolset: &ces.ToolsetMcpToolsetArgs{
ServerAddress: pulumi.String("https://api.example.com/mcp/"),
TlsConfig: &ces.ToolsetMcpToolsetTlsConfigArgs{
CaCerts: ces.ToolsetMcpToolsetTlsConfigCaCertArray{
&ces.ToolsetMcpToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetMcpToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetMcpToolsetApiAuthenticationArgs{
ApiKeyConfig: &ces.ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs{
KeyName: pulumi.String("ExampleKey"),
ApiKeySecretVersion: pulumi.String("projects/fake-project/secrets/fake-secret/versions/version-1"),
RequestLocation: pulumi.String("HEADER"),
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetMcpApiKeyConfig = new Gcp.Ces.Toolset("ces_toolset_mcp_api_key_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
Description = "Test description",
ExecutionType = "SYNCHRONOUS",
McpToolset = new Gcp.Ces.Inputs.ToolsetMcpToolsetArgs
{
ServerAddress = "https://api.example.com/mcp/",
TlsConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationArgs
{
ApiKeyConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs
{
KeyName = "ExampleKey",
ApiKeySecretVersion = "projects/fake-project/secrets/fake-secret/versions/version-1",
RequestLocation = "HEADER",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetMcpApiKeyConfig = new Toolset("cesToolsetMcpApiKeyConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.description("Test description")
.executionType("SYNCHRONOUS")
.mcpToolset(ToolsetMcpToolsetArgs.builder()
.serverAddress("https://api.example.com/mcp/")
.tlsConfig(ToolsetMcpToolsetTlsConfigArgs.builder()
.caCerts(ToolsetMcpToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetMcpToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetMcpToolsetApiAuthenticationArgs.builder()
.apiKeyConfig(ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs.builder()
.keyName("ExampleKey")
.apiKeySecretVersion("projects/fake-project/secrets/fake-secret/versions/version-1")
.requestLocation("HEADER")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetMcpApiKeyConfig:
type: gcp:ces:Toolset
name: ces_toolset_mcp_api_key_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
description: Test description
executionType: SYNCHRONOUS
mcpToolset:
serverAddress: https://api.example.com/mcp/
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
apiKeyConfig:
keyName: ExampleKey
apiKeySecretVersion: projects/fake-project/secrets/fake-secret/versions/version-1
requestLocation: HEADER
Ces Toolset Mcp Bearer Token Config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cesAppForToolset = new gcp.ces.App("ces_app_for_toolset", {
appId: "app-id",
location: "us",
description: "App used as parent for CES Toolset example",
displayName: "my-app",
languageSettings: {
defaultLanguageCode: "en-US",
supportedLanguageCodes: [
"es-ES",
"fr-FR",
],
enableMultilingualSupport: true,
fallbackAction: "escalate",
},
timeZoneSettings: {
timeZone: "America/Los_Angeles",
},
});
const cesToolsetMcpBearerTokenConfig = new gcp.ces.Toolset("ces_toolset_mcp_bearer_token_config", {
toolsetId: "toolset1",
location: "us",
app: cesAppForToolset.appId,
displayName: "Basic toolset display name",
mcpToolset: {
serverAddress: "https://api.example.com/mcp/",
tlsConfig: {
caCerts: [{
displayName: "example",
cert: "ZXhhbXBsZQ==",
}],
},
serviceDirectoryConfig: {
service: "projects/example/locations/us/namespaces/namespace/services/service",
},
apiAuthentication: {
bearerTokenConfig: {
token: "$context.variables.my_ces_toolset_auth_token",
},
},
},
});
import pulumi
import pulumi_gcp as gcp
ces_app_for_toolset = gcp.ces.App("ces_app_for_toolset",
app_id="app-id",
location="us",
description="App used as parent for CES Toolset example",
display_name="my-app",
language_settings={
"default_language_code": "en-US",
"supported_language_codes": [
"es-ES",
"fr-FR",
],
"enable_multilingual_support": True,
"fallback_action": "escalate",
},
time_zone_settings={
"time_zone": "America/Los_Angeles",
})
ces_toolset_mcp_bearer_token_config = gcp.ces.Toolset("ces_toolset_mcp_bearer_token_config",
toolset_id="toolset1",
location="us",
app=ces_app_for_toolset.app_id,
display_name="Basic toolset display name",
mcp_toolset={
"server_address": "https://api.example.com/mcp/",
"tls_config": {
"ca_certs": [{
"display_name": "example",
"cert": "ZXhhbXBsZQ==",
}],
},
"service_directory_config": {
"service": "projects/example/locations/us/namespaces/namespace/services/service",
},
"api_authentication": {
"bearer_token_config": {
"token": "$context.variables.my_ces_toolset_auth_token",
},
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/ces"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cesAppForToolset, err := ces.NewApp(ctx, "ces_app_for_toolset", &ces.AppArgs{
AppId: pulumi.String("app-id"),
Location: pulumi.String("us"),
Description: pulumi.String("App used as parent for CES Toolset example"),
DisplayName: pulumi.String("my-app"),
LanguageSettings: &ces.AppLanguageSettingsArgs{
DefaultLanguageCode: pulumi.String("en-US"),
SupportedLanguageCodes: pulumi.StringArray{
pulumi.String("es-ES"),
pulumi.String("fr-FR"),
},
EnableMultilingualSupport: pulumi.Bool(true),
FallbackAction: pulumi.String("escalate"),
},
TimeZoneSettings: &ces.AppTimeZoneSettingsArgs{
TimeZone: pulumi.String("America/Los_Angeles"),
},
})
if err != nil {
return err
}
_, err = ces.NewToolset(ctx, "ces_toolset_mcp_bearer_token_config", &ces.ToolsetArgs{
ToolsetId: pulumi.String("toolset1"),
Location: pulumi.String("us"),
App: cesAppForToolset.AppId,
DisplayName: pulumi.String("Basic toolset display name"),
McpToolset: &ces.ToolsetMcpToolsetArgs{
ServerAddress: pulumi.String("https://api.example.com/mcp/"),
TlsConfig: &ces.ToolsetMcpToolsetTlsConfigArgs{
CaCerts: ces.ToolsetMcpToolsetTlsConfigCaCertArray{
&ces.ToolsetMcpToolsetTlsConfigCaCertArgs{
DisplayName: pulumi.String("example"),
Cert: pulumi.String("ZXhhbXBsZQ=="),
},
},
},
ServiceDirectoryConfig: &ces.ToolsetMcpToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("projects/example/locations/us/namespaces/namespace/services/service"),
},
ApiAuthentication: &ces.ToolsetMcpToolsetApiAuthenticationArgs{
BearerTokenConfig: &ces.ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs{
Token: pulumi.String("$context.variables.my_ces_toolset_auth_token"),
},
},
},
})
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 cesAppForToolset = new Gcp.Ces.App("ces_app_for_toolset", new()
{
AppId = "app-id",
Location = "us",
Description = "App used as parent for CES Toolset example",
DisplayName = "my-app",
LanguageSettings = new Gcp.Ces.Inputs.AppLanguageSettingsArgs
{
DefaultLanguageCode = "en-US",
SupportedLanguageCodes = new[]
{
"es-ES",
"fr-FR",
},
EnableMultilingualSupport = true,
FallbackAction = "escalate",
},
TimeZoneSettings = new Gcp.Ces.Inputs.AppTimeZoneSettingsArgs
{
TimeZone = "America/Los_Angeles",
},
});
var cesToolsetMcpBearerTokenConfig = new Gcp.Ces.Toolset("ces_toolset_mcp_bearer_token_config", new()
{
ToolsetId = "toolset1",
Location = "us",
App = cesAppForToolset.AppId,
DisplayName = "Basic toolset display name",
McpToolset = new Gcp.Ces.Inputs.ToolsetMcpToolsetArgs
{
ServerAddress = "https://api.example.com/mcp/",
TlsConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigCaCertArgs
{
DisplayName = "example",
Cert = "ZXhhbXBsZQ==",
},
},
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs
{
Service = "projects/example/locations/us/namespaces/namespace/services/service",
},
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationArgs
{
BearerTokenConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs
{
Token = "$context.variables.my_ces_toolset_auth_token",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.ces.App;
import com.pulumi.gcp.ces.AppArgs;
import com.pulumi.gcp.ces.inputs.AppLanguageSettingsArgs;
import com.pulumi.gcp.ces.inputs.AppTimeZoneSettingsArgs;
import com.pulumi.gcp.ces.Toolset;
import com.pulumi.gcp.ces.ToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetTlsConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationArgs;
import com.pulumi.gcp.ces.inputs.ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs;
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 cesAppForToolset = new App("cesAppForToolset", AppArgs.builder()
.appId("app-id")
.location("us")
.description("App used as parent for CES Toolset example")
.displayName("my-app")
.languageSettings(AppLanguageSettingsArgs.builder()
.defaultLanguageCode("en-US")
.supportedLanguageCodes(
"es-ES",
"fr-FR")
.enableMultilingualSupport(true)
.fallbackAction("escalate")
.build())
.timeZoneSettings(AppTimeZoneSettingsArgs.builder()
.timeZone("America/Los_Angeles")
.build())
.build());
var cesToolsetMcpBearerTokenConfig = new Toolset("cesToolsetMcpBearerTokenConfig", ToolsetArgs.builder()
.toolsetId("toolset1")
.location("us")
.app(cesAppForToolset.appId())
.displayName("Basic toolset display name")
.mcpToolset(ToolsetMcpToolsetArgs.builder()
.serverAddress("https://api.example.com/mcp/")
.tlsConfig(ToolsetMcpToolsetTlsConfigArgs.builder()
.caCerts(ToolsetMcpToolsetTlsConfigCaCertArgs.builder()
.displayName("example")
.cert("ZXhhbXBsZQ==")
.build())
.build())
.serviceDirectoryConfig(ToolsetMcpToolsetServiceDirectoryConfigArgs.builder()
.service("projects/example/locations/us/namespaces/namespace/services/service")
.build())
.apiAuthentication(ToolsetMcpToolsetApiAuthenticationArgs.builder()
.bearerTokenConfig(ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs.builder()
.token("$context.variables.my_ces_toolset_auth_token")
.build())
.build())
.build())
.build());
}
}
resources:
cesAppForToolset:
type: gcp:ces:App
name: ces_app_for_toolset
properties:
appId: app-id
location: us
description: App used as parent for CES Toolset example
displayName: my-app
languageSettings:
defaultLanguageCode: en-US
supportedLanguageCodes:
- es-ES
- fr-FR
enableMultilingualSupport: true
fallbackAction: escalate
timeZoneSettings:
timeZone: America/Los_Angeles
cesToolsetMcpBearerTokenConfig:
type: gcp:ces:Toolset
name: ces_toolset_mcp_bearer_token_config
properties:
toolsetId: toolset1
location: us
app: ${cesAppForToolset.appId}
displayName: Basic toolset display name
mcpToolset:
serverAddress: https://api.example.com/mcp/
tlsConfig:
caCerts:
- displayName: example
cert: ZXhhbXBsZQ==
serviceDirectoryConfig:
service: projects/example/locations/us/namespaces/namespace/services/service
apiAuthentication:
bearerTokenConfig:
token: $context.variables.my_ces_toolset_auth_token
Create Toolset Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Toolset(name: string, args: ToolsetArgs, opts?: CustomResourceOptions);@overload
def Toolset(resource_name: str,
args: ToolsetArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Toolset(resource_name: str,
opts: Optional[ResourceOptions] = None,
app: Optional[str] = None,
location: Optional[str] = None,
toolset_id: Optional[str] = None,
description: Optional[str] = None,
display_name: Optional[str] = None,
execution_type: Optional[str] = None,
mcp_toolset: Optional[ToolsetMcpToolsetArgs] = None,
open_api_toolset: Optional[ToolsetOpenApiToolsetArgs] = None,
project: Optional[str] = None)func NewToolset(ctx *Context, name string, args ToolsetArgs, opts ...ResourceOption) (*Toolset, error)public Toolset(string name, ToolsetArgs args, CustomResourceOptions? opts = null)
public Toolset(String name, ToolsetArgs args)
public Toolset(String name, ToolsetArgs args, CustomResourceOptions options)
type: gcp:ces:Toolset
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 ToolsetArgs
- 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 ToolsetArgs
- 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 ToolsetArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ToolsetArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ToolsetArgs
- 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 toolsetResource = new Gcp.Ces.Toolset("toolsetResource", new()
{
App = "string",
Location = "string",
ToolsetId = "string",
Description = "string",
DisplayName = "string",
ExecutionType = "string",
McpToolset = new Gcp.Ces.Inputs.ToolsetMcpToolsetArgs
{
ServerAddress = "string",
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationArgs
{
ApiKeyConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs
{
ApiKeySecretVersion = "string",
KeyName = "string",
RequestLocation = "string",
},
BearerTokenConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs
{
Token = "string",
},
OauthConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationOauthConfigArgs
{
ClientId = "string",
ClientSecretVersion = "string",
OauthGrantType = "string",
TokenEndpoint = "string",
Scopes = new[]
{
"string",
},
},
ServiceAccountAuthConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs
{
ServiceAccount = "string",
},
ServiceAgentIdTokenAuthConfig = null,
},
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetServiceDirectoryConfigArgs
{
Service = "string",
},
TlsConfig = new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetMcpToolsetTlsConfigCaCertArgs
{
Cert = "string",
DisplayName = "string",
},
},
},
},
OpenApiToolset = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetArgs
{
OpenApiSchema = "string",
ApiAuthentication = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationArgs
{
ApiKeyConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs
{
ApiKeySecretVersion = "string",
KeyName = "string",
RequestLocation = "string",
},
BearerTokenConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs
{
Token = "string",
},
OauthConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs
{
ClientId = "string",
ClientSecretVersion = "string",
OauthGrantType = "string",
TokenEndpoint = "string",
Scopes = new[]
{
"string",
},
},
ServiceAccountAuthConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs
{
ServiceAccount = "string",
},
ServiceAgentIdTokenAuthConfig = null,
},
IgnoreUnknownFields = false,
ServiceDirectoryConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetServiceDirectoryConfigArgs
{
Service = "string",
},
TlsConfig = new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigArgs
{
CaCerts = new[]
{
new Gcp.Ces.Inputs.ToolsetOpenApiToolsetTlsConfigCaCertArgs
{
Cert = "string",
DisplayName = "string",
},
},
},
Url = "string",
},
Project = "string",
});
example, err := ces.NewToolset(ctx, "toolsetResource", &ces.ToolsetArgs{
App: pulumi.String("string"),
Location: pulumi.String("string"),
ToolsetId: pulumi.String("string"),
Description: pulumi.String("string"),
DisplayName: pulumi.String("string"),
ExecutionType: pulumi.String("string"),
McpToolset: &ces.ToolsetMcpToolsetArgs{
ServerAddress: pulumi.String("string"),
ApiAuthentication: &ces.ToolsetMcpToolsetApiAuthenticationArgs{
ApiKeyConfig: &ces.ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs{
ApiKeySecretVersion: pulumi.String("string"),
KeyName: pulumi.String("string"),
RequestLocation: pulumi.String("string"),
},
BearerTokenConfig: &ces.ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs{
Token: pulumi.String("string"),
},
OauthConfig: &ces.ToolsetMcpToolsetApiAuthenticationOauthConfigArgs{
ClientId: pulumi.String("string"),
ClientSecretVersion: pulumi.String("string"),
OauthGrantType: pulumi.String("string"),
TokenEndpoint: pulumi.String("string"),
Scopes: pulumi.StringArray{
pulumi.String("string"),
},
},
ServiceAccountAuthConfig: &ces.ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs{
ServiceAccount: pulumi.String("string"),
},
ServiceAgentIdTokenAuthConfig: &ces.ToolsetMcpToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs{},
},
ServiceDirectoryConfig: &ces.ToolsetMcpToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("string"),
},
TlsConfig: &ces.ToolsetMcpToolsetTlsConfigArgs{
CaCerts: ces.ToolsetMcpToolsetTlsConfigCaCertArray{
&ces.ToolsetMcpToolsetTlsConfigCaCertArgs{
Cert: pulumi.String("string"),
DisplayName: pulumi.String("string"),
},
},
},
},
OpenApiToolset: &ces.ToolsetOpenApiToolsetArgs{
OpenApiSchema: pulumi.String("string"),
ApiAuthentication: &ces.ToolsetOpenApiToolsetApiAuthenticationArgs{
ApiKeyConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs{
ApiKeySecretVersion: pulumi.String("string"),
KeyName: pulumi.String("string"),
RequestLocation: pulumi.String("string"),
},
BearerTokenConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs{
Token: pulumi.String("string"),
},
OauthConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs{
ClientId: pulumi.String("string"),
ClientSecretVersion: pulumi.String("string"),
OauthGrantType: pulumi.String("string"),
TokenEndpoint: pulumi.String("string"),
Scopes: pulumi.StringArray{
pulumi.String("string"),
},
},
ServiceAccountAuthConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs{
ServiceAccount: pulumi.String("string"),
},
ServiceAgentIdTokenAuthConfig: &ces.ToolsetOpenApiToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs{},
},
IgnoreUnknownFields: pulumi.Bool(false),
ServiceDirectoryConfig: &ces.ToolsetOpenApiToolsetServiceDirectoryConfigArgs{
Service: pulumi.String("string"),
},
TlsConfig: &ces.ToolsetOpenApiToolsetTlsConfigArgs{
CaCerts: ces.ToolsetOpenApiToolsetTlsConfigCaCertArray{
&ces.ToolsetOpenApiToolsetTlsConfigCaCertArgs{
Cert: pulumi.String("string"),
DisplayName: pulumi.String("string"),
},
},
},
Url: pulumi.String("string"),
},
Project: pulumi.String("string"),
})
var toolsetResource = new Toolset("toolsetResource", ToolsetArgs.builder()
.app("string")
.location("string")
.toolsetId("string")
.description("string")
.displayName("string")
.executionType("string")
.mcpToolset(ToolsetMcpToolsetArgs.builder()
.serverAddress("string")
.apiAuthentication(ToolsetMcpToolsetApiAuthenticationArgs.builder()
.apiKeyConfig(ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs.builder()
.apiKeySecretVersion("string")
.keyName("string")
.requestLocation("string")
.build())
.bearerTokenConfig(ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs.builder()
.token("string")
.build())
.oauthConfig(ToolsetMcpToolsetApiAuthenticationOauthConfigArgs.builder()
.clientId("string")
.clientSecretVersion("string")
.oauthGrantType("string")
.tokenEndpoint("string")
.scopes("string")
.build())
.serviceAccountAuthConfig(ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs.builder()
.serviceAccount("string")
.build())
.serviceAgentIdTokenAuthConfig(ToolsetMcpToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs.builder()
.build())
.build())
.serviceDirectoryConfig(ToolsetMcpToolsetServiceDirectoryConfigArgs.builder()
.service("string")
.build())
.tlsConfig(ToolsetMcpToolsetTlsConfigArgs.builder()
.caCerts(ToolsetMcpToolsetTlsConfigCaCertArgs.builder()
.cert("string")
.displayName("string")
.build())
.build())
.build())
.openApiToolset(ToolsetOpenApiToolsetArgs.builder()
.openApiSchema("string")
.apiAuthentication(ToolsetOpenApiToolsetApiAuthenticationArgs.builder()
.apiKeyConfig(ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs.builder()
.apiKeySecretVersion("string")
.keyName("string")
.requestLocation("string")
.build())
.bearerTokenConfig(ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs.builder()
.token("string")
.build())
.oauthConfig(ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs.builder()
.clientId("string")
.clientSecretVersion("string")
.oauthGrantType("string")
.tokenEndpoint("string")
.scopes("string")
.build())
.serviceAccountAuthConfig(ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs.builder()
.serviceAccount("string")
.build())
.serviceAgentIdTokenAuthConfig(ToolsetOpenApiToolsetApiAuthenticationServiceAgentIdTokenAuthConfigArgs.builder()
.build())
.build())
.ignoreUnknownFields(false)
.serviceDirectoryConfig(ToolsetOpenApiToolsetServiceDirectoryConfigArgs.builder()
.service("string")
.build())
.tlsConfig(ToolsetOpenApiToolsetTlsConfigArgs.builder()
.caCerts(ToolsetOpenApiToolsetTlsConfigCaCertArgs.builder()
.cert("string")
.displayName("string")
.build())
.build())
.url("string")
.build())
.project("string")
.build());
toolset_resource = gcp.ces.Toolset("toolsetResource",
app="string",
location="string",
toolset_id="string",
description="string",
display_name="string",
execution_type="string",
mcp_toolset={
"server_address": "string",
"api_authentication": {
"api_key_config": {
"api_key_secret_version": "string",
"key_name": "string",
"request_location": "string",
},
"bearer_token_config": {
"token": "string",
},
"oauth_config": {
"client_id": "string",
"client_secret_version": "string",
"oauth_grant_type": "string",
"token_endpoint": "string",
"scopes": ["string"],
},
"service_account_auth_config": {
"service_account": "string",
},
"service_agent_id_token_auth_config": {},
},
"service_directory_config": {
"service": "string",
},
"tls_config": {
"ca_certs": [{
"cert": "string",
"display_name": "string",
}],
},
},
open_api_toolset={
"open_api_schema": "string",
"api_authentication": {
"api_key_config": {
"api_key_secret_version": "string",
"key_name": "string",
"request_location": "string",
},
"bearer_token_config": {
"token": "string",
},
"oauth_config": {
"client_id": "string",
"client_secret_version": "string",
"oauth_grant_type": "string",
"token_endpoint": "string",
"scopes": ["string"],
},
"service_account_auth_config": {
"service_account": "string",
},
"service_agent_id_token_auth_config": {},
},
"ignore_unknown_fields": False,
"service_directory_config": {
"service": "string",
},
"tls_config": {
"ca_certs": [{
"cert": "string",
"display_name": "string",
}],
},
"url": "string",
},
project="string")
const toolsetResource = new gcp.ces.Toolset("toolsetResource", {
app: "string",
location: "string",
toolsetId: "string",
description: "string",
displayName: "string",
executionType: "string",
mcpToolset: {
serverAddress: "string",
apiAuthentication: {
apiKeyConfig: {
apiKeySecretVersion: "string",
keyName: "string",
requestLocation: "string",
},
bearerTokenConfig: {
token: "string",
},
oauthConfig: {
clientId: "string",
clientSecretVersion: "string",
oauthGrantType: "string",
tokenEndpoint: "string",
scopes: ["string"],
},
serviceAccountAuthConfig: {
serviceAccount: "string",
},
serviceAgentIdTokenAuthConfig: {},
},
serviceDirectoryConfig: {
service: "string",
},
tlsConfig: {
caCerts: [{
cert: "string",
displayName: "string",
}],
},
},
openApiToolset: {
openApiSchema: "string",
apiAuthentication: {
apiKeyConfig: {
apiKeySecretVersion: "string",
keyName: "string",
requestLocation: "string",
},
bearerTokenConfig: {
token: "string",
},
oauthConfig: {
clientId: "string",
clientSecretVersion: "string",
oauthGrantType: "string",
tokenEndpoint: "string",
scopes: ["string"],
},
serviceAccountAuthConfig: {
serviceAccount: "string",
},
serviceAgentIdTokenAuthConfig: {},
},
ignoreUnknownFields: false,
serviceDirectoryConfig: {
service: "string",
},
tlsConfig: {
caCerts: [{
cert: "string",
displayName: "string",
}],
},
url: "string",
},
project: "string",
});
type: gcp:ces:Toolset
properties:
app: string
description: string
displayName: string
executionType: string
location: string
mcpToolset:
apiAuthentication:
apiKeyConfig:
apiKeySecretVersion: string
keyName: string
requestLocation: string
bearerTokenConfig:
token: string
oauthConfig:
clientId: string
clientSecretVersion: string
oauthGrantType: string
scopes:
- string
tokenEndpoint: string
serviceAccountAuthConfig:
serviceAccount: string
serviceAgentIdTokenAuthConfig: {}
serverAddress: string
serviceDirectoryConfig:
service: string
tlsConfig:
caCerts:
- cert: string
displayName: string
openApiToolset:
apiAuthentication:
apiKeyConfig:
apiKeySecretVersion: string
keyName: string
requestLocation: string
bearerTokenConfig:
token: string
oauthConfig:
clientId: string
clientSecretVersion: string
oauthGrantType: string
scopes:
- string
tokenEndpoint: string
serviceAccountAuthConfig:
serviceAccount: string
serviceAgentIdTokenAuthConfig: {}
ignoreUnknownFields: false
openApiSchema: string
serviceDirectoryConfig:
service: string
tlsConfig:
caCerts:
- cert: string
displayName: string
url: string
project: string
toolsetId: string
Toolset 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 Toolset resource accepts the following input properties:
- App string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Location string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Toolset
Id string - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- Description string
- The description of the toolset.
- Display
Name string - The display name of the toolset. Must be unique within the same app.
- Execution
Type string - Possible values: SYNCHRONOUS ASYNCHRONOUS
- Mcp
Toolset ToolsetMcp Toolset - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- Open
Api ToolsetToolset Open Api Toolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- App string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Location string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Toolset
Id string - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- Description string
- The description of the toolset.
- Display
Name string - The display name of the toolset. Must be unique within the same app.
- Execution
Type string - Possible values: SYNCHRONOUS ASYNCHRONOUS
- Mcp
Toolset ToolsetMcp Toolset Args - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- Open
Api ToolsetToolset Open Api Toolset Args - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- app String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - location String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - toolset
Id String - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- description String
- The description of the toolset.
- display
Name String - The display name of the toolset. Must be unique within the same app.
- execution
Type String - Possible values: SYNCHRONOUS ASYNCHRONOUS
- mcp
Toolset ToolsetMcp Toolset - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- open
Api ToolsetToolset Open Api Toolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- app string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - location string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - toolset
Id string - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- description string
- The description of the toolset.
- display
Name string - The display name of the toolset. Must be unique within the same app.
- execution
Type string - Possible values: SYNCHRONOUS ASYNCHRONOUS
- mcp
Toolset ToolsetMcp Toolset - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- open
Api ToolsetToolset Open Api Toolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- app str
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - location str
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - toolset_
id str - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- description str
- The description of the toolset.
- display_
name str - The display name of the toolset. Must be unique within the same app.
- execution_
type str - Possible values: SYNCHRONOUS ASYNCHRONOUS
- mcp_
toolset ToolsetMcp Toolset Args - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- open_
api_ Toolsettoolset Open Api Toolset Args - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- app String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - location String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - toolset
Id String - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- description String
- The description of the toolset.
- display
Name String - The display name of the toolset. Must be unique within the same app.
- execution
Type String - Possible values: SYNCHRONOUS ASYNCHRONOUS
- mcp
Toolset Property Map - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- open
Api Property MapToolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
Outputs
All input properties are implicitly available as output properties. Additionally, the Toolset resource produces the following output properties:
- Create
Time string - Timestamp when the toolset was created.
- Etag string
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - Update
Time string - Timestamp when the toolset was last updated.
- Create
Time string - Timestamp when the toolset was created.
- Etag string
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - Update
Time string - Timestamp when the toolset was last updated.
- create
Time String - Timestamp when the toolset was created.
- etag String
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - update
Time String - Timestamp when the toolset was last updated.
- create
Time string - Timestamp when the toolset was created.
- etag string
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - update
Time string - Timestamp when the toolset was last updated.
- create_
time str - Timestamp when the toolset was created.
- etag str
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - update_
time str - Timestamp when the toolset was last updated.
- create
Time String - Timestamp when the toolset was created.
- etag String
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - update
Time String - Timestamp when the toolset was last updated.
Look up Existing Toolset Resource
Get an existing Toolset 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?: ToolsetState, opts?: CustomResourceOptions): Toolset@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
app: Optional[str] = None,
create_time: Optional[str] = None,
description: Optional[str] = None,
display_name: Optional[str] = None,
etag: Optional[str] = None,
execution_type: Optional[str] = None,
location: Optional[str] = None,
mcp_toolset: Optional[ToolsetMcpToolsetArgs] = None,
name: Optional[str] = None,
open_api_toolset: Optional[ToolsetOpenApiToolsetArgs] = None,
project: Optional[str] = None,
toolset_id: Optional[str] = None,
update_time: Optional[str] = None) -> Toolsetfunc GetToolset(ctx *Context, name string, id IDInput, state *ToolsetState, opts ...ResourceOption) (*Toolset, error)public static Toolset Get(string name, Input<string> id, ToolsetState? state, CustomResourceOptions? opts = null)public static Toolset get(String name, Output<String> id, ToolsetState state, CustomResourceOptions options)resources: _: type: gcp:ces:Toolset 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.
- App string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Create
Time string - Timestamp when the toolset was created.
- Description string
- The description of the toolset.
- Display
Name string - The display name of the toolset. Must be unique within the same app.
- Etag string
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- Execution
Type string - Possible values: SYNCHRONOUS ASYNCHRONOUS
- Location string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Mcp
Toolset ToolsetMcp Toolset - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- Name string
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - Open
Api ToolsetToolset Open Api Toolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Toolset
Id string - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- Update
Time string - Timestamp when the toolset was last updated.
- App string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Create
Time string - Timestamp when the toolset was created.
- Description string
- The description of the toolset.
- Display
Name string - The display name of the toolset. Must be unique within the same app.
- Etag string
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- Execution
Type string - Possible values: SYNCHRONOUS ASYNCHRONOUS
- Location string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - Mcp
Toolset ToolsetMcp Toolset Args - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- Name string
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - Open
Api ToolsetToolset Open Api Toolset Args - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Toolset
Id string - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- Update
Time string - Timestamp when the toolset was last updated.
- app String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - create
Time String - Timestamp when the toolset was created.
- description String
- The description of the toolset.
- display
Name String - The display name of the toolset. Must be unique within the same app.
- etag String
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- execution
Type String - Possible values: SYNCHRONOUS ASYNCHRONOUS
- location String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - mcp
Toolset ToolsetMcp Toolset - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- name String
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - open
Api ToolsetToolset Open Api Toolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- toolset
Id String - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- update
Time String - Timestamp when the toolset was last updated.
- app string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - create
Time string - Timestamp when the toolset was created.
- description string
- The description of the toolset.
- display
Name string - The display name of the toolset. Must be unique within the same app.
- etag string
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- execution
Type string - Possible values: SYNCHRONOUS ASYNCHRONOUS
- location string
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - mcp
Toolset ToolsetMcp Toolset - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- name string
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - open
Api ToolsetToolset Open Api Toolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- toolset
Id string - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- update
Time string - Timestamp when the toolset was last updated.
- app str
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - create_
time str - Timestamp when the toolset was created.
- description str
- The description of the toolset.
- display_
name str - The display name of the toolset. Must be unique within the same app.
- etag str
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- execution_
type str - Possible values: SYNCHRONOUS ASYNCHRONOUS
- location str
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - mcp_
toolset ToolsetMcp Toolset Args - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- name str
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - open_
api_ Toolsettoolset Open Api Toolset Args - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- toolset_
id str - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- update_
time str - Timestamp when the toolset was last updated.
- app String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - create
Time String - Timestamp when the toolset was created.
- description String
- The description of the toolset.
- display
Name String - The display name of the toolset. Must be unique within the same app.
- etag String
- ETag used to ensure the object hasn't changed during a read-modify-write operation. If the etag is empty, the update will overwrite any concurrent changes.
- execution
Type String - Possible values: SYNCHRONOUS ASYNCHRONOUS
- location String
- Resource ID segment making up resource
name. It identifies the resource within its parent collection as described in https://google.aip.dev/122. - mcp
Toolset Property Map - A toolset that contains a list of tools that are offered by the MCP server. Structure is documented below.
- name String
- Identifier. The unique identifier of the toolset.
Format:
projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset} - open
Api Property MapToolset - A toolset that contains a list of tools that are defined by an OpenAPI schema. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- toolset
Id String - The ID to use for the toolset, which will become the final component of the toolset's resource name. If not provided, a unique ID will be automatically assigned for the toolset.
- update
Time String - Timestamp when the toolset was last updated.
Supporting Types
ToolsetMcpToolset, ToolsetMcpToolsetArgs
- Server
Address string - The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.
- Api
Authentication ToolsetMcp Toolset Api Authentication - Authentication information required to access tools and execute a tool against the MCP server. For API key auth, the API key can only be sent in the request header; sending it via query parameters is not supported. Structure is documented below.
- Service
Directory ToolsetConfig Mcp Toolset Service Directory Config - Service Directory configuration for VPC-SC, used to resolve service names within a perimeter. Structure is documented below.
- Tls
Config ToolsetMcp Toolset Tls Config - The TLS configuration. Includes the custom server certificates that the client should trust. Structure is documented below.
- Server
Address string - The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.
- Api
Authentication ToolsetMcp Toolset Api Authentication - Authentication information required to access tools and execute a tool against the MCP server. For API key auth, the API key can only be sent in the request header; sending it via query parameters is not supported. Structure is documented below.
- Service
Directory ToolsetConfig Mcp Toolset Service Directory Config - Service Directory configuration for VPC-SC, used to resolve service names within a perimeter. Structure is documented below.
- Tls
Config ToolsetMcp Toolset Tls Config - The TLS configuration. Includes the custom server certificates that the client should trust. Structure is documented below.
- server
Address String - The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.
- api
Authentication ToolsetMcp Toolset Api Authentication - Authentication information required to access tools and execute a tool against the MCP server. For API key auth, the API key can only be sent in the request header; sending it via query parameters is not supported. Structure is documented below.
- service
Directory ToolsetConfig Mcp Toolset Service Directory Config - Service Directory configuration for VPC-SC, used to resolve service names within a perimeter. Structure is documented below.
- tls
Config ToolsetMcp Toolset Tls Config - The TLS configuration. Includes the custom server certificates that the client should trust. Structure is documented below.
- server
Address string - The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.
- api
Authentication ToolsetMcp Toolset Api Authentication - Authentication information required to access tools and execute a tool against the MCP server. For API key auth, the API key can only be sent in the request header; sending it via query parameters is not supported. Structure is documented below.
- service
Directory ToolsetConfig Mcp Toolset Service Directory Config - Service Directory configuration for VPC-SC, used to resolve service names within a perimeter. Structure is documented below.
- tls
Config ToolsetMcp Toolset Tls Config - The TLS configuration. Includes the custom server certificates that the client should trust. Structure is documented below.
- server_
address str - The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.
- api_
authentication ToolsetMcp Toolset Api Authentication - Authentication information required to access tools and execute a tool against the MCP server. For API key auth, the API key can only be sent in the request header; sending it via query parameters is not supported. Structure is documented below.
- service_
directory_ Toolsetconfig Mcp Toolset Service Directory Config - Service Directory configuration for VPC-SC, used to resolve service names within a perimeter. Structure is documented below.
- tls_
config ToolsetMcp Toolset Tls Config - The TLS configuration. Includes the custom server certificates that the client should trust. Structure is documented below.
- server
Address String - The address of the MCP server, for example, "https://example.com/mcp/". If the server is built with the MCP SDK, the url should be suffixed with "/mcp/". Only Streamable HTTP transport based servers are supported. See https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http for more details.
- api
Authentication Property Map - Authentication information required to access tools and execute a tool against the MCP server. For API key auth, the API key can only be sent in the request header; sending it via query parameters is not supported. Structure is documented below.
- service
Directory Property MapConfig - Service Directory configuration for VPC-SC, used to resolve service names within a perimeter. Structure is documented below.
- tls
Config Property Map - The TLS configuration. Includes the custom server certificates that the client should trust. Structure is documented below.
ToolsetMcpToolsetApiAuthentication, ToolsetMcpToolsetApiAuthenticationArgs
- Api
Key ToolsetConfig Mcp Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- Bearer
Token ToolsetConfig Mcp Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- Oauth
Config ToolsetMcp Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- Service
Account ToolsetAuth Config Mcp Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- Service
Agent ToolsetId Token Auth Config Mcp Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- Api
Key ToolsetConfig Mcp Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- Bearer
Token ToolsetConfig Mcp Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- Oauth
Config ToolsetMcp Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- Service
Account ToolsetAuth Config Mcp Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- Service
Agent ToolsetId Token Auth Config Mcp Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api
Key ToolsetConfig Mcp Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- bearer
Token ToolsetConfig Mcp Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- oauth
Config ToolsetMcp Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- service
Account ToolsetAuth Config Mcp Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service
Agent ToolsetId Token Auth Config Mcp Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api
Key ToolsetConfig Mcp Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- bearer
Token ToolsetConfig Mcp Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- oauth
Config ToolsetMcp Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- service
Account ToolsetAuth Config Mcp Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service
Agent ToolsetId Token Auth Config Mcp Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api_
key_ Toolsetconfig Mcp Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- bearer_
token_ Toolsetconfig Mcp Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- oauth_
config ToolsetMcp Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- service_
account_ Toolsetauth_ config Mcp Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service_
agent_ Toolsetid_ token_ auth_ config Mcp Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api
Key Property MapConfig - Configurations for authentication with API key. Structure is documented below.
- bearer
Token Property MapConfig - Configurations for authentication with a bearer token. Structure is documented below.
- oauth
Config Property Map - Configurations for authentication with OAuth. Structure is documented below.
- service
Account Property MapAuth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service
Agent Property MapId Token Auth Config - Configurations for authentication with ID token generated from service agent.
ToolsetMcpToolsetApiAuthenticationApiKeyConfig, ToolsetMcpToolsetApiAuthenticationApiKeyConfigArgs
- Api
Key stringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- Api
Key stringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api
Key StringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api
Key stringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api_
key_ strsecret_ version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api
Key StringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
ToolsetMcpToolsetApiAuthenticationBearerTokenConfig, ToolsetMcpToolsetApiAuthenticationBearerTokenConfigArgs
- Token string
- (Optional)
- Token string
- (Optional)
- token String
- (Optional)
- token string
- (Optional)
- token str
- (Optional)
- token String
- (Optional)
ToolsetMcpToolsetApiAuthenticationOauthConfig, ToolsetMcpToolsetApiAuthenticationOauthConfigArgs
- Client
Id string - The client ID from the OAuth provider.
- Client
Secret stringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - Oauth
Grant stringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- Token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- Scopes List<string>
- The OAuth scopes to grant.
- Client
Id string - The client ID from the OAuth provider.
- Client
Secret stringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - Oauth
Grant stringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- Token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- Scopes []string
- The OAuth scopes to grant.
- client
Id String - The client ID from the OAuth provider.
- client
Secret StringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth
Grant StringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token
Endpoint String - The token endpoint in the OAuth provider to exchange for an access token.
- scopes List<String>
- The OAuth scopes to grant.
- client
Id string - The client ID from the OAuth provider.
- client
Secret stringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth
Grant stringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- scopes string[]
- The OAuth scopes to grant.
- client_
id str - The client ID from the OAuth provider.
- client_
secret_ strversion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth_
grant_ strtype - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token_
endpoint str - The token endpoint in the OAuth provider to exchange for an access token.
- scopes Sequence[str]
- The OAuth scopes to grant.
- client
Id String - The client ID from the OAuth provider.
- client
Secret StringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth
Grant StringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token
Endpoint String - The token endpoint in the OAuth provider to exchange for an access token.
- scopes List<String>
- The OAuth scopes to grant.
ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfig, ToolsetMcpToolsetApiAuthenticationServiceAccountAuthConfigArgs
- Service
Account string - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- Service
Account string - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service
Account String - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service
Account string - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service_
account str - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service
Account String - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
ToolsetMcpToolsetServiceDirectoryConfig, ToolsetMcpToolsetServiceDirectoryConfigArgs
- Service string
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- Service string
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service String
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service string
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service str
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service String
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
ToolsetMcpToolsetTlsConfig, ToolsetMcpToolsetTlsConfigArgs
- Ca
Certs List<ToolsetMcp Toolset Tls Config Ca Cert> - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- Ca
Certs []ToolsetMcp Toolset Tls Config Ca Cert - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca
Certs List<ToolsetMcp Toolset Tls Config Ca Cert> - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca
Certs ToolsetMcp Toolset Tls Config Ca Cert[] - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca_
certs Sequence[ToolsetMcp Toolset 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.
ToolsetMcpToolsetTlsConfigCaCert, ToolsetMcpToolsetTlsConfigCaCertArgs
- 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - display
Name String - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
ToolsetOpenApiToolset, ToolsetOpenApiToolsetArgs
- Open
Api stringSchema - The OpenAPI schema of the toolset.
- Api
Authentication ToolsetOpen Api Toolset Api Authentication - Authentication information required for API calls. Structure is documented below.
- Ignore
Unknown boolFields - If true, the agent will ignore unknown fields in the API response for all operations defined in the OpenAPI schema.
- Service
Directory ToolsetConfig Open Api Toolset Service Directory Config - Configuration for tools using Service Directory. Structure is documented below.
- Tls
Config ToolsetOpen Api Toolset Tls Config - The TLS configuration. Structure is documented below.
- Url string
- (Output) The server URL of the Open API schema. This field is only set in toolsets in the environment dependencies during the export process if the schema contains a server url. During the import process, if this url is present in the environment dependencies and the schema has the $env_var placeholder, it will replace the placeholder in the schema.
- Open
Api stringSchema - The OpenAPI schema of the toolset.
- Api
Authentication ToolsetOpen Api Toolset Api Authentication - Authentication information required for API calls. Structure is documented below.
- Ignore
Unknown boolFields - If true, the agent will ignore unknown fields in the API response for all operations defined in the OpenAPI schema.
- Service
Directory ToolsetConfig Open Api Toolset Service Directory Config - Configuration for tools using Service Directory. Structure is documented below.
- Tls
Config ToolsetOpen Api Toolset Tls Config - The TLS configuration. Structure is documented below.
- Url string
- (Output) The server URL of the Open API schema. This field is only set in toolsets in the environment dependencies during the export process if the schema contains a server url. During the import process, if this url is present in the environment dependencies and the schema has the $env_var placeholder, it will replace the placeholder in the schema.
- open
Api StringSchema - The OpenAPI schema of the toolset.
- api
Authentication ToolsetOpen Api Toolset Api Authentication - Authentication information required for API calls. Structure is documented below.
- ignore
Unknown BooleanFields - If true, the agent will ignore unknown fields in the API response for all operations defined in the OpenAPI schema.
- service
Directory ToolsetConfig Open Api Toolset Service Directory Config - Configuration for tools using Service Directory. Structure is documented below.
- tls
Config ToolsetOpen Api Toolset Tls Config - The TLS configuration. Structure is documented below.
- url String
- (Output) The server URL of the Open API schema. This field is only set in toolsets in the environment dependencies during the export process if the schema contains a server url. During the import process, if this url is present in the environment dependencies and the schema has the $env_var placeholder, it will replace the placeholder in the schema.
- open
Api stringSchema - The OpenAPI schema of the toolset.
- api
Authentication ToolsetOpen Api Toolset Api Authentication - Authentication information required for API calls. Structure is documented below.
- ignore
Unknown booleanFields - If true, the agent will ignore unknown fields in the API response for all operations defined in the OpenAPI schema.
- service
Directory ToolsetConfig Open Api Toolset Service Directory Config - Configuration for tools using Service Directory. Structure is documented below.
- tls
Config ToolsetOpen Api Toolset Tls Config - The TLS configuration. Structure is documented below.
- url string
- (Output) The server URL of the Open API schema. This field is only set in toolsets in the environment dependencies during the export process if the schema contains a server url. During the import process, if this url is present in the environment dependencies and the schema has the $env_var placeholder, it will replace the placeholder in the schema.
- open_
api_ strschema - The OpenAPI schema of the toolset.
- api_
authentication ToolsetOpen Api Toolset Api Authentication - Authentication information required for API calls. Structure is documented below.
- ignore_
unknown_ boolfields - If true, the agent will ignore unknown fields in the API response for all operations defined in the OpenAPI schema.
- service_
directory_ Toolsetconfig Open Api Toolset Service Directory Config - Configuration for tools using Service Directory. Structure is documented below.
- tls_
config ToolsetOpen Api Toolset Tls Config - The TLS configuration. Structure is documented below.
- url str
- (Output) The server URL of the Open API schema. This field is only set in toolsets in the environment dependencies during the export process if the schema contains a server url. During the import process, if this url is present in the environment dependencies and the schema has the $env_var placeholder, it will replace the placeholder in the schema.
- open
Api StringSchema - The OpenAPI schema of the toolset.
- api
Authentication Property Map - Authentication information required for API calls. Structure is documented below.
- ignore
Unknown BooleanFields - If true, the agent will ignore unknown fields in the API response for all operations defined in the OpenAPI schema.
- service
Directory Property MapConfig - Configuration for tools using Service Directory. Structure is documented below.
- tls
Config Property Map - The TLS configuration. Structure is documented below.
- url String
- (Output) The server URL of the Open API schema. This field is only set in toolsets in the environment dependencies during the export process if the schema contains a server url. During the import process, if this url is present in the environment dependencies and the schema has the $env_var placeholder, it will replace the placeholder in the schema.
ToolsetOpenApiToolsetApiAuthentication, ToolsetOpenApiToolsetApiAuthenticationArgs
- Api
Key ToolsetConfig Open Api Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- Bearer
Token ToolsetConfig Open Api Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- Oauth
Config ToolsetOpen Api Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- Service
Account ToolsetAuth Config Open Api Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- Service
Agent ToolsetId Token Auth Config Open Api Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- Api
Key ToolsetConfig Open Api Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- Bearer
Token ToolsetConfig Open Api Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- Oauth
Config ToolsetOpen Api Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- Service
Account ToolsetAuth Config Open Api Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- Service
Agent ToolsetId Token Auth Config Open Api Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api
Key ToolsetConfig Open Api Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- bearer
Token ToolsetConfig Open Api Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- oauth
Config ToolsetOpen Api Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- service
Account ToolsetAuth Config Open Api Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service
Agent ToolsetId Token Auth Config Open Api Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api
Key ToolsetConfig Open Api Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- bearer
Token ToolsetConfig Open Api Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- oauth
Config ToolsetOpen Api Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- service
Account ToolsetAuth Config Open Api Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service
Agent ToolsetId Token Auth Config Open Api Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api_
key_ Toolsetconfig Open Api Toolset Api Authentication Api Key Config - Configurations for authentication with API key. Structure is documented below.
- bearer_
token_ Toolsetconfig Open Api Toolset Api Authentication Bearer Token Config - Configurations for authentication with a bearer token. Structure is documented below.
- oauth_
config ToolsetOpen Api Toolset Api Authentication Oauth Config - Configurations for authentication with OAuth. Structure is documented below.
- service_
account_ Toolsetauth_ config Open Api Toolset Api Authentication Service Account Auth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service_
agent_ Toolsetid_ token_ auth_ config Open Api Toolset Api Authentication Service Agent Id Token Auth Config - Configurations for authentication with ID token generated from service agent.
- api
Key Property MapConfig - Configurations for authentication with API key. Structure is documented below.
- bearer
Token Property MapConfig - Configurations for authentication with a bearer token. Structure is documented below.
- oauth
Config Property Map - Configurations for authentication with OAuth. Structure is documented below.
- service
Account Property MapAuth Config - Configurations for authentication using a custom service account. Structure is documented below.
- service
Agent Property MapId Token Auth Config - Configurations for authentication with ID token generated from service agent.
ToolsetOpenApiToolsetApiAuthenticationApiKeyConfig, ToolsetOpenApiToolsetApiAuthenticationApiKeyConfigArgs
- Api
Key stringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- Api
Key stringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api
Key StringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api
Key stringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api_
key_ strsecret_ version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
- api
Key StringSecret Version - The name of the SecretManager secret version resource storing the API key.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - 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. For API key auth on MCP toolsets, the API key can only be sent in the request header. Possible values: HEADER
ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfig, ToolsetOpenApiToolsetApiAuthenticationBearerTokenConfigArgs
- Token string
- (Optional)
- Token string
- (Optional)
- token String
- (Optional)
- token string
- (Optional)
- token str
- (Optional)
- token String
- (Optional)
ToolsetOpenApiToolsetApiAuthenticationOauthConfig, ToolsetOpenApiToolsetApiAuthenticationOauthConfigArgs
- Client
Id string - The client ID from the OAuth provider.
- Client
Secret stringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - Oauth
Grant stringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- Token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- Scopes List<string>
- The OAuth scopes to grant.
- Client
Id string - The client ID from the OAuth provider.
- Client
Secret stringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - Oauth
Grant stringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- Token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- Scopes []string
- The OAuth scopes to grant.
- client
Id String - The client ID from the OAuth provider.
- client
Secret StringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth
Grant StringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token
Endpoint String - The token endpoint in the OAuth provider to exchange for an access token.
- scopes List<String>
- The OAuth scopes to grant.
- client
Id string - The client ID from the OAuth provider.
- client
Secret stringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth
Grant stringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token
Endpoint string - The token endpoint in the OAuth provider to exchange for an access token.
- scopes string[]
- The OAuth scopes to grant.
- client_
id str - The client ID from the OAuth provider.
- client_
secret_ strversion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth_
grant_ strtype - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token_
endpoint str - The token endpoint in the OAuth provider to exchange for an access token.
- scopes Sequence[str]
- The OAuth scopes to grant.
- client
Id String - The client ID from the OAuth provider.
- client
Secret StringVersion - The name of the SecretManager secret version resource storing the
client secret.
Format:
projects/{project}/secrets/{secret}/versions/{version}Note: You should grantroles/secretmanager.secretAccessorrole to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com. - oauth
Grant StringType - OAuth grant types. Possible values: CLIENT_CREDENTIAL
- token
Endpoint String - The token endpoint in the OAuth provider to exchange for an access token.
- scopes List<String>
- The OAuth scopes to grant.
ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfig, ToolsetOpenApiToolsetApiAuthenticationServiceAccountAuthConfigArgs
- Service
Account string - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- Service
Account string - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service
Account String - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service
Account string - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service_
account str - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
- service
Account String - The email address of the service account used for authenticatation. CES
uses this service account to exchange an access token and the access token
is then sent in the
Authorizationheader of the request. The service account must have theroles/iam.serviceAccountTokenCreatorrole granted to the CES service agentservice-@gcp-sa-ces.iam.gserviceaccount.com.
ToolsetOpenApiToolsetServiceDirectoryConfig, ToolsetOpenApiToolsetServiceDirectoryConfigArgs
- Service string
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- Service string
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service String
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service string
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service str
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
- service String
- The name of Service
Directory service.
Format:
projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Location of the service directory must be the same as the location of the app.
ToolsetOpenApiToolsetTlsConfig, ToolsetOpenApiToolsetTlsConfigArgs
- Ca
Certs List<ToolsetOpen Api Toolset Tls Config Ca Cert> - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- Ca
Certs []ToolsetOpen Api Toolset Tls Config Ca Cert - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca
Certs List<ToolsetOpen Api Toolset Tls Config Ca Cert> - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca
Certs ToolsetOpen Api Toolset Tls Config Ca Cert[] - Specifies a list of allowed custom CA certificates for HTTPS verification. Structure is documented below.
- ca_
certs Sequence[ToolsetOpen Api Toolset 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.
ToolsetOpenApiToolsetTlsConfigCaCert, ToolsetOpenApiToolsetTlsConfigCaCertArgs
- 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - 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, CES 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'") - display
Name String - The name of the allowed custom CA certificates. This can be used to disambiguate the custom CA certificates.
Import
Toolset can be imported using any of these accepted formats:
projects/{{project}}/locations/{{location}}/apps/{{app}}/toolsets/{{toolset_id}}{{project}}/{{location}}/{{app}}/{{toolset_id}}{{location}}/{{app}}/{{toolset_id}}
When using the pulumi import command, Toolset can be imported using one of the formats above. For example:
$ pulumi import gcp:ces/toolset:Toolset default projects/{{project}}/locations/{{location}}/apps/{{app}}/toolsets/{{toolset_id}}
$ pulumi import gcp:ces/toolset:Toolset default {{project}}/{{location}}/{{app}}/{{toolset_id}}
$ pulumi import gcp:ces/toolset:Toolset default {{location}}/{{app}}/{{toolset_id}}
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.
published on Thursday, Mar 12, 2026 by Pulumi
