Tool: create_app
Creates a new app in the given project and location.
The following sample demonstrate how to use curl to invoke the create_app MCP tool.
| Curl Request |
|---|
curl --location 'https://ces.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create_app", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Input Schema
Request message for AgentService.CreateApp.
CreateAppRequest
| JSON representation |
|---|
{
"parent": string,
"appId": string,
"app": {
object ( |
| Fields | |
|---|---|
parent |
Required. The resource name of the location to create an app in. |
appId |
Optional. The ID to use for the app, which will become the final component of the app's resource name. If not provided, a unique ID will be automatically assigned for the app. |
app |
Required. The app to create. |
App
| JSON representation |
|---|
{ "name": string, "displayName": string, "description": string, "pinned": boolean, "rootAgent": string, "languageSettings": { object ( |
| Fields | |
|---|---|
name |
Identifier. The unique identifier of the app. Format: |
displayName |
Required. Display name of the app. |
description |
Optional. Human-readable description of the app. |
pinned |
Optional. Whether the app is pinned in the app list. |
rootAgent |
Optional. The root agent is the entry point of the app. Format: |
languageSettings |
Optional. Language settings of the app. |
timeZoneSettings |
Optional. TimeZone settings of the app. |
audioProcessingConfig |
Optional. Audio processing configuration of the app. |
loggingSettings |
Optional. Logging settings of the app. |
errorHandlingSettings |
Optional. Error handling settings of the app. |
modelSettings |
Optional. The default LLM model settings for the app. Individual resources (e.g. agents, guardrails) can override these configurations as needed. |
toolExecutionMode |
Optional. The tool execution mode for the app. If not provided, will default to PARALLEL. |
evaluationMetricsThresholds |
Optional. The evaluation thresholds for the app. |
variableDeclarations[] |
Optional. The declarations of the variables. |
predefinedVariableDeclarations[] |
Output only. The declarations of predefined variables for the app. |
globalInstruction |
Optional. Instructions for all the agents in the app. You can use this instruction to set up a stable identity or personality across all the agents. |
guardrails[] |
Optional. List of guardrails for the app. Format: |
dataStoreSettings |
Optional. The data store settings for the app. |
defaultChannelProfile |
Optional. The default channel profile used by the app. |
metadata |
Optional. Metadata about the app. This field can be used to store additional information relevant to the app's details or intended usages. An object containing a list of |
createTime |
Output only. Timestamp when the app was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime |
Output only. Timestamp when the app was last updated. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
etag |
Output only. 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. |
deploymentCount |
Output only. Number of deployments in the app. |
clientCertificateSettings |
Optional. The default client certificate settings for the app. |
vpcScSettings |
Optional. VPC-SC settings for the app. |
locked |
Optional. Indicates whether the app is locked for changes. If the app is locked, modifications to the app resources will be rejected. |
validationErrors[] |
Output only. Misconfigurations or warnings in the app. |
LanguageSettings
| JSON representation |
|---|
{ "defaultLanguageCode": string, "supportedLanguageCodes": [ string ], "enableMultilingualSupport": boolean, "fallbackAction": string } |
| Fields | |
|---|---|
defaultLanguageCode |
Optional. The default language code of the app. |
supportedLanguageCodes[] |
Optional. List of languages codes supported by the app, in addition to the |
enableMultilingualSupport |
Optional. Enables multilingual support. If true, agents in the app will use pre-built instructions to improve handling of multilingual input. |
fallbackAction |
Optional. Deprecated: This feature is no longer supported. Use This can be a predefined action or a custom tool call. Valid values are: - A tool's full resource name, which triggers a specific tool execution. - A predefined system action, such as "escalate" or "exit", which triggers an |
TimeZoneSettings
| JSON representation |
|---|
{ "timeZone": string } |
| Fields | |
|---|---|
timeZone |
Optional. The time zone of the app from the time zone database, e.g., America/Los_Angeles, Europe/Paris. |
AudioProcessingConfig
| JSON representation |
|---|
{ "synthesizeSpeechConfigs": { string: { object ( |
| Fields | |
|---|---|
synthesizeSpeechConfigs |
Optional. Configuration of how the agent response should be synthesized, mapping from the language code to If the configuration for the specified language code is not found, the configuration for the root language code will be used. For example, if the map contains "en-us" and "en", and the specified language code is "en-gb", then "en" configuration will be used. Note: Language code is case-insensitive. An object containing a list of |
bargeInConfig |
Optional. Configures the agent behavior for the user barge-in activities. |
inactivityTimeout |
Optional. The duration of user inactivity (no speech or interaction) before the agent prompts the user for reengagement. If not set, the agent will not prompt the user for reengagement. A duration in seconds with up to nine fractional digits, ending with ' |
ambientSoundConfig |
Optional. Configuration for the ambient sound to be played with the synthesized agent response, to enhance the naturalness of the conversation. |
SynthesizeSpeechConfigsEntry
| JSON representation |
|---|
{
"key": string,
"value": {
object ( |
| Fields | |
|---|---|
key |
|
value |
|
SynthesizeSpeechConfig
| JSON representation |
|---|
{ "voice": string, "speakingRate": number } |
| Fields | |
|---|---|
voice |
Optional. The name of the voice. If not set, the service will choose a voice based on the other parameters such as language_code. For the list of available voices, please refer to Supported voices and languages from Cloud Text-to-Speech. |
speakingRate |
Optional. The speaking rate/speed in the range [0.25, 2.0]. 1.0 is the normal native speed supported by the specific voice. 2.0 is twice as fast, and 0.5 is half as fast. Values outside of the range [0.25, 2.0] will return an error. |
BargeInConfig
| JSON representation |
|---|
{ "disableBargeIn": boolean, "bargeInAwareness": boolean } |
| Fields | |
|---|---|
disableBargeIn |
Optional. Disables user barge-in while the agent is speaking. If true, user input during agent response playback will be ignored. Deprecated: |
bargeInAwareness |
Optional. If enabled, the agent will adapt its next response based on the assumption that the user hasn't heard the full preceding agent message. This should not be used in scenarios where agent responses are displayed visually. |
Duration
| JSON representation |
|---|
{ "seconds": string, "nanos": integer } |
| Fields | |
|---|---|
seconds |
Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years |
nanos |
Signed fractions of a second at nanosecond resolution of the span of time. Durations less than one second are represented with a 0 |
AmbientSoundConfig
| JSON representation |
|---|
{ "volumeGainDb": number, // Union field |
| Fields | |
|---|---|
volumeGainDb |
Optional. Volume gain (in dB) of the normal native volume supported by ambient noise, in the range [-96.0, 16.0]. If unset, or set to a value of 0.0 (dB), will play at normal native signal amplitude. A value of -6.0 (dB) will play at approximately half the amplitude of the normal native signal amplitude. A value of +6.0 (dB) will play at approximately twice the amplitude of the normal native signal amplitude. We strongly recommend not to exceed +10 (dB) as there's usually no effective increase in loudness for any value greater than that. |
Union field source. Ambient noise to be played with the synthesized agent response, to enhance the naturalness of the conversation. source can be only one of the following: |
|
prebuiltAmbientNoise |
Optional. Deprecated: |
gcsUri |
Optional. Ambient noise as a mono-channel, 16kHz WAV file stored in Cloud Storage. Note: Please make sure the CES service agent |
prebuiltAmbientSound |
Optional. Name of the prebuilt ambient sound. Valid values are: - "coffee_shop" - "keyboard" - "keypad" - "hum" - "office_1" - "office_2" - "office_3" - "room_1" - "room_2" - "room_3" - "room_4" - "room_5" - "air_conditioner" |
LoggingSettings
| JSON representation |
|---|
{ "redactionConfig": { object ( |
| Fields | |
|---|---|
redactionConfig |
Optional. Configuration for how sensitive data should be redacted. |
audioRecordingConfig |
Optional. Configuration for how audio interactions should be recorded. The audio is subject to redaction as configured in |
unredactedAudioRecordingConfig |
Optional. Configures an additional recording of unredacted audio. This can be used to maintain a raw audio copy when audio redaction is |
bigqueryExportSettings |
Optional. Configures the BigQuery export behaviors for the app. The conversation data is subject to redaction as configured in |
cloudLoggingSettings |
Optional. Settings to describe the Cloud Logging behaviors for the app. |
conversationLoggingSettings |
Optional. Settings to describe the conversation logging behaviors for the app. |
evaluationAudioRecordingConfig |
Optional. Configuration for how audio interactions should be recorded for the evaluation. By default, audio recording is not enabled for evaluation sessions. |
metricAnalysisSettings |
Optional. Settings to describe the conversation data collection behaviors for the LLM analysis pipeline for the app. |
RedactionConfig
| JSON representation |
|---|
{ "enableRedaction": boolean, "inspectTemplate": string, "deidentifyTemplate": string } |
| Fields | |
|---|---|
enableRedaction |
Optional. If true, redaction will be applied in various logging scenarios, including conversation history, Cloud Logging and audio recording. |
inspectTemplate |
Optional. DLP inspect template name to configure detection of sensitive data types. Format: |
deidentifyTemplate |
Optional. DLP deidentify template name to instruct on how to de-identify content. Format: |
AudioRecordingConfig
| JSON representation |
|---|
{ "gcsBucket": string, "gcsPathPrefix": string } |
| Fields | |
|---|---|
gcsBucket |
Optional. The Cloud Storage bucket to store the session audio recordings. The URI must start with "gs://". Please choose a bucket location that meets your data residency requirements. Note: If the Cloud Storage bucket is in a different project from the app, you should grant |
gcsPathPrefix |
Optional. The Cloud Storage path prefix for audio recordings. This prefix can include the following placeholders, which will be dynamically substituted at serving time: - $project: project ID - $location: app location - $app: app ID - $date: session date in YYYY-MM-DD format - $session: session ID If the path prefix is not specified, the default prefix |
BigQueryExportSettings
| JSON representation |
|---|
{ "enabled": boolean, "project": string, "dataset": string } |
| Fields | |
|---|---|
enabled |
Optional. Indicates whether the BigQuery export is enabled. |
project |
Optional. The project ID of the BigQuery dataset to export the data to. Note: If the BigQuery dataset is in a different project from the app, you should grant |
dataset |
Optional. The BigQuery dataset ID to export the data to. |
CloudLoggingSettings
| JSON representation |
|---|
{ "enableCloudLogging": boolean } |
| Fields | |
|---|---|
enableCloudLogging |
Optional. Whether to enable Cloud Logging for the sessions. |
ConversationLoggingSettings
| JSON representation |
|---|
{ "disableConversationLogging": boolean, "retentionWindow": string } |
| Fields | |
|---|---|
disableConversationLogging |
Optional. Whether to disable conversation logging for the sessions. |
retentionWindow |
Optional. Controls the retention window for the conversation. If not set, the conversation will be retained for 365 days. A duration in seconds with up to nine fractional digits, ending with ' |
MetricAnalysisSettings
| JSON representation |
|---|
{ "llmMetricsOptedOut": boolean } |
| Fields | |
|---|---|
llmMetricsOptedOut |
Optional. Whether to collect conversation data for llm analysis metrics. If true, conversation data will not be collected for llm analysis metrics; otherwise, conversation data will be collected. |
ErrorHandlingSettings
| JSON representation |
|---|
{ "errorHandlingStrategy": enum ( |
| Fields | |
|---|---|
errorHandlingStrategy |
Optional. The strategy to use for error handling. |
fallbackResponseConfig |
Optional. Configuration for handling fallback responses. |
endSessionConfig |
Optional. Configuration for ending the session in case of system errors (e.g. LLM errors). |
FallbackResponseConfig
| JSON representation |
|---|
{ "customFallbackMessages": { string: string, ... }, "maxFallbackAttempts": integer } |
| Fields | |
|---|---|
customFallbackMessages |
Optional. The fallback messages in case of system errors (e.g. LLM errors), mapped by supported language code. An object containing a list of |
maxFallbackAttempts |
Optional. The maximum number of fallback attempts to make before the agent emitting |
CustomFallbackMessagesEntry
| JSON representation |
|---|
{ "key": string, "value": string } |
| Fields | |
|---|---|
key |
|
value |
|
EndSessionConfig
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
escalateSession |
Optional. Whether to escalate the session in |
ModelSettings
| JSON representation |
|---|
{ "model": string, // Union field |
| Fields | |
|---|---|
model |
Optional. The LLM model that the agent should use. If not set, the agent will inherit the model from its parent agent. |
Union field
|
|
temperature |
Optional. If set, this temperature will be used for the LLM model. Temperature controls the randomness of the model's responses. Lower temperatures produce responses that are more predictable. Higher temperatures produce responses that are more creative. |
EvaluationMetricsThresholds
| JSON representation |
|---|
{ "goldenEvaluationMetricsThresholds": { object ( |
| Fields | |
|---|---|
goldenEvaluationMetricsThresholds |
Optional. The golden evaluation metrics thresholds. |
hallucinationMetricBehavior |
Optional. Deprecated: Use |
goldenHallucinationMetricBehavior |
Optional. The hallucination metric behavior for golden evaluations. |
scenarioHallucinationMetricBehavior |
Optional. The hallucination metric behavior for scenario evaluations. |
GoldenEvaluationMetricsThresholds
| JSON representation |
|---|
{ "turnLevelMetricsThresholds": { object ( |
| Fields | |
|---|---|
turnLevelMetricsThresholds |
Optional. The turn level metrics thresholds. |
expectationLevelMetricsThresholds |
Optional. The expectation level metrics thresholds. |
toolMatchingSettings |
Optional. The tool matching settings. An extra tool call is a tool call that is present in the execution but does not match any tool call in the golden expectation. |
TurnLevelMetricsThresholds
| JSON representation |
|---|
{ "semanticSimilarityChannel": enum ( |
| Fields | |
|---|---|
semanticSimilarityChannel |
Optional. The semantic similarity channel to use for evaluation. |
Union field
|
|
semanticSimilaritySuccessThreshold |
Optional. The success threshold for semantic similarity. Must be an integer between 0 and 4. Default is >= 3. |
Union field
|
|
overallToolInvocationCorrectnessThreshold |
Optional. The success threshold for overall tool invocation correctness. Must be a float between 0 and 1. Default is 1.0. |
ExpectationLevelMetricsThresholds
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field
|
|
toolInvocationParameterCorrectnessThreshold |
Optional. The success threshold for individual tool invocation parameter correctness. Must be a float between 0 and 1. Default is 1.0. |
ToolMatchingSettings
| JSON representation |
|---|
{
"extraToolCallBehavior": enum ( |
| Fields | |
|---|---|
extraToolCallBehavior |
Optional. Behavior for extra tool calls. Defaults to FAIL. |
VariableDeclaration
| JSON representation |
|---|
{
"name": string,
"description": string,
"schema": {
object ( |
| Fields | |
|---|---|
name |
Required. The name of the variable. The name must start with a letter or underscore and contain only letters, numbers, or underscores. |
description |
Required. The description of the variable. |
schema |
Required. The schema of the variable. |
Schema
| JSON representation |
|---|
{ "type": enum ( |
| Fields | |
|---|---|
type |
Required. The type of the data. |
properties |
Optional. Properties of Type.OBJECT. An object containing a list of |
required[] |
Optional. Required properties of Type.OBJECT. |
description |
Optional. The description of the data. |
items |
Optional. Schema of the elements of Type.ARRAY. |
nullable |
Optional. Indicates if the value may be null. |
uniqueItems |
Optional. Indicate the items in the array must be unique. Only applies to TYPE.ARRAY. |
prefixItems[] |
Optional. Schemas of initial elements of Type.ARRAY. |
additionalProperties |
Optional. Can either be a boolean or an object, controls the presence of additional properties. |
anyOf[] |
Optional. The value should be validated against any (one or more) of the subschemas in the list. |
enum[] |
Optional. Possible values of the element of primitive type with enum format. Examples: 1. We can define direction as : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. We can define apartment number as : {type:INTEGER, format:enum, enum:["101", "201", "301"]} |
default |
Optional. Default value of the data. |
ref |
Optional. Allows indirect references between schema nodes. The value should be a valid reference to a child of the root For example, the following schema defines a reference to a schema node named "Pet": The value of the "pet" property is a reference to the schema node named "Pet". See details in https://json-schema.org/understanding-json-schema/structuring. |
defs |
Optional. A map of definitions for use by An object containing a list of |
title |
Optional. The title of the schema. |
minItems |
Optional. Minimum number of the elements for Type.ARRAY. |
maxItems |
Optional. Maximum number of the elements for Type.ARRAY. |
Union field
|
|
minimum |
Optional. Minimum value for Type.INTEGER and Type.NUMBER. |
Union field
|
|
maximum |
Optional. Maximum value for Type.INTEGER and Type.NUMBER. |
PropertiesEntry
| JSON representation |
|---|
{
"key": string,
"value": {
object ( |
| Fields | |
|---|---|
key |
|
value |
|
Value
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field kind. The kind of value. kind can be only one of the following: |
|
nullValue |
Represents a JSON |
numberValue |
Represents a JSON number. Must not be |
stringValue |
Represents a JSON string. |
boolValue |
Represents a JSON boolean ( |
structValue |
Represents a JSON object. |
listValue |
Represents a JSON array. |
Struct
| JSON representation |
|---|
{ "fields": { string: value, ... } } |
| Fields | |
|---|---|
fields |
Unordered map of dynamically typed values. An object containing a list of |
FieldsEntry
| JSON representation |
|---|
{ "key": string, "value": value } |
| Fields | |
|---|---|
key |
|
value |
|
ListValue
| JSON representation |
|---|
{ "values": [ value ] } |
| Fields | |
|---|---|
values[] |
Repeated field of dynamically typed values. |
DefsEntry
| JSON representation |
|---|
{
"key": string,
"value": {
object ( |
| Fields | |
|---|---|
key |
|
value |
|
DataStoreSettings
| JSON representation |
|---|
{
"engines": [
{
object ( |
| Fields | |
|---|---|
engines[] |
Output only. The engines for the app. |
Engine
| JSON representation |
|---|
{
"name": string,
"type": enum ( |
| Fields | |
|---|---|
name |
Output only. The resource name of the engine. Format: |
type |
Output only. The type of the engine. |
ChannelProfile
| JSON representation |
|---|
{ "profileId": string, "channelType": enum ( |
| Fields | |
|---|---|
profileId |
Optional. The unique identifier of the channel profile. |
channelType |
Optional. The type of the channel profile. |
personaProperty |
Optional. The persona property of the channel profile. |
disableDtmf |
Optional. Whether to disable DTMF (dual-tone multi-frequency). |
disableBargeInControl |
Optional. Whether to disable user barge-in control in the conversation. - true: User interruptions are disabled while the agent is speaking. - false: The agent retains automatic control over when the user can interrupt. |
webWidgetConfig |
Optional. The configuration for the web widget. |
noiseSuppressionLevel |
Optional. The noise suppression level of the channel profile. Available values are "low", "moderate", "high", "very_high". |
PersonaProperty
| JSON representation |
|---|
{
"persona": enum ( |
| Fields | |
|---|---|
persona |
Optional. The persona of the channel. |
WebWidgetConfig
| JSON representation |
|---|
{ "modality": enum ( |
| Fields | |
|---|---|
modality |
Optional. The modality of the web widget. |
theme |
Optional. The theme of the web widget. |
webWidgetTitle |
Optional. The title of the web widget. |
securitySettings |
Optional. The security settings of the web widget. |
SecuritySettings
| JSON representation |
|---|
{ "enablePublicAccess": boolean, "enableOriginCheck": boolean, "allowedOrigins": [ string ], "enableRecaptcha": boolean } |
| Fields | |
|---|---|
enablePublicAccess |
Optional. Indicates whether public access to the web widget is enabled. If |
enableOriginCheck |
Optional. Indicates whether origin check for the web widget is enabled. If |
allowedOrigins[] |
Optional. The origins that are allowed to host the web widget. An origin is defined by RFC 6454. If empty, all origins are allowed. A maximum of 100 origins is allowed. Example: "https://example.com" |
enableRecaptcha |
Optional. Indicates whether reCAPTCHA verification for the web widget is enabled. |
MetadataEntry
| JSON representation |
|---|
{ "key": string, "value": string } |
| Fields | |
|---|---|
key |
|
value |
|
Timestamp
| JSON representation |
|---|
{ "seconds": string, "nanos": integer } |
| Fields | |
|---|---|
seconds |
Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be between -62135596800 and 253402300799 inclusive (which corresponds to 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z). |
nanos |
Non-negative fractions of a second at nanosecond resolution. This field is the nanosecond portion of the duration, not an alternative to seconds. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be between 0 and 999,999,999 inclusive. |
ClientCertificateSettings
| JSON representation |
|---|
{ "tlsCertificate": string, "privateKey": string, "passphrase": string } |
| Fields | |
|---|---|
tlsCertificate |
Required. The TLS certificate encoded in PEM format. This string must include the begin header and end footer lines. |
privateKey |
Required. The name of the SecretManager secret version resource storing the private key encoded in PEM format. Format: |
passphrase |
Optional. The name of the SecretManager secret version resource storing the passphrase to decrypt the private key. Should be left unset if the private key is not encrypted. Format: |
VpcScSettings
| JSON representation |
|---|
{ "allowedOrigins": [ string ] } |
| Fields | |
|---|---|
allowedOrigins[] |
Optional. The allowed HTTP(s) origins that OpenAPI tools in the App are able to directly call when VPC Service Controls are enabled. These strings must match the origin exactly, including the port if specified. For example, "https://example.com" or "https://example.com:443". This list does not yet apply to Python tools that may make direct HTTP calls. |
PrebuiltAmbientNoise
Prebuilt ambient noise.
| Enums | |
|---|---|
PREBUILT_AMBIENT_NOISE_UNSPECIFIED |
Not specified. |
RETAIL_STORE |
Ambient noise of a retail store. |
CONVENTION_HALL |
Ambient noise of a convention hall. |
OUTDOOR |
Ambient noise of a street. |
ErrorHandlingStrategy
Defines the strategy for handling errors.
| Enums | |
|---|---|
ERROR_HANDLING_STRATEGY_UNSPECIFIED |
Unspecified error handling strategy. |
NONE |
No specific handling is enabled. |
FALLBACK_RESPONSE |
A fallback message will be returned to the user in case of system errors (e.g. LLM errors). |
END_SESSION |
An EndSession signal will be emitted in case of system errors (e.g. LLM errors). |
ToolExecutionMode
Defines the tool execution behavior if there are multiple tools being selected by the agent at the same time.
| Enums | |
|---|---|
TOOL_EXECUTION_MODE_UNSPECIFIED |
Unspecified tool execution mode. Default to PARALLEL. |
PARALLEL |
If there are multiple tools being selected, they will be executed in parallel, with the same ToolContext. |
SEQUENTIAL |
If there are multiple tools being selected, they will be executed sequentially. The next tool will only be executed after the previous tool completes and it can see updated ToolContext from the previous tool. |
SemanticSimilarityChannel
Semantic similarity channel to use.
| Enums | |
|---|---|
SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED |
Metric unspecified. Defaults to TEXT. |
TEXT |
Use text semantic similarity. |
AUDIO |
Use audio semantic similarity. |
ExtraToolCallBehavior
Defines the behavior when an extra tool call is encountered. An extra tool call is a tool call that is present in the execution but does not match any tool call in the golden expectation.
| Enums | |
|---|---|
EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED |
Unspecified behavior. Defaults to FAIL. |
FAIL |
Fail the evaluation if an extra tool call is encountered. |
ALLOW |
Allow the extra tool call. |
HallucinationMetricBehavior
The hallucination metric behavior. Regardless of the behavior, the metric will always be calculated. The difference is that when disabled, the metric is not used to calculate the overall evaluation score.
| Enums | |
|---|---|
HALLUCINATION_METRIC_BEHAVIOR_UNSPECIFIED |
Unspecified hallucination metric behavior. |
DISABLED |
Disable hallucination metric. |
ENABLED |
Enable hallucination metric. |
Type
OpenAPI data types.
| Enums | |
|---|---|
TYPE_UNSPECIFIED |
Type unspecified. |
STRING |
String type. |
INTEGER |
Integer type. |
NUMBER |
Number type. |
BOOLEAN |
Boolean type. |
OBJECT |
Object type. |
ARRAY |
Array type. |
NullValue
Represents a JSON null.
NullValue is a sentinel, using an enum with only one value to represent the null value for the Value type union.
A field of type NullValue with any value other than 0 is considered invalid. Most ProtoJSON serializers will emit a Value with a null_value set as a JSON null regardless of the integer value, and so will round trip to a 0 value.
| Enums | |
|---|---|
NULL_VALUE |
Null value. |
Type
The type of the engine. See the documentation available at https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/SolutionType and https://cloud.google.com/generative-ai-app-builder/docs/create-datastore-ingest.
| Enums | |
|---|---|
TYPE_UNSPECIFIED |
Unspecified engine type. |
ENGINE_TYPE_SEARCH |
The SOLUTION_TYPE_SEARCH engine for the app. All connector data stores added to the app will be added to this engine. |
ENGINE_TYPE_CHAT |
Chat engine type. The SOLUTION_TYPE_CHAT engine for the app. All connector data stores added to the app will be added to this engine. |
ChannelType
The type of the channel profile.
| Enums | |
|---|---|
UNKNOWN |
Unknown channel type. |
WEB_UI |
Web UI channel. |
API |
API channel. |
TWILIO |
Twilio channel. |
GOOGLE_TELEPHONY_PLATFORM |
Google Telephony Platform channel. |
CONTACT_CENTER_AS_A_SERVICE |
Contact Center as a Service (CCaaS) channel. |
FIVE9 |
Five9 channel. |
CONTACT_CENTER_INTEGRATION |
Third party contact center integration channel. |
Persona
The persona of the channel.
| Enums | |
|---|---|
UNKNOWN |
UNKNOWN persona. |
CONCISE |
The agent keeps the responses concise and to the point |
CHATTY |
The agent provides additional context, explanations, and details |
Modality
Modality of the web widget.
| Enums | |
|---|---|
MODALITY_UNSPECIFIED |
Unknown modality. |
CHAT_AND_VOICE |
Widget supports both chat and voice input. |
VOICE_ONLY |
Widget supports only voice input. |
CHAT_ONLY |
Widget supports only chat input. |
CHAT_VOICE_AND_VIDEO |
Widget supports chat, voice, and video input. |
Theme
Theme of the web widget.
| Enums | |
|---|---|
THEME_UNSPECIFIED |
Unknown theme. |
LIGHT |
Light theme. |
DARK |
Dark theme. |
Output Schema
This resource represents a long-running operation that is the result of a network API call.
Operation
| JSON representation |
|---|
{ "name": string, "metadata": { "@type": string, field1: ..., ... }, "done": boolean, // Union field |
| Fields | |
|---|---|
name |
The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the |
metadata |
Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. An object containing fields of an arbitrary type. An additional field |
done |
If the value is |
Union field result. The operation result, which can be either an error or a valid response. If done == false, neither error nor response is set. If done == true, exactly one of error or response can be set. Some services might not provide the result. result can be only one of the following: |
|
error |
The error result of the operation in case of failure or cancellation. |
response |
The normal, successful response of the operation. If the original method returns no data on success, such as An object containing fields of an arbitrary type. An additional field |
Any
| JSON representation |
|---|
{ "typeUrl": string, "value": string } |
| Fields | |
|---|---|
typeUrl |
Identifies the type of the serialized Protobuf message with a URI reference consisting of a prefix ending in a slash and the fully-qualified type name. Example: type.googleapis.com/google.protobuf.StringValue This string must contain at least one The prefix is arbitrary and Protobuf implementations are expected to simply strip off everything up to and including the last All type URL strings must be legal URI references with the additional restriction (for the text format) that the content of the reference must consist only of alphanumeric characters, percent-encoded escapes, and characters in the following set (not including the outer backticks): In the original design of |
value |
Holds a Protobuf serialization of the type described by type_url. A base64-encoded string. |
Status
| JSON representation |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| Fields | |
|---|---|
code |
The status code, which should be an enum value of |
message |
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the |
details[] |
A list of messages that carry the error details. There is a common set of message types for APIs to use. An object containing fields of an arbitrary type. An additional field |
Tool Annotations
Destructive Hint: ✅ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ❌