Skip to main content

engines

Creates, updates, deletes, gets or lists an engines resource.

Overview

Nameengines
TypeResource
Idgoogle.discoveryengine.engines

Fields

The following fields are returned by SELECT queries:

NameDatatypeDescription
namestringImmutable. 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*/. Otherwise, an INVALID_ARGUMENT error is returned.
agentGatewaySettingobjectOptional. The agent gateway setting for the engine. (id: GoogleCloudDiscoveryengineV1AgentGatewaySetting)
appTypestringOptional. Immutable. This the application type which this engine resource represents. NOTE: this is a new concept independ of existing industry vertical or solution type. (APP_TYPE_UNSPECIFIED, APP_TYPE_INTRANET)
associatedAgentRegistrystringOutput only. The Agent registry containing the agents, MCP servers and tools associated with this engine. Derived server-side from the linked Agent Gateway's registry.
chatEngineConfigobjectConfigurations for the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. (id: GoogleCloudDiscoveryengineV1EngineChatEngineConfig)
chatEngineMetadataobjectOutput only. Additional information of the Chat Engine. Only applicable if solution_type is SOLUTION_TYPE_CHAT. (id: GoogleCloudDiscoveryengineV1EngineChatEngineMetadata)
cmekConfigobjectConfigurations used to enable CMEK data encryption with Cloud KMS keys. (id: GoogleCloudDiscoveryengineV1CmekConfig)
commonConfigobjectCommon config spec that specifies the metadata of the engine. (id: GoogleCloudDiscoveryengineV1EngineCommonConfig)
configurableBillingApproachstringOptional. Configuration for configurable billing approach. (CONFIGURABLE_BILLING_APPROACH_UNSPECIFIED, CONFIGURABLE_BILLING_APPROACH_ENABLED)
connectorTenantInfoobjectOptional. 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.
createTimestring (google-datetime)Output only. Timestamp the Recommendation Engine was created at.
dataStoreIdsarrayOptional. 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.
disableAnalyticsbooleanOptional. Whether to disable analytics for searches performed on this engine.
displayNamestringRequired. The display name of the engine. Should be human readable. UTF-8 encoded string with limit of 1024 characters.
featuresobjectOptional. 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 * 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 * canvas-workspace * disable-skills * disable-projects * enable-end-user-sharing-with-groups * single-agent-orchestration * multi-agent-orchestration * cross-product-intelligence
industryVerticalstringOptional. 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. (INDUSTRY_VERTICAL_UNSPECIFIED, GENERIC, MEDIA, HEALTHCARE_FHIR)
knowledgeGraphConfigobjectOptional. Configurations for the Knowledge Graph. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. (id: GoogleCloudDiscoveryengineV1EngineKnowledgeGraphConfig)
marketplaceAgentVisibilitystringOptional. The visibility of marketplace agents in the agent gallery. (MARKETPLACE_AGENT_VISIBILITY_UNSPECIFIED, SHOW_AVAILABLE_AGENTS_ONLY, SHOW_AGENTS_ALREADY_INTEGRATED, SHOW_AGENTS_ALREADY_PURCHASED, SHOW_ALL_AGENTS)
mediaRecommendationEngineConfigobjectConfigurations for the Media Engine. Only applicable on the data stores with solution_type SOLUTION_TYPE_RECOMMENDATION and IndustryVertical.MEDIA vertical. (id: GoogleCloudDiscoveryengineV1EngineMediaRecommendationEngineConfig)
modelConfigsobjectOptional. 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.
observabilityConfigobjectOptional. Observability config for the engine. (id: GoogleCloudDiscoveryengineV1ObservabilityConfig)
procurementContactEmailsarrayOptional. The emails of the procurement contacts.
searchEngineConfigobjectConfigurations for the Search Engine. Only applicable if solution_type is SOLUTION_TYPE_SEARCH. (id: GoogleCloudDiscoveryengineV1EngineSearchEngineConfig)
solutionTypestringRequired. The solutions of the engine. (SOLUTION_TYPE_UNSPECIFIED, SOLUTION_TYPE_RECOMMENDATION, SOLUTION_TYPE_SEARCH, SOLUTION_TYPE_CHAT, SOLUTION_TYPE_GENERATIVE_CHAT, SOLUTION_TYPE_AI_MODE)
updateTimestring (google-datetime)Output only. Timestamp the Recommendation Engine was last updated.

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
projects_locations_collections_engines_getselectprojectsId, locationsId, collectionsId, enginesIdGets an Engine.
projects_locations_collections_engines_listselectprojectsId, locationsId, collectionsIdpageToken, filter, pageSizeLists all the Engines associated with the project.
projects_locations_collections_engines_createinsertprojectsId, locationsId, collectionsIdengineIdCreates an Engine.
projects_locations_collections_engines_patchupdateprojectsId, locationsId, collectionsId, enginesIdupdateMaskUpdates an Engine
projects_locations_collections_engines_deletedeleteprojectsId, locationsId, collectionsId, enginesIdDeletes an Engine.

Parameters

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
collectionsIdstring
enginesIdstring
locationsIdstring
projectsIdstring
engineIdstring
filterstring
pageSizeinteger (int32)
pageTokenstring
updateMaskstring (google-fieldmask)

SELECT examples

Gets an Engine.

SELECT
name,
agentGatewaySetting,
appType,
associatedAgentRegistry,
chatEngineConfig,
chatEngineMetadata,
cmekConfig,
commonConfig,
configurableBillingApproach,
connectorTenantInfo,
createTime,
dataStoreIds,
disableAnalytics,
displayName,
features,
industryVertical,
knowledgeGraphConfig,
marketplaceAgentVisibility,
mediaRecommendationEngineConfig,
modelConfigs,
observabilityConfig,
procurementContactEmails,
searchEngineConfig,
solutionType,
updateTime
FROM google.discoveryengine.engines
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND collectionsId = '{{ collectionsId }}' -- required
AND enginesId = '{{ enginesId }}' -- required
;

INSERT examples

Creates an Engine.

INSERT INTO google.discoveryengine.engines (
data__configurableBillingApproach,
data__mediaRecommendationEngineConfig,
data__marketplaceAgentVisibility,
data__procurementContactEmails,
data__name,
data__industryVertical,
data__modelConfigs,
data__solutionType,
data__knowledgeGraphConfig,
data__dataStoreIds,
data__observabilityConfig,
data__displayName,
data__appType,
data__disableAnalytics,
data__chatEngineConfig,
data__connectorTenantInfo,
data__agentGatewaySetting,
data__searchEngineConfig,
data__features,
data__commonConfig,
projectsId,
locationsId,
collectionsId,
engineId
)
SELECT
'{{ configurableBillingApproach }}',
'{{ mediaRecommendationEngineConfig }}',
'{{ marketplaceAgentVisibility }}',
'{{ procurementContactEmails }}',
'{{ name }}',
'{{ industryVertical }}',
'{{ modelConfigs }}',
'{{ solutionType }}',
'{{ knowledgeGraphConfig }}',
'{{ dataStoreIds }}',
'{{ observabilityConfig }}',
'{{ displayName }}',
'{{ appType }}',
{{ disableAnalytics }},
'{{ chatEngineConfig }}',
'{{ connectorTenantInfo }}',
'{{ agentGatewaySetting }}',
'{{ searchEngineConfig }}',
'{{ features }}',
'{{ commonConfig }}',
'{{ projectsId }}',
'{{ locationsId }}',
'{{ collectionsId }}',
'{{ engineId }}'
RETURNING
name,
done,
error,
metadata,
response
;

UPDATE examples

Updates an Engine

UPDATE google.discoveryengine.engines
SET
data__configurableBillingApproach = '{{ configurableBillingApproach }}',
data__mediaRecommendationEngineConfig = '{{ mediaRecommendationEngineConfig }}',
data__marketplaceAgentVisibility = '{{ marketplaceAgentVisibility }}',
data__procurementContactEmails = '{{ procurementContactEmails }}',
data__name = '{{ name }}',
data__industryVertical = '{{ industryVertical }}',
data__modelConfigs = '{{ modelConfigs }}',
data__solutionType = '{{ solutionType }}',
data__knowledgeGraphConfig = '{{ knowledgeGraphConfig }}',
data__dataStoreIds = '{{ dataStoreIds }}',
data__observabilityConfig = '{{ observabilityConfig }}',
data__displayName = '{{ displayName }}',
data__appType = '{{ appType }}',
data__disableAnalytics = {{ disableAnalytics }},
data__chatEngineConfig = '{{ chatEngineConfig }}',
data__connectorTenantInfo = '{{ connectorTenantInfo }}',
data__agentGatewaySetting = '{{ agentGatewaySetting }}',
data__searchEngineConfig = '{{ searchEngineConfig }}',
data__features = '{{ features }}',
data__commonConfig = '{{ commonConfig }}'
WHERE
projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND collectionsId = '{{ collectionsId }}' --required
AND enginesId = '{{ enginesId }}' --required
AND updateMask = '{{ updateMask}}'
RETURNING
name,
agentGatewaySetting,
appType,
associatedAgentRegistry,
chatEngineConfig,
chatEngineMetadata,
cmekConfig,
commonConfig,
configurableBillingApproach,
connectorTenantInfo,
createTime,
dataStoreIds,
disableAnalytics,
displayName,
features,
industryVertical,
knowledgeGraphConfig,
marketplaceAgentVisibility,
mediaRecommendationEngineConfig,
modelConfigs,
observabilityConfig,
procurementContactEmails,
searchEngineConfig,
solutionType,
updateTime;

DELETE examples

Deletes an Engine.

DELETE FROM google.discoveryengine.engines
WHERE projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND collectionsId = '{{ collectionsId }}' --required
AND enginesId = '{{ enginesId }}' --required
;