Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / legacy-libs / google-proto-files / google / ads / googleads / v1 / services / customer_manager_link_service.proto
1 // Copyright 2019 Google LLC.
2 //
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
6 //
7 //     http://www.apache.org/licenses/LICENSE-2.0
8 //
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.
14 //
15
16 syntax = "proto3";
17
18 package google.ads.googleads.v1.services;
19
20 import "google/ads/googleads/v1/resources/customer_manager_link.proto";
21 import "google/api/annotations.proto";
22 import "google/protobuf/field_mask.proto";
23
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";
32
33
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/*}"
40     };
41   }
42
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"
47       body: "*"
48     };
49   }
50 }
51
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;
56 }
57
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;
62
63   // The list of operations to perform on individual customer manager links.
64   repeated CustomerManagerLinkOperation operations = 2;
65 }
66
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;
75
76   // The mutate operation.
77   oneof operation {
78     // Update operation: The link is expected to have a valid resource name.
79     google.ads.googleads.v1.resources.CustomerManagerLink update = 2;
80   }
81 }
82
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;
87 }
88
89 // The result for the customer manager link mutate.
90 message MutateCustomerManagerLinkResult {
91   // Returned for successful operations.
92   string resource_name = 1;
93 }