diff --git a/README.md b/README.md index 73bd2a65..0b26c6f5 100644 --- a/README.md +++ b/README.md @@ -44,17 +44,17 @@ Instantiate and use the client with the following: ```python from merge import Merge -from merge.resources.ats import ActivityRequest +from merge.resources.chat import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.activities.create( - is_debug_mode=True, - run_async=True, - model=ActivityRequest(), - remote_user_id="remote_user_id", +client.chat.async_passthrough.create( + request=DataPassthroughRequest( + method=MethodEnum.GET, + path="/scooters", + ), ) ``` @@ -89,7 +89,7 @@ The SDK also exports an `async` client so that you can make non-blocking calls t import asyncio from merge import AsyncMerge -from merge.resources.ats import ActivityRequest +from merge.resources.chat import DataPassthroughRequest, MethodEnum client = AsyncMerge( account_token="YOUR_ACCOUNT_TOKEN", @@ -98,11 +98,11 @@ client = AsyncMerge( async def main() -> None: - await client.ats.activities.create( - is_debug_mode=True, - run_async=True, - model=ActivityRequest(), - remote_user_id="remote_user_id", + await client.chat.async_passthrough.create( + request=DataPassthroughRequest( + method=MethodEnum.GET, + path="/scooters", + ), ) @@ -118,7 +118,7 @@ will be thrown. from merge.core.api_error import ApiError try: - client.ats.activities.create(...) + client.chat.async_passthrough.create(...) except ApiError as e: print(e.status_code) print(e.body) @@ -137,7 +137,7 @@ from merge import Merge client = Merge( ..., ) -response = client.ats.activities.with_raw_response.create(...) +response = client.chat.async_passthrough.with_raw_response.create(...) print(response.headers) # access the response headers print(response.data) # access the underlying object ``` @@ -157,7 +157,7 @@ A request is deemed retryable when any of the following HTTP status codes is ret Use the `max_retries` request option to configure this behavior. ```python -client.ats.activities.create(..., request_options={ +client.chat.async_passthrough.create(..., request_options={ "max_retries": 1 }) ``` @@ -177,7 +177,7 @@ client = Merge( # Override timeout for a specific method -client.ats.activities.create(..., request_options={ +client.chat.async_passthrough.create(..., request_options={ "timeout_in_seconds": 1 }) ``` @@ -263,3 +263,4 @@ while response.next is not None: + diff --git a/pyproject.toml b/pyproject.toml index 62139c69..ad028ac0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ name = "MergePythonClient" [tool.poetry] name = "MergePythonClient" -version = "2.6.2" +version = "2.6.3" description = "" readme = "README.md" authors = [] diff --git a/reference.md b/reference.md index 72c3f6b5..89b537fa 100644 --- a/reference.md +++ b/reference.md @@ -1,6 +1,6 @@ # Reference -## Ats AccountDetails -
client.ats.account_details.retrieve() +## Chat AccountDetails +
client.chat.account_details.retrieve()
@@ -33,7 +33,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.account_details.retrieve() +client.chat.account_details.retrieve() ```
@@ -61,8 +61,8 @@ client.ats.account_details.retrieve()
-## Ats AccountToken -
client.ats.account_token.retrieve(...) +## Chat AccountToken +
client.chat.account_token.retrieve(...)
@@ -95,7 +95,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.account_token.retrieve( +client.chat.account_token.retrieve( public_token="public_token", ) @@ -133,8 +133,8 @@ client.ats.account_token.retrieve(
-## Ats Activities -
client.ats.activities.list(...) +## Chat AsyncPassthrough +
client.chat.async_passthrough.create(...)
@@ -146,7 +146,7 @@ client.ats.account_token.retrieve(
-Returns a list of `Activity` objects. +Asynchronously pull data from an endpoint not currently supported by Merge.
@@ -161,40 +161,18 @@ Returns a list of `Activity` objects.
```python -import datetime - from merge import Merge -from merge.resources.ats.resources.activities import ( - ActivitiesListRequestRemoteFields, - ActivitiesListRequestShowEnumOrigins, -) +from merge.resources.chat import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.activities.list( - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", +client.chat.async_passthrough.create( + request=DataPassthroughRequest( + method=MethodEnum.GET, + path="/scooters", ), - page_size=1, - remote_fields=ActivitiesListRequestRemoteFields.ACTIVITY_TYPE, - remote_id="remote_id", - show_enum_origins=ActivitiesListRequestShowEnumOrigins.ACTIVITY_TYPE, - user_id="user_id", ) ``` @@ -211,111 +189,7 @@ client.ats.activities.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. - -
-
- -
-
- -**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. - -
-
- -
-
- -**cursor:** `typing.Optional[str]` — The pagination cursor value. - -
-
- -
-
- -**expand:** `typing.Optional[typing.Literal["user"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. - -
-
- -
-
- -**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
- -
-
- -**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - -
-
- -
-
- -**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
- -
-
- -**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. - -
-
- -
-
- -**page_size:** `typing.Optional[int]` — Number of results to return per page. - -
-
- -
-
- -**remote_fields:** `typing.Optional[ActivitiesListRequestRemoteFields]` — Deprecated. Use show_enum_origins. - -
-
- -
-
- -**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. - -
-
- -
-
- -**show_enum_origins:** `typing.Optional[ActivitiesListRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) - -
-
- -
-
- -**user_id:** `typing.Optional[str]` — If provided, will only return activities done by this user. +**request:** `DataPassthroughRequest`
@@ -335,7 +209,7 @@ client.ats.activities.list(
-
client.ats.activities.create(...) +
client.chat.async_passthrough.retrieve(...)
@@ -347,7 +221,7 @@ client.ats.activities.list(
-Creates an `Activity` object with the given values. +Retrieves data from earlier async-passthrough POST request
@@ -363,17 +237,13 @@ Creates an `Activity` object with the given values. ```python from merge import Merge -from merge.resources.ats import ActivityRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.activities.create( - is_debug_mode=True, - run_async=True, - model=ActivityRequest(), - remote_user_id="remote_user_id", +client.chat.async_passthrough.retrieve( + async_passthrough_receipt_id="async_passthrough_receipt_id", ) ``` @@ -390,31 +260,7 @@ client.ats.activities.create(
-**model:** `ActivityRequest` - -
-
- -
-
- -**remote_user_id:** `str` - -
-
- -
-
- -**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. - -
-
- -
-
- -**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously. +**async_passthrough_receipt_id:** `str`
@@ -434,7 +280,8 @@ client.ats.activities.create(
-
client.ats.activities.retrieve(...) +## Chat AuditTrail +
client.chat.audit_trail.list(...)
@@ -446,7 +293,7 @@ client.ats.activities.create(
-Returns an `Activity` object with the given `id`. +Gets a list of audit trail events.
@@ -462,21 +309,18 @@ Returns an `Activity` object with the given `id`. ```python from merge import Merge -from merge.resources.ats.resources.activities import ( - ActivitiesRetrieveRequestRemoteFields, - ActivitiesRetrieveRequestShowEnumOrigins, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.activities.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, - remote_fields=ActivitiesRetrieveRequestRemoteFields.ACTIVITY_TYPE, - show_enum_origins=ActivitiesRetrieveRequestShowEnumOrigins.ACTIVITY_TYPE, +client.chat.audit_trail.list( + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + end_date="end_date", + event_type="event_type", + page_size=1, + start_date="start_date", + user_email="user_email", ) ``` @@ -493,7 +337,7 @@ client.ats.activities.retrieve(
-**id:** `str` +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -501,7 +345,7 @@ client.ats.activities.retrieve(
-**expand:** `typing.Optional[typing.Literal["user"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**end_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred before this time
@@ -509,7 +353,7 @@ client.ats.activities.retrieve(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**event_type:** `typing.Optional[str]` — If included, will only include events with the given event type. Possible values include: `CREATED_REMOTE_PRODUCTION_API_KEY`, `DELETED_REMOTE_PRODUCTION_API_KEY`, `CREATED_TEST_API_KEY`, `DELETED_TEST_API_KEY`, `REGENERATED_PRODUCTION_API_KEY`, `REGENERATED_WEBHOOK_SIGNATURE`, `INVITED_USER`, `TWO_FACTOR_AUTH_ENABLED`, `TWO_FACTOR_AUTH_DISABLED`, `DELETED_LINKED_ACCOUNT`, `DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT`, `CREATED_DESTINATION`, `DELETED_DESTINATION`, `CHANGED_DESTINATION`, `CHANGED_SCOPES`, `CHANGED_PERSONAL_INFORMATION`, `CHANGED_ORGANIZATION_SETTINGS`, `ENABLED_INTEGRATION`, `DISABLED_INTEGRATION`, `ENABLED_CATEGORY`, `DISABLED_CATEGORY`, `CHANGED_PASSWORD`, `RESET_PASSWORD`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `CREATED_INTEGRATION_WIDE_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_FIELD_MAPPING`, `CHANGED_INTEGRATION_WIDE_FIELD_MAPPING`, `CHANGED_LINKED_ACCOUNT_FIELD_MAPPING`, `DELETED_INTEGRATION_WIDE_FIELD_MAPPING`, `DELETED_LINKED_ACCOUNT_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `FORCED_LINKED_ACCOUNT_RESYNC`, `MUTED_ISSUE`, `GENERATED_MAGIC_LINK`, `ENABLED_MERGE_WEBHOOK`, `DISABLED_MERGE_WEBHOOK`, `MERGE_WEBHOOK_TARGET_CHANGED`, `END_USER_CREDENTIALS_ACCESSED`
@@ -517,7 +361,7 @@ client.ats.activities.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100.
@@ -525,7 +369,7 @@ client.ats.activities.retrieve(
-**remote_fields:** `typing.Optional[ActivitiesRetrieveRequestRemoteFields]` — Deprecated. Use show_enum_origins. +**start_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred after this time
@@ -533,7 +377,7 @@ client.ats.activities.retrieve(
-**show_enum_origins:** `typing.Optional[ActivitiesRetrieveRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**user_email:** `typing.Optional[str]` — If provided, this will return events associated with the specified user email. Please note that the email address reflects the user's email at the time of the event, and may not be their current email.
@@ -553,7 +397,8 @@ client.ats.activities.retrieve(
-
client.ats.activities.meta_post_retrieve() +## Chat AvailableActions +
client.chat.available_actions.retrieve()
@@ -565,7 +410,7 @@ client.ats.activities.retrieve(
-Returns metadata for `Activity` POSTs. +Returns a list of models and actions available for an account.
@@ -586,7 +431,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.activities.meta_post_retrieve() +client.chat.available_actions.retrieve() ``` @@ -614,8 +459,8 @@ client.ats.activities.meta_post_retrieve()
-## Ats Applications -
client.ats.applications.list(...) +## Chat Conversations +
client.chat.conversations.list(...)
@@ -627,7 +472,7 @@ client.ats.activities.meta_post_retrieve()
-Returns a list of `Application` objects. +Returns a list of `Conversation` objects.
@@ -645,30 +490,22 @@ Returns a list of `Application` objects. import datetime from merge import Merge -from merge.resources.ats.resources.applications import ( - ApplicationsListRequestExpand, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.applications.list( - candidate_id="candidate_id", +client.chat.conversations.list( created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), created_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - credited_to_id="credited_to_id", - current_stage_id="current_stage_id", cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - expand=ApplicationsListRequestExpand.CANDIDATE, include_deleted_data=True, include_remote_data=True, include_shell_data=True, - job_id="job_id", modified_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -676,9 +513,7 @@ client.ats.applications.list( "2024-01-15 09:30:00+00:00", ), page_size=1, - reject_reason_id="reject_reason_id", remote_id="remote_id", - source="source", ) ``` @@ -695,15 +530,7 @@ client.ats.applications.list(
-**candidate_id:** `typing.Optional[str]` — If provided, will only return applications for this candidate. - -
-
- -
-
- -**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -719,22 +546,6 @@ client.ats.applications.list(
-**credited_to_id:** `typing.Optional[str]` — If provided, will only return applications credited to this user. - -
-
- -
-
- -**current_stage_id:** `typing.Optional[str]` — If provided, will only return applications at this interview stage. - -
-
- -
-
- **cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -743,7 +554,7 @@ client.ats.applications.list(
-**expand:** `typing.Optional[ApplicationsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["members"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -775,14 +586,6 @@ client.ats.applications.list(
-**job_id:** `typing.Optional[str]` — If provided, will only return applications for this job. - -
-
- -
-
- **modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned.
@@ -799,15 +602,7 @@ client.ats.applications.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. - -
-
- -
-
- -**reject_reason_id:** `typing.Optional[str]` — If provided, will only return applications with this reject reason. +**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100.
@@ -823,14 +618,6 @@ client.ats.applications.list(
-**source:** `typing.Optional[str]` — If provided, will only return applications with this source. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -843,7 +630,7 @@ client.ats.applications.list(
-
client.ats.applications.create(...) +
client.chat.conversations.members_list(...)
@@ -855,10 +642,7 @@ client.ats.applications.list(
-Creates an `Application` object with the given values. -For certain integrations, but not all, our API detects duplicate candidates and will associate applications with existing records in the third-party. New candidates are created and automatically linked to the application. - -See our [Help Center article](https://help.merge.dev/en/articles/10012366-updates-to-post-applications-oct-2024) for detailed support per integration. +Returns a list of `Member` objects.
@@ -874,17 +658,22 @@ See our [Help Center article](https://help.merge.dev/en/articles/10012366-update ```python from merge import Merge -from merge.resources.ats import ApplicationRequest +from merge.resources.chat.resources.conversations import ( + ConversationsMembersListRequestExpand, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.applications.create( - is_debug_mode=True, - run_async=True, - model=ApplicationRequest(), - remote_user_id="remote_user_id", +client.chat.conversations.members_list( + conversation_id="conversation_id", + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + expand=ConversationsMembersListRequestExpand.GROUP, + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + page_size=1, ) ``` @@ -901,7 +690,7 @@ client.ats.applications.create(
-**model:** `ApplicationRequest` +**conversation_id:** `str`
@@ -909,7 +698,7 @@ client.ats.applications.create(
-**remote_user_id:** `str` +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -917,7 +706,7 @@ client.ats.applications.create(
-**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. +**expand:** `typing.Optional[ConversationsMembersListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -925,7 +714,31 @@ client.ats.applications.create(
-**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously. +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). + +
+
+ +
+
+ +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+ +
+
+ +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+ +
+
+ +**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100.
@@ -945,7 +758,7 @@ client.ats.applications.create(
-
client.ats.applications.retrieve(...) +
client.chat.conversations.retrieve(...)
@@ -957,7 +770,7 @@ client.ats.applications.create(
-Returns an `Application` object with the given `id`. +Returns a `Conversation` object with the given `id`.
@@ -973,17 +786,13 @@ Returns an `Application` object with the given `id`. ```python from merge import Merge -from merge.resources.ats.resources.applications import ( - ApplicationsRetrieveRequestExpand, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.applications.retrieve( +client.chat.conversations.retrieve( id="id", - expand=ApplicationsRetrieveRequestExpand.CANDIDATE, include_remote_data=True, include_shell_data=True, ) @@ -1010,7 +819,7 @@ client.ats.applications.retrieve(
-**expand:** `typing.Optional[ApplicationsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["members"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -1046,7 +855,8 @@ client.ats.applications.retrieve(
-
client.ats.applications.change_stage_create(...) +## Chat Scopes +
client.chat.scopes.default_scopes_retrieve()
@@ -1058,7 +868,7 @@ client.ats.applications.retrieve(
-Updates the `current_stage` field of an `Application` object +Get the default permissions for Merge Common Models and fields across all Linked Accounts of a given category. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes).
@@ -1079,11 +889,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.applications.change_stage_create( - id="id", - is_debug_mode=True, - run_async=True, -) +client.chat.scopes.default_scopes_retrieve() ``` @@ -1099,43 +905,64 @@ client.ats.applications.change_stage_create(
-**id:** `str` +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+ +
-
-
-**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. -
+
+
client.chat.scopes.linked_account_scopes_retrieve()
-**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously. - -
-
+#### 📝 Description
-**job_interview_stage:** `typing.Optional[str]` — The interview stage to move the application to. - +
+
+ +Get all available permissions for Merge Common Models and fields for a single Linked Account. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes). +
+
+#### 🔌 Usage +
-**remote_user_id:** `typing.Optional[str]` - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.chat.scopes.linked_account_scopes_retrieve() + +``` +
+
+#### ⚙️ Parameters + +
+
+
@@ -1151,7 +978,7 @@ client.ats.applications.change_stage_create(
-
client.ats.applications.meta_post_retrieve(...) +
client.chat.scopes.linked_account_scopes_create(...)
@@ -1163,7 +990,7 @@ client.ats.applications.change_stage_create(
-Returns metadata for `Application` POSTs. +Update permissions for any Common Model or field for a single Linked Account. Any Scopes not set in this POST request will inherit the default Scopes. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes)
@@ -1179,13 +1006,42 @@ Returns metadata for `Application` POSTs. ```python from merge import Merge +from merge.resources.chat import ( + FieldPermissionDeserializerRequest, + IndividualCommonModelScopeDeserializerRequest, + ModelPermissionDeserializerRequest, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.applications.meta_post_retrieve( - application_remote_template_id="application_remote_template_id", +client.chat.scopes.linked_account_scopes_create( + common_models=[ + IndividualCommonModelScopeDeserializerRequest( + model_name="Employee", + model_permissions={ + "READ": ModelPermissionDeserializerRequest( + is_enabled=True, + ), + "WRITE": ModelPermissionDeserializerRequest( + is_enabled=False, + ), + }, + field_permissions=FieldPermissionDeserializerRequest( + enabled_fields=["avatar", "home_location"], + disabled_fields=["work_location"], + ), + ), + IndividualCommonModelScopeDeserializerRequest( + model_name="Benefit", + model_permissions={ + "WRITE": ModelPermissionDeserializerRequest( + is_enabled=False, + ) + }, + ), + ], ) ``` @@ -1202,7 +1058,7 @@ client.ats.applications.meta_post_retrieve(
-**application_remote_template_id:** `typing.Optional[str]` — The template ID associated with the nested application in the request. +**common_models:** `typing.Sequence[IndividualCommonModelScopeDeserializerRequest]` — The common models you want to update the scopes for
@@ -1222,8 +1078,8 @@ client.ats.applications.meta_post_retrieve(
-## Ats AsyncPassthrough -
client.ats.async_passthrough.create(...) +## Chat DeleteAccount +
client.chat.delete_account.delete()
@@ -1235,7 +1091,7 @@ client.ats.applications.meta_post_retrieve(
-Asynchronously pull data from an endpoint not currently supported by Merge. +Delete a linked account.
@@ -1251,18 +1107,12 @@ Asynchronously pull data from an endpoint not currently supported by Merge. ```python from merge import Merge -from merge.resources.ats import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.async_passthrough.create( - request=DataPassthroughRequest( - method=MethodEnum.GET, - path="/scooters", - ), -) +client.chat.delete_account.delete() ``` @@ -1278,14 +1128,6 @@ client.ats.async_passthrough.create(
-**request:** `DataPassthroughRequest` - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -1298,7 +1140,8 @@ client.ats.async_passthrough.create(
-
client.ats.async_passthrough.retrieve(...) +## Chat FieldMapping +
client.chat.field_mapping.field_mappings_retrieve(...)
@@ -1310,7 +1153,7 @@ client.ats.async_passthrough.create(
-Retrieves data from earlier async-passthrough POST request +Get all Field Mappings for this Linked Account. Field Mappings are mappings between third-party Remote Fields and user defined Merge fields. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/).
@@ -1331,8 +1174,8 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.async_passthrough.retrieve( - async_passthrough_receipt_id="async_passthrough_receipt_id", +client.chat.field_mapping.field_mappings_retrieve( + exclude_remote_field_metadata=True, ) ``` @@ -1349,7 +1192,7 @@ client.ats.async_passthrough.retrieve(
-**async_passthrough_receipt_id:** `str` +**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations.
@@ -1369,8 +1212,7 @@ client.ats.async_passthrough.retrieve(
-## Ats Attachments -
client.ats.attachments.list(...) +
client.chat.field_mapping.field_mappings_create(...)
@@ -1382,7 +1224,7 @@ client.ats.async_passthrough.retrieve(
-Returns a list of `Attachment` objects. +Create new Field Mappings that will be available after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start.
@@ -1397,34 +1239,20 @@ Returns a list of `Attachment` objects.
```python -import datetime - from merge import Merge client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.attachments.list( - candidate_id="candidate_id", - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - page_size=1, - remote_id="remote_id", +client.chat.field_mapping.field_mappings_create( + exclude_remote_field_metadata=True, + target_field_name="example_target_field_name", + target_field_description="this is a example description of the target field", + remote_field_traversal_path=["example_remote_field"], + remote_method="GET", + remote_url_path="/example-url-path", + common_model_name="ExampleCommonModel", ) ``` @@ -1441,7 +1269,7 @@ client.ats.attachments.list(
-**candidate_id:** `typing.Optional[str]` — If provided, will only return attachments for this candidate. +**target_field_name:** `str` — The name of the target field you want this remote field to map to.
@@ -1449,7 +1277,7 @@ client.ats.attachments.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**target_field_description:** `str` — The description of the target field you want this remote field to map to.
@@ -1457,7 +1285,7 @@ client.ats.attachments.list(
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**remote_field_traversal_path:** `typing.Sequence[typing.Optional[typing.Any]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint.
@@ -1465,7 +1293,7 @@ client.ats.attachments.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**remote_method:** `str` — The method of the remote endpoint where the remote field is coming from.
@@ -1473,7 +1301,7 @@ client.ats.attachments.list(
-**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**remote_url_path:** `str` — The path of the remote endpoint where the remote field is coming from.
@@ -1481,7 +1309,7 @@ client.ats.attachments.list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**common_model_name:** `str` — The name of the Common Model that the remote field corresponds to in a given category.
@@ -1489,7 +1317,7 @@ client.ats.attachments.list(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations.
@@ -1497,7 +1325,7 @@ client.ats.attachments.list(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**jmes_path:** `typing.Optional[str]` — JMES path to specify json query expression to be used on field mapping.
@@ -1505,47 +1333,70 @@ client.ats.attachments.list(
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. -
+
+
client.chat.field_mapping.field_mappings_destroy(...)
-**page_size:** `typing.Optional[int]` — Number of results to return per page. - -
-
+#### 📝 Description
-**remote_fields:** `typing.Optional[typing.Literal["attachment_type"]]` — Deprecated. Use show_enum_origins. - +
+
+ +Deletes Field Mappings for a Linked Account. All data related to this Field Mapping will be deleted and these changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. +
+
+#### 🔌 Usage +
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.chat.field_mapping.field_mappings_destroy( + field_mapping_id="field_mapping_id", +) + +``` +
+
+#### ⚙️ Parameters +
-**show_enum_origins:** `typing.Optional[typing.Literal["attachment_type"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +
+
+ +**field_mapping_id:** `str`
@@ -1565,7 +1416,7 @@ client.ats.attachments.list(
-
client.ats.attachments.create(...) +
client.chat.field_mapping.field_mappings_partial_update(...)
@@ -1577,7 +1428,7 @@ client.ats.attachments.list(
-Creates an `Attachment` object with the given values. +Create or update existing Field Mappings for a Linked Account. Changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start.
@@ -1593,17 +1444,13 @@ Creates an `Attachment` object with the given values. ```python from merge import Merge -from merge.resources.ats import AttachmentRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.attachments.create( - is_debug_mode=True, - run_async=True, - model=AttachmentRequest(), - remote_user_id="remote_user_id", +client.chat.field_mapping.field_mappings_partial_update( + field_mapping_id="field_mapping_id", ) ``` @@ -1620,7 +1467,7 @@ client.ats.attachments.create(
-**model:** `AttachmentRequest` +**field_mapping_id:** `str`
@@ -1628,7 +1475,7 @@ client.ats.attachments.create(
-**remote_user_id:** `str` +**remote_field_traversal_path:** `typing.Optional[typing.Sequence[typing.Optional[typing.Any]]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint.
@@ -1636,7 +1483,7 @@ client.ats.attachments.create(
-**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. +**remote_method:** `typing.Optional[str]` — The method of the remote endpoint where the remote field is coming from.
@@ -1644,7 +1491,15 @@ client.ats.attachments.create(
-**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously. +**remote_url_path:** `typing.Optional[str]` — The path of the remote endpoint where the remote field is coming from. + +
+
+ +
+
+ +**jmes_path:** `typing.Optional[str]` — JMES path to specify json query expression to be used on field mapping.
@@ -1664,7 +1519,7 @@ client.ats.attachments.create(
-
client.ats.attachments.retrieve(...) +
client.chat.field_mapping.remote_fields_retrieve(...)
@@ -1676,7 +1531,7 @@ client.ats.attachments.create(
-Returns an `Attachment` object with the given `id`. +Get all remote fields for a Linked Account. Remote fields are third-party fields that are accessible after initial sync if remote_data is enabled. You can use remote fields to override existing Merge fields or map a new Merge field. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/).
@@ -1697,10 +1552,9 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.attachments.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, +client.chat.field_mapping.remote_fields_retrieve( + common_models="common_models", + include_example_values="include_example_values", ) ``` @@ -1717,7 +1571,7 @@ client.ats.attachments.retrieve(
-**id:** `str` +**common_models:** `typing.Optional[str]` — A comma seperated list of Common Model names. If included, will only return Remote Fields for those Common Models.
@@ -1725,7 +1579,7 @@ client.ats.attachments.retrieve(
-**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**include_example_values:** `typing.Optional[str]` — If true, will include example values, where available, for remote fields in the 3rd party platform. These examples come from active data from your customers.
@@ -1733,35 +1587,64 @@ client.ats.attachments.retrieve(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+ +
-
-
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). -
+
+
client.chat.field_mapping.target_fields_retrieve()
-**remote_fields:** `typing.Optional[typing.Literal["attachment_type"]]` — Deprecated. Use show_enum_origins. - +#### 📝 Description + +
+
+ +
+
+ +Get all organization-wide Target Fields, this will not include any Linked Account specific Target Fields. Organization-wide Target Fields are additional fields appended to the Merge Common Model for all Linked Accounts in a category. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/target-fields/). +
+
+#### 🔌 Usage +
-**show_enum_origins:** `typing.Optional[typing.Literal["attachment_type"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.chat.field_mapping.target_fields_retrieve() + +``` +
+
+#### ⚙️ Parameters + +
+
+
@@ -1777,7 +1660,8 @@ client.ats.attachments.retrieve(
-
client.ats.attachments.meta_post_retrieve() +## Chat GenerateKey +
client.chat.generate_key.create(...)
@@ -1789,7 +1673,7 @@ client.ats.attachments.retrieve(
-Returns metadata for `Attachment` POSTs. +Create a remote key.
@@ -1810,7 +1694,9 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.attachments.meta_post_retrieve() +client.chat.generate_key.create( + name="Remote Deployment Key 1", +) ``` @@ -1826,6 +1712,14 @@ client.ats.attachments.meta_post_retrieve()
+**name:** `str` — The name of the remote key + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -1838,8 +1732,8 @@ client.ats.attachments.meta_post_retrieve()
-## Ats AuditTrail -
client.ats.audit_trail.list(...) +## Chat Groups +
client.chat.groups.list(...)
@@ -1851,7 +1745,7 @@ client.ats.attachments.meta_post_retrieve()
-Gets a list of audit trail events. +Returns a list of `Group` objects.
@@ -1866,19 +1760,33 @@ Gets a list of audit trail events.
```python +import datetime + from merge import Merge client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.audit_trail.list( +client.chat.groups.list( + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - end_date="end_date", - event_type="event_type", + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), page_size=1, - start_date="start_date", - user_email="user_email", + remote_id="remote_id", ) ``` @@ -1895,7 +1803,7 @@ client.ats.audit_trail.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -1903,7 +1811,7 @@ client.ats.audit_trail.list(
-**end_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred before this time +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -1911,7 +1819,7 @@ client.ats.audit_trail.list(
-**event_type:** `typing.Optional[str]` — If included, will only include events with the given event type. Possible values include: `CREATED_REMOTE_PRODUCTION_API_KEY`, `DELETED_REMOTE_PRODUCTION_API_KEY`, `CREATED_TEST_API_KEY`, `DELETED_TEST_API_KEY`, `REGENERATED_PRODUCTION_API_KEY`, `REGENERATED_WEBHOOK_SIGNATURE`, `INVITED_USER`, `TWO_FACTOR_AUTH_ENABLED`, `TWO_FACTOR_AUTH_DISABLED`, `DELETED_LINKED_ACCOUNT`, `DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT`, `CREATED_DESTINATION`, `DELETED_DESTINATION`, `CHANGED_DESTINATION`, `CHANGED_SCOPES`, `CHANGED_PERSONAL_INFORMATION`, `CHANGED_ORGANIZATION_SETTINGS`, `ENABLED_INTEGRATION`, `DISABLED_INTEGRATION`, `ENABLED_CATEGORY`, `DISABLED_CATEGORY`, `CHANGED_PASSWORD`, `RESET_PASSWORD`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `CREATED_INTEGRATION_WIDE_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_FIELD_MAPPING`, `CHANGED_INTEGRATION_WIDE_FIELD_MAPPING`, `CHANGED_LINKED_ACCOUNT_FIELD_MAPPING`, `DELETED_INTEGRATION_WIDE_FIELD_MAPPING`, `DELETED_LINKED_ACCOUNT_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `FORCED_LINKED_ACCOUNT_RESYNC`, `MUTED_ISSUE`, `GENERATED_MAGIC_LINK`, `ENABLED_MERGE_WEBHOOK`, `DISABLED_MERGE_WEBHOOK`, `MERGE_WEBHOOK_TARGET_CHANGED`, `END_USER_CREDENTIALS_ACCESSED` +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -1919,7 +1827,7 @@ client.ats.audit_trail.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. +**expand:** `typing.Optional[typing.Literal["users"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -1927,7 +1835,7 @@ client.ats.audit_trail.list(
-**start_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred after this time +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -1935,7 +1843,7 @@ client.ats.audit_trail.list(
-**user_email:** `typing.Optional[str]` — If provided, this will return events associated with the specified user email. Please note that the email address reflects the user's email at the time of the event, and may not be their current email. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -1943,32 +1851,71 @@ client.ats.audit_trail.list(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
-
-
+
+
+**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. +
-
-## Ats AvailableActions -
client.ats.available_actions.retrieve()
-#### 📝 Description +**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. + +
+
+**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. + +
+
+
-Returns a list of models and actions available for an account. +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+ + + + + + +
+ +
client.chat.groups.retrieve(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Returns a `Group` object with the given `id`.
@@ -1989,7 +1936,11 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.available_actions.retrieve() +client.chat.groups.retrieve( + id="id", + include_remote_data=True, + include_shell_data=True, +) ```
@@ -2005,6 +1956,38 @@ client.ats.available_actions.retrieve()
+**id:** `str` + +
+
+ +
+
+ +**expand:** `typing.Optional[typing.Literal["users"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. + +
+
+ +
+
+ +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+ +
+
+ +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -2017,8 +2000,8 @@ client.ats.available_actions.retrieve()
-## Ats Candidates -
client.ats.candidates.list(...) +## Chat Issues +
client.chat.issues.list(...)
@@ -2030,7 +2013,7 @@ client.ats.available_actions.retrieve()
-Returns a list of `Candidate` objects. +Gets all issues for Organization.
@@ -2048,36 +2031,35 @@ Returns a list of `Candidate` objects. import datetime from merge import Merge -from merge.resources.ats.resources.candidates import CandidatesListRequestExpand +from merge.resources.chat.resources.issues import IssuesListRequestStatus client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.candidates.list( - created_after=datetime.datetime.fromisoformat( +client.chat.issues.list( + account_token="account_token", + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + end_date="end_date", + end_user_organization_name="end_user_organization_name", + first_incident_time_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - created_before=datetime.datetime.fromisoformat( + first_incident_time_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - email_addresses="email_addresses", - expand=CandidatesListRequestExpand.APPLICATIONS, - first_name="first_name", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - last_name="last_name", - modified_after=datetime.datetime.fromisoformat( + include_muted="include_muted", + integration_name="integration_name", + last_incident_time_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - modified_before=datetime.datetime.fromisoformat( + last_incident_time_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), + linked_account_id="linked_account_id", page_size=1, - remote_id="remote_id", - tags="tags", + start_date="start_date", + status=IssuesListRequestStatus.ONGOING, ) ``` @@ -2094,7 +2076,7 @@ client.ats.candidates.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**account_token:** `typing.Optional[str]`
@@ -2102,7 +2084,7 @@ client.ats.candidates.list(
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -2110,7 +2092,7 @@ client.ats.candidates.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**end_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred before this time
@@ -2118,7 +2100,7 @@ client.ats.candidates.list(
-**email_addresses:** `typing.Optional[str]` — If provided, will only return candidates with these email addresses; multiple addresses can be separated by commas. +**end_user_organization_name:** `typing.Optional[str]`
@@ -2126,7 +2108,7 @@ client.ats.candidates.list(
-**expand:** `typing.Optional[CandidatesListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**first_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was after this datetime.
@@ -2134,7 +2116,7 @@ client.ats.candidates.list(
-**first_name:** `typing.Optional[str]` — If provided, will only return candidates with this first name. +**first_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was before this datetime.
@@ -2142,7 +2124,7 @@ client.ats.candidates.list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**include_muted:** `typing.Optional[str]` — If true, will include muted issues
@@ -2150,7 +2132,7 @@ client.ats.candidates.list(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**integration_name:** `typing.Optional[str]`
@@ -2158,7 +2140,7 @@ client.ats.candidates.list(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**last_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was after this datetime.
@@ -2166,7 +2148,7 @@ client.ats.candidates.list(
-**last_name:** `typing.Optional[str]` — If provided, will only return candidates with this last name. +**last_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was before this datetime.
@@ -2174,7 +2156,7 @@ client.ats.candidates.list(
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. +**linked_account_id:** `typing.Optional[str]` — If provided, will only include issues pertaining to the linked account passed in.
@@ -2182,7 +2164,7 @@ client.ats.candidates.list(
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. +**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100.
@@ -2190,7 +2172,7 @@ client.ats.candidates.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. +**start_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred after this time
@@ -2198,15 +2180,12 @@ client.ats.candidates.list(
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. - -
-
+**status:** `typing.Optional[IssuesListRequestStatus]` -
-
+Status of the issue. Options: ('ONGOING', 'RESOLVED') -**tags:** `typing.Optional[str]` — If provided, will only return candidates with these tags; multiple tags can be separated by commas. +* `ONGOING` - ONGOING +* `RESOLVED` - RESOLVED
@@ -2226,7 +2205,7 @@ client.ats.candidates.list(
-
client.ats.candidates.create(...) +
client.chat.issues.retrieve(...)
@@ -2238,7 +2217,7 @@ client.ats.candidates.list(
-Creates a `Candidate` object with the given values. +Get a specific issue.
@@ -2254,17 +2233,13 @@ Creates a `Candidate` object with the given values. ```python from merge import Merge -from merge.resources.ats import CandidateRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.candidates.create( - is_debug_mode=True, - run_async=True, - model=CandidateRequest(), - remote_user_id="remote_user_id", +client.chat.issues.retrieve( + id="id", ) ``` @@ -2281,31 +2256,7 @@ client.ats.candidates.create(
-**model:** `CandidateRequest` - -
-
- -
-
- -**remote_user_id:** `str` - -
-
- -
-
- -**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. - -
-
- -
-
- -**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously. +**id:** `str`
@@ -2325,7 +2276,8 @@ client.ats.candidates.create(
-
client.ats.candidates.retrieve(...) +## Chat LinkToken +
client.chat.link_token.create(...)
@@ -2337,7 +2289,7 @@ client.ats.candidates.create(
-Returns a `Candidate` object with the given `id`. +Creates a link token to be used when linking a new end user. The link token expires after single use.
@@ -2353,19 +2305,17 @@ Returns a `Candidate` object with the given `id`. ```python from merge import Merge -from merge.resources.ats.resources.candidates import ( - CandidatesRetrieveRequestExpand, -) +from merge.resources.chat import CategoriesEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.candidates.retrieve( - id="id", - expand=CandidatesRetrieveRequestExpand.APPLICATIONS, - include_remote_data=True, - include_shell_data=True, +client.chat.link_token.create( + end_user_email_address="example@gmail.com", + end_user_organization_name="Test Organization", + end_user_origin_id="12345", + categories=[CategoriesEnum.HRIS, CategoriesEnum.ATS], ) ``` @@ -2382,7 +2332,7 @@ client.ats.candidates.retrieve(
-**id:** `str` +**end_user_email_address:** `str` — Your end user's email address. This is purely for identification purposes - setting this value will not cause any emails to be sent.
@@ -2390,7 +2340,7 @@ client.ats.candidates.retrieve(
-**expand:** `typing.Optional[CandidatesRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**end_user_organization_name:** `str` — Your end user's organization.
@@ -2398,7 +2348,7 @@ client.ats.candidates.retrieve(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**end_user_origin_id:** `str` — This unique identifier typically represents the ID for your end user in your product's database. This value must be distinct from other Linked Accounts' unique identifiers.
@@ -2406,7 +2356,7 @@ client.ats.candidates.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**categories:** `typing.Sequence[CategoriesEnum]` — The integration categories to show in Merge Link.
@@ -2414,75 +2364,67 @@ client.ats.candidates.retrieve(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**integration:** `typing.Optional[str]` — The slug of a specific pre-selected integration for this linking flow token. For examples of slugs, see https://docs.merge.dev/guides/merge-link/single-integration/.
- -
+
+
+**link_expiry_mins:** `typing.Optional[int]` — An integer number of minutes between [30, 720 or 10080 if for a Magic Link URL] for how long this token is valid. Defaults to 30. +
-
-
client.ats.candidates.partial_update(...)
-#### 📝 Description - -
-
+**should_create_magic_link_url:** `typing.Optional[bool]` — Whether to generate a Magic Link URL. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. + +
+
-Updates a `Candidate` object with the given `id`. -
-
+**hide_admin_magic_link:** `typing.Optional[bool]` — Whether to generate a Magic Link URL on the Admin Needed screen during the linking flow. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. +
-#### 🔌 Usage -
+**common_models:** `typing.Optional[typing.Sequence[CommonModelScopesBodyRequest]]` — An array of objects to specify the models and fields that will be disabled for a given Linked Account. Each object uses model_id, enabled_actions, and disabled_fields to specify the model, method, and fields that are scoped for a given Linked Account. + +
+
+
-```python -from merge import Merge -from merge.resources.ats import PatchedCandidateRequest - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.candidates.partial_update( - id="id", - is_debug_mode=True, - run_async=True, - model=PatchedCandidateRequest(), - remote_user_id="remote_user_id", -) - -``` -
-
+**category_common_model_scopes:** `typing.Optional[ + typing.Dict[ + str, + typing.Optional[ + typing.Sequence[IndividualCommonModelScopeDeserializerRequest] + ], + ] +]` — When creating a Link Token, you can set permissions for Common Models that will apply to the account that is going to be linked. Any model or field not specified in link token payload will default to existing settings. + -#### ⚙️ Parameters -
-
-
+**language:** `typing.Optional[EndUserDetailsRequestLanguage]` -**id:** `str` +The following subset of IETF language tags can be used to configure localization. + +* `en` - en +* `de` - de
@@ -2490,7 +2432,7 @@ client.ats.candidates.partial_update(
-**model:** `PatchedCandidateRequest` +**are_syncs_disabled:** `typing.Optional[bool]` — The boolean that indicates whether initial, periodic, and force syncs will be disabled.
@@ -2498,7 +2440,7 @@ client.ats.candidates.partial_update(
-**remote_user_id:** `str` +**integration_specific_config:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — A JSON object containing integration-specific configuration options.
@@ -2506,15 +2448,11 @@ client.ats.candidates.partial_update(
-**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. - -
-
+**completed_account_initial_screen:** `typing.Optional[EndUserDetailsRequestCompletedAccountInitialScreen]` -
-
+When creating a Link token, you can specifiy the initial screen of Linking Flow for a completed Linked Account. -**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously. +* `SELECTIVE_SYNC` - SELECTIVE_SYNC
@@ -2534,7 +2472,8 @@ client.ats.candidates.partial_update(
-
client.ats.candidates.ignore_create(...) +## Chat LinkedAccounts +
client.chat.linked_accounts.list(...)
@@ -2546,7 +2485,7 @@ client.ats.candidates.partial_update(
-Ignores a specific row based on the `model_id` in the url. These records will have their properties set to null, and will not be updated in future syncs. The "reason" and "message" fields in the request body will be stored for audit purposes. +List linked accounts for your organization.
@@ -2562,15 +2501,28 @@ Ignores a specific row based on the `model_id` in the url. These records will ha ```python from merge import Merge -from merge.resources.ats import ReasonEnum +from merge.resources.chat.resources.linked_accounts import ( + LinkedAccountsListRequestCategory, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.candidates.ignore_create( - model_id="model_id", - reason=ReasonEnum.GENERAL_CUSTOMER_REQUEST, +client.chat.linked_accounts.list( + category=LinkedAccountsListRequestCategory.ACCOUNTING, + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + end_user_email_address="end_user_email_address", + end_user_organization_name="end_user_organization_name", + end_user_origin_id="end_user_origin_id", + end_user_origin_ids="end_user_origin_ids", + id="id", + ids="ids", + include_duplicates=True, + integration_name="integration_name", + is_test_account="is_test_account", + page_size=1, + status="status", ) ``` @@ -2587,7 +2539,19 @@ client.ats.candidates.ignore_create(
-**model_id:** `str` +**category:** `typing.Optional[LinkedAccountsListRequestCategory]` + +Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mktg`, `ticketing` + +* `hris` - hris +* `ats` - ats +* `accounting` - accounting +* `ticketing` - ticketing +* `crm` - crm +* `mktg` - mktg +* `filestorage` - filestorage +* `knowledgebase` - knowledgebase +* `chat` - chat
@@ -2595,7 +2559,7 @@ client.ats.candidates.ignore_create(
-**reason:** `IgnoreCommonModelRequestReason` +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -2603,7 +2567,7 @@ client.ats.candidates.ignore_create(
-**message:** `typing.Optional[str]` +**end_user_email_address:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given email address.
@@ -2611,70 +2575,79 @@ client.ats.candidates.ignore_create(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**end_user_organization_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given organization name.
- -
+
+
+**end_user_origin_id:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given origin ID. +
-
-
client.ats.candidates.meta_patch_retrieve(...)
-#### 📝 Description +**end_user_origin_ids:** `typing.Optional[str]` — Comma-separated list of EndUser origin IDs, making it possible to specify multiple EndUsers at once. + +
+
+**id:** `typing.Optional[str]` + +
+
+
-Returns metadata for `Candidate` PATCHs. -
-
+**ids:** `typing.Optional[str]` — Comma-separated list of LinkedAccount IDs, making it possible to specify multiple LinkedAccounts at once. + -#### 🔌 Usage -
+**include_duplicates:** `typing.Optional[bool]` — If `true`, will include complete production duplicates of the account specified by the `id` query parameter in the response. `id` must be for a complete production linked account. + +
+
+
-```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.candidates.meta_patch_retrieve( - id="id", -) - -``` +**integration_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given integration name. +
+ +
+
+ +**is_test_account:** `typing.Optional[str]` — If included, will only include test linked accounts. If not included, will only include non-test linked accounts. +
-#### ⚙️ Parameters -
+**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. + +
+
+
-**id:** `str` +**status:** `typing.Optional[str]` — Filter by status. Options: `COMPLETE`, `IDLE`, `INCOMPLETE`, `RELINK_NEEDED`
@@ -2694,7 +2667,8 @@ client.ats.candidates.meta_patch_retrieve(
-
client.ats.candidates.meta_post_retrieve() +## Chat Messages +
client.chat.messages.list(...)
@@ -2706,7 +2680,7 @@ client.ats.candidates.meta_patch_retrieve(
-Returns metadata for `Candidate` POSTs. +Returns a list of `Message` objects.
@@ -2721,13 +2695,38 @@ Returns metadata for `Candidate` POSTs.
```python +import datetime + from merge import Merge +from merge.resources.chat.resources.messages import MessagesListRequestOrderBy client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.candidates.meta_post_retrieve() +client.chat.messages.list( + conversation_id="conversation_id", + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + order_by=MessagesListRequestOrderBy.REMOTE_CREATED_AT_DESCENDING, + page_size=1, + remote_id="remote_id", + root_message="root_message", +) ```
@@ -2743,126 +2742,107 @@ client.ats.candidates.meta_post_retrieve()
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**conversation_id:** `typing.Optional[str]` — Filter messages by conversation ID.
- -
+
+
+**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +
-
-## Ats Scopes -
client.ats.scopes.default_scopes_retrieve()
-#### 📝 Description +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. + +
+
+**cursor:** `typing.Optional[str]` — The pagination cursor value. + +
+
+
-Get the default permissions for Merge Common Models and fields across all Linked Accounts of a given category. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes). -
-
+**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). + -#### 🔌 Usage -
+**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+
-```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.scopes.default_scopes_retrieve() - -``` -
-
+**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + -#### ⚙️ Parameters -
+**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + +
+
+
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned.
+ +
+
+ +**order_by:** `typing.Optional[MessagesListRequestOrderBy]` — Overrides the default ordering for this endpoint. Possible values include: remote_created_at, -remote_created_at. +
+
+
+**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +
-
-
client.ats.scopes.linked_account_scopes_retrieve()
-#### 📝 Description +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
-
-
- -Get all available permissions for Merge Common Models and fields for a single Linked Account. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes). -
-
-
-
- -#### 🔌 Usage - -
-
- -
-
- -```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.scopes.linked_account_scopes_retrieve() - -``` -
-
+**root_message:** `typing.Optional[str]` — If provided as 'true', will only return root messages (messages without a parent message). +
-#### ⚙️ Parameters - -
-
-
@@ -2878,7 +2858,7 @@ client.ats.scopes.linked_account_scopes_retrieve()
-
client.ats.scopes.linked_account_scopes_create(...) +
client.chat.messages.retrieve(...)
@@ -2890,7 +2870,7 @@ client.ats.scopes.linked_account_scopes_retrieve()
-Update permissions for any Common Model or field for a single Linked Account. Any Scopes not set in this POST request will inherit the default Scopes. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes) +Returns a `Message` object with the given `id`.
@@ -2906,42 +2886,15 @@ Update permissions for any Common Model or field for a single Linked Account. An ```python from merge import Merge -from merge.resources.ats import ( - FieldPermissionDeserializerRequest, - IndividualCommonModelScopeDeserializerRequest, - ModelPermissionDeserializerRequest, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.scopes.linked_account_scopes_create( - common_models=[ - IndividualCommonModelScopeDeserializerRequest( - model_name="Employee", - model_permissions={ - "READ": ModelPermissionDeserializerRequest( - is_enabled=True, - ), - "WRITE": ModelPermissionDeserializerRequest( - is_enabled=False, - ), - }, - field_permissions=FieldPermissionDeserializerRequest( - enabled_fields=["avatar", "home_location"], - disabled_fields=["work_location"], - ), - ), - IndividualCommonModelScopeDeserializerRequest( - model_name="Benefit", - model_permissions={ - "WRITE": ModelPermissionDeserializerRequest( - is_enabled=False, - ) - }, - ), - ], +client.chat.messages.retrieve( + id="id", + include_remote_data=True, + include_shell_data=True, ) ``` @@ -2958,7 +2911,7 @@ client.ats.scopes.linked_account_scopes_create(
-**common_models:** `typing.Sequence[IndividualCommonModelScopeDeserializerRequest]` — The common models you want to update the scopes for +**id:** `str`
@@ -2966,65 +2919,19 @@ client.ats.scopes.linked_account_scopes_create(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
- -
- - - - -
- -## Ats DeleteAccount -
client.ats.delete_account.delete() -
-
- -#### 📝 Description - -
-
- -
-
- -Delete a linked account. -
-
-
-
- -#### 🔌 Usage - -
-
-```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.delete_account.delete() - -``` -
-
+**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +
-#### ⚙️ Parameters - -
-
-
@@ -3040,8 +2947,7 @@ client.ats.delete_account.delete()
-## Ats Departments -
client.ats.departments.list(...) +
client.chat.messages.replies_list(...)
@@ -3053,7 +2959,7 @@ client.ats.delete_account.delete()
-Returns a list of `Department` objects. +Returns a list of `Message` objects.
@@ -3068,33 +2974,23 @@ Returns a list of `Department` objects.
```python -import datetime - from merge import Merge +from merge.resources.chat.resources.messages import ( + MessagesRepliesListRequestOrderBy, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.departments.list( - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), +client.chat.messages.replies_list( + message_id="message_id", cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", include_deleted_data=True, include_remote_data=True, include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), + order_by=MessagesRepliesListRequestOrderBy.REMOTE_CREATED_AT_DESCENDING, page_size=1, - remote_id="remote_id", ) ``` @@ -3111,15 +3007,7 @@ client.ats.departments.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. - -
-
- -
-
- -**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**message_id:** `str`
@@ -3159,23 +3047,7 @@ client.ats.departments.list(
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
- -
-
- -**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. - -
-
- -
-
- -**page_size:** `typing.Optional[int]` — Number of results to return per page. +**order_by:** `typing.Optional[MessagesRepliesListRequestOrderBy]` — Overrides the default ordering for this endpoint. Possible values include: remote_created_at, -remote_created_at.
@@ -3183,7 +3055,7 @@ client.ats.departments.list(
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100.
@@ -3203,7 +3075,8 @@ client.ats.departments.list(
-
client.ats.departments.retrieve(...) +## Chat Passthrough +
client.chat.passthrough.create(...)
@@ -3215,7 +3088,7 @@ client.ats.departments.list(
-Returns a `Department` object with the given `id`. +Pull data from an endpoint not currently supported by Merge.
@@ -3231,15 +3104,17 @@ Returns a `Department` object with the given `id`. ```python from merge import Merge +from merge.resources.chat import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.departments.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, +client.chat.passthrough.create( + request=DataPassthroughRequest( + method=MethodEnum.GET, + path="/scooters", + ), ) ``` @@ -3256,23 +3131,7 @@ client.ats.departments.retrieve(
-**id:** `str` - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
- -
-
- -**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**request:** `DataPassthroughRequest`
@@ -3292,8 +3151,8 @@ client.ats.departments.retrieve(
-## Ats Eeocs -
client.ats.eeocs.list(...) +## Chat RegenerateKey +
client.chat.regenerate_key.create(...)
@@ -3305,7 +3164,7 @@ client.ats.departments.retrieve(
-Returns a list of `EEOC` objects. +Exchange remote keys.
@@ -3320,40 +3179,14 @@ Returns a list of `EEOC` objects.
```python -import datetime - from merge import Merge -from merge.resources.ats.resources.eeocs import ( - EeocsListRequestRemoteFields, - EeocsListRequestShowEnumOrigins, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.eeocs.list( - candidate_id="candidate_id", - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - page_size=1, - remote_fields=EeocsListRequestRemoteFields.DISABILITY_STATUS, - remote_id="remote_id", - show_enum_origins=EeocsListRequestShowEnumOrigins.DISABILITY_STATUS, +client.chat.regenerate_key.create( + name="Remote Deployment Key 1", ) ``` @@ -3370,7 +3203,7 @@ client.ats.eeocs.list(
-**candidate_id:** `typing.Optional[str]` — If provided, will only return EEOC info for this candidate. +**name:** `str` — The name of the remote key
@@ -3378,55 +3211,72 @@ client.ats.eeocs.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. -
+
+## Chat SyncStatus +
client.chat.sync_status.list(...)
-**cursor:** `typing.Optional[str]` — The pagination cursor value. - -
-
+#### 📝 Description
-**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. - -
-
-
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). - +Get sync status for the current sync and the most recently finished sync. `last_sync_start` represents the most recent time any sync began. `last_sync_finished` represents the most recent time any sync completed. These timestamps may correspond to different sync instances which may result in a sync start time being later than a separate sync completed time. To ensure you are retrieving the latest available data reference the `last_sync_finished` timestamp where `last_sync_result` is `DONE`. Possible values for `status` and `last_sync_result` are `DISABLED`, `DONE`, `FAILED`, `PARTIALLY_SYNCED`, `PAUSED`, `SYNCING`. Learn more about sync status in our [Help Center](https://help.merge.dev/en/articles/8184193-merge-sync-statuses). +
+
+#### 🔌 Usage +
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.chat.sync_status.list( + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + page_size=1, +) + +``` +
+
+#### ⚙️ Parameters +
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +
+
+ +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -3434,7 +3284,7 @@ client.ats.eeocs.list(
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. +**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100.
@@ -3442,43 +3292,65 @@ client.ats.eeocs.list(
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**page_size:** `typing.Optional[int]` — Number of results to return per page. -
+
+## Chat ForceResync +
client.chat.force_resync.sync_status_resync_create()
-**remote_fields:** `typing.Optional[EeocsListRequestRemoteFields]` — Deprecated. Use show_enum_origins. - -
-
+#### 📝 Description
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. - +
+
+ +Force re-sync of all models. This endpoint is available for monthly, quarterly, and highest sync frequency customers on the Professional or Enterprise plans. Doing so will consume a sync credit for the relevant linked account. Force re-syncs can also be triggered manually in the Merge Dashboard and is available for all customers.
+
+
+ +#### 🔌 Usage
-**show_enum_origins:** `typing.Optional[EeocsListRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.chat.force_resync.sync_status_resync_create() + +``` +
+
+#### ⚙️ Parameters + +
+
+
@@ -3494,7 +3366,8 @@ client.ats.eeocs.list(
-
client.ats.eeocs.retrieve(...) +## Chat Users +
client.chat.users.list(...)
@@ -3506,7 +3379,7 @@ client.ats.eeocs.list(
-Returns an `EEOC` object with the given `id`. +Returns a list of `User` objects.
@@ -3521,22 +3394,33 @@ Returns an `EEOC` object with the given `id`.
```python +import datetime + from merge import Merge -from merge.resources.ats.resources.eeocs import ( - EeocsRetrieveRequestRemoteFields, - EeocsRetrieveRequestShowEnumOrigins, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.eeocs.retrieve( - id="id", +client.chat.users.list( + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + include_deleted_data=True, include_remote_data=True, include_shell_data=True, - remote_fields=EeocsRetrieveRequestRemoteFields.DISABILITY_STATUS, - show_enum_origins=EeocsRetrieveRequestShowEnumOrigins.DISABILITY_STATUS, + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + page_size=1, + remote_id="remote_id", ) ``` @@ -3553,7 +3437,7 @@ client.ats.eeocs.retrieve(
-**id:** `str` +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -3561,7 +3445,7 @@ client.ats.eeocs.retrieve(
-**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -3569,7 +3453,7 @@ client.ats.eeocs.retrieve(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -3577,7 +3461,7 @@ client.ats.eeocs.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**expand:** `typing.Optional[typing.Literal["groups"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -3585,7 +3469,7 @@ client.ats.eeocs.retrieve(
-**remote_fields:** `typing.Optional[EeocsRetrieveRequestRemoteFields]` — Deprecated. Use show_enum_origins. +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -3593,7 +3477,7 @@ client.ats.eeocs.retrieve(
-**show_enum_origins:** `typing.Optional[EeocsRetrieveRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -3601,71 +3485,39 @@ client.ats.eeocs.retrieve(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
-
-
- - - - -
-## Ats FieldMapping -
client.ats.field_mapping.field_mappings_retrieve(...)
-#### 📝 Description - -
-
+**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + +
+
-Get all Field Mappings for this Linked Account. Field Mappings are mappings between third-party Remote Fields and user defined Merge fields. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/). -
-
+**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. +
-#### 🔌 Usage -
-
-
- -```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.field_mapping.field_mappings_retrieve( - exclude_remote_field_metadata=True, -) - -``` -
-
+**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +
-#### ⚙️ Parameters - -
-
-
-**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations. +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object.
@@ -3685,7 +3537,7 @@ client.ats.field_mapping.field_mappings_retrieve(
-
client.ats.field_mapping.field_mappings_create(...) +
client.chat.users.retrieve(...)
@@ -3697,7 +3549,7 @@ client.ats.field_mapping.field_mappings_retrieve(
-Create new Field Mappings that will be available after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. +Returns a `User` object with the given `id`.
@@ -3718,14 +3570,10 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.field_mapping.field_mappings_create( - exclude_remote_field_metadata=True, - target_field_name="example_target_field_name", - target_field_description="this is a example description of the target field", - remote_field_traversal_path=["example_remote_field"], - remote_method="GET", - remote_url_path="/example-url-path", - common_model_name="ExampleCommonModel", +client.chat.users.retrieve( + id="id", + include_remote_data=True, + include_shell_data=True, ) ``` @@ -3742,31 +3590,7 @@ client.ats.field_mapping.field_mappings_create(
-**target_field_name:** `str` — The name of the target field you want this remote field to map to. - -
-
- -
-
- -**target_field_description:** `str` — The description of the target field you want this remote field to map to. - -
-
- -
-
- -**remote_field_traversal_path:** `typing.Sequence[typing.Optional[typing.Any]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint. - -
-
- -
-
- -**remote_method:** `str` — The method of the remote endpoint where the remote field is coming from. +**id:** `str`
@@ -3774,7 +3598,7 @@ client.ats.field_mapping.field_mappings_create(
-**remote_url_path:** `str` — The path of the remote endpoint where the remote field is coming from. +**expand:** `typing.Optional[typing.Literal["groups"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -3782,7 +3606,7 @@ client.ats.field_mapping.field_mappings_create(
-**common_model_name:** `str` — The name of the Common Model that the remote field corresponds to in a given category. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -3790,7 +3614,7 @@ client.ats.field_mapping.field_mappings_create(
-**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -3810,7 +3634,8 @@ client.ats.field_mapping.field_mappings_create(
-
client.ats.field_mapping.field_mappings_destroy(...) +## Chat WebhookReceivers +
client.chat.webhook_receivers.list()
@@ -3822,7 +3647,7 @@ client.ats.field_mapping.field_mappings_create(
-Deletes Field Mappings for a Linked Account. All data related to this Field Mapping will be deleted and these changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. +Returns a list of `WebhookReceiver` objects.
@@ -3843,9 +3668,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.field_mapping.field_mappings_destroy( - field_mapping_id="field_mapping_id", -) +client.chat.webhook_receivers.list() ``` @@ -3861,14 +3684,6 @@ client.ats.field_mapping.field_mappings_destroy(
-**field_mapping_id:** `str` - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -3881,7 +3696,7 @@ client.ats.field_mapping.field_mappings_destroy(
-
client.ats.field_mapping.field_mappings_partial_update(...) +
client.chat.webhook_receivers.create(...)
@@ -3893,7 +3708,7 @@ client.ats.field_mapping.field_mappings_destroy(
-Create or update existing Field Mappings for a Linked Account. Changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. +Creates a `WebhookReceiver` object with the given values.
@@ -3914,8 +3729,9 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.field_mapping.field_mappings_partial_update( - field_mapping_id="field_mapping_id", +client.chat.webhook_receivers.create( + event="event", + is_active=True, ) ``` @@ -3932,103 +3748,15 @@ client.ats.field_mapping.field_mappings_partial_update(
-**field_mapping_id:** `str` - -
-
- -
-
- -**remote_field_traversal_path:** `typing.Optional[typing.Sequence[typing.Optional[typing.Any]]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint. - -
-
- -
-
- -**remote_method:** `typing.Optional[str]` — The method of the remote endpoint where the remote field is coming from. - -
-
- -
-
- -**remote_url_path:** `typing.Optional[str]` — The path of the remote endpoint where the remote field is coming from. - -
-
- -
-
- -**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**event:** `str`
- -
- - - - -
- -
client.ats.field_mapping.remote_fields_retrieve(...) -
-
- -#### 📝 Description - -
-
- -
-
- -Get all remote fields for a Linked Account. Remote fields are third-party fields that are accessible after initial sync if remote_data is enabled. You can use remote fields to override existing Merge fields or map a new Merge field. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/). -
-
-
-
- -#### 🔌 Usage - -
-
- -
-
- -```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.field_mapping.remote_fields_retrieve( - common_models="common_models", - include_example_values="include_example_values", -) - -``` -
-
-
-
- -#### ⚙️ Parameters - -
-
-**common_models:** `typing.Optional[str]` — A comma seperated list of Common Model names. If included, will only return Remote Fields for those Common Models. +**is_active:** `bool`
@@ -4036,7 +3764,7 @@ client.ats.field_mapping.remote_fields_retrieve(
-**include_example_values:** `typing.Optional[str]` — If true, will include example values, where available, for remote fields in the 3rd party platform. These examples come from active data from your customers. +**key:** `typing.Optional[str]`
@@ -4056,7 +3784,8 @@ client.ats.field_mapping.remote_fields_retrieve(
-
client.ats.field_mapping.target_fields_retrieve() +## Ats AccountDetails +
client.ats.account_details.retrieve()
@@ -4068,7 +3797,7 @@ client.ats.field_mapping.remote_fields_retrieve(
-Get all organization-wide Target Fields, this will not include any Linked Account specific Target Fields. Organization-wide Target Fields are additional fields appended to the Merge Common Model for all Linked Accounts in a category. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/target-fields/). +Get details for a linked account.
@@ -4089,7 +3818,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.field_mapping.target_fields_retrieve() +client.ats.account_details.retrieve() ``` @@ -4117,8 +3846,8 @@ client.ats.field_mapping.target_fields_retrieve()
-## Ats GenerateKey -
client.ats.generate_key.create(...) +## Ats AccountToken +
client.ats.account_token.retrieve(...)
@@ -4130,7 +3859,7 @@ client.ats.field_mapping.target_fields_retrieve()
-Create a remote key. +Returns the account token for the end user with the provided public token.
@@ -4151,8 +3880,8 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.generate_key.create( - name="Remote Deployment Key 1", +client.ats.account_token.retrieve( + public_token="public_token", ) ``` @@ -4169,7 +3898,7 @@ client.ats.generate_key.create(
-**name:** `str` — The name of the remote key +**public_token:** `str`
@@ -4189,8 +3918,8 @@ client.ats.generate_key.create(
-## Ats Interviews -
client.ats.interviews.list(...) +## Ats Activities +
client.ats.activities.list(...)
@@ -4202,7 +3931,7 @@ client.ats.generate_key.create(
-Returns a list of `ScheduledInterview` objects. +Returns a list of `Activity` objects.
@@ -4220,14 +3949,16 @@ Returns a list of `ScheduledInterview` objects. import datetime from merge import Merge -from merge.resources.ats.resources.interviews import InterviewsListRequestExpand +from merge.resources.ats.resources.activities import ( + ActivitiesListRequestRemoteFields, + ActivitiesListRequestShowEnumOrigins, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.interviews.list( - application_id="application_id", +client.ats.activities.list( created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -4235,21 +3966,20 @@ client.ats.interviews.list( "2024-01-15 09:30:00+00:00", ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - expand=InterviewsListRequestExpand.APPLICATION, include_deleted_data=True, include_remote_data=True, include_shell_data=True, - job_id="job_id", - job_interview_stage_id="job_interview_stage_id", modified_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), modified_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - organizer_id="organizer_id", page_size=1, + remote_fields=ActivitiesListRequestRemoteFields.ACTIVITY_TYPE, remote_id="remote_id", + show_enum_origins=ActivitiesListRequestShowEnumOrigins.ACTIVITY_TYPE, + user_id="user_id", ) ``` @@ -4266,14 +3996,6 @@ client.ats.interviews.list(
-**application_id:** `typing.Optional[str]` — If provided, will only return interviews for this application. - -
-
- -
-
- **created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -4298,7 +4020,7 @@ client.ats.interviews.list(
-**expand:** `typing.Optional[InterviewsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["user"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -4330,22 +4052,6 @@ client.ats.interviews.list(
-**job_id:** `typing.Optional[str]` — If provided, wll only return interviews organized for this job. - -
-
- -
-
- -**job_interview_stage_id:** `typing.Optional[str]` — If provided, will only return interviews at this stage. - -
-
- -
-
- **modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned.
@@ -4362,7 +4068,7 @@ client.ats.interviews.list(
-**organizer_id:** `typing.Optional[str]` — If provided, will only return interviews organized by this user. +**page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -4370,7 +4076,7 @@ client.ats.interviews.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. +**remote_fields:** `typing.Optional[ActivitiesListRequestRemoteFields]` — Deprecated. Use show_enum_origins.
@@ -4378,7 +4084,7 @@ client.ats.interviews.list(
-**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object.
@@ -4386,7 +4092,7 @@ client.ats.interviews.list(
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +**show_enum_origins:** `typing.Optional[ActivitiesListRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -4394,7 +4100,7 @@ client.ats.interviews.list(
-**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**user_id:** `typing.Optional[str]` — If provided, will only return activities done by this user.
@@ -4414,7 +4120,7 @@ client.ats.interviews.list(
-
client.ats.interviews.create(...) +
client.ats.activities.create(...)
@@ -4426,7 +4132,7 @@ client.ats.interviews.list(
-Creates a `ScheduledInterview` object with the given values. +Creates an `Activity` object with the given values.
@@ -4442,16 +4148,16 @@ Creates a `ScheduledInterview` object with the given values. ```python from merge import Merge -from merge.resources.ats import ScheduledInterviewRequest +from merge.resources.ats import ActivityRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.interviews.create( +client.ats.activities.create( is_debug_mode=True, run_async=True, - model=ScheduledInterviewRequest(), + model=ActivityRequest(), remote_user_id="remote_user_id", ) @@ -4469,7 +4175,7 @@ client.ats.interviews.create(
-**model:** `ScheduledInterviewRequest` +**model:** `ActivityRequest`
@@ -4513,7 +4219,7 @@ client.ats.interviews.create(
-
client.ats.interviews.retrieve(...) +
client.ats.activities.retrieve(...)
@@ -4525,7 +4231,7 @@ client.ats.interviews.create(
-Returns a `ScheduledInterview` object with the given `id`. +Returns an `Activity` object with the given `id`.
@@ -4541,19 +4247,21 @@ Returns a `ScheduledInterview` object with the given `id`. ```python from merge import Merge -from merge.resources.ats.resources.interviews import ( - InterviewsRetrieveRequestExpand, +from merge.resources.ats.resources.activities import ( + ActivitiesRetrieveRequestRemoteFields, + ActivitiesRetrieveRequestShowEnumOrigins, ) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.interviews.retrieve( +client.ats.activities.retrieve( id="id", - expand=InterviewsRetrieveRequestExpand.APPLICATION, include_remote_data=True, include_shell_data=True, + remote_fields=ActivitiesRetrieveRequestRemoteFields.ACTIVITY_TYPE, + show_enum_origins=ActivitiesRetrieveRequestShowEnumOrigins.ACTIVITY_TYPE, ) ``` @@ -4578,7 +4286,7 @@ client.ats.interviews.retrieve(
-**expand:** `typing.Optional[InterviewsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["user"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -4602,7 +4310,7 @@ client.ats.interviews.retrieve(
-**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +**remote_fields:** `typing.Optional[ActivitiesRetrieveRequestRemoteFields]` — Deprecated. Use show_enum_origins.
@@ -4610,7 +4318,7 @@ client.ats.interviews.retrieve(
-**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**show_enum_origins:** `typing.Optional[ActivitiesRetrieveRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -4630,7 +4338,7 @@ client.ats.interviews.retrieve(
-
client.ats.interviews.meta_post_retrieve() +
client.ats.activities.meta_post_retrieve()
@@ -4642,7 +4350,7 @@ client.ats.interviews.retrieve(
-Returns metadata for `ScheduledInterview` POSTs. +Returns metadata for `Activity` POSTs.
@@ -4663,7 +4371,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.interviews.meta_post_retrieve() +client.ats.activities.meta_post_retrieve() ``` @@ -4691,8 +4399,8 @@ client.ats.interviews.meta_post_retrieve()
-## Ats Issues -
client.ats.issues.list(...) +## Ats Applications +
client.ats.applications.list(...)
@@ -4704,7 +4412,7 @@ client.ats.interviews.meta_post_retrieve()
-Gets all issues for Organization. +Returns a list of `Application` objects.
@@ -4722,35 +4430,40 @@ Gets all issues for Organization. import datetime from merge import Merge -from merge.resources.ats.resources.issues import IssuesListRequestStatus +from merge.resources.ats.resources.applications import ( + ApplicationsListRequestExpand, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.issues.list( - account_token="account_token", - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - end_date="end_date", - end_user_organization_name="end_user_organization_name", - first_incident_time_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - first_incident_time_before=datetime.datetime.fromisoformat( +client.ats.applications.list( + candidate_id="candidate_id", + created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - include_muted="include_muted", - integration_name="integration_name", - last_incident_time_after=datetime.datetime.fromisoformat( + created_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - last_incident_time_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", + credited_to_id="credited_to_id", + current_stage_id="current_stage_id", + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + expand=ApplicationsListRequestExpand.CANDIDATE, + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + job_id="job_id", + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", ), - linked_account_id="linked_account_id", page_size=1, - start_date="start_date", - status=IssuesListRequestStatus.ONGOING, + reject_reason_id="reject_reason_id", + remote_id="remote_id", + source="source", ) ``` @@ -4767,7 +4480,7 @@ client.ats.issues.list(
-**account_token:** `typing.Optional[str]` +**candidate_id:** `typing.Optional[str]` — If provided, will only return applications for this candidate.
@@ -4775,7 +4488,7 @@ client.ats.issues.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -4783,7 +4496,7 @@ client.ats.issues.list(
-**end_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred before this time +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -4791,7 +4504,7 @@ client.ats.issues.list(
-**end_user_organization_name:** `typing.Optional[str]` +**credited_to_id:** `typing.Optional[str]` — If provided, will only return applications credited to this user.
@@ -4799,7 +4512,7 @@ client.ats.issues.list(
-**first_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was after this datetime. +**current_stage_id:** `typing.Optional[str]` — If provided, will only return applications at this interview stage.
@@ -4807,7 +4520,7 @@ client.ats.issues.list(
-**first_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was before this datetime. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -4815,7 +4528,7 @@ client.ats.issues.list(
-**include_muted:** `typing.Optional[str]` — If true, will include muted issues +**expand:** `typing.Optional[ApplicationsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -4823,7 +4536,7 @@ client.ats.issues.list(
-**integration_name:** `typing.Optional[str]` +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -4831,7 +4544,7 @@ client.ats.issues.list(
-**last_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was after this datetime. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -4839,7 +4552,7 @@ client.ats.issues.list(
-**last_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was before this datetime. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -4847,7 +4560,23 @@ client.ats.issues.list(
-**linked_account_id:** `typing.Optional[str]` — If provided, will only include issues pertaining to the linked account passed in. +**job_id:** `typing.Optional[str]` — If provided, will only return applications for this job. + +
+
+ +
+
+ +**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + +
+
+ +
+
+ +**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned.
@@ -4863,7 +4592,7 @@ client.ats.issues.list(
-**start_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred after this time +**reject_reason_id:** `typing.Optional[str]` — If provided, will only return applications with this reject reason.
@@ -4871,12 +4600,15 @@ client.ats.issues.list(
-**status:** `typing.Optional[IssuesListRequestStatus]` +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
-Status of the issue. Options: ('ONGOING', 'RESOLVED') +
+
-* `ONGOING` - ONGOING -* `RESOLVED` - RESOLVED +**source:** `typing.Optional[str]` — If provided, will only return applications with this source.
@@ -4896,7 +4628,7 @@ Status of the issue. Options: ('ONGOING', 'RESOLVED')
-
client.ats.issues.retrieve(...) +
client.ats.applications.create(...)
@@ -4908,7 +4640,10 @@ Status of the issue. Options: ('ONGOING', 'RESOLVED')
-Get a specific issue. +Creates an `Application` object with the given values. +For certain integrations, but not all, our API detects duplicate candidates and will associate applications with existing records in the third-party. New candidates are created and automatically linked to the application. + +See our [Help Center article](https://help.merge.dev/en/articles/10012366-updates-to-post-applications-oct-2024) for detailed support per integration.
@@ -4924,13 +4659,17 @@ Get a specific issue. ```python from merge import Merge +from merge.resources.ats import ApplicationRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.issues.retrieve( - id="id", +client.ats.applications.create( + is_debug_mode=True, + run_async=True, + model=ApplicationRequest(), + remote_user_id="remote_user_id", ) ``` @@ -4947,7 +4686,31 @@ client.ats.issues.retrieve(
-**id:** `str` +**model:** `ApplicationRequest` + +
+
+ +
+
+ +**remote_user_id:** `str` + +
+
+ +
+
+ +**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. + +
+
+ +
+
+ +**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously.
@@ -4967,8 +4730,7 @@ client.ats.issues.retrieve(
-## Ats JobInterviewStages -
client.ats.job_interview_stages.list(...) +
client.ats.applications.retrieve(...)
@@ -4980,7 +4742,7 @@ client.ats.issues.retrieve(
-Returns a list of `JobInterviewStage` objects. +Returns an `Application` object with the given `id`.
@@ -4995,34 +4757,20 @@ Returns a list of `JobInterviewStage` objects.
```python -import datetime - from merge import Merge +from merge.resources.ats.resources.applications import ( + ApplicationsRetrieveRequestExpand, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.job_interview_stages.list( - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, +client.ats.applications.retrieve( + id="id", + expand=ApplicationsRetrieveRequestExpand.CANDIDATE, include_remote_data=True, include_shell_data=True, - job_id="job_id", - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - page_size=1, - remote_id="remote_id", ) ``` @@ -5039,7 +4787,7 @@ client.ats.job_interview_stages.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**id:** `str`
@@ -5047,7 +4795,7 @@ client.ats.job_interview_stages.list(
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**expand:** `typing.Optional[ApplicationsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -5055,7 +4803,7 @@ client.ats.job_interview_stages.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -5063,7 +4811,7 @@ client.ats.job_interview_stages.list(
-**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -5071,31 +4819,72 @@ client.ats.job_interview_stages.list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
+ + + + +
+ +
client.ats.applications.change_stage_create(...) +
+
+ +#### 📝 Description
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - +
+
+ +Updates the `current_stage` field of an `Application` object +
+
+#### 🔌 Usage +
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.applications.change_stage_create( + id="id", + is_debug_mode=True, + run_async=True, +) + +``` +
+
+#### ⚙️ Parameters +
-**job_id:** `typing.Optional[str]` — If provided, will only return interview stages for this job. +
+
+ +**id:** `str`
@@ -5103,7 +4892,7 @@ client.ats.job_interview_stages.list(
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. +**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response.
@@ -5111,7 +4900,7 @@ client.ats.job_interview_stages.list(
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. +**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously.
@@ -5119,7 +4908,7 @@ client.ats.job_interview_stages.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. +**job_interview_stage:** `typing.Optional[str]` — The interview stage to move the application to.
@@ -5127,7 +4916,7 @@ client.ats.job_interview_stages.list(
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +**remote_user_id:** `typing.Optional[str]`
@@ -5147,7 +4936,7 @@ client.ats.job_interview_stages.list(
-
client.ats.job_interview_stages.retrieve(...) +
client.ats.applications.meta_post_retrieve(...)
@@ -5159,7 +4948,7 @@ client.ats.job_interview_stages.list(
-Returns a `JobInterviewStage` object with the given `id`. +Returns metadata for `Application` POSTs.
@@ -5180,10 +4969,8 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.job_interview_stages.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, +client.ats.applications.meta_post_retrieve( + application_remote_template_id="application_remote_template_id", ) ``` @@ -5200,31 +4987,7 @@ client.ats.job_interview_stages.retrieve(
-**id:** `str` - -
-
- -
-
- -**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
- -
-
- -**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**application_remote_template_id:** `typing.Optional[str]` — The template ID associated with the nested application in the request.
@@ -5244,8 +5007,8 @@ client.ats.job_interview_stages.retrieve(
-## Ats JobPostings -
client.ats.job_postings.list(...) +## Ats AsyncPassthrough +
client.ats.async_passthrough.create(...)
@@ -5257,7 +5020,7 @@ client.ats.job_interview_stages.retrieve(
-Returns a list of `JobPosting` objects. +Asynchronously pull data from an endpoint not currently supported by Merge.
@@ -5272,37 +5035,18 @@ Returns a list of `JobPosting` objects.
```python -import datetime - from merge import Merge -from merge.resources.ats.resources.job_postings import ( - JobPostingsListRequestStatus, -) +from merge.resources.ats import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.job_postings.list( - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", +client.ats.async_passthrough.create( + request=DataPassthroughRequest( + method=MethodEnum.GET, + path="/scooters", ), - page_size=1, - remote_id="remote_id", - status=JobPostingsListRequestStatus.CLOSED, ) ``` @@ -5319,103 +5063,7 @@ client.ats.job_postings.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. - -
-
- -
-
- -**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. - -
-
- -
-
- -**cursor:** `typing.Optional[str]` — The pagination cursor value. - -
-
- -
-
- -**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. - -
-
- -
-
- -**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
- -
-
- -**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - -
-
- -
-
- -**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
- -
-
- -**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. - -
-
- -
-
- -**page_size:** `typing.Optional[int]` — Number of results to return per page. - -
-
- -
-
- -**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. - -
-
- -
-
- -**status:** `typing.Optional[JobPostingsListRequestStatus]` - -If provided, will only return Job Postings with this status. Options: ('PUBLISHED', 'CLOSED', 'DRAFT', 'INTERNAL', 'PENDING') - -* `PUBLISHED` - PUBLISHED -* `CLOSED` - CLOSED -* `DRAFT` - DRAFT -* `INTERNAL` - INTERNAL -* `PENDING` - PENDING +**request:** `DataPassthroughRequest`
@@ -5435,7 +5083,7 @@ If provided, will only return Job Postings with this status. Options: ('PUBLISHE
-
client.ats.job_postings.retrieve(...) +
client.ats.async_passthrough.retrieve(...)
@@ -5447,7 +5095,7 @@ If provided, will only return Job Postings with this status. Options: ('PUBLISHE
-Returns a `JobPosting` object with the given `id`. +Retrieves data from earlier async-passthrough POST request
@@ -5468,10 +5116,8 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.job_postings.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, +client.ats.async_passthrough.retrieve( + async_passthrough_receipt_id="async_passthrough_receipt_id", ) ``` @@ -5488,31 +5134,7 @@ client.ats.job_postings.retrieve(
-**id:** `str` - -
-
- -
-
- -**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
- -
-
- -**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**async_passthrough_receipt_id:** `str`
@@ -5532,8 +5154,8 @@ client.ats.job_postings.retrieve(
-## Ats Jobs -
client.ats.jobs.list(...) +## Ats Attachments +
client.ats.attachments.list(...)
@@ -5545,7 +5167,7 @@ client.ats.job_postings.retrieve(
-Returns a list of `Job` objects. +Returns a list of `Attachment` objects.
@@ -5563,17 +5185,13 @@ Returns a list of `Job` objects. import datetime from merge import Merge -from merge.resources.ats.resources.jobs import ( - JobsListRequestExpand, - JobsListRequestStatus, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.jobs.list( - code="code", +client.ats.attachments.list( + candidate_id="candidate_id", created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -5581,7 +5199,6 @@ client.ats.jobs.list( "2024-01-15 09:30:00+00:00", ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - expand=JobsListRequestExpand.DEPARTMENTS, include_deleted_data=True, include_remote_data=True, include_shell_data=True, @@ -5591,10 +5208,8 @@ client.ats.jobs.list( modified_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - offices="offices", page_size=1, remote_id="remote_id", - status=JobsListRequestStatus.ARCHIVED, ) ``` @@ -5611,7 +5226,7 @@ client.ats.jobs.list(
-**code:** `typing.Optional[str]` — If provided, will only return jobs with this code. +**candidate_id:** `typing.Optional[str]` — If provided, will only return attachments for this candidate.
@@ -5643,7 +5258,7 @@ client.ats.jobs.list(
-**expand:** `typing.Optional[JobsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -5691,14 +5306,6 @@ client.ats.jobs.list(
-**offices:** `typing.Optional[str]` — If provided, will only return jobs for this office; multiple offices can be separated by commas. - -
-
- -
-
- **page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -5707,7 +5314,7 @@ client.ats.jobs.list(
-**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +**remote_fields:** `typing.Optional[typing.Literal["attachment_type"]]` — Deprecated. Use show_enum_origins.
@@ -5723,23 +5330,7 @@ client.ats.jobs.list(
-**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) - -
-
- -
-
- -**status:** `typing.Optional[JobsListRequestStatus]` - -If provided, will only return jobs with this status. Options: ('OPEN', 'CLOSED', 'DRAFT', 'ARCHIVED', 'PENDING') - -* `OPEN` - OPEN -* `CLOSED` - CLOSED -* `DRAFT` - DRAFT -* `ARCHIVED` - ARCHIVED -* `PENDING` - PENDING +**show_enum_origins:** `typing.Optional[typing.Literal["attachment_type"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -5759,7 +5350,7 @@ If provided, will only return jobs with this status. Options: ('OPEN', 'CLOSED',
-
client.ats.jobs.retrieve(...) +
client.ats.attachments.create(...)
@@ -5771,7 +5362,7 @@ If provided, will only return jobs with this status. Options: ('OPEN', 'CLOSED',
-Returns a `Job` object with the given `id`. +Creates an `Attachment` object with the given values.
@@ -5787,17 +5378,17 @@ Returns a `Job` object with the given `id`. ```python from merge import Merge -from merge.resources.ats.resources.jobs import JobsRetrieveRequestExpand +from merge.resources.ats import AttachmentRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.jobs.retrieve( - id="id", - expand=JobsRetrieveRequestExpand.DEPARTMENTS, - include_remote_data=True, - include_shell_data=True, +client.ats.attachments.create( + is_debug_mode=True, + run_async=True, + model=AttachmentRequest(), + remote_user_id="remote_user_id", ) ``` @@ -5814,23 +5405,7 @@ client.ats.jobs.retrieve(
-**id:** `str` - -
-
- -
-
- -**expand:** `typing.Optional[JobsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**model:** `AttachmentRequest`
@@ -5838,7 +5413,7 @@ client.ats.jobs.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**remote_user_id:** `str`
@@ -5846,7 +5421,7 @@ client.ats.jobs.retrieve(
-**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response.
@@ -5854,7 +5429,7 @@ client.ats.jobs.retrieve(
-**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously.
@@ -5874,7 +5449,7 @@ client.ats.jobs.retrieve(
-
client.ats.jobs.screening_questions_list(...) +
client.ats.attachments.retrieve(...)
@@ -5886,7 +5461,7 @@ client.ats.jobs.retrieve(
-Returns a list of `ScreeningQuestion` objects. +Returns an `Attachment` object with the given `id`.
@@ -5902,22 +5477,15 @@ Returns a list of `ScreeningQuestion` objects. ```python from merge import Merge -from merge.resources.ats.resources.jobs import ( - JobsScreeningQuestionsListRequestExpand, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.jobs.screening_questions_list( - job_id="job_id", - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - expand=JobsScreeningQuestionsListRequestExpand.JOB, - include_deleted_data=True, +client.ats.attachments.retrieve( + id="id", include_remote_data=True, include_shell_data=True, - page_size=1, ) ``` @@ -5934,15 +5502,7 @@ client.ats.jobs.screening_questions_list(
-**job_id:** `str` - -
-
- -
-
- -**cursor:** `typing.Optional[str]` — The pagination cursor value. +**id:** `str`
@@ -5950,7 +5510,7 @@ client.ats.jobs.screening_questions_list(
-**expand:** `typing.Optional[JobsScreeningQuestionsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -5958,7 +5518,7 @@ client.ats.jobs.screening_questions_list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -5966,7 +5526,7 @@ client.ats.jobs.screening_questions_list(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -5974,7 +5534,7 @@ client.ats.jobs.screening_questions_list(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**remote_fields:** `typing.Optional[typing.Literal["attachment_type"]]` — Deprecated. Use show_enum_origins.
@@ -5982,7 +5542,7 @@ client.ats.jobs.screening_questions_list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. +**show_enum_origins:** `typing.Optional[typing.Literal["attachment_type"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -6002,8 +5562,7 @@ client.ats.jobs.screening_questions_list(
-## Ats LinkToken -
client.ats.link_token.create(...) +
client.ats.attachments.meta_post_retrieve()
@@ -6015,7 +5574,7 @@ client.ats.jobs.screening_questions_list(
-Creates a link token to be used when linking a new end user. +Returns metadata for `Attachment` POSTs.
@@ -6031,18 +5590,12 @@ Creates a link token to be used when linking a new end user. ```python from merge import Merge -from merge.resources.ats import CategoriesEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.link_token.create( - end_user_email_address="example@gmail.com", - end_user_organization_name="Test Organization", - end_user_origin_id="12345", - categories=[CategoriesEnum.HRIS, CategoriesEnum.ATS], -) +client.ats.attachments.meta_post_retrieve() ``` @@ -6058,39 +5611,76 @@ client.ats.link_token.create(
-**end_user_email_address:** `str` — Your end user's email address. This is purely for identification purposes - setting this value will not cause any emails to be sent. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+ +
-
-
-**end_user_organization_name:** `str` — Your end user's organization. -
+
+## Ats AuditTrail +
client.ats.audit_trail.list(...)
-**end_user_origin_id:** `str` — This unique identifier typically represents the ID for your end user in your product's database. This value must be distinct from other Linked Accounts' unique identifiers. - +#### 📝 Description + +
+
+ +
+
+ +Gets a list of audit trail events. +
+
+#### 🔌 Usage +
-**categories:** `typing.Sequence[CategoriesEnum]` — The integration categories to show in Merge Link. - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.audit_trail.list( + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + end_date="end_date", + event_type="event_type", + page_size=1, + start_date="start_date", + user_email="user_email", +) + +``` +
+
+#### ⚙️ Parameters +
-**integration:** `typing.Optional[str]` — The slug of a specific pre-selected integration for this linking flow token. For examples of slugs, see https://docs.merge.dev/guides/merge-link/single-integration/. +
+
+ +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -6098,7 +5688,7 @@ client.ats.link_token.create(
-**link_expiry_mins:** `typing.Optional[int]` — An integer number of minutes between [30, 720 or 10080 if for a Magic Link URL] for how long this token is valid. Defaults to 30. +**end_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred before this time
@@ -6106,7 +5696,7 @@ client.ats.link_token.create(
-**should_create_magic_link_url:** `typing.Optional[bool]` — Whether to generate a Magic Link URL. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. +**event_type:** `typing.Optional[str]` — If included, will only include events with the given event type. Possible values include: `CREATED_REMOTE_PRODUCTION_API_KEY`, `DELETED_REMOTE_PRODUCTION_API_KEY`, `CREATED_TEST_API_KEY`, `DELETED_TEST_API_KEY`, `REGENERATED_PRODUCTION_API_KEY`, `REGENERATED_WEBHOOK_SIGNATURE`, `INVITED_USER`, `TWO_FACTOR_AUTH_ENABLED`, `TWO_FACTOR_AUTH_DISABLED`, `DELETED_LINKED_ACCOUNT`, `DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT`, `CREATED_DESTINATION`, `DELETED_DESTINATION`, `CHANGED_DESTINATION`, `CHANGED_SCOPES`, `CHANGED_PERSONAL_INFORMATION`, `CHANGED_ORGANIZATION_SETTINGS`, `ENABLED_INTEGRATION`, `DISABLED_INTEGRATION`, `ENABLED_CATEGORY`, `DISABLED_CATEGORY`, `CHANGED_PASSWORD`, `RESET_PASSWORD`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `CREATED_INTEGRATION_WIDE_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_FIELD_MAPPING`, `CHANGED_INTEGRATION_WIDE_FIELD_MAPPING`, `CHANGED_LINKED_ACCOUNT_FIELD_MAPPING`, `DELETED_INTEGRATION_WIDE_FIELD_MAPPING`, `DELETED_LINKED_ACCOUNT_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `FORCED_LINKED_ACCOUNT_RESYNC`, `MUTED_ISSUE`, `GENERATED_MAGIC_LINK`, `ENABLED_MERGE_WEBHOOK`, `DISABLED_MERGE_WEBHOOK`, `MERGE_WEBHOOK_TARGET_CHANGED`, `END_USER_CREDENTIALS_ACCESSED`
@@ -6114,7 +5704,7 @@ client.ats.link_token.create(
-**hide_admin_magic_link:** `typing.Optional[bool]` — Whether to generate a Magic Link URL on the Admin Needed screen during the linking flow. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. +**page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -6122,7 +5712,7 @@ client.ats.link_token.create(
-**common_models:** `typing.Optional[typing.Sequence[CommonModelScopesBodyRequest]]` — An array of objects to specify the models and fields that will be disabled for a given Linked Account. Each object uses model_id, enabled_actions, and disabled_fields to specify the model, method, and fields that are scoped for a given Linked Account. +**start_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred after this time
@@ -6130,14 +5720,7 @@ client.ats.link_token.create(
-**category_common_model_scopes:** `typing.Optional[ - typing.Dict[ - str, - typing.Optional[ - typing.Sequence[IndividualCommonModelScopeDeserializerRequest] - ], - ] -]` — When creating a Link Token, you can set permissions for Common Models that will apply to the account that is going to be linked. Any model or field not specified in link token payload will default to existing settings. +**user_email:** `typing.Optional[str]` — If provided, this will return events associated with the specified user email. Please note that the email address reflects the user's email at the time of the event, and may not be their current email.
@@ -6145,32 +5728,65 @@ client.ats.link_token.create(
-**language:** `typing.Optional[EndUserDetailsRequestLanguage]` +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
-The following subset of IETF language tags can be used to configure localization. -* `en` - en -* `de` - de -
+
+ +## Ats AvailableActions +
client.ats.available_actions.retrieve() +
+
+ +#### 📝 Description
-**are_syncs_disabled:** `typing.Optional[bool]` — The boolean that indicates whether initial, periodic, and force syncs will be disabled. - +
+
+ +Returns a list of models and actions available for an account.
+
+
+ +#### 🔌 Usage
-**integration_specific_config:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — A JSON object containing integration-specific configuration options. - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.available_actions.retrieve() + +``` +
+
+#### ⚙️ Parameters + +
+
+
@@ -6186,8 +5802,8 @@ The following subset of IETF language tags can be used to configure localization
-## Ats LinkedAccounts -
client.ats.linked_accounts.list(...) +## Ats Candidates +
client.ats.candidates.list(...)
@@ -6199,7 +5815,7 @@ The following subset of IETF language tags can be used to configure localization
-List linked accounts for your organization. +Returns a list of `Candidate` objects.
@@ -6214,29 +5830,39 @@ List linked accounts for your organization.
```python +import datetime + from merge import Merge -from merge.resources.ats.resources.linked_accounts import ( - LinkedAccountsListRequestCategory, -) +from merge.resources.ats.resources.candidates import CandidatesListRequestExpand client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.linked_accounts.list( - category=LinkedAccountsListRequestCategory.ACCOUNTING, +client.ats.candidates.list( + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - end_user_email_address="end_user_email_address", - end_user_organization_name="end_user_organization_name", - end_user_origin_id="end_user_origin_id", - end_user_origin_ids="end_user_origin_ids", - id="id", - ids="ids", - include_duplicates=True, - integration_name="integration_name", - is_test_account="is_test_account", + email_addresses="email_addresses", + expand=CandidatesListRequestExpand.APPLICATIONS, + first_name="first_name", + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + last_name="last_name", + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), page_size=1, - status="status", + remote_id="remote_id", + tags="tags", ) ``` @@ -6253,17 +5879,15 @@ client.ats.linked_accounts.list(
-**category:** `typing.Optional[LinkedAccountsListRequestCategory]` +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. + +
+
-Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing` +
+
-* `hris` - hris -* `ats` - ats -* `accounting` - accounting -* `ticketing` - ticketing -* `crm` - crm -* `mktg` - mktg -* `filestorage` - filestorage +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -6279,7 +5903,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**end_user_email_address:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given email address. +**email_addresses:** `typing.Optional[str]` — If provided, will only return candidates with these email addresses; multiple addresses can be separated by commas.
@@ -6287,7 +5911,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**end_user_organization_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given organization name. +**expand:** `typing.Optional[CandidatesListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -6295,7 +5919,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**end_user_origin_id:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given origin ID. +**first_name:** `typing.Optional[str]` — If provided, will only return candidates with this first name.
@@ -6303,7 +5927,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**end_user_origin_ids:** `typing.Optional[str]` — Comma-separated list of EndUser origin IDs, making it possible to specify multiple EndUsers at once. +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -6311,7 +5935,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**id:** `typing.Optional[str]` +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -6319,7 +5943,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**ids:** `typing.Optional[str]` — Comma-separated list of LinkedAccount IDs, making it possible to specify multiple LinkedAccounts at once. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -6327,7 +5951,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**include_duplicates:** `typing.Optional[bool]` — If `true`, will include complete production duplicates of the account specified by the `id` query parameter in the response. `id` must be for a complete production linked account. +**last_name:** `typing.Optional[str]` — If provided, will only return candidates with this last name.
@@ -6335,7 +5959,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**integration_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given integration name. +**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned.
@@ -6343,7 +5967,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**is_test_account:** `typing.Optional[str]` — If included, will only include test linked accounts. If not included, will only include non-test linked accounts. +**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned.
@@ -6359,7 +5983,15 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-**status:** `typing.Optional[str]` — Filter by status. Options: `COMPLETE`, `IDLE`, `INCOMPLETE`, `RELINK_NEEDED` +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
+ +
+
+ +**tags:** `typing.Optional[str]` — If provided, will only return candidates with these tags; multiple tags can be separated by commas.
@@ -6379,8 +6011,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-## Ats Offers -
client.ats.offers.list(...) +
client.ats.candidates.create(...)
@@ -6392,7 +6023,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing`
-Returns a list of `Offer` objects. +Creates a `Candidate` object with the given values.
@@ -6407,37 +6038,18 @@ Returns a list of `Offer` objects.
```python -import datetime - from merge import Merge -from merge.resources.ats.resources.offers import OffersListRequestExpand +from merge.resources.ats import CandidateRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.offers.list( - application_id="application_id", - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - creator_id="creator_id", - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - expand=OffersListRequestExpand.APPLICATION, - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - page_size=1, - remote_id="remote_id", +client.ats.candidates.create( + is_debug_mode=True, + run_async=True, + model=CandidateRequest(), + remote_user_id="remote_user_id", ) ``` @@ -6454,7 +6066,7 @@ client.ats.offers.list(
-**application_id:** `typing.Optional[str]` — If provided, will only return offers for this application. +**model:** `CandidateRequest`
@@ -6462,7 +6074,7 @@ client.ats.offers.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**remote_user_id:** `str`
@@ -6470,7 +6082,7 @@ client.ats.offers.list(
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response.
@@ -6478,7 +6090,7 @@ client.ats.offers.list(
-**creator_id:** `typing.Optional[str]` — If provided, will only return offers created by this user. +**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously.
@@ -6486,63 +6098,76 @@ client.ats.offers.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**expand:** `typing.Optional[OffersListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. -
+
+
client.ats.candidates.retrieve(...)
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). - -
-
+#### 📝 Description
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
-
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - +Returns a `Candidate` object with the given `id`. +
+
+#### 🔌 Usage +
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
-
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. - +```python +from merge import Merge +from merge.resources.ats.resources.candidates import ( + CandidatesRetrieveRequestExpand, +) + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.candidates.retrieve( + id="id", + expand=CandidatesRetrieveRequestExpand.APPLICATIONS, + include_remote_data=True, + include_shell_data=True, +) + +```
+ + + +#### ⚙️ Parameters
-**page_size:** `typing.Optional[int]` — Number of results to return per page. +
+
+ +**id:** `str`
@@ -6550,7 +6175,7 @@ client.ats.offers.list(
-**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +**expand:** `typing.Optional[CandidatesRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -6558,7 +6183,7 @@ client.ats.offers.list(
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -6566,7 +6191,7 @@ client.ats.offers.list(
-**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -6586,7 +6211,7 @@ client.ats.offers.list(
-
client.ats.offers.retrieve(...) +
client.ats.candidates.partial_update(...)
@@ -6598,7 +6223,7 @@ client.ats.offers.list(
-Returns an `Offer` object with the given `id`. +Updates a `Candidate` object with the given `id`.
@@ -6614,17 +6239,18 @@ Returns an `Offer` object with the given `id`. ```python from merge import Merge -from merge.resources.ats.resources.offers import OffersRetrieveRequestExpand +from merge.resources.ats import PatchedCandidateRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.offers.retrieve( +client.ats.candidates.partial_update( id="id", - expand=OffersRetrieveRequestExpand.APPLICATION, - include_remote_data=True, - include_shell_data=True, + is_debug_mode=True, + run_async=True, + model=PatchedCandidateRequest(), + remote_user_id="remote_user_id", ) ``` @@ -6649,15 +6275,7 @@ client.ats.offers.retrieve(
-**expand:** `typing.Optional[OffersRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**model:** `PatchedCandidateRequest`
@@ -6665,7 +6283,7 @@ client.ats.offers.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**remote_user_id:** `str`
@@ -6673,7 +6291,7 @@ client.ats.offers.retrieve(
-**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response.
@@ -6681,7 +6299,7 @@ client.ats.offers.retrieve(
-**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously.
@@ -6701,8 +6319,7 @@ client.ats.offers.retrieve(
-## Ats Offices -
client.ats.offices.list(...) +
client.ats.candidates.ignore_create(...)
@@ -6714,7 +6331,7 @@ client.ats.offers.retrieve(
-Returns a list of `Office` objects. +Ignores a specific row based on the `model_id` in the url. These records will have their properties set to null, and will not be updated in future syncs. The "reason" and "message" fields in the request body will be stored for audit purposes.
@@ -6729,33 +6346,16 @@ Returns a list of `Office` objects.
```python -import datetime - from merge import Merge +from merge.resources.ats import ReasonEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.offices.list( - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - page_size=1, - remote_id="remote_id", +client.ats.candidates.ignore_create( + model_id="model_id", + reason=ReasonEnum.GENERAL_CUSTOMER_REQUEST, ) ``` @@ -6772,7 +6372,7 @@ client.ats.offices.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**model_id:** `str`
@@ -6780,7 +6380,7 @@ client.ats.offices.list(
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**reason:** `IgnoreCommonModelRequestReason`
@@ -6788,7 +6388,7 @@ client.ats.offices.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**message:** `typing.Optional[str]`
@@ -6796,55 +6396,70 @@ client.ats.offices.list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. -
+
+
client.ats.candidates.meta_patch_retrieve(...)
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - -
-
+#### 📝 Description
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
-
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. - +Returns metadata for `Candidate` PATCHs. +
+
+#### 🔌 Usage +
-**page_size:** `typing.Optional[int]` — Number of results to return per page. - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.candidates.meta_patch_retrieve( + id="id", +) + +``` +
+
+#### ⚙️ Parameters +
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +
+
+ +**id:** `str`
@@ -6864,7 +6479,7 @@ client.ats.offices.list(
-
client.ats.offices.retrieve(...) +
client.ats.candidates.meta_post_retrieve()
@@ -6876,7 +6491,7 @@ client.ats.offices.list(
-Returns an `Office` object with the given `id`. +Returns metadata for `Candidate` POSTs.
@@ -6897,11 +6512,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.offices.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, -) +client.ats.candidates.meta_post_retrieve() ``` @@ -6917,26 +6528,64 @@ client.ats.offices.retrieve(
-**id:** `str` +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. -
-
-
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). -
+
+ +## Ats Scopes +
client.ats.scopes.default_scopes_retrieve() +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Get the default permissions for Merge Common Models and fields across all Linked Accounts of a given category. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes). +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.scopes.default_scopes_retrieve() + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
@@ -6953,8 +6602,7 @@ client.ats.offices.retrieve(
-## Ats Passthrough -
client.ats.passthrough.create(...) +
client.ats.scopes.linked_account_scopes_retrieve()
@@ -6966,7 +6614,7 @@ client.ats.offices.retrieve(
-Pull data from an endpoint not currently supported by Merge. +Get all available permissions for Merge Common Models and fields for a single Linked Account. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes).
@@ -6982,18 +6630,12 @@ Pull data from an endpoint not currently supported by Merge. ```python from merge import Merge -from merge.resources.ats import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.passthrough.create( - request=DataPassthroughRequest( - method=MethodEnum.GET, - path="/scooters", - ), -) +client.ats.scopes.linked_account_scopes_retrieve() ``` @@ -7009,14 +6651,6 @@ client.ats.passthrough.create(
-**request:** `DataPassthroughRequest` - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -7029,8 +6663,7 @@ client.ats.passthrough.create(
-## Ats RegenerateKey -
client.ats.regenerate_key.create(...) +
client.ats.scopes.linked_account_scopes_create(...)
@@ -7042,7 +6675,7 @@ client.ats.passthrough.create(
-Exchange remote keys. +Update permissions for any Common Model or field for a single Linked Account. Any Scopes not set in this POST request will inherit the default Scopes. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes)
@@ -7058,13 +6691,42 @@ Exchange remote keys. ```python from merge import Merge +from merge.resources.ats import ( + FieldPermissionDeserializerRequest, + IndividualCommonModelScopeDeserializerRequest, + ModelPermissionDeserializerRequest, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.regenerate_key.create( - name="Remote Deployment Key 1", +client.ats.scopes.linked_account_scopes_create( + common_models=[ + IndividualCommonModelScopeDeserializerRequest( + model_name="Employee", + model_permissions={ + "READ": ModelPermissionDeserializerRequest( + is_enabled=True, + ), + "WRITE": ModelPermissionDeserializerRequest( + is_enabled=False, + ), + }, + field_permissions=FieldPermissionDeserializerRequest( + enabled_fields=["avatar", "home_location"], + disabled_fields=["work_location"], + ), + ), + IndividualCommonModelScopeDeserializerRequest( + model_name="Benefit", + model_permissions={ + "WRITE": ModelPermissionDeserializerRequest( + is_enabled=False, + ) + }, + ), + ], ) ``` @@ -7081,7 +6743,7 @@ client.ats.regenerate_key.create(
-**name:** `str` — The name of the remote key +**common_models:** `typing.Sequence[IndividualCommonModelScopeDeserializerRequest]` — The common models you want to update the scopes for
@@ -7101,8 +6763,8 @@ client.ats.regenerate_key.create(
-## Ats RejectReasons -
client.ats.reject_reasons.list(...) +## Ats DeleteAccount +
client.ats.delete_account.delete()
@@ -7114,7 +6776,69 @@ client.ats.regenerate_key.create(
-Returns a list of `RejectReason` objects. +Delete a linked account. +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.delete_account.delete() + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + + + +
+ +## Ats Departments +
client.ats.departments.list(...) +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Returns a list of `Department` objects.
@@ -7137,7 +6861,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.reject_reasons.list( +client.ats.departments.list( created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -7264,7 +6988,7 @@ client.ats.reject_reasons.list(
-
client.ats.reject_reasons.retrieve(...) +
client.ats.departments.retrieve(...)
@@ -7276,7 +7000,7 @@ client.ats.reject_reasons.list(
-Returns a `RejectReason` object with the given `id`. +Returns a `Department` object with the given `id`.
@@ -7297,7 +7021,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.reject_reasons.retrieve( +client.ats.departments.retrieve( id="id", include_remote_data=True, include_shell_data=True, @@ -7353,8 +7077,8 @@ client.ats.reject_reasons.retrieve(
-## Ats Scorecards -
client.ats.scorecards.list(...) +## Ats Eeocs +
client.ats.eeocs.list(...)
@@ -7366,7 +7090,7 @@ client.ats.reject_reasons.retrieve(
-Returns a list of `Scorecard` objects. +Returns a list of `EEOC` objects.
@@ -7384,14 +7108,17 @@ Returns a list of `Scorecard` objects. import datetime from merge import Merge -from merge.resources.ats.resources.scorecards import ScorecardsListRequestExpand +from merge.resources.ats.resources.eeocs import ( + EeocsListRequestRemoteFields, + EeocsListRequestShowEnumOrigins, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.scorecards.list( - application_id="application_id", +client.ats.eeocs.list( + candidate_id="candidate_id", created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -7399,12 +7126,9 @@ client.ats.scorecards.list( "2024-01-15 09:30:00+00:00", ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - expand=ScorecardsListRequestExpand.APPLICATION, include_deleted_data=True, include_remote_data=True, include_shell_data=True, - interview_id="interview_id", - interviewer_id="interviewer_id", modified_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -7412,7 +7136,9 @@ client.ats.scorecards.list( "2024-01-15 09:30:00+00:00", ), page_size=1, + remote_fields=EeocsListRequestRemoteFields.DISABILITY_STATUS, remote_id="remote_id", + show_enum_origins=EeocsListRequestShowEnumOrigins.DISABILITY_STATUS, ) ``` @@ -7429,7 +7155,7 @@ client.ats.scorecards.list(
-**application_id:** `typing.Optional[str]` — If provided, will only return scorecards for this application. +**candidate_id:** `typing.Optional[str]` — If provided, will only return EEOC info for this candidate.
@@ -7461,7 +7187,7 @@ client.ats.scorecards.list(
-**expand:** `typing.Optional[ScorecardsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -7493,22 +7219,6 @@ client.ats.scorecards.list(
-**interview_id:** `typing.Optional[str]` — If provided, will only return scorecards for this interview. - -
-
- -
-
- -**interviewer_id:** `typing.Optional[str]` — If provided, will only return scorecards for this interviewer. - -
-
- -
-
- **modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned.
@@ -7533,7 +7243,7 @@ client.ats.scorecards.list(
-**remote_fields:** `typing.Optional[typing.Literal["overall_recommendation"]]` — Deprecated. Use show_enum_origins. +**remote_fields:** `typing.Optional[EeocsListRequestRemoteFields]` — Deprecated. Use show_enum_origins.
@@ -7549,7 +7259,7 @@ client.ats.scorecards.list(
-**show_enum_origins:** `typing.Optional[typing.Literal["overall_recommendation"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**show_enum_origins:** `typing.Optional[EeocsListRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -7569,7 +7279,7 @@ client.ats.scorecards.list(
-
client.ats.scorecards.retrieve(...) +
client.ats.eeocs.retrieve(...)
@@ -7581,7 +7291,7 @@ client.ats.scorecards.list(
-Returns a `Scorecard` object with the given `id`. +Returns an `EEOC` object with the given `id`.
@@ -7597,19 +7307,21 @@ Returns a `Scorecard` object with the given `id`. ```python from merge import Merge -from merge.resources.ats.resources.scorecards import ( - ScorecardsRetrieveRequestExpand, +from merge.resources.ats.resources.eeocs import ( + EeocsRetrieveRequestRemoteFields, + EeocsRetrieveRequestShowEnumOrigins, ) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.scorecards.retrieve( +client.ats.eeocs.retrieve( id="id", - expand=ScorecardsRetrieveRequestExpand.APPLICATION, include_remote_data=True, include_shell_data=True, + remote_fields=EeocsRetrieveRequestRemoteFields.DISABILITY_STATUS, + show_enum_origins=EeocsRetrieveRequestShowEnumOrigins.DISABILITY_STATUS, ) ``` @@ -7634,7 +7346,7 @@ client.ats.scorecards.retrieve(
-**expand:** `typing.Optional[ScorecardsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["candidate"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -7658,7 +7370,7 @@ client.ats.scorecards.retrieve(
-**remote_fields:** `typing.Optional[typing.Literal["overall_recommendation"]]` — Deprecated. Use show_enum_origins. +**remote_fields:** `typing.Optional[EeocsRetrieveRequestRemoteFields]` — Deprecated. Use show_enum_origins.
@@ -7666,7 +7378,7 @@ client.ats.scorecards.retrieve(
-**show_enum_origins:** `typing.Optional[typing.Literal["overall_recommendation"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**show_enum_origins:** `typing.Optional[EeocsRetrieveRequestShowEnumOrigins]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -7686,8 +7398,8 @@ client.ats.scorecards.retrieve(
-## Ats SyncStatus -
client.ats.sync_status.list(...) +## Ats FieldMapping +
client.ats.field_mapping.field_mappings_retrieve(...)
@@ -7699,7 +7411,7 @@ client.ats.scorecards.retrieve(
-Get sync status for the current sync and the most recently finished sync. `last_sync_start` represents the most recent time any sync began. `last_sync_finished` represents the most recent time any sync completed. These timestamps may correspond to different sync instances which may result in a sync start time being later than a separate sync completed time. To ensure you are retrieving the latest available data reference the `last_sync_finished` timestamp where `last_sync_result` is `DONE`. Possible values for `status` and `last_sync_result` are `DISABLED`, `DONE`, `FAILED`, `PARTIALLY_SYNCED`, `PAUSED`, `SYNCING`. Learn more about sync status in our [Help Center](https://help.merge.dev/en/articles/8184193-merge-sync-statuses). +Get all Field Mappings for this Linked Account. Field Mappings are mappings between third-party Remote Fields and user defined Merge fields. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/).
@@ -7720,10 +7432,9 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.sync_status.list( - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - page_size=1, -) +client.ats.field_mapping.field_mappings_retrieve( + exclude_remote_field_metadata=True, +) ``` @@ -7739,15 +7450,7 @@ client.ats.sync_status.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. - -
-
- -
-
- -**page_size:** `typing.Optional[int]` — Number of results to return per page. +**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations.
@@ -7767,8 +7470,7 @@ client.ats.sync_status.list(
-## Ats ForceResync -
client.ats.force_resync.sync_status_resync_create() +
client.ats.field_mapping.field_mappings_create(...)
@@ -7780,7 +7482,7 @@ client.ats.sync_status.list(
-Force re-sync of all models. This endpoint is available for monthly, quarterly, and highest sync frequency customers on the Professional or Enterprise plans. Doing so will consume a sync credit for the relevant linked account. Force re-syncs can also be triggered manually in the Merge Dashboard and is available for all customers. +Create new Field Mappings that will be available after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start.
@@ -7801,7 +7503,15 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.force_resync.sync_status_resync_create() +client.ats.field_mapping.field_mappings_create( + exclude_remote_field_metadata=True, + target_field_name="example_target_field_name", + target_field_description="this is a example description of the target field", + remote_field_traversal_path=["example_remote_field"], + remote_method="GET", + remote_url_path="/example-url-path", + common_model_name="ExampleCommonModel", +) ``` @@ -7817,90 +7527,31 @@ client.ats.force_resync.sync_status_resync_create()
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**target_field_name:** `str` — The name of the target field you want this remote field to map to.
- -
- - - - -
- -## Ats Tags -
client.ats.tags.list(...) -
-
- -#### 📝 Description
-
-
- -Returns a list of `Tag` objects. -
-
+**target_field_description:** `str` — The description of the target field you want this remote field to map to. +
-#### 🔌 Usage - -
-
-
-```python -import datetime - -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.ats.tags.list( - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - page_size=1, - remote_id="remote_id", -) - -``` -
-
+**remote_field_traversal_path:** `typing.Sequence[typing.Optional[typing.Any]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint. +
-#### ⚙️ Parameters - -
-
-
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**remote_method:** `str` — The method of the remote endpoint where the remote field is coming from.
@@ -7908,7 +7559,7 @@ client.ats.tags.list(
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**remote_url_path:** `str` — The path of the remote endpoint where the remote field is coming from.
@@ -7916,7 +7567,7 @@ client.ats.tags.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**common_model_name:** `str` — The name of the Common Model that the remote field corresponds to in a given category.
@@ -7924,7 +7575,7 @@ client.ats.tags.list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations.
@@ -7932,47 +7583,70 @@ client.ats.tags.list(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). -
+
+
client.ats.field_mapping.field_mappings_destroy(...)
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
+#### 📝 Description
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. - +
+
+ +Deletes Field Mappings for a Linked Account. All data related to this Field Mapping will be deleted and these changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. +
+
+#### 🔌 Usage +
-**page_size:** `typing.Optional[int]` — Number of results to return per page. - +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.field_mapping.field_mappings_destroy( + field_mapping_id="field_mapping_id", +) + +``` +
+
+#### ⚙️ Parameters +
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +
+
+ +**field_mapping_id:** `str`
@@ -7992,8 +7666,7 @@ client.ats.tags.list(
-## Ats Users -
client.ats.users.list(...) +
client.ats.field_mapping.field_mappings_partial_update(...)
@@ -8005,7 +7678,7 @@ client.ats.tags.list(
-Returns a list of `RemoteUser` objects. +Create or update existing Field Mappings for a Linked Account. Changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start.
@@ -8020,34 +7693,14 @@ Returns a list of `RemoteUser` objects.
```python -import datetime - from merge import Merge client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.users.list( - created_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - created_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - email="email", - include_deleted_data=True, - include_remote_data=True, - include_shell_data=True, - modified_after=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - modified_before=datetime.datetime.fromisoformat( - "2024-01-15 09:30:00+00:00", - ), - page_size=1, - remote_id="remote_id", +client.ats.field_mapping.field_mappings_partial_update( + field_mapping_id="field_mapping_id", ) ``` @@ -8064,7 +7717,7 @@ client.ats.users.list(
-**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. +**field_mapping_id:** `str`
@@ -8072,7 +7725,7 @@ client.ats.users.list(
-**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +**remote_field_traversal_path:** `typing.Optional[typing.Sequence[typing.Optional[typing.Any]]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint.
@@ -8080,7 +7733,7 @@ client.ats.users.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**remote_method:** `typing.Optional[str]` — The method of the remote endpoint where the remote field is coming from.
@@ -8088,7 +7741,7 @@ client.ats.users.list(
-**email:** `typing.Optional[str]` — If provided, will only return remote users with the given email address +**remote_url_path:** `typing.Optional[str]` — The path of the remote endpoint where the remote field is coming from.
@@ -8096,63 +7749,71 @@ client.ats.users.list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
-
-
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. -
+
+
client.ats.field_mapping.remote_fields_retrieve(...)
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - -
-
+#### 📝 Description
-**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
-
-**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. - +Get all remote fields for a Linked Account. Remote fields are third-party fields that are accessible after initial sync if remote_data is enabled. You can use remote fields to override existing Merge fields or map a new Merge field. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/).
+ + + +#### 🔌 Usage
-**page_size:** `typing.Optional[int]` — Number of results to return per page. - -
-
-
-**remote_fields:** `typing.Optional[typing.Literal["access_role"]]` — Deprecated. Use show_enum_origins. - +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.field_mapping.remote_fields_retrieve( + common_models="common_models", + include_example_values="include_example_values", +) + +```
+ + + +#### ⚙️ Parameters
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +
+
+ +**common_models:** `typing.Optional[str]` — A comma seperated list of Common Model names. If included, will only return Remote Fields for those Common Models.
@@ -8160,7 +7821,7 @@ client.ats.users.list(
-**show_enum_origins:** `typing.Optional[typing.Literal["access_role"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) +**include_example_values:** `typing.Optional[str]` — If true, will include example values, where available, for remote fields in the 3rd party platform. These examples come from active data from your customers.
@@ -8180,7 +7841,7 @@ client.ats.users.list(
-
client.ats.users.retrieve(...) +
client.ats.field_mapping.target_fields_retrieve()
@@ -8192,7 +7853,7 @@ client.ats.users.list(
-Returns a `RemoteUser` object with the given `id`. +Get all organization-wide Target Fields, this will not include any Linked Account specific Target Fields. Organization-wide Target Fields are additional fields appended to the Merge Common Model for all Linked Accounts in a category. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/target-fields/).
@@ -8213,11 +7874,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.users.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, -) +client.ats.field_mapping.target_fields_retrieve() ``` @@ -8233,46 +7890,6 @@ client.ats.users.retrieve(
-**id:** `str` - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
- -
-
- -**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - -
-
- -
-
- -**remote_fields:** `typing.Optional[typing.Literal["access_role"]]` — Deprecated. Use show_enum_origins. - -
-
- -
-
- -**show_enum_origins:** `typing.Optional[typing.Literal["access_role"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -8285,8 +7902,8 @@ client.ats.users.retrieve(
-## Ats WebhookReceivers -
client.ats.webhook_receivers.list() +## Ats GenerateKey +
client.ats.generate_key.create(...)
@@ -8298,7 +7915,7 @@ client.ats.users.retrieve(
-Returns a list of `WebhookReceiver` objects. +Create a remote key.
@@ -8319,7 +7936,9 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.webhook_receivers.list() +client.ats.generate_key.create( + name="Remote Deployment Key 1", +) ``` @@ -8335,6 +7954,14 @@ client.ats.webhook_receivers.list()
+**name:** `str` — The name of the remote key + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -8347,7 +7974,8 @@ client.ats.webhook_receivers.list()
-
client.ats.webhook_receivers.create(...) +## Ats Interviews +
client.ats.interviews.list(...)
@@ -8359,7 +7987,7 @@ client.ats.webhook_receivers.list()
-Creates a `WebhookReceiver` object with the given values. +Returns a list of `ScheduledInterview` objects.
@@ -8374,15 +8002,39 @@ Creates a `WebhookReceiver` object with the given values.
```python +import datetime + from merge import Merge +from merge.resources.ats.resources.interviews import InterviewsListRequestExpand client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.ats.webhook_receivers.create( - event="event", - is_active=True, +client.ats.interviews.list( + application_id="application_id", + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + expand=InterviewsListRequestExpand.APPLICATION, + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + job_id="job_id", + job_interview_stage_id="job_interview_stage_id", + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + organizer_id="organizer_id", + page_size=1, + remote_id="remote_id", ) ``` @@ -8399,7 +8051,7 @@ client.ats.webhook_receivers.create(
-**event:** `str` +**application_id:** `typing.Optional[str]` — If provided, will only return interviews for this application.
@@ -8407,7 +8059,7 @@ client.ats.webhook_receivers.create(
-**is_active:** `bool` +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -8415,7 +8067,7 @@ client.ats.webhook_receivers.create(
-**key:** `typing.Optional[str]` +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -8423,65 +8075,115 @@ client.ats.webhook_receivers.create(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
+ +
+
+ +**expand:** `typing.Optional[InterviewsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +
+
+
+**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +
-
-## Chat AccountDetails -
client.chat.account_details.retrieve()
-#### 📝 Description +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+
-Get details for a linked account. +**job_id:** `typing.Optional[str]` — If provided, wll only return interviews organized for this job. +
+ +
+
+ +**job_interview_stage_id:** `typing.Optional[str]` — If provided, will only return interviews at this stage. +
-#### 🔌 Usage +
+
+ +**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + +
+
+**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. + +
+
+
-```python -from merge import Merge +**organizer_id:** `typing.Optional[str]` — If provided, will only return interviews organized by this user. + +
+
-client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.account_details.retrieve() +
+
-``` +**page_size:** `typing.Optional[int]` — Number of results to return per page. +
+ +
+
+ +**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +
-#### ⚙️ Parameters +
+
+ +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
+**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) + +
+
+
@@ -8497,8 +8199,7 @@ client.chat.account_details.retrieve()
-## Chat AccountToken -
client.chat.account_token.retrieve(...) +
client.ats.interviews.create(...)
@@ -8510,7 +8211,7 @@ client.chat.account_details.retrieve()
-Returns the account token for the end user with the provided public token. +Creates a `ScheduledInterview` object with the given values.
@@ -8526,13 +8227,17 @@ Returns the account token for the end user with the provided public token. ```python from merge import Merge +from merge.resources.ats import ScheduledInterviewRequest client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.account_token.retrieve( - public_token="public_token", +client.ats.interviews.create( + is_debug_mode=True, + run_async=True, + model=ScheduledInterviewRequest(), + remote_user_id="remote_user_id", ) ``` @@ -8549,7 +8254,31 @@ client.chat.account_token.retrieve(
-**public_token:** `str` +**model:** `ScheduledInterviewRequest` + +
+
+ +
+
+ +**remote_user_id:** `str` + +
+
+ +
+
+ +**is_debug_mode:** `typing.Optional[bool]` — Whether to include debug fields (such as log file links) in the response. + +
+
+ +
+
+ +**run_async:** `typing.Optional[bool]` — Whether or not third-party updates should be run asynchronously.
@@ -8569,8 +8298,7 @@ client.chat.account_token.retrieve(
-## Chat AsyncPassthrough -
client.chat.async_passthrough.create(...) +
client.ats.interviews.retrieve(...)
@@ -8582,7 +8310,7 @@ client.chat.account_token.retrieve(
-Asynchronously pull data from an endpoint not currently supported by Merge. +Returns a `ScheduledInterview` object with the given `id`.
@@ -8598,17 +8326,19 @@ Asynchronously pull data from an endpoint not currently supported by Merge. ```python from merge import Merge -from merge.resources.chat import DataPassthroughRequest, MethodEnum +from merge.resources.ats.resources.interviews import ( + InterviewsRetrieveRequestExpand, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.async_passthrough.create( - request=DataPassthroughRequest( - method=MethodEnum.GET, - path="/scooters", - ), +client.ats.interviews.retrieve( + id="id", + expand=InterviewsRetrieveRequestExpand.APPLICATION, + include_remote_data=True, + include_shell_data=True, ) ``` @@ -8625,7 +8355,7 @@ client.chat.async_passthrough.create(
-**request:** `DataPassthroughRequest` +**id:** `str`
@@ -8633,19 +8363,59 @@ client.chat.async_passthrough.create(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**expand:** `typing.Optional[InterviewsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
- -
+
+
+**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +
-
-
client.chat.async_passthrough.retrieve(...) +
+
+ +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+ +
+
+ +**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. + +
+
+ +
+
+ +**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+ + + + + + +
+ +
client.ats.interviews.meta_post_retrieve()
@@ -8657,7 +8427,7 @@ client.chat.async_passthrough.create(
-Retrieves data from earlier async-passthrough POST request +Returns metadata for `ScheduledInterview` POSTs.
@@ -8678,9 +8448,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.async_passthrough.retrieve( - async_passthrough_receipt_id="async_passthrough_receipt_id", -) +client.ats.interviews.meta_post_retrieve() ``` @@ -8696,14 +8464,6 @@ client.chat.async_passthrough.retrieve(
-**async_passthrough_receipt_id:** `str` - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -8716,8 +8476,8 @@ client.chat.async_passthrough.retrieve(
-## Chat AuditTrail -
client.chat.audit_trail.list(...) +## Ats Issues +
client.ats.issues.list(...)
@@ -8729,7 +8489,7 @@ client.chat.async_passthrough.retrieve(
-Gets a list of audit trail events. +Gets all issues for Organization.
@@ -8744,19 +8504,38 @@ Gets a list of audit trail events.
```python +import datetime + from merge import Merge +from merge.resources.ats.resources.issues import IssuesListRequestStatus client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.audit_trail.list( +client.ats.issues.list( + account_token="account_token", cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", end_date="end_date", - event_type="event_type", + end_user_organization_name="end_user_organization_name", + first_incident_time_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + first_incident_time_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + include_muted="include_muted", + integration_name="integration_name", + last_incident_time_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + last_incident_time_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + linked_account_id="linked_account_id", page_size=1, start_date="start_date", - user_email="user_email", + status=IssuesListRequestStatus.ONGOING, ) ``` @@ -8773,6 +8552,14 @@ client.chat.audit_trail.list(
+**account_token:** `typing.Optional[str]` + +
+
+ +
+
+ **cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -8781,7 +8568,7 @@ client.chat.audit_trail.list(
-**end_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred before this time +**end_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred before this time
@@ -8789,7 +8576,7 @@ client.chat.audit_trail.list(
-**event_type:** `typing.Optional[str]` — If included, will only include events with the given event type. Possible values include: `CREATED_REMOTE_PRODUCTION_API_KEY`, `DELETED_REMOTE_PRODUCTION_API_KEY`, `CREATED_TEST_API_KEY`, `DELETED_TEST_API_KEY`, `REGENERATED_PRODUCTION_API_KEY`, `REGENERATED_WEBHOOK_SIGNATURE`, `INVITED_USER`, `TWO_FACTOR_AUTH_ENABLED`, `TWO_FACTOR_AUTH_DISABLED`, `DELETED_LINKED_ACCOUNT`, `DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT`, `CREATED_DESTINATION`, `DELETED_DESTINATION`, `CHANGED_DESTINATION`, `CHANGED_SCOPES`, `CHANGED_PERSONAL_INFORMATION`, `CHANGED_ORGANIZATION_SETTINGS`, `ENABLED_INTEGRATION`, `DISABLED_INTEGRATION`, `ENABLED_CATEGORY`, `DISABLED_CATEGORY`, `CHANGED_PASSWORD`, `RESET_PASSWORD`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION`, `DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT`, `CREATED_INTEGRATION_WIDE_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_FIELD_MAPPING`, `CHANGED_INTEGRATION_WIDE_FIELD_MAPPING`, `CHANGED_LINKED_ACCOUNT_FIELD_MAPPING`, `DELETED_INTEGRATION_WIDE_FIELD_MAPPING`, `DELETED_LINKED_ACCOUNT_FIELD_MAPPING`, `CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE`, `FORCED_LINKED_ACCOUNT_RESYNC`, `MUTED_ISSUE`, `GENERATED_MAGIC_LINK`, `ENABLED_MERGE_WEBHOOK`, `DISABLED_MERGE_WEBHOOK`, `MERGE_WEBHOOK_TARGET_CHANGED`, `END_USER_CREDENTIALS_ACCESSED` +**end_user_organization_name:** `typing.Optional[str]`
@@ -8797,7 +8584,7 @@ client.chat.audit_trail.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**first_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was after this datetime.
@@ -8805,7 +8592,7 @@ client.chat.audit_trail.list(
-**start_date:** `typing.Optional[str]` — If included, will only include audit trail events that occurred after this time +**first_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was before this datetime.
@@ -8813,7 +8600,68 @@ client.chat.audit_trail.list(
-**user_email:** `typing.Optional[str]` — If provided, this will return events associated with the specified user email. Please note that the email address reflects the user's email at the time of the event, and may not be their current email. +**include_muted:** `typing.Optional[str]` — If true, will include muted issues + +
+
+ +
+
+ +**integration_name:** `typing.Optional[str]` + +
+
+ +
+
+ +**last_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was after this datetime. + +
+
+ +
+
+ +**last_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was before this datetime. + +
+
+ +
+
+ +**linked_account_id:** `typing.Optional[str]` — If provided, will only include issues pertaining to the linked account passed in. + +
+
+ +
+
+ +**page_size:** `typing.Optional[int]` — Number of results to return per page. + +
+
+ +
+
+ +**start_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred after this time + +
+
+ +
+
+ +**status:** `typing.Optional[IssuesListRequestStatus]` + +Status of the issue. Options: ('ONGOING', 'RESOLVED') + +* `ONGOING` - ONGOING +* `RESOLVED` - RESOLVED
@@ -8833,8 +8681,7 @@ client.chat.audit_trail.list(
-## Chat AvailableActions -
client.chat.available_actions.retrieve() +
client.ats.issues.retrieve(...)
@@ -8846,7 +8693,7 @@ client.chat.audit_trail.list(
-Returns a list of models and actions available for an account. +Get a specific issue.
@@ -8867,7 +8714,9 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.available_actions.retrieve() +client.ats.issues.retrieve( + id="id", +) ``` @@ -8883,6 +8732,14 @@ client.chat.available_actions.retrieve()
+**id:** `str` + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -8895,8 +8752,8 @@ client.chat.available_actions.retrieve()
-## Chat Conversations -
client.chat.conversations.list(...) +## Ats JobInterviewStages +
client.ats.job_interview_stages.list(...)
@@ -8908,7 +8765,7 @@ client.chat.available_actions.retrieve()
-Returns a list of `Conversation` objects. +Returns a list of `JobInterviewStage` objects.
@@ -8931,7 +8788,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.conversations.list( +client.ats.job_interview_stages.list( created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -8942,6 +8799,7 @@ client.chat.conversations.list( include_deleted_data=True, include_remote_data=True, include_shell_data=True, + job_id="job_id", modified_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -8990,7 +8848,7 @@ client.chat.conversations.list(
-**expand:** `typing.Optional[typing.Literal["members"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -9022,6 +8880,14 @@ client.chat.conversations.list(
+**job_id:** `typing.Optional[str]` — If provided, will only return interview stages for this job. + +
+
+ +
+
+ **modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned.
@@ -9038,7 +8904,7 @@ client.chat.conversations.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -9066,7 +8932,7 @@ client.chat.conversations.list(
-
client.chat.conversations.members_list(...) +
client.ats.job_interview_stages.retrieve(...)
@@ -9078,7 +8944,7 @@ client.chat.conversations.list(
-Returns a list of `Member` objects. +Returns a `JobInterviewStage` object with the given `id`.
@@ -9094,22 +8960,15 @@ Returns a list of `Member` objects. ```python from merge import Merge -from merge.resources.chat.resources.conversations import ( - ConversationsMembersListRequestExpand, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.conversations.members_list( - conversation_id="conversation_id", - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - expand=ConversationsMembersListRequestExpand.GROUP, - include_deleted_data=True, +client.ats.job_interview_stages.retrieve( + id="id", include_remote_data=True, include_shell_data=True, - page_size=1, ) ``` @@ -9126,23 +8985,7 @@ client.chat.conversations.members_list(
-**conversation_id:** `str` - -
-
- -
-
- -**cursor:** `typing.Optional[str]` — The pagination cursor value. - -
-
- -
-
- -**expand:** `typing.Optional[ConversationsMembersListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**id:** `str`
@@ -9150,7 +8993,7 @@ client.chat.conversations.members_list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -9174,14 +9017,6 @@ client.chat.conversations.members_list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -9194,7 +9029,8 @@ client.chat.conversations.members_list(
-
client.chat.conversations.retrieve(...) +## Ats JobPostings +
client.ats.job_postings.list(...)
@@ -9206,7 +9042,7 @@ client.chat.conversations.members_list(
-Returns a `Conversation` object with the given `id`. +Returns a list of `JobPosting` objects.
@@ -9221,16 +9057,37 @@ Returns a `Conversation` object with the given `id`.
```python +import datetime + from merge import Merge +from merge.resources.ats.resources.job_postings import ( + JobPostingsListRequestStatus, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.conversations.retrieve( - id="id", +client.ats.job_postings.list( + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + include_deleted_data=True, include_remote_data=True, include_shell_data=True, + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + page_size=1, + remote_id="remote_id", + status=JobPostingsListRequestStatus.CLOSED, ) ``` @@ -9247,7 +9104,7 @@ client.chat.conversations.retrieve(
-**id:** `str` +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -9255,7 +9112,7 @@ client.chat.conversations.retrieve(
-**expand:** `typing.Optional[typing.Literal["members"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -9263,7 +9120,7 @@ client.chat.conversations.retrieve(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -9271,7 +9128,7 @@ client.chat.conversations.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -9279,65 +9136,75 @@ client.chat.conversations.retrieve(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
-
-
+
+
+**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +
-
-## Chat Scopes -
client.chat.scopes.default_scopes_retrieve()
-#### 📝 Description +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + +
+
+
-Get the default permissions for Merge Common Models and fields across all Linked Accounts of a given category. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes). +**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. +
+ +
+
+ +**page_size:** `typing.Optional[int]` — Number of results to return per page. +
-#### 🔌 Usage -
+**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
+
-```python -from merge import Merge +**status:** `typing.Optional[JobPostingsListRequestStatus]` -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.scopes.default_scopes_retrieve() +If provided, will only return Job Postings with this status. Options: ('PUBLISHED', 'CLOSED', 'DRAFT', 'INTERNAL', 'PENDING') -``` -
-
+* `PUBLISHED` - PUBLISHED +* `CLOSED` - CLOSED +* `DRAFT` - DRAFT +* `INTERNAL` - INTERNAL +* `PENDING` - PENDING + -#### ⚙️ Parameters - -
-
-
@@ -9353,7 +9220,7 @@ client.chat.scopes.default_scopes_retrieve()
-
client.chat.scopes.linked_account_scopes_retrieve() +
client.ats.job_postings.retrieve(...)
@@ -9365,7 +9232,7 @@ client.chat.scopes.default_scopes_retrieve()
-Get all available permissions for Merge Common Models and fields for a single Linked Account. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes). +Returns a `JobPosting` object with the given `id`.
@@ -9386,7 +9253,11 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.scopes.linked_account_scopes_retrieve() +client.ats.job_postings.retrieve( + id="id", + include_remote_data=True, + include_shell_data=True, +) ``` @@ -9402,6 +9273,38 @@ client.chat.scopes.linked_account_scopes_retrieve()
+**id:** `str` + +
+
+ +
+
+ +**expand:** `typing.Optional[typing.Literal["job"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. + +
+
+ +
+
+ +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+ +
+
+ +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -9414,7 +9317,8 @@ client.chat.scopes.linked_account_scopes_retrieve()
-
client.chat.scopes.linked_account_scopes_create(...) +## Ats Jobs +
client.ats.jobs.list(...)
@@ -9426,7 +9330,7 @@ client.chat.scopes.linked_account_scopes_retrieve()
-Update permissions for any Common Model or field for a single Linked Account. Any Scopes not set in this POST request will inherit the default Scopes. [Learn more](https://help.merge.dev/en/articles/5950052-common-model-and-field-scopes) +Returns a list of `Job` objects.
@@ -9441,43 +9345,41 @@ Update permissions for any Common Model or field for a single Linked Account. An
```python +import datetime + from merge import Merge -from merge.resources.chat import ( - FieldPermissionDeserializerRequest, - IndividualCommonModelScopeDeserializerRequest, - ModelPermissionDeserializerRequest, +from merge.resources.ats.resources.jobs import ( + JobsListRequestExpand, + JobsListRequestStatus, ) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.scopes.linked_account_scopes_create( - common_models=[ - IndividualCommonModelScopeDeserializerRequest( - model_name="Employee", - model_permissions={ - "READ": ModelPermissionDeserializerRequest( - is_enabled=True, - ), - "WRITE": ModelPermissionDeserializerRequest( - is_enabled=False, - ), - }, - field_permissions=FieldPermissionDeserializerRequest( - enabled_fields=["avatar", "home_location"], - disabled_fields=["work_location"], - ), - ), - IndividualCommonModelScopeDeserializerRequest( - model_name="Benefit", - model_permissions={ - "WRITE": ModelPermissionDeserializerRequest( - is_enabled=False, - ) - }, - ), - ], +client.ats.jobs.list( + code="code", + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + expand=JobsListRequestExpand.DEPARTMENTS, + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + offices="offices", + page_size=1, + remote_id="remote_id", + status=JobsListRequestStatus.ARCHIVED, ) ``` @@ -9494,7 +9396,7 @@ client.chat.scopes.linked_account_scopes_create(
-**common_models:** `typing.Sequence[IndividualCommonModelScopeDeserializerRequest]` — The common models you want to update the scopes for +**code:** `typing.Optional[str]` — If provided, will only return jobs with this code.
@@ -9502,65 +9404,131 @@ client.chat.scopes.linked_account_scopes_create(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
+ +
+
+ +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime. +
+
+
+**cursor:** `typing.Optional[str]` — The pagination cursor value. +
-
-## Chat DeleteAccount -
client.chat.delete_account.delete()
-#### 📝 Description +**expand:** `typing.Optional[JobsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. + +
+
+**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). + +
+
+
-Delete a linked account. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +
+ +
+
+ +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +
-#### 🔌 Usage +
+
+ +**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + +
+
+**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. + +
+
+
-```python -from merge import Merge +**offices:** `typing.Optional[str]` — If provided, will only return jobs for this office; multiple offices can be separated by commas. + +
+
-client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.delete_account.delete() +
+
-``` +**page_size:** `typing.Optional[int]` — Number of results to return per page. +
+ +
+
+ +**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. +
-#### ⚙️ Parameters +
+
+ +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
+**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) + +
+
+ +
+
+ +**status:** `typing.Optional[JobsListRequestStatus]` + +If provided, will only return jobs with this status. Options: ('OPEN', 'CLOSED', 'DRAFT', 'ARCHIVED', 'PENDING') + +* `OPEN` - OPEN +* `CLOSED` - CLOSED +* `DRAFT` - DRAFT +* `ARCHIVED` - ARCHIVED +* `PENDING` - PENDING + +
+
+
@@ -9576,8 +9544,7 @@ client.chat.delete_account.delete()
-## Chat FieldMapping -
client.chat.field_mapping.field_mappings_retrieve(...) +
client.ats.jobs.retrieve(...)
@@ -9589,7 +9556,7 @@ client.chat.delete_account.delete()
-Get all Field Mappings for this Linked Account. Field Mappings are mappings between third-party Remote Fields and user defined Merge fields. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/). +Returns a `Job` object with the given `id`.
@@ -9605,13 +9572,17 @@ Get all Field Mappings for this Linked Account. Field Mappings are mappings betw ```python from merge import Merge +from merge.resources.ats.resources.jobs import JobsRetrieveRequestExpand client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.field_mapping.field_mappings_retrieve( - exclude_remote_field_metadata=True, +client.ats.jobs.retrieve( + id="id", + expand=JobsRetrieveRequestExpand.DEPARTMENTS, + include_remote_data=True, + include_shell_data=True, ) ``` @@ -9628,7 +9599,47 @@ client.chat.field_mapping.field_mappings_retrieve(
-**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations. +**id:** `str` + +
+
+ +
+
+ +**expand:** `typing.Optional[JobsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. + +
+
+ +
+
+ +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+ +
+
+ +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+ +
+
+ +**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. + +
+
+ +
+
+ +**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -9648,7 +9659,7 @@ client.chat.field_mapping.field_mappings_retrieve(
-
client.chat.field_mapping.field_mappings_create(...) +
client.ats.jobs.screening_questions_list(...)
@@ -9660,7 +9671,7 @@ client.chat.field_mapping.field_mappings_retrieve(
-Create new Field Mappings that will be available after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. +Returns a list of `ScreeningQuestion` objects.
@@ -9676,19 +9687,22 @@ Create new Field Mappings that will be available after the next scheduled sync. ```python from merge import Merge +from merge.resources.ats.resources.jobs import ( + JobsScreeningQuestionsListRequestExpand, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.field_mapping.field_mappings_create( - exclude_remote_field_metadata=True, - target_field_name="example_target_field_name", - target_field_description="this is a example description of the target field", - remote_field_traversal_path=["example_remote_field"], - remote_method="GET", - remote_url_path="/example-url-path", - common_model_name="ExampleCommonModel", +client.ats.jobs.screening_questions_list( + job_id="job_id", + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + expand=JobsScreeningQuestionsListRequestExpand.JOB, + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + page_size=1, ) ``` @@ -9697,23 +9711,15 @@ client.chat.field_mapping.field_mappings_create(
-#### ⚙️ Parameters - -
-
- -
-
- -**target_field_name:** `str` — The name of the target field you want this remote field to map to. - -
-
+#### ⚙️ Parameters
-**target_field_description:** `str` — The description of the target field you want this remote field to map to. +
+
+ +**job_id:** `str`
@@ -9721,7 +9727,7 @@ client.chat.field_mapping.field_mappings_create(
-**remote_field_traversal_path:** `typing.Sequence[typing.Optional[typing.Any]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -9729,7 +9735,7 @@ client.chat.field_mapping.field_mappings_create(
-**remote_method:** `str` — The method of the remote endpoint where the remote field is coming from. +**expand:** `typing.Optional[JobsScreeningQuestionsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -9737,7 +9743,7 @@ client.chat.field_mapping.field_mappings_create(
-**remote_url_path:** `str` — The path of the remote endpoint where the remote field is coming from. +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -9745,7 +9751,7 @@ client.chat.field_mapping.field_mappings_create(
-**common_model_name:** `str` — The name of the Common Model that the remote field corresponds to in a given category. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -9753,7 +9759,7 @@ client.chat.field_mapping.field_mappings_create(
-**exclude_remote_field_metadata:** `typing.Optional[bool]` — If `true`, remote fields metadata is excluded from each field mapping instance (i.e. `remote_fields.remote_key_name` and `remote_fields.schema` will be null). This will increase the speed of the request since these fields require some calculations. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -9761,7 +9767,7 @@ client.chat.field_mapping.field_mappings_create(
-**jmes_path:** `typing.Optional[str]` — JMES path to specify json query expression to be used on field mapping. +**page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -9781,7 +9787,8 @@ client.chat.field_mapping.field_mappings_create(
-
client.chat.field_mapping.field_mappings_destroy(...) +## Ats LinkToken +
client.ats.link_token.create(...)
@@ -9793,7 +9800,7 @@ client.chat.field_mapping.field_mappings_create(
-Deletes Field Mappings for a Linked Account. All data related to this Field Mapping will be deleted and these changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. +Creates a link token to be used when linking a new end user.
@@ -9809,13 +9816,17 @@ Deletes Field Mappings for a Linked Account. All data related to this Field Mapp ```python from merge import Merge +from merge.resources.ats import CategoriesEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.field_mapping.field_mappings_destroy( - field_mapping_id="field_mapping_id", +client.ats.link_token.create( + end_user_email_address="example@gmail.com", + end_user_organization_name="Test Organization", + end_user_origin_id="12345", + categories=[CategoriesEnum.HRIS, CategoriesEnum.ATS], ) ``` @@ -9832,7 +9843,7 @@ client.chat.field_mapping.field_mappings_destroy(
-**field_mapping_id:** `str` +**end_user_email_address:** `str` — Your end user's email address. This is purely for identification purposes - setting this value will not cause any emails to be sent.
@@ -9840,70 +9851,63 @@ client.chat.field_mapping.field_mappings_destroy(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**end_user_organization_name:** `str` — Your end user's organization.
- -
+
+
+**end_user_origin_id:** `str` — This unique identifier typically represents the ID for your end user in your product's database. This value must be distinct from other Linked Accounts' unique identifiers. +
-
-
client.chat.field_mapping.field_mappings_partial_update(...)
-#### 📝 Description - -
-
+**categories:** `typing.Sequence[CategoriesEnum]` — The integration categories to show in Merge Link. + +
+
-Create or update existing Field Mappings for a Linked Account. Changes will be reflected after the next scheduled sync. This will cause the next sync for this Linked Account to sync **ALL** data from start. -
-
+**integration:** `typing.Optional[str]` — The slug of a specific pre-selected integration for this linking flow token. For examples of slugs, see https://docs.merge.dev/guides/merge-link/single-integration/. +
-#### 🔌 Usage -
+**link_expiry_mins:** `typing.Optional[int]` — An integer number of minutes between [30, 720 or 10080 if for a Magic Link URL] for how long this token is valid. Defaults to 30. + +
+
+
-```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.field_mapping.field_mappings_partial_update( - field_mapping_id="field_mapping_id", -) - -``` -
-
+**should_create_magic_link_url:** `typing.Optional[bool]` — Whether to generate a Magic Link URL. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. + -#### ⚙️ Parameters -
+**hide_admin_magic_link:** `typing.Optional[bool]` — Whether to generate a Magic Link URL on the Admin Needed screen during the linking flow. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. + +
+
+
-**field_mapping_id:** `str` +**common_models:** `typing.Optional[typing.Sequence[CommonModelScopesBodyRequest]]` — An array of objects to specify the models and fields that will be disabled for a given Linked Account. Each object uses model_id, enabled_actions, and disabled_fields to specify the model, method, and fields that are scoped for a given Linked Account.
@@ -9911,7 +9915,14 @@ client.chat.field_mapping.field_mappings_partial_update(
-**remote_field_traversal_path:** `typing.Optional[typing.Sequence[typing.Optional[typing.Any]]]` — The field traversal path of the remote field listed when you hit the GET /remote-fields endpoint. +**category_common_model_scopes:** `typing.Optional[ + typing.Dict[ + str, + typing.Optional[ + typing.Sequence[IndividualCommonModelScopeDeserializerRequest] + ], + ] +]` — When creating a Link Token, you can set permissions for Common Models that will apply to the account that is going to be linked. Any model or field not specified in link token payload will default to existing settings.
@@ -9919,7 +9930,12 @@ client.chat.field_mapping.field_mappings_partial_update(
-**remote_method:** `typing.Optional[str]` — The method of the remote endpoint where the remote field is coming from. +**language:** `typing.Optional[EndUserDetailsRequestLanguage]` + +The following subset of IETF language tags can be used to configure localization. + +* `en` - en +* `de` - de
@@ -9927,7 +9943,7 @@ client.chat.field_mapping.field_mappings_partial_update(
-**remote_url_path:** `typing.Optional[str]` — The path of the remote endpoint where the remote field is coming from. +**are_syncs_disabled:** `typing.Optional[bool]` — The boolean that indicates whether initial, periodic, and force syncs will be disabled.
@@ -9935,7 +9951,7 @@ client.chat.field_mapping.field_mappings_partial_update(
-**jmes_path:** `typing.Optional[str]` — JMES path to specify json query expression to be used on field mapping. +**integration_specific_config:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — A JSON object containing integration-specific configuration options.
@@ -9955,7 +9971,8 @@ client.chat.field_mapping.field_mappings_partial_update(
-
client.chat.field_mapping.remote_fields_retrieve(...) +## Ats LinkedAccounts +
client.ats.linked_accounts.list(...)
@@ -9967,7 +9984,7 @@ client.chat.field_mapping.field_mappings_partial_update(
-Get all remote fields for a Linked Account. Remote fields are third-party fields that are accessible after initial sync if remote_data is enabled. You can use remote fields to override existing Merge fields or map a new Merge field. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/overview/). +List linked accounts for your organization.
@@ -9983,14 +10000,28 @@ Get all remote fields for a Linked Account. Remote fields are third-party fields ```python from merge import Merge +from merge.resources.ats.resources.linked_accounts import ( + LinkedAccountsListRequestCategory, +) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.field_mapping.remote_fields_retrieve( - common_models="common_models", - include_example_values="include_example_values", +client.ats.linked_accounts.list( + category=LinkedAccountsListRequestCategory.ACCOUNTING, + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + end_user_email_address="end_user_email_address", + end_user_organization_name="end_user_organization_name", + end_user_origin_id="end_user_origin_id", + end_user_origin_ids="end_user_origin_ids", + id="id", + ids="ids", + include_duplicates=True, + integration_name="integration_name", + is_test_account="is_test_account", + page_size=1, + status="status", ) ``` @@ -10007,7 +10038,17 @@ client.chat.field_mapping.remote_fields_retrieve(
-**common_models:** `typing.Optional[str]` — A comma seperated list of Common Model names. If included, will only return Remote Fields for those Common Models. +**category:** `typing.Optional[LinkedAccountsListRequestCategory]` + +Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `mktg`, `ticketing` + +* `hris` - hris +* `ats` - ats +* `accounting` - accounting +* `ticketing` - ticketing +* `crm` - crm +* `mktg` - mktg +* `filestorage` - filestorage
@@ -10015,7 +10056,7 @@ client.chat.field_mapping.remote_fields_retrieve(
-**include_example_values:** `typing.Optional[str]` — If true, will include example values, where available, for remote fields in the 3rd party platform. These examples come from active data from your customers. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -10023,132 +10064,87 @@ client.chat.field_mapping.remote_fields_retrieve(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**end_user_email_address:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given email address.
- -
+
+
+**end_user_organization_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given organization name. +
-
-
client.chat.field_mapping.target_fields_retrieve()
-#### 📝 Description - -
-
+**end_user_origin_id:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given origin ID. + +
+
-Get all organization-wide Target Fields, this will not include any Linked Account specific Target Fields. Organization-wide Target Fields are additional fields appended to the Merge Common Model for all Linked Accounts in a category. [Learn more](https://docs.merge.dev/supplemental-data/field-mappings/target-fields/). -
-
+**end_user_origin_ids:** `typing.Optional[str]` — Comma-separated list of EndUser origin IDs, making it possible to specify multiple EndUsers at once. +
-#### 🔌 Usage -
-
-
- -```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.field_mapping.target_fields_retrieve() - -``` -
-
+**id:** `typing.Optional[str]` +
-#### ⚙️ Parameters - -
-
-
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**ids:** `typing.Optional[str]` — Comma-separated list of LinkedAccount IDs, making it possible to specify multiple LinkedAccounts at once.
-
-
+
+
+**include_duplicates:** `typing.Optional[bool]` — If `true`, will include complete production duplicates of the account specified by the `id` query parameter in the response. `id` must be for a complete production linked account. +
-
-## Chat GenerateKey -
client.chat.generate_key.create(...)
-#### 📝 Description - -
-
+**integration_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given integration name. + +
+
-Create a remote key. -
-
+**is_test_account:** `typing.Optional[str]` — If included, will only include test linked accounts. If not included, will only include non-test linked accounts. +
-#### 🔌 Usage -
-
-
- -```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.generate_key.create( - name="Remote Deployment Key 1", -) - -``` -
-
+**page_size:** `typing.Optional[int]` — Number of results to return per page. +
-#### ⚙️ Parameters - -
-
-
-**name:** `str` — The name of the remote key +**status:** `typing.Optional[str]` — Filter by status. Options: `COMPLETE`, `IDLE`, `INCOMPLETE`, `RELINK_NEEDED`
@@ -10168,8 +10164,8 @@ client.chat.generate_key.create(
-## Chat Groups -
client.chat.groups.list(...) +## Ats Offers +
client.ats.offers.list(...)
@@ -10181,7 +10177,7 @@ client.chat.generate_key.create(
-Returns a list of `Group` objects. +Returns a list of `Offer` objects.
@@ -10199,19 +10195,23 @@ Returns a list of `Group` objects. import datetime from merge import Merge +from merge.resources.ats.resources.offers import OffersListRequestExpand client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.groups.list( +client.ats.offers.list( + application_id="application_id", created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), created_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), + creator_id="creator_id", cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + expand=OffersListRequestExpand.APPLICATION, include_deleted_data=True, include_remote_data=True, include_shell_data=True, @@ -10239,6 +10239,14 @@ client.chat.groups.list(
+**application_id:** `typing.Optional[str]` — If provided, will only return offers for this application. + +
+
+ +
+
+ **created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -10255,6 +10263,14 @@ client.chat.groups.list(
+**creator_id:** `typing.Optional[str]` — If provided, will only return offers created by this user. + +
+
+ +
+
+ **cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -10263,7 +10279,7 @@ client.chat.groups.list(
-**expand:** `typing.Optional[typing.Literal["users"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[OffersListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -10311,7 +10327,15 @@ client.chat.groups.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**page_size:** `typing.Optional[int]` — Number of results to return per page. + +
+
+ +
+
+ +**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins.
@@ -10327,6 +10351,14 @@ client.chat.groups.list(
+**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -10339,7 +10371,7 @@ client.chat.groups.list(
-
client.chat.groups.retrieve(...) +
client.ats.offers.retrieve(...)
@@ -10351,7 +10383,7 @@ client.chat.groups.list(
-Returns a `Group` object with the given `id`. +Returns an `Offer` object with the given `id`.
@@ -10367,13 +10399,15 @@ Returns a `Group` object with the given `id`. ```python from merge import Merge +from merge.resources.ats.resources.offers import OffersRetrieveRequestExpand client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.groups.retrieve( +client.ats.offers.retrieve( id="id", + expand=OffersRetrieveRequestExpand.APPLICATION, include_remote_data=True, include_shell_data=True, ) @@ -10400,7 +10434,7 @@ client.chat.groups.retrieve(
-**expand:** `typing.Optional[typing.Literal["users"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**expand:** `typing.Optional[OffersRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -10424,6 +10458,22 @@ client.chat.groups.retrieve(
+**remote_fields:** `typing.Optional[typing.Literal["status"]]` — Deprecated. Use show_enum_origins. + +
+
+ +
+
+ +**show_enum_origins:** `typing.Optional[typing.Literal["status"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -10436,8 +10486,8 @@ client.chat.groups.retrieve(
-## Chat Issues -
client.chat.issues.list(...) +## Ats Offices +
client.ats.offices.list(...)
@@ -10449,7 +10499,7 @@ client.chat.groups.retrieve(
-Gets all issues for Organization. +Returns a list of `Office` objects.
@@ -10467,35 +10517,30 @@ Gets all issues for Organization. import datetime from merge import Merge -from merge.resources.chat.resources.issues import IssuesListRequestStatus client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.issues.list( - account_token="account_token", - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - end_date="end_date", - end_user_organization_name="end_user_organization_name", - first_incident_time_after=datetime.datetime.fromisoformat( +client.ats.offices.list( + created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - first_incident_time_before=datetime.datetime.fromisoformat( + created_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - include_muted="include_muted", - integration_name="integration_name", - last_incident_time_after=datetime.datetime.fromisoformat( + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + modified_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - last_incident_time_before=datetime.datetime.fromisoformat( + modified_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - linked_account_id="linked_account_id", page_size=1, - start_date="start_date", - status=IssuesListRequestStatus.ONGOING, + remote_id="remote_id", ) ``` @@ -10512,39 +10557,7 @@ client.chat.issues.list(
-**account_token:** `typing.Optional[str]` - -
-
- -
-
- -**cursor:** `typing.Optional[str]` — The pagination cursor value. - -
-
- -
-
- -**end_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred before this time - -
-
- -
-
- -**end_user_organization_name:** `typing.Optional[str]` - -
-
- -
-
- -**first_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was after this datetime. +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -10552,7 +10565,7 @@ client.chat.issues.list(
-**first_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose first incident time was before this datetime. +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -10560,7 +10573,7 @@ client.chat.issues.list(
-**include_muted:** `typing.Optional[str]` — If true, will include muted issues +**cursor:** `typing.Optional[str]` — The pagination cursor value.
@@ -10568,7 +10581,7 @@ client.chat.issues.list(
-**integration_name:** `typing.Optional[str]` +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -10576,7 +10589,7 @@ client.chat.issues.list(
-**last_incident_time_after:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was after this datetime. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -10584,7 +10597,7 @@ client.chat.issues.list(
-**last_incident_time_before:** `typing.Optional[dt.datetime]` — If provided, will only return issues whose last incident time was before this datetime. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -10592,7 +10605,7 @@ client.chat.issues.list(
-**linked_account_id:** `typing.Optional[str]` — If provided, will only include issues pertaining to the linked account passed in. +**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned.
@@ -10600,7 +10613,7 @@ client.chat.issues.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned.
@@ -10608,7 +10621,7 @@ client.chat.issues.list(
-**start_date:** `typing.Optional[str]` — If included, will only include issues whose most recent action occurred after this time +**page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -10616,12 +10629,7 @@ client.chat.issues.list(
-**status:** `typing.Optional[IssuesListRequestStatus]` - -Status of the issue. Options: ('ONGOING', 'RESOLVED') - -* `ONGOING` - ONGOING -* `RESOLVED` - RESOLVED +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object.
@@ -10641,7 +10649,7 @@ Status of the issue. Options: ('ONGOING', 'RESOLVED')
-
client.chat.issues.retrieve(...) +
client.ats.offices.retrieve(...)
@@ -10653,7 +10661,7 @@ Status of the issue. Options: ('ONGOING', 'RESOLVED')
-Get a specific issue. +Returns an `Office` object with the given `id`.
@@ -10674,8 +10682,10 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.issues.retrieve( +client.ats.offices.retrieve( id="id", + include_remote_data=True, + include_shell_data=True, ) ``` @@ -10700,6 +10710,22 @@ client.chat.issues.retrieve(
+**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+ +
+
+ +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -10712,8 +10738,8 @@ client.chat.issues.retrieve(
-## Chat LinkToken -
client.chat.link_token.create(...) +## Ats Passthrough +
client.ats.passthrough.create(...)
@@ -10725,7 +10751,7 @@ client.chat.issues.retrieve(
-Creates a link token to be used when linking a new end user. The link token expires after single use. +Pull data from an endpoint not currently supported by Merge.
@@ -10741,17 +10767,17 @@ Creates a link token to be used when linking a new end user. The link token expi ```python from merge import Merge -from merge.resources.chat import CategoriesEnum +from merge.resources.ats import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.link_token.create( - end_user_email_address="example@gmail.com", - end_user_organization_name="Test Organization", - end_user_origin_id="12345", - categories=[CategoriesEnum.HRIS, CategoriesEnum.ATS], +client.ats.passthrough.create( + request=DataPassthroughRequest( + method=MethodEnum.GET, + path="/scooters", + ), ) ``` @@ -10768,7 +10794,7 @@ client.chat.link_token.create(
-**end_user_email_address:** `str` — Your end user's email address. This is purely for identification purposes - setting this value will not cause any emails to be sent. +**request:** `DataPassthroughRequest`
@@ -10776,119 +10802,71 @@ client.chat.link_token.create(
-**end_user_organization_name:** `str` — Your end user's organization. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
- -
-
- -**end_user_origin_id:** `str` — This unique identifier typically represents the ID for your end user in your product's database. This value must be distinct from other Linked Accounts' unique identifiers. -
-
-
-**categories:** `typing.Sequence[CategoriesEnum]` — The integration categories to show in Merge Link. -
+
+## Ats RegenerateKey +
client.ats.regenerate_key.create(...)
-**integration:** `typing.Optional[str]` — The slug of a specific pre-selected integration for this linking flow token. For examples of slugs, see https://docs.merge.dev/guides/merge-link/single-integration/. - -
-
+#### 📝 Description
-**link_expiry_mins:** `typing.Optional[int]` — An integer number of minutes between [30, 720 or 10080 if for a Magic Link URL] for how long this token is valid. Defaults to 30. - -
-
-
-**should_create_magic_link_url:** `typing.Optional[bool]` — Whether to generate a Magic Link URL. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. - +Exchange remote keys.
- -
-
- -**hide_admin_magic_link:** `typing.Optional[bool]` — Whether to generate a Magic Link URL on the Admin Needed screen during the linking flow. Defaults to false. For more information on Magic Link, see https://merge.dev/blog/integrations-fast-say-hello-to-magic-link. -
-
-
- -**common_models:** `typing.Optional[typing.Sequence[CommonModelScopesBodyRequest]]` — An array of objects to specify the models and fields that will be disabled for a given Linked Account. Each object uses model_id, enabled_actions, and disabled_fields to specify the model, method, and fields that are scoped for a given Linked Account. - -
-
+#### 🔌 Usage
-**category_common_model_scopes:** `typing.Optional[ - typing.Dict[ - str, - typing.Optional[ - typing.Sequence[IndividualCommonModelScopeDeserializerRequest] - ], - ] -]` — When creating a Link Token, you can set permissions for Common Models that will apply to the account that is going to be linked. Any model or field not specified in link token payload will default to existing settings. - -
-
-
-**language:** `typing.Optional[EndUserDetailsRequestLanguage]` +```python +from merge import Merge -The following subset of IETF language tags can be used to configure localization. +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.regenerate_key.create( + name="Remote Deployment Key 1", +) -* `en` - en -* `de` - de - +```
- -
-
- -**are_syncs_disabled:** `typing.Optional[bool]` — The boolean that indicates whether initial, periodic, and force syncs will be disabled. -
+#### ⚙️ Parameters +
-**integration_specific_config:** `typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]` — A JSON object containing integration-specific configuration options. - -
-
-
-**completed_account_initial_screen:** `typing.Optional[EndUserDetailsRequestCompletedAccountInitialScreen]` - -When creating a Link token, you can specifiy the initial screen of Linking Flow for a completed Linked Account. - -* `SELECTIVE_SYNC` - SELECTIVE_SYNC +**name:** `str` — The name of the remote key
@@ -10908,8 +10886,8 @@ When creating a Link token, you can specifiy the initial screen of Linking Flow
-## Chat LinkedAccounts -
client.chat.linked_accounts.list(...) +## Ats RejectReasons +
client.ats.reject_reasons.list(...)
@@ -10921,7 +10899,7 @@ When creating a Link token, you can specifiy the initial screen of Linking Flow
-List linked accounts for your organization. +Returns a list of `RejectReason` objects.
@@ -10936,29 +10914,33 @@ List linked accounts for your organization.
```python +import datetime + from merge import Merge -from merge.resources.chat.resources.linked_accounts import ( - LinkedAccountsListRequestCategory, -) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.linked_accounts.list( - category=LinkedAccountsListRequestCategory.ACCOUNTING, +client.ats.reject_reasons.list( + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - end_user_email_address="end_user_email_address", - end_user_organization_name="end_user_organization_name", - end_user_origin_id="end_user_origin_id", - end_user_origin_ids="end_user_origin_ids", - id="id", - ids="ids", - include_duplicates=True, - integration_name="integration_name", - is_test_account="is_test_account", + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), page_size=1, - status="status", + remote_id="remote_id", ) ``` @@ -10975,19 +10957,15 @@ client.chat.linked_accounts.list(
-**category:** `typing.Optional[LinkedAccountsListRequestCategory]` +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime. + +
+
-Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mktg`, `ticketing` +
+
-* `hris` - hris -* `ats` - ats -* `accounting` - accounting -* `ticketing` - ticketing -* `crm` - crm -* `mktg` - mktg -* `filestorage` - filestorage -* `knowledgebase` - knowledgebase -* `chat` - chat +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -11003,7 +10981,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**end_user_email_address:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given email address. +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -11011,7 +10989,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**end_user_organization_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given organization name. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -11019,7 +10997,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**end_user_origin_id:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given origin ID. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -11027,7 +11005,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**end_user_origin_ids:** `typing.Optional[str]` — Comma-separated list of EndUser origin IDs, making it possible to specify multiple EndUsers at once. +**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned.
@@ -11035,7 +11013,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**id:** `typing.Optional[str]` +**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned.
@@ -11043,7 +11021,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**ids:** `typing.Optional[str]` — Comma-separated list of LinkedAccount IDs, making it possible to specify multiple LinkedAccounts at once. +**page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -11051,7 +11029,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**include_duplicates:** `typing.Optional[bool]` — If `true`, will include complete production duplicates of the account specified by the `id` query parameter in the response. `id` must be for a complete production linked account. +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object.
@@ -11059,15 +11037,72 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**integration_name:** `typing.Optional[str]` — If provided, will only return linked accounts associated with the given integration name. +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
+
+
+ + + +
+ +
client.ats.reject_reasons.retrieve(...)
-**is_test_account:** `typing.Optional[str]` — If included, will only include test linked accounts. If not included, will only include non-test linked accounts. +#### 📝 Description + +
+
+ +
+
+ +Returns a `RejectReason` object with the given `id`. +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from merge import Merge + +client = Merge( + account_token="YOUR_ACCOUNT_TOKEN", + api_key="YOUR_API_KEY", +) +client.ats.reject_reasons.retrieve( + id="id", + include_remote_data=True, + include_shell_data=True, +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**id:** `str`
@@ -11075,7 +11110,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -11083,7 +11118,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-**status:** `typing.Optional[str]` — Filter by status. Options: `COMPLETE`, `IDLE`, `INCOMPLETE`, `RELINK_NEEDED` +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -11103,8 +11138,8 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-## Chat Messages -
client.chat.messages.list(...) +## Ats Scorecards +
client.ats.scorecards.list(...)
@@ -11116,7 +11151,7 @@ Options: `accounting`, `ats`, `crm`, `filestorage`, `hris`, `knowledgebase`, `mk
-Returns a list of `Message` objects. +Returns a list of `Scorecard` objects.
@@ -11134,14 +11169,14 @@ Returns a list of `Message` objects. import datetime from merge import Merge -from merge.resources.chat.resources.messages import MessagesListRequestOrderBy +from merge.resources.ats.resources.scorecards import ScorecardsListRequestExpand client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.messages.list( - conversation_id="conversation_id", +client.ats.scorecards.list( + application_id="application_id", created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -11149,19 +11184,20 @@ client.chat.messages.list( "2024-01-15 09:30:00+00:00", ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + expand=ScorecardsListRequestExpand.APPLICATION, include_deleted_data=True, include_remote_data=True, include_shell_data=True, + interview_id="interview_id", + interviewer_id="interviewer_id", modified_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), modified_before=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), - order_by=MessagesListRequestOrderBy.REMOTE_CREATED_AT_DESCENDING, page_size=1, remote_id="remote_id", - root_message="root_message", ) ``` @@ -11178,7 +11214,7 @@ client.chat.messages.list(
-**conversation_id:** `typing.Optional[str]` — Filter messages by conversation ID. +**application_id:** `typing.Optional[str]` — If provided, will only return scorecards for this application.
@@ -11210,39 +11246,7 @@ client.chat.messages.list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). - -
-
- -
-
- -**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. - -
-
- -
-
- -**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). - -
-
- -
-
- -**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. - -
-
- -
-
- -**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. +**expand:** `typing.Optional[ScorecardsListRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -11250,7 +11254,7 @@ client.chat.messages.list(
-**order_by:** `typing.Optional[MessagesListRequestOrderBy]` — Overrides the default ordering for this endpoint. Possible values include: remote_created_at, -remote_created_at. +**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).
@@ -11258,7 +11262,7 @@ client.chat.messages.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -11266,7 +11270,7 @@ client.chat.messages.list(
-**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -11274,7 +11278,7 @@ client.chat.messages.list(
-**root_message:** `typing.Optional[str]` — If provided as 'true', will only return root messages (messages without a parent message). +**interview_id:** `typing.Optional[str]` — If provided, will only return scorecards for this interview.
@@ -11282,72 +11286,39 @@ client.chat.messages.list(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**interviewer_id:** `typing.Optional[str]` — If provided, will only return scorecards for this interviewer.
-
- -
- - - - -
- -
client.chat.messages.retrieve(...) -
-
- -#### 📝 Description - -
-
- -
-
- -Returns a `Message` object with the given `id`. -
-
-
-
- -#### 🔌 Usage +
+**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + +
+
+
-```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.messages.retrieve( - id="id", - include_remote_data=True, - include_shell_data=True, -) - -``` -
-
+**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. + -#### ⚙️ Parameters -
+**page_size:** `typing.Optional[int]` — Number of results to return per page. + +
+
+
-**id:** `str` +**remote_fields:** `typing.Optional[typing.Literal["overall_recommendation"]]` — Deprecated. Use show_enum_origins.
@@ -11355,7 +11326,7 @@ client.chat.messages.retrieve(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object.
@@ -11363,7 +11334,7 @@ client.chat.messages.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**show_enum_origins:** `typing.Optional[typing.Literal["overall_recommendation"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -11383,7 +11354,7 @@ client.chat.messages.retrieve(
-
client.chat.messages.replies_list(...) +
client.ats.scorecards.retrieve(...)
@@ -11395,7 +11366,7 @@ client.chat.messages.retrieve(
-Returns a list of `Message` objects. +Returns a `Scorecard` object with the given `id`.
@@ -11411,22 +11382,19 @@ Returns a list of `Message` objects. ```python from merge import Merge -from merge.resources.chat.resources.messages import ( - MessagesRepliesListRequestOrderBy, +from merge.resources.ats.resources.scorecards import ( + ScorecardsRetrieveRequestExpand, ) client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.messages.replies_list( - message_id="message_id", - cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", - include_deleted_data=True, +client.ats.scorecards.retrieve( + id="id", + expand=ScorecardsRetrieveRequestExpand.APPLICATION, include_remote_data=True, include_shell_data=True, - order_by=MessagesRepliesListRequestOrderBy.REMOTE_CREATED_AT_DESCENDING, - page_size=1, ) ``` @@ -11443,15 +11411,7 @@ client.chat.messages.replies_list(
-**message_id:** `str` - -
-
- -
-
- -**cursor:** `typing.Optional[str]` — The pagination cursor value. +**id:** `str`
@@ -11459,7 +11419,7 @@ client.chat.messages.replies_list(
-**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +**expand:** `typing.Optional[ScorecardsRetrieveRequestExpand]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
@@ -11483,7 +11443,7 @@ client.chat.messages.replies_list(
-**order_by:** `typing.Optional[MessagesRepliesListRequestOrderBy]` — Overrides the default ordering for this endpoint. Possible values include: remote_created_at, -remote_created_at. +**remote_fields:** `typing.Optional[typing.Literal["overall_recommendation"]]` — Deprecated. Use show_enum_origins.
@@ -11491,7 +11451,7 @@ client.chat.messages.replies_list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**show_enum_origins:** `typing.Optional[typing.Literal["overall_recommendation"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -11511,8 +11471,8 @@ client.chat.messages.replies_list(
-## Chat Passthrough -
client.chat.passthrough.create(...) +## Ats SyncStatus +
client.ats.sync_status.list(...)
@@ -11524,7 +11484,7 @@ client.chat.messages.replies_list(
-Pull data from an endpoint not currently supported by Merge. +Get sync status for the current sync and the most recently finished sync. `last_sync_start` represents the most recent time any sync began. `last_sync_finished` represents the most recent time any sync completed. These timestamps may correspond to different sync instances which may result in a sync start time being later than a separate sync completed time. To ensure you are retrieving the latest available data reference the `last_sync_finished` timestamp where `last_sync_result` is `DONE`. Possible values for `status` and `last_sync_result` are `DISABLED`, `DONE`, `FAILED`, `PARTIALLY_SYNCED`, `PAUSED`, `SYNCING`. Learn more about sync status in our [Help Center](https://help.merge.dev/en/articles/8184193-merge-sync-statuses).
@@ -11540,17 +11500,14 @@ Pull data from an endpoint not currently supported by Merge. ```python from merge import Merge -from merge.resources.chat import DataPassthroughRequest, MethodEnum client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.passthrough.create( - request=DataPassthroughRequest( - method=MethodEnum.GET, - path="/scooters", - ), +client.ats.sync_status.list( + cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + page_size=1, ) ``` @@ -11567,7 +11524,15 @@ client.chat.passthrough.create(
-**request:** `DataPassthroughRequest` +**cursor:** `typing.Optional[str]` — The pagination cursor value. + +
+
+ +
+
+ +**page_size:** `typing.Optional[int]` — Number of results to return per page.
@@ -11587,8 +11552,8 @@ client.chat.passthrough.create(
-## Chat RegenerateKey -
client.chat.regenerate_key.create(...) +## Ats ForceResync +
client.ats.force_resync.sync_status_resync_create()
@@ -11600,7 +11565,7 @@ client.chat.passthrough.create(
-Exchange remote keys. +Force re-sync of all models. This endpoint is available for monthly, quarterly, and highest sync frequency customers on the Professional or Enterprise plans. Doing so will consume a sync credit for the relevant linked account. Force re-syncs can also be triggered manually in the Merge Dashboard and is available for all customers.
@@ -11621,9 +11586,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.regenerate_key.create( - name="Remote Deployment Key 1", -) +client.ats.force_resync.sync_status_resync_create() ``` @@ -11639,14 +11602,6 @@ client.chat.regenerate_key.create(
-**name:** `str` — The name of the remote key - -
-
- -
-
- **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -11659,8 +11614,8 @@ client.chat.regenerate_key.create(
-## Chat SyncStatus -
client.chat.sync_status.list(...) +## Ats Tags +
client.ats.tags.list(...)
@@ -11672,7 +11627,7 @@ client.chat.regenerate_key.create(
-Get sync status for the current sync and the most recently finished sync. `last_sync_start` represents the most recent time any sync began. `last_sync_finished` represents the most recent time any sync completed. These timestamps may correspond to different sync instances which may result in a sync start time being later than a separate sync completed time. To ensure you are retrieving the latest available data reference the `last_sync_finished` timestamp where `last_sync_result` is `DONE`. Possible values for `status` and `last_sync_result` are `DISABLED`, `DONE`, `FAILED`, `PARTIALLY_SYNCED`, `PAUSED`, `SYNCING`. Learn more about sync status in our [Help Center](https://help.merge.dev/en/articles/8184193-merge-sync-statuses). +Returns a list of `Tag` objects.
@@ -11687,15 +11642,33 @@ Get sync status for the current sync and the most recently finished sync. `last_
```python +import datetime + from merge import Merge client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.sync_status.list( +client.ats.tags.list( + created_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + created_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + include_deleted_data=True, + include_remote_data=True, + include_shell_data=True, + modified_after=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), + modified_before=datetime.datetime.fromisoformat( + "2024-01-15 09:30:00+00:00", + ), page_size=1, + remote_id="remote_id", ) ``` @@ -11712,7 +11685,7 @@ client.chat.sync_status.list(
-**cursor:** `typing.Optional[str]` — The pagination cursor value. +**created_after:** `typing.Optional[dt.datetime]` — If provided, will only return objects created after this datetime.
@@ -11720,7 +11693,7 @@ client.chat.sync_status.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**created_before:** `typing.Optional[dt.datetime]` — If provided, will only return objects created before this datetime.
@@ -11728,65 +11701,67 @@ client.chat.sync_status.list(
-**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. +**cursor:** `typing.Optional[str]` — The pagination cursor value.
-
-
+
+
+**include_deleted_data:** `typing.Optional[bool]` — Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/). +
-
-## Chat ForceResync -
client.chat.force_resync.sync_status_resync_create()
-#### 📝 Description +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. + +
+
+**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). + +
+
+
-Force re-sync of all models. This endpoint is available for monthly, quarterly, and highest sync frequency customers on the Professional or Enterprise plans. Doing so will consume a sync credit for the relevant linked account. Force re-syncs can also be triggered manually in the Merge Dashboard and is available for all customers. -
-
+**modified_after:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge after this date time will be returned. + -#### 🔌 Usage -
+**modified_before:** `typing.Optional[dt.datetime]` — If provided, only objects synced by Merge before this date time will be returned. + +
+
+
-```python -from merge import Merge - -client = Merge( - account_token="YOUR_ACCOUNT_TOKEN", - api_key="YOUR_API_KEY", -) -client.chat.force_resync.sync_status_resync_create() - -``` -
-
+**page_size:** `typing.Optional[int]` — Number of results to return per page. + -#### ⚙️ Parameters -
+**remote_id:** `typing.Optional[str]` — The API provider's ID for the given object. + +
+
+
@@ -11802,8 +11777,8 @@ client.chat.force_resync.sync_status_resync_create()
-## Chat Users -
client.chat.users.list(...) +## Ats Users +
client.ats.users.list(...)
@@ -11815,7 +11790,7 @@ client.chat.force_resync.sync_status_resync_create()
-Returns a list of `User` objects. +Returns a list of `RemoteUser` objects.
@@ -11838,7 +11813,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.users.list( +client.ats.users.list( created_after=datetime.datetime.fromisoformat( "2024-01-15 09:30:00+00:00", ), @@ -11846,6 +11821,7 @@ client.chat.users.list( "2024-01-15 09:30:00+00:00", ), cursor="cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw", + email="email", include_deleted_data=True, include_remote_data=True, include_shell_data=True, @@ -11897,7 +11873,7 @@ client.chat.users.list(
-**expand:** `typing.Optional[typing.Literal["groups"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**email:** `typing.Optional[str]` — If provided, will only return remote users with the given email address
@@ -11945,7 +11921,15 @@ client.chat.users.list(
-**page_size:** `typing.Optional[int]` — Number of results to return per page. The maximum limit is 100. +**page_size:** `typing.Optional[int]` — Number of results to return per page. + +
+
+ +
+
+ +**remote_fields:** `typing.Optional[typing.Literal["access_role"]]` — Deprecated. Use show_enum_origins.
@@ -11961,6 +11945,14 @@ client.chat.users.list(
+**show_enum_origins:** `typing.Optional[typing.Literal["access_role"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter) + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -11973,7 +11965,7 @@ client.chat.users.list(
-
client.chat.users.retrieve(...) +
client.ats.users.retrieve(...)
@@ -11985,7 +11977,7 @@ client.chat.users.list(
-Returns a `User` object with the given `id`. +Returns a `RemoteUser` object with the given `id`.
@@ -12006,7 +11998,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.users.retrieve( +client.ats.users.retrieve( id="id", include_remote_data=True, include_shell_data=True, @@ -12034,7 +12026,7 @@ client.chat.users.retrieve(
-**expand:** `typing.Optional[typing.Literal["groups"]]` — Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces. +**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models.
@@ -12042,7 +12034,7 @@ client.chat.users.retrieve(
-**include_remote_data:** `typing.Optional[bool]` — Whether to include the original data Merge fetched from the third-party to produce these models. +**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null).
@@ -12050,7 +12042,15 @@ client.chat.users.retrieve(
-**include_shell_data:** `typing.Optional[bool]` — Whether to include shell records. Shell records are empty records (they may contain some metadata but all other fields are null). +**remote_fields:** `typing.Optional[typing.Literal["access_role"]]` — Deprecated. Use show_enum_origins. + +
+
+ +
+
+ +**show_enum_origins:** `typing.Optional[typing.Literal["access_role"]]` — A comma separated list of enum field names for which you'd like the original values to be returned, instead of Merge's normalized enum values. [Learn more](https://help.merge.dev/en/articles/8950958-show_enum_origins-query-parameter)
@@ -12070,8 +12070,8 @@ client.chat.users.retrieve(
-## Chat WebhookReceivers -
client.chat.webhook_receivers.list() +## Ats WebhookReceivers +
client.ats.webhook_receivers.list()
@@ -12104,7 +12104,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.webhook_receivers.list() +client.ats.webhook_receivers.list() ```
@@ -12132,7 +12132,7 @@ client.chat.webhook_receivers.list()
-
client.chat.webhook_receivers.create(...) +
client.ats.webhook_receivers.create(...)
@@ -12165,7 +12165,7 @@ client = Merge( account_token="YOUR_ACCOUNT_TOKEN", api_key="YOUR_API_KEY", ) -client.chat.webhook_receivers.create( +client.ats.webhook_receivers.create( event="event", is_active=True, ) diff --git a/src/merge/client.py b/src/merge/client.py index 4350fe25..d5250372 100644 --- a/src/merge/client.py +++ b/src/merge/client.py @@ -88,8 +88,8 @@ def __init__( else httpx.Client(timeout=_defaulted_timeout), timeout=_defaulted_timeout, ) - self._ats: typing.Optional[AtsClient] = None self._chat: typing.Optional[ChatClient] = None + self._ats: typing.Optional[AtsClient] = None self._crm: typing.Optional[CrmClient] = None self._filestorage: typing.Optional[FilestorageClient] = None self._hris: typing.Optional[HrisClient] = None @@ -97,14 +97,6 @@ def __init__( self._ticketing: typing.Optional[TicketingClient] = None self._accounting: typing.Optional[AccountingClient] = None - @property - def ats(self): - if self._ats is None: - from .resources.ats.client import AtsClient # noqa: E402 - - self._ats = AtsClient(client_wrapper=self._client_wrapper) - return self._ats - @property def chat(self): if self._chat is None: @@ -113,6 +105,14 @@ def chat(self): self._chat = ChatClient(client_wrapper=self._client_wrapper) return self._chat + @property + def ats(self): + if self._ats is None: + from .resources.ats.client import AtsClient # noqa: E402 + + self._ats = AtsClient(client_wrapper=self._client_wrapper) + return self._ats + @property def crm(self): if self._crm is None: @@ -231,8 +231,8 @@ def __init__( else httpx.AsyncClient(timeout=_defaulted_timeout), timeout=_defaulted_timeout, ) - self._ats: typing.Optional[AsyncAtsClient] = None self._chat: typing.Optional[AsyncChatClient] = None + self._ats: typing.Optional[AsyncAtsClient] = None self._crm: typing.Optional[AsyncCrmClient] = None self._filestorage: typing.Optional[AsyncFilestorageClient] = None self._hris: typing.Optional[AsyncHrisClient] = None @@ -240,14 +240,6 @@ def __init__( self._ticketing: typing.Optional[AsyncTicketingClient] = None self._accounting: typing.Optional[AsyncAccountingClient] = None - @property - def ats(self): - if self._ats is None: - from .resources.ats.client import AsyncAtsClient # noqa: E402 - - self._ats = AsyncAtsClient(client_wrapper=self._client_wrapper) - return self._ats - @property def chat(self): if self._chat is None: @@ -256,6 +248,14 @@ def chat(self): self._chat = AsyncChatClient(client_wrapper=self._client_wrapper) return self._chat + @property + def ats(self): + if self._ats is None: + from .resources.ats.client import AsyncAtsClient # noqa: E402 + + self._ats = AsyncAtsClient(client_wrapper=self._client_wrapper) + return self._ats + @property def crm(self): if self._crm is None: diff --git a/src/merge/core/client_wrapper.py b/src/merge/core/client_wrapper.py index af760778..3b87debd 100644 --- a/src/merge/core/client_wrapper.py +++ b/src/merge/core/client_wrapper.py @@ -24,10 +24,10 @@ def __init__( def get_headers(self) -> typing.Dict[str, str]: headers: typing.Dict[str, str] = { - "User-Agent": "MergePythonClient/2.6.2", + "User-Agent": "MergePythonClient/2.6.3", "X-Fern-Language": "Python", "X-Fern-SDK-Name": "MergePythonClient", - "X-Fern-SDK-Version": "2.6.2", + "X-Fern-SDK-Version": "2.6.3", **(self.get_custom_headers() or {}), } if self._account_token is not None: diff --git a/src/merge/resources/chat/types/conversation.py b/src/merge/resources/chat/types/conversation.py index 402823ad..6b118501 100644 --- a/src/merge/resources/chat/types/conversation.py +++ b/src/merge/resources/chat/types/conversation.py @@ -59,6 +59,9 @@ class Conversation(UncheckedBaseModel): * `PRIVATE_EXTERNAL` - PRIVATE_EXTERNAL * `PUBLIC_INTERNAL` - PUBLIC_INTERNAL * `PUBLIC_EXTERNAL` - PUBLIC_EXTERNAL + * `ONE_ON_ONE_CHAT` - ONE_ON_ONE_CHAT + * `GROUP_CHAT` - GROUP_CHAT + * `MEETING_CHAT` - MEETING_CHAT """ members: typing.Optional[typing.List[typing.Optional[str]]] = None diff --git a/src/merge/resources/chat/types/type_enum.py b/src/merge/resources/chat/types/type_enum.py index 37cdd1ef..6d258d7f 100644 --- a/src/merge/resources/chat/types/type_enum.py +++ b/src/merge/resources/chat/types/type_enum.py @@ -12,12 +12,18 @@ class TypeEnum(str, enum.Enum): * `PRIVATE_EXTERNAL` - PRIVATE_EXTERNAL * `PUBLIC_INTERNAL` - PUBLIC_INTERNAL * `PUBLIC_EXTERNAL` - PUBLIC_EXTERNAL + * `ONE_ON_ONE_CHAT` - ONE_ON_ONE_CHAT + * `GROUP_CHAT` - GROUP_CHAT + * `MEETING_CHAT` - MEETING_CHAT """ PRIVATE_INTERNAL = "PRIVATE_INTERNAL" PRIVATE_EXTERNAL = "PRIVATE_EXTERNAL" PUBLIC_INTERNAL = "PUBLIC_INTERNAL" PUBLIC_EXTERNAL = "PUBLIC_EXTERNAL" + ONE_ON_ONE_CHAT = "ONE_ON_ONE_CHAT" + GROUP_CHAT = "GROUP_CHAT" + MEETING_CHAT = "MEETING_CHAT" def visit( self, @@ -25,6 +31,9 @@ def visit( private_external: typing.Callable[[], T_Result], public_internal: typing.Callable[[], T_Result], public_external: typing.Callable[[], T_Result], + one_on_one_chat: typing.Callable[[], T_Result], + group_chat: typing.Callable[[], T_Result], + meeting_chat: typing.Callable[[], T_Result], ) -> T_Result: if self is TypeEnum.PRIVATE_INTERNAL: return private_internal() @@ -34,3 +43,9 @@ def visit( return public_internal() if self is TypeEnum.PUBLIC_EXTERNAL: return public_external() + if self is TypeEnum.ONE_ON_ONE_CHAT: + return one_on_one_chat() + if self is TypeEnum.GROUP_CHAT: + return group_chat() + if self is TypeEnum.MEETING_CHAT: + return meeting_chat() diff --git a/src/merge/resources/filestorage/types/drive.py b/src/merge/resources/filestorage/types/drive.py index c0f931ee..50a5f2bf 100644 --- a/src/merge/resources/filestorage/types/drive.py +++ b/src/merge/resources/filestorage/types/drive.py @@ -49,11 +49,6 @@ class Drive(UncheckedBaseModel): The drive's url. """ - size: typing.Optional[int] = pydantic.Field(default=None) - """ - The drive's size, in bytes. - """ - remote_was_deleted: typing.Optional[bool] = pydantic.Field(default=None) """ Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn more](https://docs.merge.dev/integrations/hris/supported-features/).