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.chat.v1; 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/chat/v1/group.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/chat/v1/user.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 25*d5c09012SAndroid Build Coastguard Worker 26*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Apps.Chat.V1"; 27*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/chat/apiv1/chatpb;chatpb"; 28*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 29*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "MembershipProto"; 30*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.chat.v1"; 31*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Apps\\Chat\\V1"; 32*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Apps::Chat::V1"; 33*d5c09012SAndroid Build Coastguard Worker 34*d5c09012SAndroid Build Coastguard Worker// Represents a membership relation in Google Chat, such as whether a user or 35*d5c09012SAndroid Build Coastguard Worker// Chat app is invited to, part of, or absent from a space. 36*d5c09012SAndroid Build Coastguard Workermessage Membership { 37*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 38*d5c09012SAndroid Build Coastguard Worker type: "chat.googleapis.com/Membership" 39*d5c09012SAndroid Build Coastguard Worker pattern: "spaces/{space}/members/{member}" 40*d5c09012SAndroid Build Coastguard Worker }; 41*d5c09012SAndroid Build Coastguard Worker 42*d5c09012SAndroid Build Coastguard Worker // Specifies the member's relationship with a space. Other membership states 43*d5c09012SAndroid Build Coastguard Worker // might be supported in the future. 44*d5c09012SAndroid Build Coastguard Worker enum MembershipState { 45*d5c09012SAndroid Build Coastguard Worker // Default value. Don't use. 46*d5c09012SAndroid Build Coastguard Worker MEMBERSHIP_STATE_UNSPECIFIED = 0; 47*d5c09012SAndroid Build Coastguard Worker 48*d5c09012SAndroid Build Coastguard Worker // The user is added to the space, and can participate in the space. 49*d5c09012SAndroid Build Coastguard Worker JOINED = 1; 50*d5c09012SAndroid Build Coastguard Worker 51*d5c09012SAndroid Build Coastguard Worker // The user is invited to join the space, but hasn't joined it. 52*d5c09012SAndroid Build Coastguard Worker INVITED = 2; 53*d5c09012SAndroid Build Coastguard Worker 54*d5c09012SAndroid Build Coastguard Worker // The user doesn't belong to the space and doesn't have a pending 55*d5c09012SAndroid Build Coastguard Worker // invitation to join the space. 56*d5c09012SAndroid Build Coastguard Worker NOT_A_MEMBER = 3; 57*d5c09012SAndroid Build Coastguard Worker } 58*d5c09012SAndroid Build Coastguard Worker 59*d5c09012SAndroid Build Coastguard Worker // Represents a user's permitted actions in a Chat space. More enum values 60*d5c09012SAndroid Build Coastguard Worker // might be added in the future. 61*d5c09012SAndroid Build Coastguard Worker enum MembershipRole { 62*d5c09012SAndroid Build Coastguard Worker // Default value. For [users][google.chat.v1.Membership.member]: they 63*d5c09012SAndroid Build Coastguard Worker // aren't a member of the space, but can be invited. For 64*d5c09012SAndroid Build Coastguard Worker // [Google Groups][google.chat.v1.Membership.group_member]: they're always 65*d5c09012SAndroid Build Coastguard Worker // assigned this role (other enum values might be used in the future). 66*d5c09012SAndroid Build Coastguard Worker MEMBERSHIP_ROLE_UNSPECIFIED = 0; 67*d5c09012SAndroid Build Coastguard Worker 68*d5c09012SAndroid Build Coastguard Worker // A member of the space. The user has basic permissions, like sending 69*d5c09012SAndroid Build Coastguard Worker // messages to the space. In 1:1 and unnamed group conversations, everyone 70*d5c09012SAndroid Build Coastguard Worker // has this role. 71*d5c09012SAndroid Build Coastguard Worker ROLE_MEMBER = 1; 72*d5c09012SAndroid Build Coastguard Worker 73*d5c09012SAndroid Build Coastguard Worker // A space manager. The user has all basic permissions plus administrative 74*d5c09012SAndroid Build Coastguard Worker // permissions that let them manage the space, like adding or removing 75*d5c09012SAndroid Build Coastguard Worker // members. Only supported in 76*d5c09012SAndroid Build Coastguard Worker // [SpaceType.SPACE][google.chat.v1.Space.SpaceType]. 77*d5c09012SAndroid Build Coastguard Worker ROLE_MANAGER = 2; 78*d5c09012SAndroid Build Coastguard Worker } 79*d5c09012SAndroid Build Coastguard Worker 80*d5c09012SAndroid Build Coastguard Worker // Resource name of the membership, assigned by the server. 81*d5c09012SAndroid Build Coastguard Worker // 82*d5c09012SAndroid Build Coastguard Worker // Format: `spaces/{space}/members/{member}` 83*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 84*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "chat.googleapis.com/Membership" } 85*d5c09012SAndroid Build Coastguard Worker ]; 86*d5c09012SAndroid Build Coastguard Worker 87*d5c09012SAndroid Build Coastguard Worker // Output only. State of the membership. 88*d5c09012SAndroid Build Coastguard Worker MembershipState state = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 89*d5c09012SAndroid Build Coastguard Worker 90*d5c09012SAndroid Build Coastguard Worker // Optional. User's role within a Chat space, which determines their permitted 91*d5c09012SAndroid Build Coastguard Worker // actions in the space. 92*d5c09012SAndroid Build Coastguard Worker // 93*d5c09012SAndroid Build Coastguard Worker // This field can only be used as input in `UpdateMembership`. 94*d5c09012SAndroid Build Coastguard Worker MembershipRole role = 7 [(google.api.field_behavior) = OPTIONAL]; 95*d5c09012SAndroid Build Coastguard Worker 96*d5c09012SAndroid Build Coastguard Worker // Member associated with this membership. Other member types might be 97*d5c09012SAndroid Build Coastguard Worker // supported in the future. 98*d5c09012SAndroid Build Coastguard Worker oneof memberType { 99*d5c09012SAndroid Build Coastguard Worker // The Google Chat user or app the membership corresponds to. 100*d5c09012SAndroid Build Coastguard Worker // If your Chat app [authenticates as a 101*d5c09012SAndroid Build Coastguard Worker // user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), 102*d5c09012SAndroid Build Coastguard Worker // the output populates the 103*d5c09012SAndroid Build Coastguard Worker // [user](https://developers.google.com/workspace/chat/api/reference/rest/v1/User) 104*d5c09012SAndroid Build Coastguard Worker // `name` and `type`. 105*d5c09012SAndroid Build Coastguard Worker User member = 3; 106*d5c09012SAndroid Build Coastguard Worker 107*d5c09012SAndroid Build Coastguard Worker // The Google Group the membership corresponds to. 108*d5c09012SAndroid Build Coastguard Worker // Only supports read operations. Other operations, like creating or 109*d5c09012SAndroid Build Coastguard Worker // updating a membership, aren't currently supported. 110*d5c09012SAndroid Build Coastguard Worker Group group_member = 5; 111*d5c09012SAndroid Build Coastguard Worker } 112*d5c09012SAndroid Build Coastguard Worker 113*d5c09012SAndroid Build Coastguard Worker // Optional. Immutable. The creation time of the membership, such as when a 114*d5c09012SAndroid Build Coastguard Worker // member joined or was invited to join a space. This field is output only, 115*d5c09012SAndroid Build Coastguard Worker // except when used to import historical memberships in import mode spaces. 116*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 4 [ 117*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = IMMUTABLE, 118*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL 119*d5c09012SAndroid Build Coastguard Worker ]; 120*d5c09012SAndroid Build Coastguard Worker 121*d5c09012SAndroid Build Coastguard Worker // Optional. Immutable. The deletion time of the membership, such as when a 122*d5c09012SAndroid Build Coastguard Worker // member left or was removed from a space. This field is output only, except 123*d5c09012SAndroid Build Coastguard Worker // when used to import historical memberships in import mode spaces. 124*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp delete_time = 8 [ 125*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = IMMUTABLE, 126*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL 127*d5c09012SAndroid Build Coastguard Worker ]; 128*d5c09012SAndroid Build Coastguard Worker} 129*d5c09012SAndroid Build Coastguard Worker 130*d5c09012SAndroid Build Coastguard Worker// Request message for creating a membership. 131*d5c09012SAndroid Build Coastguard Workermessage CreateMembershipRequest { 132*d5c09012SAndroid Build Coastguard Worker // Required. The resource name of the space for which to create the 133*d5c09012SAndroid Build Coastguard Worker // membership. 134*d5c09012SAndroid Build Coastguard Worker // 135*d5c09012SAndroid Build Coastguard Worker // Format: spaces/{space} 136*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 137*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 138*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 139*d5c09012SAndroid Build Coastguard Worker child_type: "chat.googleapis.com/Membership" 140*d5c09012SAndroid Build Coastguard Worker } 141*d5c09012SAndroid Build Coastguard Worker ]; 142*d5c09012SAndroid Build Coastguard Worker 143*d5c09012SAndroid Build Coastguard Worker // Required. The membership relation to create. 144*d5c09012SAndroid Build Coastguard Worker // The `memberType` field must contain a user with the `user.name` and 145*d5c09012SAndroid Build Coastguard Worker // `user.type` fields populated. The server will assign a resource name 146*d5c09012SAndroid Build Coastguard Worker // and overwrite anything specified. 147*d5c09012SAndroid Build Coastguard Worker // When a Chat app creates a membership relation for a human user, it must use 148*d5c09012SAndroid Build Coastguard Worker // the `chat.memberships` scope, set `user.type` to `HUMAN`, and set 149*d5c09012SAndroid Build Coastguard Worker // `user.name` with format `users/{user}`, where `{user}` can be the email 150*d5c09012SAndroid Build Coastguard Worker // address for the user. For users in the same Workspace organization `{user}` 151*d5c09012SAndroid Build Coastguard Worker // can also be the `id` of the 152*d5c09012SAndroid Build Coastguard Worker // [person](https://developers.google.com/people/api/rest/v1/people) from the 153*d5c09012SAndroid Build Coastguard Worker // People API, or the `id` for the user in the Directory API. For example, if 154*d5c09012SAndroid Build Coastguard Worker // the People API Person profile ID for `[email protected]` is `123456789`, you 155*d5c09012SAndroid Build Coastguard Worker // can add the user to the space by setting the `membership.member.name` to 156*d5c09012SAndroid Build Coastguard Worker // `users/user@example.com` or `users/123456789`. When a Chat app creates a 157*d5c09012SAndroid Build Coastguard Worker // membership relation for itself, it must use the `chat.memberships.app` 158*d5c09012SAndroid Build Coastguard Worker // scope, set `user.type` to `BOT`, and set `user.name` to `users/app`. 159*d5c09012SAndroid Build Coastguard Worker Membership membership = 2 [(google.api.field_behavior) = REQUIRED]; 160*d5c09012SAndroid Build Coastguard Worker} 161*d5c09012SAndroid Build Coastguard Worker 162*d5c09012SAndroid Build Coastguard Worker// Request message for updating a membership. 163*d5c09012SAndroid Build Coastguard Workermessage UpdateMembershipRequest { 164*d5c09012SAndroid Build Coastguard Worker // Required. The membership to update. Only fields specified by `update_mask` 165*d5c09012SAndroid Build Coastguard Worker // are updated. 166*d5c09012SAndroid Build Coastguard Worker Membership membership = 1 [(google.api.field_behavior) = REQUIRED]; 167*d5c09012SAndroid Build Coastguard Worker 168*d5c09012SAndroid Build Coastguard Worker // Required. The field paths to update. Separate multiple values with commas 169*d5c09012SAndroid Build Coastguard Worker // or use `*` to update all field paths. 170*d5c09012SAndroid Build Coastguard Worker // 171*d5c09012SAndroid Build Coastguard Worker // Currently supported field paths: 172*d5c09012SAndroid Build Coastguard Worker // 173*d5c09012SAndroid Build Coastguard Worker // - `role` 174*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 2 175*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 176*d5c09012SAndroid Build Coastguard Worker} 177*d5c09012SAndroid Build Coastguard Worker 178*d5c09012SAndroid Build Coastguard Worker// Request message for listing memberships. 179*d5c09012SAndroid Build Coastguard Workermessage ListMembershipsRequest { 180*d5c09012SAndroid Build Coastguard Worker // Required. The resource name of the space for which to fetch a membership 181*d5c09012SAndroid Build Coastguard Worker // list. 182*d5c09012SAndroid Build Coastguard Worker // 183*d5c09012SAndroid Build Coastguard Worker // Format: spaces/{space} 184*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 185*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 186*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 187*d5c09012SAndroid Build Coastguard Worker child_type: "chat.googleapis.com/Membership" 188*d5c09012SAndroid Build Coastguard Worker } 189*d5c09012SAndroid Build Coastguard Worker ]; 190*d5c09012SAndroid Build Coastguard Worker 191*d5c09012SAndroid Build Coastguard Worker // Optional. The maximum number of memberships to return. The service might 192*d5c09012SAndroid Build Coastguard Worker // return fewer than this value. 193*d5c09012SAndroid Build Coastguard Worker // 194*d5c09012SAndroid Build Coastguard Worker // If unspecified, at most 100 memberships are returned. 195*d5c09012SAndroid Build Coastguard Worker // 196*d5c09012SAndroid Build Coastguard Worker // The maximum value is 1000. If you use a value more than 1000, it's 197*d5c09012SAndroid Build Coastguard Worker // automatically changed to 1000. 198*d5c09012SAndroid Build Coastguard Worker // 199*d5c09012SAndroid Build Coastguard Worker // Negative values return an `INVALID_ARGUMENT` error. 200*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; 201*d5c09012SAndroid Build Coastguard Worker 202*d5c09012SAndroid Build Coastguard Worker // Optional. A page token, received from a previous call to list memberships. 203*d5c09012SAndroid Build Coastguard Worker // Provide this parameter to retrieve the subsequent page. 204*d5c09012SAndroid Build Coastguard Worker // 205*d5c09012SAndroid Build Coastguard Worker // When paginating, all other parameters provided should match the call that 206*d5c09012SAndroid Build Coastguard Worker // provided the page token. Passing different values to the other parameters 207*d5c09012SAndroid Build Coastguard Worker // might lead to unexpected results. 208*d5c09012SAndroid Build Coastguard Worker string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; 209*d5c09012SAndroid Build Coastguard Worker 210*d5c09012SAndroid Build Coastguard Worker // Optional. A query filter. 211*d5c09012SAndroid Build Coastguard Worker // 212*d5c09012SAndroid Build Coastguard Worker // You can filter memberships by a member's role 213*d5c09012SAndroid Build Coastguard Worker // ([`role`](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members#membershiprole)) 214*d5c09012SAndroid Build Coastguard Worker // and type 215*d5c09012SAndroid Build Coastguard Worker // ([`member.type`](https://developers.google.com/workspace/chat/api/reference/rest/v1/User#type)). 216*d5c09012SAndroid Build Coastguard Worker // 217*d5c09012SAndroid Build Coastguard Worker // To filter by role, set `role` to `ROLE_MEMBER` or `ROLE_MANAGER`. 218*d5c09012SAndroid Build Coastguard Worker // 219*d5c09012SAndroid Build Coastguard Worker // To filter by type, set `member.type` to `HUMAN` or `BOT`. 220*d5c09012SAndroid Build Coastguard Worker // 221*d5c09012SAndroid Build Coastguard Worker // To filter by both role and type, use the `AND` operator. To filter by 222*d5c09012SAndroid Build Coastguard Worker // either role or type, use the `OR` operator. 223*d5c09012SAndroid Build Coastguard Worker // 224*d5c09012SAndroid Build Coastguard Worker // For example, the following queries are valid: 225*d5c09012SAndroid Build Coastguard Worker // 226*d5c09012SAndroid Build Coastguard Worker // ``` 227*d5c09012SAndroid Build Coastguard Worker // role = "ROLE_MANAGER" OR role = "ROLE_MEMBER" 228*d5c09012SAndroid Build Coastguard Worker // member.type = "HUMAN" AND role = "ROLE_MANAGER" 229*d5c09012SAndroid Build Coastguard Worker // ``` 230*d5c09012SAndroid Build Coastguard Worker // 231*d5c09012SAndroid Build Coastguard Worker // The following queries are invalid: 232*d5c09012SAndroid Build Coastguard Worker // 233*d5c09012SAndroid Build Coastguard Worker // ``` 234*d5c09012SAndroid Build Coastguard Worker // member.type = "HUMAN" AND member.type = "BOT" 235*d5c09012SAndroid Build Coastguard Worker // role = "ROLE_MANAGER" AND role = "ROLE_MEMBER" 236*d5c09012SAndroid Build Coastguard Worker // ``` 237*d5c09012SAndroid Build Coastguard Worker // 238*d5c09012SAndroid Build Coastguard Worker // 239*d5c09012SAndroid Build Coastguard Worker // Invalid queries are rejected by the server with an `INVALID_ARGUMENT` 240*d5c09012SAndroid Build Coastguard Worker // error. 241*d5c09012SAndroid Build Coastguard Worker string filter = 5 [(google.api.field_behavior) = OPTIONAL]; 242*d5c09012SAndroid Build Coastguard Worker 243*d5c09012SAndroid Build Coastguard Worker // Optional. When `true`, also returns memberships associated with a 244*d5c09012SAndroid Build Coastguard Worker // [Google Group][google.chat.v1.Membership.group_member], in 245*d5c09012SAndroid Build Coastguard Worker // addition to other types of memberships. If a 246*d5c09012SAndroid Build Coastguard Worker // [filter][google.chat.v1.ListMembershipsRequest.filter] is set, 247*d5c09012SAndroid Build Coastguard Worker // [Google Group][google.chat.v1.Membership.group_member] 248*d5c09012SAndroid Build Coastguard Worker // memberships that don't match the filter criteria aren't returned. 249*d5c09012SAndroid Build Coastguard Worker bool show_groups = 6 [(google.api.field_behavior) = OPTIONAL]; 250*d5c09012SAndroid Build Coastguard Worker 251*d5c09012SAndroid Build Coastguard Worker // Optional. When `true`, also returns memberships associated with 252*d5c09012SAndroid Build Coastguard Worker // [invited][google.chat.v1.Membership.MembershipState.INVITED] members, in 253*d5c09012SAndroid Build Coastguard Worker // addition to other types of memberships. If a 254*d5c09012SAndroid Build Coastguard Worker // filter is set, 255*d5c09012SAndroid Build Coastguard Worker // [invited][google.chat.v1.Membership.MembershipState.INVITED] memberships 256*d5c09012SAndroid Build Coastguard Worker // that don't match the filter criteria aren't returned. 257*d5c09012SAndroid Build Coastguard Worker // 258*d5c09012SAndroid Build Coastguard Worker // Currently requires [user 259*d5c09012SAndroid Build Coastguard Worker // authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user). 260*d5c09012SAndroid Build Coastguard Worker bool show_invited = 7 [(google.api.field_behavior) = OPTIONAL]; 261*d5c09012SAndroid Build Coastguard Worker} 262*d5c09012SAndroid Build Coastguard Worker 263*d5c09012SAndroid Build Coastguard Worker// Response to list memberships of the space. 264*d5c09012SAndroid Build Coastguard Workermessage ListMembershipsResponse { 265*d5c09012SAndroid Build Coastguard Worker // Unordered list. List of memberships in the requested (or first) page. 266*d5c09012SAndroid Build Coastguard Worker repeated Membership memberships = 1 267*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = UNORDERED_LIST]; 268*d5c09012SAndroid Build Coastguard Worker 269*d5c09012SAndroid Build Coastguard Worker // A token that you can send as `pageToken` to retrieve the next page of 270*d5c09012SAndroid Build Coastguard Worker // results. If empty, there are no subsequent pages. 271*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 272*d5c09012SAndroid Build Coastguard Worker} 273*d5c09012SAndroid Build Coastguard Worker 274*d5c09012SAndroid Build Coastguard Worker// Request to get a membership of a space. 275*d5c09012SAndroid Build Coastguard Workermessage GetMembershipRequest { 276*d5c09012SAndroid Build Coastguard Worker // Required. Resource name of the membership to retrieve. 277*d5c09012SAndroid Build Coastguard Worker // 278*d5c09012SAndroid Build Coastguard Worker // To get the app's own membership, you can optionally use 279*d5c09012SAndroid Build Coastguard Worker // `spaces/{space}/members/app`. 280*d5c09012SAndroid Build Coastguard Worker // 281*d5c09012SAndroid Build Coastguard Worker // Format: `spaces/{space}/members/{member}` or `spaces/{space}/members/app` 282*d5c09012SAndroid Build Coastguard Worker // 283*d5c09012SAndroid Build Coastguard Worker // When [authenticated as a 284*d5c09012SAndroid Build Coastguard Worker // user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user), 285*d5c09012SAndroid Build Coastguard Worker // you can use the user's email as an alias for `{member}`. For example, 286*d5c09012SAndroid Build Coastguard Worker // `spaces/{space}/members/example@gmail.com` where `[email protected]` is the 287*d5c09012SAndroid Build Coastguard Worker // email of the Google Chat user. 288*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 289*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 290*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "chat.googleapis.com/Membership" } 291*d5c09012SAndroid Build Coastguard Worker ]; 292*d5c09012SAndroid Build Coastguard Worker} 293*d5c09012SAndroid Build Coastguard Worker 294*d5c09012SAndroid Build Coastguard Worker// Request to delete a membership in a space. 295*d5c09012SAndroid Build Coastguard Workermessage DeleteMembershipRequest { 296*d5c09012SAndroid Build Coastguard Worker // Required. Resource name of the membership to delete. Chat apps can delete 297*d5c09012SAndroid Build Coastguard Worker // human users' or their own memberships. Chat apps can't delete other apps' 298*d5c09012SAndroid Build Coastguard Worker // memberships. 299*d5c09012SAndroid Build Coastguard Worker // 300*d5c09012SAndroid Build Coastguard Worker // When deleting a human membership, requires the `chat.memberships` scope and 301*d5c09012SAndroid Build Coastguard Worker // `spaces/{space}/members/{member}` format. You can use the email as an 302*d5c09012SAndroid Build Coastguard Worker // alias for `{member}`. For example, 303*d5c09012SAndroid Build Coastguard Worker // `spaces/{space}/members/example@gmail.com` where `[email protected]` is the 304*d5c09012SAndroid Build Coastguard Worker // email of the Google Chat user. 305*d5c09012SAndroid Build Coastguard Worker // 306*d5c09012SAndroid Build Coastguard Worker // When deleting an app membership, requires the `chat.memberships.app` scope 307*d5c09012SAndroid Build Coastguard Worker // and `spaces/{space}/members/app` format. 308*d5c09012SAndroid Build Coastguard Worker // 309*d5c09012SAndroid Build Coastguard Worker // Format: `spaces/{space}/members/{member}` or `spaces/{space}/members/app`. 310*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 311*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 312*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "chat.googleapis.com/Membership" } 313*d5c09012SAndroid Build Coastguard Worker ]; 314*d5c09012SAndroid Build Coastguard Worker} 315