In some cases, you may need to override the default endpoint used by the client library. Use theEndpointOptionwhen initializing the client library to change this default.
For example, this will override the default endpoint fordatastore_admin_v1::DatastoreAdminClient:
// This configuration is common with Private Google Access:
// https://cloud.google.com/vpc/docs/private-google-access
auto options = google::cloud::Options{}.set<google::cloud::EndpointOption>(
"private.googleapis.com");
auto client = google::cloud::datastore_admin_v1::DatastoreAdminClient(
google::cloud::datastore_admin_v1::MakeDatastoreAdminConnection(options));
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\u003eThis document provides a guide on how to override the default endpoint for the client library using the \u003ccode\u003eEndpointOption\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version available is 2.37.0-rc, and there are numerous other version specific pages listed, from 2.36.0 down to 2.15.1, all referencing the \u003ccode\u003edatastore-override-endpoint\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eOverriding the default endpoint is useful in cases such as setting up Private Google Access, as shown in the example.\u003c/p\u003e\n"],["\u003cp\u003eExamples for overriding the default endpoint are available for both \u003ccode\u003edatastore_admin_v1::DatastoreAdminClient\u003c/code\u003e and \u003ccode\u003edatastore_v1::DatastoreClient\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["Version 2.34.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/datastore/latest/datastore-override-endpoint)\n- [2.41.0](/cpp/docs/reference/datastore/2.41.0/datastore-override-endpoint)\n- [2.40.0](/cpp/docs/reference/datastore/2.40.0/datastore-override-endpoint)\n- [2.39.0](/cpp/docs/reference/datastore/2.39.0/datastore-override-endpoint)\n- [2.38.0](/cpp/docs/reference/datastore/2.38.0/datastore-override-endpoint)\n- [2.37.0](/cpp/docs/reference/datastore/2.37.0/datastore-override-endpoint)\n- [2.36.0](/cpp/docs/reference/datastore/2.36.0/datastore-override-endpoint)\n- [2.35.0](/cpp/docs/reference/datastore/2.35.0/datastore-override-endpoint)\n- [2.34.0](/cpp/docs/reference/datastore/2.34.0/datastore-override-endpoint)\n- [2.33.0](/cpp/docs/reference/datastore/2.33.0/datastore-override-endpoint)\n- [2.32.0](/cpp/docs/reference/datastore/2.32.0/datastore-override-endpoint)\n- [2.31.0](/cpp/docs/reference/datastore/2.31.0/datastore-override-endpoint)\n- [2.30.0](/cpp/docs/reference/datastore/2.30.0/datastore-override-endpoint)\n- [2.29.0](/cpp/docs/reference/datastore/2.29.0/datastore-override-endpoint)\n- [2.28.0](/cpp/docs/reference/datastore/2.28.0/datastore-override-endpoint)\n- [2.27.0](/cpp/docs/reference/datastore/2.27.0/datastore-override-endpoint)\n- [2.26.0](/cpp/docs/reference/datastore/2.26.0/datastore-override-endpoint)\n- [2.25.1](/cpp/docs/reference/datastore/2.25.1/datastore-override-endpoint)\n- [2.24.0](/cpp/docs/reference/datastore/2.24.0/datastore-override-endpoint)\n- [2.23.0](/cpp/docs/reference/datastore/2.23.0/datastore-override-endpoint)\n- [2.22.1](/cpp/docs/reference/datastore/2.22.1/datastore-override-endpoint)\n- [2.21.0](/cpp/docs/reference/datastore/2.21.0/datastore-override-endpoint)\n- [2.20.0](/cpp/docs/reference/datastore/2.20.0/datastore-override-endpoint)\n- [2.19.0](/cpp/docs/reference/datastore/2.19.0/datastore-override-endpoint)\n- [2.18.0](/cpp/docs/reference/datastore/2.18.0/datastore-override-endpoint)\n- [2.17.0](/cpp/docs/reference/datastore/2.17.0/datastore-override-endpoint)\n- [2.16.0](/cpp/docs/reference/datastore/2.16.0/datastore-override-endpoint)\n- [2.15.1](/cpp/docs/reference/datastore/2.15.1/datastore-override-endpoint) \n\nHow to Override the Default Endpoint\n====================================\n\nIn some cases, you may need to override the default endpoint used by the client library. Use the [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.\n\nFor example, this will override the default endpoint for `datastore_admin_v1::DatastoreAdminClient`: \n\n // This configuration is common with Private Google Access:\n // https://cloud.google.com/vpc/docs/private-google-access\n auto options = google::cloud::Options{}.set\u003cgoogle::cloud::EndpointOption\u003e(\n \"private.googleapis.com\");\n auto client = google::cloud::datastore_admin_v1::DatastoreAdminClient(\n google::cloud::datastore_admin_v1::MakeDatastoreAdminConnection(options));\n\nFollow these links to find examples for other `*Client` classes:\n\n- [`datastore_admin_v1::DatastoreAdminClient`](/cpp/docs/reference/datastore/2.34.0/datastore_admin_v1_1_1DatastoreAdminClient-endpoint-snippet)\n- [`datastore_v1::DatastoreClient`](/cpp/docs/reference/datastore/2.34.0/datastore_v1_1_1DatastoreClient-endpoint-snippet)"]]