google-apps-chat-v1 0.a → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/apps/chat/v1/chat_service/client.rb +3663 -0
  6. data/lib/google/apps/chat/v1/chat_service/credentials.rb +63 -0
  7. data/lib/google/apps/chat/v1/chat_service/paths.rb +191 -0
  8. data/lib/google/apps/chat/v1/chat_service/rest/client.rb +3487 -0
  9. data/lib/google/apps/chat/v1/chat_service/rest/service_stub.rb +1614 -0
  10. data/lib/google/apps/chat/v1/chat_service/rest.rb +53 -0
  11. data/lib/google/apps/chat/v1/chat_service.rb +56 -0
  12. data/lib/google/apps/chat/v1/rest.rb +37 -0
  13. data/lib/google/apps/chat/v1/version.rb +7 -2
  14. data/lib/google/apps/chat/v1.rb +45 -0
  15. data/lib/google/chat/v1/action_status_pb.rb +44 -0
  16. data/lib/google/chat/v1/annotation_pb.rb +55 -0
  17. data/lib/google/chat/v1/attachment_pb.rb +51 -0
  18. data/lib/google/chat/v1/chat_service_pb.rb +53 -0
  19. data/lib/google/chat/v1/chat_service_services_pb.rb +359 -0
  20. data/lib/google/chat/v1/contextual_addon_pb.rb +50 -0
  21. data/lib/google/chat/v1/deletion_metadata_pb.rb +43 -0
  22. data/lib/google/chat/v1/group_pb.rb +42 -0
  23. data/lib/google/chat/v1/history_state_pb.rb +42 -0
  24. data/lib/google/chat/v1/matched_url_pb.rb +44 -0
  25. data/lib/google/chat/v1/membership_pb.rb +61 -0
  26. data/lib/google/chat/v1/message_pb.rb +89 -0
  27. data/lib/google/chat/v1/reaction_pb.rb +54 -0
  28. data/lib/google/chat/v1/slash_command_pb.rb +42 -0
  29. data/lib/google/chat/v1/space_pb.rb +63 -0
  30. data/lib/google/chat/v1/space_read_state_pb.rb +51 -0
  31. data/lib/google/chat/v1/space_setup_pb.rb +48 -0
  32. data/lib/google/chat/v1/thread_read_state_pb.rb +48 -0
  33. data/lib/google/chat/v1/user_pb.rb +46 -0
  34. data/lib/google/chat/v1/widgets_pb.rb +53 -0
  35. data/lib/google-apps-chat-v1.rb +21 -0
  36. data/proto_docs/README.md +4 -0
  37. data/proto_docs/google/api/client.rb +399 -0
  38. data/proto_docs/google/api/field_behavior.rb +85 -0
  39. data/proto_docs/google/api/launch_stage.rb +71 -0
  40. data/proto_docs/google/api/resource.rb +222 -0
  41. data/proto_docs/google/apps/card/v1/card.rb +2076 -0
  42. data/proto_docs/google/chat/v1/action_status.rb +40 -0
  43. data/proto_docs/google/chat/v1/annotation.rb +186 -0
  44. data/proto_docs/google/chat/v1/attachment.rb +131 -0
  45. data/proto_docs/google/chat/v1/contextual_addon.rb +120 -0
  46. data/proto_docs/google/chat/v1/deletion_metadata.rb +60 -0
  47. data/proto_docs/google/chat/v1/group.rb +41 -0
  48. data/proto_docs/google/chat/v1/history_state.rb +42 -0
  49. data/proto_docs/google/chat/v1/matched_url.rb +37 -0
  50. data/proto_docs/google/chat/v1/membership.rb +294 -0
  51. data/proto_docs/google/chat/v1/message.rb +657 -0
  52. data/proto_docs/google/chat/v1/reaction.rb +185 -0
  53. data/proto_docs/google/chat/v1/slash_command.rb +37 -0
  54. data/proto_docs/google/chat/v1/space.rb +382 -0
  55. data/proto_docs/google/chat/v1/space_read_state.rb +104 -0
  56. data/proto_docs/google/chat/v1/space_setup.rb +92 -0
  57. data/proto_docs/google/chat/v1/thread_read_state.rb +66 -0
  58. data/proto_docs/google/chat/v1/user.rb +84 -0
  59. data/proto_docs/google/chat/v1/widgets.rb +293 -0
  60. data/proto_docs/google/protobuf/duration.rb +98 -0
  61. data/proto_docs/google/protobuf/empty.rb +34 -0
  62. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  63. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  64. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  65. data/proto_docs/google/rpc/code.rb +185 -0
  66. data/proto_docs/google/type/color.rb +173 -0
  67. metadata +128 -10
@@ -0,0 +1,185 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Apps
22
+ module Chat
23
+ module V1
24
+ # A reaction to a message.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The resource name of the reaction.
28
+ #
29
+ # Format: `spaces/{space}/messages/{message}/reactions/{reaction}`
30
+ # @!attribute [r] user
31
+ # @return [::Google::Apps::Chat::V1::User]
32
+ # Output only. The user who created the reaction.
33
+ # @!attribute [rw] emoji
34
+ # @return [::Google::Apps::Chat::V1::Emoji]
35
+ # The emoji used in the reaction.
36
+ class Reaction
37
+ include ::Google::Protobuf::MessageExts
38
+ extend ::Google::Protobuf::MessageExts::ClassMethods
39
+ end
40
+
41
+ # An emoji that is used as a reaction to a message.
42
+ # @!attribute [rw] unicode
43
+ # @return [::String]
44
+ # A basic emoji represented by a unicode string.
45
+ # @!attribute [r] custom_emoji
46
+ # @return [::Google::Apps::Chat::V1::CustomEmoji]
47
+ # Output only. A custom emoji.
48
+ class Emoji
49
+ include ::Google::Protobuf::MessageExts
50
+ extend ::Google::Protobuf::MessageExts::ClassMethods
51
+ end
52
+
53
+ # Represents a custom emoji.
54
+ # @!attribute [rw] uid
55
+ # @return [::String]
56
+ # Unique key for the custom emoji resource.
57
+ class CustomEmoji
58
+ include ::Google::Protobuf::MessageExts
59
+ extend ::Google::Protobuf::MessageExts::ClassMethods
60
+ end
61
+
62
+ # The number of people who reacted to a message with a specific emoji.
63
+ # @!attribute [rw] emoji
64
+ # @return [::Google::Apps::Chat::V1::Emoji]
65
+ # Emoji associated with the reactions.
66
+ # @!attribute [rw] reaction_count
67
+ # @return [::Integer]
68
+ # The total number of reactions using the associated emoji.
69
+ class EmojiReactionSummary
70
+ include ::Google::Protobuf::MessageExts
71
+ extend ::Google::Protobuf::MessageExts::ClassMethods
72
+ end
73
+
74
+ # Creates a reaction to a message.
75
+ # @!attribute [rw] parent
76
+ # @return [::String]
77
+ # Required. The message where the reaction is created.
78
+ #
79
+ # Format: `spaces/{space}/messages/{message}`
80
+ # @!attribute [rw] reaction
81
+ # @return [::Google::Apps::Chat::V1::Reaction]
82
+ # Required. The reaction to create.
83
+ class CreateReactionRequest
84
+ include ::Google::Protobuf::MessageExts
85
+ extend ::Google::Protobuf::MessageExts::ClassMethods
86
+ end
87
+
88
+ # Lists reactions to a message.
89
+ # @!attribute [rw] parent
90
+ # @return [::String]
91
+ # Required. The message users reacted to.
92
+ #
93
+ # Format: `spaces/{space}/messages/{message}`
94
+ # @!attribute [rw] page_size
95
+ # @return [::Integer]
96
+ # Optional. The maximum number of reactions returned. The service can return
97
+ # fewer reactions than this value. If unspecified, the default value is 25.
98
+ # The maximum value is 200; values above 200 are changed to 200.
99
+ # @!attribute [rw] page_token
100
+ # @return [::String]
101
+ # Optional. (If resuming from a previous query.)
102
+ #
103
+ # A page token received from a previous list reactions call. Provide this
104
+ # to retrieve the subsequent page.
105
+ #
106
+ # When paginating, the filter value should match the call that provided the
107
+ # page token. Passing a different value might lead to unexpected results.
108
+ # @!attribute [rw] filter
109
+ # @return [::String]
110
+ # Optional. A query filter.
111
+ #
112
+ # You can filter reactions by
113
+ # [emoji](https://developers.google.com/workspace/chat/api/reference/rest/v1/Emoji)
114
+ # (either `emoji.unicode` or `emoji.custom_emoji.uid`) and
115
+ # [user](https://developers.google.com/workspace/chat/api/reference/rest/v1/User)
116
+ # (`user.name`).
117
+ #
118
+ # To filter reactions for multiple emojis or users, join similar fields
119
+ # with the `OR` operator, such as `emoji.unicode = "🙂" OR emoji.unicode =
120
+ # "👍"` and `user.name = "users/AAAAAA" OR user.name = "users/BBBBBB"`.
121
+ #
122
+ # To filter reactions by emoji and user, use the `AND` operator, such as
123
+ # `emoji.unicode = "🙂" AND user.name = "users/AAAAAA"`.
124
+ #
125
+ # If your query uses both `AND` and `OR`, group them with parentheses.
126
+ #
127
+ # For example, the following queries are valid:
128
+ #
129
+ # ```
130
+ # user.name = "users/\\{user}"
131
+ # emoji.unicode = "🙂"
132
+ # emoji.custom_emoji.uid = "\\{uid}"
133
+ # emoji.unicode = "🙂" OR emoji.unicode = "👍"
134
+ # emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "\\{uid}"
135
+ # emoji.unicode = "🙂" AND user.name = "users/\\{user}"
136
+ # (emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "\\{uid}")
137
+ # AND user.name = "users/\\{user}"
138
+ # ```
139
+ #
140
+ # The following queries are invalid:
141
+ #
142
+ # ```
143
+ # emoji.unicode = "🙂" AND emoji.unicode = "👍"
144
+ # emoji.unicode = "🙂" AND emoji.custom_emoji.uid = "\\{uid}"
145
+ # emoji.unicode = "🙂" OR user.name = "users/\\{user}"
146
+ # emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "\\{uid}" OR
147
+ # user.name = "users/\\{user}"
148
+ # emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "\\{uid}"
149
+ # AND user.name = "users/\\{user}"
150
+ # ```
151
+ #
152
+ # Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
153
+ # error.
154
+ class ListReactionsRequest
155
+ include ::Google::Protobuf::MessageExts
156
+ extend ::Google::Protobuf::MessageExts::ClassMethods
157
+ end
158
+
159
+ # Response to a list reactions request.
160
+ # @!attribute [rw] reactions
161
+ # @return [::Array<::Google::Apps::Chat::V1::Reaction>]
162
+ # List of reactions in the requested (or first) page.
163
+ # @!attribute [rw] next_page_token
164
+ # @return [::String]
165
+ # Continuation token to retrieve the next page of results. It's empty
166
+ # for the last page of results.
167
+ class ListReactionsResponse
168
+ include ::Google::Protobuf::MessageExts
169
+ extend ::Google::Protobuf::MessageExts::ClassMethods
170
+ end
171
+
172
+ # Deletes a reaction to a message.
173
+ # @!attribute [rw] name
174
+ # @return [::String]
175
+ # Required. Name of the reaction to delete.
176
+ #
177
+ # Format: `spaces/{space}/messages/{message}/reactions/{reaction}`
178
+ class DeleteReactionRequest
179
+ include ::Google::Protobuf::MessageExts
180
+ extend ::Google::Protobuf::MessageExts::ClassMethods
181
+ end
182
+ end
183
+ end
184
+ end
185
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Apps
22
+ module Chat
23
+ module V1
24
+ # A [slash
25
+ # command](https://developers.google.com/workspace/chat/slash-commands) in
26
+ # Google Chat.
27
+ # @!attribute [rw] command_id
28
+ # @return [::Integer]
29
+ # The ID of the slash command invoked.
30
+ class SlashCommand
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,382 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Apps
22
+ module Chat
23
+ module V1
24
+ # A space in Google Chat. Spaces are conversations between two or more users
25
+ # or 1:1 messages between a user and a Chat app.
26
+ # @!attribute [rw] name
27
+ # @return [::String]
28
+ # Resource name of the space.
29
+ #
30
+ # Format: `spaces/{space}`
31
+ # @!attribute [r] type
32
+ # @deprecated This field is deprecated and may be removed in the next major version update.
33
+ # @return [::Google::Apps::Chat::V1::Space::Type]
34
+ # Output only. Deprecated: Use `space_type` instead.
35
+ # The type of a space.
36
+ # @!attribute [rw] space_type
37
+ # @return [::Google::Apps::Chat::V1::Space::SpaceType]
38
+ # The type of space. Required when creating a space or updating the space
39
+ # type of a space. Output only for other usage.
40
+ # @!attribute [rw] single_user_bot_dm
41
+ # @return [::Boolean]
42
+ # Optional. Whether the space is a DM between a Chat app and a single
43
+ # human.
44
+ # @!attribute [r] threaded
45
+ # @deprecated This field is deprecated and may be removed in the next major version update.
46
+ # @return [::Boolean]
47
+ # Output only. Deprecated: Use `spaceThreadingState` instead.
48
+ # Whether messages are threaded in this space.
49
+ # @!attribute [rw] display_name
50
+ # @return [::String]
51
+ # The space's display name. Required when [creating a
52
+ # space](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/create).
53
+ # If you receive the error message `ALREADY_EXISTS` when creating a space or
54
+ # updating the `displayName`, try a different `displayName`. An
55
+ # existing space within the Google Workspace organization might already use
56
+ # this display name.
57
+ #
58
+ # For direct messages, this field might be empty.
59
+ #
60
+ # Supports up to 128 characters.
61
+ # @!attribute [rw] external_user_allowed
62
+ # @return [::Boolean]
63
+ # Immutable. Whether this space permits any Google Chat user as a member.
64
+ # Input when creating a space in a Google Workspace organization. Omit this
65
+ # field when creating spaces in the following conditions:
66
+ #
67
+ # * The authenticated user uses a consumer account (unmanaged user
68
+ # account). By default, a space created by a consumer account permits any
69
+ # Google Chat user.
70
+ #
71
+ # * The space is used to [import data to Google Chat]
72
+ # (https://developers.google.com/chat/api/guides/import-data-overview)
73
+ # because import mode spaces must only permit members from the same
74
+ # Google Workspace organization. However, as part of the [Google
75
+ # Workspace Developer Preview
76
+ # Program](https://developers.google.com/workspace/preview), import mode
77
+ # spaces can permit any Google Chat user so this field can then be set
78
+ # for import mode spaces.
79
+ #
80
+ # For existing spaces, this field is output only.
81
+ # @!attribute [r] space_threading_state
82
+ # @return [::Google::Apps::Chat::V1::Space::SpaceThreadingState]
83
+ # Output only. The threading state in the Chat space.
84
+ # @!attribute [rw] space_details
85
+ # @return [::Google::Apps::Chat::V1::Space::SpaceDetails]
86
+ # Details about the space including description and rules.
87
+ # @!attribute [rw] space_history_state
88
+ # @return [::Google::Apps::Chat::V1::HistoryState]
89
+ # The message history state for messages and threads in this space.
90
+ # @!attribute [rw] import_mode
91
+ # @return [::Boolean]
92
+ # Optional. Whether this space is created in `Import Mode` as part of a data
93
+ # migration into Google Workspace. While spaces are being imported, they
94
+ # aren't visible to users until the import is complete.
95
+ # @!attribute [rw] create_time
96
+ # @return [::Google::Protobuf::Timestamp]
97
+ # Optional. Immutable. For spaces created in Chat, the time the space was
98
+ # created. This field is output only, except when used in import mode spaces.
99
+ #
100
+ # For import mode spaces, set this field to the historical timestamp at which
101
+ # the space was created in the source in order to preserve the original
102
+ # creation time.
103
+ #
104
+ # Only populated in the output when `spaceType` is `GROUP_CHAT` or `SPACE`.
105
+ # @!attribute [r] admin_installed
106
+ # @return [::Boolean]
107
+ # Output only. Whether the Chat app was installed by a Google Workspace
108
+ # administrator. Administrators can install a Chat app for their domain,
109
+ # organizational unit, or a group of users.
110
+ #
111
+ # Administrators can only install Chat apps for direct messaging between
112
+ # users and the app. To support admin install, your app must feature direct
113
+ # messaging.
114
+ class Space
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+
118
+ # Details about the space including description and rules.
119
+ # @!attribute [rw] description
120
+ # @return [::String]
121
+ # Optional. A description of the space. For example, describe the space's
122
+ # discussion topic, functional purpose, or participants.
123
+ #
124
+ # Supports up to 150 characters.
125
+ # @!attribute [rw] guidelines
126
+ # @return [::String]
127
+ # Optional. The space's rules, expectations, and etiquette.
128
+ #
129
+ # Supports up to 5,000 characters.
130
+ class SpaceDetails
131
+ include ::Google::Protobuf::MessageExts
132
+ extend ::Google::Protobuf::MessageExts::ClassMethods
133
+ end
134
+
135
+ # Deprecated: Use `SpaceType` instead.
136
+ module Type
137
+ # Reserved.
138
+ TYPE_UNSPECIFIED = 0
139
+
140
+ # Conversations between two or more humans.
141
+ ROOM = 1
142
+
143
+ # 1:1 Direct Message between a human and a Chat app, where all messages are
144
+ # flat. Note that this doesn't include direct messages between two humans.
145
+ DM = 2
146
+ end
147
+
148
+ # The type of space. Required when creating or updating a space. Output only
149
+ # for other usage.
150
+ module SpaceType
151
+ # Reserved.
152
+ SPACE_TYPE_UNSPECIFIED = 0
153
+
154
+ # A place where people send messages, share files, and collaborate.
155
+ # A `SPACE` can include Chat apps.
156
+ SPACE = 1
157
+
158
+ # Group conversations between 3 or more people.
159
+ # A `GROUP_CHAT` can include Chat apps.
160
+ GROUP_CHAT = 2
161
+
162
+ # 1:1 messages between two humans or a human and a Chat app.
163
+ DIRECT_MESSAGE = 3
164
+ end
165
+
166
+ # Specifies the type of threading state in the Chat space.
167
+ module SpaceThreadingState
168
+ # Reserved.
169
+ SPACE_THREADING_STATE_UNSPECIFIED = 0
170
+
171
+ # Named spaces that support message threads. When users respond to a
172
+ # message, they can reply in-thread, which keeps their response in the
173
+ # context of the original message.
174
+ THREADED_MESSAGES = 2
175
+
176
+ # Named spaces where the conversation is organized by topic. Topics and
177
+ # their replies are grouped together.
178
+ GROUPED_MESSAGES = 3
179
+
180
+ # Direct messages (DMs) between two people and group conversations between
181
+ # 3 or more people.
182
+ UNTHREADED_MESSAGES = 4
183
+ end
184
+ end
185
+
186
+ # A request to create a named space.
187
+ # @!attribute [rw] space
188
+ # @return [::Google::Apps::Chat::V1::Space]
189
+ # Required. The `displayName` and `spaceType` fields must be populated. Only
190
+ # `SpaceType.SPACE` is supported.
191
+ #
192
+ # If you receive the error message `ALREADY_EXISTS` when creating a space,
193
+ # try a different `displayName`. An existing space within the Google
194
+ # Workspace organization might already use this display name.
195
+ #
196
+ # The space `name` is assigned on the server so anything specified in this
197
+ # field will be ignored.
198
+ # @!attribute [rw] request_id
199
+ # @return [::String]
200
+ # Optional. A unique identifier for this request.
201
+ # A random UUID is recommended.
202
+ # Specifying an existing request ID returns the space created with that ID
203
+ # instead of creating a new space.
204
+ # Specifying an existing request ID from the same Chat app with a different
205
+ # authenticated user returns an error.
206
+ class CreateSpaceRequest
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # A request to list the spaces the caller is a member of.
212
+ # @!attribute [rw] page_size
213
+ # @return [::Integer]
214
+ # Optional. The maximum number of spaces to return. The service might return
215
+ # fewer than this value.
216
+ #
217
+ # If unspecified, at most 100 spaces are returned.
218
+ #
219
+ # The maximum value is 1000. If you use a value more than 1000, it's
220
+ # automatically changed to 1000.
221
+ #
222
+ # Negative values return an `INVALID_ARGUMENT` error.
223
+ # @!attribute [rw] page_token
224
+ # @return [::String]
225
+ # Optional. A page token, received from a previous list spaces call.
226
+ # Provide this parameter to retrieve the subsequent page.
227
+ #
228
+ # When paginating, the filter value should match the call that provided the
229
+ # page token. Passing a different value may lead to unexpected results.
230
+ # @!attribute [rw] filter
231
+ # @return [::String]
232
+ # Optional. A query filter.
233
+ #
234
+ # You can filter spaces by the space type
235
+ # ([`space_type`](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#spacetype)).
236
+ #
237
+ # To filter by space type, you must specify valid enum value, such as
238
+ # `SPACE` or `GROUP_CHAT` (the `space_type` can't be
239
+ # `SPACE_TYPE_UNSPECIFIED`). To query for multiple space types, use the `OR`
240
+ # operator.
241
+ #
242
+ # For example, the following queries are valid:
243
+ #
244
+ # ```
245
+ # space_type = "SPACE"
246
+ # spaceType = "GROUP_CHAT" OR spaceType = "DIRECT_MESSAGE"
247
+ # ```
248
+ #
249
+ # Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
250
+ # error.
251
+ class ListSpacesRequest
252
+ include ::Google::Protobuf::MessageExts
253
+ extend ::Google::Protobuf::MessageExts::ClassMethods
254
+ end
255
+
256
+ # The response for a list spaces request.
257
+ # @!attribute [rw] spaces
258
+ # @return [::Array<::Google::Apps::Chat::V1::Space>]
259
+ # List of spaces in the requested (or first) page.
260
+ # @!attribute [rw] next_page_token
261
+ # @return [::String]
262
+ # You can send a token as `pageToken` to retrieve the next page of
263
+ # results. If empty, there are no subsequent pages.
264
+ class ListSpacesResponse
265
+ include ::Google::Protobuf::MessageExts
266
+ extend ::Google::Protobuf::MessageExts::ClassMethods
267
+ end
268
+
269
+ # A request to return a single space.
270
+ # @!attribute [rw] name
271
+ # @return [::String]
272
+ # Required. Resource name of the space, in the form "spaces/*".
273
+ #
274
+ # Format: `spaces/{space}`
275
+ class GetSpaceRequest
276
+ include ::Google::Protobuf::MessageExts
277
+ extend ::Google::Protobuf::MessageExts::ClassMethods
278
+ end
279
+
280
+ # A request to get direct message space based on the user resource.
281
+ # @!attribute [rw] name
282
+ # @return [::String]
283
+ # Required. Resource name of the user to find direct message with.
284
+ #
285
+ # Format: `users/{user}`, where `{user}` is either the `id` for the
286
+ # [person](https://developers.google.com/people/api/rest/v1/people) from the
287
+ # People API, or the `id` for the
288
+ # [user](https://developers.google.com/admin-sdk/directory/reference/rest/v1/users)
289
+ # in the Directory API. For example, if the People API profile ID is
290
+ # `123456789`, you can find a direct message with that person by using
291
+ # `users/123456789` as the `name`. When [authenticated as a
292
+ # user](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user),
293
+ # you can use the email as an alias for `{user}`. For example,
294
+ # `users/example@gmail.com` where `example@gmail.com` is the email of the
295
+ # Google Chat user.
296
+ class FindDirectMessageRequest
297
+ include ::Google::Protobuf::MessageExts
298
+ extend ::Google::Protobuf::MessageExts::ClassMethods
299
+ end
300
+
301
+ # A request to update a single space.
302
+ # @!attribute [rw] space
303
+ # @return [::Google::Apps::Chat::V1::Space]
304
+ # Required. Space with fields to be updated. `Space.name` must be
305
+ # populated in the form of `spaces/{space}`. Only fields
306
+ # specified by `update_mask` are updated.
307
+ # @!attribute [rw] update_mask
308
+ # @return [::Google::Protobuf::FieldMask]
309
+ # Required. The updated field paths, comma separated if there are
310
+ # multiple.
311
+ #
312
+ # Currently supported field paths:
313
+ #
314
+ # - `display_name` (Only supports changing the display name of a space with
315
+ # the `SPACE` type, or when also including the `space_type` mask to change a
316
+ # `GROUP_CHAT` space type to `SPACE`. Trying to update the display name of a
317
+ # `GROUP_CHAT` or a `DIRECT_MESSAGE` space results in an invalid argument
318
+ # error. If you receive the error message `ALREADY_EXISTS` when updating the
319
+ # `displayName`, try a different `displayName`. An existing space within the
320
+ # Google Workspace organization might already use this display name.)
321
+ #
322
+ # - `space_type` (Only supports changing a `GROUP_CHAT` space type to
323
+ # `SPACE`. Include `display_name` together
324
+ # with `space_type` in the update mask and ensure that the specified space
325
+ # has a non-empty display name and the `SPACE` space type. Including the
326
+ # `space_type` mask and the `SPACE` type in the specified space when updating
327
+ # the display name is optional if the existing space already has the `SPACE`
328
+ # type. Trying to update the space type in other ways results in an invalid
329
+ # argument error).
330
+ #
331
+ # - `space_details`
332
+ #
333
+ # - `space_history_state` (Supports [turning history on or off for the
334
+ # space](https://support.google.com/chat/answer/7664687) if [the organization
335
+ # allows users to change their history
336
+ # setting](https://support.google.com/a/answer/7664184).
337
+ # Warning: mutually exclusive with all other field paths.)
338
+ #
339
+ # - Developer Preview: `access_settings.audience` (Supports changing the
340
+ # [access setting](https://support.google.com/chat/answer/11971020) of a
341
+ # space. If no audience is specified in the access setting, the space's
342
+ # access setting is updated to restricted. Warning: mutually exclusive with
343
+ # all other field paths.)
344
+ class UpdateSpaceRequest
345
+ include ::Google::Protobuf::MessageExts
346
+ extend ::Google::Protobuf::MessageExts::ClassMethods
347
+ end
348
+
349
+ # Request for deleting a space.
350
+ # @!attribute [rw] name
351
+ # @return [::String]
352
+ # Required. Resource name of the space to delete.
353
+ #
354
+ # Format: `spaces/{space}`
355
+ class DeleteSpaceRequest
356
+ include ::Google::Protobuf::MessageExts
357
+ extend ::Google::Protobuf::MessageExts::ClassMethods
358
+ end
359
+
360
+ # Request message for completing the import process for a space.
361
+ # @!attribute [rw] name
362
+ # @return [::String]
363
+ # Required. Resource name of the import mode space.
364
+ #
365
+ # Format: `spaces/{space}`
366
+ class CompleteImportSpaceRequest
367
+ include ::Google::Protobuf::MessageExts
368
+ extend ::Google::Protobuf::MessageExts::ClassMethods
369
+ end
370
+
371
+ # Response message for completing the import process for a space.
372
+ # @!attribute [rw] space
373
+ # @return [::Google::Apps::Chat::V1::Space]
374
+ # The import mode space.
375
+ class CompleteImportSpaceResponse
376
+ include ::Google::Protobuf::MessageExts
377
+ extend ::Google::Protobuf::MessageExts::ClassMethods
378
+ end
379
+ end
380
+ end
381
+ end
382
+ end