mergepythonclient 4.1.0__py3-none-any.whl → 4.2.1__py3-none-any.whl

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.
Files changed (143) hide show
  1. merge/core/client_wrapper.py +2 -2
  2. merge/resources/accounting/__init__.py +15 -0
  3. merge/resources/accounting/client.py +19 -0
  4. merge/resources/accounting/resources/__init__.py +3 -0
  5. merge/resources/accounting/resources/selective_sync/__init__.py +4 -0
  6. merge/resources/accounting/resources/selective_sync/client.py +104 -0
  7. merge/resources/accounting/resources/selective_sync/raw_client.py +103 -0
  8. merge/resources/accounting/types/__init__.py +12 -0
  9. merge/resources/accounting/types/operator_enum.py +58 -0
  10. merge/resources/accounting/types/selective_sync_condition.py +49 -0
  11. merge/resources/accounting/types/selective_sync_condition_list.py +21 -0
  12. merge/resources/accounting/types/selective_sync_condition_operator.py +7 -0
  13. merge/resources/accounting/types/sync_status.py +5 -0
  14. merge/resources/ats/__init__.py +15 -0
  15. merge/resources/ats/client.py +19 -0
  16. merge/resources/ats/resources/__init__.py +3 -0
  17. merge/resources/ats/resources/selective_sync/__init__.py +4 -0
  18. merge/resources/ats/resources/selective_sync/client.py +104 -0
  19. merge/resources/ats/resources/selective_sync/raw_client.py +103 -0
  20. merge/resources/ats/types/__init__.py +12 -0
  21. merge/resources/ats/types/operator_enum.py +58 -0
  22. merge/resources/ats/types/selective_sync_condition.py +49 -0
  23. merge/resources/ats/types/selective_sync_condition_list.py +21 -0
  24. merge/resources/ats/types/selective_sync_condition_operator.py +7 -0
  25. merge/resources/ats/types/sync_status.py +5 -0
  26. merge/resources/calendar/__init__.py +15 -0
  27. merge/resources/calendar/client.py +19 -0
  28. merge/resources/calendar/resources/__init__.py +3 -0
  29. merge/resources/calendar/resources/selective_sync/__init__.py +4 -0
  30. merge/resources/calendar/resources/selective_sync/client.py +104 -0
  31. merge/resources/calendar/resources/selective_sync/raw_client.py +103 -0
  32. merge/resources/calendar/types/__init__.py +12 -0
  33. merge/resources/calendar/types/operator_enum.py +58 -0
  34. merge/resources/calendar/types/selective_sync_condition.py +49 -0
  35. merge/resources/calendar/types/selective_sync_condition_list.py +21 -0
  36. merge/resources/calendar/types/selective_sync_condition_operator.py +7 -0
  37. merge/resources/calendar/types/sync_status.py +5 -0
  38. merge/resources/chat/__init__.py +33 -0
  39. merge/resources/chat/client.py +19 -0
  40. merge/resources/chat/resources/__init__.py +3 -0
  41. merge/resources/chat/resources/selective_sync/__init__.py +4 -0
  42. merge/resources/chat/resources/selective_sync/client.py +264 -0
  43. merge/resources/chat/resources/selective_sync/raw_client.py +293 -0
  44. merge/resources/chat/types/__init__.py +30 -0
  45. merge/resources/chat/types/chat_sync_selection.py +50 -0
  46. merge/resources/chat/types/chat_sync_selection_type.py +7 -0
  47. merge/resources/chat/types/chat_sync_selection_type_enum.py +18 -0
  48. merge/resources/chat/types/label_selection.py +43 -0
  49. merge/resources/chat/types/label_selection_list.py +21 -0
  50. merge/resources/chat/types/operator_enum.py +58 -0
  51. merge/resources/chat/types/paginated_chat_sync_selection_list.py +23 -0
  52. merge/resources/chat/types/selective_sync_condition.py +49 -0
  53. merge/resources/chat/types/selective_sync_condition_list.py +21 -0
  54. merge/resources/chat/types/selective_sync_condition_operator.py +7 -0
  55. merge/resources/chat/types/sync_status.py +5 -0
  56. merge/resources/crm/__init__.py +15 -0
  57. merge/resources/crm/client.py +19 -0
  58. merge/resources/crm/resources/__init__.py +3 -0
  59. merge/resources/crm/resources/selective_sync/__init__.py +4 -0
  60. merge/resources/crm/resources/selective_sync/client.py +104 -0
  61. merge/resources/crm/resources/selective_sync/raw_client.py +103 -0
  62. merge/resources/crm/types/__init__.py +12 -0
  63. merge/resources/crm/types/operator_enum.py +58 -0
  64. merge/resources/crm/types/selective_sync_condition.py +49 -0
  65. merge/resources/crm/types/selective_sync_condition_list.py +21 -0
  66. merge/resources/crm/types/selective_sync_condition_operator.py +7 -0
  67. merge/resources/crm/types/sync_status.py +5 -0
  68. merge/resources/email/__init__.py +21 -0
  69. merge/resources/email/client.py +19 -0
  70. merge/resources/email/resources/__init__.py +3 -0
  71. merge/resources/email/resources/selective_sync/__init__.py +4 -0
  72. merge/resources/email/resources/selective_sync/client.py +167 -0
  73. merge/resources/email/resources/selective_sync/raw_client.py +184 -0
  74. merge/resources/email/types/__init__.py +18 -0
  75. merge/resources/email/types/label_selection.py +43 -0
  76. merge/resources/email/types/label_selection_list.py +21 -0
  77. merge/resources/email/types/operator_enum.py +58 -0
  78. merge/resources/email/types/selective_sync_condition.py +49 -0
  79. merge/resources/email/types/selective_sync_condition_list.py +21 -0
  80. merge/resources/email/types/selective_sync_condition_operator.py +7 -0
  81. merge/resources/email/types/sync_status.py +5 -0
  82. merge/resources/filestorage/__init__.py +33 -0
  83. merge/resources/filestorage/client.py +19 -0
  84. merge/resources/filestorage/resources/__init__.py +3 -0
  85. merge/resources/filestorage/resources/selective_sync/__init__.py +4 -0
  86. merge/resources/filestorage/resources/selective_sync/client.py +264 -0
  87. merge/resources/filestorage/resources/selective_sync/raw_client.py +293 -0
  88. merge/resources/filestorage/types/__init__.py +30 -0
  89. merge/resources/filestorage/types/file_storage_sync_selection.py +50 -0
  90. merge/resources/filestorage/types/file_storage_sync_selection_type.py +7 -0
  91. merge/resources/filestorage/types/file_storage_sync_selection_type_enum.py +26 -0
  92. merge/resources/filestorage/types/label_selection.py +43 -0
  93. merge/resources/filestorage/types/label_selection_list.py +21 -0
  94. merge/resources/filestorage/types/operator_enum.py +58 -0
  95. merge/resources/filestorage/types/paginated_file_storage_sync_selection_list.py +23 -0
  96. merge/resources/filestorage/types/selective_sync_condition.py +49 -0
  97. merge/resources/filestorage/types/selective_sync_condition_list.py +21 -0
  98. merge/resources/filestorage/types/selective_sync_condition_operator.py +7 -0
  99. merge/resources/filestorage/types/sync_status.py +5 -0
  100. merge/resources/hris/__init__.py +15 -0
  101. merge/resources/hris/client.py +19 -0
  102. merge/resources/hris/resources/__init__.py +3 -0
  103. merge/resources/hris/resources/selective_sync/__init__.py +4 -0
  104. merge/resources/hris/resources/selective_sync/client.py +104 -0
  105. merge/resources/hris/resources/selective_sync/raw_client.py +103 -0
  106. merge/resources/hris/types/__init__.py +12 -0
  107. merge/resources/hris/types/operator_enum.py +58 -0
  108. merge/resources/hris/types/selective_sync_condition.py +49 -0
  109. merge/resources/hris/types/selective_sync_condition_list.py +21 -0
  110. merge/resources/hris/types/selective_sync_condition_operator.py +7 -0
  111. merge/resources/hris/types/sync_status.py +5 -0
  112. merge/resources/knowledgebase/__init__.py +27 -0
  113. merge/resources/knowledgebase/client.py +19 -0
  114. merge/resources/knowledgebase/resources/__init__.py +3 -0
  115. merge/resources/knowledgebase/resources/selective_sync/__init__.py +4 -0
  116. merge/resources/knowledgebase/resources/selective_sync/client.py +201 -0
  117. merge/resources/knowledgebase/resources/selective_sync/raw_client.py +212 -0
  118. merge/resources/knowledgebase/types/__init__.py +24 -0
  119. merge/resources/knowledgebase/types/knowledge_base_sync_selection.py +50 -0
  120. merge/resources/knowledgebase/types/knowledge_base_sync_selection_type.py +7 -0
  121. merge/resources/knowledgebase/types/knowledge_base_sync_selection_type_enum.py +18 -0
  122. merge/resources/knowledgebase/types/operator_enum.py +58 -0
  123. merge/resources/knowledgebase/types/paginated_knowledge_base_sync_selection_list.py +23 -0
  124. merge/resources/knowledgebase/types/selective_sync_condition.py +49 -0
  125. merge/resources/knowledgebase/types/selective_sync_condition_list.py +21 -0
  126. merge/resources/knowledgebase/types/selective_sync_condition_operator.py +7 -0
  127. merge/resources/knowledgebase/types/sync_status.py +5 -0
  128. merge/resources/ticketing/__init__.py +15 -0
  129. merge/resources/ticketing/client.py +19 -0
  130. merge/resources/ticketing/resources/__init__.py +3 -0
  131. merge/resources/ticketing/resources/selective_sync/__init__.py +4 -0
  132. merge/resources/ticketing/resources/selective_sync/client.py +104 -0
  133. merge/resources/ticketing/resources/selective_sync/raw_client.py +103 -0
  134. merge/resources/ticketing/types/__init__.py +12 -0
  135. merge/resources/ticketing/types/operator_enum.py +58 -0
  136. merge/resources/ticketing/types/selective_sync_condition.py +49 -0
  137. merge/resources/ticketing/types/selective_sync_condition_list.py +21 -0
  138. merge/resources/ticketing/types/selective_sync_condition_operator.py +7 -0
  139. merge/resources/ticketing/types/sync_status.py +5 -0
  140. {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.1.dist-info}/METADATA +3 -1
  141. {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.1.dist-info}/RECORD +143 -55
  142. {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.1.dist-info}/LICENSE.md +0 -0
  143. {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.1.dist-info}/WHEEL +0 -0
@@ -0,0 +1,264 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .....core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
6
+ from .....core.request_options import RequestOptions
7
+ from ...types.label_selection_list import LabelSelectionList
8
+ from ...types.paginated_chat_sync_selection_list import PaginatedChatSyncSelectionList
9
+ from ...types.selective_sync_condition_list import SelectiveSyncConditionList
10
+ from .raw_client import AsyncRawSelectiveSyncClient, RawSelectiveSyncClient
11
+
12
+
13
+ class SelectiveSyncClient:
14
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
15
+ self._raw_client = RawSelectiveSyncClient(client_wrapper=client_wrapper)
16
+
17
+ @property
18
+ def with_raw_response(self) -> RawSelectiveSyncClient:
19
+ """
20
+ Retrieves a raw implementation of this client that returns raw responses.
21
+
22
+ Returns
23
+ -------
24
+ RawSelectiveSyncClient
25
+ """
26
+ return self._raw_client
27
+
28
+ def conditions_list(self, *, request_options: typing.Optional[RequestOptions] = None) -> SelectiveSyncConditionList:
29
+ """
30
+ Returns a list of `SelectiveSyncCondition` objects.
31
+
32
+ Parameters
33
+ ----------
34
+ request_options : typing.Optional[RequestOptions]
35
+ Request-specific configuration.
36
+
37
+ Returns
38
+ -------
39
+ SelectiveSyncConditionList
40
+
41
+
42
+ Examples
43
+ --------
44
+ from merge import Merge
45
+
46
+ client = Merge(
47
+ account_token="YOUR_ACCOUNT_TOKEN",
48
+ api_key="YOUR_API_KEY",
49
+ )
50
+ client.chat.selective_sync.conditions_list()
51
+ """
52
+ _response = self._raw_client.conditions_list(request_options=request_options)
53
+ return _response.data
54
+
55
+ def labels_list(self, *, request_options: typing.Optional[RequestOptions] = None) -> LabelSelectionList:
56
+ """
57
+ Returns a list of `LabelSelection` objects.
58
+
59
+ Parameters
60
+ ----------
61
+ request_options : typing.Optional[RequestOptions]
62
+ Request-specific configuration.
63
+
64
+ Returns
65
+ -------
66
+ LabelSelectionList
67
+
68
+
69
+ Examples
70
+ --------
71
+ from merge import Merge
72
+
73
+ client = Merge(
74
+ account_token="YOUR_ACCOUNT_TOKEN",
75
+ api_key="YOUR_API_KEY",
76
+ )
77
+ client.chat.selective_sync.labels_list()
78
+ """
79
+ _response = self._raw_client.labels_list(request_options=request_options)
80
+ return _response.data
81
+
82
+ def selections_list(
83
+ self,
84
+ *,
85
+ cursor: typing.Optional[str] = None,
86
+ page_size: typing.Optional[int] = None,
87
+ request_options: typing.Optional[RequestOptions] = None,
88
+ ) -> PaginatedChatSyncSelectionList:
89
+ """
90
+ Returns a list of `ChatSyncSelection` objects.
91
+
92
+ Parameters
93
+ ----------
94
+ cursor : typing.Optional[str]
95
+ The pagination cursor value.
96
+
97
+ page_size : typing.Optional[int]
98
+ Number of results to return per page. The maximum limit is 100.
99
+
100
+ request_options : typing.Optional[RequestOptions]
101
+ Request-specific configuration.
102
+
103
+ Returns
104
+ -------
105
+ PaginatedChatSyncSelectionList
106
+
107
+
108
+ Examples
109
+ --------
110
+ from merge import Merge
111
+
112
+ client = Merge(
113
+ account_token="YOUR_ACCOUNT_TOKEN",
114
+ api_key="YOUR_API_KEY",
115
+ )
116
+ client.chat.selective_sync.selections_list(
117
+ cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
118
+ page_size=1,
119
+ )
120
+ """
121
+ _response = self._raw_client.selections_list(
122
+ cursor=cursor, page_size=page_size, request_options=request_options
123
+ )
124
+ return _response.data
125
+
126
+
127
+ class AsyncSelectiveSyncClient:
128
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
129
+ self._raw_client = AsyncRawSelectiveSyncClient(client_wrapper=client_wrapper)
130
+
131
+ @property
132
+ def with_raw_response(self) -> AsyncRawSelectiveSyncClient:
133
+ """
134
+ Retrieves a raw implementation of this client that returns raw responses.
135
+
136
+ Returns
137
+ -------
138
+ AsyncRawSelectiveSyncClient
139
+ """
140
+ return self._raw_client
141
+
142
+ async def conditions_list(
143
+ self, *, request_options: typing.Optional[RequestOptions] = None
144
+ ) -> SelectiveSyncConditionList:
145
+ """
146
+ Returns a list of `SelectiveSyncCondition` objects.
147
+
148
+ Parameters
149
+ ----------
150
+ request_options : typing.Optional[RequestOptions]
151
+ Request-specific configuration.
152
+
153
+ Returns
154
+ -------
155
+ SelectiveSyncConditionList
156
+
157
+
158
+ Examples
159
+ --------
160
+ import asyncio
161
+
162
+ from merge import AsyncMerge
163
+
164
+ client = AsyncMerge(
165
+ account_token="YOUR_ACCOUNT_TOKEN",
166
+ api_key="YOUR_API_KEY",
167
+ )
168
+
169
+
170
+ async def main() -> None:
171
+ await client.chat.selective_sync.conditions_list()
172
+
173
+
174
+ asyncio.run(main())
175
+ """
176
+ _response = await self._raw_client.conditions_list(request_options=request_options)
177
+ return _response.data
178
+
179
+ async def labels_list(self, *, request_options: typing.Optional[RequestOptions] = None) -> LabelSelectionList:
180
+ """
181
+ Returns a list of `LabelSelection` objects.
182
+
183
+ Parameters
184
+ ----------
185
+ request_options : typing.Optional[RequestOptions]
186
+ Request-specific configuration.
187
+
188
+ Returns
189
+ -------
190
+ LabelSelectionList
191
+
192
+
193
+ Examples
194
+ --------
195
+ import asyncio
196
+
197
+ from merge import AsyncMerge
198
+
199
+ client = AsyncMerge(
200
+ account_token="YOUR_ACCOUNT_TOKEN",
201
+ api_key="YOUR_API_KEY",
202
+ )
203
+
204
+
205
+ async def main() -> None:
206
+ await client.chat.selective_sync.labels_list()
207
+
208
+
209
+ asyncio.run(main())
210
+ """
211
+ _response = await self._raw_client.labels_list(request_options=request_options)
212
+ return _response.data
213
+
214
+ async def selections_list(
215
+ self,
216
+ *,
217
+ cursor: typing.Optional[str] = None,
218
+ page_size: typing.Optional[int] = None,
219
+ request_options: typing.Optional[RequestOptions] = None,
220
+ ) -> PaginatedChatSyncSelectionList:
221
+ """
222
+ Returns a list of `ChatSyncSelection` objects.
223
+
224
+ Parameters
225
+ ----------
226
+ cursor : typing.Optional[str]
227
+ The pagination cursor value.
228
+
229
+ page_size : typing.Optional[int]
230
+ Number of results to return per page. The maximum limit is 100.
231
+
232
+ request_options : typing.Optional[RequestOptions]
233
+ Request-specific configuration.
234
+
235
+ Returns
236
+ -------
237
+ PaginatedChatSyncSelectionList
238
+
239
+
240
+ Examples
241
+ --------
242
+ import asyncio
243
+
244
+ from merge import AsyncMerge
245
+
246
+ client = AsyncMerge(
247
+ account_token="YOUR_ACCOUNT_TOKEN",
248
+ api_key="YOUR_API_KEY",
249
+ )
250
+
251
+
252
+ async def main() -> None:
253
+ await client.chat.selective_sync.selections_list(
254
+ cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw",
255
+ page_size=1,
256
+ )
257
+
258
+
259
+ asyncio.run(main())
260
+ """
261
+ _response = await self._raw_client.selections_list(
262
+ cursor=cursor, page_size=page_size, request_options=request_options
263
+ )
264
+ return _response.data
@@ -0,0 +1,293 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+ from json.decoder import JSONDecodeError
5
+
6
+ from .....core.api_error import ApiError
7
+ from .....core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
8
+ from .....core.http_response import AsyncHttpResponse, HttpResponse
9
+ from .....core.parse_error import ParsingError
10
+ from .....core.request_options import RequestOptions
11
+ from .....core.unchecked_base_model import construct_type
12
+ from ...types.label_selection_list import LabelSelectionList
13
+ from ...types.paginated_chat_sync_selection_list import PaginatedChatSyncSelectionList
14
+ from ...types.selective_sync_condition_list import SelectiveSyncConditionList
15
+ from pydantic import ValidationError
16
+
17
+
18
+ class RawSelectiveSyncClient:
19
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
20
+ self._client_wrapper = client_wrapper
21
+
22
+ def conditions_list(
23
+ self, *, request_options: typing.Optional[RequestOptions] = None
24
+ ) -> HttpResponse[SelectiveSyncConditionList]:
25
+ """
26
+ Returns a list of `SelectiveSyncCondition` objects.
27
+
28
+ Parameters
29
+ ----------
30
+ request_options : typing.Optional[RequestOptions]
31
+ Request-specific configuration.
32
+
33
+ Returns
34
+ -------
35
+ HttpResponse[SelectiveSyncConditionList]
36
+
37
+ """
38
+ _response = self._client_wrapper.httpx_client.request(
39
+ "chat/v1/selective-sync/conditions",
40
+ method="GET",
41
+ request_options=request_options,
42
+ )
43
+ try:
44
+ if 200 <= _response.status_code < 300:
45
+ _data = typing.cast(
46
+ SelectiveSyncConditionList,
47
+ construct_type(
48
+ type_=SelectiveSyncConditionList, # type: ignore
49
+ object_=_response.json(),
50
+ ),
51
+ )
52
+ return HttpResponse(response=_response, data=_data)
53
+ _response_json = _response.json()
54
+ except JSONDecodeError:
55
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
56
+ except ValidationError as e:
57
+ raise ParsingError(
58
+ status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
59
+ )
60
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
61
+
62
+ def labels_list(
63
+ self, *, request_options: typing.Optional[RequestOptions] = None
64
+ ) -> HttpResponse[LabelSelectionList]:
65
+ """
66
+ Returns a list of `LabelSelection` objects.
67
+
68
+ Parameters
69
+ ----------
70
+ request_options : typing.Optional[RequestOptions]
71
+ Request-specific configuration.
72
+
73
+ Returns
74
+ -------
75
+ HttpResponse[LabelSelectionList]
76
+
77
+ """
78
+ _response = self._client_wrapper.httpx_client.request(
79
+ "chat/v1/selective-sync/labels",
80
+ method="GET",
81
+ request_options=request_options,
82
+ )
83
+ try:
84
+ if 200 <= _response.status_code < 300:
85
+ _data = typing.cast(
86
+ LabelSelectionList,
87
+ construct_type(
88
+ type_=LabelSelectionList, # type: ignore
89
+ object_=_response.json(),
90
+ ),
91
+ )
92
+ return HttpResponse(response=_response, data=_data)
93
+ _response_json = _response.json()
94
+ except JSONDecodeError:
95
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
96
+ except ValidationError as e:
97
+ raise ParsingError(
98
+ status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
99
+ )
100
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
101
+
102
+ def selections_list(
103
+ self,
104
+ *,
105
+ cursor: typing.Optional[str] = None,
106
+ page_size: typing.Optional[int] = None,
107
+ request_options: typing.Optional[RequestOptions] = None,
108
+ ) -> HttpResponse[PaginatedChatSyncSelectionList]:
109
+ """
110
+ Returns a list of `ChatSyncSelection` objects.
111
+
112
+ Parameters
113
+ ----------
114
+ cursor : typing.Optional[str]
115
+ The pagination cursor value.
116
+
117
+ page_size : typing.Optional[int]
118
+ Number of results to return per page. The maximum limit is 100.
119
+
120
+ request_options : typing.Optional[RequestOptions]
121
+ Request-specific configuration.
122
+
123
+ Returns
124
+ -------
125
+ HttpResponse[PaginatedChatSyncSelectionList]
126
+
127
+ """
128
+ _response = self._client_wrapper.httpx_client.request(
129
+ "chat/v1/selective-sync/selections",
130
+ method="GET",
131
+ params={
132
+ "cursor": cursor,
133
+ "page_size": page_size,
134
+ },
135
+ request_options=request_options,
136
+ )
137
+ try:
138
+ if 200 <= _response.status_code < 300:
139
+ _data = typing.cast(
140
+ PaginatedChatSyncSelectionList,
141
+ construct_type(
142
+ type_=PaginatedChatSyncSelectionList, # type: ignore
143
+ object_=_response.json(),
144
+ ),
145
+ )
146
+ return HttpResponse(response=_response, data=_data)
147
+ _response_json = _response.json()
148
+ except JSONDecodeError:
149
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
150
+ except ValidationError as e:
151
+ raise ParsingError(
152
+ status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
153
+ )
154
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
155
+
156
+
157
+ class AsyncRawSelectiveSyncClient:
158
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
159
+ self._client_wrapper = client_wrapper
160
+
161
+ async def conditions_list(
162
+ self, *, request_options: typing.Optional[RequestOptions] = None
163
+ ) -> AsyncHttpResponse[SelectiveSyncConditionList]:
164
+ """
165
+ Returns a list of `SelectiveSyncCondition` objects.
166
+
167
+ Parameters
168
+ ----------
169
+ request_options : typing.Optional[RequestOptions]
170
+ Request-specific configuration.
171
+
172
+ Returns
173
+ -------
174
+ AsyncHttpResponse[SelectiveSyncConditionList]
175
+
176
+ """
177
+ _response = await self._client_wrapper.httpx_client.request(
178
+ "chat/v1/selective-sync/conditions",
179
+ method="GET",
180
+ request_options=request_options,
181
+ )
182
+ try:
183
+ if 200 <= _response.status_code < 300:
184
+ _data = typing.cast(
185
+ SelectiveSyncConditionList,
186
+ construct_type(
187
+ type_=SelectiveSyncConditionList, # type: ignore
188
+ object_=_response.json(),
189
+ ),
190
+ )
191
+ return AsyncHttpResponse(response=_response, data=_data)
192
+ _response_json = _response.json()
193
+ except JSONDecodeError:
194
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
195
+ except ValidationError as e:
196
+ raise ParsingError(
197
+ status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
198
+ )
199
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
200
+
201
+ async def labels_list(
202
+ self, *, request_options: typing.Optional[RequestOptions] = None
203
+ ) -> AsyncHttpResponse[LabelSelectionList]:
204
+ """
205
+ Returns a list of `LabelSelection` objects.
206
+
207
+ Parameters
208
+ ----------
209
+ request_options : typing.Optional[RequestOptions]
210
+ Request-specific configuration.
211
+
212
+ Returns
213
+ -------
214
+ AsyncHttpResponse[LabelSelectionList]
215
+
216
+ """
217
+ _response = await self._client_wrapper.httpx_client.request(
218
+ "chat/v1/selective-sync/labels",
219
+ method="GET",
220
+ request_options=request_options,
221
+ )
222
+ try:
223
+ if 200 <= _response.status_code < 300:
224
+ _data = typing.cast(
225
+ LabelSelectionList,
226
+ construct_type(
227
+ type_=LabelSelectionList, # type: ignore
228
+ object_=_response.json(),
229
+ ),
230
+ )
231
+ return AsyncHttpResponse(response=_response, data=_data)
232
+ _response_json = _response.json()
233
+ except JSONDecodeError:
234
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
235
+ except ValidationError as e:
236
+ raise ParsingError(
237
+ status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
238
+ )
239
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
240
+
241
+ async def selections_list(
242
+ self,
243
+ *,
244
+ cursor: typing.Optional[str] = None,
245
+ page_size: typing.Optional[int] = None,
246
+ request_options: typing.Optional[RequestOptions] = None,
247
+ ) -> AsyncHttpResponse[PaginatedChatSyncSelectionList]:
248
+ """
249
+ Returns a list of `ChatSyncSelection` objects.
250
+
251
+ Parameters
252
+ ----------
253
+ cursor : typing.Optional[str]
254
+ The pagination cursor value.
255
+
256
+ page_size : typing.Optional[int]
257
+ Number of results to return per page. The maximum limit is 100.
258
+
259
+ request_options : typing.Optional[RequestOptions]
260
+ Request-specific configuration.
261
+
262
+ Returns
263
+ -------
264
+ AsyncHttpResponse[PaginatedChatSyncSelectionList]
265
+
266
+ """
267
+ _response = await self._client_wrapper.httpx_client.request(
268
+ "chat/v1/selective-sync/selections",
269
+ method="GET",
270
+ params={
271
+ "cursor": cursor,
272
+ "page_size": page_size,
273
+ },
274
+ request_options=request_options,
275
+ )
276
+ try:
277
+ if 200 <= _response.status_code < 300:
278
+ _data = typing.cast(
279
+ PaginatedChatSyncSelectionList,
280
+ construct_type(
281
+ type_=PaginatedChatSyncSelectionList, # type: ignore
282
+ object_=_response.json(),
283
+ ),
284
+ )
285
+ return AsyncHttpResponse(response=_response, data=_data)
286
+ _response_json = _response.json()
287
+ except JSONDecodeError:
288
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
289
+ except ValidationError as e:
290
+ raise ParsingError(
291
+ status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
292
+ )
293
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
@@ -23,6 +23,9 @@ if typing.TYPE_CHECKING:
23
23
  from .available_actions import AvailableActions
24
24
  from .categories_enum import CategoriesEnum
25
25
  from .category_enum import CategoryEnum
26
+ from .chat_sync_selection import ChatSyncSelection
27
+ from .chat_sync_selection_type import ChatSyncSelectionType
28
+ from .chat_sync_selection_type_enum import ChatSyncSelectionTypeEnum
26
29
  from .common_model_scope_api import CommonModelScopeApi
27
30
  from .common_model_scopes_body_request import CommonModelScopesBodyRequest
28
31
  from .completed_account_initial_screen_enum import CompletedAccountInitialScreenEnum
@@ -59,6 +62,8 @@ if typing.TYPE_CHECKING:
59
62
  from .issue import Issue
60
63
  from .issue_status import IssueStatus
61
64
  from .issue_status_enum import IssueStatusEnum
65
+ from .label_selection import LabelSelection
66
+ from .label_selection_list import LabelSelectionList
62
67
  from .language_enum import LanguageEnum
63
68
  from .last_sync_result_enum import LastSyncResultEnum
64
69
  from .link_token import LinkToken
@@ -73,8 +78,10 @@ if typing.TYPE_CHECKING:
73
78
  from .model_permission_deserializer_request import ModelPermissionDeserializerRequest
74
79
  from .multipart_form_field_request import MultipartFormFieldRequest
75
80
  from .multipart_form_field_request_encoding import MultipartFormFieldRequestEncoding
81
+ from .operator_enum import OperatorEnum
76
82
  from .paginated_account_details_and_actions_list import PaginatedAccountDetailsAndActionsList
77
83
  from .paginated_audit_log_event_list import PaginatedAuditLogEventList
84
+ from .paginated_chat_sync_selection_list import PaginatedChatSyncSelectionList
78
85
  from .paginated_conversation_list import PaginatedConversationList
79
86
  from .paginated_group_list import PaginatedGroupList
80
87
  from .paginated_issue_list import PaginatedIssueList
@@ -95,6 +102,9 @@ if typing.TYPE_CHECKING:
95
102
  from .request_format_enum import RequestFormatEnum
96
103
  from .response_type_enum import ResponseTypeEnum
97
104
  from .role_enum import RoleEnum
105
+ from .selective_sync_condition import SelectiveSyncCondition
106
+ from .selective_sync_condition_list import SelectiveSyncConditionList
107
+ from .selective_sync_condition_operator import SelectiveSyncConditionOperator
98
108
  from .selective_sync_configurations_usage_enum import SelectiveSyncConfigurationsUsageEnum
99
109
  from .status_fd_5_enum import StatusFd5Enum
100
110
  from .sync_status import SyncStatus
@@ -127,6 +137,9 @@ _dynamic_imports: typing.Dict[str, str] = {
127
137
  "AvailableActions": ".available_actions",
128
138
  "CategoriesEnum": ".categories_enum",
129
139
  "CategoryEnum": ".category_enum",
140
+ "ChatSyncSelection": ".chat_sync_selection",
141
+ "ChatSyncSelectionType": ".chat_sync_selection_type",
142
+ "ChatSyncSelectionTypeEnum": ".chat_sync_selection_type_enum",
130
143
  "CommonModelScopeApi": ".common_model_scope_api",
131
144
  "CommonModelScopesBodyRequest": ".common_model_scopes_body_request",
132
145
  "CompletedAccountInitialScreenEnum": ".completed_account_initial_screen_enum",
@@ -161,6 +174,8 @@ _dynamic_imports: typing.Dict[str, str] = {
161
174
  "Issue": ".issue",
162
175
  "IssueStatus": ".issue_status",
163
176
  "IssueStatusEnum": ".issue_status_enum",
177
+ "LabelSelection": ".label_selection",
178
+ "LabelSelectionList": ".label_selection_list",
164
179
  "LanguageEnum": ".language_enum",
165
180
  "LastSyncResultEnum": ".last_sync_result_enum",
166
181
  "LinkToken": ".link_token",
@@ -175,8 +190,10 @@ _dynamic_imports: typing.Dict[str, str] = {
175
190
  "ModelPermissionDeserializerRequest": ".model_permission_deserializer_request",
176
191
  "MultipartFormFieldRequest": ".multipart_form_field_request",
177
192
  "MultipartFormFieldRequestEncoding": ".multipart_form_field_request_encoding",
193
+ "OperatorEnum": ".operator_enum",
178
194
  "PaginatedAccountDetailsAndActionsList": ".paginated_account_details_and_actions_list",
179
195
  "PaginatedAuditLogEventList": ".paginated_audit_log_event_list",
196
+ "PaginatedChatSyncSelectionList": ".paginated_chat_sync_selection_list",
180
197
  "PaginatedConversationList": ".paginated_conversation_list",
181
198
  "PaginatedGroupList": ".paginated_group_list",
182
199
  "PaginatedIssueList": ".paginated_issue_list",
@@ -197,6 +214,9 @@ _dynamic_imports: typing.Dict[str, str] = {
197
214
  "RequestFormatEnum": ".request_format_enum",
198
215
  "ResponseTypeEnum": ".response_type_enum",
199
216
  "RoleEnum": ".role_enum",
217
+ "SelectiveSyncCondition": ".selective_sync_condition",
218
+ "SelectiveSyncConditionList": ".selective_sync_condition_list",
219
+ "SelectiveSyncConditionOperator": ".selective_sync_condition_operator",
200
220
  "SelectiveSyncConfigurationsUsageEnum": ".selective_sync_configurations_usage_enum",
201
221
  "StatusFd5Enum": ".status_fd_5_enum",
202
222
  "SyncStatus": ".sync_status",
@@ -253,6 +273,9 @@ __all__ = [
253
273
  "AvailableActions",
254
274
  "CategoriesEnum",
255
275
  "CategoryEnum",
276
+ "ChatSyncSelection",
277
+ "ChatSyncSelectionType",
278
+ "ChatSyncSelectionTypeEnum",
256
279
  "CommonModelScopeApi",
257
280
  "CommonModelScopesBodyRequest",
258
281
  "CompletedAccountInitialScreenEnum",
@@ -287,6 +310,8 @@ __all__ = [
287
310
  "Issue",
288
311
  "IssueStatus",
289
312
  "IssueStatusEnum",
313
+ "LabelSelection",
314
+ "LabelSelectionList",
290
315
  "LanguageEnum",
291
316
  "LastSyncResultEnum",
292
317
  "LinkToken",
@@ -301,8 +326,10 @@ __all__ = [
301
326
  "ModelPermissionDeserializerRequest",
302
327
  "MultipartFormFieldRequest",
303
328
  "MultipartFormFieldRequestEncoding",
329
+ "OperatorEnum",
304
330
  "PaginatedAccountDetailsAndActionsList",
305
331
  "PaginatedAuditLogEventList",
332
+ "PaginatedChatSyncSelectionList",
306
333
  "PaginatedConversationList",
307
334
  "PaginatedGroupList",
308
335
  "PaginatedIssueList",
@@ -323,6 +350,9 @@ __all__ = [
323
350
  "RequestFormatEnum",
324
351
  "ResponseTypeEnum",
325
352
  "RoleEnum",
353
+ "SelectiveSyncCondition",
354
+ "SelectiveSyncConditionList",
355
+ "SelectiveSyncConditionOperator",
326
356
  "SelectiveSyncConfigurationsUsageEnum",
327
357
  "StatusFd5Enum",
328
358
  "SyncStatus",