A factory function to construct an object of type BackendServicesConnection that uses REST over HTTP as transport in lieu of gRPC.
REST transport should only be used for services that do not support gRPC or if the existing network configuration precludes using gRPC.
The returned connection object should not be used directly; instead it should be passed as an argument to the constructor of BackendServicesClient.
The optional options argument may be used to configure aspects of the returned BackendServicesConnection. 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"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[[["\u003cp\u003eThis webpage provides documentation for Google Cloud Compute Backend Services in C++, offering versions ranging from 2.15.1 to 2.37.0-rc, with 2.37.0-rc being the latest version.\u003c/p\u003e\n"],["\u003cp\u003eThe content details various classes including \u003ccode\u003eBackendServicesClient\u003c/code\u003e, \u003ccode\u003eBackendServicesConnection\u003c/code\u003e, and several related policy classes for managing retries, errors, and idempotency.\u003c/p\u003e\n"],["\u003cp\u003eThe documentation outlines available structs like \u003ccode\u003eBackendServicesBackoffPolicyOption\u003c/code\u003e and \u003ccode\u003eBackendServicesRetryPolicyOption\u003c/code\u003e, which are used to configure the behavior of the backend services.\u003c/p\u003e\n"],["\u003cp\u003eIt includes a function, \u003ccode\u003eMakeBackendServicesConnectionRest\u003c/code\u003e, that creates a \u003ccode\u003eBackendServicesConnection\u003c/code\u003e object, using REST over HTTP as an alternative to gRPC, with customizable options, and it should be used in the construction of \u003ccode\u003eBackendServicesClient\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe webpage defines \u003ccode\u003eBackendServicesPolicyOptionList\u003c/code\u003e, a type alias combining various policy options for fine-tuning backend services behavior, such as retry and backoff policies.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::compute_backend_services_v1 (2.18.0)\n\nVersion 2.18.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/compute/latest/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.41.0](/cpp/docs/reference/compute/2.41.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.40.0](/cpp/docs/reference/compute/2.40.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.39.0](/cpp/docs/reference/compute/2.39.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.38.0](/cpp/docs/reference/compute/2.38.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.37.0](/cpp/docs/reference/compute/2.37.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.36.0](/cpp/docs/reference/compute/2.36.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.35.0](/cpp/docs/reference/compute/2.35.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.34.0](/cpp/docs/reference/compute/2.34.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.33.0](/cpp/docs/reference/compute/2.33.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.32.0](/cpp/docs/reference/compute/2.32.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.31.0](/cpp/docs/reference/compute/2.31.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.30.0](/cpp/docs/reference/compute/2.30.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.29.0](/cpp/docs/reference/compute/2.29.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.28.0](/cpp/docs/reference/compute/2.28.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.27.0](/cpp/docs/reference/compute/2.27.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.26.0](/cpp/docs/reference/compute/2.26.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.25.1](/cpp/docs/reference/compute/2.25.1/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.24.0](/cpp/docs/reference/compute/2.24.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.23.0](/cpp/docs/reference/compute/2.23.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.22.1](/cpp/docs/reference/compute/2.22.1/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.21.0](/cpp/docs/reference/compute/2.21.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.20.0](/cpp/docs/reference/compute/2.20.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.19.0](/cpp/docs/reference/compute/2.19.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.18.0](/cpp/docs/reference/compute/2.18.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.17.0](/cpp/docs/reference/compute/2.17.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.16.0](/cpp/docs/reference/compute/2.16.0/namespacegoogle_1_1cloud_1_1compute__backend__services__v1)\n- [2.15.1](/cpp/docs/reference/compute/2.15.1/namespacegoogle_1_1cloud_1_1compute__backend__services__v1) \n\nClasses\n-------\n\n### [BackendServicesClient](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesClient)\n\nService for the backendServices resource.\n\n### [BackendServicesConnection](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnection)\n\nThe [`BackendServicesConnection`](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnection) object for [`BackendServicesClient`](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesClient).\n\n### [BackendServicesConnectionIdempotencyPolicy](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnectionIdempotencyPolicy)\n\n### [BackendServicesLimitedErrorCountRetryPolicy](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesLimitedErrorCountRetryPolicy)\n\nA retry policy for [`BackendServicesConnection`](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnection) based on counting errors.\n\n### [BackendServicesLimitedTimeRetryPolicy](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesLimitedTimeRetryPolicy)\n\nA retry policy for [`BackendServicesConnection`](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnection) based on elapsed time.\n\n### [BackendServicesRetryPolicy](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesRetryPolicy)\n\nThe retry policy for [`BackendServicesConnection`](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnection).\n\nStructs\n-------\n\n### [BackendServicesBackoffPolicyOption](/cpp/docs/reference/compute/2.18.0/structgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesBackoffPolicyOption)\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### [BackendServicesConnectionIdempotencyPolicyOption](/cpp/docs/reference/compute/2.18.0/structgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnectionIdempotencyPolicyOption)\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### [BackendServicesPollingPolicyOption](/cpp/docs/reference/compute/2.18.0/structgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesPollingPolicyOption)\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### [BackendServicesRetryPolicyOption](/cpp/docs/reference/compute/2.18.0/structgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesRetryPolicyOption)\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### MakeDefaultBackendServicesConnectionIdempotencyPolicy()\n\n### MakeBackendServicesConnectionRest(Options)\n\nA factory function to construct an object of type [`BackendServicesConnection`](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnection) that uses REST over HTTP as transport in lieu of gRPC. \nREST transport should only be used for services that do not support gRPC or if the existing network configuration precludes using gRPC.\n\nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [BackendServicesClient](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`BackendServicesConnection`](/cpp/docs/reference/compute/2.18.0/classgoogle_1_1cloud_1_1compute__backend__services__v1_1_1BackendServicesConnection). 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::RestOptionList`](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::compute_backend_services_v1::BackendServicesPolicyOptionList`](/cpp/docs/reference/compute/2.18.0/namespacegoogle_1_1cloud_1_1compute__backend__services__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\nType Aliases\n------------\n\n### BackendServicesPolicyOptionList\n\n**Alias Of** : `OptionList\u003c BackendServicesRetryPolicyOption, BackendServicesBackoffPolicyOption, BackendServicesPollingPolicyOption, BackendServicesConnectionIdempotencyPolicyOption \u003e` \nThe options applicable to BackendServices."]]