The default endpoint is the global endpoint: "pubsub.googleapis.com".
In some cases, you may need to point the client and a regional or locational endpoint, typically designated by some prefix applied to the service name (e.g. "europe-central2-pubsub.googleapis.com". This can be accomplished by using theMakePublisherConnectionoverload which accepts alocationparameter.
In rare cases, you may need to override the global endpoint used by the client library. This typically occurs in testing or Private Google Access cases. Use thegoogle::cloud::EndpointOptionwhen initializing the client library to change this default. For example, this will override the default endpoint forgoogle::cloud::pubsub::Publisher:
namespace pubsub = ::google::cloud::pubsub;
using ::google::cloud::Options;
[](std::string const& project_id, std::string const& topic_id) {
// This service supports specifying a regional or locational endpoint prefix
// when creating the SubscriptionAdminConnection.
// For example, to connect to "europe-central2-pubsub.googleapis.com":
auto pub = pubsub::Publisher(pubsub::MakePublisherConnection(
"europe-central2", pubsub::Topic(project_id, topic_id)));
// This configuration is common with Private Google Access:
// https://cloud.google.com/vpc/docs/private-google-access
auto vpc_pub = pubsub::Publisher(pubsub::MakePublisherConnection(
pubsub::Topic(project_id, topic_id),
Options{}.set<google::cloud::EndpointOption>(
"private.googleapis.com")));
}
Follow these links to find examples for other*Clientclasses:
[[["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\u003eThe latest version available is 2.37.0-rc, with a range of previous versions accessible, down to 2.11.0.\u003c/p\u003e\n"],["\u003cp\u003eThe webpage provides documentation and examples for various \u003ccode\u003e*Client\u003c/code\u003e classes, including \u003ccode\u003eSubscriber\u003c/code\u003e, \u003ccode\u003eBlockingPublisher\u003c/code\u003e, \u003ccode\u003eTopicAdminClient\u003c/code\u003e, \u003ccode\u003eSubscriptionAdminClient\u003c/code\u003e, \u003ccode\u003eSchemaServiceClient\u003c/code\u003e, and \u003ccode\u003ePublisher\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eYou can override the default endpoint used by the client library by using the \u003ccode\u003egoogle::cloud::EndpointOption\u003c/code\u003e when initializing, as demonstrated for \u003ccode\u003egoogle::cloud::pubsub::Publisher\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eEach version listed in the documentation has a link to its respective \u003ccode\u003epubsub-endpoint-example\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["Version latestkeyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/pubsub/latest/pubsub-endpoint-example)\n- [2.41.0](/cpp/docs/reference/pubsub/2.41.0/pubsub-endpoint-example)\n- [2.40.0](/cpp/docs/reference/pubsub/2.40.0/pubsub-endpoint-example)\n- [2.39.0](/cpp/docs/reference/pubsub/2.39.0/pubsub-endpoint-example)\n- [2.38.0](/cpp/docs/reference/pubsub/2.38.0/pubsub-endpoint-example)\n- [2.37.0](/cpp/docs/reference/pubsub/2.37.0/pubsub-endpoint-example)\n- [2.36.0](/cpp/docs/reference/pubsub/2.36.0/pubsub-endpoint-example)\n- [2.35.0](/cpp/docs/reference/pubsub/2.35.0/pubsub-endpoint-example)\n- [2.34.0](/cpp/docs/reference/pubsub/2.34.0/pubsub-endpoint-example)\n- [2.33.0](/cpp/docs/reference/pubsub/2.33.0/pubsub-endpoint-example)\n- [2.32.0](/cpp/docs/reference/pubsub/2.32.0/pubsub-endpoint-example)\n- [2.31.0](/cpp/docs/reference/pubsub/2.31.0/pubsub-endpoint-example)\n- [2.30.0](/cpp/docs/reference/pubsub/2.30.0/pubsub-endpoint-example)\n- [2.29.0](/cpp/docs/reference/pubsub/2.29.0/pubsub-endpoint-example)\n- [2.28.0](/cpp/docs/reference/pubsub/2.28.0/pubsub-endpoint-example)\n- [2.27.0](/cpp/docs/reference/pubsub/2.27.0/pubsub-endpoint-example)\n- [2.26.0](/cpp/docs/reference/pubsub/2.26.0/pubsub-endpoint-example)\n- [2.25.1](/cpp/docs/reference/pubsub/2.25.1/pubsub-endpoint-example)\n- [2.24.0](/cpp/docs/reference/pubsub/2.24.0/pubsub-endpoint-example)\n- [2.23.0](/cpp/docs/reference/pubsub/2.23.0/pubsub-endpoint-example)\n- [2.22.1](/cpp/docs/reference/pubsub/2.22.1/pubsub-endpoint-example)\n- [2.21.0](/cpp/docs/reference/pubsub/2.21.0/pubsub-endpoint-example)\n- [2.20.0](/cpp/docs/reference/pubsub/2.20.0/pubsub-endpoint-example)\n- [2.19.0](/cpp/docs/reference/pubsub/2.19.0/pubsub-endpoint-example)\n- [2.18.0](/cpp/docs/reference/pubsub/2.18.0/pubsub-endpoint-example)\n- [2.17.0](/cpp/docs/reference/pubsub/2.17.0/pubsub-endpoint-example)\n- [2.16.0](/cpp/docs/reference/pubsub/2.16.0/pubsub-endpoint-example)\n- [2.15.1](/cpp/docs/reference/pubsub/2.15.1/pubsub-endpoint-example)\n- [2.14.0](/cpp/docs/reference/pubsub/2.14.0/pubsub-endpoint-example)\n- [2.13.0](/cpp/docs/reference/pubsub/2.13.0/pubsub-endpoint-example)\n- [2.12.0](/cpp/docs/reference/pubsub/2.12.0/pubsub-endpoint-example)\n- [2.11.0](/cpp/docs/reference/pubsub/2.11.0/pubsub-endpoint-example) \n\nOverride the default endpoint\n=============================\n\nThe default endpoint is the global endpoint: \"pubsub.googleapis.com\".\n\nIn some cases, you may need to point the client and a regional or locational endpoint, typically designated by some prefix applied to the service name (e.g. \"europe-central2-pubsub.googleapis.com\". This can be accomplished by using the `MakePublisherConnection` overload which accepts a `location` parameter.\n\nIn rare cases, you may need to override the global endpoint used by the client library. This typically occurs in testing or Private Google Access cases. Use the [`google::cloud::EndpointOption`](https://cloud.google.com/cpp/docs/reference/common/latest/structgoogle_1_1cloud_1_1EndpointOption.html) when initializing the client library to change this default. For example, this will override the default endpoint for [`google::cloud::pubsub::Publisher`](/cpp/docs/reference/pubsub/latest/classgoogle_1_1cloud_1_1pubsub_1_1Publisher): \n\n namespace pubsub = ::google::cloud::pubsub;\n using ::google::cloud::Options;\n [](std::string const& project_id, std::string const& topic_id) {\n // This service supports specifying a regional or locational endpoint prefix\n // when creating the SubscriptionAdminConnection.\n // For example, to connect to \"europe-central2-pubsub.googleapis.com\":\n auto pub = pubsub::Publisher(pubsub::MakePublisherConnection(\n \"europe-central2\", pubsub::Topic(project_id, topic_id)));\n\n // This configuration is common with Private Google Access:\n // https://cloud.google.com/vpc/docs/private-google-access\n auto vpc_pub = pubsub::Publisher(pubsub::MakePublisherConnection(\n pubsub::Topic(project_id, topic_id),\n Options{}.set\u003cgoogle::cloud::EndpointOption\u003e(\n \"private.googleapis.com\")));\n }\n\nFollow these links to find examples for other `*Client` classes:\n\n- [`Subscriber`](/cpp/docs/reference/pubsub/latest/Subscriber-endpoint-snippet)\n- [`BlockingPublisher`](/cpp/docs/reference/pubsub/latest/BlockingPublisher-endpoint-snippet)\n- [`TopicAdminClient`](/cpp/docs/reference/pubsub/latest/TopicAdminClient-endpoint-snippet)\n- [`SubscriptionAdminClient`](/cpp/docs/reference/pubsub/latest/SubscriptionAdminClient-endpoint-snippet)\n- [`SchemaServiceClient`](/cpp/docs/reference/pubsub/latest/SchemaServiceClient-endpoint-snippet)\n- [`Publisher`](/cpp/docs/reference/pubsub/latest/Publisher-endpoint-snippet)"]]