getstream 4.2.0__tar.gz → 5.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {getstream-4.2.0 → getstream-5.0.0}/PKG-INFO +2 -2
- {getstream-4.2.0 → getstream-5.0.0}/getstream/chat/async_channel.py +23 -2
- {getstream-4.2.0 → getstream-5.0.0}/getstream/chat/async_rest_client.py +36 -2
- {getstream-4.2.0 → getstream-5.0.0}/getstream/chat/channel.py +23 -2
- {getstream-4.2.0 → getstream-5.0.0}/getstream/chat/rest_client.py +36 -2
- {getstream-4.2.0 → getstream-5.0.0}/getstream/common/async_rest_client.py +44 -9
- {getstream-4.2.0 → getstream-5.0.0}/getstream/common/rest_client.py +44 -9
- {getstream-4.2.0 → getstream-5.0.0}/getstream/exceptions.py +5 -5
- {getstream-4.2.0 → getstream-5.0.0}/getstream/feeds/rest_client.py +10 -6
- {getstream-4.2.0 → getstream-5.0.0}/getstream/models/__init__.py +1575 -35
- {getstream-4.2.0 → getstream-5.0.0}/getstream/moderation/async_rest_client.py +96 -5
- {getstream-4.2.0 → getstream-5.0.0}/getstream/moderation/rest_client.py +88 -5
- {getstream-4.2.0 → getstream-5.0.0}/getstream/tests/test_webhook.py +6 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/async_rest_client.py +11 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rest_client.py +11 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/webhook.py +3 -0
- {getstream-4.2.0 → getstream-5.0.0}/pyproject.toml +1 -1
- {getstream-4.2.0 → getstream-5.0.0}/uv.lock +5 -1
- {getstream-4.2.0 → getstream-5.0.0}/.cursor/worktrees.json +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.env.example +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.github/actions/python-uv-setup/action.yml +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.github/workflows/ci.yml +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.github/workflows/release.yml +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.github/workflows/run_tests.yml +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.github/workflows/stream-py.code-workspace +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.gitignore +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.gitmodules +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/.pre-commit-config.yaml +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/AGENTS.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/CHANGELOG.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/DEVELOPMENT.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/LICENSE.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/MIGRATION_v2_to_v3.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/Makefile +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/README.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/dev.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/docs/migration-from-stream-chat-python/01-setup-and-auth.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/docs/migration-from-stream-chat-python/02-users.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/docs/migration-from-stream-chat-python/03-channels.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/docs/migration-from-stream-chat-python/04-messages-and-reactions.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/docs/migration-from-stream-chat-python/05-moderation.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/docs/migration-from-stream-chat-python/06-devices.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/docs/migration-from-stream-chat-python/README.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/generate.sh +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/generate_webrtc.sh +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/base.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/chat/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/chat/async_client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/chat/client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/common/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/common/async_client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/common/client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/common/telemetry.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/config.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/feeds/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/feeds/client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/feeds/feeds.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/generic.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/logging_utils.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/meta.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/moderation/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/moderation/async_client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/moderation/client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/rate_limit.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/stream.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/stream_response.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/tasks.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/utils/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/utils/event_emitter.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/version.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/async_call.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/async_client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/call.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/client.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/openai.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/README.md +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/audio_track.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/connection_manager.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/connection_utils.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/coordinator/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/coordinator/backoff.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/coordinator/errors.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/coordinator/ws.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/encoders_patches.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/g711.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/location_discovery.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/models.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/network_monitor.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/participants.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/event/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/event/events_pb2.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/event/events_pb2.pyi +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/models/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/models/models_pb2.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/models/models_pb2.pyi +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/signal_rpc/__init__.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/signal_rpc/signal_pb2.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/signal_rpc/signal_pb2.pyi +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pb/stream/video/sfu/signal_rpc/signal_twirp.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/pc.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/peer_connection.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/reconnection.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/recording.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/signaling.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/stats_reporter.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/stats_tracer.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/tracer.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/track_util.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/tracks.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/twirp_client_wrapper.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/getstream/video/rtc/utils.py +0 -0
- {getstream-4.2.0 → getstream-5.0.0}/pytest.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
2
|
Name: getstream
|
|
3
|
-
Version:
|
|
3
|
+
Version: 5.0.0
|
|
4
4
|
Summary: GetStream Python SDK - Build scalable activity feeds, chat, and video calling applications
|
|
5
5
|
Author-email: sachaarbonel <sacha.arbonel@hotmail.fr>, tbarbugli <tbarbugli@gmail.com>
|
|
6
6
|
License-File: LICENSE.md
|
|
@@ -38,6 +38,12 @@ class Channel:
|
|
|
38
38
|
messages_limit: Optional[int] = None,
|
|
39
39
|
members_limit: Optional[int] = None,
|
|
40
40
|
watchers_limit: Optional[int] = None,
|
|
41
|
+
messages_id_lt: Optional[str] = None,
|
|
42
|
+
messages_id_lte: Optional[str] = None,
|
|
43
|
+
messages_id_gt: Optional[str] = None,
|
|
44
|
+
messages_id_gte: Optional[str] = None,
|
|
45
|
+
messages_id_around: Optional[str] = None,
|
|
46
|
+
user_id: Optional[str] = None,
|
|
41
47
|
) -> StreamResponse[ChannelStateResponse]:
|
|
42
48
|
response = await self.client.get_channel(
|
|
43
49
|
type=self.channel_type,
|
|
@@ -46,6 +52,12 @@ class Channel:
|
|
|
46
52
|
messages_limit=messages_limit,
|
|
47
53
|
members_limit=members_limit,
|
|
48
54
|
watchers_limit=watchers_limit,
|
|
55
|
+
messages_id_lt=messages_id_lt,
|
|
56
|
+
messages_id_lte=messages_id_lte,
|
|
57
|
+
messages_id_gt=messages_id_gt,
|
|
58
|
+
messages_id_gte=messages_id_gte,
|
|
59
|
+
messages_id_around=messages_id_around,
|
|
60
|
+
user_id=user_id,
|
|
49
61
|
)
|
|
50
62
|
self._sync_from_response(response.data)
|
|
51
63
|
return response
|
|
@@ -236,6 +248,8 @@ class Channel:
|
|
|
236
248
|
self,
|
|
237
249
|
message: MessageRequest,
|
|
238
250
|
force_moderation: Optional[bool] = None,
|
|
251
|
+
include_channel_context: Optional[bool] = None,
|
|
252
|
+
include_mentioned_members: Optional[bool] = None,
|
|
239
253
|
keep_channel_hidden: Optional[bool] = None,
|
|
240
254
|
pending: Optional[bool] = None,
|
|
241
255
|
skip_enrich_url: Optional[bool] = None,
|
|
@@ -247,6 +261,8 @@ class Channel:
|
|
|
247
261
|
id=self.channel_id,
|
|
248
262
|
message=message,
|
|
249
263
|
force_moderation=force_moderation,
|
|
264
|
+
include_channel_context=include_channel_context,
|
|
265
|
+
include_mentioned_members=include_mentioned_members,
|
|
250
266
|
keep_channel_hidden=keep_channel_hidden,
|
|
251
267
|
pending=pending,
|
|
252
268
|
skip_enrich_url=skip_enrich_url,
|
|
@@ -258,10 +274,13 @@ class Channel:
|
|
|
258
274
|
|
|
259
275
|
@attach_channel_cid_async
|
|
260
276
|
async def get_many_messages(
|
|
261
|
-
self, ids: List[str]
|
|
277
|
+
self, ids: List[str], member_custom_include: Optional[List[str]] = None
|
|
262
278
|
) -> StreamResponse[GetManyMessagesResponse]:
|
|
263
279
|
response = await self.client.get_many_messages(
|
|
264
|
-
type=self.channel_type,
|
|
280
|
+
type=self.channel_type,
|
|
281
|
+
id=self.channel_id,
|
|
282
|
+
ids=ids,
|
|
283
|
+
member_custom_include=member_custom_include,
|
|
265
284
|
)
|
|
266
285
|
self._sync_from_response(response.data)
|
|
267
286
|
return response
|
|
@@ -272,6 +291,7 @@ class Channel:
|
|
|
272
291
|
hide_for_creator: Optional[bool] = None,
|
|
273
292
|
state: Optional[bool] = None,
|
|
274
293
|
thread_unread_counts: Optional[bool] = None,
|
|
294
|
+
member_custom_include: Optional[List[str]] = None,
|
|
275
295
|
data: Optional[ChannelInput] = None,
|
|
276
296
|
members: Optional[PaginationParams] = None,
|
|
277
297
|
messages: Optional[MessagePaginationParams] = None,
|
|
@@ -283,6 +303,7 @@ class Channel:
|
|
|
283
303
|
hide_for_creator=hide_for_creator,
|
|
284
304
|
state=state,
|
|
285
305
|
thread_unread_counts=thread_unread_counts,
|
|
306
|
+
member_custom_include=member_custom_include,
|
|
286
307
|
data=data,
|
|
287
308
|
members=members,
|
|
288
309
|
messages=messages,
|
|
@@ -212,6 +212,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
212
212
|
predefined_filter: Optional[str] = None,
|
|
213
213
|
state: Optional[bool] = None,
|
|
214
214
|
user_id: Optional[str] = None,
|
|
215
|
+
member_custom_include: Optional[List[str]] = None,
|
|
215
216
|
sort: Optional[List[SortParamRequest]] = None,
|
|
216
217
|
filter_conditions: Optional[Dict[str, object]] = None,
|
|
217
218
|
filter_values: Optional[Dict[str, object]] = None,
|
|
@@ -226,6 +227,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
226
227
|
predefined_filter=predefined_filter,
|
|
227
228
|
state=state,
|
|
228
229
|
user_id=user_id,
|
|
230
|
+
member_custom_include=member_custom_include,
|
|
229
231
|
sort=sort,
|
|
230
232
|
filter_conditions=filter_conditions,
|
|
231
233
|
filter_values=filter_values,
|
|
@@ -313,6 +315,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
313
315
|
hide_for_creator: Optional[bool] = None,
|
|
314
316
|
state: Optional[bool] = None,
|
|
315
317
|
thread_unread_counts: Optional[bool] = None,
|
|
318
|
+
member_custom_include: Optional[List[str]] = None,
|
|
316
319
|
data: Optional[ChannelInput] = None,
|
|
317
320
|
members: Optional[PaginationParams] = None,
|
|
318
321
|
messages: Optional[MessagePaginationParams] = None,
|
|
@@ -325,6 +328,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
325
328
|
hide_for_creator=hide_for_creator,
|
|
326
329
|
state=state,
|
|
327
330
|
thread_unread_counts=thread_unread_counts,
|
|
331
|
+
member_custom_include=member_custom_include,
|
|
328
332
|
data=data,
|
|
329
333
|
members=members,
|
|
330
334
|
messages=messages,
|
|
@@ -362,6 +366,12 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
362
366
|
messages_limit: Optional[int] = None,
|
|
363
367
|
members_limit: Optional[int] = None,
|
|
364
368
|
watchers_limit: Optional[int] = None,
|
|
369
|
+
messages_id_lt: Optional[str] = None,
|
|
370
|
+
messages_id_lte: Optional[str] = None,
|
|
371
|
+
messages_id_gt: Optional[str] = None,
|
|
372
|
+
messages_id_gte: Optional[str] = None,
|
|
373
|
+
messages_id_around: Optional[str] = None,
|
|
374
|
+
user_id: Optional[str] = None,
|
|
365
375
|
) -> StreamResponse[ChannelStateResponse]:
|
|
366
376
|
query_params = build_query_param(
|
|
367
377
|
**{
|
|
@@ -369,6 +379,12 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
369
379
|
"messages_limit": messages_limit,
|
|
370
380
|
"members_limit": members_limit,
|
|
371
381
|
"watchers_limit": watchers_limit,
|
|
382
|
+
"messages_id_lt": messages_id_lt,
|
|
383
|
+
"messages_id_lte": messages_id_lte,
|
|
384
|
+
"messages_id_gt": messages_id_gt,
|
|
385
|
+
"messages_id_gte": messages_id_gte,
|
|
386
|
+
"messages_id_around": messages_id_around,
|
|
387
|
+
"user_id": user_id,
|
|
372
388
|
}
|
|
373
389
|
)
|
|
374
390
|
path_params = {
|
|
@@ -645,6 +661,8 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
645
661
|
id: str,
|
|
646
662
|
message: MessageRequest,
|
|
647
663
|
force_moderation: Optional[bool] = None,
|
|
664
|
+
include_channel_context: Optional[bool] = None,
|
|
665
|
+
include_mentioned_members: Optional[bool] = None,
|
|
648
666
|
keep_channel_hidden: Optional[bool] = None,
|
|
649
667
|
pending: Optional[bool] = None,
|
|
650
668
|
skip_enrich_url: Optional[bool] = None,
|
|
@@ -658,6 +676,8 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
658
676
|
json = SendMessageRequest(
|
|
659
677
|
message=message,
|
|
660
678
|
force_moderation=force_moderation,
|
|
679
|
+
include_channel_context=include_channel_context,
|
|
680
|
+
include_mentioned_members=include_mentioned_members,
|
|
661
681
|
keep_channel_hidden=keep_channel_hidden,
|
|
662
682
|
pending=pending,
|
|
663
683
|
skip_enrich_url=skip_enrich_url,
|
|
@@ -673,9 +693,15 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
673
693
|
|
|
674
694
|
@telemetry.operation_name("getstream.api.chat.get_many_messages")
|
|
675
695
|
async def get_many_messages(
|
|
676
|
-
self,
|
|
696
|
+
self,
|
|
697
|
+
type: str,
|
|
698
|
+
id: str,
|
|
699
|
+
ids: List[str],
|
|
700
|
+
member_custom_include: Optional[List[str]] = None,
|
|
677
701
|
) -> StreamResponse[GetManyMessagesResponse]:
|
|
678
|
-
query_params = build_query_param(
|
|
702
|
+
query_params = build_query_param(
|
|
703
|
+
**{"ids": ids, "member_custom_include": member_custom_include}
|
|
704
|
+
)
|
|
679
705
|
path_params = {
|
|
680
706
|
"type": type,
|
|
681
707
|
"id": id,
|
|
@@ -695,6 +721,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
695
721
|
hide_for_creator: Optional[bool] = None,
|
|
696
722
|
state: Optional[bool] = None,
|
|
697
723
|
thread_unread_counts: Optional[bool] = None,
|
|
724
|
+
member_custom_include: Optional[List[str]] = None,
|
|
698
725
|
data: Optional[ChannelInput] = None,
|
|
699
726
|
members: Optional[PaginationParams] = None,
|
|
700
727
|
messages: Optional[MessagePaginationParams] = None,
|
|
@@ -708,6 +735,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
708
735
|
hide_for_creator=hide_for_creator,
|
|
709
736
|
state=state,
|
|
710
737
|
thread_unread_counts=thread_unread_counts,
|
|
738
|
+
member_custom_include=member_custom_include,
|
|
711
739
|
data=data,
|
|
712
740
|
members=members,
|
|
713
741
|
messages=messages,
|
|
@@ -1105,17 +1133,21 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
1105
1133
|
channels: List[ChannelExport],
|
|
1106
1134
|
clear_deleted_message_text: Optional[bool] = None,
|
|
1107
1135
|
export_users: Optional[bool] = None,
|
|
1136
|
+
format: Optional[str] = None,
|
|
1108
1137
|
include_soft_deleted_channels: Optional[bool] = None,
|
|
1109
1138
|
include_truncated_messages: Optional[bool] = None,
|
|
1110
1139
|
version: Optional[str] = None,
|
|
1140
|
+
include_fields: Optional[List[str]] = None,
|
|
1111
1141
|
) -> StreamResponse[ExportChannelsResponse]:
|
|
1112
1142
|
json = ExportChannelsRequest(
|
|
1113
1143
|
channels=channels,
|
|
1114
1144
|
clear_deleted_message_text=clear_deleted_message_text,
|
|
1115
1145
|
export_users=export_users,
|
|
1146
|
+
format=format,
|
|
1116
1147
|
include_soft_deleted_channels=include_soft_deleted_channels,
|
|
1117
1148
|
include_truncated_messages=include_truncated_messages,
|
|
1118
1149
|
version=version,
|
|
1150
|
+
include_fields=include_fields,
|
|
1119
1151
|
).to_dict()
|
|
1120
1152
|
return await self.post(
|
|
1121
1153
|
"/api/v2/chat/export_channels", ExportChannelsResponse, json=json
|
|
@@ -1519,6 +1551,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
1519
1551
|
id_lt: Optional[str] = None,
|
|
1520
1552
|
id_around: Optional[str] = None,
|
|
1521
1553
|
sort: Optional[List[SortParamRequest]] = None,
|
|
1554
|
+
member_custom_include: Optional[List[str]] = None,
|
|
1522
1555
|
) -> StreamResponse[GetRepliesResponse]:
|
|
1523
1556
|
query_params = build_query_param(
|
|
1524
1557
|
**{
|
|
@@ -1529,6 +1562,7 @@ class ChatRestClient(AsyncBaseClient):
|
|
|
1529
1562
|
"id_lt": id_lt,
|
|
1530
1563
|
"id_around": id_around,
|
|
1531
1564
|
"sort": sort,
|
|
1565
|
+
"member_custom_include": member_custom_include,
|
|
1532
1566
|
}
|
|
1533
1567
|
)
|
|
1534
1568
|
path_params = {
|
|
@@ -38,6 +38,12 @@ class Channel:
|
|
|
38
38
|
messages_limit: Optional[int] = None,
|
|
39
39
|
members_limit: Optional[int] = None,
|
|
40
40
|
watchers_limit: Optional[int] = None,
|
|
41
|
+
messages_id_lt: Optional[str] = None,
|
|
42
|
+
messages_id_lte: Optional[str] = None,
|
|
43
|
+
messages_id_gt: Optional[str] = None,
|
|
44
|
+
messages_id_gte: Optional[str] = None,
|
|
45
|
+
messages_id_around: Optional[str] = None,
|
|
46
|
+
user_id: Optional[str] = None,
|
|
41
47
|
) -> StreamResponse[ChannelStateResponse]:
|
|
42
48
|
response = self.client.get_channel(
|
|
43
49
|
type=self.channel_type,
|
|
@@ -46,6 +52,12 @@ class Channel:
|
|
|
46
52
|
messages_limit=messages_limit,
|
|
47
53
|
members_limit=members_limit,
|
|
48
54
|
watchers_limit=watchers_limit,
|
|
55
|
+
messages_id_lt=messages_id_lt,
|
|
56
|
+
messages_id_lte=messages_id_lte,
|
|
57
|
+
messages_id_gt=messages_id_gt,
|
|
58
|
+
messages_id_gte=messages_id_gte,
|
|
59
|
+
messages_id_around=messages_id_around,
|
|
60
|
+
user_id=user_id,
|
|
49
61
|
)
|
|
50
62
|
self._sync_from_response(response.data)
|
|
51
63
|
return response
|
|
@@ -236,6 +248,8 @@ class Channel:
|
|
|
236
248
|
self,
|
|
237
249
|
message: MessageRequest,
|
|
238
250
|
force_moderation: Optional[bool] = None,
|
|
251
|
+
include_channel_context: Optional[bool] = None,
|
|
252
|
+
include_mentioned_members: Optional[bool] = None,
|
|
239
253
|
keep_channel_hidden: Optional[bool] = None,
|
|
240
254
|
pending: Optional[bool] = None,
|
|
241
255
|
skip_enrich_url: Optional[bool] = None,
|
|
@@ -247,6 +261,8 @@ class Channel:
|
|
|
247
261
|
id=self.channel_id,
|
|
248
262
|
message=message,
|
|
249
263
|
force_moderation=force_moderation,
|
|
264
|
+
include_channel_context=include_channel_context,
|
|
265
|
+
include_mentioned_members=include_mentioned_members,
|
|
250
266
|
keep_channel_hidden=keep_channel_hidden,
|
|
251
267
|
pending=pending,
|
|
252
268
|
skip_enrich_url=skip_enrich_url,
|
|
@@ -258,10 +274,13 @@ class Channel:
|
|
|
258
274
|
|
|
259
275
|
@attach_channel_cid
|
|
260
276
|
def get_many_messages(
|
|
261
|
-
self, ids: List[str]
|
|
277
|
+
self, ids: List[str], member_custom_include: Optional[List[str]] = None
|
|
262
278
|
) -> StreamResponse[GetManyMessagesResponse]:
|
|
263
279
|
response = self.client.get_many_messages(
|
|
264
|
-
type=self.channel_type,
|
|
280
|
+
type=self.channel_type,
|
|
281
|
+
id=self.channel_id,
|
|
282
|
+
ids=ids,
|
|
283
|
+
member_custom_include=member_custom_include,
|
|
265
284
|
)
|
|
266
285
|
self._sync_from_response(response.data)
|
|
267
286
|
return response
|
|
@@ -272,6 +291,7 @@ class Channel:
|
|
|
272
291
|
hide_for_creator: Optional[bool] = None,
|
|
273
292
|
state: Optional[bool] = None,
|
|
274
293
|
thread_unread_counts: Optional[bool] = None,
|
|
294
|
+
member_custom_include: Optional[List[str]] = None,
|
|
275
295
|
data: Optional[ChannelInput] = None,
|
|
276
296
|
members: Optional[PaginationParams] = None,
|
|
277
297
|
messages: Optional[MessagePaginationParams] = None,
|
|
@@ -283,6 +303,7 @@ class Channel:
|
|
|
283
303
|
hide_for_creator=hide_for_creator,
|
|
284
304
|
state=state,
|
|
285
305
|
thread_unread_counts=thread_unread_counts,
|
|
306
|
+
member_custom_include=member_custom_include,
|
|
286
307
|
data=data,
|
|
287
308
|
members=members,
|
|
288
309
|
messages=messages,
|
|
@@ -210,6 +210,7 @@ class ChatRestClient(BaseClient):
|
|
|
210
210
|
predefined_filter: Optional[str] = None,
|
|
211
211
|
state: Optional[bool] = None,
|
|
212
212
|
user_id: Optional[str] = None,
|
|
213
|
+
member_custom_include: Optional[List[str]] = None,
|
|
213
214
|
sort: Optional[List[SortParamRequest]] = None,
|
|
214
215
|
filter_conditions: Optional[Dict[str, object]] = None,
|
|
215
216
|
filter_values: Optional[Dict[str, object]] = None,
|
|
@@ -224,6 +225,7 @@ class ChatRestClient(BaseClient):
|
|
|
224
225
|
predefined_filter=predefined_filter,
|
|
225
226
|
state=state,
|
|
226
227
|
user_id=user_id,
|
|
228
|
+
member_custom_include=member_custom_include,
|
|
227
229
|
sort=sort,
|
|
228
230
|
filter_conditions=filter_conditions,
|
|
229
231
|
filter_values=filter_values,
|
|
@@ -307,6 +309,7 @@ class ChatRestClient(BaseClient):
|
|
|
307
309
|
hide_for_creator: Optional[bool] = None,
|
|
308
310
|
state: Optional[bool] = None,
|
|
309
311
|
thread_unread_counts: Optional[bool] = None,
|
|
312
|
+
member_custom_include: Optional[List[str]] = None,
|
|
310
313
|
data: Optional[ChannelInput] = None,
|
|
311
314
|
members: Optional[PaginationParams] = None,
|
|
312
315
|
messages: Optional[MessagePaginationParams] = None,
|
|
@@ -319,6 +322,7 @@ class ChatRestClient(BaseClient):
|
|
|
319
322
|
hide_for_creator=hide_for_creator,
|
|
320
323
|
state=state,
|
|
321
324
|
thread_unread_counts=thread_unread_counts,
|
|
325
|
+
member_custom_include=member_custom_include,
|
|
322
326
|
data=data,
|
|
323
327
|
members=members,
|
|
324
328
|
messages=messages,
|
|
@@ -356,6 +360,12 @@ class ChatRestClient(BaseClient):
|
|
|
356
360
|
messages_limit: Optional[int] = None,
|
|
357
361
|
members_limit: Optional[int] = None,
|
|
358
362
|
watchers_limit: Optional[int] = None,
|
|
363
|
+
messages_id_lt: Optional[str] = None,
|
|
364
|
+
messages_id_lte: Optional[str] = None,
|
|
365
|
+
messages_id_gt: Optional[str] = None,
|
|
366
|
+
messages_id_gte: Optional[str] = None,
|
|
367
|
+
messages_id_around: Optional[str] = None,
|
|
368
|
+
user_id: Optional[str] = None,
|
|
359
369
|
) -> StreamResponse[ChannelStateResponse]:
|
|
360
370
|
query_params = build_query_param(
|
|
361
371
|
**{
|
|
@@ -363,6 +373,12 @@ class ChatRestClient(BaseClient):
|
|
|
363
373
|
"messages_limit": messages_limit,
|
|
364
374
|
"members_limit": members_limit,
|
|
365
375
|
"watchers_limit": watchers_limit,
|
|
376
|
+
"messages_id_lt": messages_id_lt,
|
|
377
|
+
"messages_id_lte": messages_id_lte,
|
|
378
|
+
"messages_id_gt": messages_id_gt,
|
|
379
|
+
"messages_id_gte": messages_id_gte,
|
|
380
|
+
"messages_id_around": messages_id_around,
|
|
381
|
+
"user_id": user_id,
|
|
366
382
|
}
|
|
367
383
|
)
|
|
368
384
|
path_params = {
|
|
@@ -639,6 +655,8 @@ class ChatRestClient(BaseClient):
|
|
|
639
655
|
id: str,
|
|
640
656
|
message: MessageRequest,
|
|
641
657
|
force_moderation: Optional[bool] = None,
|
|
658
|
+
include_channel_context: Optional[bool] = None,
|
|
659
|
+
include_mentioned_members: Optional[bool] = None,
|
|
642
660
|
keep_channel_hidden: Optional[bool] = None,
|
|
643
661
|
pending: Optional[bool] = None,
|
|
644
662
|
skip_enrich_url: Optional[bool] = None,
|
|
@@ -652,6 +670,8 @@ class ChatRestClient(BaseClient):
|
|
|
652
670
|
json = SendMessageRequest(
|
|
653
671
|
message=message,
|
|
654
672
|
force_moderation=force_moderation,
|
|
673
|
+
include_channel_context=include_channel_context,
|
|
674
|
+
include_mentioned_members=include_mentioned_members,
|
|
655
675
|
keep_channel_hidden=keep_channel_hidden,
|
|
656
676
|
pending=pending,
|
|
657
677
|
skip_enrich_url=skip_enrich_url,
|
|
@@ -667,9 +687,15 @@ class ChatRestClient(BaseClient):
|
|
|
667
687
|
|
|
668
688
|
@telemetry.operation_name("getstream.api.chat.get_many_messages")
|
|
669
689
|
def get_many_messages(
|
|
670
|
-
self,
|
|
690
|
+
self,
|
|
691
|
+
type: str,
|
|
692
|
+
id: str,
|
|
693
|
+
ids: List[str],
|
|
694
|
+
member_custom_include: Optional[List[str]] = None,
|
|
671
695
|
) -> StreamResponse[GetManyMessagesResponse]:
|
|
672
|
-
query_params = build_query_param(
|
|
696
|
+
query_params = build_query_param(
|
|
697
|
+
**{"ids": ids, "member_custom_include": member_custom_include}
|
|
698
|
+
)
|
|
673
699
|
path_params = {
|
|
674
700
|
"type": type,
|
|
675
701
|
"id": id,
|
|
@@ -689,6 +715,7 @@ class ChatRestClient(BaseClient):
|
|
|
689
715
|
hide_for_creator: Optional[bool] = None,
|
|
690
716
|
state: Optional[bool] = None,
|
|
691
717
|
thread_unread_counts: Optional[bool] = None,
|
|
718
|
+
member_custom_include: Optional[List[str]] = None,
|
|
692
719
|
data: Optional[ChannelInput] = None,
|
|
693
720
|
members: Optional[PaginationParams] = None,
|
|
694
721
|
messages: Optional[MessagePaginationParams] = None,
|
|
@@ -702,6 +729,7 @@ class ChatRestClient(BaseClient):
|
|
|
702
729
|
hide_for_creator=hide_for_creator,
|
|
703
730
|
state=state,
|
|
704
731
|
thread_unread_counts=thread_unread_counts,
|
|
732
|
+
member_custom_include=member_custom_include,
|
|
705
733
|
data=data,
|
|
706
734
|
members=members,
|
|
707
735
|
messages=messages,
|
|
@@ -1093,17 +1121,21 @@ class ChatRestClient(BaseClient):
|
|
|
1093
1121
|
channels: List[ChannelExport],
|
|
1094
1122
|
clear_deleted_message_text: Optional[bool] = None,
|
|
1095
1123
|
export_users: Optional[bool] = None,
|
|
1124
|
+
format: Optional[str] = None,
|
|
1096
1125
|
include_soft_deleted_channels: Optional[bool] = None,
|
|
1097
1126
|
include_truncated_messages: Optional[bool] = None,
|
|
1098
1127
|
version: Optional[str] = None,
|
|
1128
|
+
include_fields: Optional[List[str]] = None,
|
|
1099
1129
|
) -> StreamResponse[ExportChannelsResponse]:
|
|
1100
1130
|
json = ExportChannelsRequest(
|
|
1101
1131
|
channels=channels,
|
|
1102
1132
|
clear_deleted_message_text=clear_deleted_message_text,
|
|
1103
1133
|
export_users=export_users,
|
|
1134
|
+
format=format,
|
|
1104
1135
|
include_soft_deleted_channels=include_soft_deleted_channels,
|
|
1105
1136
|
include_truncated_messages=include_truncated_messages,
|
|
1106
1137
|
version=version,
|
|
1138
|
+
include_fields=include_fields,
|
|
1107
1139
|
).to_dict()
|
|
1108
1140
|
return self.post(
|
|
1109
1141
|
"/api/v2/chat/export_channels", ExportChannelsResponse, json=json
|
|
@@ -1507,6 +1539,7 @@ class ChatRestClient(BaseClient):
|
|
|
1507
1539
|
id_lt: Optional[str] = None,
|
|
1508
1540
|
id_around: Optional[str] = None,
|
|
1509
1541
|
sort: Optional[List[SortParamRequest]] = None,
|
|
1542
|
+
member_custom_include: Optional[List[str]] = None,
|
|
1510
1543
|
) -> StreamResponse[GetRepliesResponse]:
|
|
1511
1544
|
query_params = build_query_param(
|
|
1512
1545
|
**{
|
|
@@ -1517,6 +1550,7 @@ class ChatRestClient(BaseClient):
|
|
|
1517
1550
|
"id_lt": id_lt,
|
|
1518
1551
|
"id_around": id_around,
|
|
1519
1552
|
"sort": sort,
|
|
1553
|
+
"member_custom_include": member_custom_include,
|
|
1520
1554
|
}
|
|
1521
1555
|
)
|
|
1522
1556
|
path_params = {
|
|
@@ -44,6 +44,7 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
44
44
|
before_message_send_hook_url: Optional[str] = None,
|
|
45
45
|
cdn_expiration_seconds: Optional[int] = None,
|
|
46
46
|
channel_hide_members_only: Optional[bool] = None,
|
|
47
|
+
chat_primary_use_case: Optional[str] = None,
|
|
47
48
|
custom_action_handler_url: Optional[str] = None,
|
|
48
49
|
disable_auth_checks: Optional[bool] = None,
|
|
49
50
|
disable_permissions_checks: Optional[bool] = None,
|
|
@@ -55,6 +56,7 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
55
56
|
guest_user_creation_disabled: Optional[bool] = None,
|
|
56
57
|
image_moderation_enabled: Optional[bool] = None,
|
|
57
58
|
max_aggregated_activities_length: Optional[int] = None,
|
|
59
|
+
member_custom_on_messages_enabled: Optional[bool] = None,
|
|
58
60
|
migrate_permissions_to_v2: Optional[bool] = None,
|
|
59
61
|
moderation_analytics_enabled: Optional[bool] = None,
|
|
60
62
|
moderation_enabled: Optional[bool] = None,
|
|
@@ -104,6 +106,7 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
104
106
|
before_message_send_hook_url=before_message_send_hook_url,
|
|
105
107
|
cdn_expiration_seconds=cdn_expiration_seconds,
|
|
106
108
|
channel_hide_members_only=channel_hide_members_only,
|
|
109
|
+
chat_primary_use_case=chat_primary_use_case,
|
|
107
110
|
custom_action_handler_url=custom_action_handler_url,
|
|
108
111
|
disable_auth_checks=disable_auth_checks,
|
|
109
112
|
disable_permissions_checks=disable_permissions_checks,
|
|
@@ -115,6 +118,7 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
115
118
|
guest_user_creation_disabled=guest_user_creation_disabled,
|
|
116
119
|
image_moderation_enabled=image_moderation_enabled,
|
|
117
120
|
max_aggregated_activities_length=max_aggregated_activities_length,
|
|
121
|
+
member_custom_on_messages_enabled=member_custom_on_messages_enabled,
|
|
118
122
|
migrate_permissions_to_v2=migrate_permissions_to_v2,
|
|
119
123
|
moderation_analytics_enabled=moderation_analytics_enabled,
|
|
120
124
|
moderation_enabled=moderation_enabled,
|
|
@@ -159,9 +163,14 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
159
163
|
|
|
160
164
|
@telemetry.operation_name("getstream.api.common.list_block_lists")
|
|
161
165
|
async def list_block_lists(
|
|
162
|
-
self,
|
|
166
|
+
self,
|
|
167
|
+
team: Optional[str] = None,
|
|
168
|
+
cursor: Optional[str] = None,
|
|
169
|
+
limit: Optional[int] = None,
|
|
163
170
|
) -> StreamResponse[ListBlockListResponse]:
|
|
164
|
-
query_params = build_query_param(
|
|
171
|
+
query_params = build_query_param(
|
|
172
|
+
**{"team": team, "cursor": cursor, "limit": limit}
|
|
173
|
+
)
|
|
165
174
|
return await self.get(
|
|
166
175
|
"/api/v2/blocklists", ListBlockListResponse, query_params=query_params
|
|
167
176
|
)
|
|
@@ -177,6 +186,8 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
177
186
|
is_substring_matching_enabled: Optional[bool] = None,
|
|
178
187
|
team: Optional[str] = None,
|
|
179
188
|
type: Optional[str] = None,
|
|
189
|
+
user_id: Optional[str] = None,
|
|
190
|
+
user: Optional[UserRequest] = None,
|
|
180
191
|
) -> StreamResponse[CreateBlockListResponse]:
|
|
181
192
|
json = CreateBlockListRequest(
|
|
182
193
|
name=name,
|
|
@@ -187,14 +198,31 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
187
198
|
is_substring_matching_enabled=is_substring_matching_enabled,
|
|
188
199
|
team=team,
|
|
189
200
|
type=type,
|
|
201
|
+
user_id=user_id,
|
|
202
|
+
user=user,
|
|
190
203
|
).to_dict()
|
|
191
204
|
return await self.post("/api/v2/blocklists", CreateBlockListResponse, json=json)
|
|
192
205
|
|
|
206
|
+
@telemetry.operation_name("getstream.api.common.import_block_list")
|
|
207
|
+
async def import_block_list(
|
|
208
|
+
self, id: str, items: List[str], chunk_size: Optional[int] = None
|
|
209
|
+
) -> StreamResponse[ImportBlockListResponse]:
|
|
210
|
+
path_params = {
|
|
211
|
+
"id": id,
|
|
212
|
+
}
|
|
213
|
+
json = ImportBlockListRequest(items=items, chunk_size=chunk_size).to_dict()
|
|
214
|
+
return await self.post(
|
|
215
|
+
"/api/v2/blocklists/{id}/import",
|
|
216
|
+
ImportBlockListResponse,
|
|
217
|
+
path_params=path_params,
|
|
218
|
+
json=json,
|
|
219
|
+
)
|
|
220
|
+
|
|
193
221
|
@telemetry.operation_name("getstream.api.common.delete_block_list")
|
|
194
222
|
async def delete_block_list(
|
|
195
|
-
self, name: str, team: Optional[str] = None
|
|
223
|
+
self, name: str, team: Optional[str] = None, user_id: Optional[str] = None
|
|
196
224
|
) -> StreamResponse[Response]:
|
|
197
|
-
query_params = build_query_param(**{"team": team})
|
|
225
|
+
query_params = build_query_param(**{"team": team, "user_id": user_id})
|
|
198
226
|
path_params = {
|
|
199
227
|
"name": name,
|
|
200
228
|
}
|
|
@@ -229,7 +257,9 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
229
257
|
is_plural_check_enabled: Optional[bool] = None,
|
|
230
258
|
is_substring_matching_enabled: Optional[bool] = None,
|
|
231
259
|
team: Optional[str] = None,
|
|
260
|
+
user_id: Optional[str] = None,
|
|
232
261
|
words: Optional[List[str]] = None,
|
|
262
|
+
user: Optional[UserRequest] = None,
|
|
233
263
|
) -> StreamResponse[UpdateBlockListResponse]:
|
|
234
264
|
path_params = {
|
|
235
265
|
"name": name,
|
|
@@ -240,7 +270,9 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
240
270
|
is_plural_check_enabled=is_plural_check_enabled,
|
|
241
271
|
is_substring_matching_enabled=is_substring_matching_enabled,
|
|
242
272
|
team=team,
|
|
273
|
+
user_id=user_id,
|
|
243
274
|
words=words,
|
|
275
|
+
user=user,
|
|
244
276
|
).to_dict()
|
|
245
277
|
return await self.put(
|
|
246
278
|
"/api/v2/blocklists/{name}",
|
|
@@ -502,9 +534,12 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
502
534
|
|
|
503
535
|
@telemetry.operation_name("getstream.api.common.upsert_importer_external_storage")
|
|
504
536
|
async def upsert_importer_external_storage(
|
|
505
|
-
self,
|
|
537
|
+
self,
|
|
538
|
+
type: str,
|
|
539
|
+
aws_s3: Optional[UpsertExternalStorageAWSS3Request] = None,
|
|
540
|
+
gcs: Optional[UpsertExternalStorageGCSRequest] = None,
|
|
506
541
|
) -> StreamResponse[UpsertExternalStorageResponse]:
|
|
507
|
-
json = UpsertExternalStorageRequest(type=type, aws_s3=aws_s3).to_dict()
|
|
542
|
+
json = UpsertExternalStorageRequest(type=type, aws_s3=aws_s3, gcs=gcs).to_dict()
|
|
508
543
|
return await self.put(
|
|
509
544
|
"/api/v2/imports/v2/external-storage",
|
|
510
545
|
UpsertExternalStorageResponse,
|
|
@@ -789,9 +824,8 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
789
824
|
|
|
790
825
|
@telemetry.operation_name("getstream.api.common.get_poll_option")
|
|
791
826
|
async def get_poll_option(
|
|
792
|
-
self, poll_id: str, option_id: str
|
|
827
|
+
self, poll_id: str, option_id: str
|
|
793
828
|
) -> StreamResponse[PollOptionResponse]:
|
|
794
|
-
query_params = build_query_param(**{"user_id": user_id})
|
|
795
829
|
path_params = {
|
|
796
830
|
"poll_id": poll_id,
|
|
797
831
|
"option_id": option_id,
|
|
@@ -799,7 +833,6 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
799
833
|
return await self.get(
|
|
800
834
|
"/api/v2/polls/{poll_id}/options/{option_id}",
|
|
801
835
|
PollOptionResponse,
|
|
802
|
-
query_params=query_params,
|
|
803
836
|
path_params=path_params,
|
|
804
837
|
)
|
|
805
838
|
|
|
@@ -908,6 +941,7 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
908
941
|
android: Optional[bool] = None,
|
|
909
942
|
ios: Optional[bool] = None,
|
|
910
943
|
web: Optional[bool] = None,
|
|
944
|
+
unity: Optional[bool] = None,
|
|
911
945
|
endpoints: Optional[str] = None,
|
|
912
946
|
) -> StreamResponse[GetRateLimitsResponse]:
|
|
913
947
|
query_params = build_query_param(
|
|
@@ -916,6 +950,7 @@ class CommonRestClient(AsyncBaseClient):
|
|
|
916
950
|
"android": android,
|
|
917
951
|
"ios": ios,
|
|
918
952
|
"web": web,
|
|
953
|
+
"unity": unity,
|
|
919
954
|
"endpoints": endpoints,
|
|
920
955
|
}
|
|
921
956
|
)
|