A factory function to construct an object of typeIDSConnection.
The returned connection object should not be used directly; instead it should be passed as an argument to the constructor ofIDSClient.
The optionaloptionsargument may be used to configure aspects of the returnedIDSConnection. 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 page provides documentation for the Google Cloud IDS C++ client library, with the latest stable version being 2.20.0 and a release candidate 2.37.0-rc.\u003c/p\u003e\n"],["\u003cp\u003eThe available versions of the library range from 2.11.0 up to the latest release candidate, with each version having its own dedicated documentation page.\u003c/p\u003e\n"],["\u003cp\u003eThe library offers classes such as \u003ccode\u003eIDSClient\u003c/code\u003e and \u003ccode\u003eIDSConnection\u003c/code\u003e for interacting with the IDS service, along with retry and idempotency policies for robust error handling.\u003c/p\u003e\n"],["\u003cp\u003eThe library also provides options like \u003ccode\u003eIDSPolicyOptionList\u003c/code\u003e, \u003ccode\u003eIDSRetryPolicyOption\u003c/code\u003e, \u003ccode\u003eIDSBackoffPolicyOption\u003c/code\u003e, \u003ccode\u003eIDSPollingPolicyOption\u003c/code\u003e, and \u003ccode\u003eIDSConnectionIdempotencyPolicyOption\u003c/code\u003e that can be used to customize the behavior of the IDS connection.\u003c/p\u003e\n"],["\u003cp\u003eThe MakeIDSConnection function creates a \u003ccode\u003eIDSConnection\u003c/code\u003e object that is then used to construct a \u003ccode\u003eIDSClient\u003c/code\u003e, and can take an options argument to define how the connection should operate.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::ids_v1 (2.20.0)\n\nVersion 2.20.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/ids/latest/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.41.0](/cpp/docs/reference/ids/2.41.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.40.0](/cpp/docs/reference/ids/2.40.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.39.0](/cpp/docs/reference/ids/2.39.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.38.0](/cpp/docs/reference/ids/2.38.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.37.0](/cpp/docs/reference/ids/2.37.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.36.0](/cpp/docs/reference/ids/2.36.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.35.0](/cpp/docs/reference/ids/2.35.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.34.0](/cpp/docs/reference/ids/2.34.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.33.0](/cpp/docs/reference/ids/2.33.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.32.0](/cpp/docs/reference/ids/2.32.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.31.0](/cpp/docs/reference/ids/2.31.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.30.0](/cpp/docs/reference/ids/2.30.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.29.0](/cpp/docs/reference/ids/2.29.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.28.0](/cpp/docs/reference/ids/2.28.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.27.0](/cpp/docs/reference/ids/2.27.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.26.0](/cpp/docs/reference/ids/2.26.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.25.1](/cpp/docs/reference/ids/2.25.1/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.24.0](/cpp/docs/reference/ids/2.24.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.23.0](/cpp/docs/reference/ids/2.23.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.22.1](/cpp/docs/reference/ids/2.22.1/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.21.0](/cpp/docs/reference/ids/2.21.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.20.0](/cpp/docs/reference/ids/2.20.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.19.0](/cpp/docs/reference/ids/2.19.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.18.0](/cpp/docs/reference/ids/2.18.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.17.0](/cpp/docs/reference/ids/2.17.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.16.0](/cpp/docs/reference/ids/2.16.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.15.1](/cpp/docs/reference/ids/2.15.1/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.14.0](/cpp/docs/reference/ids/2.14.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.13.0](/cpp/docs/reference/ids/2.13.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.12.0](/cpp/docs/reference/ids/2.12.0/namespacegoogle_1_1cloud_1_1ids__v1)\n- [2.11.0](/cpp/docs/reference/ids/2.11.0/namespacegoogle_1_1cloud_1_1ids__v1) \n\nClasses\n-------\n\n### [IDSClient](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSClient)\n\nThe IDS Service.\n\n### [IDSConnection](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnection)\n\nThe [`IDSConnection`](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnection) object for [`IDSClient`](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSClient).\n\n### [IDSConnectionIdempotencyPolicy](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnectionIdempotencyPolicy)\n\n### [IDSLimitedErrorCountRetryPolicy](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSLimitedErrorCountRetryPolicy)\n\nA retry policy for [`IDSConnection`](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnection) based on counting errors.\n\n### [IDSLimitedTimeRetryPolicy](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSLimitedTimeRetryPolicy)\n\nA retry policy for [`IDSConnection`](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnection) based on elapsed time.\n\n### [IDSRetryPolicy](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSRetryPolicy)\n\nThe retry policy for [`IDSConnection`](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnection).\n\nStructs\n-------\n\n### [IDSBackoffPolicyOption](/cpp/docs/reference/ids/2.20.0/structgoogle_1_1cloud_1_1ids__v1_1_1IDSBackoffPolicyOption)\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### [IDSConnectionIdempotencyPolicyOption](/cpp/docs/reference/ids/2.20.0/structgoogle_1_1cloud_1_1ids__v1_1_1IDSConnectionIdempotencyPolicyOption)\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### [IDSPollingPolicyOption](/cpp/docs/reference/ids/2.20.0/structgoogle_1_1cloud_1_1ids__v1_1_1IDSPollingPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the long-running operations polling policy.\n\n### [IDSRetryPolicyOption](/cpp/docs/reference/ids/2.20.0/structgoogle_1_1cloud_1_1ids__v1_1_1IDSRetryPolicyOption)\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### MakeIDSConnection(Options)\n\nA factory function to construct an object of type [`IDSConnection`](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnection). \nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [IDSClient](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`IDSConnection`](/cpp/docs/reference/ids/2.20.0/classgoogle_1_1cloud_1_1ids__v1_1_1IDSConnection). 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::ids_v1::IDSPolicyOptionList`](/cpp/docs/reference/ids/2.20.0/namespacegoogle_1_1cloud_1_1ids__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### MakeDefaultIDSConnectionIdempotencyPolicy()\n\nType Aliases\n------------\n\n### IDSPolicyOptionList\n\n**Alias Of** : `OptionList\u003c IDSRetryPolicyOption, IDSBackoffPolicyOption, IDSPollingPolicyOption, IDSConnectionIdempotencyPolicyOption \u003e` \nThe options applicable to IDS."]]