MCP Tools Reference: discoveryengine.googleapis.com

Tool: list_engines

List the engines (apps) under a collection.

The following sample demonstrate how to use curl to invoke the list_engines MCP tool.

Curl Request
                  
curl --location 'https://discoveryengine.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_engines",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Input Schema

Request message for EngineService.ListEngines method.

ListEnginesRequest

JSON representation
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string
}
Fields
parent

string

Required. The parent resource name, such as projects/{project}/locations/{location}/collections/{collection_id}.

pageSize

integer

Optional. Not supported.

pageToken

string

Optional. Not supported.

filter

string

Optional. Filter by solution type. For example: solution_type=SOLUTION_TYPE_SEARCH

Output Schema

Response message for EngineService.ListEngines method.

ListEnginesResponse

JSON representation
{
  "engines": [
    {
      object (Engine)
    }
  ],
  "nextPageToken": string
}
Fields
engines[]

object (Engine)

All the customer's Engines.

nextPageToken

string

Not supported.

Engine

JSON representation
{
  "name": string,
  "displayName": string,
  "createTime": string,
  "updateTime": string,
  "dataStoreIds": [
    string
  ],
  "solutionType": enum (SolutionType),
  "industryVertical": enum (IndustryVertical),
  "commonConfig": {
    object (CommonConfig)
  },
  "knowledgeGraphConfig": {
    object (KnowledgeGraphConfig)
  },
  "appType": enum (AppType),
  "disableAnalytics": boolean,
  "features": {
    string: enum (FeatureState),
    ...
  },
  "cmekConfig": {
    object (CmekConfig)
  },
  "configurableBillingApproach": enum (ConfigurableBillingApproach),
  "modelConfigs": {
    string: enum (ModelState),
    ...
  },
  "observabilityConfig": {
    object (ObservabilityConfig)
  },
  "connectorTenantInfo": {
    string: string,
    ...
  },
  "agentGatewaySetting": {
    object (AgentGatewaySetting)
  },
  "marketplaceAgentVisibility": enum (MarketplaceAgentVisibility),
  "procurementContactEmails": [
    string
  ],

  // Union field engine_config can be only one of the following:
  "similarDocumentsConfig": {
    object (SimilarDocumentsEngineConfig)
  },
  "chatEngineConfig": {
    object (ChatEngineConfig)
  },
  "searchEngineConfig": {
    object (SearchEngineConfig)
  },
  "mediaRecommendationEngineConfig": {
    object (MediaRecommendationEngineConfig)
  }
  // End of list of possible types for union field engine_config.

  // Union field engine_metadata can be only one of the following:
  "recommendationMetadata": {
    object (RecommendationMetadata)
  },
  "chatEngineMetadata": {
    object (ChatEngineMetadata)
  }
  // End of list of possible types for union field engine_metadata.
}
Fields
name

string

Immutable. Identifier. The fully qualified resource name of the engine.

This field must be a UTF-8 encoded string with a length limit of 1024 characters.

Format: projects/{project}/locations/{location}/collections/{collection}/engines/{engine} engine should be 1-63 characters, and valid characters are /[a-z0-9][a-z0-9-_]*/. Otherwise, an INVALID_ARGUMENT error is returned.

displayName

string

Required. The display name of the engine. Should be human readable. UTF-8 encoded string with limit of 1024 characters.

createTime

string (Timestamp format)

Output only. Timestamp the Recommendation Engine was created at.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Output only. Timestamp the Recommendation Engine 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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

dataStoreIds[]

string

Optional. The data stores associated with this engine.

For SOLUTION_TYPE_SEARCH and SOLUTION_TYPE_RECOMMENDATION type of engines, they can only associate with at most one data store.

If solution_type is SOLUTION_TYPE_CHAT, multiple DataStores in the same Collection can be associated here.

Note that when used in CreateEngineRequest, one DataStore id must be provided as the system will use it for necessary initializations.

solutionType

enum (SolutionType)

Required. The solutions of the engine.

industryVertical

enum (IndustryVertical)

Optional. The industry vertical that the engine registers. The restriction of the Engine industry vertical is based on DataStore: Vertical on Engine has to match vertical of the DataStore linked to the engine.

commonConfig

object (CommonConfig)

Common config spec that specifies the metadata of the engine.

knowledgeGraphConfig

object (KnowledgeGraphConfig)

Optional. Configurations for the Knowledge Graph. Only applicable if solution_type is SOLUTION_TYPE_SEARCH.

appType

enum (AppType)

Optional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type.

disableAnalytics

boolean

Optional. Whether to disable analytics for searches performed on this engine.

features

map (key: string, value: enum (FeatureState))

Optional. Feature config for the engine to opt in or opt out of features. Supported keys:

  • *: all features, if it's present, all other feature state settings are ignored.
  • agent-gallery
  • no-code-agent-builder
  • prompt-gallery
  • model-selector
  • notebook-lm
  • people-search
  • people-search-org-chart
  • bi-directional-audio
  • feedback
  • session-sharing
  • personalization-memory
  • personalization-suggested-highlights
  • disable-mobile-app-access
  • disable-agent-sharing
  • disable-image-generation
  • disable-video-generation
  • disable-onedrive-upload
  • disable-talk-to-content
  • disable-google-drive-upload
  • disable-welcome-emails
  • disable-canvas
  • disable-canvas-workspace
  • disable-skills
  • enable-end-user-sharing-with-groups
  • single-agent-orchestration
  • multi-agent-orchestration
  • cross-product-intelligence

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

cmekConfig

object (CmekConfig)

Output only. CMEK-related information for the Engine.

configurableBillingApproach

enum (ConfigurableBillingApproach)

Optional. Configuration for configurable billing approach.

modelConfigs

map (key: string, value: enum (ModelState))

Optional. Maps a model name to its specific configuration for this engine. This allows admin users to turn on/off individual models. This only stores models whose states are overridden by the admin.

When the state is unspecified, or model_configs is empty for this model, the system will decide if this model should be available or not based on the default configuration. For example, a preview model should be disabled by default if the admin has not chosen to enable it.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

observabilityConfig

object (ObservabilityConfig)

Optional. Observability config for the engine.

connectorTenantInfo

map (key: string, value: string)

Optional. Maps a connector ID (e.g., "hybrid-github", "shopify") to tenant-specific information required for that connector. The structure of the tenant information string is connector-dependent.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

agentGatewaySetting

object (AgentGatewaySetting)

Optional. The agent gateway setting for the engine.

marketplaceAgentVisibility

enum (MarketplaceAgentVisibility)

Optional. The visibility of marketplace agents in the agent gallery.

procurementContactEmails[]

string

Optional. The emails of the procurement contacts.

Union field engine_config. Additional config specs that defines the behavior of the engine. engine_config can be only one of the following:
similarDocumentsConfig

object (SimilarDocumentsEngineConfig)

Additional config specs for a similar-items engine.

chatEngineConfig

object (ChatEngineConfig)

Configurations for the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.

searchEngineConfig

object (SearchEngineConfig)

Configurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH.

mediaRecommendationEngineConfig

object (MediaRecommendationEngineConfig)

Configurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical.

Union field engine_metadata. Engine metadata to monitor the status of the engine. engine_metadata can be only one of the following:
recommendationMetadata

object (RecommendationMetadata)

Output only. Additional information of a recommendation engine. Only applicable if solution_type is SOLUTION_TYPE_RECOMMENDATION.

chatEngineMetadata

object (ChatEngineMetadata)

Output only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT.

ChatEngineConfig

JSON representation
{
  "agentCreationConfig": {
    object (AgentCreationConfig)
  },
  "dialogflowAgentToLink": string,
  "allowCrossRegion": boolean
}
Fields
agentCreationConfig

object (AgentCreationConfig)

The configurationt generate the Dialogflow agent that is associated to this Engine.

Note that these configurations are one-time consumed by and passed to Dialogflow service. It means they cannot be retrieved using EngineService.GetEngine or EngineService.ListEngines API after engine creation.

dialogflowAgentToLink

string

The resource name of an exist Dialogflow agent to link to this Chat Engine. Customers can either provide agent_creation_config to create agent or provide an agent name that links the agent with the Chat engine.

Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>.

Note that the dialogflow_agent_to_link are one-time consumed by and passed to Dialogflow service. It means they cannot be retrieved using EngineService.GetEngine or EngineService.ListEngines API after engine creation. Use ChatEngineMetadata.dialogflow_agent for actual agent association after Engine is created.

allowCrossRegion

boolean

Optional. If the flag set to true, we allow the agent and engine are in different locations, otherwise the agent and engine are required to be in the same location. The flag is set to false by default.

Note that the allow_cross_region are one-time consumed by and passed to EngineService.CreateEngine. It means they cannot be retrieved using EngineService.GetEngine or EngineService.ListEngines API after engine creation.

AgentCreationConfig

JSON representation
{
  "business": string,
  "defaultLanguageCode": string,
  "timeZone": string,
  "location": string
}
Fields
business

string

Name of the company, organization or other entity that the agent represents. Used for knowledge connector LLM prompt and for knowledge search.

defaultLanguageCode

string

Required. The default language of the agent as a language tag. See Language Support for a list of the currently supported language codes.

timeZone

string

Required. The time zone of the agent from the time zone database, e.g., America/New_York, Europe/Paris.

location

string

Agent location for Agent creation, supported values: global/us/eu. If not provided, us Engine will create Agent using us-central-1 by default; eu Engine will create Agent using eu-west-1 by default.

SearchEngineConfig

JSON representation
{
  "searchTier": enum (SearchTier),
  "requiredSubscriptionTier": enum (SubscriptionTier),
  "searchAddOns": [
    enum (SearchAddOn)
  ]
}
Fields
searchTier

enum (SearchTier)

The search feature tier of this engine.

Different tiers might have different pricing. To learn more, check the pricing documentation.

Defaults to SearchTier.SEARCH_TIER_STANDARD if not specified.

requiredSubscriptionTier

enum (SubscriptionTier)

Optional. The required subscription tier of this engine.

They cannot be modified after engine creation. If the required subscription tier is search, user with higher license tier like assist can still access the standalone app associated with this engine.

searchAddOns[]

enum (SearchAddOn)

The add-on that this search engine enables.

MediaRecommendationEngineConfig

JSON representation
{
  "type": string,
  "optimizationObjective": string,
  "optimizationObjectiveConfig": {
    object (OptimizationObjectiveConfig)
  },
  "trainingState": enum (TrainingState),
  "engineFeaturesConfig": {
    object (EngineFeaturesConfig)
  }
}
Fields
type

string

Required. The type of engine. e.g., recommended-for-you.

This field together with optimization_objective describe engine metadata to use to control engine training and serving.

Currently supported values: recommended-for-you, others-you-may-like, more-like-this, most-popular-items.

optimizationObjective

string

The optimization objective. e.g., cvr.

This field together with optimization_objective describe engine metadata to use to control engine training and serving.

Currently supported values: ctr, cvr.

If not specified, we choose default based on engine type. Default depends on type of recommendation:

recommended-for-you => ctr

others-you-may-like => ctr

optimizationObjectiveConfig

object (OptimizationObjectiveConfig)

Name and value of the custom threshold for cvr optimization_objective. For target_field watch-time, target_field_value must be an integer value indicating the media progress time in seconds between (0, 86400] (excludes 0, includes 86400) (e.g., 90). For target_field watch-percentage, the target_field_value must be a valid float value between (0, 1.0] (excludes 0, includes 1.0) (e.g., 0.5).

trainingState

enum (TrainingState)

The training state that the engine is in (e.g. TRAINING or PAUSED).

Since part of the cost of running the service is frequency of training - this can be used to determine when to train engine in order to control cost. If not specified: the default value for CreateEngine method is TRAINING. The default value for UpdateEngine method is to keep the state the same as before.

engineFeaturesConfig

object (EngineFeaturesConfig)

Optional. Additional engine features config.

OptimizationObjectiveConfig

JSON representation
{
  "targetField": string,
  "targetFieldValueFloat": number
}
Fields
targetField

string

Required. The name of the field to target. Currently supported values: watch-percentage, watch-time.

targetFieldValueFloat

number

Required. The threshold to be applied to the target (e.g., 0.5).

EngineFeaturesConfig

JSON representation
{

  // Union field type_dedicated_config can be only one of the following:
  "recommendedForYouConfig": {
    object (RecommendedForYouFeatureConfig)
  },
  "mostPopularConfig": {
    object (MostPopularFeatureConfig)
  }
  // End of list of possible types for union field type_dedicated_config.
}
Fields
Union field type_dedicated_config. Feature related configurations applied to a specific type of media recommendation engines. type_dedicated_config can be only one of the following:
recommendedForYouConfig

object (RecommendedForYouFeatureConfig)

Recommended for you engine feature config.

mostPopularConfig

object (MostPopularFeatureConfig)

Most popular engine feature config.

RecommendedForYouFeatureConfig

JSON representation
{
  "contextEventType": string
}
Fields
contextEventType

string

The type of event with which the engine is queried at prediction time. If set to generic, only view-item, media-play,and media-complete will be used as context-event in engine training. If set to view-home-page, view-home-page will also be used as context-events in addition to view-item, media-play, and media-complete. Currently supported for the recommended-for-you engine. Currently supported values: view-home-page, generic.

MostPopularFeatureConfig

JSON representation
{
  "timeWindowDays": string
}
Fields
timeWindowDays

string (int64 format)

The time window of which the engine is queried at training and prediction time. Positive integers only. The value translates to the last X days of events. Currently required for the most-popular-items engine.

RecommendationMetadata

JSON representation
{
  "servingState": enum (ServingState),
  "dataState": enum (DataState),
  "lastTuneTime": string,
  "lastTrainTime": string,
  "tuningOperation": string
}
Fields
servingState

enum (ServingState)

Output only. The serving state of the engine: ACTIVE, NOT_ACTIVE.

dataState

enum (DataState)

Output only. The state of data requirements for this engine: DATA_OK and DATA_ERROR.

Engine cannot be trained if the data is in DATA_ERROR state. Engine can have DATA_ERROR state even if serving state is ACTIVE: engines were trained successfully before, but cannot be refreshed because the underlying engine no longer has sufficient data for training.

lastTuneTime

string (Timestamp format)

Output only. The timestamp when the latest successful tune finished. Only applicable on Media Recommendation engines.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

lastTrainTime

string (Timestamp format)

Output only. The timestamp when the latest successful training finished. Only applicable on Media Recommendation engines.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

tuningOperation

string

Output only. The latest tune operation id associated with the engine. Only applicable on Media Recommendation engines.

If present, this operation id can be used to determine if there is an ongoing tune for this engine. To check the operation status, send the GetOperation request with this operation id in the engine resource format. If no tuning has happened for this engine, the string is empty.

Timestamp

JSON representation
{
  "seconds": string,
  "nanos": integer
}
Fields
seconds

string (int64 format)

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

integer

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.

ChatEngineMetadata

JSON representation
{
  "dialogflowAgent": string
}
Fields
dialogflowAgent

string

The resource name of a Dialogflow agent, that this Chat Engine refers to.

Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>.

CommonConfig

JSON representation
{
  "companyName": string
}
Fields
companyName

string

The name of the company, business or entity that is associated with the engine. Setting this may help improve LLM related features.

KnowledgeGraphConfig

JSON representation
{
  "enableCloudKnowledgeGraph": boolean,
  "cloudKnowledgeGraphTypes": [
    string
  ],
  "enablePrivateKnowledgeGraph": boolean,
  "privateKnowledgeGraphTypes": [
    string
  ],
  "featureConfig": {
    object (FeatureConfig)
  }
}
Fields
enableCloudKnowledgeGraph

boolean

Whether to enable the Cloud Knowledge Graph for the engine.

Defaults to false if not specified.

cloudKnowledgeGraphTypes[]

string

Specify entity types to support.

enablePrivateKnowledgeGraph

boolean

Whether to enable the Private Knowledge Graph for the engine.

Defaults to false if not specified.

privateKnowledgeGraphTypes[]

string

Specify entity types to support.

featureConfig

object (FeatureConfig)

Optional. Feature config for the Knowledge Graph.

FeatureConfig

JSON representation
{
  "disablePrivateKgQueryUnderstanding": boolean,
  "disablePrivateKgEnrichment": boolean,
  "disablePrivateKgAutoComplete": boolean,
  "disablePrivateKgQueryUiChips": boolean
}
Fields
disablePrivateKgQueryUnderstanding

boolean

Whether to disable the private KG query understanding for the engine.

Defaults to false if not specified.

disablePrivateKgEnrichment

boolean

Whether to disable the private KG enrichment for the engine.

Defaults to false if not specified.

disablePrivateKgAutoComplete

boolean

Whether to disable the private KG auto complete for the engine.

Defaults to false if not specified.

disablePrivateKgQueryUiChips

boolean

Whether to disable the private KG for query UI chips.

Defaults to false if not specified.

FeaturesEntry

JSON representation
{
  "key": string,
  "value": enum (FeatureState)
}
Fields
key

string

value

enum (FeatureState)

CmekConfig

JSON representation
{
  "name": string,
  "kmsKey": string,
  "kmsKeyVersion": string,
  "state": enum (State),
  "isDefault": boolean,
  "lastRotationTimestampMicros": string,
  "singleRegionKeys": [
    {
      object (SingleRegionKey)
    }
  ],
  "notebooklmState": enum (NotebookLMState)
}
Fields
name

string

Required. The name of the CmekConfig of the form projects/{project}/locations/{location}/cmekConfig or projects/{project}/locations/{location}/cmekConfigs/{cmek_config}.

kmsKey

string

Required. KMS key resource name which will be used to encrypt resources projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}.

kmsKeyVersion

string

Output only. KMS key version resource name which will be used to encrypt resources <kms_key>/cryptoKeyVersions/{keyVersion}.

state

enum (State)

Output only. The states of the CmekConfig.

isDefault

boolean

Output only. The default CmekConfig for the Customer.

lastRotationTimestampMicros

string (int64 format)

Output only. The timestamp of the last key rotation.

singleRegionKeys[]

object (SingleRegionKey)

Optional. Single-regional CMEKs that are required for some VAIS features.

notebooklmState

enum (NotebookLMState)

Output only. Whether the NotebookLM Corpus is ready to be used.

SingleRegionKey

JSON representation
{
  "kmsKey": string
}
Fields
kmsKey

string

Required. Single-regional kms key resource name which will be used to encrypt resources projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{keyId}.

ModelConfigsEntry

JSON representation
{
  "key": string,
  "value": enum (ModelState)
}
Fields
key

string

value

enum (ModelState)

ObservabilityConfig

JSON representation
{
  "observabilityEnabled": boolean,
  "sensitiveLoggingEnabled": boolean
}
Fields
observabilityEnabled

boolean

Optional. Enables observability. If false, all other flags are ignored.

sensitiveLoggingEnabled

boolean

Optional. Enables sensitive logging. Sensitive logging includes customer core content (e.g. prompts, responses). If false, will sanitize all sensitive fields.

ConnectorTenantInfoEntry

JSON representation
{
  "key": string,
  "value": string
}
Fields
key

string

value

string

AgentGatewaySetting

JSON representation
{
  "defaultEgressAgentGateway": {
    object (AgentGatewayReference)
  }
}
Fields
defaultEgressAgentGateway

object (AgentGatewayReference)

Optional. The default egress agent gateway to use, when this setting is applied to a Gemini Enterprise resource.

The deployment mode must be GOOGLE_MANAGED, and the governed access path must be AGENT_TO_ANYWHERE.

AgentGatewayReference

JSON representation
{
  "name": string
}
Fields
name

string

Required. Immutable. The resource name of the agent gateway.

Expected format: projects/{project_number}/locations/{location}/agentGateways/{agent_gateway}.

SearchTier

Tiers of search features. Different tiers might have different pricing. To learn more, check the pricing documentation.

Enums
SEARCH_TIER_UNSPECIFIED Default value when the enum is unspecified. This is invalid to use.
SEARCH_TIER_STANDARD Standard tier.
SEARCH_TIER_ENTERPRISE Enterprise tier.

SubscriptionTier

Subscription tier information.

Enums
SUBSCRIPTION_TIER_UNSPECIFIED Default value.
SUBSCRIPTION_TIER_SEARCH_AND_ASSISTANT Gemini Enterprise Plus tier.
SUBSCRIPTION_TIER_NOTEBOOK_LM NotebookLM tier. NotebookLM is a subscription tier can only access NotebookLM features.
SUBSCRIPTION_TIER_FRONTLINE_WORKER Gemini Frontline worker tier.
SUBSCRIPTION_TIER_AGENTSPACE_STARTER Gemini Business Starter tier.
SUBSCRIPTION_TIER_AGENTSPACE_BUSINESS Gemini Business tier.
SUBSCRIPTION_TIER_ENTERPRISE Gemini Enterprise Standard tier.
SUBSCRIPTION_TIER_ENTERPRISE_EMERGING Gemini Enterprise Standard tier for emerging markets.
SUBSCRIPTION_TIER_EDU Gemini Enterprise EDU tier.
SUBSCRIPTION_TIER_EDU_PRO Gemini Enterprise EDU Pro tier.
SUBSCRIPTION_TIER_EDU_EMERGING Gemini Enterprise EDU tier for emerging market only.
SUBSCRIPTION_TIER_EDU_PRO_EMERGING Gemini Enterprise EDU Pro tier for emerging market.
SUBSCRIPTION_TIER_FRONTLINE_STARTER Gemini Frontline Starter tier.

SearchAddOn

Add-on that provides additional functionality for search.

Enums
SEARCH_ADD_ON_UNSPECIFIED Default value when the enum is unspecified. This is invalid to use.
SEARCH_ADD_ON_LLM Large language model add-on.

TrainingState

The training state of the engine.

Enums
TRAINING_STATE_UNSPECIFIED Unspecified training state.
PAUSED The engine training is paused.
TRAINING The engine is training.

ServingState

The serving state of the recommendation engine.

Enums
SERVING_STATE_UNSPECIFIED Unspecified serving state.
INACTIVE The engine is not serving.
ACTIVE The engine is serving and can be queried.
TUNED The engine is trained on tuned hyperparameters and can be queried.

DataState

Describes whether this engine have sufficient training data to be continuously trained.

Enums
DATA_STATE_UNSPECIFIED Unspecified default value, should never be explicitly set.
DATA_OK The engine has sufficient training data.
DATA_ERROR The engine does not have sufficient training data. Error messages can be queried via Stackdriver.

SolutionType

The type of solution.

Enums
SOLUTION_TYPE_UNSPECIFIED Default value.
SOLUTION_TYPE_RECOMMENDATION Used for Recommendations AI.
SOLUTION_TYPE_CHAT Used for use cases related to the Generative AI agent.
SOLUTION_TYPE_GENERATIVE_CHAT Used for use cases related to the Generative Chat agent. It's used for Generative chat engine only, the associated data stores must enrolled with SOLUTION_TYPE_CHAT solution.
SOLUTION_TYPE_AI_MODE Used for AI Mode.

IndustryVertical

The industry vertical associated with the DataStore.

Enums
INDUSTRY_VERTICAL_UNSPECIFIED Value used when unset.
GENERIC The generic vertical for documents that are not specific to any industry vertical.
MEDIA The media industry vertical.
HEALTHCARE_FHIR The healthcare FHIR vertical.

AppType

The app of the engine.

Enums
APP_TYPE_UNSPECIFIED All non specified apps.
APP_TYPE_INTRANET App type for intranet search and Agentspace.

FeatureState

The state of the feature for the engine.

Enums
FEATURE_STATE_UNSPECIFIED The feature state is unspecified.
FEATURE_STATE_ON The feature is turned on to be accessible.
FEATURE_STATE_OFF The feature is turned off to be inaccessible.

State

States of the CmekConfig.

Enums
STATE_UNSPECIFIED The CmekConfig state is unknown.
CREATING The CmekConfig is creating.
ACTIVE The CmekConfig can be used with DataStores.
KEY_ISSUE The CmekConfig is unavailable, most likely due to the KMS Key being revoked.
DELETING The CmekConfig is deleting.
DELETE_FAILED The CmekConfig deletion process failed.
UNUSABLE The CmekConfig is not usable, most likely due to some internal issue.
ACTIVE_ROTATING The KMS key version is being rotated.
DELETED The KMS key is soft deleted. Some cleanup policy will eventually be applied.
EXPIRED The KMS key is expired, meaning the key has been disabled for 30+ days. The customer can call DeleteCmekConfig to change the state to DELETED.

NotebookLMState

States of NotebookLM.

Enums
NOTEBOOK_LM_STATE_UNSPECIFIED The NotebookLM state is unknown.
NOTEBOOK_LM_NOT_READY The NotebookLM is not ready.
NOTEBOOK_LM_READY The NotebookLM is ready to be used.
NOTEBOOK_LM_NOT_ENABLED The NotebookLM is not enabled.

ConfigurableBillingApproach

Configuration for configurable billing approach.

Enums
CONFIGURABLE_BILLING_APPROACH_UNSPECIFIED Default value. For Spark and non-Spark non-configurable billing approach. General pricing model.
CONFIGURABLE_BILLING_APPROACH_ENABLED The billing approach follows configurations specified by customer.

ModelState

The status of the model for the engine.

Enums
MODEL_STATE_UNSPECIFIED The model state is unspecified.
MODEL_ENABLED The model is enabled by admin.
MODEL_DISABLED The model is disabled by admin.

MarketplaceAgentVisibility

Represents which marketplace agents are visible to any users in agent gallery.

Enums
MARKETPLACE_AGENT_VISIBILITY_UNSPECIFIED Defaults to MARKETPLACE_AGENT_VISIBILITY_UNSPECIFIED.
SHOW_AVAILABLE_AGENTS_ONLY Only agents that are currently available for use by the user are visible.
SHOW_AGENTS_ALREADY_INTEGRATED Show marketplace agents that the user does not yet have access to but are integrated into the engine. This level also includes all agents visible with SHOW_AVAILABLE_AGENTS_ONLY.
SHOW_AGENTS_ALREADY_PURCHASED Show all agents visible with SHOW_AGENTS_ALREADY_INTEGRATED, plus agents that have already been purchased by the project/organization, even if they are not currently integrated into the engine.
SHOW_ALL_AGENTS All agents in the marketplace are visible, regardless of access or purchase status. This level encompasses all agents shown in the previous levels.

Tool Annotations

Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌