diff --git a/generation_config.yaml b/generation_config.yaml
index 38eee766d72a..7d52fc168bcc 100644
--- a/generation_config.yaml
+++ b/generation_config.yaml
@@ -1352,6 +1352,24 @@ libraries:
- proto_path: google/maps/solar/v1
requires_billing: true
rpc_documentation: https://developers.google.com/maps/documentation/solar/reference/rest
+- api_shortname: marketingplatformadminapi
+ name_pretty: Google Marketing Platform Admin API
+ product_documentation: https://developers.google.com/analytics/devguides/config/gmp/v1
+ api_description: The Google Marketing Platform Admin API allows for programmatic
+ access to the Google Marketing Platform configuration data. You can use the Google
+ Marketing Platform Admin API to manage links between your Google Marketing Platform
+ organization and Google Analytics accounts, and to set the service level of your
+ GA4 properties.
+ client_documentation: https://cloud.google.com/java/docs/reference/admin/latest/overview
+ release_level: preview
+ distribution_name: com.google.ads-marketingplatform:admin
+ api_id: marketingplatformadminapi.googleapis.com
+ library_type: GAPIC_AUTO
+ group_id: com.google.ads-marketingplatform
+ cloud_api: false
+ GAPICs:
+ - proto_path: google/marketingplatform/admin/v1alpha
+ requires_billing: true
- api_shortname: mediatranslation
name_pretty: Media Translation API
product_documentation: https://cloud.google.com/
diff --git a/java-marketingplatformadminapi/.OwlBot-hermetic.yaml b/java-marketingplatformadminapi/.OwlBot-hermetic.yaml
new file mode 100644
index 000000000000..d07fb81d9208
--- /dev/null
+++ b/java-marketingplatformadminapi/.OwlBot-hermetic.yaml
@@ -0,0 +1,35 @@
+# Copyright 2024 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+deep-remove-regex:
+- "/java-marketingplatformadminapi/grpc-google-.*/src"
+- "/java-marketingplatformadminapi/proto-google-.*/src"
+- "/java-marketingplatformadminapi/google-.*/src"
+- "/java-marketingplatformadminapi/samples/snippets/generated"
+
+deep-preserve-regex:
+- "/java-marketingplatformadminapi/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java"
+
+deep-copy-regex:
+- source: "/google/marketingplatform/admin/(v.*)/.*-java/proto-google-.*/src"
+ dest: "/owl-bot-staging/java-marketingplatformadminapi/$1/proto-admin-$1/src"
+- source: "/google/marketingplatform/admin/(v.*)/.*-java/grpc-google-.*/src"
+ dest: "/owl-bot-staging/java-marketingplatformadminapi/$1/grpc-admin-$1/src"
+- source: "/google/marketingplatform/admin/(v.*)/.*-java/gapic-google-.*/src"
+ dest: "/owl-bot-staging/java-marketingplatformadminapi/$1/admin/src"
+- source: "/google/marketingplatform/admin/(v.*)/.*-java/samples/snippets/generated"
+ dest: "/owl-bot-staging/java-marketingplatformadminapi/$1/samples/snippets/generated"
+
+api-name: marketingplatformadminapi
\ No newline at end of file
diff --git a/java-marketingplatformadminapi/.repo-metadata.json b/java-marketingplatformadminapi/.repo-metadata.json
new file mode 100644
index 000000000000..209429fca0ad
--- /dev/null
+++ b/java-marketingplatformadminapi/.repo-metadata.json
@@ -0,0 +1,16 @@
+{
+ "api_shortname": "marketingplatformadminapi",
+ "name_pretty": "Google Marketing Platform Admin API",
+ "product_documentation": "https://developers.google.com/analytics/devguides/config/gmp/v1",
+ "api_description": "The Google Marketing Platform Admin API allows for programmatic access to the Google Marketing Platform configuration data. You can use the Google Marketing Platform Admin API to manage links between your Google Marketing Platform organization and Google Analytics accounts, and to set the service level of your GA4 properties.",
+ "client_documentation": "https://cloud.google.com/java/docs/reference/admin/latest/overview",
+ "release_level": "preview",
+ "transport": "both",
+ "language": "java",
+ "repo": "googleapis/google-cloud-java",
+ "repo_short": "java-marketingplatformadminapi",
+ "distribution_name": "com.google.ads-marketingplatform:admin",
+ "api_id": "marketingplatformadminapi.googleapis.com",
+ "library_type": "GAPIC_AUTO",
+ "requires_billing": true
+}
\ No newline at end of file
diff --git a/java-marketingplatformadminapi/README.md b/java-marketingplatformadminapi/README.md
new file mode 100644
index 000000000000..f0c13d5b8217
--- /dev/null
+++ b/java-marketingplatformadminapi/README.md
@@ -0,0 +1,226 @@
+# Google Google Marketing Platform Admin API Client for Java
+
+Java idiomatic client for [Google Marketing Platform Admin API][product-docs].
+
+[![Maven][maven-version-image]][maven-version-link]
+![Stability][stability-image]
+
+- [Product Documentation][product-docs]
+- [Client Library Documentation][javadocs]
+
+> Note: This client is a work-in-progress, and may occasionally
+> make backwards-incompatible changes.
+
+
+## Quickstart
+
+
+If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file:
+
+```xml
+
This class provides the ability to make remote calls to the backing service through method + * calls that map to API methods. Sample code to get started: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * OrganizationName name = OrganizationName.of("[ORGANIZATION]");
+ * Organization response = marketingplatformAdminServiceClient.getOrganization(name);
+ * }
+ * }
+ *
+ * Note: close() needs to be called on the MarketingplatformAdminServiceClient object to clean up + * resources such as threads. In the example above, try-with-resources is used, which automatically + * calls close(). + * + *
| Method | + *Description | + *Method Variants | + *
|---|---|---|
GetOrganization |
+ * Lookup for a single organization. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
ListAnalyticsAccountLinks |
+ * Lists the Google Analytics accounts link to the specified Google Marketing Platform organization. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
CreateAnalyticsAccountLink |
+ * Creates the link between the Analytics account and the Google Marketing Platform organization. + * User needs to be an org user, and admin on the Analytics account to create the link. If the account is already linked to an organization, user needs to unlink the account from the current organization, then try link again. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
DeleteAnalyticsAccountLink |
+ * Deletes the AnalyticsAccountLink, which detaches the Analytics account from the Google Marketing Platform organization. + * User needs to be an org user, and admin on the Analytics account in order to delete the link. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
SetPropertyServiceLevel |
+ * Updates the service level for an Analytics property. |
+ *
+ * Request object method variants only take one parameter, a request object, which must be constructed before the call. + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method. + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service. + *
|
+ *
See the individual methods for example code. + * + *
Many parameters require resource names to be formatted in a particular way. To assist with + * these names, this class includes a format method for each type of name, and additionally a parse + * method to extract the individual identifiers contained within names that are returned. + * + *
This class can be customized by passing in a custom instance of + * MarketingplatformAdminServiceSettings to create(). For example: + * + *
To customize credentials: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * MarketingplatformAdminServiceSettings marketingplatformAdminServiceSettings =
+ * MarketingplatformAdminServiceSettings.newBuilder()
+ * .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
+ * .build();
+ * MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create(marketingplatformAdminServiceSettings);
+ * }
+ *
+ * To customize the endpoint: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * MarketingplatformAdminServiceSettings marketingplatformAdminServiceSettings =
+ * MarketingplatformAdminServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
+ * MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create(marketingplatformAdminServiceSettings);
+ * }
+ *
+ * To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over + * the wire: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * MarketingplatformAdminServiceSettings marketingplatformAdminServiceSettings =
+ * MarketingplatformAdminServiceSettings.newHttpJsonBuilder().build();
+ * MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create(marketingplatformAdminServiceSettings);
+ * }
+ *
+ * Please refer to the GitHub repository's samples for more quickstart code snippets. + */ +@BetaApi +@Generated("by gapic-generator-java") +public class MarketingplatformAdminServiceClient implements BackgroundResource { + private final MarketingplatformAdminServiceSettings settings; + private final MarketingplatformAdminServiceStub stub; + + /** Constructs an instance of MarketingplatformAdminServiceClient with default settings. */ + public static final MarketingplatformAdminServiceClient create() throws IOException { + return create(MarketingplatformAdminServiceSettings.newBuilder().build()); + } + + /** + * Constructs an instance of MarketingplatformAdminServiceClient, using the given settings. The + * channels are created based on the settings passed in, or defaults for any settings that are not + * set. + */ + public static final MarketingplatformAdminServiceClient create( + MarketingplatformAdminServiceSettings settings) throws IOException { + return new MarketingplatformAdminServiceClient(settings); + } + + /** + * Constructs an instance of MarketingplatformAdminServiceClient, using the given stub for making + * calls. This is for advanced usage - prefer using create(MarketingplatformAdminServiceSettings). + */ + public static final MarketingplatformAdminServiceClient create( + MarketingplatformAdminServiceStub stub) { + return new MarketingplatformAdminServiceClient(stub); + } + + /** + * Constructs an instance of MarketingplatformAdminServiceClient, using the given settings. This + * is protected so that it is easy to make a subclass, but otherwise, the static factory methods + * should be preferred. + */ + protected MarketingplatformAdminServiceClient(MarketingplatformAdminServiceSettings settings) + throws IOException { + this.settings = settings; + this.stub = + ((MarketingplatformAdminServiceStubSettings) settings.getStubSettings()).createStub(); + } + + protected MarketingplatformAdminServiceClient(MarketingplatformAdminServiceStub stub) { + this.settings = null; + this.stub = stub; + } + + public final MarketingplatformAdminServiceSettings getSettings() { + return settings; + } + + public MarketingplatformAdminServiceStub getStub() { + return stub; + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Lookup for a single organization. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * OrganizationName name = OrganizationName.of("[ORGANIZATION]");
+ * Organization response = marketingplatformAdminServiceClient.getOrganization(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the Organization to retrieve. Format: organizations/{org_id}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final Organization getOrganization(OrganizationName name) {
+ GetOrganizationRequest request =
+ GetOrganizationRequest.newBuilder().setName(name == null ? null : name.toString()).build();
+ return getOrganization(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lookup for a single organization.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * String name = OrganizationName.of("[ORGANIZATION]").toString();
+ * Organization response = marketingplatformAdminServiceClient.getOrganization(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the Organization to retrieve. Format: organizations/{org_id}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final Organization getOrganization(String name) {
+ GetOrganizationRequest request = GetOrganizationRequest.newBuilder().setName(name).build();
+ return getOrganization(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lookup for a single organization.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * GetOrganizationRequest request =
+ * GetOrganizationRequest.newBuilder()
+ * .setName(OrganizationName.of("[ORGANIZATION]").toString())
+ * .build();
+ * Organization response = marketingplatformAdminServiceClient.getOrganization(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final Organization getOrganization(GetOrganizationRequest request) {
+ return getOrganizationCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lookup for a single organization.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * GetOrganizationRequest request =
+ * GetOrganizationRequest.newBuilder()
+ * .setName(OrganizationName.of("[ORGANIZATION]").toString())
+ * .build();
+ * ApiFuture future =
+ * marketingplatformAdminServiceClient.getOrganizationCallable().futureCall(request);
+ * // Do something.
+ * Organization response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
+ * for (AnalyticsAccountLink element :
+ * marketingplatformAdminServiceClient.listAnalyticsAccountLinks(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. The parent organization, which owns this collection of Analytics
+ * account links. Format: organizations/{org_id}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListAnalyticsAccountLinksPagedResponse listAnalyticsAccountLinks(
+ OrganizationName parent) {
+ ListAnalyticsAccountLinksRequest request =
+ ListAnalyticsAccountLinksRequest.newBuilder()
+ .setParent(parent == null ? null : parent.toString())
+ .build();
+ return listAnalyticsAccountLinks(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists the Google Analytics accounts link to the specified Google Marketing Platform
+ * organization.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * String parent = OrganizationName.of("[ORGANIZATION]").toString();
+ * for (AnalyticsAccountLink element :
+ * marketingplatformAdminServiceClient.listAnalyticsAccountLinks(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. The parent organization, which owns this collection of Analytics
+ * account links. Format: organizations/{org_id}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListAnalyticsAccountLinksPagedResponse listAnalyticsAccountLinks(String parent) {
+ ListAnalyticsAccountLinksRequest request =
+ ListAnalyticsAccountLinksRequest.newBuilder().setParent(parent).build();
+ return listAnalyticsAccountLinks(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists the Google Analytics accounts link to the specified Google Marketing Platform
+ * organization.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * ListAnalyticsAccountLinksRequest request =
+ * ListAnalyticsAccountLinksRequest.newBuilder()
+ * .setParent(OrganizationName.of("[ORGANIZATION]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * for (AnalyticsAccountLink element :
+ * marketingplatformAdminServiceClient.listAnalyticsAccountLinks(request).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListAnalyticsAccountLinksPagedResponse listAnalyticsAccountLinks(
+ ListAnalyticsAccountLinksRequest request) {
+ return listAnalyticsAccountLinksPagedCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists the Google Analytics accounts link to the specified Google Marketing Platform
+ * organization.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * ListAnalyticsAccountLinksRequest request =
+ * ListAnalyticsAccountLinksRequest.newBuilder()
+ * .setParent(OrganizationName.of("[ORGANIZATION]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * ApiFuture future =
+ * marketingplatformAdminServiceClient
+ * .listAnalyticsAccountLinksPagedCallable()
+ * .futureCall(request);
+ * // Do something.
+ * for (AnalyticsAccountLink element : future.get().iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallable<
+ ListAnalyticsAccountLinksRequest, ListAnalyticsAccountLinksPagedResponse>
+ listAnalyticsAccountLinksPagedCallable() {
+ return stub.listAnalyticsAccountLinksPagedCallable();
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists the Google Analytics accounts link to the specified Google Marketing Platform
+ * organization.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * ListAnalyticsAccountLinksRequest request =
+ * ListAnalyticsAccountLinksRequest.newBuilder()
+ * .setParent(OrganizationName.of("[ORGANIZATION]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * while (true) {
+ * ListAnalyticsAccountLinksResponse response =
+ * marketingplatformAdminServiceClient.listAnalyticsAccountLinksCallable().call(request);
+ * for (AnalyticsAccountLink element : response.getAnalyticsAccountLinksList()) {
+ * // doThingsWith(element);
+ * }
+ * String nextPageToken = response.getNextPageToken();
+ * if (!Strings.isNullOrEmpty(nextPageToken)) {
+ * request = request.toBuilder().setPageToken(nextPageToken).build();
+ * } else {
+ * break;
+ * }
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallableUser needs to be an org user, and admin on the Analytics account to create the link. If the + * account is already linked to an organization, user needs to unlink the account from the current + * organization, then try link again. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * OrganizationName parent = OrganizationName.of("[ORGANIZATION]");
+ * AnalyticsAccountLink analyticsAccountLink = AnalyticsAccountLink.newBuilder().build();
+ * AnalyticsAccountLink response =
+ * marketingplatformAdminServiceClient.createAnalyticsAccountLink(
+ * parent, analyticsAccountLink);
+ * }
+ * }
+ *
+ * @param parent Required. The parent resource where this Analytics account link will be created.
+ * Format: organizations/{org_id}
+ * @param analyticsAccountLink Required. The Analytics account link to create.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final AnalyticsAccountLink createAnalyticsAccountLink(
+ OrganizationName parent, AnalyticsAccountLink analyticsAccountLink) {
+ CreateAnalyticsAccountLinkRequest request =
+ CreateAnalyticsAccountLinkRequest.newBuilder()
+ .setParent(parent == null ? null : parent.toString())
+ .setAnalyticsAccountLink(analyticsAccountLink)
+ .build();
+ return createAnalyticsAccountLink(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Creates the link between the Analytics account and the Google Marketing Platform organization.
+ *
+ * User needs to be an org user, and admin on the Analytics account to create the link. If the + * account is already linked to an organization, user needs to unlink the account from the current + * organization, then try link again. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * String parent = OrganizationName.of("[ORGANIZATION]").toString();
+ * AnalyticsAccountLink analyticsAccountLink = AnalyticsAccountLink.newBuilder().build();
+ * AnalyticsAccountLink response =
+ * marketingplatformAdminServiceClient.createAnalyticsAccountLink(
+ * parent, analyticsAccountLink);
+ * }
+ * }
+ *
+ * @param parent Required. The parent resource where this Analytics account link will be created.
+ * Format: organizations/{org_id}
+ * @param analyticsAccountLink Required. The Analytics account link to create.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final AnalyticsAccountLink createAnalyticsAccountLink(
+ String parent, AnalyticsAccountLink analyticsAccountLink) {
+ CreateAnalyticsAccountLinkRequest request =
+ CreateAnalyticsAccountLinkRequest.newBuilder()
+ .setParent(parent)
+ .setAnalyticsAccountLink(analyticsAccountLink)
+ .build();
+ return createAnalyticsAccountLink(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Creates the link between the Analytics account and the Google Marketing Platform organization.
+ *
+ * User needs to be an org user, and admin on the Analytics account to create the link. If the + * account is already linked to an organization, user needs to unlink the account from the current + * organization, then try link again. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * CreateAnalyticsAccountLinkRequest request =
+ * CreateAnalyticsAccountLinkRequest.newBuilder()
+ * .setParent(OrganizationName.of("[ORGANIZATION]").toString())
+ * .setAnalyticsAccountLink(AnalyticsAccountLink.newBuilder().build())
+ * .build();
+ * AnalyticsAccountLink response =
+ * marketingplatformAdminServiceClient.createAnalyticsAccountLink(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final AnalyticsAccountLink createAnalyticsAccountLink(
+ CreateAnalyticsAccountLinkRequest request) {
+ return createAnalyticsAccountLinkCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Creates the link between the Analytics account and the Google Marketing Platform organization.
+ *
+ * User needs to be an org user, and admin on the Analytics account to create the link. If the + * account is already linked to an organization, user needs to unlink the account from the current + * organization, then try link again. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * CreateAnalyticsAccountLinkRequest request =
+ * CreateAnalyticsAccountLinkRequest.newBuilder()
+ * .setParent(OrganizationName.of("[ORGANIZATION]").toString())
+ * .setAnalyticsAccountLink(AnalyticsAccountLink.newBuilder().build())
+ * .build();
+ * ApiFuture future =
+ * marketingplatformAdminServiceClient
+ * .createAnalyticsAccountLinkCallable()
+ * .futureCall(request);
+ * // Do something.
+ * AnalyticsAccountLink response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableUser needs to be an org user, and admin on the Analytics account in order to delete the + * link. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * AnalyticsAccountLinkName name =
+ * AnalyticsAccountLinkName.of("[ORGANIZATION]", "[ANALYTICS_ACCOUNT_LINK]");
+ * marketingplatformAdminServiceClient.deleteAnalyticsAccountLink(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the Analytics account link to delete. Format:
+ * organizations/{org_id}/analyticsAccountLinks/{analytics_account_link_id}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final void deleteAnalyticsAccountLink(AnalyticsAccountLinkName name) {
+ DeleteAnalyticsAccountLinkRequest request =
+ DeleteAnalyticsAccountLinkRequest.newBuilder()
+ .setName(name == null ? null : name.toString())
+ .build();
+ deleteAnalyticsAccountLink(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Deletes the AnalyticsAccountLink, which detaches the Analytics account from the Google
+ * Marketing Platform organization.
+ *
+ * User needs to be an org user, and admin on the Analytics account in order to delete the + * link. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * String name =
+ * AnalyticsAccountLinkName.of("[ORGANIZATION]", "[ANALYTICS_ACCOUNT_LINK]").toString();
+ * marketingplatformAdminServiceClient.deleteAnalyticsAccountLink(name);
+ * }
+ * }
+ *
+ * @param name Required. The name of the Analytics account link to delete. Format:
+ * organizations/{org_id}/analyticsAccountLinks/{analytics_account_link_id}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final void deleteAnalyticsAccountLink(String name) {
+ DeleteAnalyticsAccountLinkRequest request =
+ DeleteAnalyticsAccountLinkRequest.newBuilder().setName(name).build();
+ deleteAnalyticsAccountLink(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Deletes the AnalyticsAccountLink, which detaches the Analytics account from the Google
+ * Marketing Platform organization.
+ *
+ * User needs to be an org user, and admin on the Analytics account in order to delete the + * link. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * DeleteAnalyticsAccountLinkRequest request =
+ * DeleteAnalyticsAccountLinkRequest.newBuilder()
+ * .setName(
+ * AnalyticsAccountLinkName.of("[ORGANIZATION]", "[ANALYTICS_ACCOUNT_LINK]")
+ * .toString())
+ * .build();
+ * marketingplatformAdminServiceClient.deleteAnalyticsAccountLink(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final void deleteAnalyticsAccountLink(DeleteAnalyticsAccountLinkRequest request) {
+ deleteAnalyticsAccountLinkCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Deletes the AnalyticsAccountLink, which detaches the Analytics account from the Google
+ * Marketing Platform organization.
+ *
+ * User needs to be an org user, and admin on the Analytics account in order to delete the + * link. + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * DeleteAnalyticsAccountLinkRequest request =
+ * DeleteAnalyticsAccountLinkRequest.newBuilder()
+ * .setName(
+ * AnalyticsAccountLinkName.of("[ORGANIZATION]", "[ANALYTICS_ACCOUNT_LINK]")
+ * .toString())
+ * .build();
+ * ApiFuture future =
+ * marketingplatformAdminServiceClient
+ * .deleteAnalyticsAccountLinkCallable()
+ * .futureCall(request);
+ * // Do something.
+ * future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableSample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * String analyticsAccountLink = "analyticsAccountLink-397570975";
+ * SetPropertyServiceLevelResponse response =
+ * marketingplatformAdminServiceClient.setPropertyServiceLevel(analyticsAccountLink);
+ * }
+ * }
+ *
+ * @param analyticsAccountLink Required. The parent AnalyticsAccountLink scope where this property
+ * is in. Format: organizations/{org_id}/analyticsAccountLinks/{analytics_account_link_id}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final SetPropertyServiceLevelResponse setPropertyServiceLevel(
+ String analyticsAccountLink) {
+ SetPropertyServiceLevelRequest request =
+ SetPropertyServiceLevelRequest.newBuilder()
+ .setAnalyticsAccountLink(analyticsAccountLink)
+ .build();
+ return setPropertyServiceLevel(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Updates the service level for an Analytics property.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * SetPropertyServiceLevelRequest request =
+ * SetPropertyServiceLevelRequest.newBuilder()
+ * .setAnalyticsAccountLink("analyticsAccountLink-397570975")
+ * .setAnalyticsProperty(PropertyName.of("[PROPERTY]").toString())
+ * .setServiceLevel(AnalyticsServiceLevel.forNumber(0))
+ * .build();
+ * SetPropertyServiceLevelResponse response =
+ * marketingplatformAdminServiceClient.setPropertyServiceLevel(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final SetPropertyServiceLevelResponse setPropertyServiceLevel(
+ SetPropertyServiceLevelRequest request) {
+ return setPropertyServiceLevelCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Updates the service level for an Analytics property.
+ *
+ * Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * SetPropertyServiceLevelRequest request =
+ * SetPropertyServiceLevelRequest.newBuilder()
+ * .setAnalyticsAccountLink("analyticsAccountLink-397570975")
+ * .setAnalyticsProperty(PropertyName.of("[PROPERTY]").toString())
+ * .setServiceLevel(AnalyticsServiceLevel.forNumber(0))
+ * .build();
+ * ApiFuture future =
+ * marketingplatformAdminServiceClient.setPropertyServiceLevelCallable().futureCall(request);
+ * // Do something.
+ * SetPropertyServiceLevelResponse response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallableThe default instance has everything set to sensible defaults: + * + *
The builder of this class is recursive, so contained classes are themselves builders. When + * build() is called, the tree of builders is called to create the complete settings object. + * + *
For example, to set the + * [RetrySettings](https://cloud.google.com/java/docs/reference/gax/latest/com.google.api.gax.retrying.RetrySettings) + * of getOrganization: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * MarketingplatformAdminServiceSettings.Builder marketingplatformAdminServiceSettingsBuilder =
+ * MarketingplatformAdminServiceSettings.newBuilder();
+ * marketingplatformAdminServiceSettingsBuilder
+ * .getOrganizationSettings()
+ * .setRetrySettings(
+ * marketingplatformAdminServiceSettingsBuilder
+ * .getOrganizationSettings()
+ * .getRetrySettings()
+ * .toBuilder()
+ * .setInitialRetryDelayDuration(Duration.ofSeconds(1))
+ * .setInitialRpcTimeoutDuration(Duration.ofSeconds(5))
+ * .setMaxAttempts(5)
+ * .setMaxRetryDelayDuration(Duration.ofSeconds(30))
+ * .setMaxRpcTimeoutDuration(Duration.ofSeconds(60))
+ * .setRetryDelayMultiplier(1.3)
+ * .setRpcTimeoutMultiplier(1.5)
+ * .setTotalTimeoutDuration(Duration.ofSeconds(300))
+ * .build());
+ * MarketingplatformAdminServiceSettings marketingplatformAdminServiceSettings =
+ * marketingplatformAdminServiceSettingsBuilder.build();
+ * }
+ *
+ * Please refer to the [Client Side Retry
+ * Guide](https://github.com/googleapis/google-cloud-java/blob/main/docs/client_retries.md) for
+ * additional support in setting retries.
+ */
+@BetaApi
+@Generated("by gapic-generator-java")
+public class MarketingplatformAdminServiceSettings
+ extends ClientSettingsNote: This method does not support applying settings to streaming methods.
+ */
+ public Builder applyToAllUnaryMethods(
+ ApiFunction The interfaces provided are listed below, along with usage samples.
+ *
+ * ======================= MarketingplatformAdminServiceClient =======================
+ *
+ * Service Description: Service Interface for the Google Marketing Platform Admin API.
+ *
+ * Sample for MarketingplatformAdminServiceClient:
+ *
+ * This class is for advanced usage.
+ */
+@BetaApi
+@Generated("by gapic-generator-java")
+public class GrpcMarketingplatformAdminServiceCallableFactory implements GrpcStubCallableFactory {
+
+ @Override
+ public This class is for advanced usage and reflects the underlying API directly.
+ */
+@BetaApi
+@Generated("by gapic-generator-java")
+public class GrpcMarketingplatformAdminServiceStub extends MarketingplatformAdminServiceStub {
+ private static final MethodDescriptor This class is for advanced usage.
+ */
+@BetaApi
+@Generated("by gapic-generator-java")
+public class HttpJsonMarketingplatformAdminServiceCallableFactory
+ implements HttpJsonStubCallableFactory This class is for advanced usage and reflects the underlying API directly.
+ */
+@BetaApi
+@Generated("by gapic-generator-java")
+public class HttpJsonMarketingplatformAdminServiceStub extends MarketingplatformAdminServiceStub {
+ private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder().build();
+
+ private static final ApiMethodDescriptor This class is for advanced usage and reflects the underlying API directly.
+ */
+@BetaApi
+@Generated("by gapic-generator-java")
+public abstract class MarketingplatformAdminServiceStub implements BackgroundResource {
+
+ public UnaryCallable The default instance has everything set to sensible defaults:
+ *
+ * The builder of this class is recursive, so contained classes are themselves builders. When
+ * build() is called, the tree of builders is called to create the complete settings object.
+ *
+ * For example, to set the
+ * [RetrySettings](https://cloud.google.com/java/docs/reference/gax/latest/com.google.api.gax.retrying.RetrySettings)
+ * of getOrganization:
+ *
+ * Note: This method does not support applying settings to streaming methods.
+ */
+ public Builder applyToAllUnaryMethods(
+ ApiFunction{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
+ * MarketingplatformAdminServiceClient.create()) {
+ * OrganizationName name = OrganizationName.of("[ORGANIZATION]");
+ * Organization response = marketingplatformAdminServiceClient.getOrganization(name);
+ * }
+ * }
+ */
+@Generated("by gapic-generator-java")
+package com.google.ads.marketingplatform.admin.v1alpha;
+
+import javax.annotation.Generated;
diff --git a/java-marketingplatformadminapi/admin/src/main/java/com/google/ads/marketingplatform/admin/v1alpha/stub/GrpcMarketingplatformAdminServiceCallableFactory.java b/java-marketingplatformadminapi/admin/src/main/java/com/google/ads/marketingplatform/admin/v1alpha/stub/GrpcMarketingplatformAdminServiceCallableFactory.java
new file mode 100644
index 000000000000..56e819426b7b
--- /dev/null
+++ b/java-marketingplatformadminapi/admin/src/main/java/com/google/ads/marketingplatform/admin/v1alpha/stub/GrpcMarketingplatformAdminServiceCallableFactory.java
@@ -0,0 +1,115 @@
+/*
+ * Copyright 2024 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.ads.marketingplatform.admin.v1alpha.stub;
+
+import com.google.api.core.BetaApi;
+import com.google.api.gax.grpc.GrpcCallSettings;
+import com.google.api.gax.grpc.GrpcCallableFactory;
+import com.google.api.gax.grpc.GrpcStubCallableFactory;
+import com.google.api.gax.rpc.BatchingCallSettings;
+import com.google.api.gax.rpc.BidiStreamingCallable;
+import com.google.api.gax.rpc.ClientContext;
+import com.google.api.gax.rpc.ClientStreamingCallable;
+import com.google.api.gax.rpc.OperationCallSettings;
+import com.google.api.gax.rpc.OperationCallable;
+import com.google.api.gax.rpc.PagedCallSettings;
+import com.google.api.gax.rpc.ServerStreamingCallSettings;
+import com.google.api.gax.rpc.ServerStreamingCallable;
+import com.google.api.gax.rpc.StreamingCallSettings;
+import com.google.api.gax.rpc.UnaryCallSettings;
+import com.google.api.gax.rpc.UnaryCallable;
+import com.google.longrunning.Operation;
+import com.google.longrunning.stub.OperationsStub;
+import javax.annotation.Generated;
+
+// AUTO-GENERATED DOCUMENTATION AND CLASS.
+/**
+ * gRPC callable factory implementation for the MarketingplatformAdminService service API.
+ *
+ *
+ *
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * MarketingplatformAdminServiceStubSettings.Builder marketingplatformAdminServiceSettingsBuilder =
+ * MarketingplatformAdminServiceStubSettings.newBuilder();
+ * marketingplatformAdminServiceSettingsBuilder
+ * .getOrganizationSettings()
+ * .setRetrySettings(
+ * marketingplatformAdminServiceSettingsBuilder
+ * .getOrganizationSettings()
+ * .getRetrySettings()
+ * .toBuilder()
+ * .setInitialRetryDelayDuration(Duration.ofSeconds(1))
+ * .setInitialRpcTimeoutDuration(Duration.ofSeconds(5))
+ * .setMaxAttempts(5)
+ * .setMaxRetryDelayDuration(Duration.ofSeconds(30))
+ * .setMaxRpcTimeoutDuration(Duration.ofSeconds(60))
+ * .setRetryDelayMultiplier(1.3)
+ * .setRpcTimeoutMultiplier(1.5)
+ * .setTotalTimeoutDuration(Duration.ofSeconds(300))
+ * .build());
+ * MarketingplatformAdminServiceStubSettings marketingplatformAdminServiceSettings =
+ * marketingplatformAdminServiceSettingsBuilder.build();
+ * }
+ *
+ * Please refer to the [Client Side Retry
+ * Guide](https://github.com/googleapis/google-cloud-java/blob/main/docs/client_retries.md) for
+ * additional support in setting retries.
+ */
+@BetaApi
+@Generated("by gapic-generator-java")
+public class MarketingplatformAdminServiceStubSettings
+ extends StubSettings