A factory function to construct an object of typeIAMConnection.
The returned connection object should not be used directly; instead it should be passed as an argument to the constructor ofIAMClient.
The optionaloptionsargument may be used to configure aspects of the returnedIAMConnection. Expected options are any of the types in the following option lists:
[[["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-09-04 UTC."],[[["\u003cp\u003eThis webpage provides documentation for the C++ client library for Google Cloud IAM, with the latest release candidate being version 2.37.0-rc and the current version being 2.22.1.\u003c/p\u003e\n"],["\u003cp\u003eThe page lists multiple versions of the IAM client library, ranging from version 2.37.0-rc down to 2.11.0, with links to each version's documentation.\u003c/p\u003e\n"],["\u003cp\u003eKey classes detailed on the page include \u003ccode\u003eIAMClient\u003c/code\u003e, which manages IAM resources, and \u003ccode\u003eIAMConnection\u003c/code\u003e, which provides connectivity for \u003ccode\u003eIAMClient\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe documentation also covers retry policies like \u003ccode\u003eIAMLimitedErrorCountRetryPolicy\u003c/code\u003e and \u003ccode\u003eIAMLimitedTimeRetryPolicy\u003c/code\u003e, as well as structs and functions for configuring retry and backoff policies.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMakeIAMConnection\u003c/code\u003e function is detailed, which is used as a factory to construct the IAMConnection object, and its usage in the context of the \u003ccode\u003eIAMClient\u003c/code\u003e class.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::iam_admin_v1 (2.22.1)\n\nVersion 2.22.1keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/iam/latest/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.41.0](/cpp/docs/reference/iam/2.41.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.40.0](/cpp/docs/reference/iam/2.40.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.39.0](/cpp/docs/reference/iam/2.39.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.38.0](/cpp/docs/reference/iam/2.38.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.37.0](/cpp/docs/reference/iam/2.37.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.36.0](/cpp/docs/reference/iam/2.36.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.35.0](/cpp/docs/reference/iam/2.35.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.34.0](/cpp/docs/reference/iam/2.34.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.33.0](/cpp/docs/reference/iam/2.33.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.32.0](/cpp/docs/reference/iam/2.32.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.31.0](/cpp/docs/reference/iam/2.31.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.30.0](/cpp/docs/reference/iam/2.30.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.29.0](/cpp/docs/reference/iam/2.29.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.28.0](/cpp/docs/reference/iam/2.28.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.27.0](/cpp/docs/reference/iam/2.27.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.26.0](/cpp/docs/reference/iam/2.26.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.25.1](/cpp/docs/reference/iam/2.25.1/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.24.0](/cpp/docs/reference/iam/2.24.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.23.0](/cpp/docs/reference/iam/2.23.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.22.1](/cpp/docs/reference/iam/2.22.1/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.21.0](/cpp/docs/reference/iam/2.21.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.20.0](/cpp/docs/reference/iam/2.20.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.19.0](/cpp/docs/reference/iam/2.19.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.18.0](/cpp/docs/reference/iam/2.18.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.17.0](/cpp/docs/reference/iam/2.17.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.16.0](/cpp/docs/reference/iam/2.16.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.15.1](/cpp/docs/reference/iam/2.15.1/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.14.0](/cpp/docs/reference/iam/2.14.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.13.0](/cpp/docs/reference/iam/2.13.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.12.0](/cpp/docs/reference/iam/2.12.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.11.0](/cpp/docs/reference/iam/2.11.0/namespacegoogle_1_1cloud_1_1iam__admin__v1) \n\nClasses\n-------\n\n### [IAMClient](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMClient)\n\nCreates and manages Identity and Access Management (IAM) resources.\n\n### [IAMConnection](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection)\n\nThe [`IAMConnection`](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) object for [`IAMClient`](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMClient).\n\n### [IAMConnectionIdempotencyPolicy](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnectionIdempotencyPolicy)\n\n### [IAMLimitedErrorCountRetryPolicy](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMLimitedErrorCountRetryPolicy)\n\nA retry policy for [`IAMConnection`](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) based on counting errors.\n\n### [IAMLimitedTimeRetryPolicy](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMLimitedTimeRetryPolicy)\n\nA retry policy for [`IAMConnection`](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) based on elapsed time.\n\n### [IAMRetryPolicy](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMRetryPolicy)\n\nThe retry policy for [`IAMConnection`](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection).\n\nStructs\n-------\n\n### [IAMBackoffPolicyOption](/cpp/docs/reference/iam/2.22.1/structgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMBackoffPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the backoff policy.\n\n### [IAMConnectionIdempotencyPolicyOption](/cpp/docs/reference/iam/2.22.1/structgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnectionIdempotencyPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure which operations are retried.\n\n### [IAMRetryPolicyOption](/cpp/docs/reference/iam/2.22.1/structgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMRetryPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the retry policy.\n\nFunctions\n---------\n\n### MakeIAMConnection(Options)\n\nA factory function to construct an object of type [`IAMConnection`](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection). \nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [IAMClient](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`IAMConnection`](/cpp/docs/reference/iam/2.22.1/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection). Expected options are any of the types in the following option lists:\n\n- [`google::cloud::CommonOptionList`](about:invalid#zCSafez)\n- [`google::cloud::GrpcOptionList`](about:invalid#zCSafez)\n- [`google::cloud::UnifiedCredentialsOptionList`](about:invalid#zCSafez)\n- [`google::cloud::iam_admin_v1::IAMPolicyOptionList`](/cpp/docs/reference/iam/2.22.1/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n\n| **Note:** Unexpected options will be ignored. To log unexpected options instead, set `GOOGLE_CLOUD_CPP_ENABLE_CLOG=yes` in the environment.\n\n### MakeDefaultIAMConnectionIdempotencyPolicy()\n\nType Aliases\n------------\n\n### IAMPolicyOptionList\n\n**Alias Of** : `OptionList\u003c IAMRetryPolicyOption, IAMBackoffPolicyOption, IAMConnectionIdempotencyPolicyOption \u003e` \nThe options applicable to IAM."]]