A connection to the Cloud Spanner instance administration service.
This interface defines pure-virtual methods for each of the user-facing overload sets in InstanceAdminClient. This allows users to inject custom behavior (e.g., with a Google Mock object) in a InstanceAdminClient object for use in their own tests.
To create a concrete instance that connects you to a real Cloud Spanner instance administration service, see MakeInstanceAdminConnection().
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[[["\u003cp\u003eThis document details the \u003ccode\u003eInstanceAdminConnection\u003c/code\u003e class, which provides an interface for managing Cloud Spanner instance administration.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of the class is \u003ccode\u003e2.37.0-rc\u003c/code\u003e, with multiple older versions available for reference, ranging down to \u003ccode\u003e2.11.0\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eInstanceAdminConnection\u003c/code\u003e interface is deprecated, and the \u003ccode\u003egoogle::cloud::spanner_admin::InstanceAdminClient\u003c/code\u003e and \u003ccode\u003egoogle::cloud::spanner_admin::InstanceAdminConnection\u003c/code\u003e are recommended instead.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eInstanceAdminConnection\u003c/code\u003e class has pure-virtual methods for operations like getting, creating, updating, and deleting instances, as well as managing instance configurations, and it allows users to inject custom behavior for testing purposes.\u003c/p\u003e\n"],["\u003cp\u003eThe document also covers functions for getting and setting IAM policies, and testing permissions related to a Cloud Spanner instance, as well as making a concrete connection using the \u003ccode\u003eMakeInstanceAdminConnection()\u003c/code\u003e function.\u003c/p\u003e\n"]]],[],null,["# Class InstanceAdminConnection (2.42.0-rc)\n\nVersion latestkeyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/spanner/latest/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.41.0](/cpp/docs/reference/spanner/2.41.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.40.0](/cpp/docs/reference/spanner/2.40.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.39.0](/cpp/docs/reference/spanner/2.39.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.38.0](/cpp/docs/reference/spanner/2.38.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.37.0](/cpp/docs/reference/spanner/2.37.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.36.0](/cpp/docs/reference/spanner/2.36.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.35.0](/cpp/docs/reference/spanner/2.35.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.34.0](/cpp/docs/reference/spanner/2.34.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.33.0](/cpp/docs/reference/spanner/2.33.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.32.0](/cpp/docs/reference/spanner/2.32.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.31.0](/cpp/docs/reference/spanner/2.31.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.30.0](/cpp/docs/reference/spanner/2.30.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.29.0](/cpp/docs/reference/spanner/2.29.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.28.0](/cpp/docs/reference/spanner/2.28.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.27.0](/cpp/docs/reference/spanner/2.27.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.26.0](/cpp/docs/reference/spanner/2.26.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.25.1](/cpp/docs/reference/spanner/2.25.1/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.24.0](/cpp/docs/reference/spanner/2.24.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.23.0](/cpp/docs/reference/spanner/2.23.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.22.1](/cpp/docs/reference/spanner/2.22.1/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.21.0](/cpp/docs/reference/spanner/2.21.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.20.0](/cpp/docs/reference/spanner/2.20.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.19.0](/cpp/docs/reference/spanner/2.19.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.18.0](/cpp/docs/reference/spanner/2.18.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.17.0](/cpp/docs/reference/spanner/2.17.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.16.0](/cpp/docs/reference/spanner/2.16.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.15.1](/cpp/docs/reference/spanner/2.15.1/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.14.0](/cpp/docs/reference/spanner/2.14.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.13.0](/cpp/docs/reference/spanner/2.13.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.12.0](/cpp/docs/reference/spanner/2.12.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection)\n- [2.11.0](/cpp/docs/reference/spanner/2.11.0/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminConnection) \nA connection to the Cloud Spanner instance administration service. \n| **Deprecated:** Please use [`google::cloud::spanner_admin::InstanceAdminClient`](/cpp/docs/reference/spanner/latest/classgoogle_1_1cloud_1_1spanner__admin_1_1InstanceAdminClient) and [`google::cloud::spanner_admin::InstanceAdminConnection`](/cpp/docs/reference/spanner/latest/classgoogle_1_1cloud_1_1spanner__admin_1_1InstanceAdminConnection) instead.\n\nThis interface defines pure-virtual methods for each of the user-facing overload sets in [`InstanceAdminClient`](/cpp/docs/reference/spanner/latest/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminClient). This allows users to inject custom behavior (e.g., with a Google Mock object) in a [`InstanceAdminClient`](/cpp/docs/reference/spanner/latest/classgoogle_1_1cloud_1_1spanner_1_1InstanceAdminClient) object for use in their own tests.\n\nTo create a concrete instance that connects you to a real Cloud Spanner instance administration service, see [`MakeInstanceAdminConnection()`](/cpp/docs/reference/spanner/latest/namespacegoogle_1_1cloud_1_1spanner).\n\nFunctions\n---------\n\n### virtual options()\n\n### GetInstance(GetInstanceParams)\n\nReturn the metadata for the given instance.\n\n### CreateInstance(CreateInstanceParams)\n\n### UpdateInstance(UpdateInstanceParams)\n\n### DeleteInstance(DeleteInstanceParams)\n\n### GetInstanceConfig(GetInstanceConfigParams)\n\nReturn the InstanceConfig with the given name.\n\n### ListInstanceConfigs(ListInstanceConfigsParams)\n\nReturns a one-pass input range with all the instance configs.\n\n### ListInstances(ListInstancesParams)\n\nReturns a one-pass input range with all the instances meeting the requirements in `params`.\n\n### GetIamPolicy(GetIamPolicyParams)\n\nDefine the interface for a google.spanner.v1.DatabaseAdmin.GetIamPolicy RPC.\n\n### SetIamPolicy(SetIamPolicyParams)\n\nDefine the interface for a google.spanner.v1.DatabaseAdmin.SetIamPolicy RPC.\n\n### TestIamPermissions(TestIamPermissionsParams)\n\nDefine the interface for a google.spanner.v1.DatabaseAdmin.TestIamPermissions RPC."]]