- Resource: App
- JSON representation
- LanguageSettings
- TimeZoneSettings
- AudioProcessingConfig
- SynthesizeSpeechConfig
- BargeInConfig
- AmbientSoundConfig
- AmbientSoundConfig.PrebuiltAmbientNoise
- LoggingSettings
- RedactionConfig
- AudioRecordingConfig
- BigQueryExportSettings
- CloudLoggingSettings
- ConversationLoggingSettings
- App.ToolExecutionMode
- EvaluationMetricsThresholds
- EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds
- EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds
- EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.ExpectationLevelMetricsThresholds
- EvaluationMetricsThresholds.HallucinationMetricBehavior
- App.VariableDeclaration
- DataStoreSettings
- DataStoreSettings.Engine
- DataStoreSettings.Engine.Type
- ClientCertificateSettings
- EvaluationSettings
- EvaluationSettings.ScenarioConversationInitiator
- Methods
Resource: App
An app serves as a top-level container for a group of agents, including the root agent and its sub-agents, along with their associated configurations. These agents work together to achieve specific goals within the app's context.
| 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. |
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. |
evaluationSettings |
Optional. The evaluation settings for the app. |
LanguageSettings
Language settings of the app.
| 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. The action to perform when an agent receives input in an unsupported language. 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
TimeZone settings of the app.
| 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
Configuration for how the input and output audio should be processed and delivered.
| 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. |
SynthesizeSpeechConfig
Configuration for how the agent response should be synthesized.
| 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 languageCode. 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
Configuration for how the user barge-in activities should be handled.
| 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. This field is deprecated in favor of |
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. |
AmbientSoundConfig
Configuration for the ambient sound to be played with the synthesized agent response, to enhance the naturalness of the conversation.
| 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. Prebuilt ambient noise. |
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" |
AmbientSoundConfig.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. |
LoggingSettings
Settings to describe the logging behaviors for the app.
| 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. |
bigqueryExportSettings |
Optional. Settings to describe the BigQuery export behaviors for the app. The conversation data will be exported to BigQuery tables if it is enabled. |
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. |
RedactionConfig
Configuration to instruct how sensitive data should be handled.
| 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
Configuration for how the audio interactions should be recorded.
| 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
Settings to describe the BigQuery export behaviors for the app.
| 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 to export the data to. |
CloudLoggingSettings
Settings to describe the Cloud Logging behaviors for the app.
| JSON representation |
|---|
{ "enableCloudLogging": boolean } |
| Fields | |
|---|---|
enableCloudLogging |
Optional. Whether to enable Cloud Logging for the sessions. |
ConversationLoggingSettings
Settings to describe the conversation logging behaviors for the app.
| JSON representation |
|---|
{ "disableConversationLogging": boolean } |
| Fields | |
|---|---|
disableConversationLogging |
Optional. Whether to disable conversation logging for the sessions. |
App.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. |
EvaluationMetricsThresholds
Threshold settings for metrics in an Evaluation.
| JSON representation |
|---|
{ "goldenEvaluationMetricsThresholds": { object ( |
| Fields | |
|---|---|
goldenEvaluationMetricsThresholds |
Optional. The golden evaluation metrics thresholds. |
hallucinationMetricBehavior |
Optional. The hallucination metric behavior. |
EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds
Settings for golden evaluations.
| JSON representation |
|---|
{ "turnLevelMetricsThresholds": { object ( |
| Fields | |
|---|---|
turnLevelMetricsThresholds |
Optional. The turn level metrics thresholds. |
expectationLevelMetricsThresholds |
Optional. The expectation level metrics thresholds. |
EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds
Turn level metrics thresholds.
| JSON representation |
|---|
{ "semanticSimilaritySuccessThreshold": integer, "overallToolInvocationCorrectnessThreshold": number } |
| Fields | |
|---|---|
semanticSimilaritySuccessThreshold |
Optional. The success threshold for semantic similarity. Must be an integer between 0 and 4. Default is >= 3. |
overallToolInvocationCorrectnessThreshold |
Optional. The success threshold for overall tool invocation correctness. Must be a float between 0 and 1. Default is 1.0. |
EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.ExpectationLevelMetricsThresholds
Expectation level metrics thresholds.
| JSON representation |
|---|
{ "toolInvocationParameterCorrectnessThreshold": number } |
| Fields | |
|---|---|
toolInvocationParameterCorrectnessThreshold |
Optional. The success threshold for individual tool invocation parameter correctness. Must be a float between 0 and 1. Default is 1.0. |
EvaluationMetricsThresholds.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. |
App.VariableDeclaration
Defines the structure and metadata for a variable.
| 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. |
DataStoreSettings
Data store related settings for the app.
| JSON representation |
|---|
{
"engines": [
{
object ( |
| Fields | |
|---|---|
engines[] |
Output only. The engines for the app. |
DataStoreSettings.Engine
An engine to which the data stores are connected. See Vertex AI Search: https://cloud.google.com/generative-ai-app-builder/docs/enterprise-search-introduction.
| 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. |
DataStoreSettings.Engine.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. |
ClientCertificateSettings
Settings for custom client certificates.
| 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: |
EvaluationSettings
Settings for evaluation.
| JSON representation |
|---|
{
"scenarioConversationInitiator": enum ( |
| Fields | |
|---|---|
scenarioConversationInitiator |
Optional. Who starts the conversation in a scenario evaluation. |
EvaluationSettings.ScenarioConversationInitiator
Determines who starts the conversation in a scenario evaluation session.
| Enums | |
|---|---|
SCENARIO_CONVERSATION_INITIATOR_UNSPECIFIED |
Unspecified. Defaults to USER. |
USER |
The user starts the conversation. |
AGENT |
The agent starts the conversation. |
Methods |
|
|---|---|
|
Creates a new app in the given project and location. |
|
Deletes the specified app. |
|
Executes the given tool with the given arguments. |
|
Exports the specified app. |
|
Gets details of the specified app. |
|
Imports the specified app. |
|
Lists apps in the given project and location. |
|
Updates the specified app. |
|
Retrieve the schema of the given tool. |