REST Resource: projects.locations.reasoningEngines Stay organized with collections Save and categorize content based on your preferences.
Resource: ReasoningEngine
ReasoningEngine provides a customizable runtime for models to determine which actions to take and in which order.
namestringIdentifier. The resource name of the ReasoningEngine. Format:projects/{project}/locations/{location}/reasoningEngines/{reasoningEngine}
displayNamestringRequired. The display name of the ReasoningEngine.
descriptionstringOptional. The description of the ReasoningEngine.
specobject (ReasoningEngineSpec)Optional. Configurations of the ReasoningEngine
createTimestring (Timestamp format)Output only. timestamp when this ReasoningEngine 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:"2014-10-02T15:01:23Z","2014-10-02T15:01:23.045123456Z" or"2014-10-02T15:01:23+05:30".
updateTimestring (Timestamp format)Output only. timestamp when this ReasoningEngine was most recently 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".
etagstringOptional. Used to perform consistent read-modify-write updates. If not set, a blind "overwrite" update happens.
encryptionSpecobject (EncryptionSpec)Customer-managed encryption key spec for a ReasoningEngine. If set, this ReasoningEngine and all sub-resources of this ReasoningEngine will be secured by this key.
labelsmap (key: string, value: string)Labels for the ReasoningEngine.
| JSON representation |
|---|
{"name":string,"displayName":string,"description":string,"spec":{object ( |
ReasoningEngineSpec
ReasoningEngine configurations
packageSpecobject (PackageSpec)Optional. user provided package spec of the ReasoningEngine. Ignored when users directly specify a deployment image throughdeploymentSpec.first_party_image_override, but keeping the field_behavior to avoid introducing breaking changes. Thedeployment_source field should not be set ifpackageSpec is specified.
deploymentSpecobject (DeploymentSpec)Optional. The specification of a Reasoning Engine deployment.
classMethods[]object (Struct format)Optional. Declarations for object class methods in OpenAPI specification format.
agentFrameworkstringOptional. The OSS agent framework used to develop the agent. Currently supported values: "google-adk", "langchain", "langgraph", "ag2", "llama-index", "custom".
identityTypeenum (IdentityType)Optional. The identity type to use for the Reasoning Engine. If not specified, theserviceAccount field will be used if set, otherwise the default Vertex AI Reasoning Engine service Agent in the project will be used.
deployment_sourceUnion typepackage_spec field should not be set ifdeployment_source is specified.deployment_source can be only one of the following:sourceCodeSpecobject (SourceCodeSpec)Deploy from source code files with a defined entrypoint.
serviceAccountstringOptional. The service account that the Reasoning Engine artifact runs as. It should have "roles/storage.objectViewer" for reading the user project's Cloud Storage and "roles/aiplatform.user" for using Vertex extensions. If not specified, the Vertex AI Reasoning Engine service Agent in the project will be used.
| JSON representation |
|---|
{"packageSpec":{object ( |
SourceCodeSpec
Specification for deploying from source code.
sourceUnion typesource can be only one of the following:inlineSourceobject (InlineSource)Source code is provided directly in the request.
developerConnectSourceobject (DeveloperConnectSource)Source code is in a Git repository managed by Developer Connect.
language_specUnion typelanguage_spec can be only one of the following:pythonSpecobject (PythonSpec)Configuration for a Python application.
| JSON representation |
|---|
{// source"inlineSource":{object ( |
InlineSource
Specifies source code provided as a byte stream.
sourceArchivestring (bytes format)Required. Input only. The application source code archive. It must be a compressed tarball (.tar.gz) file.
A base64-encoded string.
| JSON representation |
|---|
{"sourceArchive":string} |
DeveloperConnectSource
Specifies source code to be fetched from a Git repository managed through the Developer Connect service.
configobject (DeveloperConnectConfig)Required. The Developer Connect configuration that defines the specific repository, revision, and directory to use as the source code root.
| JSON representation |
|---|
{"config":{object ( |
DeveloperConnectConfig
Specifies the configuration for fetching source code from a Git repository that is managed by Developer Connect. This includes the repository, revision, and directory to use.
gitRepositoryLinkstringRequired. The Developer Connect Git repository link, formatted asprojects/*/locations/*/connections/*/gitRepositoryLink/*.
dirstringRequired. Directory, relative to the source root, in which to run the build.
revisionstringRequired. The revision to fetch from the Git repository such as a branch, a tag, a commit SHA, or any Git ref.
| JSON representation |
|---|
{"gitRepositoryLink":string,"dir":string,"revision":string} |
PythonSpec
Specification for running a Python application from source.
versionstringOptional. The version of Python to use. Support version includes 3.9, 3.10, 3.11, 3.12, 3.13, 3.14. If not specified, default value is 3.10.
entrypointModulestringOptional. The Python module to load as the entrypoint, specified as a fully qualified module name. For example: path.to.agent. If not specified, defaults to "agent".
The project root will be added to Python sys.path, allowing imports to be specified relative to the root.
This field should not be set if the source isagentConfigSource.
entrypointObjectstringOptional. The name of the callable object within theentrypointModule to use as the application If not specified, defaults to "root_agent".
This field should not be set if the source isagentConfigSource.
requirementsFilestringOptional. The path to the requirements file, relative to the source root. If not specified, defaults to "requirements.txt".
| JSON representation |
|---|
{"version":string,"entrypointModule":string,"entrypointObject":string,"requirementsFile":string} |
PackageSpec
user-provided package specification, containing pickled object and package requirements.
pickleObjectGcsUristringOptional. The Cloud Storage URI of the pickled python object.
dependencyFilesGcsUristringOptional. The Cloud Storage URI of the dependency files in tar.gz format.
requirementsGcsUristringOptional. The Cloud Storage URI of therequirements.txt file
pythonVersionstringOptional. The Python version. Supported values are 3.9, 3.10, 3.11, 3.12, 3.13, 3.14. If not specified, the default value is 3.10.
| JSON representation |
|---|
{"pickleObjectGcsUri":string,"dependencyFilesGcsUri":string,"requirementsGcsUri":string,"pythonVersion":string} |
DeploymentSpec
The specification of a Reasoning Engine deployment.
env[]object (EnvVar)Optional. Environment variables to be set with the Reasoning Engine deployment. The environment variables can be updated through the reasoningEngines.patch API.
secretEnv[]object (SecretEnvVar)Optional. Environment variables where the value is a secret in Cloud Secret Manager. To use this feature, add 'Secret Manager Secret Accessor' role (roles/secretmanager.secretAccessor) to AI Platform Reasoning Engine service Agent.
pscInterfaceConfigobject (PscInterfaceConfig)Optional. Configuration for PSC-I.
resourceLimitsmap (key: string, value: string)Optional. Resource limits for each container. Only 'cpu' and 'memory' keys are supported. Defaults to {"cpu": "4", "memory": "4Gi"}.
- The only supported values for CPU are '1', '2', '4', '6' and '8'. For more information, go tohttps://cloud.google.com/run/docs/configuring/cpu.
- The only supported values for memory are '1Gi', '2Gi', ... '32 Gi'.
- For required cpu on different memory values, go tohttps://cloud.google.com/run/docs/configuring/memory-limits
minInstancesintegerOptional. The minimum number of application instances that will be kept running at all times. Defaults to 1. Range: [0, 10].
maxInstancesintegerOptional. The maximum number of application instances that can be launched to handle increased traffic. Defaults to 100. Range: [1, 1000].
If VPC-SC or PSC-I is enabled, the acceptable range is [1, 100].
containerConcurrencyintegerOptional. Concurrency for each container and agent server. Recommended value: 2 * cpu + 1. Defaults to 9.
| JSON representation |
|---|
{"env":[{object ( |
SecretEnvVar
Represents an environment variable where the value is a secret in Cloud Secret Manager.
namestringRequired. name of the secret environment variable.
secretRefobject (SecretRef)Required. Reference to a secret stored in the Cloud Secret Manager that will provide the value for this environment variable.
| JSON representation |
|---|
{"name":string,"secretRef":{object ( |
SecretRef
Reference to a secret stored in the Cloud Secret Manager that will provide the value for this environment variable.
secretstringRequired. The name of the secret in Cloud Secret Manager. Format: {secret_name}.
versionstringThe Cloud Secret Manager secret version. Can be 'latest' for the latest version, an integer for a specific version, or a version alias.
| JSON representation |
|---|
{"secret":string,"version":string} |
IdentityType
The identity type to use for the Reasoning Engine.
| Enums | |
|---|---|
IDENTITY_TYPE_UNSPECIFIED | Default value. Use a custom service account if theserviceAccount field is set, otherwise use the default Vertex AI Reasoning Engine service Agent in the project. Same behavior as SERVICE_ACCOUNT. |
SERVICE_ACCOUNT | Use a custom service account if theserviceAccount field is set, otherwise use the default Vertex AI Reasoning Engine service Agent in the project. |
AGENT_IDENTITY | Use Agent Identity. TheserviceAccount field must not be set. |
Methods | |
|---|---|
| Creates a reasoning engine. |
| Deletes a reasoning engine. |
| Gets a reasoning engine. |
| Lists reasoning engines in a location. |
| Updates a reasoning engine. |
| Queries using a reasoning engine. |
| Streams queries using a reasoning engine. |
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-01-29 UTC.