The returned connection object should not be used directly; instead it should be passed as an argument to the constructor ofIAMPolicyClient.
The optionaloptionsargument may be used to configure aspects of the returnedIAMPolicyConnection. 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 Google Cloud C++ client library's IAM (Identity and Access Management) v1 API, specifically for versions ranging from 2.11.0 up to the latest release candidate, 2.37.0-rc.\u003c/p\u003e\n"],["\u003cp\u003eThe primary focus of the documentation is on the \u003ccode\u003eIAMPolicyClient\u003c/code\u003e and \u003ccode\u003eIAMPolicyConnection\u003c/code\u003e classes, detailing their functionalities and usage within the C++ library.\u003c/p\u003e\n"],["\u003cp\u003eIt covers various classes and structs related to retry policies and connection configurations, such as \u003ccode\u003eIAMPolicyLimitedErrorCountRetryPolicy\u003c/code\u003e, \u003ccode\u003eIAMPolicyLimitedTimeRetryPolicy\u003c/code\u003e, and \u003ccode\u003eIAMPolicyBackoffPolicyOption\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe webpage provides a \u003ccode\u003eMakeIAMPolicyConnection\u003c/code\u003e factory function that can be used to construct an \u003ccode\u003eIAMPolicyConnection\u003c/code\u003e object with customizable options for various configurations and functionalities.\u003c/p\u003e\n"],["\u003cp\u003eThere is also a function, \u003ccode\u003eMakeDefaultIAMPolicyConnectionIdempotencyPolicy()\u003c/code\u003e, that is detailed, however the description is empty, other than it returning an \u003ccode\u003eIAMPolicyConnectionIdempotencyPolicy\u003c/code\u003e object.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::iam_v1 (2.28.0)\n\nVersion 2.28.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/iam/latest/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.41.0](/cpp/docs/reference/iam/2.41.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.40.0](/cpp/docs/reference/iam/2.40.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.39.0](/cpp/docs/reference/iam/2.39.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.38.0](/cpp/docs/reference/iam/2.38.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.37.0](/cpp/docs/reference/iam/2.37.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.36.0](/cpp/docs/reference/iam/2.36.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.35.0](/cpp/docs/reference/iam/2.35.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.34.0](/cpp/docs/reference/iam/2.34.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.33.0](/cpp/docs/reference/iam/2.33.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.32.0](/cpp/docs/reference/iam/2.32.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.31.0](/cpp/docs/reference/iam/2.31.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.30.0](/cpp/docs/reference/iam/2.30.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.29.0](/cpp/docs/reference/iam/2.29.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.28.0](/cpp/docs/reference/iam/2.28.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.27.0](/cpp/docs/reference/iam/2.27.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.26.0](/cpp/docs/reference/iam/2.26.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.25.1](/cpp/docs/reference/iam/2.25.1/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.24.0](/cpp/docs/reference/iam/2.24.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.23.0](/cpp/docs/reference/iam/2.23.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.22.1](/cpp/docs/reference/iam/2.22.1/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.21.0](/cpp/docs/reference/iam/2.21.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.20.0](/cpp/docs/reference/iam/2.20.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.19.0](/cpp/docs/reference/iam/2.19.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.18.0](/cpp/docs/reference/iam/2.18.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.17.0](/cpp/docs/reference/iam/2.17.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.16.0](/cpp/docs/reference/iam/2.16.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.15.1](/cpp/docs/reference/iam/2.15.1/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.14.0](/cpp/docs/reference/iam/2.14.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.13.0](/cpp/docs/reference/iam/2.13.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.12.0](/cpp/docs/reference/iam/2.12.0/namespacegoogle_1_1cloud_1_1iam__v1)\n- [2.11.0](/cpp/docs/reference/iam/2.11.0/namespacegoogle_1_1cloud_1_1iam__v1) \n\nClasses\n-------\n\n### [IAMPolicyClient](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyClient)\n\nAPI Overview.\n\n### [IAMPolicyConnection](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnection)\n\nThe [`IAMPolicyConnection`](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnection) object for [`IAMPolicyClient`](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyClient).\n\n### [IAMPolicyConnectionIdempotencyPolicy](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnectionIdempotencyPolicy)\n\n### [IAMPolicyLimitedErrorCountRetryPolicy](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyLimitedErrorCountRetryPolicy)\n\nA retry policy for [`IAMPolicyConnection`](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnection) based on counting errors.\n\n### [IAMPolicyLimitedTimeRetryPolicy](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyLimitedTimeRetryPolicy)\n\nA retry policy for [`IAMPolicyConnection`](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnection) based on elapsed time.\n\n### [IAMPolicyRetryPolicy](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyRetryPolicy)\n\nThe retry policy for [`IAMPolicyConnection`](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnection).\n\nStructs\n-------\n\n### [IAMPolicyBackoffPolicyOption](/cpp/docs/reference/iam/2.28.0/structgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyBackoffPolicyOption)\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### [IAMPolicyConnectionIdempotencyPolicyOption](/cpp/docs/reference/iam/2.28.0/structgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnectionIdempotencyPolicyOption)\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### [IAMPolicyRetryPolicyOption](/cpp/docs/reference/iam/2.28.0/structgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyRetryPolicyOption)\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### MakeIAMPolicyConnection(Options)\n\nA factory function to construct an object of type [`IAMPolicyConnection`](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnection). \nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [IAMPolicyClient](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`IAMPolicyConnection`](/cpp/docs/reference/iam/2.28.0/classgoogle_1_1cloud_1_1iam__v1_1_1IAMPolicyConnection). 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_v1::IAMPolicyPolicyOptionList`](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### MakeDefaultIAMPolicyConnectionIdempotencyPolicy()"]]