mergepythonclient 4.0.0__py3-none-any.whl → 4.2.0__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.
- merge/core/client_wrapper.py +2 -2
- merge/resources/accounting/__init__.py +21 -0
- merge/resources/accounting/client.py +19 -0
- merge/resources/accounting/resources/__init__.py +3 -0
- merge/resources/accounting/resources/selective_sync/__init__.py +4 -0
- merge/resources/accounting/resources/selective_sync/client.py +104 -0
- merge/resources/accounting/resources/selective_sync/raw_client.py +103 -0
- merge/resources/accounting/types/__init__.py +18 -0
- merge/resources/accounting/types/operator_enum.py +58 -0
- merge/resources/accounting/types/selective_sync_condition.py +49 -0
- merge/resources/accounting/types/selective_sync_condition_list.py +21 -0
- merge/resources/accounting/types/selective_sync_condition_operator.py +7 -0
- merge/resources/accounting/types/sync_status.py +7 -0
- merge/resources/accounting/types/sync_status_reason_enum.py +20 -0
- merge/resources/accounting/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/ats/__init__.py +21 -0
- merge/resources/ats/client.py +19 -0
- merge/resources/ats/resources/__init__.py +3 -0
- merge/resources/ats/resources/selective_sync/__init__.py +4 -0
- merge/resources/ats/resources/selective_sync/client.py +104 -0
- merge/resources/ats/resources/selective_sync/raw_client.py +103 -0
- merge/resources/ats/types/__init__.py +18 -0
- merge/resources/ats/types/operator_enum.py +58 -0
- merge/resources/ats/types/selective_sync_condition.py +49 -0
- merge/resources/ats/types/selective_sync_condition_list.py +21 -0
- merge/resources/ats/types/selective_sync_condition_operator.py +7 -0
- merge/resources/ats/types/sync_status.py +7 -0
- merge/resources/ats/types/sync_status_reason_enum.py +20 -0
- merge/resources/ats/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/calendar/__init__.py +21 -0
- merge/resources/calendar/client.py +19 -0
- merge/resources/calendar/resources/__init__.py +3 -0
- merge/resources/calendar/resources/selective_sync/__init__.py +4 -0
- merge/resources/calendar/resources/selective_sync/client.py +104 -0
- merge/resources/calendar/resources/selective_sync/raw_client.py +103 -0
- merge/resources/calendar/types/__init__.py +18 -0
- merge/resources/calendar/types/operator_enum.py +58 -0
- merge/resources/calendar/types/selective_sync_condition.py +49 -0
- merge/resources/calendar/types/selective_sync_condition_list.py +21 -0
- merge/resources/calendar/types/selective_sync_condition_operator.py +7 -0
- merge/resources/calendar/types/sync_status.py +7 -0
- merge/resources/calendar/types/sync_status_reason_enum.py +20 -0
- merge/resources/calendar/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/chat/__init__.py +39 -0
- merge/resources/chat/client.py +19 -0
- merge/resources/chat/resources/__init__.py +3 -0
- merge/resources/chat/resources/selective_sync/__init__.py +4 -0
- merge/resources/chat/resources/selective_sync/client.py +264 -0
- merge/resources/chat/resources/selective_sync/raw_client.py +293 -0
- merge/resources/chat/types/__init__.py +36 -0
- merge/resources/chat/types/chat_sync_selection.py +50 -0
- merge/resources/chat/types/chat_sync_selection_type.py +7 -0
- merge/resources/chat/types/chat_sync_selection_type_enum.py +18 -0
- merge/resources/chat/types/label_selection.py +43 -0
- merge/resources/chat/types/label_selection_list.py +21 -0
- merge/resources/chat/types/operator_enum.py +58 -0
- merge/resources/chat/types/paginated_chat_sync_selection_list.py +23 -0
- merge/resources/chat/types/selective_sync_condition.py +49 -0
- merge/resources/chat/types/selective_sync_condition_list.py +21 -0
- merge/resources/chat/types/selective_sync_condition_operator.py +7 -0
- merge/resources/chat/types/sync_status.py +7 -0
- merge/resources/chat/types/sync_status_reason_enum.py +20 -0
- merge/resources/chat/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/crm/__init__.py +21 -0
- merge/resources/crm/client.py +19 -0
- merge/resources/crm/resources/__init__.py +3 -0
- merge/resources/crm/resources/selective_sync/__init__.py +4 -0
- merge/resources/crm/resources/selective_sync/client.py +104 -0
- merge/resources/crm/resources/selective_sync/raw_client.py +103 -0
- merge/resources/crm/types/__init__.py +18 -0
- merge/resources/crm/types/operator_enum.py +58 -0
- merge/resources/crm/types/selective_sync_condition.py +49 -0
- merge/resources/crm/types/selective_sync_condition_list.py +21 -0
- merge/resources/crm/types/selective_sync_condition_operator.py +7 -0
- merge/resources/crm/types/sync_status.py +7 -0
- merge/resources/crm/types/sync_status_reason_enum.py +20 -0
- merge/resources/crm/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/email/__init__.py +27 -0
- merge/resources/email/client.py +19 -0
- merge/resources/email/resources/__init__.py +3 -0
- merge/resources/email/resources/selective_sync/__init__.py +4 -0
- merge/resources/email/resources/selective_sync/client.py +167 -0
- merge/resources/email/resources/selective_sync/raw_client.py +184 -0
- merge/resources/email/types/__init__.py +24 -0
- merge/resources/email/types/label_selection.py +43 -0
- merge/resources/email/types/label_selection_list.py +21 -0
- merge/resources/email/types/operator_enum.py +58 -0
- merge/resources/email/types/selective_sync_condition.py +49 -0
- merge/resources/email/types/selective_sync_condition_list.py +21 -0
- merge/resources/email/types/selective_sync_condition_operator.py +7 -0
- merge/resources/email/types/sync_status.py +7 -0
- merge/resources/email/types/sync_status_reason_enum.py +20 -0
- merge/resources/email/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/filestorage/__init__.py +39 -0
- merge/resources/filestorage/client.py +19 -0
- merge/resources/filestorage/resources/__init__.py +3 -0
- merge/resources/filestorage/resources/selective_sync/__init__.py +4 -0
- merge/resources/filestorage/resources/selective_sync/client.py +264 -0
- merge/resources/filestorage/resources/selective_sync/raw_client.py +293 -0
- merge/resources/filestorage/types/__init__.py +36 -0
- merge/resources/filestorage/types/file_storage_sync_selection.py +50 -0
- merge/resources/filestorage/types/file_storage_sync_selection_type.py +7 -0
- merge/resources/filestorage/types/file_storage_sync_selection_type_enum.py +26 -0
- merge/resources/filestorage/types/label_selection.py +43 -0
- merge/resources/filestorage/types/label_selection_list.py +21 -0
- merge/resources/filestorage/types/operator_enum.py +58 -0
- merge/resources/filestorage/types/paginated_file_storage_sync_selection_list.py +23 -0
- merge/resources/filestorage/types/selective_sync_condition.py +49 -0
- merge/resources/filestorage/types/selective_sync_condition_list.py +21 -0
- merge/resources/filestorage/types/selective_sync_condition_operator.py +7 -0
- merge/resources/filestorage/types/sync_status.py +7 -0
- merge/resources/filestorage/types/sync_status_reason_enum.py +20 -0
- merge/resources/filestorage/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/hris/__init__.py +21 -0
- merge/resources/hris/client.py +19 -0
- merge/resources/hris/resources/__init__.py +3 -0
- merge/resources/hris/resources/selective_sync/__init__.py +4 -0
- merge/resources/hris/resources/selective_sync/client.py +104 -0
- merge/resources/hris/resources/selective_sync/raw_client.py +103 -0
- merge/resources/hris/types/__init__.py +18 -0
- merge/resources/hris/types/operator_enum.py +58 -0
- merge/resources/hris/types/selective_sync_condition.py +49 -0
- merge/resources/hris/types/selective_sync_condition_list.py +21 -0
- merge/resources/hris/types/selective_sync_condition_operator.py +7 -0
- merge/resources/hris/types/sync_status.py +7 -0
- merge/resources/hris/types/sync_status_reason_enum.py +20 -0
- merge/resources/hris/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/knowledgebase/__init__.py +33 -0
- merge/resources/knowledgebase/client.py +19 -0
- merge/resources/knowledgebase/resources/__init__.py +3 -0
- merge/resources/knowledgebase/resources/selective_sync/__init__.py +4 -0
- merge/resources/knowledgebase/resources/selective_sync/client.py +201 -0
- merge/resources/knowledgebase/resources/selective_sync/raw_client.py +212 -0
- merge/resources/knowledgebase/types/__init__.py +30 -0
- merge/resources/knowledgebase/types/knowledge_base_sync_selection.py +50 -0
- merge/resources/knowledgebase/types/knowledge_base_sync_selection_type.py +7 -0
- merge/resources/knowledgebase/types/knowledge_base_sync_selection_type_enum.py +18 -0
- merge/resources/knowledgebase/types/operator_enum.py +58 -0
- merge/resources/knowledgebase/types/paginated_knowledge_base_sync_selection_list.py +23 -0
- merge/resources/knowledgebase/types/selective_sync_condition.py +49 -0
- merge/resources/knowledgebase/types/selective_sync_condition_list.py +21 -0
- merge/resources/knowledgebase/types/selective_sync_condition_operator.py +7 -0
- merge/resources/knowledgebase/types/sync_status.py +7 -0
- merge/resources/knowledgebase/types/sync_status_reason_enum.py +20 -0
- merge/resources/knowledgebase/types/sync_status_sync_status_reason.py +7 -0
- merge/resources/ticketing/__init__.py +21 -0
- merge/resources/ticketing/client.py +19 -0
- merge/resources/ticketing/resources/__init__.py +3 -0
- merge/resources/ticketing/resources/selective_sync/__init__.py +4 -0
- merge/resources/ticketing/resources/selective_sync/client.py +104 -0
- merge/resources/ticketing/resources/selective_sync/raw_client.py +103 -0
- merge/resources/ticketing/types/__init__.py +18 -0
- merge/resources/ticketing/types/operator_enum.py +58 -0
- merge/resources/ticketing/types/selective_sync_condition.py +49 -0
- merge/resources/ticketing/types/selective_sync_condition_list.py +21 -0
- merge/resources/ticketing/types/selective_sync_condition_operator.py +7 -0
- merge/resources/ticketing/types/sync_status.py +7 -0
- merge/resources/ticketing/types/sync_status_reason_enum.py +20 -0
- merge/resources/ticketing/types/sync_status_sync_status_reason.py +7 -0
- {mergepythonclient-4.0.0.dist-info → mergepythonclient-4.2.0.dist-info}/METADATA +2 -1
- {mergepythonclient-4.0.0.dist-info → mergepythonclient-4.2.0.dist-info}/RECORD +163 -55
- {mergepythonclient-4.0.0.dist-info → mergepythonclient-4.2.0.dist-info}/LICENSE.md +0 -0
- {mergepythonclient-4.0.0.dist-info → mergepythonclient-4.2.0.dist-info}/WHEEL +0 -0
merge/resources/ats/__init__.py
CHANGED
|
@@ -139,6 +139,7 @@ if typing.TYPE_CHECKING:
|
|
|
139
139
|
OfferStatus,
|
|
140
140
|
OfferStatusEnum,
|
|
141
141
|
Office,
|
|
142
|
+
OperatorEnum,
|
|
142
143
|
OverallRecommendationEnum,
|
|
143
144
|
PaginatedAccountDetailsAndActionsList,
|
|
144
145
|
PaginatedActivityList,
|
|
@@ -215,11 +216,16 @@ if typing.TYPE_CHECKING:
|
|
|
215
216
|
ScreeningQuestionOptionsItem,
|
|
216
217
|
ScreeningQuestionType,
|
|
217
218
|
ScreeningQuestionTypeEnum,
|
|
219
|
+
SelectiveSyncCondition,
|
|
220
|
+
SelectiveSyncConditionList,
|
|
221
|
+
SelectiveSyncConditionOperator,
|
|
218
222
|
SelectiveSyncConfigurationsUsageEnum,
|
|
219
223
|
StatusFd5Enum,
|
|
220
224
|
SyncStatus,
|
|
221
225
|
SyncStatusLastSyncResult,
|
|
226
|
+
SyncStatusReasonEnum,
|
|
222
227
|
SyncStatusStatus,
|
|
228
|
+
SyncStatusSyncStatusReason,
|
|
223
229
|
Tag,
|
|
224
230
|
Url,
|
|
225
231
|
UrlRequest,
|
|
@@ -290,6 +296,7 @@ if typing.TYPE_CHECKING:
|
|
|
290
296
|
reject_reasons,
|
|
291
297
|
scopes,
|
|
292
298
|
scorecards,
|
|
299
|
+
selective_sync,
|
|
293
300
|
sync_status,
|
|
294
301
|
tags,
|
|
295
302
|
users,
|
|
@@ -454,6 +461,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
454
461
|
"OffersListRequestStatus": ".resources",
|
|
455
462
|
"OffersRetrieveRequestExpandItem": ".resources",
|
|
456
463
|
"Office": ".types",
|
|
464
|
+
"OperatorEnum": ".types",
|
|
457
465
|
"OverallRecommendationEnum": ".types",
|
|
458
466
|
"PaginatedAccountDetailsAndActionsList": ".types",
|
|
459
467
|
"PaginatedActivityList": ".types",
|
|
@@ -532,11 +540,16 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
532
540
|
"ScreeningQuestionOptionsItem": ".types",
|
|
533
541
|
"ScreeningQuestionType": ".types",
|
|
534
542
|
"ScreeningQuestionTypeEnum": ".types",
|
|
543
|
+
"SelectiveSyncCondition": ".types",
|
|
544
|
+
"SelectiveSyncConditionList": ".types",
|
|
545
|
+
"SelectiveSyncConditionOperator": ".types",
|
|
535
546
|
"SelectiveSyncConfigurationsUsageEnum": ".types",
|
|
536
547
|
"StatusFd5Enum": ".types",
|
|
537
548
|
"SyncStatus": ".types",
|
|
538
549
|
"SyncStatusLastSyncResult": ".types",
|
|
550
|
+
"SyncStatusReasonEnum": ".types",
|
|
539
551
|
"SyncStatusStatus": ".types",
|
|
552
|
+
"SyncStatusSyncStatusReason": ".types",
|
|
540
553
|
"Tag": ".types",
|
|
541
554
|
"Url": ".types",
|
|
542
555
|
"UrlRequest": ".types",
|
|
@@ -577,6 +590,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
577
590
|
"reject_reasons": ".resources",
|
|
578
591
|
"scopes": ".resources",
|
|
579
592
|
"scorecards": ".resources",
|
|
593
|
+
"selective_sync": ".resources",
|
|
580
594
|
"sync_status": ".resources",
|
|
581
595
|
"tags": ".resources",
|
|
582
596
|
"users": ".resources",
|
|
@@ -764,6 +778,7 @@ __all__ = [
|
|
|
764
778
|
"OffersListRequestStatus",
|
|
765
779
|
"OffersRetrieveRequestExpandItem",
|
|
766
780
|
"Office",
|
|
781
|
+
"OperatorEnum",
|
|
767
782
|
"OverallRecommendationEnum",
|
|
768
783
|
"PaginatedAccountDetailsAndActionsList",
|
|
769
784
|
"PaginatedActivityList",
|
|
@@ -842,11 +857,16 @@ __all__ = [
|
|
|
842
857
|
"ScreeningQuestionOptionsItem",
|
|
843
858
|
"ScreeningQuestionType",
|
|
844
859
|
"ScreeningQuestionTypeEnum",
|
|
860
|
+
"SelectiveSyncCondition",
|
|
861
|
+
"SelectiveSyncConditionList",
|
|
862
|
+
"SelectiveSyncConditionOperator",
|
|
845
863
|
"SelectiveSyncConfigurationsUsageEnum",
|
|
846
864
|
"StatusFd5Enum",
|
|
847
865
|
"SyncStatus",
|
|
848
866
|
"SyncStatusLastSyncResult",
|
|
867
|
+
"SyncStatusReasonEnum",
|
|
849
868
|
"SyncStatusStatus",
|
|
869
|
+
"SyncStatusSyncStatusReason",
|
|
850
870
|
"Tag",
|
|
851
871
|
"Url",
|
|
852
872
|
"UrlRequest",
|
|
@@ -887,6 +907,7 @@ __all__ = [
|
|
|
887
907
|
"reject_reasons",
|
|
888
908
|
"scopes",
|
|
889
909
|
"scorecards",
|
|
910
|
+
"selective_sync",
|
|
890
911
|
"sync_status",
|
|
891
912
|
"tags",
|
|
892
913
|
"users",
|
merge/resources/ats/client.py
CHANGED
|
@@ -43,6 +43,7 @@ if typing.TYPE_CHECKING:
|
|
|
43
43
|
from .resources.reject_reasons.client import AsyncRejectReasonsClient, RejectReasonsClient
|
|
44
44
|
from .resources.scopes.client import AsyncScopesClient, ScopesClient
|
|
45
45
|
from .resources.scorecards.client import AsyncScorecardsClient, ScorecardsClient
|
|
46
|
+
from .resources.selective_sync.client import AsyncSelectiveSyncClient, SelectiveSyncClient
|
|
46
47
|
from .resources.sync_status.client import AsyncSyncStatusClient, SyncStatusClient
|
|
47
48
|
from .resources.tags.client import AsyncTagsClient, TagsClient
|
|
48
49
|
from .resources.users.client import AsyncUsersClient, UsersClient
|
|
@@ -83,6 +84,7 @@ class AtsClient:
|
|
|
83
84
|
self._regenerate_key: typing.Optional[RegenerateKeyClient] = None
|
|
84
85
|
self._reject_reasons: typing.Optional[RejectReasonsClient] = None
|
|
85
86
|
self._scorecards: typing.Optional[ScorecardsClient] = None
|
|
87
|
+
self._selective_sync: typing.Optional[SelectiveSyncClient] = None
|
|
86
88
|
self._sync_status: typing.Optional[SyncStatusClient] = None
|
|
87
89
|
self._force_resync: typing.Optional[ForceResyncClient] = None
|
|
88
90
|
self._tags: typing.Optional[TagsClient] = None
|
|
@@ -328,6 +330,14 @@ class AtsClient:
|
|
|
328
330
|
self._scorecards = ScorecardsClient(client_wrapper=self._client_wrapper)
|
|
329
331
|
return self._scorecards
|
|
330
332
|
|
|
333
|
+
@property
|
|
334
|
+
def selective_sync(self):
|
|
335
|
+
if self._selective_sync is None:
|
|
336
|
+
from .resources.selective_sync.client import SelectiveSyncClient # noqa: E402
|
|
337
|
+
|
|
338
|
+
self._selective_sync = SelectiveSyncClient(client_wrapper=self._client_wrapper)
|
|
339
|
+
return self._selective_sync
|
|
340
|
+
|
|
331
341
|
@property
|
|
332
342
|
def sync_status(self):
|
|
333
343
|
if self._sync_status is None:
|
|
@@ -401,6 +411,7 @@ class AsyncAtsClient:
|
|
|
401
411
|
self._regenerate_key: typing.Optional[AsyncRegenerateKeyClient] = None
|
|
402
412
|
self._reject_reasons: typing.Optional[AsyncRejectReasonsClient] = None
|
|
403
413
|
self._scorecards: typing.Optional[AsyncScorecardsClient] = None
|
|
414
|
+
self._selective_sync: typing.Optional[AsyncSelectiveSyncClient] = None
|
|
404
415
|
self._sync_status: typing.Optional[AsyncSyncStatusClient] = None
|
|
405
416
|
self._force_resync: typing.Optional[AsyncForceResyncClient] = None
|
|
406
417
|
self._tags: typing.Optional[AsyncTagsClient] = None
|
|
@@ -646,6 +657,14 @@ class AsyncAtsClient:
|
|
|
646
657
|
self._scorecards = AsyncScorecardsClient(client_wrapper=self._client_wrapper)
|
|
647
658
|
return self._scorecards
|
|
648
659
|
|
|
660
|
+
@property
|
|
661
|
+
def selective_sync(self):
|
|
662
|
+
if self._selective_sync is None:
|
|
663
|
+
from .resources.selective_sync.client import AsyncSelectiveSyncClient # noqa: E402
|
|
664
|
+
|
|
665
|
+
self._selective_sync = AsyncSelectiveSyncClient(client_wrapper=self._client_wrapper)
|
|
666
|
+
return self._selective_sync
|
|
667
|
+
|
|
649
668
|
@property
|
|
650
669
|
def sync_status(self):
|
|
651
670
|
if self._sync_status is None:
|
|
@@ -36,6 +36,7 @@ if typing.TYPE_CHECKING:
|
|
|
36
36
|
reject_reasons,
|
|
37
37
|
scopes,
|
|
38
38
|
scorecards,
|
|
39
|
+
selective_sync,
|
|
39
40
|
sync_status,
|
|
40
41
|
tags,
|
|
41
42
|
users,
|
|
@@ -127,6 +128,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
127
128
|
"reject_reasons": ".reject_reasons",
|
|
128
129
|
"scopes": ".scopes",
|
|
129
130
|
"scorecards": ".scorecards",
|
|
131
|
+
"selective_sync": ".selective_sync",
|
|
130
132
|
"sync_status": ".sync_status",
|
|
131
133
|
"tags": ".tags",
|
|
132
134
|
"users": ".users",
|
|
@@ -213,6 +215,7 @@ __all__ = [
|
|
|
213
215
|
"reject_reasons",
|
|
214
216
|
"scopes",
|
|
215
217
|
"scorecards",
|
|
218
|
+
"selective_sync",
|
|
216
219
|
"sync_status",
|
|
217
220
|
"tags",
|
|
218
221
|
"users",
|
|
@@ -0,0 +1,104 @@
|
|
|
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.selective_sync_condition_list import SelectiveSyncConditionList
|
|
8
|
+
from .raw_client import AsyncRawSelectiveSyncClient, RawSelectiveSyncClient
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class SelectiveSyncClient:
|
|
12
|
+
def __init__(self, *, client_wrapper: SyncClientWrapper):
|
|
13
|
+
self._raw_client = RawSelectiveSyncClient(client_wrapper=client_wrapper)
|
|
14
|
+
|
|
15
|
+
@property
|
|
16
|
+
def with_raw_response(self) -> RawSelectiveSyncClient:
|
|
17
|
+
"""
|
|
18
|
+
Retrieves a raw implementation of this client that returns raw responses.
|
|
19
|
+
|
|
20
|
+
Returns
|
|
21
|
+
-------
|
|
22
|
+
RawSelectiveSyncClient
|
|
23
|
+
"""
|
|
24
|
+
return self._raw_client
|
|
25
|
+
|
|
26
|
+
def conditions_list(self, *, request_options: typing.Optional[RequestOptions] = None) -> SelectiveSyncConditionList:
|
|
27
|
+
"""
|
|
28
|
+
Returns a list of `SelectiveSyncCondition` objects.
|
|
29
|
+
|
|
30
|
+
Parameters
|
|
31
|
+
----------
|
|
32
|
+
request_options : typing.Optional[RequestOptions]
|
|
33
|
+
Request-specific configuration.
|
|
34
|
+
|
|
35
|
+
Returns
|
|
36
|
+
-------
|
|
37
|
+
SelectiveSyncConditionList
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
Examples
|
|
41
|
+
--------
|
|
42
|
+
from merge import Merge
|
|
43
|
+
|
|
44
|
+
client = Merge(
|
|
45
|
+
account_token="YOUR_ACCOUNT_TOKEN",
|
|
46
|
+
api_key="YOUR_API_KEY",
|
|
47
|
+
)
|
|
48
|
+
client.ats.selective_sync.conditions_list()
|
|
49
|
+
"""
|
|
50
|
+
_response = self._raw_client.conditions_list(request_options=request_options)
|
|
51
|
+
return _response.data
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
class AsyncSelectiveSyncClient:
|
|
55
|
+
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
56
|
+
self._raw_client = AsyncRawSelectiveSyncClient(client_wrapper=client_wrapper)
|
|
57
|
+
|
|
58
|
+
@property
|
|
59
|
+
def with_raw_response(self) -> AsyncRawSelectiveSyncClient:
|
|
60
|
+
"""
|
|
61
|
+
Retrieves a raw implementation of this client that returns raw responses.
|
|
62
|
+
|
|
63
|
+
Returns
|
|
64
|
+
-------
|
|
65
|
+
AsyncRawSelectiveSyncClient
|
|
66
|
+
"""
|
|
67
|
+
return self._raw_client
|
|
68
|
+
|
|
69
|
+
async def conditions_list(
|
|
70
|
+
self, *, request_options: typing.Optional[RequestOptions] = None
|
|
71
|
+
) -> SelectiveSyncConditionList:
|
|
72
|
+
"""
|
|
73
|
+
Returns a list of `SelectiveSyncCondition` objects.
|
|
74
|
+
|
|
75
|
+
Parameters
|
|
76
|
+
----------
|
|
77
|
+
request_options : typing.Optional[RequestOptions]
|
|
78
|
+
Request-specific configuration.
|
|
79
|
+
|
|
80
|
+
Returns
|
|
81
|
+
-------
|
|
82
|
+
SelectiveSyncConditionList
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
Examples
|
|
86
|
+
--------
|
|
87
|
+
import asyncio
|
|
88
|
+
|
|
89
|
+
from merge import AsyncMerge
|
|
90
|
+
|
|
91
|
+
client = AsyncMerge(
|
|
92
|
+
account_token="YOUR_ACCOUNT_TOKEN",
|
|
93
|
+
api_key="YOUR_API_KEY",
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
async def main() -> None:
|
|
98
|
+
await client.ats.selective_sync.conditions_list()
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
asyncio.run(main())
|
|
102
|
+
"""
|
|
103
|
+
_response = await self._raw_client.conditions_list(request_options=request_options)
|
|
104
|
+
return _response.data
|
|
@@ -0,0 +1,103 @@
|
|
|
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.selective_sync_condition_list import SelectiveSyncConditionList
|
|
13
|
+
from pydantic import ValidationError
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class RawSelectiveSyncClient:
|
|
17
|
+
def __init__(self, *, client_wrapper: SyncClientWrapper):
|
|
18
|
+
self._client_wrapper = client_wrapper
|
|
19
|
+
|
|
20
|
+
def conditions_list(
|
|
21
|
+
self, *, request_options: typing.Optional[RequestOptions] = None
|
|
22
|
+
) -> HttpResponse[SelectiveSyncConditionList]:
|
|
23
|
+
"""
|
|
24
|
+
Returns a list of `SelectiveSyncCondition` objects.
|
|
25
|
+
|
|
26
|
+
Parameters
|
|
27
|
+
----------
|
|
28
|
+
request_options : typing.Optional[RequestOptions]
|
|
29
|
+
Request-specific configuration.
|
|
30
|
+
|
|
31
|
+
Returns
|
|
32
|
+
-------
|
|
33
|
+
HttpResponse[SelectiveSyncConditionList]
|
|
34
|
+
|
|
35
|
+
"""
|
|
36
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
37
|
+
"ats/v1/selective-sync/conditions",
|
|
38
|
+
method="GET",
|
|
39
|
+
request_options=request_options,
|
|
40
|
+
)
|
|
41
|
+
try:
|
|
42
|
+
if 200 <= _response.status_code < 300:
|
|
43
|
+
_data = typing.cast(
|
|
44
|
+
SelectiveSyncConditionList,
|
|
45
|
+
construct_type(
|
|
46
|
+
type_=SelectiveSyncConditionList, # type: ignore
|
|
47
|
+
object_=_response.json(),
|
|
48
|
+
),
|
|
49
|
+
)
|
|
50
|
+
return HttpResponse(response=_response, data=_data)
|
|
51
|
+
_response_json = _response.json()
|
|
52
|
+
except JSONDecodeError:
|
|
53
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
54
|
+
except ValidationError as e:
|
|
55
|
+
raise ParsingError(
|
|
56
|
+
status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
|
|
57
|
+
)
|
|
58
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
class AsyncRawSelectiveSyncClient:
|
|
62
|
+
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
63
|
+
self._client_wrapper = client_wrapper
|
|
64
|
+
|
|
65
|
+
async def conditions_list(
|
|
66
|
+
self, *, request_options: typing.Optional[RequestOptions] = None
|
|
67
|
+
) -> AsyncHttpResponse[SelectiveSyncConditionList]:
|
|
68
|
+
"""
|
|
69
|
+
Returns a list of `SelectiveSyncCondition` objects.
|
|
70
|
+
|
|
71
|
+
Parameters
|
|
72
|
+
----------
|
|
73
|
+
request_options : typing.Optional[RequestOptions]
|
|
74
|
+
Request-specific configuration.
|
|
75
|
+
|
|
76
|
+
Returns
|
|
77
|
+
-------
|
|
78
|
+
AsyncHttpResponse[SelectiveSyncConditionList]
|
|
79
|
+
|
|
80
|
+
"""
|
|
81
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
82
|
+
"ats/v1/selective-sync/conditions",
|
|
83
|
+
method="GET",
|
|
84
|
+
request_options=request_options,
|
|
85
|
+
)
|
|
86
|
+
try:
|
|
87
|
+
if 200 <= _response.status_code < 300:
|
|
88
|
+
_data = typing.cast(
|
|
89
|
+
SelectiveSyncConditionList,
|
|
90
|
+
construct_type(
|
|
91
|
+
type_=SelectiveSyncConditionList, # type: ignore
|
|
92
|
+
object_=_response.json(),
|
|
93
|
+
),
|
|
94
|
+
)
|
|
95
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
96
|
+
_response_json = _response.json()
|
|
97
|
+
except JSONDecodeError:
|
|
98
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
99
|
+
except ValidationError as e:
|
|
100
|
+
raise ParsingError(
|
|
101
|
+
status_code=_response.status_code, headers=dict(_response.headers), body=_response.json(), cause=e
|
|
102
|
+
)
|
|
103
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
@@ -140,6 +140,7 @@ if typing.TYPE_CHECKING:
|
|
|
140
140
|
from .offer_status import OfferStatus
|
|
141
141
|
from .offer_status_enum import OfferStatusEnum
|
|
142
142
|
from .office import Office
|
|
143
|
+
from .operator_enum import OperatorEnum
|
|
143
144
|
from .overall_recommendation_enum import OverallRecommendationEnum
|
|
144
145
|
from .paginated_account_details_and_actions_list import PaginatedAccountDetailsAndActionsList
|
|
145
146
|
from .paginated_activity_list import PaginatedActivityList
|
|
@@ -216,11 +217,16 @@ if typing.TYPE_CHECKING:
|
|
|
216
217
|
from .screening_question_options_item import ScreeningQuestionOptionsItem
|
|
217
218
|
from .screening_question_type import ScreeningQuestionType
|
|
218
219
|
from .screening_question_type_enum import ScreeningQuestionTypeEnum
|
|
220
|
+
from .selective_sync_condition import SelectiveSyncCondition
|
|
221
|
+
from .selective_sync_condition_list import SelectiveSyncConditionList
|
|
222
|
+
from .selective_sync_condition_operator import SelectiveSyncConditionOperator
|
|
219
223
|
from .selective_sync_configurations_usage_enum import SelectiveSyncConfigurationsUsageEnum
|
|
220
224
|
from .status_fd_5_enum import StatusFd5Enum
|
|
221
225
|
from .sync_status import SyncStatus
|
|
222
226
|
from .sync_status_last_sync_result import SyncStatusLastSyncResult
|
|
227
|
+
from .sync_status_reason_enum import SyncStatusReasonEnum
|
|
223
228
|
from .sync_status_status import SyncStatusStatus
|
|
229
|
+
from .sync_status_sync_status_reason import SyncStatusSyncStatusReason
|
|
224
230
|
from .tag import Tag
|
|
225
231
|
from .url import Url
|
|
226
232
|
from .url_request import UrlRequest
|
|
@@ -365,6 +371,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
365
371
|
"OfferStatus": ".offer_status",
|
|
366
372
|
"OfferStatusEnum": ".offer_status_enum",
|
|
367
373
|
"Office": ".office",
|
|
374
|
+
"OperatorEnum": ".operator_enum",
|
|
368
375
|
"OverallRecommendationEnum": ".overall_recommendation_enum",
|
|
369
376
|
"PaginatedAccountDetailsAndActionsList": ".paginated_account_details_and_actions_list",
|
|
370
377
|
"PaginatedActivityList": ".paginated_activity_list",
|
|
@@ -441,11 +448,16 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
441
448
|
"ScreeningQuestionOptionsItem": ".screening_question_options_item",
|
|
442
449
|
"ScreeningQuestionType": ".screening_question_type",
|
|
443
450
|
"ScreeningQuestionTypeEnum": ".screening_question_type_enum",
|
|
451
|
+
"SelectiveSyncCondition": ".selective_sync_condition",
|
|
452
|
+
"SelectiveSyncConditionList": ".selective_sync_condition_list",
|
|
453
|
+
"SelectiveSyncConditionOperator": ".selective_sync_condition_operator",
|
|
444
454
|
"SelectiveSyncConfigurationsUsageEnum": ".selective_sync_configurations_usage_enum",
|
|
445
455
|
"StatusFd5Enum": ".status_fd_5_enum",
|
|
446
456
|
"SyncStatus": ".sync_status",
|
|
447
457
|
"SyncStatusLastSyncResult": ".sync_status_last_sync_result",
|
|
458
|
+
"SyncStatusReasonEnum": ".sync_status_reason_enum",
|
|
448
459
|
"SyncStatusStatus": ".sync_status_status",
|
|
460
|
+
"SyncStatusSyncStatusReason": ".sync_status_sync_status_reason",
|
|
449
461
|
"Tag": ".tag",
|
|
450
462
|
"Url": ".url",
|
|
451
463
|
"UrlRequest": ".url_request",
|
|
@@ -614,6 +626,7 @@ __all__ = [
|
|
|
614
626
|
"OfferStatus",
|
|
615
627
|
"OfferStatusEnum",
|
|
616
628
|
"Office",
|
|
629
|
+
"OperatorEnum",
|
|
617
630
|
"OverallRecommendationEnum",
|
|
618
631
|
"PaginatedAccountDetailsAndActionsList",
|
|
619
632
|
"PaginatedActivityList",
|
|
@@ -690,11 +703,16 @@ __all__ = [
|
|
|
690
703
|
"ScreeningQuestionOptionsItem",
|
|
691
704
|
"ScreeningQuestionType",
|
|
692
705
|
"ScreeningQuestionTypeEnum",
|
|
706
|
+
"SelectiveSyncCondition",
|
|
707
|
+
"SelectiveSyncConditionList",
|
|
708
|
+
"SelectiveSyncConditionOperator",
|
|
693
709
|
"SelectiveSyncConfigurationsUsageEnum",
|
|
694
710
|
"StatusFd5Enum",
|
|
695
711
|
"SyncStatus",
|
|
696
712
|
"SyncStatusLastSyncResult",
|
|
713
|
+
"SyncStatusReasonEnum",
|
|
697
714
|
"SyncStatusStatus",
|
|
715
|
+
"SyncStatusSyncStatusReason",
|
|
698
716
|
"Tag",
|
|
699
717
|
"Url",
|
|
700
718
|
"UrlRequest",
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
from ....core import enum
|
|
6
|
+
|
|
7
|
+
T_Result = typing.TypeVar("T_Result")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class OperatorEnum(enum.StrEnum):
|
|
11
|
+
CONTAINS = "CONTAINS"
|
|
12
|
+
EQUALS = "EQUALS"
|
|
13
|
+
GREATER_THAN = "GREATER_THAN"
|
|
14
|
+
GREATER_THAN_OR_EQUAL_TO = "GREATER_THAN_OR_EQUAL_TO"
|
|
15
|
+
HAS_ALL_OF = "HAS_ALL_OF"
|
|
16
|
+
HAS_NONE_OF = "HAS_NONE_OF"
|
|
17
|
+
IS_ONE_OF = "IS_ONE_OF"
|
|
18
|
+
LESS_THAN = "LESS_THAN"
|
|
19
|
+
LESS_THAN_OR_EQUAL_TO = "LESS_THAN_OR_EQUAL_TO"
|
|
20
|
+
NOT_EQUALS = "NOT_EQUALS"
|
|
21
|
+
WITHIN = "WITHIN"
|
|
22
|
+
|
|
23
|
+
def visit(
|
|
24
|
+
self,
|
|
25
|
+
contains: typing.Callable[[], T_Result],
|
|
26
|
+
equals: typing.Callable[[], T_Result],
|
|
27
|
+
greater_than: typing.Callable[[], T_Result],
|
|
28
|
+
greater_than_or_equal_to: typing.Callable[[], T_Result],
|
|
29
|
+
has_all_of: typing.Callable[[], T_Result],
|
|
30
|
+
has_none_of: typing.Callable[[], T_Result],
|
|
31
|
+
is_one_of: typing.Callable[[], T_Result],
|
|
32
|
+
less_than: typing.Callable[[], T_Result],
|
|
33
|
+
less_than_or_equal_to: typing.Callable[[], T_Result],
|
|
34
|
+
not_equals: typing.Callable[[], T_Result],
|
|
35
|
+
within: typing.Callable[[], T_Result],
|
|
36
|
+
) -> T_Result:
|
|
37
|
+
if self is OperatorEnum.CONTAINS:
|
|
38
|
+
return contains()
|
|
39
|
+
if self is OperatorEnum.EQUALS:
|
|
40
|
+
return equals()
|
|
41
|
+
if self is OperatorEnum.GREATER_THAN:
|
|
42
|
+
return greater_than()
|
|
43
|
+
if self is OperatorEnum.GREATER_THAN_OR_EQUAL_TO:
|
|
44
|
+
return greater_than_or_equal_to()
|
|
45
|
+
if self is OperatorEnum.HAS_ALL_OF:
|
|
46
|
+
return has_all_of()
|
|
47
|
+
if self is OperatorEnum.HAS_NONE_OF:
|
|
48
|
+
return has_none_of()
|
|
49
|
+
if self is OperatorEnum.IS_ONE_OF:
|
|
50
|
+
return is_one_of()
|
|
51
|
+
if self is OperatorEnum.LESS_THAN:
|
|
52
|
+
return less_than()
|
|
53
|
+
if self is OperatorEnum.LESS_THAN_OR_EQUAL_TO:
|
|
54
|
+
return less_than_or_equal_to()
|
|
55
|
+
if self is OperatorEnum.NOT_EQUALS:
|
|
56
|
+
return not_equals()
|
|
57
|
+
if self is OperatorEnum.WITHIN:
|
|
58
|
+
return within()
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ....core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ....core.unchecked_base_model import UncheckedBaseModel
|
|
8
|
+
from .selective_sync_condition_operator import SelectiveSyncConditionOperator
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class SelectiveSyncCondition(UncheckedBaseModel):
|
|
12
|
+
id: str = pydantic.Field()
|
|
13
|
+
"""
|
|
14
|
+
The Merge ID of the filter.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
common_model: str = pydantic.Field()
|
|
18
|
+
"""
|
|
19
|
+
The common model the filter applies to.
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
normalized_key_name: str = pydantic.Field()
|
|
23
|
+
"""
|
|
24
|
+
The Merge field the filter applies to.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
remote_key_name: typing.Optional[str] = pydantic.Field(default=None)
|
|
28
|
+
"""
|
|
29
|
+
The third-party API's name for the filtered field.
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
operator: SelectiveSyncConditionOperator = pydantic.Field()
|
|
33
|
+
"""
|
|
34
|
+
How the value is compared.
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
value: typing.Dict[str, typing.Any] = pydantic.Field()
|
|
38
|
+
"""
|
|
39
|
+
The value the field is compared against.
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
if IS_PYDANTIC_V2:
|
|
43
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
44
|
+
else:
|
|
45
|
+
|
|
46
|
+
class Config:
|
|
47
|
+
frozen = True
|
|
48
|
+
smart_union = True
|
|
49
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ....core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ....core.unchecked_base_model import UncheckedBaseModel
|
|
8
|
+
from .selective_sync_condition import SelectiveSyncCondition
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class SelectiveSyncConditionList(UncheckedBaseModel):
|
|
12
|
+
results: typing.List[SelectiveSyncCondition]
|
|
13
|
+
|
|
14
|
+
if IS_PYDANTIC_V2:
|
|
15
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
16
|
+
else:
|
|
17
|
+
|
|
18
|
+
class Config:
|
|
19
|
+
frozen = True
|
|
20
|
+
smart_union = True
|
|
21
|
+
extra = pydantic.Extra.allow
|
|
@@ -9,6 +9,7 @@ from ....core.unchecked_base_model import UncheckedBaseModel
|
|
|
9
9
|
from .selective_sync_configurations_usage_enum import SelectiveSyncConfigurationsUsageEnum
|
|
10
10
|
from .sync_status_last_sync_result import SyncStatusLastSyncResult
|
|
11
11
|
from .sync_status_status import SyncStatusStatus
|
|
12
|
+
from .sync_status_sync_status_reason import SyncStatusSyncStatusReason
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
class SyncStatus(UncheckedBaseModel):
|
|
@@ -27,7 +28,13 @@ class SyncStatus(UncheckedBaseModel):
|
|
|
27
28
|
next_sync_start: typing.Optional[dt.datetime] = None
|
|
28
29
|
last_sync_result: typing.Optional[SyncStatusLastSyncResult] = None
|
|
29
30
|
last_sync_finished: typing.Optional[dt.datetime] = None
|
|
31
|
+
data_fresh_as_of: typing.Optional[dt.datetime] = None
|
|
30
32
|
status: SyncStatusStatus
|
|
33
|
+
sync_status_reason: typing.Optional[SyncStatusSyncStatusReason] = pydantic.Field(default=None)
|
|
34
|
+
"""
|
|
35
|
+
The reason a model with a `SYNCING` status is temporarily not progressing. `RATE_LIMITED` indicates the model is paused to respect the data provider's rate limits. `WAITING_ON_OTHER_MODELS` indicates the model is waiting for other models to finish syncing.
|
|
36
|
+
"""
|
|
37
|
+
|
|
31
38
|
is_initial_sync: bool
|
|
32
39
|
selective_sync_configurations_usage: typing.Optional[SelectiveSyncConfigurationsUsageEnum] = None
|
|
33
40
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
from ....core import enum
|
|
6
|
+
|
|
7
|
+
T_Result = typing.TypeVar("T_Result")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class SyncStatusReasonEnum(enum.StrEnum):
|
|
11
|
+
RATE_LIMITED = "RATE_LIMITED"
|
|
12
|
+
WAITING_ON_OTHER_MODELS = "WAITING_ON_OTHER_MODELS"
|
|
13
|
+
|
|
14
|
+
def visit(
|
|
15
|
+
self, rate_limited: typing.Callable[[], T_Result], waiting_on_other_models: typing.Callable[[], T_Result]
|
|
16
|
+
) -> T_Result:
|
|
17
|
+
if self is SyncStatusReasonEnum.RATE_LIMITED:
|
|
18
|
+
return rate_limited()
|
|
19
|
+
if self is SyncStatusReasonEnum.WAITING_ON_OTHER_MODELS:
|
|
20
|
+
return waiting_on_other_models()
|