xref: /aosp_15_r20/external/googleapis/google/cloud/channel/v1/service.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.channel.v1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto";
21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto";
22*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto";
23*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/billing_accounts.proto";
24*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/channel_partner_links.proto";
25*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/common.proto";
26*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/customers.proto";
27*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/entitlement_changes.proto";
28*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/entitlements.proto";
29*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/offers.proto";
30*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/operations.proto";
31*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/products.proto";
32*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/channel/v1/repricing.proto";
33*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto";
34*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto";
35*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto";
36*d5c09012SAndroid Build Coastguard Worker
37*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/channel/apiv1/channelpb;channelpb";
38*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
39*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ServiceProto";
40*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.channel.v1";
41*d5c09012SAndroid Build Coastguard Worker
42*d5c09012SAndroid Build Coastguard Worker// CloudChannelService lets Google cloud resellers and distributors manage
43*d5c09012SAndroid Build Coastguard Worker// their customers, channel partners, entitlements, and reports.
44*d5c09012SAndroid Build Coastguard Worker//
45*d5c09012SAndroid Build Coastguard Worker// Using this service:
46*d5c09012SAndroid Build Coastguard Worker// 1. Resellers and distributors can manage a customer entity.
47*d5c09012SAndroid Build Coastguard Worker// 2. Distributors can register an authorized reseller in their channel and
48*d5c09012SAndroid Build Coastguard Worker//    provide them with delegated admin access.
49*d5c09012SAndroid Build Coastguard Worker// 3. Resellers and distributors can manage customer entitlements.
50*d5c09012SAndroid Build Coastguard Worker//
51*d5c09012SAndroid Build Coastguard Worker// CloudChannelService exposes the following resources:
52*d5c09012SAndroid Build Coastguard Worker// - [Customer][google.cloud.channel.v1.Customer]s: An entity-usually an
53*d5c09012SAndroid Build Coastguard Worker// enterprise-managed by a reseller or distributor.
54*d5c09012SAndroid Build Coastguard Worker//
55*d5c09012SAndroid Build Coastguard Worker// - [Entitlement][google.cloud.channel.v1.Entitlement]s: An entity that
56*d5c09012SAndroid Build Coastguard Worker// provides a customer with the means to use a service. Entitlements are created
57*d5c09012SAndroid Build Coastguard Worker// or updated as a result of a successful fulfillment.
58*d5c09012SAndroid Build Coastguard Worker//
59*d5c09012SAndroid Build Coastguard Worker// - [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]s: An
60*d5c09012SAndroid Build Coastguard Worker// entity that identifies links between distributors and their indirect
61*d5c09012SAndroid Build Coastguard Worker// resellers in a channel.
62*d5c09012SAndroid Build Coastguard Workerservice CloudChannelService {
63*d5c09012SAndroid Build Coastguard Worker  option (google.api.default_host) = "cloudchannel.googleapis.com";
64*d5c09012SAndroid Build Coastguard Worker  option (google.api.oauth_scopes) =
65*d5c09012SAndroid Build Coastguard Worker      "https://www.googleapis.com/auth/apps.order";
66*d5c09012SAndroid Build Coastguard Worker
67*d5c09012SAndroid Build Coastguard Worker  // List [Customer][google.cloud.channel.v1.Customer]s.
68*d5c09012SAndroid Build Coastguard Worker  //
69*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
70*d5c09012SAndroid Build Coastguard Worker  //
71*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
72*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
73*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
74*d5c09012SAndroid Build Coastguard Worker  //
75*d5c09012SAndroid Build Coastguard Worker  // Return value:
76*d5c09012SAndroid Build Coastguard Worker  // List of [Customer][google.cloud.channel.v1.Customer]s, or an empty list if
77*d5c09012SAndroid Build Coastguard Worker  // there are no customers.
78*d5c09012SAndroid Build Coastguard Worker  rpc ListCustomers(ListCustomersRequest) returns (ListCustomersResponse) {
79*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
80*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*}/customers"
81*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
82*d5c09012SAndroid Build Coastguard Worker        get: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers"
83*d5c09012SAndroid Build Coastguard Worker      }
84*d5c09012SAndroid Build Coastguard Worker    };
85*d5c09012SAndroid Build Coastguard Worker  }
86*d5c09012SAndroid Build Coastguard Worker
87*d5c09012SAndroid Build Coastguard Worker  // Returns the requested [Customer][google.cloud.channel.v1.Customer]
88*d5c09012SAndroid Build Coastguard Worker  // resource.
89*d5c09012SAndroid Build Coastguard Worker  //
90*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
91*d5c09012SAndroid Build Coastguard Worker  //
92*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
93*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
94*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
95*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The customer resource doesn't exist. Usually the result of an
96*d5c09012SAndroid Build Coastguard Worker  // invalid name parameter.
97*d5c09012SAndroid Build Coastguard Worker  //
98*d5c09012SAndroid Build Coastguard Worker  // Return value:
99*d5c09012SAndroid Build Coastguard Worker  // The [Customer][google.cloud.channel.v1.Customer] resource.
100*d5c09012SAndroid Build Coastguard Worker  rpc GetCustomer(GetCustomerRequest) returns (Customer) {
101*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
102*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=accounts/*/customers/*}"
103*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
104*d5c09012SAndroid Build Coastguard Worker        get: "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}"
105*d5c09012SAndroid Build Coastguard Worker      }
106*d5c09012SAndroid Build Coastguard Worker    };
107*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
108*d5c09012SAndroid Build Coastguard Worker  }
109*d5c09012SAndroid Build Coastguard Worker
110*d5c09012SAndroid Build Coastguard Worker  // Confirms the existence of Cloud Identity accounts based on the domain and
111*d5c09012SAndroid Build Coastguard Worker  // if the Cloud Identity accounts are owned by the reseller.
112*d5c09012SAndroid Build Coastguard Worker  //
113*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
114*d5c09012SAndroid Build Coastguard Worker  //
115*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
116*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
117*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
118*d5c09012SAndroid Build Coastguard Worker  // * INVALID_VALUE: Invalid domain value in the request.
119*d5c09012SAndroid Build Coastguard Worker  //
120*d5c09012SAndroid Build Coastguard Worker  // Return value:
121*d5c09012SAndroid Build Coastguard Worker  // A list of
122*d5c09012SAndroid Build Coastguard Worker  // [CloudIdentityCustomerAccount][google.cloud.channel.v1.CloudIdentityCustomerAccount]
123*d5c09012SAndroid Build Coastguard Worker  // resources for the domain (may be empty)
124*d5c09012SAndroid Build Coastguard Worker  //
125*d5c09012SAndroid Build Coastguard Worker  // Note: in the v1alpha1 version of the API, a NOT_FOUND error returns if
126*d5c09012SAndroid Build Coastguard Worker  // no
127*d5c09012SAndroid Build Coastguard Worker  // [CloudIdentityCustomerAccount][google.cloud.channel.v1.CloudIdentityCustomerAccount]
128*d5c09012SAndroid Build Coastguard Worker  // resources match the domain.
129*d5c09012SAndroid Build Coastguard Worker  rpc CheckCloudIdentityAccountsExist(CheckCloudIdentityAccountsExistRequest)
130*d5c09012SAndroid Build Coastguard Worker      returns (CheckCloudIdentityAccountsExistResponse) {
131*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
132*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*}:checkCloudIdentityAccountsExist"
133*d5c09012SAndroid Build Coastguard Worker      body: "*"
134*d5c09012SAndroid Build Coastguard Worker    };
135*d5c09012SAndroid Build Coastguard Worker  }
136*d5c09012SAndroid Build Coastguard Worker
137*d5c09012SAndroid Build Coastguard Worker  // Creates a new [Customer][google.cloud.channel.v1.Customer] resource under
138*d5c09012SAndroid Build Coastguard Worker  // the reseller or distributor account.
139*d5c09012SAndroid Build Coastguard Worker  //
140*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
141*d5c09012SAndroid Build Coastguard Worker  //
142*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED:
143*d5c09012SAndroid Build Coastguard Worker  //     * The reseller account making the request is different from the
144*d5c09012SAndroid Build Coastguard Worker  //     reseller account in the API request.
145*d5c09012SAndroid Build Coastguard Worker  //     * You are not authorized to create a customer. See
146*d5c09012SAndroid Build Coastguard Worker  //     https://support.google.com/channelservices/answer/9759265
147*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT:
148*d5c09012SAndroid Build Coastguard Worker  //     * Required request parameters are missing or invalid.
149*d5c09012SAndroid Build Coastguard Worker  //     * Domain field value doesn't match the primary email domain.
150*d5c09012SAndroid Build Coastguard Worker  //
151*d5c09012SAndroid Build Coastguard Worker  // Return value:
152*d5c09012SAndroid Build Coastguard Worker  // The newly created [Customer][google.cloud.channel.v1.Customer] resource.
153*d5c09012SAndroid Build Coastguard Worker  rpc CreateCustomer(CreateCustomerRequest) returns (Customer) {
154*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
155*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*}/customers"
156*d5c09012SAndroid Build Coastguard Worker      body: "customer"
157*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
158*d5c09012SAndroid Build Coastguard Worker        post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers"
159*d5c09012SAndroid Build Coastguard Worker        body: "customer"
160*d5c09012SAndroid Build Coastguard Worker      }
161*d5c09012SAndroid Build Coastguard Worker    };
162*d5c09012SAndroid Build Coastguard Worker  }
163*d5c09012SAndroid Build Coastguard Worker
164*d5c09012SAndroid Build Coastguard Worker  // Updates an existing [Customer][google.cloud.channel.v1.Customer] resource
165*d5c09012SAndroid Build Coastguard Worker  // for the reseller or distributor.
166*d5c09012SAndroid Build Coastguard Worker  //
167*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
168*d5c09012SAndroid Build Coastguard Worker  //
169*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
170*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
171*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
172*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: No [Customer][google.cloud.channel.v1.Customer] resource found
173*d5c09012SAndroid Build Coastguard Worker  // for the name in the request.
174*d5c09012SAndroid Build Coastguard Worker  //
175*d5c09012SAndroid Build Coastguard Worker  // Return value:
176*d5c09012SAndroid Build Coastguard Worker  // The updated [Customer][google.cloud.channel.v1.Customer] resource.
177*d5c09012SAndroid Build Coastguard Worker  rpc UpdateCustomer(UpdateCustomerRequest) returns (Customer) {
178*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
179*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{customer.name=accounts/*/customers/*}"
180*d5c09012SAndroid Build Coastguard Worker      body: "customer"
181*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
182*d5c09012SAndroid Build Coastguard Worker        patch: "/v1/{customer.name=accounts/*/channelPartnerLinks/*/customers/*}"
183*d5c09012SAndroid Build Coastguard Worker        body: "customer"
184*d5c09012SAndroid Build Coastguard Worker      }
185*d5c09012SAndroid Build Coastguard Worker    };
186*d5c09012SAndroid Build Coastguard Worker  }
187*d5c09012SAndroid Build Coastguard Worker
188*d5c09012SAndroid Build Coastguard Worker  // Deletes the given [Customer][google.cloud.channel.v1.Customer] permanently.
189*d5c09012SAndroid Build Coastguard Worker  //
190*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
191*d5c09012SAndroid Build Coastguard Worker  //
192*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The account making the request does not own
193*d5c09012SAndroid Build Coastguard Worker  // this customer.
194*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
195*d5c09012SAndroid Build Coastguard Worker  // * FAILED_PRECONDITION: The customer has existing entitlements.
196*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: No [Customer][google.cloud.channel.v1.Customer] resource found
197*d5c09012SAndroid Build Coastguard Worker  // for the name in the request.
198*d5c09012SAndroid Build Coastguard Worker  rpc DeleteCustomer(DeleteCustomerRequest) returns (google.protobuf.Empty) {
199*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
200*d5c09012SAndroid Build Coastguard Worker      delete: "/v1/{name=accounts/*/customers/*}"
201*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
202*d5c09012SAndroid Build Coastguard Worker        delete: "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}"
203*d5c09012SAndroid Build Coastguard Worker      }
204*d5c09012SAndroid Build Coastguard Worker    };
205*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
206*d5c09012SAndroid Build Coastguard Worker  }
207*d5c09012SAndroid Build Coastguard Worker
208*d5c09012SAndroid Build Coastguard Worker  // Imports a [Customer][google.cloud.channel.v1.Customer] from the Cloud
209*d5c09012SAndroid Build Coastguard Worker  // Identity associated with the provided Cloud Identity ID or domain before a
210*d5c09012SAndroid Build Coastguard Worker  // TransferEntitlements call. If a linked Customer already exists and
211*d5c09012SAndroid Build Coastguard Worker  // overwrite_if_exists is true, it will update that Customer's data.
212*d5c09012SAndroid Build Coastguard Worker  //
213*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
214*d5c09012SAndroid Build Coastguard Worker  //
215*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED:
216*d5c09012SAndroid Build Coastguard Worker  //     * The reseller account making the request is different from the
217*d5c09012SAndroid Build Coastguard Worker  //     reseller account in the API request.
218*d5c09012SAndroid Build Coastguard Worker  //     * You are not authorized to import the customer. See
219*d5c09012SAndroid Build Coastguard Worker  //     https://support.google.com/channelservices/answer/9759265
220*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Cloud Identity doesn't exist or was deleted.
221*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is
222*d5c09012SAndroid Build Coastguard Worker  // expired or invalid.
223*d5c09012SAndroid Build Coastguard Worker  // * ALREADY_EXISTS: A customer already exists and has conflicting critical
224*d5c09012SAndroid Build Coastguard Worker  // fields. Requires an overwrite.
225*d5c09012SAndroid Build Coastguard Worker  //
226*d5c09012SAndroid Build Coastguard Worker  // Return value:
227*d5c09012SAndroid Build Coastguard Worker  // The [Customer][google.cloud.channel.v1.Customer].
228*d5c09012SAndroid Build Coastguard Worker  rpc ImportCustomer(ImportCustomerRequest) returns (Customer) {
229*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
230*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*}/customers:import"
231*d5c09012SAndroid Build Coastguard Worker      body: "*"
232*d5c09012SAndroid Build Coastguard Worker      additional_bindings {
233*d5c09012SAndroid Build Coastguard Worker        post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers:import"
234*d5c09012SAndroid Build Coastguard Worker        body: "*"
235*d5c09012SAndroid Build Coastguard Worker      }
236*d5c09012SAndroid Build Coastguard Worker    };
237*d5c09012SAndroid Build Coastguard Worker  }
238*d5c09012SAndroid Build Coastguard Worker
239*d5c09012SAndroid Build Coastguard Worker  // Creates a Cloud Identity for the given customer using the customer's
240*d5c09012SAndroid Build Coastguard Worker  // information, or the information provided here.
241*d5c09012SAndroid Build Coastguard Worker  //
242*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
243*d5c09012SAndroid Build Coastguard Worker  //
244*d5c09012SAndroid Build Coastguard Worker  // *  PERMISSION_DENIED:
245*d5c09012SAndroid Build Coastguard Worker  //      * The customer doesn't belong to the reseller.
246*d5c09012SAndroid Build Coastguard Worker  //      * You are not authorized to provision cloud identity id. See
247*d5c09012SAndroid Build Coastguard Worker  //      https://support.google.com/channelservices/answer/9759265
248*d5c09012SAndroid Build Coastguard Worker  // *  INVALID_ARGUMENT: Required request parameters are missing or invalid.
249*d5c09012SAndroid Build Coastguard Worker  // *  NOT_FOUND: The customer was not found.
250*d5c09012SAndroid Build Coastguard Worker  // *  ALREADY_EXISTS: The customer's primary email already exists. Retry
251*d5c09012SAndroid Build Coastguard Worker  //    after changing the customer's primary contact email.
252*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
253*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
254*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
255*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
256*d5c09012SAndroid Build Coastguard Worker  //
257*d5c09012SAndroid Build Coastguard Worker  // Return value:
258*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
259*d5c09012SAndroid Build Coastguard Worker  //
260*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
261*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata contains an
262*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
263*d5c09012SAndroid Build Coastguard Worker  rpc ProvisionCloudIdentity(ProvisionCloudIdentityRequest)
264*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
265*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
266*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{customer=accounts/*/customers/*}:provisionCloudIdentity"
267*d5c09012SAndroid Build Coastguard Worker      body: "*"
268*d5c09012SAndroid Build Coastguard Worker    };
269*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
270*d5c09012SAndroid Build Coastguard Worker      response_type: "Customer"
271*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
272*d5c09012SAndroid Build Coastguard Worker    };
273*d5c09012SAndroid Build Coastguard Worker  }
274*d5c09012SAndroid Build Coastguard Worker
275*d5c09012SAndroid Build Coastguard Worker  // Lists [Entitlement][google.cloud.channel.v1.Entitlement]s belonging to a
276*d5c09012SAndroid Build Coastguard Worker  // customer.
277*d5c09012SAndroid Build Coastguard Worker  //
278*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
279*d5c09012SAndroid Build Coastguard Worker  //
280*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
281*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
282*d5c09012SAndroid Build Coastguard Worker  //
283*d5c09012SAndroid Build Coastguard Worker  // Return value:
284*d5c09012SAndroid Build Coastguard Worker  // A list of the customer's
285*d5c09012SAndroid Build Coastguard Worker  // [Entitlement][google.cloud.channel.v1.Entitlement]s.
286*d5c09012SAndroid Build Coastguard Worker  rpc ListEntitlements(ListEntitlementsRequest)
287*d5c09012SAndroid Build Coastguard Worker      returns (ListEntitlementsResponse) {
288*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
289*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*/customers/*}/entitlements"
290*d5c09012SAndroid Build Coastguard Worker    };
291*d5c09012SAndroid Build Coastguard Worker  }
292*d5c09012SAndroid Build Coastguard Worker
293*d5c09012SAndroid Build Coastguard Worker  // List [TransferableSku][google.cloud.channel.v1.TransferableSku]s of a
294*d5c09012SAndroid Build Coastguard Worker  // customer based on the Cloud Identity ID or Customer Name in the request.
295*d5c09012SAndroid Build Coastguard Worker  //
296*d5c09012SAndroid Build Coastguard Worker  // Use this method to list the entitlements information of an
297*d5c09012SAndroid Build Coastguard Worker  // unowned customer. You should provide the customer's
298*d5c09012SAndroid Build Coastguard Worker  // Cloud Identity ID or Customer Name.
299*d5c09012SAndroid Build Coastguard Worker  //
300*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
301*d5c09012SAndroid Build Coastguard Worker  //
302*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED:
303*d5c09012SAndroid Build Coastguard Worker  //     * The customer doesn't belong to the reseller and has no auth token.
304*d5c09012SAndroid Build Coastguard Worker  //     * The supplied auth token is invalid.
305*d5c09012SAndroid Build Coastguard Worker  //     * The reseller account making the request is different
306*d5c09012SAndroid Build Coastguard Worker  //     from the reseller account in the query.
307*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
308*d5c09012SAndroid Build Coastguard Worker  //
309*d5c09012SAndroid Build Coastguard Worker  // Return value:
310*d5c09012SAndroid Build Coastguard Worker  // A list of the customer's
311*d5c09012SAndroid Build Coastguard Worker  // [TransferableSku][google.cloud.channel.v1.TransferableSku].
312*d5c09012SAndroid Build Coastguard Worker  rpc ListTransferableSkus(ListTransferableSkusRequest)
313*d5c09012SAndroid Build Coastguard Worker      returns (ListTransferableSkusResponse) {
314*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
315*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*}:listTransferableSkus"
316*d5c09012SAndroid Build Coastguard Worker      body: "*"
317*d5c09012SAndroid Build Coastguard Worker    };
318*d5c09012SAndroid Build Coastguard Worker  }
319*d5c09012SAndroid Build Coastguard Worker
320*d5c09012SAndroid Build Coastguard Worker  // List [TransferableOffer][google.cloud.channel.v1.TransferableOffer]s of a
321*d5c09012SAndroid Build Coastguard Worker  // customer based on Cloud Identity ID or Customer Name in the request.
322*d5c09012SAndroid Build Coastguard Worker  //
323*d5c09012SAndroid Build Coastguard Worker  // Use this method when a reseller gets the entitlement information of an
324*d5c09012SAndroid Build Coastguard Worker  // unowned customer. The reseller should provide the customer's
325*d5c09012SAndroid Build Coastguard Worker  // Cloud Identity ID or Customer Name.
326*d5c09012SAndroid Build Coastguard Worker  //
327*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
328*d5c09012SAndroid Build Coastguard Worker  //
329*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED:
330*d5c09012SAndroid Build Coastguard Worker  //     * The customer doesn't belong to the reseller and has no auth token.
331*d5c09012SAndroid Build Coastguard Worker  //     * The customer provided incorrect reseller information when generating
332*d5c09012SAndroid Build Coastguard Worker  //     auth token.
333*d5c09012SAndroid Build Coastguard Worker  //     * The reseller account making the request is different
334*d5c09012SAndroid Build Coastguard Worker  //     from the reseller account in the query.
335*d5c09012SAndroid Build Coastguard Worker  //     * The reseller is not authorized to transact on this Product. See
336*d5c09012SAndroid Build Coastguard Worker  //     https://support.google.com/channelservices/answer/9759265
337*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
338*d5c09012SAndroid Build Coastguard Worker  //
339*d5c09012SAndroid Build Coastguard Worker  // Return value:
340*d5c09012SAndroid Build Coastguard Worker  // List of [TransferableOffer][google.cloud.channel.v1.TransferableOffer] for
341*d5c09012SAndroid Build Coastguard Worker  // the given customer and SKU.
342*d5c09012SAndroid Build Coastguard Worker  rpc ListTransferableOffers(ListTransferableOffersRequest)
343*d5c09012SAndroid Build Coastguard Worker      returns (ListTransferableOffersResponse) {
344*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
345*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*}:listTransferableOffers"
346*d5c09012SAndroid Build Coastguard Worker      body: "*"
347*d5c09012SAndroid Build Coastguard Worker    };
348*d5c09012SAndroid Build Coastguard Worker  }
349*d5c09012SAndroid Build Coastguard Worker
350*d5c09012SAndroid Build Coastguard Worker  // Returns the requested [Entitlement][google.cloud.channel.v1.Entitlement]
351*d5c09012SAndroid Build Coastguard Worker  // resource.
352*d5c09012SAndroid Build Coastguard Worker  //
353*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
354*d5c09012SAndroid Build Coastguard Worker  //
355*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
356*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
357*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The customer entitlement was not found.
358*d5c09012SAndroid Build Coastguard Worker  //
359*d5c09012SAndroid Build Coastguard Worker  // Return value:
360*d5c09012SAndroid Build Coastguard Worker  // The requested [Entitlement][google.cloud.channel.v1.Entitlement] resource.
361*d5c09012SAndroid Build Coastguard Worker  rpc GetEntitlement(GetEntitlementRequest) returns (Entitlement) {
362*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
363*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=accounts/*/customers/*/entitlements/*}"
364*d5c09012SAndroid Build Coastguard Worker    };
365*d5c09012SAndroid Build Coastguard Worker  }
366*d5c09012SAndroid Build Coastguard Worker
367*d5c09012SAndroid Build Coastguard Worker  // Creates an entitlement for a customer.
368*d5c09012SAndroid Build Coastguard Worker  //
369*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
370*d5c09012SAndroid Build Coastguard Worker  //
371*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED:
372*d5c09012SAndroid Build Coastguard Worker  //     * The customer doesn't belong to the reseller.
373*d5c09012SAndroid Build Coastguard Worker  //     * The reseller is not authorized to transact on this Product. See
374*d5c09012SAndroid Build Coastguard Worker  //     https://support.google.com/channelservices/answer/9759265
375*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT:
376*d5c09012SAndroid Build Coastguard Worker  //     * Required request parameters are missing or invalid.
377*d5c09012SAndroid Build Coastguard Worker  //     * There is already a customer entitlement for a SKU from the same
378*d5c09012SAndroid Build Coastguard Worker  //     product family.
379*d5c09012SAndroid Build Coastguard Worker  // * INVALID_VALUE: Make sure the OfferId is valid. If it is, contact
380*d5c09012SAndroid Build Coastguard Worker  // Google Channel support for further troubleshooting.
381*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The customer or offer resource was not found.
382*d5c09012SAndroid Build Coastguard Worker  // * ALREADY_EXISTS:
383*d5c09012SAndroid Build Coastguard Worker  //     * The SKU was already purchased for the customer.
384*d5c09012SAndroid Build Coastguard Worker  //     * The customer's primary email already exists. Retry
385*d5c09012SAndroid Build Coastguard Worker  //     after changing the customer's primary contact email.
386*d5c09012SAndroid Build Coastguard Worker  // * CONDITION_NOT_MET or FAILED_PRECONDITION:
387*d5c09012SAndroid Build Coastguard Worker  //     * The domain required for purchasing a SKU has not been verified.
388*d5c09012SAndroid Build Coastguard Worker  //     * A pre-requisite SKU required to purchase an Add-On SKU is missing.
389*d5c09012SAndroid Build Coastguard Worker  //     For example, Google Workspace Business Starter is required to purchase
390*d5c09012SAndroid Build Coastguard Worker  //     Vault or Drive.
391*d5c09012SAndroid Build Coastguard Worker  //     * (Developer accounts only) Reseller and resold domain must meet the
392*d5c09012SAndroid Build Coastguard Worker  //     following naming requirements:
393*d5c09012SAndroid Build Coastguard Worker  //         * Domain names must start with goog-test.
394*d5c09012SAndroid Build Coastguard Worker  //         * Domain names must include the reseller domain.
395*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
396*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
397*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
398*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
399*d5c09012SAndroid Build Coastguard Worker  //
400*d5c09012SAndroid Build Coastguard Worker  // Return value:
401*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
402*d5c09012SAndroid Build Coastguard Worker  //
403*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
404*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
405*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
406*d5c09012SAndroid Build Coastguard Worker  rpc CreateEntitlement(CreateEntitlementRequest)
407*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
408*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
409*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*/customers/*}/entitlements"
410*d5c09012SAndroid Build Coastguard Worker      body: "*"
411*d5c09012SAndroid Build Coastguard Worker    };
412*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
413*d5c09012SAndroid Build Coastguard Worker      response_type: "Entitlement"
414*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
415*d5c09012SAndroid Build Coastguard Worker    };
416*d5c09012SAndroid Build Coastguard Worker  }
417*d5c09012SAndroid Build Coastguard Worker
418*d5c09012SAndroid Build Coastguard Worker  // Change parameters of the entitlement.
419*d5c09012SAndroid Build Coastguard Worker  //
420*d5c09012SAndroid Build Coastguard Worker  // An entitlement update is a long-running operation and it updates the
421*d5c09012SAndroid Build Coastguard Worker  // entitlement as a result of fulfillment.
422*d5c09012SAndroid Build Coastguard Worker  //
423*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
424*d5c09012SAndroid Build Coastguard Worker  //
425*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
426*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
427*d5c09012SAndroid Build Coastguard Worker  // For example, the number of seats being changed is greater than the allowed
428*d5c09012SAndroid Build Coastguard Worker  // number of max seats, or decreasing seats for a commitment based plan.
429*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Entitlement resource not found.
430*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
431*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
432*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
433*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
434*d5c09012SAndroid Build Coastguard Worker  //
435*d5c09012SAndroid Build Coastguard Worker  // Return value:
436*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
437*d5c09012SAndroid Build Coastguard Worker  //
438*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
439*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
440*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
441*d5c09012SAndroid Build Coastguard Worker  rpc ChangeParameters(ChangeParametersRequest)
442*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
443*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
444*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=accounts/*/customers/*/entitlements/*}:changeParameters"
445*d5c09012SAndroid Build Coastguard Worker      body: "*"
446*d5c09012SAndroid Build Coastguard Worker    };
447*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
448*d5c09012SAndroid Build Coastguard Worker      response_type: "Entitlement"
449*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
450*d5c09012SAndroid Build Coastguard Worker    };
451*d5c09012SAndroid Build Coastguard Worker  }
452*d5c09012SAndroid Build Coastguard Worker
453*d5c09012SAndroid Build Coastguard Worker  // Updates the renewal settings for an existing customer entitlement.
454*d5c09012SAndroid Build Coastguard Worker  //
455*d5c09012SAndroid Build Coastguard Worker  // An entitlement update is a long-running operation and it updates the
456*d5c09012SAndroid Build Coastguard Worker  // entitlement as a result of fulfillment.
457*d5c09012SAndroid Build Coastguard Worker  //
458*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
459*d5c09012SAndroid Build Coastguard Worker  //
460*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
461*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
462*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Entitlement resource not found.
463*d5c09012SAndroid Build Coastguard Worker  // * NOT_COMMITMENT_PLAN: Renewal Settings are only applicable for a
464*d5c09012SAndroid Build Coastguard Worker  // commitment plan. Can't enable or disable renewals for non-commitment plans.
465*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
466*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
467*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
468*d5c09012SAndroid Build Coastguard Worker  //   Contact Cloud Channel support.
469*d5c09012SAndroid Build Coastguard Worker  //
470*d5c09012SAndroid Build Coastguard Worker  // Return value:
471*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
472*d5c09012SAndroid Build Coastguard Worker  //
473*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
474*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
475*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
476*d5c09012SAndroid Build Coastguard Worker  rpc ChangeRenewalSettings(ChangeRenewalSettingsRequest)
477*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
478*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
479*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=accounts/*/customers/*/entitlements/*}:changeRenewalSettings"
480*d5c09012SAndroid Build Coastguard Worker      body: "*"
481*d5c09012SAndroid Build Coastguard Worker    };
482*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
483*d5c09012SAndroid Build Coastguard Worker      response_type: "Entitlement"
484*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
485*d5c09012SAndroid Build Coastguard Worker    };
486*d5c09012SAndroid Build Coastguard Worker  }
487*d5c09012SAndroid Build Coastguard Worker
488*d5c09012SAndroid Build Coastguard Worker  // Updates the Offer for an existing customer entitlement.
489*d5c09012SAndroid Build Coastguard Worker  //
490*d5c09012SAndroid Build Coastguard Worker  // An entitlement update is a long-running operation and it updates the
491*d5c09012SAndroid Build Coastguard Worker  // entitlement as a result of fulfillment.
492*d5c09012SAndroid Build Coastguard Worker  //
493*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
494*d5c09012SAndroid Build Coastguard Worker  //
495*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
496*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
497*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Offer or Entitlement resource not found.
498*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
499*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
500*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
501*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
502*d5c09012SAndroid Build Coastguard Worker  //
503*d5c09012SAndroid Build Coastguard Worker  // Return value:
504*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
505*d5c09012SAndroid Build Coastguard Worker  //
506*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
507*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
508*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
509*d5c09012SAndroid Build Coastguard Worker  rpc ChangeOffer(ChangeOfferRequest) returns (google.longrunning.Operation) {
510*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
511*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=accounts/*/customers/*/entitlements/*}:changeOffer"
512*d5c09012SAndroid Build Coastguard Worker      body: "*"
513*d5c09012SAndroid Build Coastguard Worker    };
514*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
515*d5c09012SAndroid Build Coastguard Worker      response_type: "Entitlement"
516*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
517*d5c09012SAndroid Build Coastguard Worker    };
518*d5c09012SAndroid Build Coastguard Worker  }
519*d5c09012SAndroid Build Coastguard Worker
520*d5c09012SAndroid Build Coastguard Worker  // Starts paid service for a trial entitlement.
521*d5c09012SAndroid Build Coastguard Worker  //
522*d5c09012SAndroid Build Coastguard Worker  // Starts paid service for a trial entitlement immediately. This method is
523*d5c09012SAndroid Build Coastguard Worker  // only applicable if a plan is set up for a trial entitlement but has some
524*d5c09012SAndroid Build Coastguard Worker  // trial days remaining.
525*d5c09012SAndroid Build Coastguard Worker  //
526*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
527*d5c09012SAndroid Build Coastguard Worker  //
528*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
529*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
530*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Entitlement resource not found.
531*d5c09012SAndroid Build Coastguard Worker  // * FAILED_PRECONDITION/NOT_IN_TRIAL: This method only works for
532*d5c09012SAndroid Build Coastguard Worker  // entitlement on trial plans.
533*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
534*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
535*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
536*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
537*d5c09012SAndroid Build Coastguard Worker  //
538*d5c09012SAndroid Build Coastguard Worker  // Return value:
539*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
540*d5c09012SAndroid Build Coastguard Worker  //
541*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
542*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
543*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
544*d5c09012SAndroid Build Coastguard Worker  rpc StartPaidService(StartPaidServiceRequest)
545*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
546*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
547*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=accounts/*/customers/*/entitlements/*}:startPaidService"
548*d5c09012SAndroid Build Coastguard Worker      body: "*"
549*d5c09012SAndroid Build Coastguard Worker    };
550*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
551*d5c09012SAndroid Build Coastguard Worker      response_type: "Entitlement"
552*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
553*d5c09012SAndroid Build Coastguard Worker    };
554*d5c09012SAndroid Build Coastguard Worker  }
555*d5c09012SAndroid Build Coastguard Worker
556*d5c09012SAndroid Build Coastguard Worker  // Suspends a previously fulfilled entitlement.
557*d5c09012SAndroid Build Coastguard Worker  //
558*d5c09012SAndroid Build Coastguard Worker  // An entitlement suspension is a long-running operation.
559*d5c09012SAndroid Build Coastguard Worker  //
560*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
561*d5c09012SAndroid Build Coastguard Worker  //
562*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
563*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
564*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Entitlement resource not found.
565*d5c09012SAndroid Build Coastguard Worker  // * NOT_ACTIVE: Entitlement is not active.
566*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
567*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
568*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
569*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
570*d5c09012SAndroid Build Coastguard Worker  //
571*d5c09012SAndroid Build Coastguard Worker  // Return value:
572*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
573*d5c09012SAndroid Build Coastguard Worker  //
574*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
575*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
576*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
577*d5c09012SAndroid Build Coastguard Worker  rpc SuspendEntitlement(SuspendEntitlementRequest)
578*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
579*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
580*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=accounts/*/customers/*/entitlements/*}:suspend"
581*d5c09012SAndroid Build Coastguard Worker      body: "*"
582*d5c09012SAndroid Build Coastguard Worker    };
583*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
584*d5c09012SAndroid Build Coastguard Worker      response_type: "Entitlement"
585*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
586*d5c09012SAndroid Build Coastguard Worker    };
587*d5c09012SAndroid Build Coastguard Worker  }
588*d5c09012SAndroid Build Coastguard Worker
589*d5c09012SAndroid Build Coastguard Worker  // Cancels a previously fulfilled entitlement.
590*d5c09012SAndroid Build Coastguard Worker  //
591*d5c09012SAndroid Build Coastguard Worker  // An entitlement cancellation is a long-running operation.
592*d5c09012SAndroid Build Coastguard Worker  //
593*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
594*d5c09012SAndroid Build Coastguard Worker  //
595*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
596*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
597*d5c09012SAndroid Build Coastguard Worker  // * FAILED_PRECONDITION: There are Google Cloud projects linked to the
598*d5c09012SAndroid Build Coastguard Worker  // Google Cloud entitlement's Cloud Billing subaccount.
599*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
600*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Entitlement resource not found.
601*d5c09012SAndroid Build Coastguard Worker  // * DELETION_TYPE_NOT_ALLOWED: Cancel is only allowed for Google Workspace
602*d5c09012SAndroid Build Coastguard Worker  // add-ons, or entitlements for Google Cloud's development platform.
603*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
604*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
605*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
606*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
607*d5c09012SAndroid Build Coastguard Worker  //
608*d5c09012SAndroid Build Coastguard Worker  // Return value:
609*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
610*d5c09012SAndroid Build Coastguard Worker  //
611*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
612*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The response will contain
613*d5c09012SAndroid Build Coastguard Worker  // google.protobuf.Empty on success. The Operation metadata will contain an
614*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
615*d5c09012SAndroid Build Coastguard Worker  rpc CancelEntitlement(CancelEntitlementRequest)
616*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
617*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
618*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=accounts/*/customers/*/entitlements/*}:cancel"
619*d5c09012SAndroid Build Coastguard Worker      body: "*"
620*d5c09012SAndroid Build Coastguard Worker    };
621*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
622*d5c09012SAndroid Build Coastguard Worker      response_type: "google.protobuf.Empty"
623*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
624*d5c09012SAndroid Build Coastguard Worker    };
625*d5c09012SAndroid Build Coastguard Worker  }
626*d5c09012SAndroid Build Coastguard Worker
627*d5c09012SAndroid Build Coastguard Worker  // Activates a previously suspended entitlement. Entitlements suspended for
628*d5c09012SAndroid Build Coastguard Worker  // pending ToS acceptance can't be activated using this method.
629*d5c09012SAndroid Build Coastguard Worker  //
630*d5c09012SAndroid Build Coastguard Worker  // An entitlement activation is a long-running operation and it updates
631*d5c09012SAndroid Build Coastguard Worker  // the state of the customer entitlement.
632*d5c09012SAndroid Build Coastguard Worker  //
633*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
634*d5c09012SAndroid Build Coastguard Worker  //
635*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
636*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
637*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
638*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Entitlement resource not found.
639*d5c09012SAndroid Build Coastguard Worker  // * SUSPENSION_NOT_RESELLER_INITIATED: Can only activate reseller-initiated
640*d5c09012SAndroid Build Coastguard Worker  // suspensions and entitlements that have accepted the TOS.
641*d5c09012SAndroid Build Coastguard Worker  // * NOT_SUSPENDED: Can only activate suspended entitlements not in an ACTIVE
642*d5c09012SAndroid Build Coastguard Worker  // state.
643*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
644*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
645*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
646*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
647*d5c09012SAndroid Build Coastguard Worker  //
648*d5c09012SAndroid Build Coastguard Worker  // Return value:
649*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
650*d5c09012SAndroid Build Coastguard Worker  //
651*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
652*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
653*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
654*d5c09012SAndroid Build Coastguard Worker  rpc ActivateEntitlement(ActivateEntitlementRequest)
655*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
656*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
657*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{name=accounts/*/customers/*/entitlements/*}:activate"
658*d5c09012SAndroid Build Coastguard Worker      body: "*"
659*d5c09012SAndroid Build Coastguard Worker    };
660*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
661*d5c09012SAndroid Build Coastguard Worker      response_type: "Entitlement"
662*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
663*d5c09012SAndroid Build Coastguard Worker    };
664*d5c09012SAndroid Build Coastguard Worker  }
665*d5c09012SAndroid Build Coastguard Worker
666*d5c09012SAndroid Build Coastguard Worker  // Transfers customer entitlements to new reseller.
667*d5c09012SAndroid Build Coastguard Worker  //
668*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
669*d5c09012SAndroid Build Coastguard Worker  //
670*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED:
671*d5c09012SAndroid Build Coastguard Worker  //     * The customer doesn't belong to the reseller.
672*d5c09012SAndroid Build Coastguard Worker  //     * The reseller is not authorized to transact on this Product. See
673*d5c09012SAndroid Build Coastguard Worker  //     https://support.google.com/channelservices/answer/9759265
674*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
675*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The customer or offer resource was not found.
676*d5c09012SAndroid Build Coastguard Worker  // * ALREADY_EXISTS: The SKU was already transferred for the customer.
677*d5c09012SAndroid Build Coastguard Worker  // * CONDITION_NOT_MET or FAILED_PRECONDITION:
678*d5c09012SAndroid Build Coastguard Worker  //     * The SKU requires domain verification to transfer, but the domain is
679*d5c09012SAndroid Build Coastguard Worker  //     not verified.
680*d5c09012SAndroid Build Coastguard Worker  //     * An Add-On SKU (example, Vault or Drive) is missing the
681*d5c09012SAndroid Build Coastguard Worker  //     pre-requisite SKU (example, G Suite Basic).
682*d5c09012SAndroid Build Coastguard Worker  //     * (Developer accounts only) Reseller and resold domain must meet the
683*d5c09012SAndroid Build Coastguard Worker  //     following naming requirements:
684*d5c09012SAndroid Build Coastguard Worker  //         * Domain names must start with goog-test.
685*d5c09012SAndroid Build Coastguard Worker  //         * Domain names must include the reseller domain.
686*d5c09012SAndroid Build Coastguard Worker  //     * Specify all transferring entitlements.
687*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
688*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
689*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
690*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
691*d5c09012SAndroid Build Coastguard Worker  //
692*d5c09012SAndroid Build Coastguard Worker  // Return value:
693*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
694*d5c09012SAndroid Build Coastguard Worker  //
695*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
696*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The Operation metadata will contain an
697*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
698*d5c09012SAndroid Build Coastguard Worker  rpc TransferEntitlements(TransferEntitlementsRequest)
699*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
700*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
701*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*/customers/*}:transferEntitlements"
702*d5c09012SAndroid Build Coastguard Worker      body: "*"
703*d5c09012SAndroid Build Coastguard Worker    };
704*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
705*d5c09012SAndroid Build Coastguard Worker      response_type: "TransferEntitlementsResponse"
706*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
707*d5c09012SAndroid Build Coastguard Worker    };
708*d5c09012SAndroid Build Coastguard Worker  }
709*d5c09012SAndroid Build Coastguard Worker
710*d5c09012SAndroid Build Coastguard Worker  // Transfers customer entitlements from their current reseller to Google.
711*d5c09012SAndroid Build Coastguard Worker  //
712*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
713*d5c09012SAndroid Build Coastguard Worker  //
714*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
715*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
716*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The customer or offer resource was not found.
717*d5c09012SAndroid Build Coastguard Worker  // * ALREADY_EXISTS: The SKU was already transferred for the customer.
718*d5c09012SAndroid Build Coastguard Worker  // * CONDITION_NOT_MET or FAILED_PRECONDITION:
719*d5c09012SAndroid Build Coastguard Worker  //     * The SKU requires domain verification to transfer, but the domain is
720*d5c09012SAndroid Build Coastguard Worker  //     not verified.
721*d5c09012SAndroid Build Coastguard Worker  //     * An Add-On SKU (example, Vault or Drive) is missing the
722*d5c09012SAndroid Build Coastguard Worker  //     pre-requisite SKU (example, G Suite Basic).
723*d5c09012SAndroid Build Coastguard Worker  //     * (Developer accounts only) Reseller and resold domain must meet the
724*d5c09012SAndroid Build Coastguard Worker  //     following naming requirements:
725*d5c09012SAndroid Build Coastguard Worker  //         * Domain names must start with goog-test.
726*d5c09012SAndroid Build Coastguard Worker  //         * Domain names must include the reseller domain.
727*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
728*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
729*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
730*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
731*d5c09012SAndroid Build Coastguard Worker  //
732*d5c09012SAndroid Build Coastguard Worker  // Return value:
733*d5c09012SAndroid Build Coastguard Worker  // The ID of a long-running operation.
734*d5c09012SAndroid Build Coastguard Worker  //
735*d5c09012SAndroid Build Coastguard Worker  // To get the results of the operation, call the GetOperation method of
736*d5c09012SAndroid Build Coastguard Worker  // CloudChannelOperationsService. The response will contain
737*d5c09012SAndroid Build Coastguard Worker  // google.protobuf.Empty on success. The Operation metadata will contain an
738*d5c09012SAndroid Build Coastguard Worker  // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
739*d5c09012SAndroid Build Coastguard Worker  rpc TransferEntitlementsToGoogle(TransferEntitlementsToGoogleRequest)
740*d5c09012SAndroid Build Coastguard Worker      returns (google.longrunning.Operation) {
741*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
742*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*/customers/*}:transferEntitlementsToGoogle"
743*d5c09012SAndroid Build Coastguard Worker      body: "*"
744*d5c09012SAndroid Build Coastguard Worker    };
745*d5c09012SAndroid Build Coastguard Worker    option (google.longrunning.operation_info) = {
746*d5c09012SAndroid Build Coastguard Worker      response_type: "google.protobuf.Empty"
747*d5c09012SAndroid Build Coastguard Worker      metadata_type: "OperationMetadata"
748*d5c09012SAndroid Build Coastguard Worker    };
749*d5c09012SAndroid Build Coastguard Worker  }
750*d5c09012SAndroid Build Coastguard Worker
751*d5c09012SAndroid Build Coastguard Worker  // List [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]s
752*d5c09012SAndroid Build Coastguard Worker  // belonging to a distributor. You must be a distributor to call this method.
753*d5c09012SAndroid Build Coastguard Worker  //
754*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
755*d5c09012SAndroid Build Coastguard Worker  //
756*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
757*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
758*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
759*d5c09012SAndroid Build Coastguard Worker  //
760*d5c09012SAndroid Build Coastguard Worker  // Return value:
761*d5c09012SAndroid Build Coastguard Worker  // The list of the distributor account's
762*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resources.
763*d5c09012SAndroid Build Coastguard Worker  rpc ListChannelPartnerLinks(ListChannelPartnerLinksRequest)
764*d5c09012SAndroid Build Coastguard Worker      returns (ListChannelPartnerLinksResponse) {
765*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
766*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*}/channelPartnerLinks"
767*d5c09012SAndroid Build Coastguard Worker    };
768*d5c09012SAndroid Build Coastguard Worker  }
769*d5c09012SAndroid Build Coastguard Worker
770*d5c09012SAndroid Build Coastguard Worker  // Returns the requested
771*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource.
772*d5c09012SAndroid Build Coastguard Worker  // You must be a distributor to call this method.
773*d5c09012SAndroid Build Coastguard Worker  //
774*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
775*d5c09012SAndroid Build Coastguard Worker  //
776*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
777*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
778*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
779*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: ChannelPartnerLink resource not found because of an
780*d5c09012SAndroid Build Coastguard Worker  // invalid channel partner link name.
781*d5c09012SAndroid Build Coastguard Worker  //
782*d5c09012SAndroid Build Coastguard Worker  // Return value:
783*d5c09012SAndroid Build Coastguard Worker  // The [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]
784*d5c09012SAndroid Build Coastguard Worker  // resource.
785*d5c09012SAndroid Build Coastguard Worker  rpc GetChannelPartnerLink(GetChannelPartnerLinkRequest)
786*d5c09012SAndroid Build Coastguard Worker      returns (ChannelPartnerLink) {
787*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
788*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=accounts/*/channelPartnerLinks/*}"
789*d5c09012SAndroid Build Coastguard Worker    };
790*d5c09012SAndroid Build Coastguard Worker  }
791*d5c09012SAndroid Build Coastguard Worker
792*d5c09012SAndroid Build Coastguard Worker  // Initiates a channel partner link between a distributor and a reseller, or
793*d5c09012SAndroid Build Coastguard Worker  // between resellers in an n-tier reseller channel.
794*d5c09012SAndroid Build Coastguard Worker  // Invited partners need to follow the invite_link_uri provided in the
795*d5c09012SAndroid Build Coastguard Worker  // response to accept. After accepting the invitation, a link is set up
796*d5c09012SAndroid Build Coastguard Worker  // between the two parties.
797*d5c09012SAndroid Build Coastguard Worker  // You must be a distributor to call this method.
798*d5c09012SAndroid Build Coastguard Worker  //
799*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
800*d5c09012SAndroid Build Coastguard Worker  //
801*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
802*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
803*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
804*d5c09012SAndroid Build Coastguard Worker  // * ALREADY_EXISTS: The ChannelPartnerLink sent in the request already
805*d5c09012SAndroid Build Coastguard Worker  // exists.
806*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: No Cloud Identity customer exists for provided domain.
807*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
808*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
809*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
810*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
811*d5c09012SAndroid Build Coastguard Worker  //
812*d5c09012SAndroid Build Coastguard Worker  // Return value:
813*d5c09012SAndroid Build Coastguard Worker  // The new [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]
814*d5c09012SAndroid Build Coastguard Worker  // resource.
815*d5c09012SAndroid Build Coastguard Worker  rpc CreateChannelPartnerLink(CreateChannelPartnerLinkRequest)
816*d5c09012SAndroid Build Coastguard Worker      returns (ChannelPartnerLink) {
817*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
818*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*}/channelPartnerLinks"
819*d5c09012SAndroid Build Coastguard Worker      body: "channel_partner_link"
820*d5c09012SAndroid Build Coastguard Worker    };
821*d5c09012SAndroid Build Coastguard Worker  }
822*d5c09012SAndroid Build Coastguard Worker
823*d5c09012SAndroid Build Coastguard Worker  // Updates a channel partner link. Distributors call this method to change a
824*d5c09012SAndroid Build Coastguard Worker  // link's status. For example, to suspend a partner link.
825*d5c09012SAndroid Build Coastguard Worker  // You must be a distributor to call this method.
826*d5c09012SAndroid Build Coastguard Worker  //
827*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
828*d5c09012SAndroid Build Coastguard Worker  //
829*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request is different
830*d5c09012SAndroid Build Coastguard Worker  // from the reseller account in the API request.
831*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT:
832*d5c09012SAndroid Build Coastguard Worker  //     * Required request parameters are missing or invalid.
833*d5c09012SAndroid Build Coastguard Worker  //     * Link state cannot change from invited to active or suspended.
834*d5c09012SAndroid Build Coastguard Worker  //     * Cannot send reseller_cloud_identity_id, invite_url, or name in update
835*d5c09012SAndroid Build Coastguard Worker  //     mask.
836*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: ChannelPartnerLink resource not found.
837*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
838*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
839*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
840*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
841*d5c09012SAndroid Build Coastguard Worker  //
842*d5c09012SAndroid Build Coastguard Worker  // Return value:
843*d5c09012SAndroid Build Coastguard Worker  // The updated
844*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource.
845*d5c09012SAndroid Build Coastguard Worker  rpc UpdateChannelPartnerLink(UpdateChannelPartnerLinkRequest)
846*d5c09012SAndroid Build Coastguard Worker      returns (ChannelPartnerLink) {
847*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
848*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{name=accounts/*/channelPartnerLinks/*}"
849*d5c09012SAndroid Build Coastguard Worker      body: "*"
850*d5c09012SAndroid Build Coastguard Worker    };
851*d5c09012SAndroid Build Coastguard Worker  }
852*d5c09012SAndroid Build Coastguard Worker
853*d5c09012SAndroid Build Coastguard Worker  // Gets information about how a Reseller modifies their bill before sending
854*d5c09012SAndroid Build Coastguard Worker  // it to a Customer.
855*d5c09012SAndroid Build Coastguard Worker  //
856*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
857*d5c09012SAndroid Build Coastguard Worker  //
858*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
859*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
860*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
861*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
862*d5c09012SAndroid Build Coastguard Worker  // was not found.
863*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
864*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
865*d5c09012SAndroid Build Coastguard Worker  //
866*d5c09012SAndroid Build Coastguard Worker  // Return Value:
867*d5c09012SAndroid Build Coastguard Worker  // If successful, the
868*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
869*d5c09012SAndroid Build Coastguard Worker  // resource, otherwise returns an error.
870*d5c09012SAndroid Build Coastguard Worker  rpc GetCustomerRepricingConfig(GetCustomerRepricingConfigRequest)
871*d5c09012SAndroid Build Coastguard Worker      returns (CustomerRepricingConfig) {
872*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
873*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=accounts/*/customers/*/customerRepricingConfigs/*}"
874*d5c09012SAndroid Build Coastguard Worker    };
875*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
876*d5c09012SAndroid Build Coastguard Worker  }
877*d5c09012SAndroid Build Coastguard Worker
878*d5c09012SAndroid Build Coastguard Worker  // Lists information about how a Reseller modifies their bill before sending
879*d5c09012SAndroid Build Coastguard Worker  // it to a Customer.
880*d5c09012SAndroid Build Coastguard Worker  //
881*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
882*d5c09012SAndroid Build Coastguard Worker  //
883*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
884*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
885*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
886*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
887*d5c09012SAndroid Build Coastguard Worker  // specified does not exist or is not associated with the given account.
888*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
889*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
890*d5c09012SAndroid Build Coastguard Worker  //
891*d5c09012SAndroid Build Coastguard Worker  // Return Value:
892*d5c09012SAndroid Build Coastguard Worker  // If successful, the
893*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
894*d5c09012SAndroid Build Coastguard Worker  // resources. The data for each resource is displayed in the ascending order
895*d5c09012SAndroid Build Coastguard Worker  // of:
896*d5c09012SAndroid Build Coastguard Worker  //
897*d5c09012SAndroid Build Coastguard Worker  // * Customer ID
898*d5c09012SAndroid Build Coastguard Worker  // * [RepricingConfig.EntitlementGranularity.entitlement][google.cloud.channel.v1.RepricingConfig.EntitlementGranularity.entitlement]
899*d5c09012SAndroid Build Coastguard Worker  // * [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
900*d5c09012SAndroid Build Coastguard Worker  // * [CustomerRepricingConfig.update_time][google.cloud.channel.v1.CustomerRepricingConfig.update_time]
901*d5c09012SAndroid Build Coastguard Worker  //
902*d5c09012SAndroid Build Coastguard Worker  // If unsuccessful, returns an error.
903*d5c09012SAndroid Build Coastguard Worker  rpc ListCustomerRepricingConfigs(ListCustomerRepricingConfigsRequest)
904*d5c09012SAndroid Build Coastguard Worker      returns (ListCustomerRepricingConfigsResponse) {
905*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
906*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*/customers/*}/customerRepricingConfigs"
907*d5c09012SAndroid Build Coastguard Worker    };
908*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
909*d5c09012SAndroid Build Coastguard Worker  }
910*d5c09012SAndroid Build Coastguard Worker
911*d5c09012SAndroid Build Coastguard Worker  // Creates a CustomerRepricingConfig. Call this method to set modifications
912*d5c09012SAndroid Build Coastguard Worker  // for a specific customer's bill. You can only create configs if the
913*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
914*d5c09012SAndroid Build Coastguard Worker  // is a future month. If needed, you can create a config for the current
915*d5c09012SAndroid Build Coastguard Worker  // month, with some restrictions.
916*d5c09012SAndroid Build Coastguard Worker  //
917*d5c09012SAndroid Build Coastguard Worker  // When creating a config for a future month, make sure there are no existing
918*d5c09012SAndroid Build Coastguard Worker  // configs for that
919*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
920*d5c09012SAndroid Build Coastguard Worker  //
921*d5c09012SAndroid Build Coastguard Worker  // The following restrictions are for creating configs in the current month.
922*d5c09012SAndroid Build Coastguard Worker  //
923*d5c09012SAndroid Build Coastguard Worker  // * This functionality is reserved for recovering from an erroneous config,
924*d5c09012SAndroid Build Coastguard Worker  // and should not be used for regular business cases.
925*d5c09012SAndroid Build Coastguard Worker  // * The new config will not modify exports used with other configs.
926*d5c09012SAndroid Build Coastguard Worker  // Changes to the config may be immediate, but may take up to 24 hours.
927*d5c09012SAndroid Build Coastguard Worker  // * There is a limit of ten configs for any
928*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.EntitlementGranularity.entitlement][google.cloud.channel.v1.RepricingConfig.EntitlementGranularity.entitlement],
929*d5c09012SAndroid Build Coastguard Worker  // for any
930*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
931*d5c09012SAndroid Build Coastguard Worker  // * The contained
932*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig.repricing_config][google.cloud.channel.v1.CustomerRepricingConfig.repricing_config]
933*d5c09012SAndroid Build Coastguard Worker  // value must be different from the value used in the current config for a
934*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.EntitlementGranularity.entitlement][google.cloud.channel.v1.RepricingConfig.EntitlementGranularity.entitlement].
935*d5c09012SAndroid Build Coastguard Worker  //
936*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
937*d5c09012SAndroid Build Coastguard Worker  //
938*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
939*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
940*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Missing or invalid required parameters in the
941*d5c09012SAndroid Build Coastguard Worker  // request. Also displays if the updated config is for the current month or
942*d5c09012SAndroid Build Coastguard Worker  // past months.
943*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
944*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
945*d5c09012SAndroid Build Coastguard Worker  // specified does not exist or is not associated with the given account.
946*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
947*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
948*d5c09012SAndroid Build Coastguard Worker  //
949*d5c09012SAndroid Build Coastguard Worker  // Return Value:
950*d5c09012SAndroid Build Coastguard Worker  // If successful, the updated
951*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
952*d5c09012SAndroid Build Coastguard Worker  // resource, otherwise returns an error.
953*d5c09012SAndroid Build Coastguard Worker  rpc CreateCustomerRepricingConfig(CreateCustomerRepricingConfigRequest)
954*d5c09012SAndroid Build Coastguard Worker      returns (CustomerRepricingConfig) {
955*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
956*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*/customers/*}/customerRepricingConfigs"
957*d5c09012SAndroid Build Coastguard Worker      body: "customer_repricing_config"
958*d5c09012SAndroid Build Coastguard Worker    };
959*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent,customer_repricing_config";
960*d5c09012SAndroid Build Coastguard Worker  }
961*d5c09012SAndroid Build Coastguard Worker
962*d5c09012SAndroid Build Coastguard Worker  // Updates a CustomerRepricingConfig. Call this method to set modifications
963*d5c09012SAndroid Build Coastguard Worker  // for a specific customer's bill. This method overwrites the existing
964*d5c09012SAndroid Build Coastguard Worker  // CustomerRepricingConfig.
965*d5c09012SAndroid Build Coastguard Worker  //
966*d5c09012SAndroid Build Coastguard Worker  // You can only update configs if the
967*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
968*d5c09012SAndroid Build Coastguard Worker  // is a future month. To make changes to configs for the current month, use
969*d5c09012SAndroid Build Coastguard Worker  // [CreateCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateCustomerRepricingConfig],
970*d5c09012SAndroid Build Coastguard Worker  // taking note of its restrictions. You cannot update the
971*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
972*d5c09012SAndroid Build Coastguard Worker  //
973*d5c09012SAndroid Build Coastguard Worker  // When updating a config in the future:
974*d5c09012SAndroid Build Coastguard Worker  //
975*d5c09012SAndroid Build Coastguard Worker  // * This config must already exist.
976*d5c09012SAndroid Build Coastguard Worker  //
977*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
978*d5c09012SAndroid Build Coastguard Worker  //
979*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
980*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
981*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Missing or invalid required parameters in the
982*d5c09012SAndroid Build Coastguard Worker  // request. Also displays if the updated config is for the current month or
983*d5c09012SAndroid Build Coastguard Worker  // past months.
984*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
985*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
986*d5c09012SAndroid Build Coastguard Worker  // specified does not exist or is not associated with the given account.
987*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
988*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
989*d5c09012SAndroid Build Coastguard Worker  //
990*d5c09012SAndroid Build Coastguard Worker  // Return Value:
991*d5c09012SAndroid Build Coastguard Worker  // If successful, the updated
992*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
993*d5c09012SAndroid Build Coastguard Worker  // resource, otherwise returns an error.
994*d5c09012SAndroid Build Coastguard Worker  rpc UpdateCustomerRepricingConfig(UpdateCustomerRepricingConfigRequest)
995*d5c09012SAndroid Build Coastguard Worker      returns (CustomerRepricingConfig) {
996*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
997*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{customer_repricing_config.name=accounts/*/customers/*/customerRepricingConfigs/*}"
998*d5c09012SAndroid Build Coastguard Worker      body: "customer_repricing_config"
999*d5c09012SAndroid Build Coastguard Worker    };
1000*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "customer_repricing_config";
1001*d5c09012SAndroid Build Coastguard Worker  }
1002*d5c09012SAndroid Build Coastguard Worker
1003*d5c09012SAndroid Build Coastguard Worker  // Deletes the given
1004*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
1005*d5c09012SAndroid Build Coastguard Worker  // permanently. You can only delete configs if their
1006*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
1007*d5c09012SAndroid Build Coastguard Worker  // is set to a date after the current month.
1008*d5c09012SAndroid Build Coastguard Worker  //
1009*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1010*d5c09012SAndroid Build Coastguard Worker  //
1011*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The account making the request does not own
1012*d5c09012SAndroid Build Coastguard Worker  // this customer.
1013*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1014*d5c09012SAndroid Build Coastguard Worker  // * FAILED_PRECONDITION: The
1015*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
1016*d5c09012SAndroid Build Coastguard Worker  // is active or in the past.
1017*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: No
1018*d5c09012SAndroid Build Coastguard Worker  // [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig]
1019*d5c09012SAndroid Build Coastguard Worker  // found for the name in the request.
1020*d5c09012SAndroid Build Coastguard Worker  rpc DeleteCustomerRepricingConfig(DeleteCustomerRepricingConfigRequest)
1021*d5c09012SAndroid Build Coastguard Worker      returns (google.protobuf.Empty) {
1022*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1023*d5c09012SAndroid Build Coastguard Worker      delete: "/v1/{name=accounts/*/customers/*/customerRepricingConfigs/*}"
1024*d5c09012SAndroid Build Coastguard Worker    };
1025*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
1026*d5c09012SAndroid Build Coastguard Worker  }
1027*d5c09012SAndroid Build Coastguard Worker
1028*d5c09012SAndroid Build Coastguard Worker  // Gets information about how a Distributor modifies their bill before sending
1029*d5c09012SAndroid Build Coastguard Worker  // it to a ChannelPartner.
1030*d5c09012SAndroid Build Coastguard Worker  //
1031*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
1032*d5c09012SAndroid Build Coastguard Worker  //
1033*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
1034*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
1035*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
1036*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1037*d5c09012SAndroid Build Coastguard Worker  // was not found.
1038*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
1039*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
1040*d5c09012SAndroid Build Coastguard Worker  //
1041*d5c09012SAndroid Build Coastguard Worker  // Return Value:
1042*d5c09012SAndroid Build Coastguard Worker  // If successful, the
1043*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1044*d5c09012SAndroid Build Coastguard Worker  // resource, otherwise returns an error.
1045*d5c09012SAndroid Build Coastguard Worker  rpc GetChannelPartnerRepricingConfig(GetChannelPartnerRepricingConfigRequest)
1046*d5c09012SAndroid Build Coastguard Worker      returns (ChannelPartnerRepricingConfig) {
1047*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1048*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{name=accounts/*/channelPartnerLinks/*/channelPartnerRepricingConfigs/*}"
1049*d5c09012SAndroid Build Coastguard Worker    };
1050*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
1051*d5c09012SAndroid Build Coastguard Worker  }
1052*d5c09012SAndroid Build Coastguard Worker
1053*d5c09012SAndroid Build Coastguard Worker  // Lists information about how a Reseller modifies their bill before sending
1054*d5c09012SAndroid Build Coastguard Worker  // it to a ChannelPartner.
1055*d5c09012SAndroid Build Coastguard Worker  //
1056*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
1057*d5c09012SAndroid Build Coastguard Worker  //
1058*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
1059*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
1060*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
1061*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1062*d5c09012SAndroid Build Coastguard Worker  // specified does not exist or is not associated with the given account.
1063*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
1064*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
1065*d5c09012SAndroid Build Coastguard Worker  //
1066*d5c09012SAndroid Build Coastguard Worker  // Return Value:
1067*d5c09012SAndroid Build Coastguard Worker  // If successful, the
1068*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1069*d5c09012SAndroid Build Coastguard Worker  // resources. The data for each resource is displayed in the ascending order
1070*d5c09012SAndroid Build Coastguard Worker  // of:
1071*d5c09012SAndroid Build Coastguard Worker  //
1072*d5c09012SAndroid Build Coastguard Worker  // * Channel Partner ID
1073*d5c09012SAndroid Build Coastguard Worker  // * [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
1074*d5c09012SAndroid Build Coastguard Worker  // * [ChannelPartnerRepricingConfig.update_time][google.cloud.channel.v1.ChannelPartnerRepricingConfig.update_time]
1075*d5c09012SAndroid Build Coastguard Worker  //
1076*d5c09012SAndroid Build Coastguard Worker  // If unsuccessful, returns an error.
1077*d5c09012SAndroid Build Coastguard Worker  rpc ListChannelPartnerRepricingConfigs(
1078*d5c09012SAndroid Build Coastguard Worker      ListChannelPartnerRepricingConfigsRequest)
1079*d5c09012SAndroid Build Coastguard Worker      returns (ListChannelPartnerRepricingConfigsResponse) {
1080*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1081*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*/channelPartnerLinks/*}/channelPartnerRepricingConfigs"
1082*d5c09012SAndroid Build Coastguard Worker    };
1083*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
1084*d5c09012SAndroid Build Coastguard Worker  }
1085*d5c09012SAndroid Build Coastguard Worker
1086*d5c09012SAndroid Build Coastguard Worker  // Creates a ChannelPartnerRepricingConfig. Call this method to set
1087*d5c09012SAndroid Build Coastguard Worker  // modifications for a specific ChannelPartner's bill. You can only create
1088*d5c09012SAndroid Build Coastguard Worker  // configs if the
1089*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
1090*d5c09012SAndroid Build Coastguard Worker  // is a future month. If needed, you can create a config for the current
1091*d5c09012SAndroid Build Coastguard Worker  // month, with some restrictions.
1092*d5c09012SAndroid Build Coastguard Worker  //
1093*d5c09012SAndroid Build Coastguard Worker  // When creating a config for a future month, make sure there are no existing
1094*d5c09012SAndroid Build Coastguard Worker  // configs for that
1095*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
1096*d5c09012SAndroid Build Coastguard Worker  //
1097*d5c09012SAndroid Build Coastguard Worker  // The following restrictions are for creating configs in the current month.
1098*d5c09012SAndroid Build Coastguard Worker  //
1099*d5c09012SAndroid Build Coastguard Worker  // * This functionality is reserved for recovering from an erroneous config,
1100*d5c09012SAndroid Build Coastguard Worker  // and should not be used for regular business cases.
1101*d5c09012SAndroid Build Coastguard Worker  // * The new config will not modify exports used with other configs.
1102*d5c09012SAndroid Build Coastguard Worker  // Changes to the config may be immediate, but may take up to 24 hours.
1103*d5c09012SAndroid Build Coastguard Worker  // * There is a limit of ten configs for any ChannelPartner or
1104*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.EntitlementGranularity.entitlement][google.cloud.channel.v1.RepricingConfig.EntitlementGranularity.entitlement],
1105*d5c09012SAndroid Build Coastguard Worker  // for any
1106*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
1107*d5c09012SAndroid Build Coastguard Worker  // * The contained
1108*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig.repricing_config][google.cloud.channel.v1.ChannelPartnerRepricingConfig.repricing_config]
1109*d5c09012SAndroid Build Coastguard Worker  // value must be different from the value used in the current config for a
1110*d5c09012SAndroid Build Coastguard Worker  // ChannelPartner.
1111*d5c09012SAndroid Build Coastguard Worker  //
1112*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
1113*d5c09012SAndroid Build Coastguard Worker  //
1114*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
1115*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
1116*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Missing or invalid required parameters in the
1117*d5c09012SAndroid Build Coastguard Worker  // request. Also displays if the updated config is for the current month or
1118*d5c09012SAndroid Build Coastguard Worker  // past months.
1119*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
1120*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1121*d5c09012SAndroid Build Coastguard Worker  // specified does not exist or is not associated with the given account.
1122*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
1123*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
1124*d5c09012SAndroid Build Coastguard Worker  //
1125*d5c09012SAndroid Build Coastguard Worker  // Return Value:
1126*d5c09012SAndroid Build Coastguard Worker  // If successful, the updated
1127*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1128*d5c09012SAndroid Build Coastguard Worker  // resource, otherwise returns an error.
1129*d5c09012SAndroid Build Coastguard Worker  rpc CreateChannelPartnerRepricingConfig(
1130*d5c09012SAndroid Build Coastguard Worker      CreateChannelPartnerRepricingConfigRequest)
1131*d5c09012SAndroid Build Coastguard Worker      returns (ChannelPartnerRepricingConfig) {
1132*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1133*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/channelPartnerRepricingConfigs"
1134*d5c09012SAndroid Build Coastguard Worker      body: "channel_partner_repricing_config"
1135*d5c09012SAndroid Build Coastguard Worker    };
1136*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) =
1137*d5c09012SAndroid Build Coastguard Worker        "parent,channel_partner_repricing_config";
1138*d5c09012SAndroid Build Coastguard Worker  }
1139*d5c09012SAndroid Build Coastguard Worker
1140*d5c09012SAndroid Build Coastguard Worker  // Updates a ChannelPartnerRepricingConfig. Call this method to set
1141*d5c09012SAndroid Build Coastguard Worker  // modifications for a specific ChannelPartner's bill. This method overwrites
1142*d5c09012SAndroid Build Coastguard Worker  // the existing CustomerRepricingConfig.
1143*d5c09012SAndroid Build Coastguard Worker  //
1144*d5c09012SAndroid Build Coastguard Worker  // You can only update configs if the
1145*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
1146*d5c09012SAndroid Build Coastguard Worker  // is a future month. To make changes to configs for the current month, use
1147*d5c09012SAndroid Build Coastguard Worker  // [CreateChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerRepricingConfig],
1148*d5c09012SAndroid Build Coastguard Worker  // taking note of its restrictions. You cannot update the
1149*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
1150*d5c09012SAndroid Build Coastguard Worker  //
1151*d5c09012SAndroid Build Coastguard Worker  // When updating a config in the future:
1152*d5c09012SAndroid Build Coastguard Worker  //
1153*d5c09012SAndroid Build Coastguard Worker  // * This config must already exist.
1154*d5c09012SAndroid Build Coastguard Worker  //
1155*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
1156*d5c09012SAndroid Build Coastguard Worker  //
1157*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
1158*d5c09012SAndroid Build Coastguard Worker  // being queried are different.
1159*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Missing or invalid required parameters in the
1160*d5c09012SAndroid Build Coastguard Worker  // request. Also displays if the updated config is for the current month or
1161*d5c09012SAndroid Build Coastguard Worker  // past months.
1162*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The
1163*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1164*d5c09012SAndroid Build Coastguard Worker  // specified does not exist or is not associated with the given account.
1165*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
1166*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
1167*d5c09012SAndroid Build Coastguard Worker  //
1168*d5c09012SAndroid Build Coastguard Worker  // Return Value:
1169*d5c09012SAndroid Build Coastguard Worker  // If successful, the updated
1170*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1171*d5c09012SAndroid Build Coastguard Worker  // resource, otherwise returns an error.
1172*d5c09012SAndroid Build Coastguard Worker  rpc UpdateChannelPartnerRepricingConfig(
1173*d5c09012SAndroid Build Coastguard Worker      UpdateChannelPartnerRepricingConfigRequest)
1174*d5c09012SAndroid Build Coastguard Worker      returns (ChannelPartnerRepricingConfig) {
1175*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1176*d5c09012SAndroid Build Coastguard Worker      patch: "/v1/{channel_partner_repricing_config.name=accounts/*/channelPartnerLinks/*/channelPartnerRepricingConfigs/*}"
1177*d5c09012SAndroid Build Coastguard Worker      body: "channel_partner_repricing_config"
1178*d5c09012SAndroid Build Coastguard Worker    };
1179*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "channel_partner_repricing_config";
1180*d5c09012SAndroid Build Coastguard Worker  }
1181*d5c09012SAndroid Build Coastguard Worker
1182*d5c09012SAndroid Build Coastguard Worker  // Deletes the given
1183*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1184*d5c09012SAndroid Build Coastguard Worker  // permanently. You can only delete configs if their
1185*d5c09012SAndroid Build Coastguard Worker  // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
1186*d5c09012SAndroid Build Coastguard Worker  // is set to a date after the current month.
1187*d5c09012SAndroid Build Coastguard Worker  //
1188*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1189*d5c09012SAndroid Build Coastguard Worker  //
1190*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The account making the request does not own
1191*d5c09012SAndroid Build Coastguard Worker  // this customer.
1192*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1193*d5c09012SAndroid Build Coastguard Worker  // * FAILED_PRECONDITION: The
1194*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1195*d5c09012SAndroid Build Coastguard Worker  // is active or in the past.
1196*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: No
1197*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig]
1198*d5c09012SAndroid Build Coastguard Worker  // found for the name in the request.
1199*d5c09012SAndroid Build Coastguard Worker  rpc DeleteChannelPartnerRepricingConfig(
1200*d5c09012SAndroid Build Coastguard Worker      DeleteChannelPartnerRepricingConfigRequest)
1201*d5c09012SAndroid Build Coastguard Worker      returns (google.protobuf.Empty) {
1202*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1203*d5c09012SAndroid Build Coastguard Worker      delete: "/v1/{name=accounts/*/channelPartnerLinks/*/channelPartnerRepricingConfigs/*}"
1204*d5c09012SAndroid Build Coastguard Worker    };
1205*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "name";
1206*d5c09012SAndroid Build Coastguard Worker  }
1207*d5c09012SAndroid Build Coastguard Worker
1208*d5c09012SAndroid Build Coastguard Worker  // Lists the Rebilling supported SKU groups the account is authorized to
1209*d5c09012SAndroid Build Coastguard Worker  // sell.
1210*d5c09012SAndroid Build Coastguard Worker  // Reference: https://cloud.google.com/skus/sku-groups
1211*d5c09012SAndroid Build Coastguard Worker  //
1212*d5c09012SAndroid Build Coastguard Worker  // Possible Error Codes:
1213*d5c09012SAndroid Build Coastguard Worker  //
1214*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: If the account making the request and the account
1215*d5c09012SAndroid Build Coastguard Worker  // being queried are different, or the account doesn't exist.
1216*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to technical issues in the
1217*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact Cloud Channel support.
1218*d5c09012SAndroid Build Coastguard Worker  //
1219*d5c09012SAndroid Build Coastguard Worker  // Return Value:
1220*d5c09012SAndroid Build Coastguard Worker  // If successful, the [SkuGroup][google.cloud.channel.v1.SkuGroup] resources.
1221*d5c09012SAndroid Build Coastguard Worker  // The data for each resource is displayed in the alphabetical order of SKU
1222*d5c09012SAndroid Build Coastguard Worker  // group display name.
1223*d5c09012SAndroid Build Coastguard Worker  // The data for each resource is displayed in the ascending order of
1224*d5c09012SAndroid Build Coastguard Worker  // [SkuGroup.display_name][google.cloud.channel.v1.SkuGroup.display_name]
1225*d5c09012SAndroid Build Coastguard Worker  //
1226*d5c09012SAndroid Build Coastguard Worker  // If unsuccessful, returns an error.
1227*d5c09012SAndroid Build Coastguard Worker  rpc ListSkuGroups(ListSkuGroupsRequest) returns (ListSkuGroupsResponse) {
1228*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1229*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*}/skuGroups"
1230*d5c09012SAndroid Build Coastguard Worker    };
1231*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
1232*d5c09012SAndroid Build Coastguard Worker  }
1233*d5c09012SAndroid Build Coastguard Worker
1234*d5c09012SAndroid Build Coastguard Worker  // Lists the Billable SKUs in a given SKU group.
1235*d5c09012SAndroid Build Coastguard Worker  //
1236*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1237*d5c09012SAndroid Build Coastguard Worker  // PERMISSION_DENIED: If the account making the request and the account
1238*d5c09012SAndroid Build Coastguard Worker  // being queried for are different, or the account doesn't exist.
1239*d5c09012SAndroid Build Coastguard Worker  // INVALID_ARGUMENT: Missing or invalid required parameters in the
1240*d5c09012SAndroid Build Coastguard Worker  // request.
1241*d5c09012SAndroid Build Coastguard Worker  // INTERNAL: Any non-user error related to technical issue in the
1242*d5c09012SAndroid Build Coastguard Worker  // backend. In this case, contact cloud channel support.
1243*d5c09012SAndroid Build Coastguard Worker  //
1244*d5c09012SAndroid Build Coastguard Worker  // Return Value:
1245*d5c09012SAndroid Build Coastguard Worker  // If successful, the [BillableSku][google.cloud.channel.v1.BillableSku]
1246*d5c09012SAndroid Build Coastguard Worker  // resources. The data for each resource is displayed in the ascending order
1247*d5c09012SAndroid Build Coastguard Worker  // of:
1248*d5c09012SAndroid Build Coastguard Worker  //
1249*d5c09012SAndroid Build Coastguard Worker  // * [BillableSku.service_display_name][google.cloud.channel.v1.BillableSku.service_display_name]
1250*d5c09012SAndroid Build Coastguard Worker  // * [BillableSku.sku_display_name][google.cloud.channel.v1.BillableSku.sku_display_name]
1251*d5c09012SAndroid Build Coastguard Worker  //
1252*d5c09012SAndroid Build Coastguard Worker  // If unsuccessful, returns an error.
1253*d5c09012SAndroid Build Coastguard Worker  rpc ListSkuGroupBillableSkus(ListSkuGroupBillableSkusRequest)
1254*d5c09012SAndroid Build Coastguard Worker      returns (ListSkuGroupBillableSkusResponse) {
1255*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1256*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*/skuGroups/*}/billableSkus"
1257*d5c09012SAndroid Build Coastguard Worker    };
1258*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
1259*d5c09012SAndroid Build Coastguard Worker  }
1260*d5c09012SAndroid Build Coastguard Worker
1261*d5c09012SAndroid Build Coastguard Worker  // Returns the requested [Offer][google.cloud.channel.v1.Offer] resource.
1262*d5c09012SAndroid Build Coastguard Worker  //
1263*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1264*d5c09012SAndroid Build Coastguard Worker  //
1265*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The entitlement doesn't belong to the reseller.
1266*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1267*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: Entitlement or offer was not found.
1268*d5c09012SAndroid Build Coastguard Worker  //
1269*d5c09012SAndroid Build Coastguard Worker  // Return value:
1270*d5c09012SAndroid Build Coastguard Worker  // The [Offer][google.cloud.channel.v1.Offer] resource.
1271*d5c09012SAndroid Build Coastguard Worker  rpc LookupOffer(LookupOfferRequest) returns (Offer) {
1272*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1273*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{entitlement=accounts/*/customers/*/entitlements/*}:lookupOffer"
1274*d5c09012SAndroid Build Coastguard Worker    };
1275*d5c09012SAndroid Build Coastguard Worker  }
1276*d5c09012SAndroid Build Coastguard Worker
1277*d5c09012SAndroid Build Coastguard Worker  // Lists the Products the reseller is authorized to sell.
1278*d5c09012SAndroid Build Coastguard Worker  //
1279*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1280*d5c09012SAndroid Build Coastguard Worker  //
1281*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1282*d5c09012SAndroid Build Coastguard Worker  rpc ListProducts(ListProductsRequest) returns (ListProductsResponse) {
1283*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1284*d5c09012SAndroid Build Coastguard Worker      get: "/v1/products"
1285*d5c09012SAndroid Build Coastguard Worker    };
1286*d5c09012SAndroid Build Coastguard Worker  }
1287*d5c09012SAndroid Build Coastguard Worker
1288*d5c09012SAndroid Build Coastguard Worker  // Lists the SKUs for a product the reseller is authorized to sell.
1289*d5c09012SAndroid Build Coastguard Worker  //
1290*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1291*d5c09012SAndroid Build Coastguard Worker  //
1292*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1293*d5c09012SAndroid Build Coastguard Worker  rpc ListSkus(ListSkusRequest) returns (ListSkusResponse) {
1294*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1295*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=products/*}/skus"
1296*d5c09012SAndroid Build Coastguard Worker    };
1297*d5c09012SAndroid Build Coastguard Worker  }
1298*d5c09012SAndroid Build Coastguard Worker
1299*d5c09012SAndroid Build Coastguard Worker  // Lists the Offers the reseller can sell.
1300*d5c09012SAndroid Build Coastguard Worker  //
1301*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1302*d5c09012SAndroid Build Coastguard Worker  //
1303*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1304*d5c09012SAndroid Build Coastguard Worker  rpc ListOffers(ListOffersRequest) returns (ListOffersResponse) {
1305*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1306*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*}/offers"
1307*d5c09012SAndroid Build Coastguard Worker    };
1308*d5c09012SAndroid Build Coastguard Worker  }
1309*d5c09012SAndroid Build Coastguard Worker
1310*d5c09012SAndroid Build Coastguard Worker  // Lists the following:
1311*d5c09012SAndroid Build Coastguard Worker  //
1312*d5c09012SAndroid Build Coastguard Worker  // * SKUs that you can purchase for a customer
1313*d5c09012SAndroid Build Coastguard Worker  // * SKUs that you can upgrade or downgrade for an entitlement.
1314*d5c09012SAndroid Build Coastguard Worker  //
1315*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1316*d5c09012SAndroid Build Coastguard Worker  //
1317*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
1318*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1319*d5c09012SAndroid Build Coastguard Worker  rpc ListPurchasableSkus(ListPurchasableSkusRequest)
1320*d5c09012SAndroid Build Coastguard Worker      returns (ListPurchasableSkusResponse) {
1321*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1322*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{customer=accounts/*/customers/*}:listPurchasableSkus"
1323*d5c09012SAndroid Build Coastguard Worker    };
1324*d5c09012SAndroid Build Coastguard Worker  }
1325*d5c09012SAndroid Build Coastguard Worker
1326*d5c09012SAndroid Build Coastguard Worker  // Lists the following:
1327*d5c09012SAndroid Build Coastguard Worker  //
1328*d5c09012SAndroid Build Coastguard Worker  // * Offers that you can purchase for a customer.
1329*d5c09012SAndroid Build Coastguard Worker  // * Offers that you can change for an entitlement.
1330*d5c09012SAndroid Build Coastguard Worker  //
1331*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1332*d5c09012SAndroid Build Coastguard Worker  //
1333*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED:
1334*d5c09012SAndroid Build Coastguard Worker  //     * The customer doesn't belong to the reseller
1335*d5c09012SAndroid Build Coastguard Worker  //     * The reseller is not authorized to transact on this Product. See
1336*d5c09012SAndroid Build Coastguard Worker  //     https://support.google.com/channelservices/answer/9759265
1337*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1338*d5c09012SAndroid Build Coastguard Worker  rpc ListPurchasableOffers(ListPurchasableOffersRequest)
1339*d5c09012SAndroid Build Coastguard Worker      returns (ListPurchasableOffersResponse) {
1340*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1341*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{customer=accounts/*/customers/*}:listPurchasableOffers"
1342*d5c09012SAndroid Build Coastguard Worker    };
1343*d5c09012SAndroid Build Coastguard Worker  }
1344*d5c09012SAndroid Build Coastguard Worker
1345*d5c09012SAndroid Build Coastguard Worker  // Lists the billing accounts that are eligible to purchase particular SKUs
1346*d5c09012SAndroid Build Coastguard Worker  // for a given customer.
1347*d5c09012SAndroid Build Coastguard Worker  //
1348*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1349*d5c09012SAndroid Build Coastguard Worker  //
1350*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
1351*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1352*d5c09012SAndroid Build Coastguard Worker  //
1353*d5c09012SAndroid Build Coastguard Worker  // Return value:
1354*d5c09012SAndroid Build Coastguard Worker  // Based on the provided list of SKUs, returns a list of SKU groups that must
1355*d5c09012SAndroid Build Coastguard Worker  // be purchased using the same billing account and the billing accounts
1356*d5c09012SAndroid Build Coastguard Worker  // eligible to purchase each SKU group.
1357*d5c09012SAndroid Build Coastguard Worker  rpc QueryEligibleBillingAccounts(QueryEligibleBillingAccountsRequest)
1358*d5c09012SAndroid Build Coastguard Worker      returns (QueryEligibleBillingAccountsResponse) {
1359*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1360*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{customer=accounts/*/customers/*}:queryEligibleBillingAccounts"
1361*d5c09012SAndroid Build Coastguard Worker    };
1362*d5c09012SAndroid Build Coastguard Worker  }
1363*d5c09012SAndroid Build Coastguard Worker
1364*d5c09012SAndroid Build Coastguard Worker  // Registers a service account with subscriber privileges on the Cloud Pub/Sub
1365*d5c09012SAndroid Build Coastguard Worker  // topic for this Channel Services account. After you create a
1366*d5c09012SAndroid Build Coastguard Worker  // subscriber, you get the events through
1367*d5c09012SAndroid Build Coastguard Worker  // [SubscriberEvent][google.cloud.channel.v1.SubscriberEvent]
1368*d5c09012SAndroid Build Coastguard Worker  //
1369*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1370*d5c09012SAndroid Build Coastguard Worker  //
1371*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request and the
1372*d5c09012SAndroid Build Coastguard Worker  // provided reseller account are different, or the impersonated user
1373*d5c09012SAndroid Build Coastguard Worker  // is not a super admin.
1374*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1375*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
1376*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
1377*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
1378*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
1379*d5c09012SAndroid Build Coastguard Worker  //
1380*d5c09012SAndroid Build Coastguard Worker  // Return value:
1381*d5c09012SAndroid Build Coastguard Worker  // The topic name with the registered service email address.
1382*d5c09012SAndroid Build Coastguard Worker  rpc RegisterSubscriber(RegisterSubscriberRequest)
1383*d5c09012SAndroid Build Coastguard Worker      returns (RegisterSubscriberResponse) {
1384*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1385*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{account=accounts/*}:register"
1386*d5c09012SAndroid Build Coastguard Worker      body: "*"
1387*d5c09012SAndroid Build Coastguard Worker    };
1388*d5c09012SAndroid Build Coastguard Worker  }
1389*d5c09012SAndroid Build Coastguard Worker
1390*d5c09012SAndroid Build Coastguard Worker  // Unregisters a service account with subscriber privileges on the Cloud
1391*d5c09012SAndroid Build Coastguard Worker  // Pub/Sub topic created for this Channel Services account. If there are no
1392*d5c09012SAndroid Build Coastguard Worker  // service accounts left with subscriber privileges, this deletes the topic.
1393*d5c09012SAndroid Build Coastguard Worker  // You can call ListSubscribers to check for these accounts.
1394*d5c09012SAndroid Build Coastguard Worker  //
1395*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1396*d5c09012SAndroid Build Coastguard Worker  //
1397*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request and the
1398*d5c09012SAndroid Build Coastguard Worker  // provided reseller account are different, or the impersonated user
1399*d5c09012SAndroid Build Coastguard Worker  // is not a super admin.
1400*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1401*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The topic resource doesn't exist.
1402*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
1403*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
1404*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
1405*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
1406*d5c09012SAndroid Build Coastguard Worker  //
1407*d5c09012SAndroid Build Coastguard Worker  // Return value:
1408*d5c09012SAndroid Build Coastguard Worker  // The topic name that unregistered the service email address.
1409*d5c09012SAndroid Build Coastguard Worker  // Returns a success response if the service email address wasn't registered
1410*d5c09012SAndroid Build Coastguard Worker  // with the topic.
1411*d5c09012SAndroid Build Coastguard Worker  rpc UnregisterSubscriber(UnregisterSubscriberRequest)
1412*d5c09012SAndroid Build Coastguard Worker      returns (UnregisterSubscriberResponse) {
1413*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1414*d5c09012SAndroid Build Coastguard Worker      post: "/v1/{account=accounts/*}:unregister"
1415*d5c09012SAndroid Build Coastguard Worker      body: "*"
1416*d5c09012SAndroid Build Coastguard Worker    };
1417*d5c09012SAndroid Build Coastguard Worker  }
1418*d5c09012SAndroid Build Coastguard Worker
1419*d5c09012SAndroid Build Coastguard Worker  // Lists service accounts with subscriber privileges on the Cloud Pub/Sub
1420*d5c09012SAndroid Build Coastguard Worker  // topic created for this Channel Services account.
1421*d5c09012SAndroid Build Coastguard Worker  //
1422*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1423*d5c09012SAndroid Build Coastguard Worker  //
1424*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request and the
1425*d5c09012SAndroid Build Coastguard Worker  // provided reseller account are different, or the impersonated user
1426*d5c09012SAndroid Build Coastguard Worker  // is not a super admin.
1427*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
1428*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The topic resource doesn't exist.
1429*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the
1430*d5c09012SAndroid Build Coastguard Worker  // backend. Contact Cloud Channel support.
1431*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
1432*d5c09012SAndroid Build Coastguard Worker  // Contact Cloud Channel support.
1433*d5c09012SAndroid Build Coastguard Worker  //
1434*d5c09012SAndroid Build Coastguard Worker  // Return value:
1435*d5c09012SAndroid Build Coastguard Worker  // A list of service email addresses.
1436*d5c09012SAndroid Build Coastguard Worker  rpc ListSubscribers(ListSubscribersRequest)
1437*d5c09012SAndroid Build Coastguard Worker      returns (ListSubscribersResponse) {
1438*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1439*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{account=accounts/*}:listSubscribers"
1440*d5c09012SAndroid Build Coastguard Worker    };
1441*d5c09012SAndroid Build Coastguard Worker  }
1442*d5c09012SAndroid Build Coastguard Worker
1443*d5c09012SAndroid Build Coastguard Worker  // List entitlement history.
1444*d5c09012SAndroid Build Coastguard Worker  //
1445*d5c09012SAndroid Build Coastguard Worker  // Possible error codes:
1446*d5c09012SAndroid Build Coastguard Worker  //
1447*d5c09012SAndroid Build Coastguard Worker  // * PERMISSION_DENIED: The reseller account making the request and the
1448*d5c09012SAndroid Build Coastguard Worker  // provided reseller account are different.
1449*d5c09012SAndroid Build Coastguard Worker  // * INVALID_ARGUMENT: Missing or invalid required fields in the request.
1450*d5c09012SAndroid Build Coastguard Worker  // * NOT_FOUND: The parent resource doesn't exist. Usually the result of an
1451*d5c09012SAndroid Build Coastguard Worker  // invalid name parameter.
1452*d5c09012SAndroid Build Coastguard Worker  // * INTERNAL: Any non-user error related to a technical issue in the backend.
1453*d5c09012SAndroid Build Coastguard Worker  // In this case, contact CloudChannel support.
1454*d5c09012SAndroid Build Coastguard Worker  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
1455*d5c09012SAndroid Build Coastguard Worker  // In this case, contact Cloud Channel support.
1456*d5c09012SAndroid Build Coastguard Worker  //
1457*d5c09012SAndroid Build Coastguard Worker  // Return value:
1458*d5c09012SAndroid Build Coastguard Worker  // List of [EntitlementChange][google.cloud.channel.v1.EntitlementChange]s.
1459*d5c09012SAndroid Build Coastguard Worker  rpc ListEntitlementChanges(ListEntitlementChangesRequest)
1460*d5c09012SAndroid Build Coastguard Worker      returns (ListEntitlementChangesResponse) {
1461*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = {
1462*d5c09012SAndroid Build Coastguard Worker      get: "/v1/{parent=accounts/*/customers/*/entitlements/*}:listEntitlementChanges"
1463*d5c09012SAndroid Build Coastguard Worker    };
1464*d5c09012SAndroid Build Coastguard Worker    option (google.api.method_signature) = "parent";
1465*d5c09012SAndroid Build Coastguard Worker  }
1466*d5c09012SAndroid Build Coastguard Worker}
1467*d5c09012SAndroid Build Coastguard Worker
1468*d5c09012SAndroid Build Coastguard Worker// Request message for
1469*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CheckCloudIdentityAccountsExist][google.cloud.channel.v1.CloudChannelService.CheckCloudIdentityAccountsExist].
1470*d5c09012SAndroid Build Coastguard Workermessage CheckCloudIdentityAccountsExistRequest {
1471*d5c09012SAndroid Build Coastguard Worker  // Required. The reseller account's resource name.
1472*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: accounts/{account_id}
1473*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1474*d5c09012SAndroid Build Coastguard Worker
1475*d5c09012SAndroid Build Coastguard Worker  // Required. Domain to fetch for Cloud Identity account customer.
1476*d5c09012SAndroid Build Coastguard Worker  string domain = 2 [(google.api.field_behavior) = REQUIRED];
1477*d5c09012SAndroid Build Coastguard Worker}
1478*d5c09012SAndroid Build Coastguard Worker
1479*d5c09012SAndroid Build Coastguard Worker// Entity representing a Cloud Identity account that may be
1480*d5c09012SAndroid Build Coastguard Worker// associated with a Channel Services API partner.
1481*d5c09012SAndroid Build Coastguard Workermessage CloudIdentityCustomerAccount {
1482*d5c09012SAndroid Build Coastguard Worker  // Returns true if a Cloud Identity account exists for a specific domain.
1483*d5c09012SAndroid Build Coastguard Worker  bool existing = 1;
1484*d5c09012SAndroid Build Coastguard Worker
1485*d5c09012SAndroid Build Coastguard Worker  // Returns true if the Cloud Identity account is associated with a customer
1486*d5c09012SAndroid Build Coastguard Worker  // of the Channel Services partner.
1487*d5c09012SAndroid Build Coastguard Worker  bool owned = 2;
1488*d5c09012SAndroid Build Coastguard Worker
1489*d5c09012SAndroid Build Coastguard Worker  // If owned = true, the name of the customer that owns the Cloud Identity
1490*d5c09012SAndroid Build Coastguard Worker  // account.
1491*d5c09012SAndroid Build Coastguard Worker  // Customer_name uses the format:
1492*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}
1493*d5c09012SAndroid Build Coastguard Worker  string customer_name = 3;
1494*d5c09012SAndroid Build Coastguard Worker
1495*d5c09012SAndroid Build Coastguard Worker  // If existing = true, the Cloud Identity ID of the customer.
1496*d5c09012SAndroid Build Coastguard Worker  string customer_cloud_identity_id = 4;
1497*d5c09012SAndroid Build Coastguard Worker}
1498*d5c09012SAndroid Build Coastguard Worker
1499*d5c09012SAndroid Build Coastguard Worker// Response message for
1500*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CheckCloudIdentityAccountsExist][google.cloud.channel.v1.CloudChannelService.CheckCloudIdentityAccountsExist].
1501*d5c09012SAndroid Build Coastguard Workermessage CheckCloudIdentityAccountsExistResponse {
1502*d5c09012SAndroid Build Coastguard Worker  // The Cloud Identity accounts associated with the domain.
1503*d5c09012SAndroid Build Coastguard Worker  repeated CloudIdentityCustomerAccount cloud_identity_accounts = 1;
1504*d5c09012SAndroid Build Coastguard Worker}
1505*d5c09012SAndroid Build Coastguard Worker
1506*d5c09012SAndroid Build Coastguard Worker// Request message for
1507*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListCustomers][google.cloud.channel.v1.CloudChannelService.ListCustomers]
1508*d5c09012SAndroid Build Coastguard Workermessage ListCustomersRequest {
1509*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller account to list customers from.
1510*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: accounts/{account_id}.
1511*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1512*d5c09012SAndroid Build Coastguard Worker
1513*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of customers to return. The service may return
1514*d5c09012SAndroid Build Coastguard Worker  // fewer than this value. If unspecified, returns at most 10 customers. The
1515*d5c09012SAndroid Build Coastguard Worker  // maximum value is 50.
1516*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
1517*d5c09012SAndroid Build Coastguard Worker
1518*d5c09012SAndroid Build Coastguard Worker  // Optional. A token identifying a page of results other than the first page.
1519*d5c09012SAndroid Build Coastguard Worker  // Obtained through
1520*d5c09012SAndroid Build Coastguard Worker  // [ListCustomersResponse.next_page_token][google.cloud.channel.v1.ListCustomersResponse.next_page_token]
1521*d5c09012SAndroid Build Coastguard Worker  // of the previous
1522*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListCustomers][google.cloud.channel.v1.CloudChannelService.ListCustomers]
1523*d5c09012SAndroid Build Coastguard Worker  // call.
1524*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
1525*d5c09012SAndroid Build Coastguard Worker
1526*d5c09012SAndroid Build Coastguard Worker  // Optional. Filters applied to the [CloudChannelService.ListCustomers]
1527*d5c09012SAndroid Build Coastguard Worker  // results. See
1528*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/channel/docs/concepts/google-cloud/filter-customers
1529*d5c09012SAndroid Build Coastguard Worker  // for more information.
1530*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
1531*d5c09012SAndroid Build Coastguard Worker}
1532*d5c09012SAndroid Build Coastguard Worker
1533*d5c09012SAndroid Build Coastguard Worker// Response message for
1534*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListCustomers][google.cloud.channel.v1.CloudChannelService.ListCustomers].
1535*d5c09012SAndroid Build Coastguard Workermessage ListCustomersResponse {
1536*d5c09012SAndroid Build Coastguard Worker  // The customers belonging to a reseller or distributor.
1537*d5c09012SAndroid Build Coastguard Worker  repeated Customer customers = 1;
1538*d5c09012SAndroid Build Coastguard Worker
1539*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
1540*d5c09012SAndroid Build Coastguard Worker  // Pass to
1541*d5c09012SAndroid Build Coastguard Worker  // [ListCustomersRequest.page_token][google.cloud.channel.v1.ListCustomersRequest.page_token]
1542*d5c09012SAndroid Build Coastguard Worker  // to obtain that page.
1543*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1544*d5c09012SAndroid Build Coastguard Worker}
1545*d5c09012SAndroid Build Coastguard Worker
1546*d5c09012SAndroid Build Coastguard Worker// Request message for
1547*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.GetCustomer][google.cloud.channel.v1.CloudChannelService.GetCustomer].
1548*d5c09012SAndroid Build Coastguard Workermessage GetCustomerRequest {
1549*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer to retrieve.
1550*d5c09012SAndroid Build Coastguard Worker  // Name uses the format: accounts/{account_id}/customers/{customer_id}
1551*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1552*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1553*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1554*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
1555*d5c09012SAndroid Build Coastguard Worker    }
1556*d5c09012SAndroid Build Coastguard Worker  ];
1557*d5c09012SAndroid Build Coastguard Worker}
1558*d5c09012SAndroid Build Coastguard Worker
1559*d5c09012SAndroid Build Coastguard Worker// Request message for
1560*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CreateCustomer][google.cloud.channel.v1.CloudChannelService.CreateCustomer]
1561*d5c09012SAndroid Build Coastguard Workermessage CreateCustomerRequest {
1562*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of reseller account in which to create the
1563*d5c09012SAndroid Build Coastguard Worker  // customer. Parent uses the format: accounts/{account_id}
1564*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1565*d5c09012SAndroid Build Coastguard Worker
1566*d5c09012SAndroid Build Coastguard Worker  // Required. The customer to create.
1567*d5c09012SAndroid Build Coastguard Worker  Customer customer = 2 [(google.api.field_behavior) = REQUIRED];
1568*d5c09012SAndroid Build Coastguard Worker}
1569*d5c09012SAndroid Build Coastguard Worker
1570*d5c09012SAndroid Build Coastguard Worker// Request message for
1571*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.UpdateCustomer][google.cloud.channel.v1.CloudChannelService.UpdateCustomer].
1572*d5c09012SAndroid Build Coastguard Workermessage UpdateCustomerRequest {
1573*d5c09012SAndroid Build Coastguard Worker  // Required. New contents of the customer.
1574*d5c09012SAndroid Build Coastguard Worker  Customer customer = 2 [(google.api.field_behavior) = REQUIRED];
1575*d5c09012SAndroid Build Coastguard Worker
1576*d5c09012SAndroid Build Coastguard Worker  // The update mask that applies to the resource.
1577*d5c09012SAndroid Build Coastguard Worker  // Optional.
1578*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 3;
1579*d5c09012SAndroid Build Coastguard Worker}
1580*d5c09012SAndroid Build Coastguard Worker
1581*d5c09012SAndroid Build Coastguard Worker// Request message for
1582*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.DeleteCustomer][google.cloud.channel.v1.CloudChannelService.DeleteCustomer].
1583*d5c09012SAndroid Build Coastguard Workermessage DeleteCustomerRequest {
1584*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer to delete.
1585*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1586*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1587*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1588*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
1589*d5c09012SAndroid Build Coastguard Worker    }
1590*d5c09012SAndroid Build Coastguard Worker  ];
1591*d5c09012SAndroid Build Coastguard Worker}
1592*d5c09012SAndroid Build Coastguard Worker
1593*d5c09012SAndroid Build Coastguard Worker// Request message for
1594*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ImportCustomer][google.cloud.channel.v1.CloudChannelService.ImportCustomer]
1595*d5c09012SAndroid Build Coastguard Workermessage ImportCustomerRequest {
1596*d5c09012SAndroid Build Coastguard Worker  // Specifies the identity of the transfer customer.
1597*d5c09012SAndroid Build Coastguard Worker  // A customer's cloud_identity_id or domain is required to look up the
1598*d5c09012SAndroid Build Coastguard Worker  // customer's Cloud Identity. For Team customers, only the cloud_identity_id
1599*d5c09012SAndroid Build Coastguard Worker  // option is valid.
1600*d5c09012SAndroid Build Coastguard Worker  oneof customer_identity {
1601*d5c09012SAndroid Build Coastguard Worker    // Required. Customer domain.
1602*d5c09012SAndroid Build Coastguard Worker    string domain = 2 [(google.api.field_behavior) = REQUIRED];
1603*d5c09012SAndroid Build Coastguard Worker
1604*d5c09012SAndroid Build Coastguard Worker    // Required. Customer's Cloud Identity ID
1605*d5c09012SAndroid Build Coastguard Worker    string cloud_identity_id = 3 [(google.api.field_behavior) = REQUIRED];
1606*d5c09012SAndroid Build Coastguard Worker  }
1607*d5c09012SAndroid Build Coastguard Worker
1608*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller's account.
1609*d5c09012SAndroid Build Coastguard Worker  // Parent takes the format: accounts/{account_id} or
1610*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}
1611*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1612*d5c09012SAndroid Build Coastguard Worker
1613*d5c09012SAndroid Build Coastguard Worker  // Optional. The super admin of the resold customer generates this token to
1614*d5c09012SAndroid Build Coastguard Worker  // authorize a reseller to access their Cloud Identity and purchase
1615*d5c09012SAndroid Build Coastguard Worker  // entitlements on their behalf. You can omit this token after authorization.
1616*d5c09012SAndroid Build Coastguard Worker  // See https://support.google.com/a/answer/7643790 for more details.
1617*d5c09012SAndroid Build Coastguard Worker  string auth_token = 4 [(google.api.field_behavior) = OPTIONAL];
1618*d5c09012SAndroid Build Coastguard Worker
1619*d5c09012SAndroid Build Coastguard Worker  // Required. Choose to overwrite an existing customer if found.
1620*d5c09012SAndroid Build Coastguard Worker  // This must be set to true if there is an existing customer with a
1621*d5c09012SAndroid Build Coastguard Worker  // conflicting region code or domain.
1622*d5c09012SAndroid Build Coastguard Worker  bool overwrite_if_exists = 5 [(google.api.field_behavior) = REQUIRED];
1623*d5c09012SAndroid Build Coastguard Worker
1624*d5c09012SAndroid Build Coastguard Worker  // Optional. Cloud Identity ID of a channel partner who will be the direct
1625*d5c09012SAndroid Build Coastguard Worker  // reseller for the customer's order. This field is required for 2-tier
1626*d5c09012SAndroid Build Coastguard Worker  // transfer scenarios and can be provided via the request Parent binding as
1627*d5c09012SAndroid Build Coastguard Worker  // well.
1628*d5c09012SAndroid Build Coastguard Worker  string channel_partner_id = 6 [(google.api.field_behavior) = OPTIONAL];
1629*d5c09012SAndroid Build Coastguard Worker
1630*d5c09012SAndroid Build Coastguard Worker  // Optional. Specifies the customer that will receive imported Cloud Identity
1631*d5c09012SAndroid Build Coastguard Worker  // information.
1632*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account_id}/customers/{customer_id}
1633*d5c09012SAndroid Build Coastguard Worker  string customer = 7 [
1634*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OPTIONAL,
1635*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1636*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
1637*d5c09012SAndroid Build Coastguard Worker    }
1638*d5c09012SAndroid Build Coastguard Worker  ];
1639*d5c09012SAndroid Build Coastguard Worker}
1640*d5c09012SAndroid Build Coastguard Worker
1641*d5c09012SAndroid Build Coastguard Worker// Request message for
1642*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ProvisionCloudIdentity][google.cloud.channel.v1.CloudChannelService.ProvisionCloudIdentity]
1643*d5c09012SAndroid Build Coastguard Workermessage ProvisionCloudIdentityRequest {
1644*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the customer.
1645*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account_id}/customers/{customer_id}
1646*d5c09012SAndroid Build Coastguard Worker  string customer = 1 [
1647*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1648*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1649*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
1650*d5c09012SAndroid Build Coastguard Worker    }
1651*d5c09012SAndroid Build Coastguard Worker  ];
1652*d5c09012SAndroid Build Coastguard Worker
1653*d5c09012SAndroid Build Coastguard Worker  // CloudIdentity-specific customer information.
1654*d5c09012SAndroid Build Coastguard Worker  CloudIdentityInfo cloud_identity_info = 2;
1655*d5c09012SAndroid Build Coastguard Worker
1656*d5c09012SAndroid Build Coastguard Worker  // Admin user information.
1657*d5c09012SAndroid Build Coastguard Worker  AdminUser user = 3;
1658*d5c09012SAndroid Build Coastguard Worker
1659*d5c09012SAndroid Build Coastguard Worker  // Validate the request and preview the review, but do not post it.
1660*d5c09012SAndroid Build Coastguard Worker  bool validate_only = 4;
1661*d5c09012SAndroid Build Coastguard Worker}
1662*d5c09012SAndroid Build Coastguard Worker
1663*d5c09012SAndroid Build Coastguard Worker// Request message for
1664*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListEntitlements][google.cloud.channel.v1.CloudChannelService.ListEntitlements]
1665*d5c09012SAndroid Build Coastguard Workermessage ListEntitlementsRequest {
1666*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller's customer account to list
1667*d5c09012SAndroid Build Coastguard Worker  // entitlements for.
1668*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: accounts/{account_id}/customers/{customer_id}
1669*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1670*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1671*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1672*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
1673*d5c09012SAndroid Build Coastguard Worker    }
1674*d5c09012SAndroid Build Coastguard Worker  ];
1675*d5c09012SAndroid Build Coastguard Worker
1676*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server might return fewer results than
1677*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, return at most 50 entitlements. The maximum
1678*d5c09012SAndroid Build Coastguard Worker  // value is 100; the server will coerce values above 100.
1679*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
1680*d5c09012SAndroid Build Coastguard Worker
1681*d5c09012SAndroid Build Coastguard Worker  // Optional. A token for a page of results other than the first page.
1682*d5c09012SAndroid Build Coastguard Worker  // Obtained using
1683*d5c09012SAndroid Build Coastguard Worker  // [ListEntitlementsResponse.next_page_token][google.cloud.channel.v1.ListEntitlementsResponse.next_page_token]
1684*d5c09012SAndroid Build Coastguard Worker  // of the previous
1685*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListEntitlements][google.cloud.channel.v1.CloudChannelService.ListEntitlements]
1686*d5c09012SAndroid Build Coastguard Worker  // call.
1687*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
1688*d5c09012SAndroid Build Coastguard Worker}
1689*d5c09012SAndroid Build Coastguard Worker
1690*d5c09012SAndroid Build Coastguard Worker// Response message for
1691*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListEntitlements][google.cloud.channel.v1.CloudChannelService.ListEntitlements].
1692*d5c09012SAndroid Build Coastguard Workermessage ListEntitlementsResponse {
1693*d5c09012SAndroid Build Coastguard Worker  // The reseller customer's entitlements.
1694*d5c09012SAndroid Build Coastguard Worker  repeated Entitlement entitlements = 1;
1695*d5c09012SAndroid Build Coastguard Worker
1696*d5c09012SAndroid Build Coastguard Worker  // A token to list the next page of results.
1697*d5c09012SAndroid Build Coastguard Worker  // Pass to
1698*d5c09012SAndroid Build Coastguard Worker  // [ListEntitlementsRequest.page_token][google.cloud.channel.v1.ListEntitlementsRequest.page_token]
1699*d5c09012SAndroid Build Coastguard Worker  // to obtain that page.
1700*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1701*d5c09012SAndroid Build Coastguard Worker}
1702*d5c09012SAndroid Build Coastguard Worker
1703*d5c09012SAndroid Build Coastguard Worker// Request message for
1704*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListTransferableSkus][google.cloud.channel.v1.CloudChannelService.ListTransferableSkus]
1705*d5c09012SAndroid Build Coastguard Workermessage ListTransferableSkusRequest {
1706*d5c09012SAndroid Build Coastguard Worker  // Specifies the identity of transferred customer.
1707*d5c09012SAndroid Build Coastguard Worker  // Either a cloud_identity_id of the customer or the customer name is
1708*d5c09012SAndroid Build Coastguard Worker  // required to look up transferable SKUs.
1709*d5c09012SAndroid Build Coastguard Worker  oneof transferred_customer_identity {
1710*d5c09012SAndroid Build Coastguard Worker    // Customer's Cloud Identity ID
1711*d5c09012SAndroid Build Coastguard Worker    string cloud_identity_id = 4;
1712*d5c09012SAndroid Build Coastguard Worker
1713*d5c09012SAndroid Build Coastguard Worker    // A reseller is required to create a customer and use the resource name of
1714*d5c09012SAndroid Build Coastguard Worker    // the created customer here.
1715*d5c09012SAndroid Build Coastguard Worker    // Customer_name uses the format:
1716*d5c09012SAndroid Build Coastguard Worker    // accounts/{account_id}/customers/{customer_id}
1717*d5c09012SAndroid Build Coastguard Worker    string customer_name = 7;
1718*d5c09012SAndroid Build Coastguard Worker  }
1719*d5c09012SAndroid Build Coastguard Worker
1720*d5c09012SAndroid Build Coastguard Worker  // Required. The reseller account's resource name.
1721*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: accounts/{account_id}
1722*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1723*d5c09012SAndroid Build Coastguard Worker
1724*d5c09012SAndroid Build Coastguard Worker  // The requested page size. Server might return fewer results than requested.
1725*d5c09012SAndroid Build Coastguard Worker  // If unspecified, returns at most 100 SKUs.
1726*d5c09012SAndroid Build Coastguard Worker  // The maximum value is 1000; the server will coerce values above 1000.
1727*d5c09012SAndroid Build Coastguard Worker  // Optional.
1728*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
1729*d5c09012SAndroid Build Coastguard Worker
1730*d5c09012SAndroid Build Coastguard Worker  // A token for a page of results other than the first page.
1731*d5c09012SAndroid Build Coastguard Worker  // Obtained using
1732*d5c09012SAndroid Build Coastguard Worker  // [ListTransferableSkusResponse.next_page_token][google.cloud.channel.v1.ListTransferableSkusResponse.next_page_token]
1733*d5c09012SAndroid Build Coastguard Worker  // of the previous
1734*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListTransferableSkus][google.cloud.channel.v1.CloudChannelService.ListTransferableSkus]
1735*d5c09012SAndroid Build Coastguard Worker  // call. Optional.
1736*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
1737*d5c09012SAndroid Build Coastguard Worker
1738*d5c09012SAndroid Build Coastguard Worker  // Optional. The super admin of the resold customer generates this token to
1739*d5c09012SAndroid Build Coastguard Worker  // authorize a reseller to access their Cloud Identity and purchase
1740*d5c09012SAndroid Build Coastguard Worker  // entitlements on their behalf. You can omit this token after authorization.
1741*d5c09012SAndroid Build Coastguard Worker  // See https://support.google.com/a/answer/7643790 for more details.
1742*d5c09012SAndroid Build Coastguard Worker  string auth_token = 5 [(google.api.field_behavior) = OPTIONAL];
1743*d5c09012SAndroid Build Coastguard Worker
1744*d5c09012SAndroid Build Coastguard Worker  // The BCP-47 language code. For example, "en-US". The
1745*d5c09012SAndroid Build Coastguard Worker  // response will localize in the corresponding language code, if specified.
1746*d5c09012SAndroid Build Coastguard Worker  // The default value is "en-US".
1747*d5c09012SAndroid Build Coastguard Worker  // Optional.
1748*d5c09012SAndroid Build Coastguard Worker  string language_code = 6;
1749*d5c09012SAndroid Build Coastguard Worker}
1750*d5c09012SAndroid Build Coastguard Worker
1751*d5c09012SAndroid Build Coastguard Worker// Response message for
1752*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListTransferableSkus][google.cloud.channel.v1.CloudChannelService.ListTransferableSkus].
1753*d5c09012SAndroid Build Coastguard Workermessage ListTransferableSkusResponse {
1754*d5c09012SAndroid Build Coastguard Worker  // Information about existing SKUs for a customer that needs a transfer.
1755*d5c09012SAndroid Build Coastguard Worker  repeated TransferableSku transferable_skus = 1;
1756*d5c09012SAndroid Build Coastguard Worker
1757*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
1758*d5c09012SAndroid Build Coastguard Worker  // Pass to
1759*d5c09012SAndroid Build Coastguard Worker  // [ListTransferableSkusRequest.page_token][google.cloud.channel.v1.ListTransferableSkusRequest.page_token]
1760*d5c09012SAndroid Build Coastguard Worker  // to obtain that page.
1761*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1762*d5c09012SAndroid Build Coastguard Worker}
1763*d5c09012SAndroid Build Coastguard Worker
1764*d5c09012SAndroid Build Coastguard Worker// Request message for
1765*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListTransferableOffers][google.cloud.channel.v1.CloudChannelService.ListTransferableOffers]
1766*d5c09012SAndroid Build Coastguard Workermessage ListTransferableOffersRequest {
1767*d5c09012SAndroid Build Coastguard Worker  // Specifies the identity of transferred customer.
1768*d5c09012SAndroid Build Coastguard Worker  // Either a cloud_identity_id of the customer or the customer name is
1769*d5c09012SAndroid Build Coastguard Worker  // required to look up transferrable Offers.
1770*d5c09012SAndroid Build Coastguard Worker  oneof transferred_customer_identity {
1771*d5c09012SAndroid Build Coastguard Worker    // Customer's Cloud Identity ID
1772*d5c09012SAndroid Build Coastguard Worker    string cloud_identity_id = 4;
1773*d5c09012SAndroid Build Coastguard Worker
1774*d5c09012SAndroid Build Coastguard Worker    // A reseller should create a customer and use the resource name of
1775*d5c09012SAndroid Build Coastguard Worker    // that customer here.
1776*d5c09012SAndroid Build Coastguard Worker    string customer_name = 5;
1777*d5c09012SAndroid Build Coastguard Worker  }
1778*d5c09012SAndroid Build Coastguard Worker
1779*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller's account.
1780*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1781*d5c09012SAndroid Build Coastguard Worker
1782*d5c09012SAndroid Build Coastguard Worker  // Requested page size. Server might return fewer results than requested.
1783*d5c09012SAndroid Build Coastguard Worker  // If unspecified, returns at most 100 offers.
1784*d5c09012SAndroid Build Coastguard Worker  // The maximum value is 1000; the server will coerce values above 1000.
1785*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
1786*d5c09012SAndroid Build Coastguard Worker
1787*d5c09012SAndroid Build Coastguard Worker  // A token for a page of results other than the first page.
1788*d5c09012SAndroid Build Coastguard Worker  // Obtained using
1789*d5c09012SAndroid Build Coastguard Worker  // [ListTransferableOffersResponse.next_page_token][google.cloud.channel.v1.ListTransferableOffersResponse.next_page_token]
1790*d5c09012SAndroid Build Coastguard Worker  // of the previous
1791*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListTransferableOffers][google.cloud.channel.v1.CloudChannelService.ListTransferableOffers]
1792*d5c09012SAndroid Build Coastguard Worker  // call.
1793*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
1794*d5c09012SAndroid Build Coastguard Worker
1795*d5c09012SAndroid Build Coastguard Worker  // Required. The SKU to look up Offers for.
1796*d5c09012SAndroid Build Coastguard Worker  string sku = 6 [(google.api.field_behavior) = REQUIRED];
1797*d5c09012SAndroid Build Coastguard Worker
1798*d5c09012SAndroid Build Coastguard Worker  // Optional. The BCP-47 language code. For example, "en-US". The
1799*d5c09012SAndroid Build Coastguard Worker  // response will localize in the corresponding language code, if specified.
1800*d5c09012SAndroid Build Coastguard Worker  // The default value is "en-US".
1801*d5c09012SAndroid Build Coastguard Worker  string language_code = 7 [(google.api.field_behavior) = OPTIONAL];
1802*d5c09012SAndroid Build Coastguard Worker
1803*d5c09012SAndroid Build Coastguard Worker  // Optional. The Billing Account to look up Offers for. Format:
1804*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/billingAccounts/{billing_account_id}.
1805*d5c09012SAndroid Build Coastguard Worker  //
1806*d5c09012SAndroid Build Coastguard Worker  // This field is only relevant for multi-currency accounts. It should be left
1807*d5c09012SAndroid Build Coastguard Worker  // empty for single currency accounts.
1808*d5c09012SAndroid Build Coastguard Worker  string billing_account = 8 [(google.api.field_behavior) = OPTIONAL];
1809*d5c09012SAndroid Build Coastguard Worker}
1810*d5c09012SAndroid Build Coastguard Worker
1811*d5c09012SAndroid Build Coastguard Worker// Response message for
1812*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListTransferableOffers][google.cloud.channel.v1.CloudChannelService.ListTransferableOffers].
1813*d5c09012SAndroid Build Coastguard Workermessage ListTransferableOffersResponse {
1814*d5c09012SAndroid Build Coastguard Worker  // Information about Offers for a customer that can be used for
1815*d5c09012SAndroid Build Coastguard Worker  // transfer.
1816*d5c09012SAndroid Build Coastguard Worker  repeated TransferableOffer transferable_offers = 1;
1817*d5c09012SAndroid Build Coastguard Worker
1818*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
1819*d5c09012SAndroid Build Coastguard Worker  // Pass to
1820*d5c09012SAndroid Build Coastguard Worker  // [ListTransferableOffersRequest.page_token][google.cloud.channel.v1.ListTransferableOffersRequest.page_token]
1821*d5c09012SAndroid Build Coastguard Worker  // to obtain that page.
1822*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1823*d5c09012SAndroid Build Coastguard Worker}
1824*d5c09012SAndroid Build Coastguard Worker
1825*d5c09012SAndroid Build Coastguard Worker// TransferableOffer represents an Offer that can be used in Transfer.
1826*d5c09012SAndroid Build Coastguard Worker// Read-only.
1827*d5c09012SAndroid Build Coastguard Workermessage TransferableOffer {
1828*d5c09012SAndroid Build Coastguard Worker  // Offer with parameter constraints updated to allow the Transfer.
1829*d5c09012SAndroid Build Coastguard Worker  Offer offer = 1;
1830*d5c09012SAndroid Build Coastguard Worker}
1831*d5c09012SAndroid Build Coastguard Worker
1832*d5c09012SAndroid Build Coastguard Worker// Request message for
1833*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.GetEntitlement][google.cloud.channel.v1.CloudChannelService.GetEntitlement].
1834*d5c09012SAndroid Build Coastguard Workermessage GetEntitlementRequest {
1835*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the entitlement to retrieve.
1836*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
1837*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
1838*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1839*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1840*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1841*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Entitlement"
1842*d5c09012SAndroid Build Coastguard Worker    }
1843*d5c09012SAndroid Build Coastguard Worker  ];
1844*d5c09012SAndroid Build Coastguard Worker}
1845*d5c09012SAndroid Build Coastguard Worker
1846*d5c09012SAndroid Build Coastguard Worker// Request message for
1847*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListChannelPartnerLinks][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks]
1848*d5c09012SAndroid Build Coastguard Workermessage ListChannelPartnerLinksRequest {
1849*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller account for listing channel
1850*d5c09012SAndroid Build Coastguard Worker  // partner links. Parent uses the format: accounts/{account_id}
1851*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1852*d5c09012SAndroid Build Coastguard Worker
1853*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server might return fewer results than
1854*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, server will pick a default size (25). The
1855*d5c09012SAndroid Build Coastguard Worker  // maximum value is 200; the server will coerce values above 200.
1856*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
1857*d5c09012SAndroid Build Coastguard Worker
1858*d5c09012SAndroid Build Coastguard Worker  // Optional. A token for a page of results other than the first page.
1859*d5c09012SAndroid Build Coastguard Worker  // Obtained using
1860*d5c09012SAndroid Build Coastguard Worker  // [ListChannelPartnerLinksResponse.next_page_token][google.cloud.channel.v1.ListChannelPartnerLinksResponse.next_page_token]
1861*d5c09012SAndroid Build Coastguard Worker  // of the previous
1862*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListChannelPartnerLinks][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks]
1863*d5c09012SAndroid Build Coastguard Worker  // call.
1864*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
1865*d5c09012SAndroid Build Coastguard Worker
1866*d5c09012SAndroid Build Coastguard Worker  // Optional. The level of granularity the ChannelPartnerLink will display.
1867*d5c09012SAndroid Build Coastguard Worker  ChannelPartnerLinkView view = 4 [(google.api.field_behavior) = OPTIONAL];
1868*d5c09012SAndroid Build Coastguard Worker}
1869*d5c09012SAndroid Build Coastguard Worker
1870*d5c09012SAndroid Build Coastguard Worker// Response message for
1871*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListChannelPartnerLinks][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks].
1872*d5c09012SAndroid Build Coastguard Workermessage ListChannelPartnerLinksResponse {
1873*d5c09012SAndroid Build Coastguard Worker  // The Channel partner links for a reseller.
1874*d5c09012SAndroid Build Coastguard Worker  repeated ChannelPartnerLink channel_partner_links = 1;
1875*d5c09012SAndroid Build Coastguard Worker
1876*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
1877*d5c09012SAndroid Build Coastguard Worker  // Pass to
1878*d5c09012SAndroid Build Coastguard Worker  // [ListChannelPartnerLinksRequest.page_token][google.cloud.channel.v1.ListChannelPartnerLinksRequest.page_token]
1879*d5c09012SAndroid Build Coastguard Worker  // to obtain that page.
1880*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1881*d5c09012SAndroid Build Coastguard Worker}
1882*d5c09012SAndroid Build Coastguard Worker
1883*d5c09012SAndroid Build Coastguard Worker// Request message for
1884*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.GetChannelPartnerLink][google.cloud.channel.v1.CloudChannelService.GetChannelPartnerLink].
1885*d5c09012SAndroid Build Coastguard Workermessage GetChannelPartnerLinkRequest {
1886*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the channel partner link to retrieve.
1887*d5c09012SAndroid Build Coastguard Worker  // Name uses the format: accounts/{account_id}/channelPartnerLinks/{id}
1888*d5c09012SAndroid Build Coastguard Worker  // where {id} is the Cloud Identity ID of the partner.
1889*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
1890*d5c09012SAndroid Build Coastguard Worker
1891*d5c09012SAndroid Build Coastguard Worker  // Optional. The level of granularity the ChannelPartnerLink will display.
1892*d5c09012SAndroid Build Coastguard Worker  ChannelPartnerLinkView view = 2 [(google.api.field_behavior) = OPTIONAL];
1893*d5c09012SAndroid Build Coastguard Worker}
1894*d5c09012SAndroid Build Coastguard Worker
1895*d5c09012SAndroid Build Coastguard Worker// Request message for
1896*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CreateChannelPartnerLink][google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerLink]
1897*d5c09012SAndroid Build Coastguard Workermessage CreateChannelPartnerLinkRequest {
1898*d5c09012SAndroid Build Coastguard Worker  // Required. Create a channel partner link for the provided reseller account's
1899*d5c09012SAndroid Build Coastguard Worker  // resource name.
1900*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: accounts/{account_id}
1901*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
1902*d5c09012SAndroid Build Coastguard Worker
1903*d5c09012SAndroid Build Coastguard Worker  // Required. The channel partner link to create.
1904*d5c09012SAndroid Build Coastguard Worker  // Either channel_partner_link.reseller_cloud_identity_id or domain can be
1905*d5c09012SAndroid Build Coastguard Worker  // used to create a link.
1906*d5c09012SAndroid Build Coastguard Worker  ChannelPartnerLink channel_partner_link = 2
1907*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
1908*d5c09012SAndroid Build Coastguard Worker}
1909*d5c09012SAndroid Build Coastguard Worker
1910*d5c09012SAndroid Build Coastguard Worker// Request message for
1911*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.UpdateChannelPartnerLink][google.cloud.channel.v1.CloudChannelService.UpdateChannelPartnerLink]
1912*d5c09012SAndroid Build Coastguard Workermessage UpdateChannelPartnerLinkRequest {
1913*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the channel partner link to cancel.
1914*d5c09012SAndroid Build Coastguard Worker  // Name uses the format: accounts/{account_id}/channelPartnerLinks/{id}
1915*d5c09012SAndroid Build Coastguard Worker  // where {id} is the Cloud Identity ID of the partner.
1916*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
1917*d5c09012SAndroid Build Coastguard Worker
1918*d5c09012SAndroid Build Coastguard Worker  // Required. The channel partner link to update. Only
1919*d5c09012SAndroid Build Coastguard Worker  // channel_partner_link.link_state is allowed for updates.
1920*d5c09012SAndroid Build Coastguard Worker  ChannelPartnerLink channel_partner_link = 2
1921*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
1922*d5c09012SAndroid Build Coastguard Worker
1923*d5c09012SAndroid Build Coastguard Worker  // Required. The update mask that applies to the resource.
1924*d5c09012SAndroid Build Coastguard Worker  // The only allowable value for an update mask is
1925*d5c09012SAndroid Build Coastguard Worker  // channel_partner_link.link_state.
1926*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 3
1927*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
1928*d5c09012SAndroid Build Coastguard Worker}
1929*d5c09012SAndroid Build Coastguard Worker
1930*d5c09012SAndroid Build Coastguard Worker// Request message for
1931*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.GetCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.GetCustomerRepricingConfig].
1932*d5c09012SAndroid Build Coastguard Workermessage GetCustomerRepricingConfigRequest {
1933*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the CustomerRepricingConfig.
1934*d5c09012SAndroid Build Coastguard Worker  // Format:
1935*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}.
1936*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
1937*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1938*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1939*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/CustomerRepricingConfig"
1940*d5c09012SAndroid Build Coastguard Worker    }
1941*d5c09012SAndroid Build Coastguard Worker  ];
1942*d5c09012SAndroid Build Coastguard Worker}
1943*d5c09012SAndroid Build Coastguard Worker
1944*d5c09012SAndroid Build Coastguard Worker// Request message for
1945*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListCustomerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListCustomerRepricingConfigs].
1946*d5c09012SAndroid Build Coastguard Workermessage ListCustomerRepricingConfigsRequest {
1947*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer.
1948*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: accounts/{account_id}/customers/{customer_id}.
1949*d5c09012SAndroid Build Coastguard Worker  // Supports accounts/{account_id}/customers/- to retrieve configs for all
1950*d5c09012SAndroid Build Coastguard Worker  // customers.
1951*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
1952*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
1953*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
1954*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
1955*d5c09012SAndroid Build Coastguard Worker    }
1956*d5c09012SAndroid Build Coastguard Worker  ];
1957*d5c09012SAndroid Build Coastguard Worker
1958*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of repricing configs to return. The service
1959*d5c09012SAndroid Build Coastguard Worker  // may return fewer than this value. If unspecified, returns a maximum of 50
1960*d5c09012SAndroid Build Coastguard Worker  // rules. The maximum value is 100; values above 100 will be coerced to 100.
1961*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
1962*d5c09012SAndroid Build Coastguard Worker
1963*d5c09012SAndroid Build Coastguard Worker  // Optional. A token identifying a page of results beyond the first page.
1964*d5c09012SAndroid Build Coastguard Worker  // Obtained through
1965*d5c09012SAndroid Build Coastguard Worker  // [ListCustomerRepricingConfigsResponse.next_page_token][google.cloud.channel.v1.ListCustomerRepricingConfigsResponse.next_page_token]
1966*d5c09012SAndroid Build Coastguard Worker  // of the previous
1967*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListCustomerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListCustomerRepricingConfigs]
1968*d5c09012SAndroid Build Coastguard Worker  // call.
1969*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
1970*d5c09012SAndroid Build Coastguard Worker
1971*d5c09012SAndroid Build Coastguard Worker  // Optional. A filter for [CloudChannelService.ListCustomerRepricingConfigs]
1972*d5c09012SAndroid Build Coastguard Worker  // results (customer only). You can use this filter when you support
1973*d5c09012SAndroid Build Coastguard Worker  // a BatchGet-like query.
1974*d5c09012SAndroid Build Coastguard Worker  // To use the filter, you must set `parent=accounts/{account_id}/customers/-`.
1975*d5c09012SAndroid Build Coastguard Worker  //
1976*d5c09012SAndroid Build Coastguard Worker  // Example: customer = accounts/account_id/customers/c1 OR
1977*d5c09012SAndroid Build Coastguard Worker  // customer = accounts/account_id/customers/c2.
1978*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
1979*d5c09012SAndroid Build Coastguard Worker}
1980*d5c09012SAndroid Build Coastguard Worker
1981*d5c09012SAndroid Build Coastguard Worker// Response message for
1982*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListCustomerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListCustomerRepricingConfigs].
1983*d5c09012SAndroid Build Coastguard Workermessage ListCustomerRepricingConfigsResponse {
1984*d5c09012SAndroid Build Coastguard Worker  // The repricing configs for this channel partner.
1985*d5c09012SAndroid Build Coastguard Worker  repeated CustomerRepricingConfig customer_repricing_configs = 1;
1986*d5c09012SAndroid Build Coastguard Worker
1987*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
1988*d5c09012SAndroid Build Coastguard Worker  // Pass to
1989*d5c09012SAndroid Build Coastguard Worker  // [ListCustomerRepricingConfigsRequest.page_token][google.cloud.channel.v1.ListCustomerRepricingConfigsRequest.page_token]
1990*d5c09012SAndroid Build Coastguard Worker  // to obtain that page.
1991*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
1992*d5c09012SAndroid Build Coastguard Worker}
1993*d5c09012SAndroid Build Coastguard Worker
1994*d5c09012SAndroid Build Coastguard Worker// Request message for
1995*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CreateCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateCustomerRepricingConfig].
1996*d5c09012SAndroid Build Coastguard Workermessage CreateCustomerRepricingConfigRequest {
1997*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer that will receive this
1998*d5c09012SAndroid Build Coastguard Worker  // repricing config. Parent uses the format:
1999*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}
2000*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
2001*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2002*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2003*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
2004*d5c09012SAndroid Build Coastguard Worker    }
2005*d5c09012SAndroid Build Coastguard Worker  ];
2006*d5c09012SAndroid Build Coastguard Worker
2007*d5c09012SAndroid Build Coastguard Worker  // Required. The CustomerRepricingConfig object to update.
2008*d5c09012SAndroid Build Coastguard Worker  CustomerRepricingConfig customer_repricing_config = 2
2009*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
2010*d5c09012SAndroid Build Coastguard Worker}
2011*d5c09012SAndroid Build Coastguard Worker
2012*d5c09012SAndroid Build Coastguard Worker// Request message for
2013*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.UpdateCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.UpdateCustomerRepricingConfig].
2014*d5c09012SAndroid Build Coastguard Workermessage UpdateCustomerRepricingConfigRequest {
2015*d5c09012SAndroid Build Coastguard Worker  // Required. The CustomerRepricingConfig object to update.
2016*d5c09012SAndroid Build Coastguard Worker  CustomerRepricingConfig customer_repricing_config = 1
2017*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
2018*d5c09012SAndroid Build Coastguard Worker}
2019*d5c09012SAndroid Build Coastguard Worker
2020*d5c09012SAndroid Build Coastguard Worker// Request message for
2021*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.DeleteCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.DeleteCustomerRepricingConfig].
2022*d5c09012SAndroid Build Coastguard Workermessage DeleteCustomerRepricingConfigRequest {
2023*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer repricing config rule to
2024*d5c09012SAndroid Build Coastguard Worker  // delete. Format:
2025*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}.
2026*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
2027*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2028*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2029*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/CustomerRepricingConfig"
2030*d5c09012SAndroid Build Coastguard Worker    }
2031*d5c09012SAndroid Build Coastguard Worker  ];
2032*d5c09012SAndroid Build Coastguard Worker}
2033*d5c09012SAndroid Build Coastguard Worker
2034*d5c09012SAndroid Build Coastguard Worker// Request message for
2035*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.GetChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.GetChannelPartnerRepricingConfig]
2036*d5c09012SAndroid Build Coastguard Workermessage GetChannelPartnerRepricingConfigRequest {
2037*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the ChannelPartnerRepricingConfig
2038*d5c09012SAndroid Build Coastguard Worker  // Format:
2039*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}/channelPartnerRepricingConfigs/{id}.
2040*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
2041*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2042*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2043*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/ChannelPartnerRepricingConfig"
2044*d5c09012SAndroid Build Coastguard Worker    }
2045*d5c09012SAndroid Build Coastguard Worker  ];
2046*d5c09012SAndroid Build Coastguard Worker}
2047*d5c09012SAndroid Build Coastguard Worker
2048*d5c09012SAndroid Build Coastguard Worker// Request message for
2049*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListChannelPartnerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerRepricingConfigs].
2050*d5c09012SAndroid Build Coastguard Workermessage ListChannelPartnerRepricingConfigsRequest {
2051*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the account's
2052*d5c09012SAndroid Build Coastguard Worker  // [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]. Parent
2053*d5c09012SAndroid Build Coastguard Worker  // uses the format:
2054*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}.
2055*d5c09012SAndroid Build Coastguard Worker  // Supports accounts/{account_id}/channelPartnerLinks/- to retrieve configs
2056*d5c09012SAndroid Build Coastguard Worker  // for all channel partners.
2057*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
2058*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2059*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2060*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/ChannelPartnerLink"
2061*d5c09012SAndroid Build Coastguard Worker    }
2062*d5c09012SAndroid Build Coastguard Worker  ];
2063*d5c09012SAndroid Build Coastguard Worker
2064*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of repricing configs to return. The service
2065*d5c09012SAndroid Build Coastguard Worker  // may return fewer than this value. If unspecified, returns a maximum of 50
2066*d5c09012SAndroid Build Coastguard Worker  // rules. The maximum value is 100; values above 100 will be coerced to 100.
2067*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
2068*d5c09012SAndroid Build Coastguard Worker
2069*d5c09012SAndroid Build Coastguard Worker  // Optional. A token identifying a page of results beyond the first page.
2070*d5c09012SAndroid Build Coastguard Worker  // Obtained through
2071*d5c09012SAndroid Build Coastguard Worker  // [ListChannelPartnerRepricingConfigsResponse.next_page_token][google.cloud.channel.v1.ListChannelPartnerRepricingConfigsResponse.next_page_token]
2072*d5c09012SAndroid Build Coastguard Worker  // of the previous
2073*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListChannelPartnerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerRepricingConfigs]
2074*d5c09012SAndroid Build Coastguard Worker  // call.
2075*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
2076*d5c09012SAndroid Build Coastguard Worker
2077*d5c09012SAndroid Build Coastguard Worker  // Optional. A filter for
2078*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListChannelPartnerRepricingConfigs] results
2079*d5c09012SAndroid Build Coastguard Worker  // (channel_partner_link only). You can use this filter when you support a
2080*d5c09012SAndroid Build Coastguard Worker  // BatchGet-like query. To use the filter, you must set
2081*d5c09012SAndroid Build Coastguard Worker  // `parent=accounts/{account_id}/channelPartnerLinks/-`.
2082*d5c09012SAndroid Build Coastguard Worker  //
2083*d5c09012SAndroid Build Coastguard Worker  // Example: `channel_partner_link =
2084*d5c09012SAndroid Build Coastguard Worker  // accounts/account_id/channelPartnerLinks/c1` OR `channel_partner_link =
2085*d5c09012SAndroid Build Coastguard Worker  // accounts/account_id/channelPartnerLinks/c2`.
2086*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
2087*d5c09012SAndroid Build Coastguard Worker}
2088*d5c09012SAndroid Build Coastguard Worker
2089*d5c09012SAndroid Build Coastguard Worker// Response message for
2090*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListChannelPartnerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerRepricingConfigs].
2091*d5c09012SAndroid Build Coastguard Workermessage ListChannelPartnerRepricingConfigsResponse {
2092*d5c09012SAndroid Build Coastguard Worker  // The repricing configs for this channel partner.
2093*d5c09012SAndroid Build Coastguard Worker  repeated ChannelPartnerRepricingConfig channel_partner_repricing_configs = 1;
2094*d5c09012SAndroid Build Coastguard Worker
2095*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2096*d5c09012SAndroid Build Coastguard Worker  // Pass to
2097*d5c09012SAndroid Build Coastguard Worker  // [ListChannelPartnerRepricingConfigsRequest.page_token][google.cloud.channel.v1.ListChannelPartnerRepricingConfigsRequest.page_token]
2098*d5c09012SAndroid Build Coastguard Worker  // to obtain that page.
2099*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2100*d5c09012SAndroid Build Coastguard Worker}
2101*d5c09012SAndroid Build Coastguard Worker
2102*d5c09012SAndroid Build Coastguard Worker// Request message for
2103*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CreateChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerRepricingConfig].
2104*d5c09012SAndroid Build Coastguard Workermessage CreateChannelPartnerRepricingConfigRequest {
2105*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the ChannelPartner that will receive the
2106*d5c09012SAndroid Build Coastguard Worker  // repricing config. Parent uses the format:
2107*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}
2108*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
2109*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2110*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2111*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/ChannelPartnerLink"
2112*d5c09012SAndroid Build Coastguard Worker    }
2113*d5c09012SAndroid Build Coastguard Worker  ];
2114*d5c09012SAndroid Build Coastguard Worker
2115*d5c09012SAndroid Build Coastguard Worker  // Required. The ChannelPartnerRepricingConfig object to update.
2116*d5c09012SAndroid Build Coastguard Worker  ChannelPartnerRepricingConfig channel_partner_repricing_config = 2
2117*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
2118*d5c09012SAndroid Build Coastguard Worker}
2119*d5c09012SAndroid Build Coastguard Worker
2120*d5c09012SAndroid Build Coastguard Worker// Request message for
2121*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.UpdateChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.UpdateChannelPartnerRepricingConfig].
2122*d5c09012SAndroid Build Coastguard Workermessage UpdateChannelPartnerRepricingConfigRequest {
2123*d5c09012SAndroid Build Coastguard Worker  // Required. The ChannelPartnerRepricingConfig object to update.
2124*d5c09012SAndroid Build Coastguard Worker  ChannelPartnerRepricingConfig channel_partner_repricing_config = 1
2125*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
2126*d5c09012SAndroid Build Coastguard Worker}
2127*d5c09012SAndroid Build Coastguard Worker
2128*d5c09012SAndroid Build Coastguard Worker// Request message for DeleteChannelPartnerRepricingConfig.
2129*d5c09012SAndroid Build Coastguard Workermessage DeleteChannelPartnerRepricingConfigRequest {
2130*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the channel partner repricing config rule to
2131*d5c09012SAndroid Build Coastguard Worker  // delete.
2132*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
2133*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2134*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2135*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/ChannelPartnerRepricingConfig"
2136*d5c09012SAndroid Build Coastguard Worker    }
2137*d5c09012SAndroid Build Coastguard Worker  ];
2138*d5c09012SAndroid Build Coastguard Worker}
2139*d5c09012SAndroid Build Coastguard Worker
2140*d5c09012SAndroid Build Coastguard Worker// Request message for ListSkuGroups.
2141*d5c09012SAndroid Build Coastguard Workermessage ListSkuGroupsRequest {
2142*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the account from which to list SKU groups.
2143*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: accounts/{account}.
2144*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
2145*d5c09012SAndroid Build Coastguard Worker
2146*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of SKU groups to return. The service may
2147*d5c09012SAndroid Build Coastguard Worker  // return fewer than this value. If unspecified, returns a maximum of 1000 SKU
2148*d5c09012SAndroid Build Coastguard Worker  // groups. The maximum value is 1000; values above 1000 will be coerced to
2149*d5c09012SAndroid Build Coastguard Worker  // 1000.
2150*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
2151*d5c09012SAndroid Build Coastguard Worker
2152*d5c09012SAndroid Build Coastguard Worker  // Optional. A token identifying a page of results beyond the first page.
2153*d5c09012SAndroid Build Coastguard Worker  // Obtained through
2154*d5c09012SAndroid Build Coastguard Worker  // [ListSkuGroups.next_page_token][] of the previous
2155*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListSkuGroups][google.cloud.channel.v1.CloudChannelService.ListSkuGroups]
2156*d5c09012SAndroid Build Coastguard Worker  // call.
2157*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
2158*d5c09012SAndroid Build Coastguard Worker}
2159*d5c09012SAndroid Build Coastguard Worker
2160*d5c09012SAndroid Build Coastguard Worker// Request message for ListSkuGroupBillableSkus.
2161*d5c09012SAndroid Build Coastguard Workermessage ListSkuGroupBillableSkusRequest {
2162*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the SKU group.
2163*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account}/skuGroups/{sku_group}.
2164*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
2165*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2166*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2167*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/SkuGroup"
2168*d5c09012SAndroid Build Coastguard Worker    }
2169*d5c09012SAndroid Build Coastguard Worker  ];
2170*d5c09012SAndroid Build Coastguard Worker
2171*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of SKUs to return. The service may return
2172*d5c09012SAndroid Build Coastguard Worker  // fewer than this value. If unspecified, returns a maximum of 100000 SKUs.
2173*d5c09012SAndroid Build Coastguard Worker  // The maximum value is 100000; values above 100000 will be coerced to 100000.
2174*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
2175*d5c09012SAndroid Build Coastguard Worker
2176*d5c09012SAndroid Build Coastguard Worker  // Optional. A token identifying a page of results beyond the first page.
2177*d5c09012SAndroid Build Coastguard Worker  // Obtained through
2178*d5c09012SAndroid Build Coastguard Worker  // [ListSkuGroupBillableSkus.next_page_token][] of the previous
2179*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListSkuGroupBillableSkus][google.cloud.channel.v1.CloudChannelService.ListSkuGroupBillableSkus]
2180*d5c09012SAndroid Build Coastguard Worker  // call.
2181*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
2182*d5c09012SAndroid Build Coastguard Worker}
2183*d5c09012SAndroid Build Coastguard Worker
2184*d5c09012SAndroid Build Coastguard Worker// Response message for ListSkuGroups.
2185*d5c09012SAndroid Build Coastguard Workermessage ListSkuGroupsResponse {
2186*d5c09012SAndroid Build Coastguard Worker  // The list of SKU groups requested.
2187*d5c09012SAndroid Build Coastguard Worker  repeated SkuGroup sku_groups = 1;
2188*d5c09012SAndroid Build Coastguard Worker
2189*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2190*d5c09012SAndroid Build Coastguard Worker  // Pass to [ListSkuGroups.page_token][] to obtain that
2191*d5c09012SAndroid Build Coastguard Worker  // page.
2192*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2193*d5c09012SAndroid Build Coastguard Worker}
2194*d5c09012SAndroid Build Coastguard Worker
2195*d5c09012SAndroid Build Coastguard Worker// Response message for ListSkuGroupBillableSkus.
2196*d5c09012SAndroid Build Coastguard Workermessage ListSkuGroupBillableSkusResponse {
2197*d5c09012SAndroid Build Coastguard Worker  // The list of billable SKUs in the requested SKU group.
2198*d5c09012SAndroid Build Coastguard Worker  repeated BillableSku billable_skus = 1;
2199*d5c09012SAndroid Build Coastguard Worker
2200*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2201*d5c09012SAndroid Build Coastguard Worker  // Pass to [ListSkuGroupBillableSkus.page_token][] to obtain that
2202*d5c09012SAndroid Build Coastguard Worker  // page.
2203*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2204*d5c09012SAndroid Build Coastguard Worker}
2205*d5c09012SAndroid Build Coastguard Worker
2206*d5c09012SAndroid Build Coastguard Worker// Represents the SKU group information.
2207*d5c09012SAndroid Build Coastguard Workermessage SkuGroup {
2208*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
2209*d5c09012SAndroid Build Coastguard Worker    type: "cloudchannel.googleapis.com/SkuGroup"
2210*d5c09012SAndroid Build Coastguard Worker    pattern: "accounts/{account}/skuGroups/{sku_group}"
2211*d5c09012SAndroid Build Coastguard Worker  };
2212*d5c09012SAndroid Build Coastguard Worker
2213*d5c09012SAndroid Build Coastguard Worker  // Resource name of SKU group. Format:
2214*d5c09012SAndroid Build Coastguard Worker  // accounts/{account}/skuGroups/{sku_group}.
2215*d5c09012SAndroid Build Coastguard Worker  // Example:
2216*d5c09012SAndroid Build Coastguard Worker  // "accounts/C01234/skuGroups/3d50fd57-3157-4577-a5a9-a219b8490041".
2217*d5c09012SAndroid Build Coastguard Worker  string name = 1;
2218*d5c09012SAndroid Build Coastguard Worker
2219*d5c09012SAndroid Build Coastguard Worker  // Unique human readable identifier for the SKU group.
2220*d5c09012SAndroid Build Coastguard Worker  string display_name = 2;
2221*d5c09012SAndroid Build Coastguard Worker}
2222*d5c09012SAndroid Build Coastguard Worker
2223*d5c09012SAndroid Build Coastguard Worker// Represents the Billable SKU information.
2224*d5c09012SAndroid Build Coastguard Workermessage BillableSku {
2225*d5c09012SAndroid Build Coastguard Worker  // Resource name of Billable SKU. Format:
2226*d5c09012SAndroid Build Coastguard Worker  // billableSkus/{sku}.
2227*d5c09012SAndroid Build Coastguard Worker  // Example:
2228*d5c09012SAndroid Build Coastguard Worker  // billableSkus/6E1B-6634-470F".
2229*d5c09012SAndroid Build Coastguard Worker  string sku = 1;
2230*d5c09012SAndroid Build Coastguard Worker
2231*d5c09012SAndroid Build Coastguard Worker  // Unique human readable name for the SKU.
2232*d5c09012SAndroid Build Coastguard Worker  string sku_display_name = 2;
2233*d5c09012SAndroid Build Coastguard Worker
2234*d5c09012SAndroid Build Coastguard Worker  // Resource name of Service which contains Repricing SKU. Format:
2235*d5c09012SAndroid Build Coastguard Worker  // services/{service}.
2236*d5c09012SAndroid Build Coastguard Worker  // Example:
2237*d5c09012SAndroid Build Coastguard Worker  // "services/B7D9-FDCB-15D8".
2238*d5c09012SAndroid Build Coastguard Worker  string service = 3;
2239*d5c09012SAndroid Build Coastguard Worker
2240*d5c09012SAndroid Build Coastguard Worker  // Unique human readable name for the Service.
2241*d5c09012SAndroid Build Coastguard Worker  string service_display_name = 4;
2242*d5c09012SAndroid Build Coastguard Worker}
2243*d5c09012SAndroid Build Coastguard Worker
2244*d5c09012SAndroid Build Coastguard Worker// Request message for
2245*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CreateEntitlement][google.cloud.channel.v1.CloudChannelService.CreateEntitlement]
2246*d5c09012SAndroid Build Coastguard Workermessage CreateEntitlementRequest {
2247*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller's customer account in which to
2248*d5c09012SAndroid Build Coastguard Worker  // create the entitlement. Parent uses the format:
2249*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}
2250*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
2251*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2252*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2253*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
2254*d5c09012SAndroid Build Coastguard Worker    }
2255*d5c09012SAndroid Build Coastguard Worker  ];
2256*d5c09012SAndroid Build Coastguard Worker
2257*d5c09012SAndroid Build Coastguard Worker  // Required. The entitlement to create.
2258*d5c09012SAndroid Build Coastguard Worker  Entitlement entitlement = 2 [(google.api.field_behavior) = REQUIRED];
2259*d5c09012SAndroid Build Coastguard Worker
2260*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2261*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2262*d5c09012SAndroid Build Coastguard Worker  // complete.
2263*d5c09012SAndroid Build Coastguard Worker  //
2264*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2265*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2266*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2267*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2268*d5c09012SAndroid Build Coastguard Worker  //
2269*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2270*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2271*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2272*d5c09012SAndroid Build Coastguard Worker  string request_id = 5 [(google.api.field_behavior) = OPTIONAL];
2273*d5c09012SAndroid Build Coastguard Worker}
2274*d5c09012SAndroid Build Coastguard Worker
2275*d5c09012SAndroid Build Coastguard Worker// Request message for
2276*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.TransferEntitlements][google.cloud.channel.v1.CloudChannelService.TransferEntitlements].
2277*d5c09012SAndroid Build Coastguard Workermessage TransferEntitlementsRequest {
2278*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller's customer account that will
2279*d5c09012SAndroid Build Coastguard Worker  // receive transferred entitlements. Parent uses the format:
2280*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}
2281*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
2282*d5c09012SAndroid Build Coastguard Worker
2283*d5c09012SAndroid Build Coastguard Worker  // Required. The new entitlements to create or transfer.
2284*d5c09012SAndroid Build Coastguard Worker  repeated Entitlement entitlements = 2
2285*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
2286*d5c09012SAndroid Build Coastguard Worker
2287*d5c09012SAndroid Build Coastguard Worker  // The super admin of the resold customer generates this token to
2288*d5c09012SAndroid Build Coastguard Worker  // authorize a reseller to access their Cloud Identity and purchase
2289*d5c09012SAndroid Build Coastguard Worker  // entitlements on their behalf. You can omit this token after authorization.
2290*d5c09012SAndroid Build Coastguard Worker  // See https://support.google.com/a/answer/7643790 for more details.
2291*d5c09012SAndroid Build Coastguard Worker  string auth_token = 4;
2292*d5c09012SAndroid Build Coastguard Worker
2293*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2294*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2295*d5c09012SAndroid Build Coastguard Worker  // complete.
2296*d5c09012SAndroid Build Coastguard Worker  //
2297*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2298*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2299*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2300*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2301*d5c09012SAndroid Build Coastguard Worker  //
2302*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2303*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2304*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2305*d5c09012SAndroid Build Coastguard Worker  string request_id = 6 [(google.api.field_behavior) = OPTIONAL];
2306*d5c09012SAndroid Build Coastguard Worker}
2307*d5c09012SAndroid Build Coastguard Worker
2308*d5c09012SAndroid Build Coastguard Worker// Response message for
2309*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.TransferEntitlements][google.cloud.channel.v1.CloudChannelService.TransferEntitlements].
2310*d5c09012SAndroid Build Coastguard Worker// This is put in the response field of google.longrunning.Operation.
2311*d5c09012SAndroid Build Coastguard Workermessage TransferEntitlementsResponse {
2312*d5c09012SAndroid Build Coastguard Worker  // The transferred entitlements.
2313*d5c09012SAndroid Build Coastguard Worker  repeated Entitlement entitlements = 1;
2314*d5c09012SAndroid Build Coastguard Worker}
2315*d5c09012SAndroid Build Coastguard Worker
2316*d5c09012SAndroid Build Coastguard Worker// Request message for
2317*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.TransferEntitlementsToGoogle][google.cloud.channel.v1.CloudChannelService.TransferEntitlementsToGoogle].
2318*d5c09012SAndroid Build Coastguard Workermessage TransferEntitlementsToGoogleRequest {
2319*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller's customer account where the
2320*d5c09012SAndroid Build Coastguard Worker  // entitlements transfer from. Parent uses the format:
2321*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}
2322*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
2323*d5c09012SAndroid Build Coastguard Worker
2324*d5c09012SAndroid Build Coastguard Worker  // Required. The entitlements to transfer to Google.
2325*d5c09012SAndroid Build Coastguard Worker  repeated Entitlement entitlements = 2
2326*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = REQUIRED];
2327*d5c09012SAndroid Build Coastguard Worker
2328*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2329*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2330*d5c09012SAndroid Build Coastguard Worker  // complete.
2331*d5c09012SAndroid Build Coastguard Worker  //
2332*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2333*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2334*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2335*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2336*d5c09012SAndroid Build Coastguard Worker  //
2337*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2338*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2339*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2340*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
2341*d5c09012SAndroid Build Coastguard Worker}
2342*d5c09012SAndroid Build Coastguard Worker
2343*d5c09012SAndroid Build Coastguard Worker// Request message for [CloudChannelService.ChangeParametersRequest][].
2344*d5c09012SAndroid Build Coastguard Workermessage ChangeParametersRequest {
2345*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the entitlement to update.
2346*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
2347*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2348*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
2349*d5c09012SAndroid Build Coastguard Worker
2350*d5c09012SAndroid Build Coastguard Worker  // Required. Entitlement parameters to update. You can only change editable
2351*d5c09012SAndroid Build Coastguard Worker  // parameters.
2352*d5c09012SAndroid Build Coastguard Worker  //
2353*d5c09012SAndroid Build Coastguard Worker  // To view the available Parameters for a request, refer to the
2354*d5c09012SAndroid Build Coastguard Worker  // [Offer.parameter_definitions][google.cloud.channel.v1.Offer.parameter_definitions]
2355*d5c09012SAndroid Build Coastguard Worker  // from the desired offer.
2356*d5c09012SAndroid Build Coastguard Worker  repeated Parameter parameters = 2 [(google.api.field_behavior) = REQUIRED];
2357*d5c09012SAndroid Build Coastguard Worker
2358*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2359*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2360*d5c09012SAndroid Build Coastguard Worker  // complete.
2361*d5c09012SAndroid Build Coastguard Worker  //
2362*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2363*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2364*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2365*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2366*d5c09012SAndroid Build Coastguard Worker  //
2367*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2368*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2369*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2370*d5c09012SAndroid Build Coastguard Worker  string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
2371*d5c09012SAndroid Build Coastguard Worker
2372*d5c09012SAndroid Build Coastguard Worker  // Optional. Purchase order ID provided by the reseller.
2373*d5c09012SAndroid Build Coastguard Worker  string purchase_order_id = 5 [(google.api.field_behavior) = OPTIONAL];
2374*d5c09012SAndroid Build Coastguard Worker}
2375*d5c09012SAndroid Build Coastguard Worker
2376*d5c09012SAndroid Build Coastguard Worker// Request message for
2377*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ChangeRenewalSettings][google.cloud.channel.v1.CloudChannelService.ChangeRenewalSettings].
2378*d5c09012SAndroid Build Coastguard Workermessage ChangeRenewalSettingsRequest {
2379*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the entitlement to update.
2380*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
2381*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2382*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
2383*d5c09012SAndroid Build Coastguard Worker
2384*d5c09012SAndroid Build Coastguard Worker  // Required. New renewal settings.
2385*d5c09012SAndroid Build Coastguard Worker  RenewalSettings renewal_settings = 4 [(google.api.field_behavior) = REQUIRED];
2386*d5c09012SAndroid Build Coastguard Worker
2387*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2388*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2389*d5c09012SAndroid Build Coastguard Worker  // complete.
2390*d5c09012SAndroid Build Coastguard Worker  //
2391*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2392*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2393*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2394*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2395*d5c09012SAndroid Build Coastguard Worker  //
2396*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2397*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2398*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2399*d5c09012SAndroid Build Coastguard Worker  string request_id = 5 [(google.api.field_behavior) = OPTIONAL];
2400*d5c09012SAndroid Build Coastguard Worker}
2401*d5c09012SAndroid Build Coastguard Worker
2402*d5c09012SAndroid Build Coastguard Worker// Request message for
2403*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ChangeOffer][google.cloud.channel.v1.CloudChannelService.ChangeOffer].
2404*d5c09012SAndroid Build Coastguard Workermessage ChangeOfferRequest {
2405*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the entitlement to update.
2406*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
2407*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2408*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
2409*d5c09012SAndroid Build Coastguard Worker
2410*d5c09012SAndroid Build Coastguard Worker  // Required. New Offer.
2411*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account_id}/offers/{offer_id}.
2412*d5c09012SAndroid Build Coastguard Worker  string offer = 2 [
2413*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2414*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2415*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Offer"
2416*d5c09012SAndroid Build Coastguard Worker    }
2417*d5c09012SAndroid Build Coastguard Worker  ];
2418*d5c09012SAndroid Build Coastguard Worker
2419*d5c09012SAndroid Build Coastguard Worker  // Optional. Parameters needed to purchase the Offer. To view the available
2420*d5c09012SAndroid Build Coastguard Worker  // Parameters refer to the
2421*d5c09012SAndroid Build Coastguard Worker  // [Offer.parameter_definitions][google.cloud.channel.v1.Offer.parameter_definitions]
2422*d5c09012SAndroid Build Coastguard Worker  // from the desired offer.
2423*d5c09012SAndroid Build Coastguard Worker  repeated Parameter parameters = 3 [(google.api.field_behavior) = OPTIONAL];
2424*d5c09012SAndroid Build Coastguard Worker
2425*d5c09012SAndroid Build Coastguard Worker  // Optional. Purchase order id provided by the reseller.
2426*d5c09012SAndroid Build Coastguard Worker  string purchase_order_id = 5 [(google.api.field_behavior) = OPTIONAL];
2427*d5c09012SAndroid Build Coastguard Worker
2428*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2429*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2430*d5c09012SAndroid Build Coastguard Worker  // complete.
2431*d5c09012SAndroid Build Coastguard Worker  //
2432*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2433*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2434*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2435*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2436*d5c09012SAndroid Build Coastguard Worker  //
2437*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2438*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2439*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2440*d5c09012SAndroid Build Coastguard Worker  string request_id = 6 [(google.api.field_behavior) = OPTIONAL];
2441*d5c09012SAndroid Build Coastguard Worker
2442*d5c09012SAndroid Build Coastguard Worker  // Optional. The billing account resource name that is used to pay for this
2443*d5c09012SAndroid Build Coastguard Worker  // entitlement when setting up billing on a trial subscription.
2444*d5c09012SAndroid Build Coastguard Worker  //
2445*d5c09012SAndroid Build Coastguard Worker  // This field is only relevant for multi-currency accounts. It should be
2446*d5c09012SAndroid Build Coastguard Worker  // left empty for single currency accounts.
2447*d5c09012SAndroid Build Coastguard Worker  string billing_account = 7 [(google.api.field_behavior) = OPTIONAL];
2448*d5c09012SAndroid Build Coastguard Worker}
2449*d5c09012SAndroid Build Coastguard Worker
2450*d5c09012SAndroid Build Coastguard Worker// Request message for
2451*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.StartPaidService][google.cloud.channel.v1.CloudChannelService.StartPaidService].
2452*d5c09012SAndroid Build Coastguard Workermessage StartPaidServiceRequest {
2453*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the entitlement to start a paid service for.
2454*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
2455*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2456*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
2457*d5c09012SAndroid Build Coastguard Worker
2458*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2459*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2460*d5c09012SAndroid Build Coastguard Worker  // complete.
2461*d5c09012SAndroid Build Coastguard Worker  //
2462*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2463*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2464*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2465*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2466*d5c09012SAndroid Build Coastguard Worker  //
2467*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2468*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2469*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2470*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
2471*d5c09012SAndroid Build Coastguard Worker}
2472*d5c09012SAndroid Build Coastguard Worker
2473*d5c09012SAndroid Build Coastguard Worker// Request message for
2474*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.CancelEntitlement][google.cloud.channel.v1.CloudChannelService.CancelEntitlement].
2475*d5c09012SAndroid Build Coastguard Workermessage CancelEntitlementRequest {
2476*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the entitlement to cancel.
2477*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
2478*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2479*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
2480*d5c09012SAndroid Build Coastguard Worker
2481*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2482*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2483*d5c09012SAndroid Build Coastguard Worker  // complete.
2484*d5c09012SAndroid Build Coastguard Worker  //
2485*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2486*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2487*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2488*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2489*d5c09012SAndroid Build Coastguard Worker  //
2490*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2491*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2492*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2493*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
2494*d5c09012SAndroid Build Coastguard Worker}
2495*d5c09012SAndroid Build Coastguard Worker
2496*d5c09012SAndroid Build Coastguard Worker// Request message for
2497*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.SuspendEntitlement][google.cloud.channel.v1.CloudChannelService.SuspendEntitlement].
2498*d5c09012SAndroid Build Coastguard Workermessage SuspendEntitlementRequest {
2499*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the entitlement to suspend.
2500*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
2501*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2502*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
2503*d5c09012SAndroid Build Coastguard Worker
2504*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2505*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2506*d5c09012SAndroid Build Coastguard Worker  // complete.
2507*d5c09012SAndroid Build Coastguard Worker  //
2508*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2509*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2510*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2511*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2512*d5c09012SAndroid Build Coastguard Worker  //
2513*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2514*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2515*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2516*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
2517*d5c09012SAndroid Build Coastguard Worker}
2518*d5c09012SAndroid Build Coastguard Worker
2519*d5c09012SAndroid Build Coastguard Worker// Request message for
2520*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ActivateEntitlement][google.cloud.channel.v1.CloudChannelService.ActivateEntitlement].
2521*d5c09012SAndroid Build Coastguard Workermessage ActivateEntitlementRequest {
2522*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the entitlement to activate.
2523*d5c09012SAndroid Build Coastguard Worker  // Name uses the format:
2524*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2525*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
2526*d5c09012SAndroid Build Coastguard Worker
2527*d5c09012SAndroid Build Coastguard Worker  // Optional. You can specify an optional unique request ID, and if you need to
2528*d5c09012SAndroid Build Coastguard Worker  // retry your request, the server will know to ignore the request if it's
2529*d5c09012SAndroid Build Coastguard Worker  // complete.
2530*d5c09012SAndroid Build Coastguard Worker  //
2531*d5c09012SAndroid Build Coastguard Worker  // For example, you make an initial request and the request times out. If you
2532*d5c09012SAndroid Build Coastguard Worker  // make the request again with the same request ID, the server can check if
2533*d5c09012SAndroid Build Coastguard Worker  // it received the original operation with the same request ID. If it did, it
2534*d5c09012SAndroid Build Coastguard Worker  // will ignore the second request.
2535*d5c09012SAndroid Build Coastguard Worker  //
2536*d5c09012SAndroid Build Coastguard Worker  // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
2537*d5c09012SAndroid Build Coastguard Worker  // with the exception that zero UUID is not supported
2538*d5c09012SAndroid Build Coastguard Worker  // (`00000000-0000-0000-0000-000000000000`).
2539*d5c09012SAndroid Build Coastguard Worker  string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
2540*d5c09012SAndroid Build Coastguard Worker}
2541*d5c09012SAndroid Build Coastguard Worker
2542*d5c09012SAndroid Build Coastguard Worker// Request message for LookupOffer.
2543*d5c09012SAndroid Build Coastguard Workermessage LookupOfferRequest {
2544*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the entitlement to retrieve the Offer.
2545*d5c09012SAndroid Build Coastguard Worker  // Entitlement uses the format:
2546*d5c09012SAndroid Build Coastguard Worker  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2547*d5c09012SAndroid Build Coastguard Worker  string entitlement = 1 [
2548*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2549*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2550*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Entitlement"
2551*d5c09012SAndroid Build Coastguard Worker    }
2552*d5c09012SAndroid Build Coastguard Worker  ];
2553*d5c09012SAndroid Build Coastguard Worker}
2554*d5c09012SAndroid Build Coastguard Worker
2555*d5c09012SAndroid Build Coastguard Worker// Request message for ListProducts.
2556*d5c09012SAndroid Build Coastguard Workermessage ListProductsRequest {
2557*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller account.
2558*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account_id}.
2559*d5c09012SAndroid Build Coastguard Worker  string account = 1 [(google.api.field_behavior) = REQUIRED];
2560*d5c09012SAndroid Build Coastguard Worker
2561*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server might return fewer results than
2562*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, returns at most 100 Products. The maximum value
2563*d5c09012SAndroid Build Coastguard Worker  // is 1000; the server will coerce values above 1000.
2564*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
2565*d5c09012SAndroid Build Coastguard Worker
2566*d5c09012SAndroid Build Coastguard Worker  // Optional. A token for a page of results other than the first page.
2567*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
2568*d5c09012SAndroid Build Coastguard Worker
2569*d5c09012SAndroid Build Coastguard Worker  // Optional. The BCP-47 language code. For example, "en-US". The
2570*d5c09012SAndroid Build Coastguard Worker  // response will localize in the corresponding language code, if specified.
2571*d5c09012SAndroid Build Coastguard Worker  // The default value is "en-US".
2572*d5c09012SAndroid Build Coastguard Worker  string language_code = 4 [(google.api.field_behavior) = OPTIONAL];
2573*d5c09012SAndroid Build Coastguard Worker}
2574*d5c09012SAndroid Build Coastguard Worker
2575*d5c09012SAndroid Build Coastguard Worker// Response message for ListProducts.
2576*d5c09012SAndroid Build Coastguard Workermessage ListProductsResponse {
2577*d5c09012SAndroid Build Coastguard Worker  // List of Products requested.
2578*d5c09012SAndroid Build Coastguard Worker  repeated Product products = 1;
2579*d5c09012SAndroid Build Coastguard Worker
2580*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2581*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2582*d5c09012SAndroid Build Coastguard Worker}
2583*d5c09012SAndroid Build Coastguard Worker
2584*d5c09012SAndroid Build Coastguard Worker// Request message for ListSkus.
2585*d5c09012SAndroid Build Coastguard Workermessage ListSkusRequest {
2586*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the Product to list SKUs for.
2587*d5c09012SAndroid Build Coastguard Worker  // Parent uses the format: products/{product_id}.
2588*d5c09012SAndroid Build Coastguard Worker  // Supports products/- to retrieve SKUs for all products.
2589*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
2590*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2591*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2592*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Product"
2593*d5c09012SAndroid Build Coastguard Worker    }
2594*d5c09012SAndroid Build Coastguard Worker  ];
2595*d5c09012SAndroid Build Coastguard Worker
2596*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the reseller.
2597*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account_id}.
2598*d5c09012SAndroid Build Coastguard Worker  string account = 2 [(google.api.field_behavior) = REQUIRED];
2599*d5c09012SAndroid Build Coastguard Worker
2600*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server might return fewer results than
2601*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, returns at most 100 SKUs. The maximum value is
2602*d5c09012SAndroid Build Coastguard Worker  // 1000; the server will coerce values above 1000.
2603*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
2604*d5c09012SAndroid Build Coastguard Worker
2605*d5c09012SAndroid Build Coastguard Worker  // Optional. A token for a page of results other than the first page.
2606*d5c09012SAndroid Build Coastguard Worker  // Optional.
2607*d5c09012SAndroid Build Coastguard Worker  string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
2608*d5c09012SAndroid Build Coastguard Worker
2609*d5c09012SAndroid Build Coastguard Worker  // Optional. The BCP-47 language code. For example, "en-US". The
2610*d5c09012SAndroid Build Coastguard Worker  // response will localize in the corresponding language code, if specified.
2611*d5c09012SAndroid Build Coastguard Worker  // The default value is "en-US".
2612*d5c09012SAndroid Build Coastguard Worker  string language_code = 5 [(google.api.field_behavior) = OPTIONAL];
2613*d5c09012SAndroid Build Coastguard Worker}
2614*d5c09012SAndroid Build Coastguard Worker
2615*d5c09012SAndroid Build Coastguard Worker// Response message for ListSkus.
2616*d5c09012SAndroid Build Coastguard Workermessage ListSkusResponse {
2617*d5c09012SAndroid Build Coastguard Worker  // The list of SKUs requested.
2618*d5c09012SAndroid Build Coastguard Worker  repeated Sku skus = 1;
2619*d5c09012SAndroid Build Coastguard Worker
2620*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2621*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2622*d5c09012SAndroid Build Coastguard Worker}
2623*d5c09012SAndroid Build Coastguard Worker
2624*d5c09012SAndroid Build Coastguard Worker// Request message for ListOffers.
2625*d5c09012SAndroid Build Coastguard Workermessage ListOffersRequest {
2626*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the reseller account from which to list
2627*d5c09012SAndroid Build Coastguard Worker  // Offers. Parent uses the format: accounts/{account_id}.
2628*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
2629*d5c09012SAndroid Build Coastguard Worker
2630*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server might return fewer results than
2631*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, returns at most 500 Offers. The maximum value is
2632*d5c09012SAndroid Build Coastguard Worker  // 1000; the server will coerce values above 1000.
2633*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
2634*d5c09012SAndroid Build Coastguard Worker
2635*d5c09012SAndroid Build Coastguard Worker  // Optional. A token for a page of results other than the first page.
2636*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
2637*d5c09012SAndroid Build Coastguard Worker
2638*d5c09012SAndroid Build Coastguard Worker  // Optional. The expression to filter results by name (name of
2639*d5c09012SAndroid Build Coastguard Worker  // the Offer), sku.name (name of the SKU), or sku.product.name (name of the
2640*d5c09012SAndroid Build Coastguard Worker  // Product).
2641*d5c09012SAndroid Build Coastguard Worker  // Example 1: sku.product.name=products/p1 AND sku.name!=products/p1/skus/s1
2642*d5c09012SAndroid Build Coastguard Worker  // Example 2: name=accounts/a1/offers/o1
2643*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
2644*d5c09012SAndroid Build Coastguard Worker
2645*d5c09012SAndroid Build Coastguard Worker  // Optional. The BCP-47 language code. For example, "en-US". The
2646*d5c09012SAndroid Build Coastguard Worker  // response will localize in the corresponding language code, if specified.
2647*d5c09012SAndroid Build Coastguard Worker  // The default value is "en-US".
2648*d5c09012SAndroid Build Coastguard Worker  string language_code = 5 [(google.api.field_behavior) = OPTIONAL];
2649*d5c09012SAndroid Build Coastguard Worker
2650*d5c09012SAndroid Build Coastguard Worker  // Optional. A boolean flag that determines if a response returns future
2651*d5c09012SAndroid Build Coastguard Worker  // offers 30 days from now. If the show_future_offers is true, the response
2652*d5c09012SAndroid Build Coastguard Worker  // will only contain offers that are scheduled to be available 30 days from
2653*d5c09012SAndroid Build Coastguard Worker  // now.
2654*d5c09012SAndroid Build Coastguard Worker  bool show_future_offers = 7 [(google.api.field_behavior) = OPTIONAL];
2655*d5c09012SAndroid Build Coastguard Worker}
2656*d5c09012SAndroid Build Coastguard Worker
2657*d5c09012SAndroid Build Coastguard Worker// Response message for ListOffers.
2658*d5c09012SAndroid Build Coastguard Workermessage ListOffersResponse {
2659*d5c09012SAndroid Build Coastguard Worker  // The list of Offers requested.
2660*d5c09012SAndroid Build Coastguard Worker  repeated Offer offers = 1;
2661*d5c09012SAndroid Build Coastguard Worker
2662*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2663*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2664*d5c09012SAndroid Build Coastguard Worker}
2665*d5c09012SAndroid Build Coastguard Worker
2666*d5c09012SAndroid Build Coastguard Worker// Request message for ListPurchasableSkus.
2667*d5c09012SAndroid Build Coastguard Workermessage ListPurchasableSkusRequest {
2668*d5c09012SAndroid Build Coastguard Worker  // List SKUs for a new entitlement. Make the purchase using
2669*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.CreateEntitlement][google.cloud.channel.v1.CloudChannelService.CreateEntitlement].
2670*d5c09012SAndroid Build Coastguard Worker  message CreateEntitlementPurchase {
2671*d5c09012SAndroid Build Coastguard Worker    // Required. List SKUs belonging to this Product.
2672*d5c09012SAndroid Build Coastguard Worker    // Format: products/{product_id}.
2673*d5c09012SAndroid Build Coastguard Worker    // Supports products/- to retrieve SKUs for all products.
2674*d5c09012SAndroid Build Coastguard Worker    string product = 1 [(google.api.field_behavior) = REQUIRED];
2675*d5c09012SAndroid Build Coastguard Worker  }
2676*d5c09012SAndroid Build Coastguard Worker
2677*d5c09012SAndroid Build Coastguard Worker  // List SKUs for upgrading or downgrading an entitlement. Make the purchase
2678*d5c09012SAndroid Build Coastguard Worker  // using
2679*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ChangeOffer][google.cloud.channel.v1.CloudChannelService.ChangeOffer].
2680*d5c09012SAndroid Build Coastguard Worker  message ChangeOfferPurchase {
2681*d5c09012SAndroid Build Coastguard Worker    // Change Type enum.
2682*d5c09012SAndroid Build Coastguard Worker    enum ChangeType {
2683*d5c09012SAndroid Build Coastguard Worker      // Not used.
2684*d5c09012SAndroid Build Coastguard Worker      CHANGE_TYPE_UNSPECIFIED = 0;
2685*d5c09012SAndroid Build Coastguard Worker
2686*d5c09012SAndroid Build Coastguard Worker      // SKU is an upgrade on the current entitlement.
2687*d5c09012SAndroid Build Coastguard Worker      UPGRADE = 1;
2688*d5c09012SAndroid Build Coastguard Worker
2689*d5c09012SAndroid Build Coastguard Worker      // SKU is a downgrade on the current entitlement.
2690*d5c09012SAndroid Build Coastguard Worker      DOWNGRADE = 2;
2691*d5c09012SAndroid Build Coastguard Worker    }
2692*d5c09012SAndroid Build Coastguard Worker
2693*d5c09012SAndroid Build Coastguard Worker    // Required. Resource name of the entitlement.
2694*d5c09012SAndroid Build Coastguard Worker    // Format:
2695*d5c09012SAndroid Build Coastguard Worker    // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2696*d5c09012SAndroid Build Coastguard Worker    string entitlement = 1 [(google.api.field_behavior) = REQUIRED];
2697*d5c09012SAndroid Build Coastguard Worker
2698*d5c09012SAndroid Build Coastguard Worker    // Required. Change Type for the entitlement.
2699*d5c09012SAndroid Build Coastguard Worker    ChangeType change_type = 2 [(google.api.field_behavior) = REQUIRED];
2700*d5c09012SAndroid Build Coastguard Worker  }
2701*d5c09012SAndroid Build Coastguard Worker
2702*d5c09012SAndroid Build Coastguard Worker  // Defines the intended purchase.
2703*d5c09012SAndroid Build Coastguard Worker  oneof purchase_option {
2704*d5c09012SAndroid Build Coastguard Worker    // List SKUs for CreateEntitlement purchase.
2705*d5c09012SAndroid Build Coastguard Worker    CreateEntitlementPurchase create_entitlement_purchase = 2;
2706*d5c09012SAndroid Build Coastguard Worker
2707*d5c09012SAndroid Build Coastguard Worker    // List SKUs for ChangeOffer purchase with a new SKU.
2708*d5c09012SAndroid Build Coastguard Worker    ChangeOfferPurchase change_offer_purchase = 3;
2709*d5c09012SAndroid Build Coastguard Worker  }
2710*d5c09012SAndroid Build Coastguard Worker
2711*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer to list SKUs for.
2712*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account_id}/customers/{customer_id}.
2713*d5c09012SAndroid Build Coastguard Worker  string customer = 1 [
2714*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2715*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2716*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
2717*d5c09012SAndroid Build Coastguard Worker    }
2718*d5c09012SAndroid Build Coastguard Worker  ];
2719*d5c09012SAndroid Build Coastguard Worker
2720*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server might return fewer results than
2721*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, returns at most 100 SKUs. The maximum value is
2722*d5c09012SAndroid Build Coastguard Worker  // 1000; the server will coerce values above 1000.
2723*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 4 [(google.api.field_behavior) = OPTIONAL];
2724*d5c09012SAndroid Build Coastguard Worker
2725*d5c09012SAndroid Build Coastguard Worker  // Optional. A token for a page of results other than the first page.
2726*d5c09012SAndroid Build Coastguard Worker  string page_token = 5 [(google.api.field_behavior) = OPTIONAL];
2727*d5c09012SAndroid Build Coastguard Worker
2728*d5c09012SAndroid Build Coastguard Worker  // Optional. The BCP-47 language code. For example, "en-US". The
2729*d5c09012SAndroid Build Coastguard Worker  // response will localize in the corresponding language code, if specified.
2730*d5c09012SAndroid Build Coastguard Worker  // The default value is "en-US".
2731*d5c09012SAndroid Build Coastguard Worker  string language_code = 6 [(google.api.field_behavior) = OPTIONAL];
2732*d5c09012SAndroid Build Coastguard Worker}
2733*d5c09012SAndroid Build Coastguard Worker
2734*d5c09012SAndroid Build Coastguard Worker// Response message for ListPurchasableSkus.
2735*d5c09012SAndroid Build Coastguard Workermessage ListPurchasableSkusResponse {
2736*d5c09012SAndroid Build Coastguard Worker  // The list of SKUs requested.
2737*d5c09012SAndroid Build Coastguard Worker  repeated PurchasableSku purchasable_skus = 1;
2738*d5c09012SAndroid Build Coastguard Worker
2739*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2740*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2741*d5c09012SAndroid Build Coastguard Worker}
2742*d5c09012SAndroid Build Coastguard Worker
2743*d5c09012SAndroid Build Coastguard Worker// SKU that you can purchase. This is used in ListPurchasableSku API
2744*d5c09012SAndroid Build Coastguard Worker// response.
2745*d5c09012SAndroid Build Coastguard Workermessage PurchasableSku {
2746*d5c09012SAndroid Build Coastguard Worker  // SKU
2747*d5c09012SAndroid Build Coastguard Worker  Sku sku = 1;
2748*d5c09012SAndroid Build Coastguard Worker}
2749*d5c09012SAndroid Build Coastguard Worker
2750*d5c09012SAndroid Build Coastguard Worker// Request message for ListPurchasableOffers.
2751*d5c09012SAndroid Build Coastguard Workermessage ListPurchasableOffersRequest {
2752*d5c09012SAndroid Build Coastguard Worker  // List Offers for CreateEntitlement purchase.
2753*d5c09012SAndroid Build Coastguard Worker  message CreateEntitlementPurchase {
2754*d5c09012SAndroid Build Coastguard Worker    // Required. SKU that the result should be restricted to.
2755*d5c09012SAndroid Build Coastguard Worker    // Format: products/{product_id}/skus/{sku_id}.
2756*d5c09012SAndroid Build Coastguard Worker    string sku = 1 [(google.api.field_behavior) = REQUIRED];
2757*d5c09012SAndroid Build Coastguard Worker
2758*d5c09012SAndroid Build Coastguard Worker    // Optional. Billing account that the result should be restricted to.
2759*d5c09012SAndroid Build Coastguard Worker    // Format: accounts/{account_id}/billingAccounts/{billing_account_id}.
2760*d5c09012SAndroid Build Coastguard Worker    string billing_account = 2 [(google.api.field_behavior) = OPTIONAL];
2761*d5c09012SAndroid Build Coastguard Worker  }
2762*d5c09012SAndroid Build Coastguard Worker
2763*d5c09012SAndroid Build Coastguard Worker  // List Offers for ChangeOffer purchase.
2764*d5c09012SAndroid Build Coastguard Worker  message ChangeOfferPurchase {
2765*d5c09012SAndroid Build Coastguard Worker    // Required. Resource name of the entitlement.
2766*d5c09012SAndroid Build Coastguard Worker    // Format:
2767*d5c09012SAndroid Build Coastguard Worker    // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2768*d5c09012SAndroid Build Coastguard Worker    string entitlement = 1 [(google.api.field_behavior) = REQUIRED];
2769*d5c09012SAndroid Build Coastguard Worker
2770*d5c09012SAndroid Build Coastguard Worker    // Optional. Resource name of the new target SKU. Provide this SKU when
2771*d5c09012SAndroid Build Coastguard Worker    // upgrading or downgrading an entitlement. Format:
2772*d5c09012SAndroid Build Coastguard Worker    // products/{product_id}/skus/{sku_id}
2773*d5c09012SAndroid Build Coastguard Worker    string new_sku = 2 [(google.api.field_behavior) = OPTIONAL];
2774*d5c09012SAndroid Build Coastguard Worker
2775*d5c09012SAndroid Build Coastguard Worker    // Optional. Resource name of the new target Billing Account. Provide this
2776*d5c09012SAndroid Build Coastguard Worker    // Billing Account when setting up billing for a trial subscription. Format:
2777*d5c09012SAndroid Build Coastguard Worker    // accounts/{account_id}/billingAccounts/{billing_account_id}.
2778*d5c09012SAndroid Build Coastguard Worker    //
2779*d5c09012SAndroid Build Coastguard Worker    // This field is only relevant for multi-currency accounts. It should be
2780*d5c09012SAndroid Build Coastguard Worker    // left empty for single currency accounts.
2781*d5c09012SAndroid Build Coastguard Worker    string billing_account = 3 [(google.api.field_behavior) = OPTIONAL];
2782*d5c09012SAndroid Build Coastguard Worker  }
2783*d5c09012SAndroid Build Coastguard Worker
2784*d5c09012SAndroid Build Coastguard Worker  // Defines the intended purchase.
2785*d5c09012SAndroid Build Coastguard Worker  oneof purchase_option {
2786*d5c09012SAndroid Build Coastguard Worker    // List Offers for CreateEntitlement purchase.
2787*d5c09012SAndroid Build Coastguard Worker    CreateEntitlementPurchase create_entitlement_purchase = 2;
2788*d5c09012SAndroid Build Coastguard Worker
2789*d5c09012SAndroid Build Coastguard Worker    // List Offers for ChangeOffer purchase.
2790*d5c09012SAndroid Build Coastguard Worker    ChangeOfferPurchase change_offer_purchase = 3;
2791*d5c09012SAndroid Build Coastguard Worker  }
2792*d5c09012SAndroid Build Coastguard Worker
2793*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer to list Offers for.
2794*d5c09012SAndroid Build Coastguard Worker  // Format: accounts/{account_id}/customers/{customer_id}.
2795*d5c09012SAndroid Build Coastguard Worker  string customer = 1 [
2796*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2797*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2798*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
2799*d5c09012SAndroid Build Coastguard Worker    }
2800*d5c09012SAndroid Build Coastguard Worker  ];
2801*d5c09012SAndroid Build Coastguard Worker
2802*d5c09012SAndroid Build Coastguard Worker  // Optional. Requested page size. Server might return fewer results than
2803*d5c09012SAndroid Build Coastguard Worker  // requested. If unspecified, returns at most 100 Offers. The maximum value is
2804*d5c09012SAndroid Build Coastguard Worker  // 1000; the server will coerce values above 1000.
2805*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 4 [(google.api.field_behavior) = OPTIONAL];
2806*d5c09012SAndroid Build Coastguard Worker
2807*d5c09012SAndroid Build Coastguard Worker  // Optional. A token for a page of results other than the first page.
2808*d5c09012SAndroid Build Coastguard Worker  string page_token = 5 [(google.api.field_behavior) = OPTIONAL];
2809*d5c09012SAndroid Build Coastguard Worker
2810*d5c09012SAndroid Build Coastguard Worker  // Optional. The BCP-47 language code. For example, "en-US". The
2811*d5c09012SAndroid Build Coastguard Worker  // response will localize in the corresponding language code, if specified.
2812*d5c09012SAndroid Build Coastguard Worker  // The default value is "en-US".
2813*d5c09012SAndroid Build Coastguard Worker  string language_code = 6 [(google.api.field_behavior) = OPTIONAL];
2814*d5c09012SAndroid Build Coastguard Worker}
2815*d5c09012SAndroid Build Coastguard Worker
2816*d5c09012SAndroid Build Coastguard Worker// Response message for ListPurchasableOffers.
2817*d5c09012SAndroid Build Coastguard Workermessage ListPurchasableOffersResponse {
2818*d5c09012SAndroid Build Coastguard Worker  // The list of Offers requested.
2819*d5c09012SAndroid Build Coastguard Worker  repeated PurchasableOffer purchasable_offers = 1;
2820*d5c09012SAndroid Build Coastguard Worker
2821*d5c09012SAndroid Build Coastguard Worker  // A token to retrieve the next page of results.
2822*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2823*d5c09012SAndroid Build Coastguard Worker}
2824*d5c09012SAndroid Build Coastguard Worker
2825*d5c09012SAndroid Build Coastguard Worker// Offer that you can purchase for a customer. This is used in the
2826*d5c09012SAndroid Build Coastguard Worker// ListPurchasableOffer API response.
2827*d5c09012SAndroid Build Coastguard Workermessage PurchasableOffer {
2828*d5c09012SAndroid Build Coastguard Worker  // Offer.
2829*d5c09012SAndroid Build Coastguard Worker  Offer offer = 1;
2830*d5c09012SAndroid Build Coastguard Worker}
2831*d5c09012SAndroid Build Coastguard Worker
2832*d5c09012SAndroid Build Coastguard Worker// Request message for QueryEligibleBillingAccounts.
2833*d5c09012SAndroid Build Coastguard Workermessage QueryEligibleBillingAccountsRequest {
2834*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the customer to list eligible billing
2835*d5c09012SAndroid Build Coastguard Worker  // accounts for. Format: accounts/{account_id}/customers/{customer_id}.
2836*d5c09012SAndroid Build Coastguard Worker  string customer = 1 [
2837*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2838*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2839*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Customer"
2840*d5c09012SAndroid Build Coastguard Worker    }
2841*d5c09012SAndroid Build Coastguard Worker  ];
2842*d5c09012SAndroid Build Coastguard Worker
2843*d5c09012SAndroid Build Coastguard Worker  // Required. List of SKUs to list eligible billing accounts for. At least one
2844*d5c09012SAndroid Build Coastguard Worker  // SKU is required. Format: products/{product_id}/skus/{sku_id}.
2845*d5c09012SAndroid Build Coastguard Worker  repeated string skus = 2 [(google.api.field_behavior) = REQUIRED];
2846*d5c09012SAndroid Build Coastguard Worker}
2847*d5c09012SAndroid Build Coastguard Worker
2848*d5c09012SAndroid Build Coastguard Worker// Response message for QueryEligibleBillingAccounts.
2849*d5c09012SAndroid Build Coastguard Workermessage QueryEligibleBillingAccountsResponse {
2850*d5c09012SAndroid Build Coastguard Worker  // List of SKU purchase groups where each group represents a set of SKUs that
2851*d5c09012SAndroid Build Coastguard Worker  // must be purchased using the same billing account. Each SKU from
2852*d5c09012SAndroid Build Coastguard Worker  // [QueryEligibleBillingAccountsRequest.skus] will appear in exactly one SKU
2853*d5c09012SAndroid Build Coastguard Worker  // group.
2854*d5c09012SAndroid Build Coastguard Worker  repeated SkuPurchaseGroup sku_purchase_groups = 1;
2855*d5c09012SAndroid Build Coastguard Worker}
2856*d5c09012SAndroid Build Coastguard Worker
2857*d5c09012SAndroid Build Coastguard Worker// Represents a set of SKUs that must be purchased using the same billing
2858*d5c09012SAndroid Build Coastguard Worker// account.
2859*d5c09012SAndroid Build Coastguard Workermessage SkuPurchaseGroup {
2860*d5c09012SAndroid Build Coastguard Worker  // Resource names of the SKUs included in this group.
2861*d5c09012SAndroid Build Coastguard Worker  // Format: products/{product_id}/skus/{sku_id}.
2862*d5c09012SAndroid Build Coastguard Worker  repeated string skus = 1;
2863*d5c09012SAndroid Build Coastguard Worker
2864*d5c09012SAndroid Build Coastguard Worker  // List of billing accounts that are eligible to purhcase these SKUs.
2865*d5c09012SAndroid Build Coastguard Worker  repeated BillingAccountPurchaseInfo billing_account_purchase_infos = 2;
2866*d5c09012SAndroid Build Coastguard Worker}
2867*d5c09012SAndroid Build Coastguard Worker
2868*d5c09012SAndroid Build Coastguard Worker// Represents a billing account that can be used to make a purchase.
2869*d5c09012SAndroid Build Coastguard Workermessage BillingAccountPurchaseInfo {
2870*d5c09012SAndroid Build Coastguard Worker  // The billing account resource.
2871*d5c09012SAndroid Build Coastguard Worker  BillingAccount billing_account = 1;
2872*d5c09012SAndroid Build Coastguard Worker}
2873*d5c09012SAndroid Build Coastguard Worker
2874*d5c09012SAndroid Build Coastguard Worker// Request Message for RegisterSubscriber.
2875*d5c09012SAndroid Build Coastguard Workermessage RegisterSubscriberRequest {
2876*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the account.
2877*d5c09012SAndroid Build Coastguard Worker  string account = 1 [(google.api.field_behavior) = REQUIRED];
2878*d5c09012SAndroid Build Coastguard Worker
2879*d5c09012SAndroid Build Coastguard Worker  // Required. Service account that provides subscriber access to the registered
2880*d5c09012SAndroid Build Coastguard Worker  // topic.
2881*d5c09012SAndroid Build Coastguard Worker  string service_account = 2 [(google.api.field_behavior) = REQUIRED];
2882*d5c09012SAndroid Build Coastguard Worker}
2883*d5c09012SAndroid Build Coastguard Worker
2884*d5c09012SAndroid Build Coastguard Worker// Response Message for RegisterSubscriber.
2885*d5c09012SAndroid Build Coastguard Workermessage RegisterSubscriberResponse {
2886*d5c09012SAndroid Build Coastguard Worker  // Name of the topic the subscriber will listen to.
2887*d5c09012SAndroid Build Coastguard Worker  string topic = 1;
2888*d5c09012SAndroid Build Coastguard Worker}
2889*d5c09012SAndroid Build Coastguard Worker
2890*d5c09012SAndroid Build Coastguard Worker// Request Message for UnregisterSubscriber.
2891*d5c09012SAndroid Build Coastguard Workermessage UnregisterSubscriberRequest {
2892*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the account.
2893*d5c09012SAndroid Build Coastguard Worker  string account = 1 [(google.api.field_behavior) = REQUIRED];
2894*d5c09012SAndroid Build Coastguard Worker
2895*d5c09012SAndroid Build Coastguard Worker  // Required. Service account to unregister from subscriber access to the
2896*d5c09012SAndroid Build Coastguard Worker  // topic.
2897*d5c09012SAndroid Build Coastguard Worker  string service_account = 2 [(google.api.field_behavior) = REQUIRED];
2898*d5c09012SAndroid Build Coastguard Worker}
2899*d5c09012SAndroid Build Coastguard Worker
2900*d5c09012SAndroid Build Coastguard Worker// Response Message for UnregisterSubscriber.
2901*d5c09012SAndroid Build Coastguard Workermessage UnregisterSubscriberResponse {
2902*d5c09012SAndroid Build Coastguard Worker  // Name of the topic the service account subscriber access was removed from.
2903*d5c09012SAndroid Build Coastguard Worker  string topic = 1;
2904*d5c09012SAndroid Build Coastguard Worker}
2905*d5c09012SAndroid Build Coastguard Worker
2906*d5c09012SAndroid Build Coastguard Worker// Request Message for ListSubscribers.
2907*d5c09012SAndroid Build Coastguard Workermessage ListSubscribersRequest {
2908*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the account.
2909*d5c09012SAndroid Build Coastguard Worker  string account = 1 [(google.api.field_behavior) = REQUIRED];
2910*d5c09012SAndroid Build Coastguard Worker
2911*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of service accounts to return. The service may
2912*d5c09012SAndroid Build Coastguard Worker  // return fewer than this value. If unspecified, returns at most 100 service
2913*d5c09012SAndroid Build Coastguard Worker  // accounts. The maximum value is 1000; the server will coerce values above
2914*d5c09012SAndroid Build Coastguard Worker  // 1000.
2915*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
2916*d5c09012SAndroid Build Coastguard Worker
2917*d5c09012SAndroid Build Coastguard Worker  // Optional. A page token, received from a previous `ListSubscribers` call.
2918*d5c09012SAndroid Build Coastguard Worker  // Provide this to retrieve the subsequent page.
2919*d5c09012SAndroid Build Coastguard Worker  //
2920*d5c09012SAndroid Build Coastguard Worker  // When paginating, all other parameters provided to `ListSubscribers` must
2921*d5c09012SAndroid Build Coastguard Worker  // match the call that provided the page token.
2922*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
2923*d5c09012SAndroid Build Coastguard Worker}
2924*d5c09012SAndroid Build Coastguard Worker
2925*d5c09012SAndroid Build Coastguard Worker// Response Message for ListSubscribers.
2926*d5c09012SAndroid Build Coastguard Workermessage ListSubscribersResponse {
2927*d5c09012SAndroid Build Coastguard Worker  // Name of the topic registered with the reseller.
2928*d5c09012SAndroid Build Coastguard Worker  string topic = 1;
2929*d5c09012SAndroid Build Coastguard Worker
2930*d5c09012SAndroid Build Coastguard Worker  // List of service accounts which have subscriber access to the topic.
2931*d5c09012SAndroid Build Coastguard Worker  repeated string service_accounts = 2;
2932*d5c09012SAndroid Build Coastguard Worker
2933*d5c09012SAndroid Build Coastguard Worker  // A token that can be sent as `page_token` to retrieve the next page.
2934*d5c09012SAndroid Build Coastguard Worker  // If this field is omitted, there are no subsequent pages.
2935*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 3;
2936*d5c09012SAndroid Build Coastguard Worker}
2937*d5c09012SAndroid Build Coastguard Worker
2938*d5c09012SAndroid Build Coastguard Worker// Request message for
2939*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListEntitlementChanges][google.cloud.channel.v1.CloudChannelService.ListEntitlementChanges]
2940*d5c09012SAndroid Build Coastguard Workermessage ListEntitlementChangesRequest {
2941*d5c09012SAndroid Build Coastguard Worker  // Required. The resource name of the entitlement for which to list
2942*d5c09012SAndroid Build Coastguard Worker  // entitlement changes. The `-` wildcard may be used to match entitlements
2943*d5c09012SAndroid Build Coastguard Worker  // across a customer. Formats:
2944*d5c09012SAndroid Build Coastguard Worker  //
2945*d5c09012SAndroid Build Coastguard Worker  //   * accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
2946*d5c09012SAndroid Build Coastguard Worker  //   * accounts/{account_id}/customers/{customer_id}/entitlements/-
2947*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
2948*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
2949*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
2950*d5c09012SAndroid Build Coastguard Worker      type: "cloudchannel.googleapis.com/Entitlement"
2951*d5c09012SAndroid Build Coastguard Worker    }
2952*d5c09012SAndroid Build Coastguard Worker  ];
2953*d5c09012SAndroid Build Coastguard Worker
2954*d5c09012SAndroid Build Coastguard Worker  // Optional. The maximum number of entitlement changes to return. The service
2955*d5c09012SAndroid Build Coastguard Worker  // may return fewer than this value. If unspecified, returns at most 10
2956*d5c09012SAndroid Build Coastguard Worker  // entitlement changes. The maximum value is 50; the server will coerce values
2957*d5c09012SAndroid Build Coastguard Worker  // above 50.
2958*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
2959*d5c09012SAndroid Build Coastguard Worker
2960*d5c09012SAndroid Build Coastguard Worker  // Optional. A page token, received from a previous
2961*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListEntitlementChanges][google.cloud.channel.v1.CloudChannelService.ListEntitlementChanges]
2962*d5c09012SAndroid Build Coastguard Worker  // call. Provide this to retrieve the subsequent page.
2963*d5c09012SAndroid Build Coastguard Worker  //
2964*d5c09012SAndroid Build Coastguard Worker  // When paginating, all other parameters provided to
2965*d5c09012SAndroid Build Coastguard Worker  // [CloudChannelService.ListEntitlementChanges][google.cloud.channel.v1.CloudChannelService.ListEntitlementChanges]
2966*d5c09012SAndroid Build Coastguard Worker  // must match the call that provided the page token.
2967*d5c09012SAndroid Build Coastguard Worker  string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
2968*d5c09012SAndroid Build Coastguard Worker
2969*d5c09012SAndroid Build Coastguard Worker  // Optional. Filters applied to the list results.
2970*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
2971*d5c09012SAndroid Build Coastguard Worker}
2972*d5c09012SAndroid Build Coastguard Worker
2973*d5c09012SAndroid Build Coastguard Worker// Response message for
2974*d5c09012SAndroid Build Coastguard Worker// [CloudChannelService.ListEntitlementChanges][google.cloud.channel.v1.CloudChannelService.ListEntitlementChanges]
2975*d5c09012SAndroid Build Coastguard Workermessage ListEntitlementChangesResponse {
2976*d5c09012SAndroid Build Coastguard Worker  // The list of entitlement changes.
2977*d5c09012SAndroid Build Coastguard Worker  repeated EntitlementChange entitlement_changes = 1;
2978*d5c09012SAndroid Build Coastguard Worker
2979*d5c09012SAndroid Build Coastguard Worker  // A token to list the next page of results.
2980*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
2981*d5c09012SAndroid Build Coastguard Worker}
2982