mergepythonclient 4.1.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 +15 -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 +12 -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/ats/__init__.py +15 -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 +12 -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/calendar/__init__.py +15 -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 +12 -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/chat/__init__.py +33 -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 +30 -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/crm/__init__.py +15 -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 +12 -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/email/__init__.py +21 -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 +18 -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/filestorage/__init__.py +33 -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 +30 -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/hris/__init__.py +15 -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 +12 -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/knowledgebase/__init__.py +27 -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 +24 -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/ticketing/__init__.py +15 -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 +12 -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
- {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.0.dist-info}/METADATA +2 -1
- {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.0.dist-info}/RECORD +133 -45
- {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.0.dist-info}/LICENSE.md +0 -0
- {mergepythonclient-4.1.0.dist-info → mergepythonclient-4.2.0.dist-info}/WHEEL +0 -0
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,6 +217,9 @@ 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
|
|
@@ -367,6 +371,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
367
371
|
"OfferStatus": ".offer_status",
|
|
368
372
|
"OfferStatusEnum": ".offer_status_enum",
|
|
369
373
|
"Office": ".office",
|
|
374
|
+
"OperatorEnum": ".operator_enum",
|
|
370
375
|
"OverallRecommendationEnum": ".overall_recommendation_enum",
|
|
371
376
|
"PaginatedAccountDetailsAndActionsList": ".paginated_account_details_and_actions_list",
|
|
372
377
|
"PaginatedActivityList": ".paginated_activity_list",
|
|
@@ -443,6 +448,9 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
443
448
|
"ScreeningQuestionOptionsItem": ".screening_question_options_item",
|
|
444
449
|
"ScreeningQuestionType": ".screening_question_type",
|
|
445
450
|
"ScreeningQuestionTypeEnum": ".screening_question_type_enum",
|
|
451
|
+
"SelectiveSyncCondition": ".selective_sync_condition",
|
|
452
|
+
"SelectiveSyncConditionList": ".selective_sync_condition_list",
|
|
453
|
+
"SelectiveSyncConditionOperator": ".selective_sync_condition_operator",
|
|
446
454
|
"SelectiveSyncConfigurationsUsageEnum": ".selective_sync_configurations_usage_enum",
|
|
447
455
|
"StatusFd5Enum": ".status_fd_5_enum",
|
|
448
456
|
"SyncStatus": ".sync_status",
|
|
@@ -618,6 +626,7 @@ __all__ = [
|
|
|
618
626
|
"OfferStatus",
|
|
619
627
|
"OfferStatusEnum",
|
|
620
628
|
"Office",
|
|
629
|
+
"OperatorEnum",
|
|
621
630
|
"OverallRecommendationEnum",
|
|
622
631
|
"PaginatedAccountDetailsAndActionsList",
|
|
623
632
|
"PaginatedActivityList",
|
|
@@ -694,6 +703,9 @@ __all__ = [
|
|
|
694
703
|
"ScreeningQuestionOptionsItem",
|
|
695
704
|
"ScreeningQuestionType",
|
|
696
705
|
"ScreeningQuestionTypeEnum",
|
|
706
|
+
"SelectiveSyncCondition",
|
|
707
|
+
"SelectiveSyncConditionList",
|
|
708
|
+
"SelectiveSyncConditionOperator",
|
|
697
709
|
"SelectiveSyncConfigurationsUsageEnum",
|
|
698
710
|
"StatusFd5Enum",
|
|
699
711
|
"SyncStatus",
|
|
@@ -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
|
|
@@ -77,6 +77,7 @@ if typing.TYPE_CHECKING:
|
|
|
77
77
|
ModelPermissionDeserializerRequest,
|
|
78
78
|
MultipartFormFieldRequest,
|
|
79
79
|
MultipartFormFieldRequestEncoding,
|
|
80
|
+
OperatorEnum,
|
|
80
81
|
PaginatedAccountDetailsAndActionsList,
|
|
81
82
|
PaginatedAuditLogEventList,
|
|
82
83
|
PaginatedCalendarList,
|
|
@@ -108,6 +109,9 @@ if typing.TYPE_CHECKING:
|
|
|
108
109
|
RoleEnum,
|
|
109
110
|
RolesEnum,
|
|
110
111
|
RsvpEnum,
|
|
112
|
+
SelectiveSyncCondition,
|
|
113
|
+
SelectiveSyncConditionList,
|
|
114
|
+
SelectiveSyncConditionOperator,
|
|
111
115
|
SelectiveSyncConfigurationsUsageEnum,
|
|
112
116
|
Series,
|
|
113
117
|
SeriesFieldMappings,
|
|
@@ -153,6 +157,7 @@ if typing.TYPE_CHECKING:
|
|
|
153
157
|
passthrough,
|
|
154
158
|
regenerate_key,
|
|
155
159
|
scopes,
|
|
160
|
+
selective_sync,
|
|
156
161
|
series,
|
|
157
162
|
sync_status,
|
|
158
163
|
users,
|
|
@@ -240,6 +245,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
240
245
|
"ModelPermissionDeserializerRequest": ".types",
|
|
241
246
|
"MultipartFormFieldRequest": ".types",
|
|
242
247
|
"MultipartFormFieldRequestEncoding": ".types",
|
|
248
|
+
"OperatorEnum": ".types",
|
|
243
249
|
"PaginatedAccountDetailsAndActionsList": ".types",
|
|
244
250
|
"PaginatedAuditLogEventList": ".types",
|
|
245
251
|
"PaginatedCalendarList": ".types",
|
|
@@ -271,6 +277,9 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
271
277
|
"RoleEnum": ".types",
|
|
272
278
|
"RolesEnum": ".types",
|
|
273
279
|
"RsvpEnum": ".types",
|
|
280
|
+
"SelectiveSyncCondition": ".types",
|
|
281
|
+
"SelectiveSyncConditionList": ".types",
|
|
282
|
+
"SelectiveSyncConditionOperator": ".types",
|
|
274
283
|
"SelectiveSyncConfigurationsUsageEnum": ".types",
|
|
275
284
|
"Series": ".types",
|
|
276
285
|
"SeriesFieldMappings": ".types",
|
|
@@ -303,6 +312,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
303
312
|
"passthrough": ".resources",
|
|
304
313
|
"regenerate_key": ".resources",
|
|
305
314
|
"scopes": ".resources",
|
|
315
|
+
"selective_sync": ".resources",
|
|
306
316
|
"series": ".resources",
|
|
307
317
|
"sync_status": ".resources",
|
|
308
318
|
"users": ".resources",
|
|
@@ -413,6 +423,7 @@ __all__ = [
|
|
|
413
423
|
"ModelPermissionDeserializerRequest",
|
|
414
424
|
"MultipartFormFieldRequest",
|
|
415
425
|
"MultipartFormFieldRequestEncoding",
|
|
426
|
+
"OperatorEnum",
|
|
416
427
|
"PaginatedAccountDetailsAndActionsList",
|
|
417
428
|
"PaginatedAuditLogEventList",
|
|
418
429
|
"PaginatedCalendarList",
|
|
@@ -444,6 +455,9 @@ __all__ = [
|
|
|
444
455
|
"RoleEnum",
|
|
445
456
|
"RolesEnum",
|
|
446
457
|
"RsvpEnum",
|
|
458
|
+
"SelectiveSyncCondition",
|
|
459
|
+
"SelectiveSyncConditionList",
|
|
460
|
+
"SelectiveSyncConditionOperator",
|
|
447
461
|
"SelectiveSyncConfigurationsUsageEnum",
|
|
448
462
|
"Series",
|
|
449
463
|
"SeriesFieldMappings",
|
|
@@ -476,6 +490,7 @@ __all__ = [
|
|
|
476
490
|
"passthrough",
|
|
477
491
|
"regenerate_key",
|
|
478
492
|
"scopes",
|
|
493
|
+
"selective_sync",
|
|
479
494
|
"series",
|
|
480
495
|
"sync_status",
|
|
481
496
|
"users",
|
|
@@ -32,6 +32,7 @@ if typing.TYPE_CHECKING:
|
|
|
32
32
|
from .resources.passthrough.client import PassthroughClient
|
|
33
33
|
from .resources.regenerate_key.client import AsyncRegenerateKeyClient, RegenerateKeyClient
|
|
34
34
|
from .resources.scopes.client import AsyncScopesClient, ScopesClient
|
|
35
|
+
from .resources.selective_sync.client import AsyncSelectiveSyncClient, SelectiveSyncClient
|
|
35
36
|
from .resources.series.client import AsyncSeriesClient, SeriesClient
|
|
36
37
|
from .resources.sync_status.client import AsyncSyncStatusClient, SyncStatusClient
|
|
37
38
|
from .resources.users.client import AsyncUsersClient, UsersClient
|
|
@@ -61,6 +62,7 @@ class CalendarClient:
|
|
|
61
62
|
self._linked_accounts: typing.Optional[LinkedAccountsClient] = None
|
|
62
63
|
self._passthrough: typing.Optional[PassthroughClient] = None
|
|
63
64
|
self._regenerate_key: typing.Optional[RegenerateKeyClient] = None
|
|
65
|
+
self._selective_sync: typing.Optional[SelectiveSyncClient] = None
|
|
64
66
|
self._series: typing.Optional[SeriesClient] = None
|
|
65
67
|
self._sync_status: typing.Optional[SyncStatusClient] = None
|
|
66
68
|
self._force_resync: typing.Optional[ForceResyncClient] = None
|
|
@@ -218,6 +220,14 @@ class CalendarClient:
|
|
|
218
220
|
self._regenerate_key = RegenerateKeyClient(client_wrapper=self._client_wrapper)
|
|
219
221
|
return self._regenerate_key
|
|
220
222
|
|
|
223
|
+
@property
|
|
224
|
+
def selective_sync(self):
|
|
225
|
+
if self._selective_sync is None:
|
|
226
|
+
from .resources.selective_sync.client import SelectiveSyncClient # noqa: E402
|
|
227
|
+
|
|
228
|
+
self._selective_sync = SelectiveSyncClient(client_wrapper=self._client_wrapper)
|
|
229
|
+
return self._selective_sync
|
|
230
|
+
|
|
221
231
|
@property
|
|
222
232
|
def series(self):
|
|
223
233
|
if self._series is None:
|
|
@@ -282,6 +292,7 @@ class AsyncCalendarClient:
|
|
|
282
292
|
None
|
|
283
293
|
)
|
|
284
294
|
self._regenerate_key: typing.Optional[AsyncRegenerateKeyClient] = None
|
|
295
|
+
self._selective_sync: typing.Optional[AsyncSelectiveSyncClient] = None
|
|
285
296
|
self._series: typing.Optional[AsyncSeriesClient] = None
|
|
286
297
|
self._sync_status: typing.Optional[AsyncSyncStatusClient] = None
|
|
287
298
|
self._force_resync: typing.Optional[AsyncForceResyncClient] = None
|
|
@@ -439,6 +450,14 @@ class AsyncCalendarClient:
|
|
|
439
450
|
self._regenerate_key = AsyncRegenerateKeyClient(client_wrapper=self._client_wrapper)
|
|
440
451
|
return self._regenerate_key
|
|
441
452
|
|
|
453
|
+
@property
|
|
454
|
+
def selective_sync(self):
|
|
455
|
+
if self._selective_sync is None:
|
|
456
|
+
from .resources.selective_sync.client import AsyncSelectiveSyncClient # noqa: E402
|
|
457
|
+
|
|
458
|
+
self._selective_sync = AsyncSelectiveSyncClient(client_wrapper=self._client_wrapper)
|
|
459
|
+
return self._selective_sync
|
|
460
|
+
|
|
442
461
|
@property
|
|
443
462
|
def series(self):
|
|
444
463
|
if self._series is None:
|
|
@@ -25,6 +25,7 @@ if typing.TYPE_CHECKING:
|
|
|
25
25
|
passthrough,
|
|
26
26
|
regenerate_key,
|
|
27
27
|
scopes,
|
|
28
|
+
selective_sync,
|
|
28
29
|
series,
|
|
29
30
|
sync_status,
|
|
30
31
|
users,
|
|
@@ -71,6 +72,7 @@ _dynamic_imports: typing.Dict[str, str] = {
|
|
|
71
72
|
"passthrough": ".passthrough",
|
|
72
73
|
"regenerate_key": ".regenerate_key",
|
|
73
74
|
"scopes": ".scopes",
|
|
75
|
+
"selective_sync": ".selective_sync",
|
|
74
76
|
"series": ".series",
|
|
75
77
|
"sync_status": ".sync_status",
|
|
76
78
|
"users": ".users",
|
|
@@ -129,6 +131,7 @@ __all__ = [
|
|
|
129
131
|
"passthrough",
|
|
130
132
|
"regenerate_key",
|
|
131
133
|
"scopes",
|
|
134
|
+
"selective_sync",
|
|
132
135
|
"series",
|
|
133
136
|
"sync_status",
|
|
134
137
|
"users",
|