1*d5c09012SAndroid Build Coastguard Worker// Copyright 2022 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.pubsublite.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/pubsublite/v1/common.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 26*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 27*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 28*d5c09012SAndroid Build Coastguard Worker 29*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.PubSubLite.V1"; 30*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/pubsublite/apiv1/pubsublitepb;pubsublitepb"; 31*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 32*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "AdminProto"; 33*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.pubsublite.proto"; 34*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\PubSubLite\\V1"; 35*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::PubSubLite::V1"; 36*d5c09012SAndroid Build Coastguard Worker 37*d5c09012SAndroid Build Coastguard Worker// The service that a client application uses to manage topics and 38*d5c09012SAndroid Build Coastguard Worker// subscriptions, such creating, listing, and deleting topics and subscriptions. 39*d5c09012SAndroid Build Coastguard Workerservice AdminService { 40*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "pubsublite.googleapis.com"; 41*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 42*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 43*d5c09012SAndroid Build Coastguard Worker 44*d5c09012SAndroid Build Coastguard Worker // Creates a new topic. 45*d5c09012SAndroid Build Coastguard Worker rpc CreateTopic(CreateTopicRequest) returns (Topic) { 46*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 47*d5c09012SAndroid Build Coastguard Worker post: "/v1/admin/{parent=projects/*/locations/*}/topics" 48*d5c09012SAndroid Build Coastguard Worker body: "topic" 49*d5c09012SAndroid Build Coastguard Worker }; 50*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,topic,topic_id"; 51*d5c09012SAndroid Build Coastguard Worker } 52*d5c09012SAndroid Build Coastguard Worker 53*d5c09012SAndroid Build Coastguard Worker // Returns the topic configuration. 54*d5c09012SAndroid Build Coastguard Worker rpc GetTopic(GetTopicRequest) returns (Topic) { 55*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 56*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{name=projects/*/locations/*/topics/*}" 57*d5c09012SAndroid Build Coastguard Worker }; 58*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 59*d5c09012SAndroid Build Coastguard Worker } 60*d5c09012SAndroid Build Coastguard Worker 61*d5c09012SAndroid Build Coastguard Worker // Returns the partition information for the requested topic. 62*d5c09012SAndroid Build Coastguard Worker rpc GetTopicPartitions(GetTopicPartitionsRequest) returns (TopicPartitions) { 63*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 64*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{name=projects/*/locations/*/topics/*}/partitions" 65*d5c09012SAndroid Build Coastguard Worker }; 66*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 67*d5c09012SAndroid Build Coastguard Worker } 68*d5c09012SAndroid Build Coastguard Worker 69*d5c09012SAndroid Build Coastguard Worker // Returns the list of topics for the given project. 70*d5c09012SAndroid Build Coastguard Worker rpc ListTopics(ListTopicsRequest) returns (ListTopicsResponse) { 71*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 72*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{parent=projects/*/locations/*}/topics" 73*d5c09012SAndroid Build Coastguard Worker }; 74*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 75*d5c09012SAndroid Build Coastguard Worker } 76*d5c09012SAndroid Build Coastguard Worker 77*d5c09012SAndroid Build Coastguard Worker // Updates properties of the specified topic. 78*d5c09012SAndroid Build Coastguard Worker rpc UpdateTopic(UpdateTopicRequest) returns (Topic) { 79*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 80*d5c09012SAndroid Build Coastguard Worker patch: "/v1/admin/{topic.name=projects/*/locations/*/topics/*}" 81*d5c09012SAndroid Build Coastguard Worker body: "topic" 82*d5c09012SAndroid Build Coastguard Worker }; 83*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "topic,update_mask"; 84*d5c09012SAndroid Build Coastguard Worker } 85*d5c09012SAndroid Build Coastguard Worker 86*d5c09012SAndroid Build Coastguard Worker // Deletes the specified topic. 87*d5c09012SAndroid Build Coastguard Worker rpc DeleteTopic(DeleteTopicRequest) returns (google.protobuf.Empty) { 88*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 89*d5c09012SAndroid Build Coastguard Worker delete: "/v1/admin/{name=projects/*/locations/*/topics/*}" 90*d5c09012SAndroid Build Coastguard Worker }; 91*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 92*d5c09012SAndroid Build Coastguard Worker } 93*d5c09012SAndroid Build Coastguard Worker 94*d5c09012SAndroid Build Coastguard Worker // Lists the subscriptions attached to the specified topic. 95*d5c09012SAndroid Build Coastguard Worker rpc ListTopicSubscriptions(ListTopicSubscriptionsRequest) 96*d5c09012SAndroid Build Coastguard Worker returns (ListTopicSubscriptionsResponse) { 97*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 98*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{name=projects/*/locations/*/topics/*}/subscriptions" 99*d5c09012SAndroid Build Coastguard Worker }; 100*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 101*d5c09012SAndroid Build Coastguard Worker } 102*d5c09012SAndroid Build Coastguard Worker 103*d5c09012SAndroid Build Coastguard Worker // Creates a new subscription. 104*d5c09012SAndroid Build Coastguard Worker rpc CreateSubscription(CreateSubscriptionRequest) returns (Subscription) { 105*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 106*d5c09012SAndroid Build Coastguard Worker post: "/v1/admin/{parent=projects/*/locations/*}/subscriptions" 107*d5c09012SAndroid Build Coastguard Worker body: "subscription" 108*d5c09012SAndroid Build Coastguard Worker }; 109*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 110*d5c09012SAndroid Build Coastguard Worker "parent,subscription,subscription_id"; 111*d5c09012SAndroid Build Coastguard Worker } 112*d5c09012SAndroid Build Coastguard Worker 113*d5c09012SAndroid Build Coastguard Worker // Returns the subscription configuration. 114*d5c09012SAndroid Build Coastguard Worker rpc GetSubscription(GetSubscriptionRequest) returns (Subscription) { 115*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 116*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{name=projects/*/locations/*/subscriptions/*}" 117*d5c09012SAndroid Build Coastguard Worker }; 118*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 119*d5c09012SAndroid Build Coastguard Worker } 120*d5c09012SAndroid Build Coastguard Worker 121*d5c09012SAndroid Build Coastguard Worker // Returns the list of subscriptions for the given project. 122*d5c09012SAndroid Build Coastguard Worker rpc ListSubscriptions(ListSubscriptionsRequest) 123*d5c09012SAndroid Build Coastguard Worker returns (ListSubscriptionsResponse) { 124*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 125*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{parent=projects/*/locations/*}/subscriptions" 126*d5c09012SAndroid Build Coastguard Worker }; 127*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 128*d5c09012SAndroid Build Coastguard Worker } 129*d5c09012SAndroid Build Coastguard Worker 130*d5c09012SAndroid Build Coastguard Worker // Updates properties of the specified subscription. 131*d5c09012SAndroid Build Coastguard Worker rpc UpdateSubscription(UpdateSubscriptionRequest) returns (Subscription) { 132*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 133*d5c09012SAndroid Build Coastguard Worker patch: "/v1/admin/{subscription.name=projects/*/locations/*/subscriptions/*}" 134*d5c09012SAndroid Build Coastguard Worker body: "subscription" 135*d5c09012SAndroid Build Coastguard Worker }; 136*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "subscription,update_mask"; 137*d5c09012SAndroid Build Coastguard Worker } 138*d5c09012SAndroid Build Coastguard Worker 139*d5c09012SAndroid Build Coastguard Worker // Deletes the specified subscription. 140*d5c09012SAndroid Build Coastguard Worker rpc DeleteSubscription(DeleteSubscriptionRequest) 141*d5c09012SAndroid Build Coastguard Worker returns (google.protobuf.Empty) { 142*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 143*d5c09012SAndroid Build Coastguard Worker delete: "/v1/admin/{name=projects/*/locations/*/subscriptions/*}" 144*d5c09012SAndroid Build Coastguard Worker }; 145*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 146*d5c09012SAndroid Build Coastguard Worker } 147*d5c09012SAndroid Build Coastguard Worker 148*d5c09012SAndroid Build Coastguard Worker // Performs an out-of-band seek for a subscription to a specified target, 149*d5c09012SAndroid Build Coastguard Worker // which may be timestamps or named positions within the message backlog. 150*d5c09012SAndroid Build Coastguard Worker // Seek translates these targets to cursors for each partition and 151*d5c09012SAndroid Build Coastguard Worker // orchestrates subscribers to start consuming messages from these seek 152*d5c09012SAndroid Build Coastguard Worker // cursors. 153*d5c09012SAndroid Build Coastguard Worker // 154*d5c09012SAndroid Build Coastguard Worker // If an operation is returned, the seek has been registered and subscribers 155*d5c09012SAndroid Build Coastguard Worker // will eventually receive messages from the seek cursors (i.e. eventual 156*d5c09012SAndroid Build Coastguard Worker // consistency), as long as they are using a minimum supported client library 157*d5c09012SAndroid Build Coastguard Worker // version and not a system that tracks cursors independently of Pub/Sub Lite 158*d5c09012SAndroid Build Coastguard Worker // (e.g. Apache Beam, Dataflow, Spark). The seek operation will fail for 159*d5c09012SAndroid Build Coastguard Worker // unsupported clients. 160*d5c09012SAndroid Build Coastguard Worker // 161*d5c09012SAndroid Build Coastguard Worker // If clients would like to know when subscribers react to the seek (or not), 162*d5c09012SAndroid Build Coastguard Worker // they can poll the operation. The seek operation will succeed and complete 163*d5c09012SAndroid Build Coastguard Worker // once subscribers are ready to receive messages from the seek cursors for 164*d5c09012SAndroid Build Coastguard Worker // all partitions of the topic. This means that the seek operation will not 165*d5c09012SAndroid Build Coastguard Worker // complete until all subscribers come online. 166*d5c09012SAndroid Build Coastguard Worker // 167*d5c09012SAndroid Build Coastguard Worker // If the previous seek operation has not yet completed, it will be aborted 168*d5c09012SAndroid Build Coastguard Worker // and the new invocation of seek will supersede it. 169*d5c09012SAndroid Build Coastguard Worker rpc SeekSubscription(SeekSubscriptionRequest) 170*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 171*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 172*d5c09012SAndroid Build Coastguard Worker post: "/v1/admin/{name=projects/*/locations/*/subscriptions/*}:seek" 173*d5c09012SAndroid Build Coastguard Worker body: "*" 174*d5c09012SAndroid Build Coastguard Worker }; 175*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 176*d5c09012SAndroid Build Coastguard Worker response_type: "SeekSubscriptionResponse" 177*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 178*d5c09012SAndroid Build Coastguard Worker }; 179*d5c09012SAndroid Build Coastguard Worker } 180*d5c09012SAndroid Build Coastguard Worker 181*d5c09012SAndroid Build Coastguard Worker // Creates a new reservation. 182*d5c09012SAndroid Build Coastguard Worker rpc CreateReservation(CreateReservationRequest) returns (Reservation) { 183*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 184*d5c09012SAndroid Build Coastguard Worker post: "/v1/admin/{parent=projects/*/locations/*}/reservations" 185*d5c09012SAndroid Build Coastguard Worker body: "reservation" 186*d5c09012SAndroid Build Coastguard Worker }; 187*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,reservation,reservation_id"; 188*d5c09012SAndroid Build Coastguard Worker } 189*d5c09012SAndroid Build Coastguard Worker 190*d5c09012SAndroid Build Coastguard Worker // Returns the reservation configuration. 191*d5c09012SAndroid Build Coastguard Worker rpc GetReservation(GetReservationRequest) returns (Reservation) { 192*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 193*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{name=projects/*/locations/*/reservations/*}" 194*d5c09012SAndroid Build Coastguard Worker }; 195*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 196*d5c09012SAndroid Build Coastguard Worker } 197*d5c09012SAndroid Build Coastguard Worker 198*d5c09012SAndroid Build Coastguard Worker // Returns the list of reservations for the given project. 199*d5c09012SAndroid Build Coastguard Worker rpc ListReservations(ListReservationsRequest) 200*d5c09012SAndroid Build Coastguard Worker returns (ListReservationsResponse) { 201*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 202*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{parent=projects/*/locations/*}/reservations" 203*d5c09012SAndroid Build Coastguard Worker }; 204*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 205*d5c09012SAndroid Build Coastguard Worker } 206*d5c09012SAndroid Build Coastguard Worker 207*d5c09012SAndroid Build Coastguard Worker // Updates properties of the specified reservation. 208*d5c09012SAndroid Build Coastguard Worker rpc UpdateReservation(UpdateReservationRequest) returns (Reservation) { 209*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 210*d5c09012SAndroid Build Coastguard Worker patch: "/v1/admin/{reservation.name=projects/*/locations/*/reservations/*}" 211*d5c09012SAndroid Build Coastguard Worker body: "reservation" 212*d5c09012SAndroid Build Coastguard Worker }; 213*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "reservation,update_mask"; 214*d5c09012SAndroid Build Coastguard Worker } 215*d5c09012SAndroid Build Coastguard Worker 216*d5c09012SAndroid Build Coastguard Worker // Deletes the specified reservation. 217*d5c09012SAndroid Build Coastguard Worker rpc DeleteReservation(DeleteReservationRequest) 218*d5c09012SAndroid Build Coastguard Worker returns (google.protobuf.Empty) { 219*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 220*d5c09012SAndroid Build Coastguard Worker delete: "/v1/admin/{name=projects/*/locations/*/reservations/*}" 221*d5c09012SAndroid Build Coastguard Worker }; 222*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 223*d5c09012SAndroid Build Coastguard Worker } 224*d5c09012SAndroid Build Coastguard Worker 225*d5c09012SAndroid Build Coastguard Worker // Lists the topics attached to the specified reservation. 226*d5c09012SAndroid Build Coastguard Worker rpc ListReservationTopics(ListReservationTopicsRequest) 227*d5c09012SAndroid Build Coastguard Worker returns (ListReservationTopicsResponse) { 228*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 229*d5c09012SAndroid Build Coastguard Worker get: "/v1/admin/{name=projects/*/locations/*/reservations/*}/topics" 230*d5c09012SAndroid Build Coastguard Worker }; 231*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 232*d5c09012SAndroid Build Coastguard Worker } 233*d5c09012SAndroid Build Coastguard Worker} 234*d5c09012SAndroid Build Coastguard Worker 235*d5c09012SAndroid Build Coastguard Worker// Request for CreateTopic. 236*d5c09012SAndroid Build Coastguard Workermessage CreateTopicRequest { 237*d5c09012SAndroid Build Coastguard Worker // Required. The parent location in which to create the topic. 238*d5c09012SAndroid Build Coastguard Worker // Structured like `projects/{project_number}/locations/{location}`. 239*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 240*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 241*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 242*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 243*d5c09012SAndroid Build Coastguard Worker } 244*d5c09012SAndroid Build Coastguard Worker ]; 245*d5c09012SAndroid Build Coastguard Worker 246*d5c09012SAndroid Build Coastguard Worker // Required. Configuration of the topic to create. Its `name` field is 247*d5c09012SAndroid Build Coastguard Worker // ignored. 248*d5c09012SAndroid Build Coastguard Worker Topic topic = 2 [(google.api.field_behavior) = REQUIRED]; 249*d5c09012SAndroid Build Coastguard Worker 250*d5c09012SAndroid Build Coastguard Worker // Required. The ID to use for the topic, which will become the final 251*d5c09012SAndroid Build Coastguard Worker // component of the topic's name. 252*d5c09012SAndroid Build Coastguard Worker // 253*d5c09012SAndroid Build Coastguard Worker // This value is structured like: `my-topic-name`. 254*d5c09012SAndroid Build Coastguard Worker string topic_id = 3 [(google.api.field_behavior) = REQUIRED]; 255*d5c09012SAndroid Build Coastguard Worker} 256*d5c09012SAndroid Build Coastguard Worker 257*d5c09012SAndroid Build Coastguard Worker// Request for GetTopic. 258*d5c09012SAndroid Build Coastguard Workermessage GetTopicRequest { 259*d5c09012SAndroid Build Coastguard Worker // Required. The name of the topic whose configuration to return. 260*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 261*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 262*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 263*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Topic" 264*d5c09012SAndroid Build Coastguard Worker } 265*d5c09012SAndroid Build Coastguard Worker ]; 266*d5c09012SAndroid Build Coastguard Worker} 267*d5c09012SAndroid Build Coastguard Worker 268*d5c09012SAndroid Build Coastguard Worker// Request for GetTopicPartitions. 269*d5c09012SAndroid Build Coastguard Workermessage GetTopicPartitionsRequest { 270*d5c09012SAndroid Build Coastguard Worker // Required. The topic whose partition information to return. 271*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 272*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 273*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 274*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Topic" 275*d5c09012SAndroid Build Coastguard Worker } 276*d5c09012SAndroid Build Coastguard Worker ]; 277*d5c09012SAndroid Build Coastguard Worker} 278*d5c09012SAndroid Build Coastguard Worker 279*d5c09012SAndroid Build Coastguard Worker// Response for GetTopicPartitions. 280*d5c09012SAndroid Build Coastguard Workermessage TopicPartitions { 281*d5c09012SAndroid Build Coastguard Worker // The number of partitions in the topic. 282*d5c09012SAndroid Build Coastguard Worker int64 partition_count = 1; 283*d5c09012SAndroid Build Coastguard Worker} 284*d5c09012SAndroid Build Coastguard Worker 285*d5c09012SAndroid Build Coastguard Worker// Request for ListTopics. 286*d5c09012SAndroid Build Coastguard Workermessage ListTopicsRequest { 287*d5c09012SAndroid Build Coastguard Worker // Required. The parent whose topics are to be listed. 288*d5c09012SAndroid Build Coastguard Worker // Structured like `projects/{project_number}/locations/{location}`. 289*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 290*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 291*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 292*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 293*d5c09012SAndroid Build Coastguard Worker } 294*d5c09012SAndroid Build Coastguard Worker ]; 295*d5c09012SAndroid Build Coastguard Worker 296*d5c09012SAndroid Build Coastguard Worker // The maximum number of topics to return. The service may return fewer than 297*d5c09012SAndroid Build Coastguard Worker // this value. 298*d5c09012SAndroid Build Coastguard Worker // If unset or zero, all topics for the parent will be returned. 299*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 300*d5c09012SAndroid Build Coastguard Worker 301*d5c09012SAndroid Build Coastguard Worker // A page token, received from a previous `ListTopics` call. 302*d5c09012SAndroid Build Coastguard Worker // Provide this to retrieve the subsequent page. 303*d5c09012SAndroid Build Coastguard Worker // 304*d5c09012SAndroid Build Coastguard Worker // When paginating, all other parameters provided to `ListTopics` must match 305*d5c09012SAndroid Build Coastguard Worker // the call that provided the page token. 306*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 307*d5c09012SAndroid Build Coastguard Worker} 308*d5c09012SAndroid Build Coastguard Worker 309*d5c09012SAndroid Build Coastguard Worker// Response for ListTopics. 310*d5c09012SAndroid Build Coastguard Workermessage ListTopicsResponse { 311*d5c09012SAndroid Build Coastguard Worker // The list of topic in the requested parent. The order of the topics is 312*d5c09012SAndroid Build Coastguard Worker // unspecified. 313*d5c09012SAndroid Build Coastguard Worker repeated Topic topics = 1; 314*d5c09012SAndroid Build Coastguard Worker 315*d5c09012SAndroid Build Coastguard Worker // A token that can be sent as `page_token` to retrieve the next page of 316*d5c09012SAndroid Build Coastguard Worker // results. If this field is omitted, there are no more results. 317*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 318*d5c09012SAndroid Build Coastguard Worker} 319*d5c09012SAndroid Build Coastguard Worker 320*d5c09012SAndroid Build Coastguard Worker// Request for UpdateTopic. 321*d5c09012SAndroid Build Coastguard Workermessage UpdateTopicRequest { 322*d5c09012SAndroid Build Coastguard Worker // Required. The topic to update. Its `name` field must be populated. 323*d5c09012SAndroid Build Coastguard Worker Topic topic = 1 [(google.api.field_behavior) = REQUIRED]; 324*d5c09012SAndroid Build Coastguard Worker 325*d5c09012SAndroid Build Coastguard Worker // Required. A mask specifying the topic fields to change. 326*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2 327*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 328*d5c09012SAndroid Build Coastguard Worker} 329*d5c09012SAndroid Build Coastguard Worker 330*d5c09012SAndroid Build Coastguard Worker// Request for DeleteTopic. 331*d5c09012SAndroid Build Coastguard Workermessage DeleteTopicRequest { 332*d5c09012SAndroid Build Coastguard Worker // Required. The name of the topic to delete. 333*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 334*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 335*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 336*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Topic" 337*d5c09012SAndroid Build Coastguard Worker } 338*d5c09012SAndroid Build Coastguard Worker ]; 339*d5c09012SAndroid Build Coastguard Worker} 340*d5c09012SAndroid Build Coastguard Worker 341*d5c09012SAndroid Build Coastguard Worker// Request for ListTopicSubscriptions. 342*d5c09012SAndroid Build Coastguard Workermessage ListTopicSubscriptionsRequest { 343*d5c09012SAndroid Build Coastguard Worker // Required. The name of the topic whose subscriptions to list. 344*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 345*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 346*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 347*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Topic" 348*d5c09012SAndroid Build Coastguard Worker } 349*d5c09012SAndroid Build Coastguard Worker ]; 350*d5c09012SAndroid Build Coastguard Worker 351*d5c09012SAndroid Build Coastguard Worker // The maximum number of subscriptions to return. The service may return fewer 352*d5c09012SAndroid Build Coastguard Worker // than this value. 353*d5c09012SAndroid Build Coastguard Worker // If unset or zero, all subscriptions for the given topic will be returned. 354*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 355*d5c09012SAndroid Build Coastguard Worker 356*d5c09012SAndroid Build Coastguard Worker // A page token, received from a previous `ListTopicSubscriptions` call. 357*d5c09012SAndroid Build Coastguard Worker // Provide this to retrieve the subsequent page. 358*d5c09012SAndroid Build Coastguard Worker // 359*d5c09012SAndroid Build Coastguard Worker // When paginating, all other parameters provided to `ListTopicSubscriptions` 360*d5c09012SAndroid Build Coastguard Worker // must match the call that provided the page token. 361*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 362*d5c09012SAndroid Build Coastguard Worker} 363*d5c09012SAndroid Build Coastguard Worker 364*d5c09012SAndroid Build Coastguard Worker// Response for ListTopicSubscriptions. 365*d5c09012SAndroid Build Coastguard Workermessage ListTopicSubscriptionsResponse { 366*d5c09012SAndroid Build Coastguard Worker // The names of subscriptions attached to the topic. The order of the 367*d5c09012SAndroid Build Coastguard Worker // subscriptions is unspecified. 368*d5c09012SAndroid Build Coastguard Worker repeated string subscriptions = 1; 369*d5c09012SAndroid Build Coastguard Worker 370*d5c09012SAndroid Build Coastguard Worker // A token that can be sent as `page_token` to retrieve the next page of 371*d5c09012SAndroid Build Coastguard Worker // results. If this field is omitted, there are no more results. 372*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 373*d5c09012SAndroid Build Coastguard Worker} 374*d5c09012SAndroid Build Coastguard Worker 375*d5c09012SAndroid Build Coastguard Worker// Request for CreateSubscription. 376*d5c09012SAndroid Build Coastguard Workermessage CreateSubscriptionRequest { 377*d5c09012SAndroid Build Coastguard Worker // Required. The parent location in which to create the subscription. 378*d5c09012SAndroid Build Coastguard Worker // Structured like `projects/{project_number}/locations/{location}`. 379*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 380*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 381*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 382*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 383*d5c09012SAndroid Build Coastguard Worker } 384*d5c09012SAndroid Build Coastguard Worker ]; 385*d5c09012SAndroid Build Coastguard Worker 386*d5c09012SAndroid Build Coastguard Worker // Required. Configuration of the subscription to create. Its `name` field is 387*d5c09012SAndroid Build Coastguard Worker // ignored. 388*d5c09012SAndroid Build Coastguard Worker Subscription subscription = 2 [(google.api.field_behavior) = REQUIRED]; 389*d5c09012SAndroid Build Coastguard Worker 390*d5c09012SAndroid Build Coastguard Worker // Required. The ID to use for the subscription, which will become the final 391*d5c09012SAndroid Build Coastguard Worker // component of the subscription's name. 392*d5c09012SAndroid Build Coastguard Worker // 393*d5c09012SAndroid Build Coastguard Worker // This value is structured like: `my-sub-name`. 394*d5c09012SAndroid Build Coastguard Worker string subscription_id = 3 [(google.api.field_behavior) = REQUIRED]; 395*d5c09012SAndroid Build Coastguard Worker 396*d5c09012SAndroid Build Coastguard Worker // If true, the newly created subscription will only receive messages 397*d5c09012SAndroid Build Coastguard Worker // published after the subscription was created. Otherwise, the entire 398*d5c09012SAndroid Build Coastguard Worker // message backlog will be received on the subscription. Defaults to false. 399*d5c09012SAndroid Build Coastguard Worker bool skip_backlog = 4; 400*d5c09012SAndroid Build Coastguard Worker} 401*d5c09012SAndroid Build Coastguard Worker 402*d5c09012SAndroid Build Coastguard Worker// Request for GetSubscription. 403*d5c09012SAndroid Build Coastguard Workermessage GetSubscriptionRequest { 404*d5c09012SAndroid Build Coastguard Worker // Required. The name of the subscription whose configuration to return. 405*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 406*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 407*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 408*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Subscription" 409*d5c09012SAndroid Build Coastguard Worker } 410*d5c09012SAndroid Build Coastguard Worker ]; 411*d5c09012SAndroid Build Coastguard Worker} 412*d5c09012SAndroid Build Coastguard Worker 413*d5c09012SAndroid Build Coastguard Worker// Request for ListSubscriptions. 414*d5c09012SAndroid Build Coastguard Workermessage ListSubscriptionsRequest { 415*d5c09012SAndroid Build Coastguard Worker // Required. The parent whose subscriptions are to be listed. 416*d5c09012SAndroid Build Coastguard Worker // Structured like `projects/{project_number}/locations/{location}`. 417*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 418*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 419*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 420*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 421*d5c09012SAndroid Build Coastguard Worker } 422*d5c09012SAndroid Build Coastguard Worker ]; 423*d5c09012SAndroid Build Coastguard Worker 424*d5c09012SAndroid Build Coastguard Worker // The maximum number of subscriptions to return. The service may return fewer 425*d5c09012SAndroid Build Coastguard Worker // than this value. 426*d5c09012SAndroid Build Coastguard Worker // If unset or zero, all subscriptions for the parent will be returned. 427*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 428*d5c09012SAndroid Build Coastguard Worker 429*d5c09012SAndroid Build Coastguard Worker // A page token, received from a previous `ListSubscriptions` call. 430*d5c09012SAndroid Build Coastguard Worker // Provide this to retrieve the subsequent page. 431*d5c09012SAndroid Build Coastguard Worker // 432*d5c09012SAndroid Build Coastguard Worker // When paginating, all other parameters provided to `ListSubscriptions` must 433*d5c09012SAndroid Build Coastguard Worker // match the call that provided the page token. 434*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 435*d5c09012SAndroid Build Coastguard Worker} 436*d5c09012SAndroid Build Coastguard Worker 437*d5c09012SAndroid Build Coastguard Worker// Response for ListSubscriptions. 438*d5c09012SAndroid Build Coastguard Workermessage ListSubscriptionsResponse { 439*d5c09012SAndroid Build Coastguard Worker // The list of subscriptions in the requested parent. The order of the 440*d5c09012SAndroid Build Coastguard Worker // subscriptions is unspecified. 441*d5c09012SAndroid Build Coastguard Worker repeated Subscription subscriptions = 1; 442*d5c09012SAndroid Build Coastguard Worker 443*d5c09012SAndroid Build Coastguard Worker // A token that can be sent as `page_token` to retrieve the next page of 444*d5c09012SAndroid Build Coastguard Worker // results. If this field is omitted, there are no more results. 445*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 446*d5c09012SAndroid Build Coastguard Worker} 447*d5c09012SAndroid Build Coastguard Worker 448*d5c09012SAndroid Build Coastguard Worker// Request for UpdateSubscription. 449*d5c09012SAndroid Build Coastguard Workermessage UpdateSubscriptionRequest { 450*d5c09012SAndroid Build Coastguard Worker // Required. The subscription to update. Its `name` field must be populated. 451*d5c09012SAndroid Build Coastguard Worker // Topic field must not be populated. 452*d5c09012SAndroid Build Coastguard Worker Subscription subscription = 1 [(google.api.field_behavior) = REQUIRED]; 453*d5c09012SAndroid Build Coastguard Worker 454*d5c09012SAndroid Build Coastguard Worker // Required. A mask specifying the subscription fields to change. 455*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2 456*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 457*d5c09012SAndroid Build Coastguard Worker} 458*d5c09012SAndroid Build Coastguard Worker 459*d5c09012SAndroid Build Coastguard Worker// Request for DeleteSubscription. 460*d5c09012SAndroid Build Coastguard Workermessage DeleteSubscriptionRequest { 461*d5c09012SAndroid Build Coastguard Worker // Required. The name of the subscription to delete. 462*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 463*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 464*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 465*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Subscription" 466*d5c09012SAndroid Build Coastguard Worker } 467*d5c09012SAndroid Build Coastguard Worker ]; 468*d5c09012SAndroid Build Coastguard Worker} 469*d5c09012SAndroid Build Coastguard Worker 470*d5c09012SAndroid Build Coastguard Worker// Request for SeekSubscription. 471*d5c09012SAndroid Build Coastguard Workermessage SeekSubscriptionRequest { 472*d5c09012SAndroid Build Coastguard Worker // A named position with respect to the message backlog. 473*d5c09012SAndroid Build Coastguard Worker enum NamedTarget { 474*d5c09012SAndroid Build Coastguard Worker // Unspecified named target. Do not use. 475*d5c09012SAndroid Build Coastguard Worker NAMED_TARGET_UNSPECIFIED = 0; 476*d5c09012SAndroid Build Coastguard Worker 477*d5c09012SAndroid Build Coastguard Worker // Seek to the oldest retained message. 478*d5c09012SAndroid Build Coastguard Worker TAIL = 1; 479*d5c09012SAndroid Build Coastguard Worker 480*d5c09012SAndroid Build Coastguard Worker // Seek past all recently published messages, skipping the entire message 481*d5c09012SAndroid Build Coastguard Worker // backlog. 482*d5c09012SAndroid Build Coastguard Worker HEAD = 2; 483*d5c09012SAndroid Build Coastguard Worker } 484*d5c09012SAndroid Build Coastguard Worker 485*d5c09012SAndroid Build Coastguard Worker // Required. The name of the subscription to seek. 486*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 487*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 488*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 489*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Subscription" 490*d5c09012SAndroid Build Coastguard Worker } 491*d5c09012SAndroid Build Coastguard Worker ]; 492*d5c09012SAndroid Build Coastguard Worker 493*d5c09012SAndroid Build Coastguard Worker // The target to seek to. Must be set. 494*d5c09012SAndroid Build Coastguard Worker oneof target { 495*d5c09012SAndroid Build Coastguard Worker // Seek to a named position with respect to the message backlog. 496*d5c09012SAndroid Build Coastguard Worker NamedTarget named_target = 2; 497*d5c09012SAndroid Build Coastguard Worker 498*d5c09012SAndroid Build Coastguard Worker // Seek to the first message whose publish or event time is greater than or 499*d5c09012SAndroid Build Coastguard Worker // equal to the specified query time. If no such message can be located, 500*d5c09012SAndroid Build Coastguard Worker // will seek to the end of the message backlog. 501*d5c09012SAndroid Build Coastguard Worker TimeTarget time_target = 3; 502*d5c09012SAndroid Build Coastguard Worker } 503*d5c09012SAndroid Build Coastguard Worker} 504*d5c09012SAndroid Build Coastguard Worker 505*d5c09012SAndroid Build Coastguard Worker// Response for SeekSubscription long running operation. 506*d5c09012SAndroid Build Coastguard Workermessage SeekSubscriptionResponse {} 507*d5c09012SAndroid Build Coastguard Worker 508*d5c09012SAndroid Build Coastguard Worker// Metadata for long running operations. 509*d5c09012SAndroid Build Coastguard Workermessage OperationMetadata { 510*d5c09012SAndroid Build Coastguard Worker // The time the operation was created. 511*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 1; 512*d5c09012SAndroid Build Coastguard Worker 513*d5c09012SAndroid Build Coastguard Worker // The time the operation finished running. Not set if the operation has not 514*d5c09012SAndroid Build Coastguard Worker // completed. 515*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp end_time = 2; 516*d5c09012SAndroid Build Coastguard Worker 517*d5c09012SAndroid Build Coastguard Worker // Resource path for the target of the operation. For example, targets of 518*d5c09012SAndroid Build Coastguard Worker // seeks are subscription resources, structured like: 519*d5c09012SAndroid Build Coastguard Worker // projects/{project_number}/locations/{location}/subscriptions/{subscription_id} 520*d5c09012SAndroid Build Coastguard Worker string target = 3; 521*d5c09012SAndroid Build Coastguard Worker 522*d5c09012SAndroid Build Coastguard Worker // Name of the verb executed by the operation. 523*d5c09012SAndroid Build Coastguard Worker string verb = 4; 524*d5c09012SAndroid Build Coastguard Worker} 525*d5c09012SAndroid Build Coastguard Worker 526*d5c09012SAndroid Build Coastguard Worker// Request for CreateReservation. 527*d5c09012SAndroid Build Coastguard Workermessage CreateReservationRequest { 528*d5c09012SAndroid Build Coastguard Worker // Required. The parent location in which to create the reservation. 529*d5c09012SAndroid Build Coastguard Worker // Structured like `projects/{project_number}/locations/{location}`. 530*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 531*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 532*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 533*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 534*d5c09012SAndroid Build Coastguard Worker } 535*d5c09012SAndroid Build Coastguard Worker ]; 536*d5c09012SAndroid Build Coastguard Worker 537*d5c09012SAndroid Build Coastguard Worker // Required. Configuration of the reservation to create. Its `name` field is 538*d5c09012SAndroid Build Coastguard Worker // ignored. 539*d5c09012SAndroid Build Coastguard Worker Reservation reservation = 2 [(google.api.field_behavior) = REQUIRED]; 540*d5c09012SAndroid Build Coastguard Worker 541*d5c09012SAndroid Build Coastguard Worker // Required. The ID to use for the reservation, which will become the final 542*d5c09012SAndroid Build Coastguard Worker // component of the reservation's name. 543*d5c09012SAndroid Build Coastguard Worker // 544*d5c09012SAndroid Build Coastguard Worker // This value is structured like: `my-reservation-name`. 545*d5c09012SAndroid Build Coastguard Worker string reservation_id = 3 [(google.api.field_behavior) = REQUIRED]; 546*d5c09012SAndroid Build Coastguard Worker} 547*d5c09012SAndroid Build Coastguard Worker 548*d5c09012SAndroid Build Coastguard Worker// Request for GetReservation. 549*d5c09012SAndroid Build Coastguard Workermessage GetReservationRequest { 550*d5c09012SAndroid Build Coastguard Worker // Required. The name of the reservation whose configuration to return. 551*d5c09012SAndroid Build Coastguard Worker // Structured like: 552*d5c09012SAndroid Build Coastguard Worker // projects/{project_number}/locations/{location}/reservations/{reservation_id} 553*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 554*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 555*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 556*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Reservation" 557*d5c09012SAndroid Build Coastguard Worker } 558*d5c09012SAndroid Build Coastguard Worker ]; 559*d5c09012SAndroid Build Coastguard Worker} 560*d5c09012SAndroid Build Coastguard Worker 561*d5c09012SAndroid Build Coastguard Worker// Request for ListReservations. 562*d5c09012SAndroid Build Coastguard Workermessage ListReservationsRequest { 563*d5c09012SAndroid Build Coastguard Worker // Required. The parent whose reservations are to be listed. 564*d5c09012SAndroid Build Coastguard Worker // Structured like `projects/{project_number}/locations/{location}`. 565*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 566*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 567*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 568*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 569*d5c09012SAndroid Build Coastguard Worker } 570*d5c09012SAndroid Build Coastguard Worker ]; 571*d5c09012SAndroid Build Coastguard Worker 572*d5c09012SAndroid Build Coastguard Worker // The maximum number of reservations to return. The service may return fewer 573*d5c09012SAndroid Build Coastguard Worker // than this value. If unset or zero, all reservations for the parent will be 574*d5c09012SAndroid Build Coastguard Worker // returned. 575*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 576*d5c09012SAndroid Build Coastguard Worker 577*d5c09012SAndroid Build Coastguard Worker // A page token, received from a previous `ListReservations` call. 578*d5c09012SAndroid Build Coastguard Worker // Provide this to retrieve the subsequent page. 579*d5c09012SAndroid Build Coastguard Worker // 580*d5c09012SAndroid Build Coastguard Worker // When paginating, all other parameters provided to `ListReservations` must 581*d5c09012SAndroid Build Coastguard Worker // match the call that provided the page token. 582*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 583*d5c09012SAndroid Build Coastguard Worker} 584*d5c09012SAndroid Build Coastguard Worker 585*d5c09012SAndroid Build Coastguard Worker// Response for ListReservations. 586*d5c09012SAndroid Build Coastguard Workermessage ListReservationsResponse { 587*d5c09012SAndroid Build Coastguard Worker // The list of reservation in the requested parent. The order of the 588*d5c09012SAndroid Build Coastguard Worker // reservations is unspecified. 589*d5c09012SAndroid Build Coastguard Worker repeated Reservation reservations = 1; 590*d5c09012SAndroid Build Coastguard Worker 591*d5c09012SAndroid Build Coastguard Worker // A token that can be sent as `page_token` to retrieve the next page of 592*d5c09012SAndroid Build Coastguard Worker // results. If this field is omitted, there are no more results. 593*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 594*d5c09012SAndroid Build Coastguard Worker} 595*d5c09012SAndroid Build Coastguard Worker 596*d5c09012SAndroid Build Coastguard Worker// Request for UpdateReservation. 597*d5c09012SAndroid Build Coastguard Workermessage UpdateReservationRequest { 598*d5c09012SAndroid Build Coastguard Worker // Required. The reservation to update. Its `name` field must be populated. 599*d5c09012SAndroid Build Coastguard Worker Reservation reservation = 1 [(google.api.field_behavior) = REQUIRED]; 600*d5c09012SAndroid Build Coastguard Worker 601*d5c09012SAndroid Build Coastguard Worker // Required. A mask specifying the reservation fields to change. 602*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2 603*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 604*d5c09012SAndroid Build Coastguard Worker} 605*d5c09012SAndroid Build Coastguard Worker 606*d5c09012SAndroid Build Coastguard Worker// Request for DeleteReservation. 607*d5c09012SAndroid Build Coastguard Workermessage DeleteReservationRequest { 608*d5c09012SAndroid Build Coastguard Worker // Required. The name of the reservation to delete. 609*d5c09012SAndroid Build Coastguard Worker // Structured like: 610*d5c09012SAndroid Build Coastguard Worker // projects/{project_number}/locations/{location}/reservations/{reservation_id} 611*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 612*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 613*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 614*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Reservation" 615*d5c09012SAndroid Build Coastguard Worker } 616*d5c09012SAndroid Build Coastguard Worker ]; 617*d5c09012SAndroid Build Coastguard Worker} 618*d5c09012SAndroid Build Coastguard Worker 619*d5c09012SAndroid Build Coastguard Worker// Request for ListReservationTopics. 620*d5c09012SAndroid Build Coastguard Workermessage ListReservationTopicsRequest { 621*d5c09012SAndroid Build Coastguard Worker // Required. The name of the reservation whose topics to list. 622*d5c09012SAndroid Build Coastguard Worker // Structured like: 623*d5c09012SAndroid Build Coastguard Worker // projects/{project_number}/locations/{location}/reservations/{reservation_id} 624*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 625*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 626*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 627*d5c09012SAndroid Build Coastguard Worker type: "pubsublite.googleapis.com/Reservation" 628*d5c09012SAndroid Build Coastguard Worker } 629*d5c09012SAndroid Build Coastguard Worker ]; 630*d5c09012SAndroid Build Coastguard Worker 631*d5c09012SAndroid Build Coastguard Worker // The maximum number of topics to return. The service may return fewer 632*d5c09012SAndroid Build Coastguard Worker // than this value. 633*d5c09012SAndroid Build Coastguard Worker // If unset or zero, all topics for the given reservation will be returned. 634*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 635*d5c09012SAndroid Build Coastguard Worker 636*d5c09012SAndroid Build Coastguard Worker // A page token, received from a previous `ListReservationTopics` call. 637*d5c09012SAndroid Build Coastguard Worker // Provide this to retrieve the subsequent page. 638*d5c09012SAndroid Build Coastguard Worker // 639*d5c09012SAndroid Build Coastguard Worker // When paginating, all other parameters provided to `ListReservationTopics` 640*d5c09012SAndroid Build Coastguard Worker // must match the call that provided the page token. 641*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 642*d5c09012SAndroid Build Coastguard Worker} 643*d5c09012SAndroid Build Coastguard Worker 644*d5c09012SAndroid Build Coastguard Worker// Response for ListReservationTopics. 645*d5c09012SAndroid Build Coastguard Workermessage ListReservationTopicsResponse { 646*d5c09012SAndroid Build Coastguard Worker // The names of topics attached to the reservation. The order of the 647*d5c09012SAndroid Build Coastguard Worker // topics is unspecified. 648*d5c09012SAndroid Build Coastguard Worker repeated string topics = 1; 649*d5c09012SAndroid Build Coastguard Worker 650*d5c09012SAndroid Build Coastguard Worker // A token that can be sent as `page_token` to retrieve the next page of 651*d5c09012SAndroid Build Coastguard Worker // results. If this field is omitted, there are no more results. 652*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 653*d5c09012SAndroid Build Coastguard Worker} 654