xref: /aosp_15_r20/external/googleapis/google/cloud/cloudcontrolspartner/v1beta/customers.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.cloudcontrolspartner.v1beta;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto";
21*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/cloudcontrolspartner/v1beta/completion_state.proto";
22*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
23*d5c09012SAndroid Build Coastguard Worker
24*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.CloudControlsPartner.V1Beta";
25*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/cloudcontrolspartner/apiv1beta/cloudcontrolspartnerpb;cloudcontrolspartnerpb";
26*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
27*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "CustomersProto";
28*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.cloudcontrolspartner.v1beta";
29*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\CloudControlsPartner\\V1beta";
30*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::CloudControlsPartner::V1beta";
31*d5c09012SAndroid Build Coastguard Worker
32*d5c09012SAndroid Build Coastguard Worker// Contains metadata around a Cloud Controls Partner Customer
33*d5c09012SAndroid Build Coastguard Workermessage Customer {
34*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
35*d5c09012SAndroid Build Coastguard Worker    type: "cloudcontrolspartner.googleapis.com/Customer"
36*d5c09012SAndroid Build Coastguard Worker    pattern: "organizations/{organization}/locations/{location}/customers/{customer}"
37*d5c09012SAndroid Build Coastguard Worker    plural: "customers"
38*d5c09012SAndroid Build Coastguard Worker    singular: "customer"
39*d5c09012SAndroid Build Coastguard Worker  };
40*d5c09012SAndroid Build Coastguard Worker
41*d5c09012SAndroid Build Coastguard Worker  // Identifier. Format:
42*d5c09012SAndroid Build Coastguard Worker  // organizations/{organization}/locations/{location}/customers/{customer}
43*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = IDENTIFIER];
44*d5c09012SAndroid Build Coastguard Worker
45*d5c09012SAndroid Build Coastguard Worker  // The customer organization's display name. E.g. "google.com".
46*d5c09012SAndroid Build Coastguard Worker  string display_name = 2;
47*d5c09012SAndroid Build Coastguard Worker
48*d5c09012SAndroid Build Coastguard Worker  // Container for customer onboarding steps
49*d5c09012SAndroid Build Coastguard Worker  CustomerOnboardingState customer_onboarding_state = 3;
50*d5c09012SAndroid Build Coastguard Worker
51*d5c09012SAndroid Build Coastguard Worker  // Indicates whether a customer is fully onboarded
52*d5c09012SAndroid Build Coastguard Worker  bool is_onboarded = 4;
53*d5c09012SAndroid Build Coastguard Worker}
54*d5c09012SAndroid Build Coastguard Worker
55*d5c09012SAndroid Build Coastguard Worker// Request to list customers
56*d5c09012SAndroid Build Coastguard Workermessage ListCustomersRequest {
57*d5c09012SAndroid Build Coastguard Worker  // Required. Parent resource
58*d5c09012SAndroid Build Coastguard Worker  // Format: organizations/{organization}/locations/{location}
59*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
60*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
61*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
62*d5c09012SAndroid Build Coastguard Worker      child_type: "cloudcontrolspartner.googleapis.com/Customer"
63*d5c09012SAndroid Build Coastguard Worker    }
64*d5c09012SAndroid Build Coastguard Worker  ];
65*d5c09012SAndroid Build Coastguard Worker
66*d5c09012SAndroid Build Coastguard Worker  // The maximum number of Customers to return. The service may return fewer
67*d5c09012SAndroid Build Coastguard Worker  // than this value. If unspecified, at most 500 Customers will be returned.
68*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
69*d5c09012SAndroid Build Coastguard Worker
70*d5c09012SAndroid Build Coastguard Worker  // A page token, received from a previous `ListCustomers` call.
71*d5c09012SAndroid Build Coastguard Worker  // Provide this to retrieve the subsequent page.
72*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
73*d5c09012SAndroid Build Coastguard Worker
74*d5c09012SAndroid Build Coastguard Worker  // Optional. Filtering results
75*d5c09012SAndroid Build Coastguard Worker  string filter = 4 [(google.api.field_behavior) = OPTIONAL];
76*d5c09012SAndroid Build Coastguard Worker
77*d5c09012SAndroid Build Coastguard Worker  // Optional. Hint for how to order the results
78*d5c09012SAndroid Build Coastguard Worker  string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
79*d5c09012SAndroid Build Coastguard Worker}
80*d5c09012SAndroid Build Coastguard Worker
81*d5c09012SAndroid Build Coastguard Worker// Response message for list customer Customers requests
82*d5c09012SAndroid Build Coastguard Workermessage ListCustomersResponse {
83*d5c09012SAndroid Build Coastguard Worker  // List of customers
84*d5c09012SAndroid Build Coastguard Worker  repeated Customer customers = 1;
85*d5c09012SAndroid Build Coastguard Worker
86*d5c09012SAndroid Build Coastguard Worker  // A token that can be sent as `page_token` to retrieve the next page.
87*d5c09012SAndroid Build Coastguard Worker  // If this field is omitted, there are no subsequent pages.
88*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
89*d5c09012SAndroid Build Coastguard Worker
90*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
91*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable = 3;
92*d5c09012SAndroid Build Coastguard Worker}
93*d5c09012SAndroid Build Coastguard Worker
94*d5c09012SAndroid Build Coastguard Worker// Message for getting a customer
95*d5c09012SAndroid Build Coastguard Workermessage GetCustomerRequest {
96*d5c09012SAndroid Build Coastguard Worker  // Required. Format:
97*d5c09012SAndroid Build Coastguard Worker  // organizations/{organization}/locations/{location}/customers/{customer}
98*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
99*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
100*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
101*d5c09012SAndroid Build Coastguard Worker      type: "cloudcontrolspartner.googleapis.com/Customer"
102*d5c09012SAndroid Build Coastguard Worker    }
103*d5c09012SAndroid Build Coastguard Worker  ];
104*d5c09012SAndroid Build Coastguard Worker}
105*d5c09012SAndroid Build Coastguard Worker
106*d5c09012SAndroid Build Coastguard Worker// Container for customer onboarding steps
107*d5c09012SAndroid Build Coastguard Workermessage CustomerOnboardingState {
108*d5c09012SAndroid Build Coastguard Worker  // List of customer onboarding steps
109*d5c09012SAndroid Build Coastguard Worker  repeated CustomerOnboardingStep onboarding_steps = 1;
110*d5c09012SAndroid Build Coastguard Worker}
111*d5c09012SAndroid Build Coastguard Worker
112*d5c09012SAndroid Build Coastguard Worker// Container for customer onboarding information
113*d5c09012SAndroid Build Coastguard Workermessage CustomerOnboardingStep {
114*d5c09012SAndroid Build Coastguard Worker  // Enum for possible onboarding steps
115*d5c09012SAndroid Build Coastguard Worker  enum Step {
116*d5c09012SAndroid Build Coastguard Worker    // Unspecified step
117*d5c09012SAndroid Build Coastguard Worker    STEP_UNSPECIFIED = 0;
118*d5c09012SAndroid Build Coastguard Worker
119*d5c09012SAndroid Build Coastguard Worker    // KAJ Enrollment
120*d5c09012SAndroid Build Coastguard Worker    KAJ_ENROLLMENT = 1;
121*d5c09012SAndroid Build Coastguard Worker
122*d5c09012SAndroid Build Coastguard Worker    // Customer Environment
123*d5c09012SAndroid Build Coastguard Worker    CUSTOMER_ENVIRONMENT = 2;
124*d5c09012SAndroid Build Coastguard Worker  }
125*d5c09012SAndroid Build Coastguard Worker
126*d5c09012SAndroid Build Coastguard Worker  // The onboarding step
127*d5c09012SAndroid Build Coastguard Worker  Step step = 1;
128*d5c09012SAndroid Build Coastguard Worker
129*d5c09012SAndroid Build Coastguard Worker  // The starting time of the onboarding step
130*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp start_time = 2;
131*d5c09012SAndroid Build Coastguard Worker
132*d5c09012SAndroid Build Coastguard Worker  // The completion time of the onboarding step
133*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp completion_time = 3;
134*d5c09012SAndroid Build Coastguard Worker
135*d5c09012SAndroid Build Coastguard Worker  // Output only. Current state of the step
136*d5c09012SAndroid Build Coastguard Worker  CompletionState completion_state = 4
137*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
138*d5c09012SAndroid Build Coastguard Worker}
139