The Pub/Sub client library uses the same mechanism as all other C++ client libraries for configuration. As usual for the C++ client libraries, it adds a number of unique options only applicable for the Pub/Sub library.
[[["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 details the configuration options for the C++ Pub/Sub client library, including version-specific references and the latest release candidate.\u003c/p\u003e\n"],["\u003cp\u003eThe library uses a standardized configuration mechanism common to all C++ client libraries, while also providing Pub/Sub-specific options.\u003c/p\u003e\n"],["\u003cp\u003eIt contains a list of classes related to various Pub/Sub configuration aspects, such as retry policies, batching, message ordering, and compression.\u003c/p\u003e\n"],["\u003cp\u003eThe most recent release of this documentation is version 2.37.0-rc, and there are additional listed version going back to version 2.11.0.\u003c/p\u003e\n"],["\u003cp\u003eThe page also contains a list of configuration options related to managing deadlines, outstanding messages, concurrency, and polling periods.\u003c/p\u003e\n"]]],[],null,["# Pub/Sub Client Library Configuration Options (2.20.0)\n\nVersion 2.20.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/pubsub/latest/group__pubsub-options)\n- [2.41.0](/cpp/docs/reference/pubsub/2.41.0/group__pubsub-options)\n- [2.40.0](/cpp/docs/reference/pubsub/2.40.0/group__pubsub-options)\n- [2.39.0](/cpp/docs/reference/pubsub/2.39.0/group__pubsub-options)\n- [2.38.0](/cpp/docs/reference/pubsub/2.38.0/group__pubsub-options)\n- [2.37.0](/cpp/docs/reference/pubsub/2.37.0/group__pubsub-options)\n- [2.36.0](/cpp/docs/reference/pubsub/2.36.0/group__pubsub-options)\n- [2.35.0](/cpp/docs/reference/pubsub/2.35.0/group__pubsub-options)\n- [2.34.0](/cpp/docs/reference/pubsub/2.34.0/group__pubsub-options)\n- [2.33.0](/cpp/docs/reference/pubsub/2.33.0/group__pubsub-options)\n- [2.32.0](/cpp/docs/reference/pubsub/2.32.0/group__pubsub-options)\n- [2.31.0](/cpp/docs/reference/pubsub/2.31.0/group__pubsub-options)\n- [2.30.0](/cpp/docs/reference/pubsub/2.30.0/group__pubsub-options)\n- [2.29.0](/cpp/docs/reference/pubsub/2.29.0/group__pubsub-options)\n- [2.28.0](/cpp/docs/reference/pubsub/2.28.0/group__pubsub-options)\n- [2.27.0](/cpp/docs/reference/pubsub/2.27.0/group__pubsub-options)\n- [2.26.0](/cpp/docs/reference/pubsub/2.26.0/group__pubsub-options)\n- [2.25.1](/cpp/docs/reference/pubsub/2.25.1/group__pubsub-options)\n- [2.24.0](/cpp/docs/reference/pubsub/2.24.0/group__pubsub-options)\n- [2.23.0](/cpp/docs/reference/pubsub/2.23.0/group__pubsub-options)\n- [2.22.1](/cpp/docs/reference/pubsub/2.22.1/group__pubsub-options)\n- [2.21.0](/cpp/docs/reference/pubsub/2.21.0/group__pubsub-options)\n- [2.20.0](/cpp/docs/reference/pubsub/2.20.0/group__pubsub-options)\n- [2.19.0](/cpp/docs/reference/pubsub/2.19.0/group__pubsub-options)\n- [2.18.0](/cpp/docs/reference/pubsub/2.18.0/group__pubsub-options)\n- [2.17.0](/cpp/docs/reference/pubsub/2.17.0/group__pubsub-options)\n- [2.16.0](/cpp/docs/reference/pubsub/2.16.0/group__pubsub-options)\n- [2.15.1](/cpp/docs/reference/pubsub/2.15.1/group__pubsub-options)\n- [2.14.0](/cpp/docs/reference/pubsub/2.14.0/group__pubsub-options)\n- [2.13.0](/cpp/docs/reference/pubsub/2.13.0/group__pubsub-options)\n- [2.12.0](/cpp/docs/reference/pubsub/2.12.0/group__pubsub-options)\n- [2.11.0](/cpp/docs/reference/pubsub/2.11.0/group__pubsub-options) \n\nPub/Sub Client Library Configuration Options\n============================================\n\nThe Pub/Sub client library uses the same mechanism as all other C++ client libraries for configuration. As usual for the C++ client libraries, it adds a number of unique options only applicable for the Pub/Sub library.\n\n###### See Also\n\n[Client Library Configuration](https://cloud.google.com/cpp/docs/reference/common/latest/group__options.html) - for an overview of client library configuration.\n\n### Classes\n\n- [`google::cloud::pubsub::RetryPolicyOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1RetryPolicyOption)\n- [`google::cloud::pubsub::BackoffPolicyOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1BackoffPolicyOption)\n- [`google::cloud::pubsub::MaxHoldTimeOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxHoldTimeOption)\n- [`google::cloud::pubsub::MaxBatchMessagesOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxBatchMessagesOption)\n- [`google::cloud::pubsub::MaxBatchBytesOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxBatchBytesOption)\n- [`google::cloud::pubsub::MaxPendingMessagesOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxPendingMessagesOption)\n- [`google::cloud::pubsub::MaxPendingBytesOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxPendingBytesOption)\n- [`google::cloud::pubsub::MessageOrderingOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MessageOrderingOption)\n- [`google::cloud::pubsub::FullPublisherActionOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1FullPublisherActionOption)\n- [`google::cloud::pubsub::CompressionThresholdOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1CompressionThresholdOption)\n- [`google::cloud::pubsub::CompressionAlgorithmOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1CompressionAlgorithmOption)\n- [`google::cloud::pubsub::MaxOtelLinkCountOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxOtelLinkCountOption)\n- [`google::cloud::pubsub::MaxDeadlineTimeOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxDeadlineTimeOption)\n- [`google::cloud::pubsub::MaxDeadlineExtensionOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxDeadlineExtensionOption)\n- [`google::cloud::pubsub::MinDeadlineExtensionOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MinDeadlineExtensionOption)\n- [`google::cloud::pubsub::MaxOutstandingMessagesOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxOutstandingMessagesOption)\n- [`google::cloud::pubsub::MaxOutstandingBytesOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxOutstandingBytesOption)\n- [`google::cloud::pubsub::MaxConcurrencyOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1MaxConcurrencyOption)\n- [`google::cloud::pubsub::ShutdownPollingPeriodOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1ShutdownPollingPeriodOption)\n- [`google::cloud::pubsub::SubscriptionOption`](/cpp/docs/reference/pubsub/2.20.0/structgoogle_1_1cloud_1_1pubsub_1_1SubscriptionOption)\n\n### Functions\n\n- [`IAMPolicyOptions(Options)`](/cpp/docs/reference/pubsub/2.20.0/namespacegoogle_1_1cloud_1_1pubsub)\n\n### Types\n\n- [`SubscriberOptionList`](/cpp/docs/reference/pubsub/2.20.0/namespacegoogle_1_1cloud_1_1pubsub)"]]