1 // Copyright 2019 Google LLC.
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // http://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
18 package google.ads.googleads.v1.services;
20 import "google/ads/googleads/v1/resources/customer_manager_link.proto";
21 import "google/api/annotations.proto";
22 import "google/protobuf/field_mask.proto";
24 option csharp_namespace = "Google.Ads.GoogleAds.V1.Services";
25 option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v1/services;services";
26 option java_multiple_files = true;
27 option java_outer_classname = "CustomerManagerLinkServiceProto";
28 option java_package = "com.google.ads.googleads.v1.services";
29 option objc_class_prefix = "GAA";
30 option php_namespace = "Google\\Ads\\GoogleAds\\V1\\Services";
31 option ruby_package = "Google::Ads::GoogleAds::V1::Services";
34 // Service to manage customer-manager links.
35 service CustomerManagerLinkService {
36 // Returns the requested CustomerManagerLink in full detail.
37 rpc GetCustomerManagerLink(GetCustomerManagerLinkRequest) returns (google.ads.googleads.v1.resources.CustomerManagerLink) {
38 option (google.api.http) = {
39 get: "/v1/{resource_name=customers/*/customerManagerLinks/*}"
43 // Creates or updates customer manager links. Operation statuses are returned.
44 rpc MutateCustomerManagerLink(MutateCustomerManagerLinkRequest) returns (MutateCustomerManagerLinkResponse) {
45 option (google.api.http) = {
46 post: "/v1/customers/{customer_id=*}/customerManagerLinks:mutate"
52 // Request message for [CustomerManagerLinkService.GetCustomerManagerLink][google.ads.googleads.v1.services.CustomerManagerLinkService.GetCustomerManagerLink].
53 message GetCustomerManagerLinkRequest {
54 // The resource name of the CustomerManagerLink to fetch.
55 string resource_name = 1;
58 // Request message for [CustomerManagerLinkService.MutateCustomerManagerLink][google.ads.googleads.v1.services.CustomerManagerLinkService.MutateCustomerManagerLink].
59 message MutateCustomerManagerLinkRequest {
60 // The ID of the customer whose customer manager links are being modified.
61 string customer_id = 1;
63 // The list of operations to perform on individual customer manager links.
64 repeated CustomerManagerLinkOperation operations = 2;
67 // Updates the status of a CustomerManagerLink.
68 // The following actions are possible:
69 // 1. Update operation with status ACTIVE accepts a pending invitation.
70 // 2. Update operation with status REFUSED declines a pending invitation.
71 // 3. Update operation with status INACTIVE terminates link to manager.
72 message CustomerManagerLinkOperation {
73 // FieldMask that determines which resource fields are modified in an update.
74 google.protobuf.FieldMask update_mask = 4;
76 // The mutate operation.
78 // Update operation: The link is expected to have a valid resource name.
79 google.ads.googleads.v1.resources.CustomerManagerLink update = 2;
83 // Response message for a CustomerManagerLink mutate.
84 message MutateCustomerManagerLinkResponse {
85 // A result that identifies the resource affected by the mutate request.
86 repeated MutateCustomerManagerLinkResult results = 1;
89 // The result for the customer manager link mutate.
90 message MutateCustomerManagerLinkResult {
91 // Returned for successful operations.
92 string resource_name = 1;