Method: projects.instanceConfigs.create

Creates an instance configuration and begins preparing it to be used. The returned long-running operation can be used to track the progress of preparing the new instance configuration. The instance configuration name is assigned by the caller. If the named instance configuration already exists,instanceConfigs.create returnsALREADY_EXISTS.

Immediately after the request returns:

  • The instance configuration is readable via the API, with all requested attributes. The instance configuration'sreconciling field is set to true. Its state isCREATING.

While the operation is pending:

  • Cancelling the operation renders the instance configuration immediately unreadable via the API.
  • Except for deleting the creating resource, all other attempts to modify the instance configuration are rejected.

Upon completion of the returned operation:

  • Instances can be created using the instance configuration.
  • The instance configuration'sreconciling field becomes false. Its state becomesREADY.

The returned long-running operation will have a name of the format<instance_config_name>/operations/<operationId> and can be used to track creation of the instance configuration. The metadata field type isCreateInstanceConfigMetadata. The response field type isInstanceConfig, if successful.

Authorization requiresspanner.instanceConfigs.create permission on the resourceparent.

HTTP request


POST https://spanner.googleapis.com/v1/{parent=projects/*}/instanceConfigs

The URLs usegRPC Transcoding syntax.

Path parameters

Parameters
parent

string

Required. The name of the project in which to create the instance configuration. Values are of the formprojects/<project>.

Authorization requires the followingIAM permission on the specified resourceparent:

  • spanner.instanceConfigs.create

Request body

The request body contains data with the following structure:

JSON representation
{"instanceConfigId":string,"instanceConfig":{object (InstanceConfig)},"validateOnly":boolean}
Fields
instanceConfigId

string

Required. The ID of the instance configuration to create. Valid identifiers are of the formcustom-[-a-z0-9]*[a-z0-9] and must be between 2 and 64 characters in length. Thecustom- prefix is required to avoid name conflicts with Google-managed configurations.

instanceConfig

object (InstanceConfig)

Required. TheInstanceConfig proto of the configuration to create.instanceConfig.name must be<parent>/instanceConfigs/<instanceConfigId>.instanceConfig.base_config must be a Google-managed configuration name, e.g./instanceConfigs/us-east1,/instanceConfigs/nam3.

validateOnly

boolean

An option to validate, but not actually execute, a request, and provide the same response.

Response body

If successful, the response body contains a newly created instance ofOperation.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/spanner.admin
  • https://www.googleapis.com/auth/cloud-platform

For more information, see theAuthentication Overview.

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 2025-12-12 UTC.