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 related to Identity and Access Management (IAM), specifically the \u003ccode\u003eiam_admin_v1\u003c/code\u003e namespace.\u003c/p\u003e\n"],["\u003cp\u003eThe latest release candidate version is 2.37.0-rc, and the page lists multiple past versions down to 2.11.0 for the \u003ccode\u003eiam_admin_v1\u003c/code\u003e C++ client library, with a current context of version 2.31.0.\u003c/p\u003e\n"],["\u003cp\u003eKey classes include \u003ccode\u003eIAMClient\u003c/code\u003e for managing IAM resources, and \u003ccode\u003eIAMConnection\u003c/code\u003e which is the object of the \u003ccode\u003eIAMClient\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eSeveral retry and backoff policies are available, including \u003ccode\u003eIAMLimitedErrorCountRetryPolicy\u003c/code\u003e, \u003ccode\u003eIAMLimitedTimeRetryPolicy\u003c/code\u003e, and \u003ccode\u003eIAMRetryPolicy\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMakeIAMConnection\u003c/code\u003e function constructs an \u003ccode\u003eIAMConnection\u003c/code\u003e object and \u003ccode\u003eMakeDefaultIAMConnectionIdempotencyPolicy\u003c/code\u003e produces an \u003ccode\u003eIAMConnectionIdempotencyPolicy\u003c/code\u003e object, both of which can be configured with different \u003ccode\u003eOptions\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::iam_admin_v1 (2.31.0)\n\nVersion 2.31.0keyboard_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.31.0/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.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection)\n\nThe [`IAMConnection`](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) object for [`IAMClient`](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMClient).\n\n### [IAMConnectionIdempotencyPolicy](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnectionIdempotencyPolicy)\n\n### [IAMLimitedErrorCountRetryPolicy](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMLimitedErrorCountRetryPolicy)\n\nA retry policy for [`IAMConnection`](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) based on counting errors.\n\n### [IAMLimitedTimeRetryPolicy](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMLimitedTimeRetryPolicy)\n\nA retry policy for [`IAMConnection`](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) based on elapsed time.\n\n### [IAMRetryPolicy](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMRetryPolicy)\n\nThe retry policy for [`IAMConnection`](/cpp/docs/reference/iam/2.31.0/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection).\n\nStructs\n-------\n\n### [IAMBackoffPolicyOption](/cpp/docs/reference/iam/2.31.0/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.31.0/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.31.0/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.31.0/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.31.0/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.31.0/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`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::GrpcOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::UnifiedCredentialsOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::iam_admin_v1::IAMPolicyOptionList`](about:invalid#zCSafez)\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()"]]