The returned connection object should not be used directly; instead it should be passed as an argument to the constructor ofCloudShellServiceClient.
The optionaloptionsargument may be used to configure aspects of the returnedCloudShellServiceConnection. 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 document provides comprehensive reference information for the Google Cloud Shell C++ client library, detailing multiple versions from 2.11.0 to the latest release candidate 2.37.0-rc.\u003c/p\u003e\n"],["\u003cp\u003eThe document outlines various classes, including \u003ccode\u003eCloudShellServiceClient\u003c/code\u003e and \u003ccode\u003eCloudShellServiceConnection\u003c/code\u003e, that facilitate interactions with the Google Cloud Shell service.\u003c/p\u003e\n"],["\u003cp\u003eThe content describes different types of policies like retry, backoff, idempotency, and polling policies that can be used to configure the \u003ccode\u003eCloudShellServiceConnection\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe document also details the \u003ccode\u003eMakeCloudShellServiceConnection\u003c/code\u003e function, which is a factory for creating \u003ccode\u003eCloudShellServiceConnection\u003c/code\u003e objects and explains how to configure them using different options.\u003c/p\u003e\n"],["\u003cp\u003eThere is a function available to make the default \u003ccode\u003eCloudShellServiceConnectionIdempotencyPolicy\u003c/code\u003e, which is documented in this content.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::shell_v1 (2.34.0)\n\nVersion 2.34.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/shell/latest/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.41.0](/cpp/docs/reference/shell/2.41.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.40.0](/cpp/docs/reference/shell/2.40.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.39.0](/cpp/docs/reference/shell/2.39.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.38.0](/cpp/docs/reference/shell/2.38.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.37.0](/cpp/docs/reference/shell/2.37.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.36.0](/cpp/docs/reference/shell/2.36.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.35.0](/cpp/docs/reference/shell/2.35.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.34.0](/cpp/docs/reference/shell/2.34.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.33.0](/cpp/docs/reference/shell/2.33.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.32.0](/cpp/docs/reference/shell/2.32.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.31.0](/cpp/docs/reference/shell/2.31.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.30.0](/cpp/docs/reference/shell/2.30.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.29.0](/cpp/docs/reference/shell/2.29.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.28.0](/cpp/docs/reference/shell/2.28.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.27.0](/cpp/docs/reference/shell/2.27.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.26.0](/cpp/docs/reference/shell/2.26.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.25.1](/cpp/docs/reference/shell/2.25.1/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.24.0](/cpp/docs/reference/shell/2.24.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.23.0](/cpp/docs/reference/shell/2.23.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.22.1](/cpp/docs/reference/shell/2.22.1/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.21.0](/cpp/docs/reference/shell/2.21.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.20.0](/cpp/docs/reference/shell/2.20.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.19.0](/cpp/docs/reference/shell/2.19.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.18.0](/cpp/docs/reference/shell/2.18.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.17.0](/cpp/docs/reference/shell/2.17.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.16.0](/cpp/docs/reference/shell/2.16.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.15.1](/cpp/docs/reference/shell/2.15.1/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.14.0](/cpp/docs/reference/shell/2.14.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.13.0](/cpp/docs/reference/shell/2.13.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.12.0](/cpp/docs/reference/shell/2.12.0/namespacegoogle_1_1cloud_1_1shell__v1)\n- [2.11.0](/cpp/docs/reference/shell/2.11.0/namespacegoogle_1_1cloud_1_1shell__v1) \n\nClasses\n-------\n\n### [CloudShellServiceClient](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceClient)\n\nAPI for interacting with Google Cloud Shell.\n\n### [CloudShellServiceConnection](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnection)\n\nThe [`CloudShellServiceConnection`](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnection) object for [`CloudShellServiceClient`](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceClient).\n\n### [CloudShellServiceConnectionIdempotencyPolicy](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnectionIdempotencyPolicy)\n\n### [CloudShellServiceLimitedErrorCountRetryPolicy](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceLimitedErrorCountRetryPolicy)\n\nA retry policy for [`CloudShellServiceConnection`](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnection) based on counting errors.\n\n### [CloudShellServiceLimitedTimeRetryPolicy](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceLimitedTimeRetryPolicy)\n\nA retry policy for [`CloudShellServiceConnection`](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnection) based on elapsed time.\n\n### [CloudShellServiceRetryPolicy](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceRetryPolicy)\n\nThe retry policy for [`CloudShellServiceConnection`](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnection).\n\nStructs\n-------\n\n### [CloudShellServiceBackoffPolicyOption](/cpp/docs/reference/shell/2.34.0/structgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceBackoffPolicyOption)\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### [CloudShellServiceConnectionIdempotencyPolicyOption](/cpp/docs/reference/shell/2.34.0/structgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnectionIdempotencyPolicyOption)\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### [CloudShellServicePollingPolicyOption](/cpp/docs/reference/shell/2.34.0/structgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServicePollingPolicyOption)\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### [CloudShellServiceRetryPolicyOption](/cpp/docs/reference/shell/2.34.0/structgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceRetryPolicyOption)\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### MakeCloudShellServiceConnection(Options)\n\nA factory function to construct an object of type [`CloudShellServiceConnection`](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnection). \nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [CloudShellServiceClient](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`CloudShellServiceConnection`](/cpp/docs/reference/shell/2.34.0/classgoogle_1_1cloud_1_1shell__v1_1_1CloudShellServiceConnection). 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::shell_v1::CloudShellServicePolicyOptionList`](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### MakeDefaultCloudShellServiceConnectionIdempotencyPolicy()"]]