mergepythonclient 2.3.2__py3-none-any.whl → 2.4.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. merge/__init__.py +3 -1
  2. merge/client.py +49 -30
  3. merge/core/client_wrapper.py +2 -2
  4. merge/resources/__init__.py +3 -2
  5. merge/resources/knowledgebase/__init__.py +472 -0
  6. merge/resources/knowledgebase/client.py +480 -0
  7. merge/resources/knowledgebase/raw_client.py +13 -0
  8. merge/resources/knowledgebase/resources/__init__.py +128 -0
  9. merge/resources/knowledgebase/resources/account_details/__init__.py +4 -0
  10. merge/resources/knowledgebase/resources/account_details/client.py +102 -0
  11. merge/resources/knowledgebase/resources/account_details/raw_client.py +91 -0
  12. merge/resources/knowledgebase/resources/account_token/__init__.py +4 -0
  13. merge/resources/knowledgebase/resources/account_token/client.py +112 -0
  14. merge/resources/knowledgebase/resources/account_token/raw_client.py +98 -0
  15. merge/resources/knowledgebase/resources/articles/__init__.py +35 -0
  16. merge/resources/knowledgebase/resources/articles/client.py +378 -0
  17. merge/resources/knowledgebase/resources/articles/raw_client.py +363 -0
  18. merge/resources/knowledgebase/resources/articles/types/__init__.py +36 -0
  19. merge/resources/knowledgebase/resources/articles/types/articles_list_request_expand.py +625 -0
  20. merge/resources/knowledgebase/resources/articles/types/articles_retrieve_request_expand.py +631 -0
  21. merge/resources/knowledgebase/resources/async_passthrough/__init__.py +32 -0
  22. merge/resources/knowledgebase/resources/async_passthrough/client.py +201 -0
  23. merge/resources/knowledgebase/resources/async_passthrough/raw_client.py +189 -0
  24. merge/resources/knowledgebase/resources/async_passthrough/types/__init__.py +32 -0
  25. merge/resources/knowledgebase/resources/async_passthrough/types/async_passthrough_retrieve_response.py +7 -0
  26. merge/resources/knowledgebase/resources/attachments/__init__.py +4 -0
  27. merge/resources/knowledgebase/resources/attachments/client.py +326 -0
  28. merge/resources/knowledgebase/resources/attachments/raw_client.py +311 -0
  29. merge/resources/knowledgebase/resources/audit_trail/__init__.py +4 -0
  30. merge/resources/knowledgebase/resources/audit_trail/client.py +178 -0
  31. merge/resources/knowledgebase/resources/audit_trail/raw_client.py +161 -0
  32. merge/resources/knowledgebase/resources/available_actions/__init__.py +4 -0
  33. merge/resources/knowledgebase/resources/available_actions/client.py +102 -0
  34. merge/resources/knowledgebase/resources/available_actions/raw_client.py +91 -0
  35. merge/resources/knowledgebase/resources/containers/__init__.py +35 -0
  36. merge/resources/knowledgebase/resources/containers/client.py +378 -0
  37. merge/resources/knowledgebase/resources/containers/raw_client.py +363 -0
  38. merge/resources/knowledgebase/resources/containers/types/__init__.py +36 -0
  39. merge/resources/knowledgebase/resources/containers/types/containers_list_request_expand.py +41 -0
  40. merge/resources/knowledgebase/resources/containers/types/containers_retrieve_request_expand.py +41 -0
  41. merge/resources/knowledgebase/resources/delete_account/__init__.py +4 -0
  42. merge/resources/knowledgebase/resources/delete_account/client.py +99 -0
  43. merge/resources/knowledgebase/resources/delete_account/raw_client.py +71 -0
  44. merge/resources/knowledgebase/resources/field_mapping/__init__.py +4 -0
  45. merge/resources/knowledgebase/resources/field_mapping/client.py +652 -0
  46. merge/resources/knowledgebase/resources/field_mapping/raw_client.py +672 -0
  47. merge/resources/knowledgebase/resources/force_resync/__init__.py +4 -0
  48. merge/resources/knowledgebase/resources/force_resync/client.py +106 -0
  49. merge/resources/knowledgebase/resources/force_resync/raw_client.py +93 -0
  50. merge/resources/knowledgebase/resources/generate_key/__init__.py +4 -0
  51. merge/resources/knowledgebase/resources/generate_key/client.py +115 -0
  52. merge/resources/knowledgebase/resources/generate_key/raw_client.py +114 -0
  53. merge/resources/knowledgebase/resources/groups/__init__.py +32 -0
  54. merge/resources/knowledgebase/resources/groups/client.py +348 -0
  55. merge/resources/knowledgebase/resources/groups/raw_client.py +333 -0
  56. merge/resources/knowledgebase/resources/groups/types/__init__.py +36 -0
  57. merge/resources/knowledgebase/resources/groups/types/groups_list_request_expand.py +25 -0
  58. merge/resources/knowledgebase/resources/groups/types/groups_retrieve_request_expand.py +25 -0
  59. merge/resources/knowledgebase/resources/issues/__init__.py +32 -0
  60. merge/resources/knowledgebase/resources/issues/client.py +331 -0
  61. merge/resources/knowledgebase/resources/issues/raw_client.py +336 -0
  62. merge/resources/knowledgebase/resources/issues/types/__init__.py +32 -0
  63. merge/resources/knowledgebase/resources/issues/types/issues_list_request_status.py +17 -0
  64. merge/resources/knowledgebase/resources/link_token/__init__.py +32 -0
  65. merge/resources/knowledgebase/resources/link_token/client.py +273 -0
  66. merge/resources/knowledgebase/resources/link_token/raw_client.py +256 -0
  67. merge/resources/knowledgebase/resources/link_token/types/__init__.py +32 -0
  68. merge/resources/knowledgebase/resources/link_token/types/end_user_details_request_language.py +7 -0
  69. merge/resources/knowledgebase/resources/linked_accounts/__init__.py +32 -0
  70. merge/resources/knowledgebase/resources/linked_accounts/client.py +265 -0
  71. merge/resources/knowledgebase/resources/linked_accounts/raw_client.py +248 -0
  72. merge/resources/knowledgebase/resources/linked_accounts/types/__init__.py +34 -0
  73. merge/resources/knowledgebase/resources/linked_accounts/types/linked_accounts_list_request_category.py +45 -0
  74. merge/resources/knowledgebase/resources/passthrough/__init__.py +4 -0
  75. merge/resources/knowledgebase/resources/passthrough/client.py +126 -0
  76. merge/resources/knowledgebase/resources/passthrough/raw_client.py +111 -0
  77. merge/resources/knowledgebase/resources/regenerate_key/__init__.py +4 -0
  78. merge/resources/knowledgebase/resources/regenerate_key/client.py +115 -0
  79. merge/resources/knowledgebase/resources/regenerate_key/raw_client.py +114 -0
  80. merge/resources/knowledgebase/resources/scopes/__init__.py +4 -0
  81. merge/resources/knowledgebase/resources/scopes/client.py +320 -0
  82. merge/resources/knowledgebase/resources/scopes/raw_client.py +267 -0
  83. merge/resources/knowledgebase/resources/sync_status/__init__.py +4 -0
  84. merge/resources/knowledgebase/resources/sync_status/client.py +130 -0
  85. merge/resources/knowledgebase/resources/sync_status/raw_client.py +121 -0
  86. merge/resources/knowledgebase/resources/users/__init__.py +4 -0
  87. merge/resources/knowledgebase/resources/users/client.py +326 -0
  88. merge/resources/knowledgebase/resources/users/raw_client.py +311 -0
  89. merge/resources/knowledgebase/resources/webhook_receivers/__init__.py +4 -0
  90. merge/resources/knowledgebase/resources/webhook_receivers/client.py +201 -0
  91. merge/resources/knowledgebase/resources/webhook_receivers/raw_client.py +208 -0
  92. merge/resources/knowledgebase/types/__init__.py +374 -0
  93. merge/resources/knowledgebase/types/account_details.py +40 -0
  94. merge/resources/knowledgebase/types/account_details_and_actions.py +54 -0
  95. merge/resources/knowledgebase/types/account_details_and_actions_category.py +7 -0
  96. merge/resources/knowledgebase/types/account_details_and_actions_integration.py +29 -0
  97. merge/resources/knowledgebase/types/account_details_and_actions_status.py +7 -0
  98. merge/resources/knowledgebase/types/account_details_and_actions_status_enum.py +36 -0
  99. merge/resources/knowledgebase/types/account_details_category.py +7 -0
  100. merge/resources/knowledgebase/types/account_integration.py +67 -0
  101. merge/resources/knowledgebase/types/account_token.py +23 -0
  102. merge/resources/knowledgebase/types/advanced_metadata.py +25 -0
  103. merge/resources/knowledgebase/types/article.py +159 -0
  104. merge/resources/knowledgebase/types/article_attachments_item.py +7 -0
  105. merge/resources/knowledgebase/types/article_author.py +7 -0
  106. merge/resources/knowledgebase/types/article_last_edited_by.py +7 -0
  107. merge/resources/knowledgebase/types/article_parent_article.py +9 -0
  108. merge/resources/knowledgebase/types/article_parent_container.py +7 -0
  109. merge/resources/knowledgebase/types/article_permissions_item.py +7 -0
  110. merge/resources/knowledgebase/types/article_root_container.py +7 -0
  111. merge/resources/knowledgebase/types/article_status.py +7 -0
  112. merge/resources/knowledgebase/types/article_type.py +7 -0
  113. merge/resources/knowledgebase/types/article_type_enum.py +31 -0
  114. merge/resources/knowledgebase/types/article_visibility.py +7 -0
  115. merge/resources/knowledgebase/types/async_passthrough_reciept.py +20 -0
  116. merge/resources/knowledgebase/types/attachment.py +67 -0
  117. merge/resources/knowledgebase/types/audit_log_event.py +97 -0
  118. merge/resources/knowledgebase/types/audit_log_event_event_type.py +7 -0
  119. merge/resources/knowledgebase/types/audit_log_event_role.py +7 -0
  120. merge/resources/knowledgebase/types/available_actions.py +33 -0
  121. merge/resources/knowledgebase/types/categories_enum.py +56 -0
  122. merge/resources/knowledgebase/types/category_enum.py +56 -0
  123. merge/resources/knowledgebase/types/common_model_scope_api.py +24 -0
  124. merge/resources/knowledgebase/types/common_model_scopes_body_request.py +23 -0
  125. merge/resources/knowledgebase/types/completed_account_initial_screen_enum.py +5 -0
  126. merge/resources/knowledgebase/types/container.py +130 -0
  127. merge/resources/knowledgebase/types/container_permissions_item.py +7 -0
  128. merge/resources/knowledgebase/types/container_status.py +7 -0
  129. merge/resources/knowledgebase/types/container_type.py +7 -0
  130. merge/resources/knowledgebase/types/container_type_enum.py +46 -0
  131. merge/resources/knowledgebase/types/container_visibility.py +7 -0
  132. merge/resources/knowledgebase/types/data_passthrough_request.py +62 -0
  133. merge/resources/knowledgebase/types/data_passthrough_request_method.py +7 -0
  134. merge/resources/knowledgebase/types/data_passthrough_request_request_format.py +7 -0
  135. merge/resources/knowledgebase/types/debug_mode_log.py +23 -0
  136. merge/resources/knowledgebase/types/debug_model_log_summary.py +22 -0
  137. merge/resources/knowledgebase/types/enabled_actions_enum.py +22 -0
  138. merge/resources/knowledgebase/types/encoding_enum.py +31 -0
  139. merge/resources/knowledgebase/types/error_validation_problem.py +24 -0
  140. merge/resources/knowledgebase/types/event_type_enum.py +231 -0
  141. merge/resources/knowledgebase/types/external_target_field_api.py +22 -0
  142. merge/resources/knowledgebase/types/external_target_field_api_response.py +25 -0
  143. merge/resources/knowledgebase/types/field_mapping_api_instance.py +26 -0
  144. merge/resources/knowledgebase/types/field_mapping_api_instance_remote_field.py +27 -0
  145. merge/resources/knowledgebase/types/field_mapping_api_instance_remote_field_remote_endpoint_info.py +22 -0
  146. merge/resources/knowledgebase/types/field_mapping_api_instance_response.py +25 -0
  147. merge/resources/knowledgebase/types/field_mapping_api_instance_target_field.py +22 -0
  148. merge/resources/knowledgebase/types/field_mapping_instance_response.py +27 -0
  149. merge/resources/knowledgebase/types/field_permission_deserializer.py +21 -0
  150. merge/resources/knowledgebase/types/field_permission_deserializer_request.py +21 -0
  151. merge/resources/knowledgebase/types/group.py +71 -0
  152. merge/resources/knowledgebase/types/group_parent_group.py +9 -0
  153. merge/resources/knowledgebase/types/group_users_item.py +7 -0
  154. merge/resources/knowledgebase/types/individual_common_model_scope_deserializer.py +24 -0
  155. merge/resources/knowledgebase/types/individual_common_model_scope_deserializer_request.py +24 -0
  156. merge/resources/knowledgebase/types/issue.py +36 -0
  157. merge/resources/knowledgebase/types/issue_status.py +7 -0
  158. merge/resources/knowledgebase/types/issue_status_enum.py +22 -0
  159. merge/resources/knowledgebase/types/language_enum.py +22 -0
  160. merge/resources/knowledgebase/types/last_sync_result_enum.py +46 -0
  161. merge/resources/knowledgebase/types/link_token.py +22 -0
  162. merge/resources/knowledgebase/types/method_enum.py +51 -0
  163. merge/resources/knowledgebase/types/model_operation.py +32 -0
  164. merge/resources/knowledgebase/types/model_permission_deserializer.py +20 -0
  165. merge/resources/knowledgebase/types/model_permission_deserializer_request.py +20 -0
  166. merge/resources/knowledgebase/types/multipart_form_field_request.py +57 -0
  167. merge/resources/knowledgebase/types/multipart_form_field_request_encoding.py +7 -0
  168. merge/resources/knowledgebase/types/paginated_account_details_and_actions_list.py +23 -0
  169. merge/resources/knowledgebase/types/paginated_article_list.py +30 -0
  170. merge/resources/knowledgebase/types/paginated_attachment_list.py +23 -0
  171. merge/resources/knowledgebase/types/paginated_audit_log_event_list.py +23 -0
  172. merge/resources/knowledgebase/types/paginated_container_list.py +30 -0
  173. merge/resources/knowledgebase/types/paginated_group_list.py +29 -0
  174. merge/resources/knowledgebase/types/paginated_issue_list.py +23 -0
  175. merge/resources/knowledgebase/types/paginated_sync_status_list.py +23 -0
  176. merge/resources/knowledgebase/types/paginated_user_list.py +23 -0
  177. merge/resources/knowledgebase/types/permission.py +77 -0
  178. merge/resources/knowledgebase/types/permission_group.py +7 -0
  179. merge/resources/knowledgebase/types/permission_type.py +7 -0
  180. merge/resources/knowledgebase/types/permission_type_enum.py +36 -0
  181. merge/resources/knowledgebase/types/permission_user.py +7 -0
  182. merge/resources/knowledgebase/types/remote_data.py +34 -0
  183. merge/resources/knowledgebase/types/remote_endpoint_info.py +22 -0
  184. merge/resources/knowledgebase/types/remote_field_api.py +28 -0
  185. merge/resources/knowledgebase/types/remote_field_api_advanced_metadata.py +7 -0
  186. merge/resources/knowledgebase/types/remote_field_api_coverage.py +5 -0
  187. merge/resources/knowledgebase/types/remote_field_api_response.py +25 -0
  188. merge/resources/knowledgebase/types/remote_key.py +30 -0
  189. merge/resources/knowledgebase/types/remote_response.py +36 -0
  190. merge/resources/knowledgebase/types/remote_response_response_type.py +7 -0
  191. merge/resources/knowledgebase/types/request_format_enum.py +31 -0
  192. merge/resources/knowledgebase/types/response_type_enum.py +22 -0
  193. merge/resources/knowledgebase/types/role_enum.py +46 -0
  194. merge/resources/knowledgebase/types/roles_enum.py +31 -0
  195. merge/resources/knowledgebase/types/selective_sync_configurations_usage_enum.py +24 -0
  196. merge/resources/knowledgebase/types/status_3_c_6_enum.py +36 -0
  197. merge/resources/knowledgebase/types/status_fd_5_enum.py +46 -0
  198. merge/resources/knowledgebase/types/sync_status.py +41 -0
  199. merge/resources/knowledgebase/types/sync_status_last_sync_result.py +7 -0
  200. merge/resources/knowledgebase/types/sync_status_status.py +7 -0
  201. merge/resources/knowledgebase/types/user.py +60 -0
  202. merge/resources/knowledgebase/types/validation_problem_source.py +20 -0
  203. merge/resources/knowledgebase/types/visibility_enum.py +31 -0
  204. merge/resources/knowledgebase/types/warning_validation_problem.py +24 -0
  205. merge/resources/knowledgebase/types/webhook_receiver.py +22 -0
  206. {mergepythonclient-2.3.2.dist-info → mergepythonclient-2.4.0.dist-info}/METADATA +2 -1
  207. {mergepythonclient-2.3.2.dist-info → mergepythonclient-2.4.0.dist-info}/RECORD +209 -8
  208. {mergepythonclient-2.3.2.dist-info → mergepythonclient-2.4.0.dist-info}/LICENSE.md +0 -0
  209. {mergepythonclient-2.3.2.dist-info → mergepythonclient-2.4.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,32 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ import typing
6
+ from importlib import import_module
7
+
8
+ if typing.TYPE_CHECKING:
9
+ from .types import AsyncPassthroughRetrieveResponse
10
+ _dynamic_imports: typing.Dict[str, str] = {"AsyncPassthroughRetrieveResponse": ".types"}
11
+
12
+
13
+ def __getattr__(attr_name: str) -> typing.Any:
14
+ module_name = _dynamic_imports.get(attr_name)
15
+ if module_name is None:
16
+ raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
17
+ try:
18
+ module = import_module(module_name, __package__)
19
+ result = getattr(module, attr_name)
20
+ return result
21
+ except ImportError as e:
22
+ raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
23
+ except AttributeError as e:
24
+ raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
25
+
26
+
27
+ def __dir__():
28
+ lazy_attrs = list(_dynamic_imports.keys())
29
+ return sorted(lazy_attrs)
30
+
31
+
32
+ __all__ = ["AsyncPassthroughRetrieveResponse"]
@@ -0,0 +1,201 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .....core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
6
+ from .....core.request_options import RequestOptions
7
+ from ...types.async_passthrough_reciept import AsyncPassthroughReciept
8
+ from ...types.data_passthrough_request import DataPassthroughRequest
9
+ from .raw_client import AsyncRawAsyncPassthroughClient, RawAsyncPassthroughClient
10
+ from .types.async_passthrough_retrieve_response import AsyncPassthroughRetrieveResponse
11
+
12
+ # this is used as the default value for optional parameters
13
+ OMIT = typing.cast(typing.Any, ...)
14
+
15
+
16
+ class AsyncPassthroughClient:
17
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
18
+ self._raw_client = RawAsyncPassthroughClient(client_wrapper=client_wrapper)
19
+
20
+ @property
21
+ def with_raw_response(self) -> RawAsyncPassthroughClient:
22
+ """
23
+ Retrieves a raw implementation of this client that returns raw responses.
24
+
25
+ Returns
26
+ -------
27
+ RawAsyncPassthroughClient
28
+ """
29
+ return self._raw_client
30
+
31
+ def create(
32
+ self, *, request: DataPassthroughRequest, request_options: typing.Optional[RequestOptions] = None
33
+ ) -> AsyncPassthroughReciept:
34
+ """
35
+ Asynchronously pull data from an endpoint not currently supported by Merge.
36
+
37
+ Parameters
38
+ ----------
39
+ request : DataPassthroughRequest
40
+
41
+ request_options : typing.Optional[RequestOptions]
42
+ Request-specific configuration.
43
+
44
+ Returns
45
+ -------
46
+ AsyncPassthroughReciept
47
+
48
+
49
+ Examples
50
+ --------
51
+ from merge import Merge
52
+ from merge.resources.knowledgebase import DataPassthroughRequest, MethodEnum
53
+
54
+ client = Merge(
55
+ account_token="YOUR_ACCOUNT_TOKEN",
56
+ api_key="YOUR_API_KEY",
57
+ )
58
+ client.knowledgebase.async_passthrough.create(
59
+ request=DataPassthroughRequest(
60
+ method=MethodEnum.GET,
61
+ path="/scooters",
62
+ ),
63
+ )
64
+ """
65
+ _response = self._raw_client.create(request=request, request_options=request_options)
66
+ return _response.data
67
+
68
+ def retrieve(
69
+ self, async_passthrough_receipt_id: str, *, request_options: typing.Optional[RequestOptions] = None
70
+ ) -> AsyncPassthroughRetrieveResponse:
71
+ """
72
+ Retrieves data from earlier async-passthrough POST request
73
+
74
+ Parameters
75
+ ----------
76
+ async_passthrough_receipt_id : str
77
+
78
+ request_options : typing.Optional[RequestOptions]
79
+ Request-specific configuration.
80
+
81
+ Returns
82
+ -------
83
+ AsyncPassthroughRetrieveResponse
84
+
85
+
86
+ Examples
87
+ --------
88
+ from merge import Merge
89
+
90
+ client = Merge(
91
+ account_token="YOUR_ACCOUNT_TOKEN",
92
+ api_key="YOUR_API_KEY",
93
+ )
94
+ client.knowledgebase.async_passthrough.retrieve(
95
+ async_passthrough_receipt_id="async_passthrough_receipt_id",
96
+ )
97
+ """
98
+ _response = self._raw_client.retrieve(async_passthrough_receipt_id, request_options=request_options)
99
+ return _response.data
100
+
101
+
102
+ class AsyncAsyncPassthroughClient:
103
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
104
+ self._raw_client = AsyncRawAsyncPassthroughClient(client_wrapper=client_wrapper)
105
+
106
+ @property
107
+ def with_raw_response(self) -> AsyncRawAsyncPassthroughClient:
108
+ """
109
+ Retrieves a raw implementation of this client that returns raw responses.
110
+
111
+ Returns
112
+ -------
113
+ AsyncRawAsyncPassthroughClient
114
+ """
115
+ return self._raw_client
116
+
117
+ async def create(
118
+ self, *, request: DataPassthroughRequest, request_options: typing.Optional[RequestOptions] = None
119
+ ) -> AsyncPassthroughReciept:
120
+ """
121
+ Asynchronously pull data from an endpoint not currently supported by Merge.
122
+
123
+ Parameters
124
+ ----------
125
+ request : DataPassthroughRequest
126
+
127
+ request_options : typing.Optional[RequestOptions]
128
+ Request-specific configuration.
129
+
130
+ Returns
131
+ -------
132
+ AsyncPassthroughReciept
133
+
134
+
135
+ Examples
136
+ --------
137
+ import asyncio
138
+
139
+ from merge import AsyncMerge
140
+ from merge.resources.knowledgebase import DataPassthroughRequest, MethodEnum
141
+
142
+ client = AsyncMerge(
143
+ account_token="YOUR_ACCOUNT_TOKEN",
144
+ api_key="YOUR_API_KEY",
145
+ )
146
+
147
+
148
+ async def main() -> None:
149
+ await client.knowledgebase.async_passthrough.create(
150
+ request=DataPassthroughRequest(
151
+ method=MethodEnum.GET,
152
+ path="/scooters",
153
+ ),
154
+ )
155
+
156
+
157
+ asyncio.run(main())
158
+ """
159
+ _response = await self._raw_client.create(request=request, request_options=request_options)
160
+ return _response.data
161
+
162
+ async def retrieve(
163
+ self, async_passthrough_receipt_id: str, *, request_options: typing.Optional[RequestOptions] = None
164
+ ) -> AsyncPassthroughRetrieveResponse:
165
+ """
166
+ Retrieves data from earlier async-passthrough POST request
167
+
168
+ Parameters
169
+ ----------
170
+ async_passthrough_receipt_id : str
171
+
172
+ request_options : typing.Optional[RequestOptions]
173
+ Request-specific configuration.
174
+
175
+ Returns
176
+ -------
177
+ AsyncPassthroughRetrieveResponse
178
+
179
+
180
+ Examples
181
+ --------
182
+ import asyncio
183
+
184
+ from merge import AsyncMerge
185
+
186
+ client = AsyncMerge(
187
+ account_token="YOUR_ACCOUNT_TOKEN",
188
+ api_key="YOUR_API_KEY",
189
+ )
190
+
191
+
192
+ async def main() -> None:
193
+ await client.knowledgebase.async_passthrough.retrieve(
194
+ async_passthrough_receipt_id="async_passthrough_receipt_id",
195
+ )
196
+
197
+
198
+ asyncio.run(main())
199
+ """
200
+ _response = await self._raw_client.retrieve(async_passthrough_receipt_id, request_options=request_options)
201
+ return _response.data
@@ -0,0 +1,189 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+ from json.decoder import JSONDecodeError
5
+
6
+ from .....core.api_error import ApiError
7
+ from .....core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
8
+ from .....core.http_response import AsyncHttpResponse, HttpResponse
9
+ from .....core.jsonable_encoder import jsonable_encoder
10
+ from .....core.request_options import RequestOptions
11
+ from .....core.unchecked_base_model import construct_type
12
+ from ...types.async_passthrough_reciept import AsyncPassthroughReciept
13
+ from ...types.data_passthrough_request import DataPassthroughRequest
14
+ from .types.async_passthrough_retrieve_response import AsyncPassthroughRetrieveResponse
15
+
16
+ # this is used as the default value for optional parameters
17
+ OMIT = typing.cast(typing.Any, ...)
18
+
19
+
20
+ class RawAsyncPassthroughClient:
21
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
22
+ self._client_wrapper = client_wrapper
23
+
24
+ def create(
25
+ self, *, request: DataPassthroughRequest, request_options: typing.Optional[RequestOptions] = None
26
+ ) -> HttpResponse[AsyncPassthroughReciept]:
27
+ """
28
+ Asynchronously pull data from an endpoint not currently supported by Merge.
29
+
30
+ Parameters
31
+ ----------
32
+ request : DataPassthroughRequest
33
+
34
+ request_options : typing.Optional[RequestOptions]
35
+ Request-specific configuration.
36
+
37
+ Returns
38
+ -------
39
+ HttpResponse[AsyncPassthroughReciept]
40
+
41
+ """
42
+ _response = self._client_wrapper.httpx_client.request(
43
+ "knowledgebase/v1/async-passthrough",
44
+ method="POST",
45
+ json=request,
46
+ headers={
47
+ "content-type": "application/json",
48
+ },
49
+ request_options=request_options,
50
+ omit=OMIT,
51
+ )
52
+ try:
53
+ if 200 <= _response.status_code < 300:
54
+ _data = typing.cast(
55
+ AsyncPassthroughReciept,
56
+ construct_type(
57
+ type_=AsyncPassthroughReciept, # type: ignore
58
+ object_=_response.json(),
59
+ ),
60
+ )
61
+ return HttpResponse(response=_response, data=_data)
62
+ _response_json = _response.json()
63
+ except JSONDecodeError:
64
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
65
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
66
+
67
+ def retrieve(
68
+ self, async_passthrough_receipt_id: str, *, request_options: typing.Optional[RequestOptions] = None
69
+ ) -> HttpResponse[AsyncPassthroughRetrieveResponse]:
70
+ """
71
+ Retrieves data from earlier async-passthrough POST request
72
+
73
+ Parameters
74
+ ----------
75
+ async_passthrough_receipt_id : str
76
+
77
+ request_options : typing.Optional[RequestOptions]
78
+ Request-specific configuration.
79
+
80
+ Returns
81
+ -------
82
+ HttpResponse[AsyncPassthroughRetrieveResponse]
83
+
84
+ """
85
+ _response = self._client_wrapper.httpx_client.request(
86
+ f"knowledgebase/v1/async-passthrough/{jsonable_encoder(async_passthrough_receipt_id)}",
87
+ method="GET",
88
+ request_options=request_options,
89
+ )
90
+ try:
91
+ if 200 <= _response.status_code < 300:
92
+ _data = typing.cast(
93
+ AsyncPassthroughRetrieveResponse,
94
+ construct_type(
95
+ type_=AsyncPassthroughRetrieveResponse, # type: ignore
96
+ object_=_response.json(),
97
+ ),
98
+ )
99
+ return HttpResponse(response=_response, data=_data)
100
+ _response_json = _response.json()
101
+ except JSONDecodeError:
102
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
103
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
104
+
105
+
106
+ class AsyncRawAsyncPassthroughClient:
107
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
108
+ self._client_wrapper = client_wrapper
109
+
110
+ async def create(
111
+ self, *, request: DataPassthroughRequest, request_options: typing.Optional[RequestOptions] = None
112
+ ) -> AsyncHttpResponse[AsyncPassthroughReciept]:
113
+ """
114
+ Asynchronously pull data from an endpoint not currently supported by Merge.
115
+
116
+ Parameters
117
+ ----------
118
+ request : DataPassthroughRequest
119
+
120
+ request_options : typing.Optional[RequestOptions]
121
+ Request-specific configuration.
122
+
123
+ Returns
124
+ -------
125
+ AsyncHttpResponse[AsyncPassthroughReciept]
126
+
127
+ """
128
+ _response = await self._client_wrapper.httpx_client.request(
129
+ "knowledgebase/v1/async-passthrough",
130
+ method="POST",
131
+ json=request,
132
+ headers={
133
+ "content-type": "application/json",
134
+ },
135
+ request_options=request_options,
136
+ omit=OMIT,
137
+ )
138
+ try:
139
+ if 200 <= _response.status_code < 300:
140
+ _data = typing.cast(
141
+ AsyncPassthroughReciept,
142
+ construct_type(
143
+ type_=AsyncPassthroughReciept, # type: ignore
144
+ object_=_response.json(),
145
+ ),
146
+ )
147
+ return AsyncHttpResponse(response=_response, data=_data)
148
+ _response_json = _response.json()
149
+ except JSONDecodeError:
150
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
151
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
152
+
153
+ async def retrieve(
154
+ self, async_passthrough_receipt_id: str, *, request_options: typing.Optional[RequestOptions] = None
155
+ ) -> AsyncHttpResponse[AsyncPassthroughRetrieveResponse]:
156
+ """
157
+ Retrieves data from earlier async-passthrough POST request
158
+
159
+ Parameters
160
+ ----------
161
+ async_passthrough_receipt_id : str
162
+
163
+ request_options : typing.Optional[RequestOptions]
164
+ Request-specific configuration.
165
+
166
+ Returns
167
+ -------
168
+ AsyncHttpResponse[AsyncPassthroughRetrieveResponse]
169
+
170
+ """
171
+ _response = await self._client_wrapper.httpx_client.request(
172
+ f"knowledgebase/v1/async-passthrough/{jsonable_encoder(async_passthrough_receipt_id)}",
173
+ method="GET",
174
+ request_options=request_options,
175
+ )
176
+ try:
177
+ if 200 <= _response.status_code < 300:
178
+ _data = typing.cast(
179
+ AsyncPassthroughRetrieveResponse,
180
+ construct_type(
181
+ type_=AsyncPassthroughRetrieveResponse, # type: ignore
182
+ object_=_response.json(),
183
+ ),
184
+ )
185
+ return AsyncHttpResponse(response=_response, data=_data)
186
+ _response_json = _response.json()
187
+ except JSONDecodeError:
188
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
189
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
@@ -0,0 +1,32 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+
5
+ import typing
6
+ from importlib import import_module
7
+
8
+ if typing.TYPE_CHECKING:
9
+ from .async_passthrough_retrieve_response import AsyncPassthroughRetrieveResponse
10
+ _dynamic_imports: typing.Dict[str, str] = {"AsyncPassthroughRetrieveResponse": ".async_passthrough_retrieve_response"}
11
+
12
+
13
+ def __getattr__(attr_name: str) -> typing.Any:
14
+ module_name = _dynamic_imports.get(attr_name)
15
+ if module_name is None:
16
+ raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
17
+ try:
18
+ module = import_module(module_name, __package__)
19
+ result = getattr(module, attr_name)
20
+ return result
21
+ except ImportError as e:
22
+ raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
23
+ except AttributeError as e:
24
+ raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
25
+
26
+
27
+ def __dir__():
28
+ lazy_attrs = list(_dynamic_imports.keys())
29
+ return sorted(lazy_attrs)
30
+
31
+
32
+ __all__ = ["AsyncPassthroughRetrieveResponse"]
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from ....types.remote_response import RemoteResponse
6
+
7
+ AsyncPassthroughRetrieveResponse = typing.Union[RemoteResponse, str]
@@ -0,0 +1,4 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ # isort: skip_file
4
+