- NAME
-
- gcloud alpha apihub plugins instances update - update a Plugin Instance
- SYNOPSIS
-
-
gcloud alpha apihub plugins instances update(INSTANCE:--location=LOCATION--plugin=PLUGIN) [--display-name=DISPLAY_NAME] [--source-project-id=SOURCE_PROJECT_ID] [--actions=[actionId=ACTIONID],[curationConfig=CURATIONCONFIG],[scheduleCronExpression=SCHEDULECRONEXPRESSION],[scheduleTimeZone=SCHEDULETIMEZONE],[serviceAccount=SERVICEACCOUNT] |--add-actions=[actionId=ACTIONID],[curationConfig=CURATIONCONFIG],[scheduleCronExpression=SCHEDULECRONEXPRESSION],[scheduleTimeZone=SCHEDULETIMEZONE],[serviceAccount=SERVICEACCOUNT]--clear-actions|--remove-actions=[actionId=ACTIONID],[curationConfig=CURATIONCONFIG],[scheduleCronExpression=SCHEDULECRONEXPRESSION],[scheduleTimeZone=SCHEDULETIMEZONE],[serviceAccount=SERVICEACCOUNT]] [--additional-config=[ADDITIONAL_CONFIG,…] |--update-additional-config=[UPDATE_ADDITIONAL_CONFIG,…]--clear-additional-config|--remove-additional-config=REMOVE_ADDITIONAL_CONFIG] [--auth-config-type=AUTH_CONFIG_TYPE--clear-auth-config--api-key-config-http-element-location=API_KEY_CONFIG_HTTP_ELEMENT_LOCATION--api-key-config-name=API_KEY_CONFIG_NAME--api-key-config-secret-version=API_KEY_CONFIG_SECRET_VERSION|--oauth2-client-credentials-config-id=OAUTH2_CLIENT_CREDENTIALS_CONFIG_ID--oauth2-client-credentials-config-secret-version=OAUTH2_CLIENT_CREDENTIALS_CONFIG_SECRET_VERSION|--user-password-config-secret-version=USER_PASSWORD_CONFIG_SECRET_VERSION--user-password-config-username=USER_PASSWORD_CONFIG_USERNAME] [--source-environments-config=[SOURCE_ENVIRONMENTS_CONFIG,…] |--update-source-environments-config=[UPDATE_SOURCE_ENVIRONMENTS_CONFIG,…]--clear-source-environments-config|--remove-source-environments-config=REMOVE_SOURCE_ENVIRONMENTS_CONFIG] [GCLOUD_WIDE_FLAG …]
-
- DESCRIPTION
-
(ALPHA)Update a plugin instance - EXAMPLES
-
To update the display name of a plugin instance with the ID
my-instance, run:gcloud alpha apihub plugins instances update my-instance --plugin=my-plugin --display-name="New Instance Name" --project=my-project --location=us-central1 - POSITIONAL ARGUMENTS
-
-
Instance resource - Identifier. The unique name of the plugin instance resource.
Format:
projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}The arguments in this group can be used to specify the attributes of this resource. (NOTE) Some attributes are not given arguments in this group but can be set in other ways.To set the
projectattribute:-
provide the argument
instanceon the command line with a fully specified name; -
provide the argument
--projecton the command line; -
set the property
core/project.
This must be specified.
INSTANCE-
ID of the instance or fully qualified identifier for the instance.
To set the
instanceattribute:-
provide the argument
instanceon the command line.
This positional argument must be specified if any of the other arguments in this group are specified.
-
provide the argument
--location=LOCATION-
The location id of the instance resource.
To set the
locationattribute:-
provide the argument
instanceon the command line with a fully specified name; -
provide the argument
--locationon the command line.
-
provide the argument
--plugin=PLUGIN-
The plugin id of the instance resource.
To set the
pluginattribute:-
provide the argument
instanceon the command line with a fully specified name; -
provide the argument
--pluginon the command line.
-
provide the argument
-
provide the argument
-
Instance resource - Identifier. The unique name of the plugin instance resource.
Format:
- FLAGS
-
--display-name=DISPLAY_NAME- The display name for this plugin instance. Max length is 255 characters.
--source-project-id=SOURCE_PROJECT_ID- The source project id of the plugin instance. This will be the id of runtime project in case of Google Cloud based plugins and org id in case of non-Google Cloud based plugins. This field will be a required field for Google provided on-ramp plugins.
-
Update actions.
At most one of these can be specified:
--actions=[actionId=ACTIONID],[curationConfig=CURATIONCONFIG],[scheduleCronExpression=SCHEDULECRONEXPRESSION],[scheduleTimeZone=SCHEDULETIMEZONE],[serviceAccount=SERVICEACCOUNT]-
Set actions to new value. The action status for the plugin instance.
actionId- This should map to one of the [action id][google.cloud.apihub.v1.PluginActionConfig.id] specified in [actions_config][google.cloud.apihub.v1.Plugin.actions_config] in the plugin.
curationConfig-
This configuration should be provided if the plugin action is publishing data to
API hub curate layer.
curationType- The curation type for this plugin instance.
customCuration-
Custom curation information for this plugin instance.
curation-
The unique name of the curation resource. This will be the name of the curation
resource in the format:
projects/{project}/locations/{location}/curations/{curation}.
scheduleCronExpression- The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
scheduleTimeZone- The time zone for the schedule cron expression. If not provided, UTC will be used.
serviceAccount- The service account used to publish data. Note, the service account will only be accepted for non-Google Cloud plugins like OPDK.
Shorthand Example:--actions=actionId=string,curationConfig={curationType=string,customCuration={curation=string}},scheduleCronExpression=string,scheduleTimeZone=string,serviceAccount=string --actions=actionId=string,curationConfig={curationType=string,customCuration={curation=string}},scheduleCronExpression=string,scheduleTimeZone=string,serviceAccount=string
JSON Example:--actions='[{"actionId": "string", "curationConfig": {"curationType": "string", "customCuration": {"curation": "string"}}, "scheduleCronExpression": "string", "scheduleTimeZone": "string", "serviceAccount": "string"}]'
File Example:--actions=path_to_file.(yaml|json)
-
Or at least one of these can be specified:
--add-actions=[actionId=ACTIONID],[curationConfig=CURATIONCONFIG],[scheduleCronExpression=SCHEDULECRONEXPRESSION],[scheduleTimeZone=SCHEDULETIMEZONE],[serviceAccount=SERVICEACCOUNT]-
Add new value to actions list. The action status for the plugin instance.
actionId- This should map to one of the [action id][google.cloud.apihub.v1.PluginActionConfig.id] specified in [actions_config][google.cloud.apihub.v1.Plugin.actions_config] in the plugin.
curationConfig-
This configuration should be provided if the plugin action is publishing data to
API hub curate layer.
curationType- The curation type for this plugin instance.
customCuration-
Custom curation information for this plugin instance.
curation-
The unique name of the curation resource. This will be the name of the curation
resource in the format:
projects/{project}/locations/{location}/curations/{curation}.
scheduleCronExpression- The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
scheduleTimeZone- The time zone for the schedule cron expression. If not provided, UTC will be used.
serviceAccount- The service account used to publish data. Note, the service account will only be accepted for non-Google Cloud plugins like OPDK.
Shorthand Example:--add-actions=actionId=string,curationConfig={curationType=string,customCuration={curation=string}},scheduleCronExpression=string,scheduleTimeZone=string,serviceAccount=string --add-actions=actionId=string,curationConfig={curationType=string,customCuration={curation=string}},scheduleCronExpression=string,scheduleTimeZone=string,serviceAccount=string
JSON Example:--add-actions='[{"actionId": "string", "curationConfig": {"curationType": "string", "customCuration": {"curation": "string"}}, "scheduleCronExpression": "string", "scheduleTimeZone": "string", "serviceAccount": "string"}]'
File Example:--add-actions=path_to_file.(yaml|json)
-
At most one of these can be specified:
--clear-actions- Clear actions value and set to empty list.
--remove-actions=[actionId=ACTIONID],[curationConfig=CURATIONCONFIG],[scheduleCronExpression=SCHEDULECRONEXPRESSION],[scheduleTimeZone=SCHEDULETIMEZONE],[serviceAccount=SERVICEACCOUNT]-
Remove existing value from actions list. The action status for the plugin
instance.
actionId- This should map to one of the [action id][google.cloud.apihub.v1.PluginActionConfig.id] specified in [actions_config][google.cloud.apihub.v1.Plugin.actions_config] in the plugin.
curationConfig-
This configuration should be provided if the plugin action is publishing data to
API hub curate layer.
curationType- The curation type for this plugin instance.
customCuration-
Custom curation information for this plugin instance.
curation-
The unique name of the curation resource. This will be the name of the curation
resource in the format:
projects/{project}/locations/{location}/curations/{curation}.
scheduleCronExpression- The schedule for this plugin instance action. This can only be set if the plugin supports API_HUB_SCHEDULE_TRIGGER mode for this action.
scheduleTimeZone- The time zone for the schedule cron expression. If not provided, UTC will be used.
serviceAccount- The service account used to publish data. Note, the service account will only be accepted for non-Google Cloud plugins like OPDK.
Shorthand Example:--remove-actions=actionId=string,curationConfig={curationType=string,customCuration={curation=string}},scheduleCronExpression=string,scheduleTimeZone=string,serviceAccount=string --remove-actions=actionId=string,curationConfig={curationType=string,customCuration={curation=string}},scheduleCronExpression=string,scheduleTimeZone=string,serviceAccount=string
JSON Example:--remove-actions='[{"actionId": "string", "curationConfig": {"curationType": "string", "customCuration": {"curation": "string"}}, "scheduleCronExpression": "string", "scheduleTimeZone": "string", "serviceAccount": "string"}]'
File Example:--remove-actions=path_to_file.(yaml|json)
-
Update additional_config.
At most one of these can be specified:
--additional-config=[ADDITIONAL_CONFIG,…]-
Set additional_config to new value. The additional information for this plugin
instance corresponding to the additional config template of the plugin. This
information will be sent to plugin hosting service on each call to plugin hosted
service. The key will be the config_variable_template.display_name to uniquely
identify the config variable.
KEY-
Sets
KEYvalue. VALUE-
Sets
VALUEvalue.boolValue- The config variable value in case of config variable of type boolean.
enumValue-
The config variable value in case of config variable of type enum.
description- Description of the option.
displayName- Display name of the option.
id- Id of the option.
intValue- The config variable value in case of config variable of type integer.
multiIntValues-
The config variable value in case of config variable of type multi integer.
values- The config variable value of data type multi int.
multiSelectValues-
The config variable value in case of config variable of type multi select.
values-
The config variable value of data type multi select.
description- Description of the option.
displayName- Display name of the option.
id- Id of the option.
multiStringValues-
The config variable value in case of config variable of type multi string.
values- The config variable value of data type multi string.
secretValue-
The config variable value in case of config variable of type secret.
secretVersion-
The resource name of the secret version in the format, format as:
projects/*/secrets/*/versions/*.
stringValue- The config variable value in case of config variable of type string.
Shorthand Example:--additional-config=string={boolValue=boolean,enumValue={description=string,displayName=string,id=string},intValue=int,multiIntValues={values=[int]},multiSelectValues={values=[{description=string,displayName=string,id=string}]},multiStringValues={values=[string]},secretValue={secretVersion=string},stringValue=string}
JSON Example:--additional-config='{"string": {"boolValue": boolean, "enumValue": {"description": "string", "displayName": "string", "id": "string"}, "intValue": int, "multiIntValues": {"values": [int]}, "multiSelectValues": {"values": [{"description": "string", "displayName": "string", "id": "string"}]}, "multiStringValues": {"values": ["string"]}, "secretValue": {"secretVersion": "string"}, "stringValue": "string"}}'
File Example:--additional-config=path_to_file.(yaml|json)
-
Or at least one of these can be specified:
--update-additional-config=[UPDATE_ADDITIONAL_CONFIG,…]-
Update additional_config value or add key value pair. The additional information
for this plugin instance corresponding to the additional config template of the
plugin. This information will be sent to plugin hosting service on each call to
plugin hosted service. The key will be the config_variable_template.display_name
to uniquely identify the config variable.
KEY-
Sets
KEYvalue. VALUE-
Sets
VALUEvalue.boolValue- The config variable value in case of config variable of type boolean.
enumValue-
The config variable value in case of config variable of type enum.
description- Description of the option.
displayName- Display name of the option.
id- Id of the option.
intValue- The config variable value in case of config variable of type integer.
multiIntValues-
The config variable value in case of config variable of type multi integer.
values- The config variable value of data type multi int.
multiSelectValues-
The config variable value in case of config variable of type multi select.
values-
The config variable value of data type multi select.
description- Description of the option.
displayName- Display name of the option.
id- Id of the option.
multiStringValues-
The config variable value in case of config variable of type multi string.
values- The config variable value of data type multi string.
secretValue-
The config variable value in case of config variable of type secret.
secretVersion-
The resource name of the secret version in the format, format as:
projects/*/secrets/*/versions/*.
stringValue- The config variable value in case of config variable of type string.
Shorthand Example:--update-additional-config=string={boolValue=boolean,enumValue={description=string,displayName=string,id=string},intValue=int,multiIntValues={values=[int]},multiSelectValues={values=[{description=string,displayName=string,id=string}]},multiStringValues={values=[string]},secretValue={secretVersion=string},stringValue=string}
JSON Example:--update-additional-config='{"string": {"boolValue": boolean, "enumValue": {"description": "string", "displayName": "string", "id": "string"}, "intValue": int, "multiIntValues": {"values": [int]}, "multiSelectValues": {"values": [{"description": "string", "displayName": "string", "id": "string"}]}, "multiStringValues": {"values": ["string"]}, "secretValue": {"secretVersion": "string"}, "stringValue": "string"}}'
File Example:--update-additional-config=path_to_file.(yaml|json)
-
At most one of these can be specified:
--clear-additional-config- Clear additional_config value and set to empty map.
--remove-additional-config=REMOVE_ADDITIONAL_CONFIG-
Remove existing value from map additional_config. Sets
remove_additional_configvalue.Shorthand Example:--remove-additional-config=string,stringJSON Example:--remove-additional-config=["string"]
File Example:--remove-additional-config=path_to_file.(yaml|json)
- AuthConfig represents the authentication information.
--auth-config-type=AUTH_CONFIG_TYPE-
The authentication type.
AUTH_CONFIG_TYPEmust be one of:api-key- API Key authentication.
google-service-account- Google service account authentication.
no-auth- No authentication.
oauth2-client-credentials- Oauth 2.0 client credentials grant authentication.
user-password- Username and password authentication.
--clear-auth-config- Set googleCloudApihubV1PluginInstance.authConfig back to default value.
-
Arguments for the config.
At most one of these can be specified:
- Config for authentication with API key.
--api-key-config-http-element-location=API_KEY_CONFIG_HTTP_ELEMENT_LOCATION-
The location of the API key. The default value is QUERY.
API_KEY_CONFIG_HTTP_ELEMENT_LOCATIONmust be one of:body- Element is in the HTTP request body.
- Element is in the HTTP request cookie.
header- Element is in the HTTP request header.
path- Element is in the HTTP request path.
query- Element is in the HTTP request query.
--api-key-config-name=API_KEY_CONFIG_NAME- The parameter name of the API key. E.g. If the API request is "https://example.com/act?api_key=<API KEY>", "api_key" would be the parameter name.
- Secret provides a reference to entries in Secret Manager.
--api-key-config-secret-version=API_KEY_CONFIG_SECRET_VERSION-
The resource name of the secret version in the format, format as:
projects/*/secrets/*/versions/*. - Parameters to support Oauth 2.0 client credentials grant authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details.
--oauth2-client-credentials-config-id=OAUTH2_CLIENT_CREDENTIALS_CONFIG_ID- The client identifier.
- Secret provides a reference to entries in Secret Manager.
--oauth2-client-credentials-config-secret-version=OAUTH2_CLIENT_CREDENTIALS_CONFIG_SECRET_VERSION-
The resource name of the secret version in the format, format as:
projects/*/secrets/*/versions/*. - Parameters to support Username and Password Authentication.
- Secret provides a reference to entries in Secret Manager.
--user-password-config-secret-version=USER_PASSWORD_CONFIG_SECRET_VERSION-
The resource name of the secret version in the format, format as:
projects/*/secrets/*/versions/*. --user-password-config-username=USER_PASSWORD_CONFIG_USERNAME- Username.
-
Update source_environments_config.
At most one of these can be specified:
--source-environments-config=[SOURCE_ENVIRONMENTS_CONFIG,…]-
Set source_environments_config to new value. The source environment's config
present in the gateway instance linked to the plugin instance. The key is the
source_environmentname from the SourceEnvironment message.KEY-
Sets
KEYvalue. VALUE-
Sets
VALUEvalue.createTime- The time at which the environment was created at the source.
sourceEnvironment- The name of the environment at the source. This should map to [Deployment][google.cloud.apihub.v1.SourceEnvironment.source_environment].
sourceEnvironmentUri- The location where additional information about source environments can be found. The location should be relative path of the environment manifest with respect to a plugin instance.
updateTime- The time at which the environment was last updated at the source.
Shorthand Example:--source-environments-config=string={createTime=string,sourceEnvironment=string,sourceEnvironmentUri=string,updateTime=string}
JSON Example:--source-environments-config='{"string": {"createTime": "string", "sourceEnvironment": "string", "sourceEnvironmentUri": "string", "updateTime": "string"}}'
File Example:--source-environments-config=path_to_file.(yaml|json)
-
Or at least one of these can be specified:
--update-source-environments-config=[UPDATE_SOURCE_ENVIRONMENTS_CONFIG,…]-
Update source_environments_config value or add key value pair. The source
environment's config present in the gateway instance linked to the plugin
instance. The key is the
source_environmentname from the SourceEnvironment message.KEY-
Sets
KEYvalue. VALUE-
Sets
VALUEvalue.createTime- The time at which the environment was created at the source.
sourceEnvironment- The name of the environment at the source. This should map to [Deployment][google.cloud.apihub.v1.SourceEnvironment.source_environment].
sourceEnvironmentUri- The location where additional information about source environments can be found. The location should be relative path of the environment manifest with respect to a plugin instance.
updateTime- The time at which the environment was last updated at the source.
Shorthand Example:--update-source-environments-config=string={createTime=string,sourceEnvironment=string,sourceEnvironmentUri=string,updateTime=string}
JSON Example:--update-source-environments-config='{"string": {"createTime": "string", "sourceEnvironment": "string", "sourceEnvironmentUri": "string", "updateTime": "string"}}'
File Example:--update-source-environments-config=path_to_file.(yaml|json)
-
At most one of these can be specified:
--clear-source-environments-config- Clear source_environments_config value and set to empty map.
--remove-source-environments-config=REMOVE_SOURCE_ENVIRONMENTS_CONFIG-
Remove existing value from map source_environments_config. Sets
remove_source_environments_configvalue.Shorthand Example:--remove-source-environments-config=string,stringJSON Example:--remove-source-environments-config=["string"]
File Example:--remove-source-environments-config=path_to_file.(yaml|json)
- GCLOUD WIDE FLAGS
-
These flags are available to all commands:
--access-token-file,--account,--billing-project,--configuration,--flags-file,--flatten,--format,--help,--impersonate-service-account,--log-http,--project,--quiet,--trace-token,--user-output-enabled,--verbosity.Run
$ gcloud helpfor details. - API REFERENCE
-
This command uses the
apihub/v1API. The full documentation for this API can be found at: https://cloud.google.com/apigee/docs/api-hub/what-is-api-hub - NOTES
-
This command is currently in alpha and might change without notice. If this
command fails with API permission errors despite specifying the correct project,
you might be trying to access an API with an invitation-only early access
allowlist. This variant is also available:
gcloud apihub plugins instances update
gcloud alpha apihub plugins instances update
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-02-24 UTC.