pingram-python 0.1.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 (189) hide show
  1. pingram/__init__.py +395 -0
  2. pingram/api/__init__.py +21 -0
  3. pingram/api/account_api.py +2198 -0
  4. pingram/api/addresses_api.py +860 -0
  5. pingram/api/components_api.py +1681 -0
  6. pingram/api/default_api.py +320 -0
  7. pingram/api/domains_api.py +849 -0
  8. pingram/api/editor_api.py +320 -0
  9. pingram/api/environments_api.py +878 -0
  10. pingram/api/health_api.py +287 -0
  11. pingram/api/insights_api.py +321 -0
  12. pingram/api/keys_api.py +849 -0
  13. pingram/api/logs_api.py +1632 -0
  14. pingram/api/members_api.py +1780 -0
  15. pingram/api/sender_api.py +892 -0
  16. pingram/api/templates_api.py +1889 -0
  17. pingram/api/types_api.py +1411 -0
  18. pingram/api/user_api.py +2534 -0
  19. pingram/api/users_api.py +936 -0
  20. pingram/api_client.py +807 -0
  21. pingram/api_response.py +21 -0
  22. pingram/client_wrapper.py +357 -0
  23. pingram/configuration.py +623 -0
  24. pingram/exceptions.py +219 -0
  25. pingram/models/__init__.py +173 -0
  26. pingram/models/account_addresses_response.py +95 -0
  27. pingram/models/account_addresses_response_addresses_inner.py +104 -0
  28. pingram/models/account_get_response.py +143 -0
  29. pingram/models/account_get_response_pending_downgrade_usage_limit.py +99 -0
  30. pingram/models/address_response.py +91 -0
  31. pingram/models/auto_join_get_response.py +89 -0
  32. pingram/models/auto_join_post_response.py +89 -0
  33. pingram/models/auto_join_request_body.py +87 -0
  34. pingram/models/bee_token_v2.py +89 -0
  35. pingram/models/billing_post_request_body.py +91 -0
  36. pingram/models/billing_post_response_body.py +149 -0
  37. pingram/models/billing_post_response_body_pending_downgrade_usage_limit.py +99 -0
  38. pingram/models/channels_enum.py +42 -0
  39. pingram/models/create_account_request_body.py +87 -0
  40. pingram/models/create_account_response.py +89 -0
  41. pingram/models/create_address_request.py +91 -0
  42. pingram/models/create_key_request.py +98 -0
  43. pingram/models/create_key_response.py +104 -0
  44. pingram/models/delete_key_response.py +87 -0
  45. pingram/models/delete_user_response.py +87 -0
  46. pingram/models/email_auth_token_post_request.py +87 -0
  47. pingram/models/email_component_patch_request.py +93 -0
  48. pingram/models/email_component_post_request.py +95 -0
  49. pingram/models/email_component_response.py +120 -0
  50. pingram/models/email_component_response_referenced_by_inner.py +92 -0
  51. pingram/models/environment.py +96 -0
  52. pingram/models/environment_create_request.py +87 -0
  53. pingram/models/environment_patch_request.py +94 -0
  54. pingram/models/get_account_metadata_response.py +91 -0
  55. pingram/models/get_account_metadata_response_user_account_metadata.py +91 -0
  56. pingram/models/get_email_components_response_inner.py +120 -0
  57. pingram/models/get_environments_response_inner.py +96 -0
  58. pingram/models/get_inapp_notifications_response.py +95 -0
  59. pingram/models/get_inapp_notifications_response_notifications_inner.py +137 -0
  60. pingram/models/get_inapp_notifications_response_notifications_inner_delivery_options.py +106 -0
  61. pingram/models/get_inapp_notifications_response_notifications_inner_delivery_options_instant.py +93 -0
  62. pingram/models/get_inapp_notifications_response_notifications_inner_delivery_options_off.py +87 -0
  63. pingram/models/get_inapp_notifications_response_notifications_inner_replies_inner.py +89 -0
  64. pingram/models/get_inapp_notifications_response_notifications_inner_template.py +136 -0
  65. pingram/models/get_inapp_notifications_response_notifications_inner_template_any_of.py +98 -0
  66. pingram/models/get_keys_response.py +95 -0
  67. pingram/models/get_keys_response_keys_inner.py +110 -0
  68. pingram/models/get_logs_response.py +97 -0
  69. pingram/models/get_logs_response_messages_inner.py +141 -0
  70. pingram/models/get_logs_response_messages_inner_attachments_inner.py +93 -0
  71. pingram/models/get_members_response_inner.py +95 -0
  72. pingram/models/get_metrics_response_inner.py +116 -0
  73. pingram/models/get_metrics_response_inner_messages_inner.py +89 -0
  74. pingram/models/get_notifications_response_inner.py +126 -0
  75. pingram/models/get_notifications_response_inner_deduplication.py +87 -0
  76. pingram/models/get_notifications_response_inner_options.py +122 -0
  77. pingram/models/get_notifications_response_inner_options_email.py +128 -0
  78. pingram/models/get_notifications_response_inner_options_email_daily.py +89 -0
  79. pingram/models/get_notifications_response_inner_options_email_monthly.py +101 -0
  80. pingram/models/get_notifications_response_inner_options_email_weekly.py +91 -0
  81. pingram/models/get_notifications_response_inner_templates_inner.py +90 -0
  82. pingram/models/get_notifications_response_inner_throttling.py +111 -0
  83. pingram/models/get_senders_response_inner.py +128 -0
  84. pingram/models/get_templates_response.py +136 -0
  85. pingram/models/get_users_response.py +99 -0
  86. pingram/models/get_users_response_users_inner.py +133 -0
  87. pingram/models/get_users_response_users_inner_email_suppression_status.py +96 -0
  88. pingram/models/get_users_response_users_inner_push_tokens_inner.py +104 -0
  89. pingram/models/get_users_response_users_inner_push_tokens_inner_device.py +97 -0
  90. pingram/models/get_users_response_users_inner_slack_token.py +140 -0
  91. pingram/models/get_users_response_users_inner_slack_token_authed_user.py +97 -0
  92. pingram/models/get_users_response_users_inner_slack_token_enterprise.py +89 -0
  93. pingram/models/get_users_response_users_inner_slack_token_incoming_webhook.py +93 -0
  94. pingram/models/get_users_response_users_inner_slack_token_response_metadata.py +97 -0
  95. pingram/models/get_users_response_users_inner_web_push_tokens_inner.py +91 -0
  96. pingram/models/get_users_response_users_inner_web_push_tokens_inner_sub.py +93 -0
  97. pingram/models/get_users_response_users_inner_web_push_tokens_inner_sub_keys.py +89 -0
  98. pingram/models/in_app_notification_patch_request.py +112 -0
  99. pingram/models/in_app_notification_unread_clear_request.py +89 -0
  100. pingram/models/inapp_unread_count_response.py +87 -0
  101. pingram/models/inbound_request_body.py +138 -0
  102. pingram/models/inbound_response_body.py +104 -0
  103. pingram/models/inbound_response_body_results_inner.py +103 -0
  104. pingram/models/ingishts_post_request.py +121 -0
  105. pingram/models/ingishts_post_request_label_options.py +87 -0
  106. pingram/models/ingishts_post_request_metric_data_queries_inner.py +103 -0
  107. pingram/models/ingishts_post_request_metric_data_queries_inner_metric_stat.py +107 -0
  108. pingram/models/ingishts_post_request_metric_data_queries_inner_metric_stat_metric.py +99 -0
  109. pingram/models/ingishts_post_request_metric_data_queries_inner_metric_stat_metric_dimensions_inner.py +89 -0
  110. pingram/models/intercom_webhook.py +106 -0
  111. pingram/models/intercom_webhook_data.py +91 -0
  112. pingram/models/intercom_webhook_data_item.py +136 -0
  113. pingram/models/intercom_webhook_data_item_any_of.py +140 -0
  114. pingram/models/intercom_webhook_data_item_any_of_contacts.py +104 -0
  115. pingram/models/intercom_webhook_data_item_any_of_contacts_contacts_inner.py +91 -0
  116. pingram/models/intercom_webhook_data_item_any_of_source.py +101 -0
  117. pingram/models/intercom_webhook_data_item_any_of_source_author.py +93 -0
  118. pingram/models/invite_post_response.py +89 -0
  119. pingram/models/log_query_post_body.py +109 -0
  120. pingram/models/logs_bulk_request.py +87 -0
  121. pingram/models/logs_get_response.py +95 -0
  122. pingram/models/logs_get_response_logs_inner.py +627 -0
  123. pingram/models/logs_query_response.py +87 -0
  124. pingram/models/logs_query_result_response.py +101 -0
  125. pingram/models/logs_retention_response.py +87 -0
  126. pingram/models/logs_tail_response.py +95 -0
  127. pingram/models/member_invite_request.py +89 -0
  128. pingram/models/member_update_request.py +87 -0
  129. pingram/models/message_response.py +87 -0
  130. pingram/models/notification.py +126 -0
  131. pingram/models/notification_create_request.py +97 -0
  132. pingram/models/notification_patch_request.py +112 -0
  133. pingram/models/post_email_test_request.py +99 -0
  134. pingram/models/post_email_test_response.py +89 -0
  135. pingram/models/post_senders_request_body.py +87 -0
  136. pingram/models/post_user_request.py +121 -0
  137. pingram/models/sender_post_body.py +166 -0
  138. pingram/models/sender_post_body_email.py +95 -0
  139. pingram/models/sender_post_body_inapp.py +91 -0
  140. pingram/models/sender_post_body_mobile_push.py +89 -0
  141. pingram/models/sender_post_body_options.py +103 -0
  142. pingram/models/sender_post_body_options_apn.py +99 -0
  143. pingram/models/sender_post_body_options_email.py +107 -0
  144. pingram/models/sender_post_body_options_email_attachments_inner.py +134 -0
  145. pingram/models/sender_post_body_options_email_attachments_inner_any_of.py +89 -0
  146. pingram/models/sender_post_body_options_email_attachments_inner_any_of1.py +91 -0
  147. pingram/models/sender_post_body_options_fcm.py +91 -0
  148. pingram/models/sender_post_body_options_fcm_android.py +103 -0
  149. pingram/models/sender_post_body_slack.py +123 -0
  150. pingram/models/sender_post_body_slack_metadata.py +99 -0
  151. pingram/models/sender_post_body_slack_metadata_entities_inner.py +99 -0
  152. pingram/models/sender_post_body_slack_metadata_entities_inner_external_ref.py +89 -0
  153. pingram/models/sender_post_body_sms.py +93 -0
  154. pingram/models/sender_post_body_sms_auto_reply.py +87 -0
  155. pingram/models/sender_post_body_to.py +133 -0
  156. pingram/models/sender_post_body_user.py +133 -0
  157. pingram/models/sender_post_body_web_push.py +93 -0
  158. pingram/models/sender_post_response.py +89 -0
  159. pingram/models/set_default_template_request.py +97 -0
  160. pingram/models/slack_interactivity_response.py +87 -0
  161. pingram/models/slack_oauth_request.py +89 -0
  162. pingram/models/success_response.py +87 -0
  163. pingram/models/supabase_configure_request.py +93 -0
  164. pingram/models/supabase_configure_response.py +89 -0
  165. pingram/models/supabase_o_auth_request.py +91 -0
  166. pingram/models/supabase_o_auth_response.py +89 -0
  167. pingram/models/supabase_projects_response.py +95 -0
  168. pingram/models/supabase_projects_response_projects_inner.py +95 -0
  169. pingram/models/supabase_status_response.py +93 -0
  170. pingram/models/template.py +98 -0
  171. pingram/models/template_patch_request.py +134 -0
  172. pingram/models/template_patch_request_any_of.py +97 -0
  173. pingram/models/template_patch_request_any_of1.py +103 -0
  174. pingram/models/template_patch_request_any_of1_batch.py +91 -0
  175. pingram/models/template_patch_request_any_of1_instant.py +91 -0
  176. pingram/models/template_post_request.py +131 -0
  177. pingram/models/template_post_request_batch.py +91 -0
  178. pingram/models/template_post_request_instant.py +91 -0
  179. pingram/models/update_address_request.py +91 -0
  180. pingram/models/user.py +133 -0
  181. pingram/models/user_suppression_delete_response.py +91 -0
  182. pingram/models/webhook_response.py +104 -0
  183. pingram/py.typed +0 -0
  184. pingram/rest.py +199 -0
  185. pingram_python-0.1.0.dist-info/METADATA +69 -0
  186. pingram_python-0.1.0.dist-info/RECORD +189 -0
  187. pingram_python-0.1.0.dist-info/WHEEL +5 -0
  188. pingram_python-0.1.0.dist-info/licenses/LICENSE +21 -0
  189. pingram_python-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1632 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ NotificationAPI
5
+
6
+ Internal API for notification delivery and management
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from pydantic import Field, StrictStr
20
+ from typing_extensions import Annotated
21
+ from pingram.models.get_logs_response import GetLogsResponse
22
+ from pingram.models.log_query_post_body import LogQueryPostBody
23
+ from pingram.models.logs_get_response import LogsGetResponse
24
+ from pingram.models.logs_query_response import LogsQueryResponse
25
+ from pingram.models.logs_query_result_response import LogsQueryResultResponse
26
+ from pingram.models.logs_retention_response import LogsRetentionResponse
27
+ from pingram.models.logs_tail_response import LogsTailResponse
28
+
29
+ from pingram.api_client import ApiClient, RequestSerialized
30
+ from pingram.api_response import ApiResponse
31
+ from pingram.rest import RESTResponseType
32
+
33
+
34
+ class LogsApi:
35
+ """NOTE: This class is auto generated by OpenAPI Generator
36
+ Ref: https://openapi-generator.tech
37
+
38
+ Do not edit the class manually.
39
+ """
40
+
41
+ def __init__(self, api_client=None) -> None:
42
+ if api_client is None:
43
+ api_client = ApiClient.get_default()
44
+ self.api_client = api_client
45
+
46
+
47
+ @validate_call
48
+ async def logs_get_log_retention(
49
+ self,
50
+ _request_timeout: Union[
51
+ None,
52
+ Annotated[StrictFloat, Field(gt=0)],
53
+ Tuple[
54
+ Annotated[StrictFloat, Field(gt=0)],
55
+ Annotated[StrictFloat, Field(gt=0)]
56
+ ]
57
+ ] = None,
58
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
59
+ _content_type: Optional[StrictStr] = None,
60
+ _headers: Optional[Dict[StrictStr, Any]] = None,
61
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
62
+ ) -> LogsRetentionResponse:
63
+ """Get log retention period in days for the account
64
+
65
+
66
+ :param _request_timeout: timeout setting for this request. If one
67
+ number provided, it will be total request
68
+ timeout. It can also be a pair (tuple) of
69
+ (connection, read) timeouts.
70
+ :type _request_timeout: int, tuple(int, int), optional
71
+ :param _request_auth: set to override the auth_settings for an a single
72
+ request; this effectively ignores the
73
+ authentication in the spec for a single request.
74
+ :type _request_auth: dict, optional
75
+ :param _content_type: force content-type for the request.
76
+ :type _content_type: str, Optional
77
+ :param _headers: set to override the headers for a single
78
+ request; this effectively ignores the headers
79
+ in the spec for a single request.
80
+ :type _headers: dict, optional
81
+ :param _host_index: set to override the host_index for a single
82
+ request; this effectively ignores the host_index
83
+ in the spec for a single request.
84
+ :type _host_index: int, optional
85
+ :return: Returns the result object.
86
+ """ # noqa: E501
87
+
88
+ _param = self._logs_get_log_retention_serialize(
89
+ _request_auth=_request_auth,
90
+ _content_type=_content_type,
91
+ _headers=_headers,
92
+ _host_index=_host_index
93
+ )
94
+
95
+ _response_types_map: Dict[str, Optional[str]] = {
96
+ '200': "LogsRetentionResponse",
97
+ '400': None,
98
+ '401': None,
99
+ '500': None,
100
+ }
101
+ response_data = await self.api_client.call_api(
102
+ *_param,
103
+ _request_timeout=_request_timeout
104
+ )
105
+ await response_data.read()
106
+ return self.api_client.response_deserialize(
107
+ response_data=response_data,
108
+ response_types_map=_response_types_map,
109
+ ).data
110
+
111
+
112
+ @validate_call
113
+ async def logs_get_log_retention_with_http_info(
114
+ self,
115
+ _request_timeout: Union[
116
+ None,
117
+ Annotated[StrictFloat, Field(gt=0)],
118
+ Tuple[
119
+ Annotated[StrictFloat, Field(gt=0)],
120
+ Annotated[StrictFloat, Field(gt=0)]
121
+ ]
122
+ ] = None,
123
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
124
+ _content_type: Optional[StrictStr] = None,
125
+ _headers: Optional[Dict[StrictStr, Any]] = None,
126
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
127
+ ) -> ApiResponse[LogsRetentionResponse]:
128
+ """Get log retention period in days for the account
129
+
130
+
131
+ :param _request_timeout: timeout setting for this request. If one
132
+ number provided, it will be total request
133
+ timeout. It can also be a pair (tuple) of
134
+ (connection, read) timeouts.
135
+ :type _request_timeout: int, tuple(int, int), optional
136
+ :param _request_auth: set to override the auth_settings for an a single
137
+ request; this effectively ignores the
138
+ authentication in the spec for a single request.
139
+ :type _request_auth: dict, optional
140
+ :param _content_type: force content-type for the request.
141
+ :type _content_type: str, Optional
142
+ :param _headers: set to override the headers for a single
143
+ request; this effectively ignores the headers
144
+ in the spec for a single request.
145
+ :type _headers: dict, optional
146
+ :param _host_index: set to override the host_index for a single
147
+ request; this effectively ignores the host_index
148
+ in the spec for a single request.
149
+ :type _host_index: int, optional
150
+ :return: Returns the result object.
151
+ """ # noqa: E501
152
+
153
+ _param = self._logs_get_log_retention_serialize(
154
+ _request_auth=_request_auth,
155
+ _content_type=_content_type,
156
+ _headers=_headers,
157
+ _host_index=_host_index
158
+ )
159
+
160
+ _response_types_map: Dict[str, Optional[str]] = {
161
+ '200': "LogsRetentionResponse",
162
+ '400': None,
163
+ '401': None,
164
+ '500': None,
165
+ }
166
+ response_data = await self.api_client.call_api(
167
+ *_param,
168
+ _request_timeout=_request_timeout
169
+ )
170
+ await response_data.read()
171
+ return self.api_client.response_deserialize(
172
+ response_data=response_data,
173
+ response_types_map=_response_types_map,
174
+ )
175
+
176
+
177
+ @validate_call
178
+ async def logs_get_log_retention_without_preload_content(
179
+ self,
180
+ _request_timeout: Union[
181
+ None,
182
+ Annotated[StrictFloat, Field(gt=0)],
183
+ Tuple[
184
+ Annotated[StrictFloat, Field(gt=0)],
185
+ Annotated[StrictFloat, Field(gt=0)]
186
+ ]
187
+ ] = None,
188
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
189
+ _content_type: Optional[StrictStr] = None,
190
+ _headers: Optional[Dict[StrictStr, Any]] = None,
191
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
192
+ ) -> RESTResponseType:
193
+ """Get log retention period in days for the account
194
+
195
+
196
+ :param _request_timeout: timeout setting for this request. If one
197
+ number provided, it will be total request
198
+ timeout. It can also be a pair (tuple) of
199
+ (connection, read) timeouts.
200
+ :type _request_timeout: int, tuple(int, int), optional
201
+ :param _request_auth: set to override the auth_settings for an a single
202
+ request; this effectively ignores the
203
+ authentication in the spec for a single request.
204
+ :type _request_auth: dict, optional
205
+ :param _content_type: force content-type for the request.
206
+ :type _content_type: str, Optional
207
+ :param _headers: set to override the headers for a single
208
+ request; this effectively ignores the headers
209
+ in the spec for a single request.
210
+ :type _headers: dict, optional
211
+ :param _host_index: set to override the host_index for a single
212
+ request; this effectively ignores the host_index
213
+ in the spec for a single request.
214
+ :type _host_index: int, optional
215
+ :return: Returns the result object.
216
+ """ # noqa: E501
217
+
218
+ _param = self._logs_get_log_retention_serialize(
219
+ _request_auth=_request_auth,
220
+ _content_type=_content_type,
221
+ _headers=_headers,
222
+ _host_index=_host_index
223
+ )
224
+
225
+ _response_types_map: Dict[str, Optional[str]] = {
226
+ '200': "LogsRetentionResponse",
227
+ '400': None,
228
+ '401': None,
229
+ '500': None,
230
+ }
231
+ response_data = await self.api_client.call_api(
232
+ *_param,
233
+ _request_timeout=_request_timeout
234
+ )
235
+ return response_data.response
236
+
237
+
238
+ def _logs_get_log_retention_serialize(
239
+ self,
240
+ _request_auth,
241
+ _content_type,
242
+ _headers,
243
+ _host_index,
244
+ ) -> RequestSerialized:
245
+
246
+ _host = None
247
+
248
+ _collection_formats: Dict[str, str] = {
249
+ }
250
+
251
+ _path_params: Dict[str, str] = {}
252
+ _query_params: List[Tuple[str, str]] = []
253
+ _header_params: Dict[str, Optional[str]] = _headers or {}
254
+ _form_params: List[Tuple[str, str]] = []
255
+ _files: Dict[
256
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
257
+ ] = {}
258
+ _body_params: Optional[bytes] = None
259
+
260
+ # process the path parameters
261
+ # process the query parameters
262
+ # process the header parameters
263
+ # process the form parameters
264
+ # process the body parameter
265
+
266
+
267
+ # set the HTTP header `Accept`
268
+ if 'Accept' not in _header_params:
269
+ _header_params['Accept'] = self.api_client.select_header_accept(
270
+ [
271
+ 'application/json'
272
+ ]
273
+ )
274
+
275
+
276
+ # authentication setting
277
+ _auth_settings: List[str] = [
278
+ 'endUserHashed',
279
+ 'endUser',
280
+ 'apiKey',
281
+ 'clientCredentials'
282
+ ]
283
+
284
+ return self.api_client.param_serialize(
285
+ method='GET',
286
+ resource_path='/logs/retention',
287
+ path_params=_path_params,
288
+ query_params=_query_params,
289
+ header_params=_header_params,
290
+ body=_body_params,
291
+ post_params=_form_params,
292
+ files=_files,
293
+ auth_settings=_auth_settings,
294
+ collection_formats=_collection_formats,
295
+ _host=_host,
296
+ _request_auth=_request_auth
297
+ )
298
+
299
+
300
+
301
+
302
+ @validate_call
303
+ async def logs_get_logs(
304
+ self,
305
+ _request_timeout: Union[
306
+ None,
307
+ Annotated[StrictFloat, Field(gt=0)],
308
+ Tuple[
309
+ Annotated[StrictFloat, Field(gt=0)],
310
+ Annotated[StrictFloat, Field(gt=0)]
311
+ ]
312
+ ] = None,
313
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
314
+ _content_type: Optional[StrictStr] = None,
315
+ _headers: Optional[Dict[StrictStr, Any]] = None,
316
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
317
+ ) -> GetLogsResponse:
318
+ """List logs for the authenticated account
319
+
320
+
321
+ :param _request_timeout: timeout setting for this request. If one
322
+ number provided, it will be total request
323
+ timeout. It can also be a pair (tuple) of
324
+ (connection, read) timeouts.
325
+ :type _request_timeout: int, tuple(int, int), optional
326
+ :param _request_auth: set to override the auth_settings for an a single
327
+ request; this effectively ignores the
328
+ authentication in the spec for a single request.
329
+ :type _request_auth: dict, optional
330
+ :param _content_type: force content-type for the request.
331
+ :type _content_type: str, Optional
332
+ :param _headers: set to override the headers for a single
333
+ request; this effectively ignores the headers
334
+ in the spec for a single request.
335
+ :type _headers: dict, optional
336
+ :param _host_index: set to override the host_index for a single
337
+ request; this effectively ignores the host_index
338
+ in the spec for a single request.
339
+ :type _host_index: int, optional
340
+ :return: Returns the result object.
341
+ """ # noqa: E501
342
+
343
+ _param = self._logs_get_logs_serialize(
344
+ _request_auth=_request_auth,
345
+ _content_type=_content_type,
346
+ _headers=_headers,
347
+ _host_index=_host_index
348
+ )
349
+
350
+ _response_types_map: Dict[str, Optional[str]] = {
351
+ '200': "GetLogsResponse",
352
+ '400': None,
353
+ '401': None,
354
+ '500': None,
355
+ }
356
+ response_data = await self.api_client.call_api(
357
+ *_param,
358
+ _request_timeout=_request_timeout
359
+ )
360
+ await response_data.read()
361
+ return self.api_client.response_deserialize(
362
+ response_data=response_data,
363
+ response_types_map=_response_types_map,
364
+ ).data
365
+
366
+
367
+ @validate_call
368
+ async def logs_get_logs_with_http_info(
369
+ self,
370
+ _request_timeout: Union[
371
+ None,
372
+ Annotated[StrictFloat, Field(gt=0)],
373
+ Tuple[
374
+ Annotated[StrictFloat, Field(gt=0)],
375
+ Annotated[StrictFloat, Field(gt=0)]
376
+ ]
377
+ ] = None,
378
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
379
+ _content_type: Optional[StrictStr] = None,
380
+ _headers: Optional[Dict[StrictStr, Any]] = None,
381
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
382
+ ) -> ApiResponse[GetLogsResponse]:
383
+ """List logs for the authenticated account
384
+
385
+
386
+ :param _request_timeout: timeout setting for this request. If one
387
+ number provided, it will be total request
388
+ timeout. It can also be a pair (tuple) of
389
+ (connection, read) timeouts.
390
+ :type _request_timeout: int, tuple(int, int), optional
391
+ :param _request_auth: set to override the auth_settings for an a single
392
+ request; this effectively ignores the
393
+ authentication in the spec for a single request.
394
+ :type _request_auth: dict, optional
395
+ :param _content_type: force content-type for the request.
396
+ :type _content_type: str, Optional
397
+ :param _headers: set to override the headers for a single
398
+ request; this effectively ignores the headers
399
+ in the spec for a single request.
400
+ :type _headers: dict, optional
401
+ :param _host_index: set to override the host_index for a single
402
+ request; this effectively ignores the host_index
403
+ in the spec for a single request.
404
+ :type _host_index: int, optional
405
+ :return: Returns the result object.
406
+ """ # noqa: E501
407
+
408
+ _param = self._logs_get_logs_serialize(
409
+ _request_auth=_request_auth,
410
+ _content_type=_content_type,
411
+ _headers=_headers,
412
+ _host_index=_host_index
413
+ )
414
+
415
+ _response_types_map: Dict[str, Optional[str]] = {
416
+ '200': "GetLogsResponse",
417
+ '400': None,
418
+ '401': None,
419
+ '500': None,
420
+ }
421
+ response_data = await self.api_client.call_api(
422
+ *_param,
423
+ _request_timeout=_request_timeout
424
+ )
425
+ await response_data.read()
426
+ return self.api_client.response_deserialize(
427
+ response_data=response_data,
428
+ response_types_map=_response_types_map,
429
+ )
430
+
431
+
432
+ @validate_call
433
+ async def logs_get_logs_without_preload_content(
434
+ self,
435
+ _request_timeout: Union[
436
+ None,
437
+ Annotated[StrictFloat, Field(gt=0)],
438
+ Tuple[
439
+ Annotated[StrictFloat, Field(gt=0)],
440
+ Annotated[StrictFloat, Field(gt=0)]
441
+ ]
442
+ ] = None,
443
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
444
+ _content_type: Optional[StrictStr] = None,
445
+ _headers: Optional[Dict[StrictStr, Any]] = None,
446
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
447
+ ) -> RESTResponseType:
448
+ """List logs for the authenticated account
449
+
450
+
451
+ :param _request_timeout: timeout setting for this request. If one
452
+ number provided, it will be total request
453
+ timeout. It can also be a pair (tuple) of
454
+ (connection, read) timeouts.
455
+ :type _request_timeout: int, tuple(int, int), optional
456
+ :param _request_auth: set to override the auth_settings for an a single
457
+ request; this effectively ignores the
458
+ authentication in the spec for a single request.
459
+ :type _request_auth: dict, optional
460
+ :param _content_type: force content-type for the request.
461
+ :type _content_type: str, Optional
462
+ :param _headers: set to override the headers for a single
463
+ request; this effectively ignores the headers
464
+ in the spec for a single request.
465
+ :type _headers: dict, optional
466
+ :param _host_index: set to override the host_index for a single
467
+ request; this effectively ignores the host_index
468
+ in the spec for a single request.
469
+ :type _host_index: int, optional
470
+ :return: Returns the result object.
471
+ """ # noqa: E501
472
+
473
+ _param = self._logs_get_logs_serialize(
474
+ _request_auth=_request_auth,
475
+ _content_type=_content_type,
476
+ _headers=_headers,
477
+ _host_index=_host_index
478
+ )
479
+
480
+ _response_types_map: Dict[str, Optional[str]] = {
481
+ '200': "GetLogsResponse",
482
+ '400': None,
483
+ '401': None,
484
+ '500': None,
485
+ }
486
+ response_data = await self.api_client.call_api(
487
+ *_param,
488
+ _request_timeout=_request_timeout
489
+ )
490
+ return response_data.response
491
+
492
+
493
+ def _logs_get_logs_serialize(
494
+ self,
495
+ _request_auth,
496
+ _content_type,
497
+ _headers,
498
+ _host_index,
499
+ ) -> RequestSerialized:
500
+
501
+ _host = None
502
+
503
+ _collection_formats: Dict[str, str] = {
504
+ }
505
+
506
+ _path_params: Dict[str, str] = {}
507
+ _query_params: List[Tuple[str, str]] = []
508
+ _header_params: Dict[str, Optional[str]] = _headers or {}
509
+ _form_params: List[Tuple[str, str]] = []
510
+ _files: Dict[
511
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
512
+ ] = {}
513
+ _body_params: Optional[bytes] = None
514
+
515
+ # process the path parameters
516
+ # process the query parameters
517
+ # process the header parameters
518
+ # process the form parameters
519
+ # process the body parameter
520
+
521
+
522
+ # set the HTTP header `Accept`
523
+ if 'Accept' not in _header_params:
524
+ _header_params['Accept'] = self.api_client.select_header_accept(
525
+ [
526
+ 'application/json'
527
+ ]
528
+ )
529
+
530
+
531
+ # authentication setting
532
+ _auth_settings: List[str] = [
533
+ 'endUserHashed',
534
+ 'endUser',
535
+ 'apiKey',
536
+ 'clientCredentials'
537
+ ]
538
+
539
+ return self.api_client.param_serialize(
540
+ method='GET',
541
+ resource_path='/logs',
542
+ path_params=_path_params,
543
+ query_params=_query_params,
544
+ header_params=_header_params,
545
+ body=_body_params,
546
+ post_params=_form_params,
547
+ files=_files,
548
+ auth_settings=_auth_settings,
549
+ collection_formats=_collection_formats,
550
+ _host=_host,
551
+ _request_auth=_request_auth
552
+ )
553
+
554
+
555
+
556
+
557
+ @validate_call
558
+ async def logs_get_logs_by_tracking_ids(
559
+ self,
560
+ tracking_ids: Annotated[StrictStr, Field(description="Comma-separated tracking IDs (URL encoded)")],
561
+ _request_timeout: Union[
562
+ None,
563
+ Annotated[StrictFloat, Field(gt=0)],
564
+ Tuple[
565
+ Annotated[StrictFloat, Field(gt=0)],
566
+ Annotated[StrictFloat, Field(gt=0)]
567
+ ]
568
+ ] = None,
569
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
570
+ _content_type: Optional[StrictStr] = None,
571
+ _headers: Optional[Dict[StrictStr, Any]] = None,
572
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
573
+ ) -> LogsGetResponse:
574
+ """Get logs by tracking IDs (comma-separated, max 25 IDs)
575
+
576
+
577
+ :param tracking_ids: Comma-separated tracking IDs (URL encoded) (required)
578
+ :type tracking_ids: str
579
+ :param _request_timeout: timeout setting for this request. If one
580
+ number provided, it will be total request
581
+ timeout. It can also be a pair (tuple) of
582
+ (connection, read) timeouts.
583
+ :type _request_timeout: int, tuple(int, int), optional
584
+ :param _request_auth: set to override the auth_settings for an a single
585
+ request; this effectively ignores the
586
+ authentication in the spec for a single request.
587
+ :type _request_auth: dict, optional
588
+ :param _content_type: force content-type for the request.
589
+ :type _content_type: str, Optional
590
+ :param _headers: set to override the headers for a single
591
+ request; this effectively ignores the headers
592
+ in the spec for a single request.
593
+ :type _headers: dict, optional
594
+ :param _host_index: set to override the host_index for a single
595
+ request; this effectively ignores the host_index
596
+ in the spec for a single request.
597
+ :type _host_index: int, optional
598
+ :return: Returns the result object.
599
+ """ # noqa: E501
600
+
601
+ _param = self._logs_get_logs_by_tracking_ids_serialize(
602
+ tracking_ids=tracking_ids,
603
+ _request_auth=_request_auth,
604
+ _content_type=_content_type,
605
+ _headers=_headers,
606
+ _host_index=_host_index
607
+ )
608
+
609
+ _response_types_map: Dict[str, Optional[str]] = {
610
+ '200': "LogsGetResponse",
611
+ '400': None,
612
+ '401': None,
613
+ '500': None,
614
+ }
615
+ response_data = await self.api_client.call_api(
616
+ *_param,
617
+ _request_timeout=_request_timeout
618
+ )
619
+ await response_data.read()
620
+ return self.api_client.response_deserialize(
621
+ response_data=response_data,
622
+ response_types_map=_response_types_map,
623
+ ).data
624
+
625
+
626
+ @validate_call
627
+ async def logs_get_logs_by_tracking_ids_with_http_info(
628
+ self,
629
+ tracking_ids: Annotated[StrictStr, Field(description="Comma-separated tracking IDs (URL encoded)")],
630
+ _request_timeout: Union[
631
+ None,
632
+ Annotated[StrictFloat, Field(gt=0)],
633
+ Tuple[
634
+ Annotated[StrictFloat, Field(gt=0)],
635
+ Annotated[StrictFloat, Field(gt=0)]
636
+ ]
637
+ ] = None,
638
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
639
+ _content_type: Optional[StrictStr] = None,
640
+ _headers: Optional[Dict[StrictStr, Any]] = None,
641
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
642
+ ) -> ApiResponse[LogsGetResponse]:
643
+ """Get logs by tracking IDs (comma-separated, max 25 IDs)
644
+
645
+
646
+ :param tracking_ids: Comma-separated tracking IDs (URL encoded) (required)
647
+ :type tracking_ids: str
648
+ :param _request_timeout: timeout setting for this request. If one
649
+ number provided, it will be total request
650
+ timeout. It can also be a pair (tuple) of
651
+ (connection, read) timeouts.
652
+ :type _request_timeout: int, tuple(int, int), optional
653
+ :param _request_auth: set to override the auth_settings for an a single
654
+ request; this effectively ignores the
655
+ authentication in the spec for a single request.
656
+ :type _request_auth: dict, optional
657
+ :param _content_type: force content-type for the request.
658
+ :type _content_type: str, Optional
659
+ :param _headers: set to override the headers for a single
660
+ request; this effectively ignores the headers
661
+ in the spec for a single request.
662
+ :type _headers: dict, optional
663
+ :param _host_index: set to override the host_index for a single
664
+ request; this effectively ignores the host_index
665
+ in the spec for a single request.
666
+ :type _host_index: int, optional
667
+ :return: Returns the result object.
668
+ """ # noqa: E501
669
+
670
+ _param = self._logs_get_logs_by_tracking_ids_serialize(
671
+ tracking_ids=tracking_ids,
672
+ _request_auth=_request_auth,
673
+ _content_type=_content_type,
674
+ _headers=_headers,
675
+ _host_index=_host_index
676
+ )
677
+
678
+ _response_types_map: Dict[str, Optional[str]] = {
679
+ '200': "LogsGetResponse",
680
+ '400': None,
681
+ '401': None,
682
+ '500': None,
683
+ }
684
+ response_data = await self.api_client.call_api(
685
+ *_param,
686
+ _request_timeout=_request_timeout
687
+ )
688
+ await response_data.read()
689
+ return self.api_client.response_deserialize(
690
+ response_data=response_data,
691
+ response_types_map=_response_types_map,
692
+ )
693
+
694
+
695
+ @validate_call
696
+ async def logs_get_logs_by_tracking_ids_without_preload_content(
697
+ self,
698
+ tracking_ids: Annotated[StrictStr, Field(description="Comma-separated tracking IDs (URL encoded)")],
699
+ _request_timeout: Union[
700
+ None,
701
+ Annotated[StrictFloat, Field(gt=0)],
702
+ Tuple[
703
+ Annotated[StrictFloat, Field(gt=0)],
704
+ Annotated[StrictFloat, Field(gt=0)]
705
+ ]
706
+ ] = None,
707
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
708
+ _content_type: Optional[StrictStr] = None,
709
+ _headers: Optional[Dict[StrictStr, Any]] = None,
710
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
711
+ ) -> RESTResponseType:
712
+ """Get logs by tracking IDs (comma-separated, max 25 IDs)
713
+
714
+
715
+ :param tracking_ids: Comma-separated tracking IDs (URL encoded) (required)
716
+ :type tracking_ids: str
717
+ :param _request_timeout: timeout setting for this request. If one
718
+ number provided, it will be total request
719
+ timeout. It can also be a pair (tuple) of
720
+ (connection, read) timeouts.
721
+ :type _request_timeout: int, tuple(int, int), optional
722
+ :param _request_auth: set to override the auth_settings for an a single
723
+ request; this effectively ignores the
724
+ authentication in the spec for a single request.
725
+ :type _request_auth: dict, optional
726
+ :param _content_type: force content-type for the request.
727
+ :type _content_type: str, Optional
728
+ :param _headers: set to override the headers for a single
729
+ request; this effectively ignores the headers
730
+ in the spec for a single request.
731
+ :type _headers: dict, optional
732
+ :param _host_index: set to override the host_index for a single
733
+ request; this effectively ignores the host_index
734
+ in the spec for a single request.
735
+ :type _host_index: int, optional
736
+ :return: Returns the result object.
737
+ """ # noqa: E501
738
+
739
+ _param = self._logs_get_logs_by_tracking_ids_serialize(
740
+ tracking_ids=tracking_ids,
741
+ _request_auth=_request_auth,
742
+ _content_type=_content_type,
743
+ _headers=_headers,
744
+ _host_index=_host_index
745
+ )
746
+
747
+ _response_types_map: Dict[str, Optional[str]] = {
748
+ '200': "LogsGetResponse",
749
+ '400': None,
750
+ '401': None,
751
+ '500': None,
752
+ }
753
+ response_data = await self.api_client.call_api(
754
+ *_param,
755
+ _request_timeout=_request_timeout
756
+ )
757
+ return response_data.response
758
+
759
+
760
+ def _logs_get_logs_by_tracking_ids_serialize(
761
+ self,
762
+ tracking_ids,
763
+ _request_auth,
764
+ _content_type,
765
+ _headers,
766
+ _host_index,
767
+ ) -> RequestSerialized:
768
+
769
+ _host = None
770
+
771
+ _collection_formats: Dict[str, str] = {
772
+ }
773
+
774
+ _path_params: Dict[str, str] = {}
775
+ _query_params: List[Tuple[str, str]] = []
776
+ _header_params: Dict[str, Optional[str]] = _headers or {}
777
+ _form_params: List[Tuple[str, str]] = []
778
+ _files: Dict[
779
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
780
+ ] = {}
781
+ _body_params: Optional[bytes] = None
782
+
783
+ # process the path parameters
784
+ if tracking_ids is not None:
785
+ _path_params['trackingIds'] = tracking_ids
786
+ # process the query parameters
787
+ # process the header parameters
788
+ # process the form parameters
789
+ # process the body parameter
790
+
791
+
792
+ # set the HTTP header `Accept`
793
+ if 'Accept' not in _header_params:
794
+ _header_params['Accept'] = self.api_client.select_header_accept(
795
+ [
796
+ 'application/json'
797
+ ]
798
+ )
799
+
800
+
801
+ # authentication setting
802
+ _auth_settings: List[str] = [
803
+ 'endUserHashed',
804
+ 'endUser',
805
+ 'apiKey',
806
+ 'clientCredentials'
807
+ ]
808
+
809
+ return self.api_client.param_serialize(
810
+ method='GET',
811
+ resource_path='/logs/{trackingIds}',
812
+ path_params=_path_params,
813
+ query_params=_query_params,
814
+ header_params=_header_params,
815
+ body=_body_params,
816
+ post_params=_form_params,
817
+ files=_files,
818
+ auth_settings=_auth_settings,
819
+ collection_formats=_collection_formats,
820
+ _host=_host,
821
+ _request_auth=_request_auth
822
+ )
823
+
824
+
825
+
826
+
827
+ @validate_call
828
+ async def logs_get_logs_query_result(
829
+ self,
830
+ query_id: Annotated[StrictStr, Field(description="Query ID")],
831
+ _request_timeout: Union[
832
+ None,
833
+ Annotated[StrictFloat, Field(gt=0)],
834
+ Tuple[
835
+ Annotated[StrictFloat, Field(gt=0)],
836
+ Annotated[StrictFloat, Field(gt=0)]
837
+ ]
838
+ ] = None,
839
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
840
+ _content_type: Optional[StrictStr] = None,
841
+ _headers: Optional[Dict[StrictStr, Any]] = None,
842
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
843
+ ) -> LogsQueryResultResponse:
844
+ """Get results from a query ID
845
+
846
+
847
+ :param query_id: Query ID (required)
848
+ :type query_id: str
849
+ :param _request_timeout: timeout setting for this request. If one
850
+ number provided, it will be total request
851
+ timeout. It can also be a pair (tuple) of
852
+ (connection, read) timeouts.
853
+ :type _request_timeout: int, tuple(int, int), optional
854
+ :param _request_auth: set to override the auth_settings for an a single
855
+ request; this effectively ignores the
856
+ authentication in the spec for a single request.
857
+ :type _request_auth: dict, optional
858
+ :param _content_type: force content-type for the request.
859
+ :type _content_type: str, Optional
860
+ :param _headers: set to override the headers for a single
861
+ request; this effectively ignores the headers
862
+ in the spec for a single request.
863
+ :type _headers: dict, optional
864
+ :param _host_index: set to override the host_index for a single
865
+ request; this effectively ignores the host_index
866
+ in the spec for a single request.
867
+ :type _host_index: int, optional
868
+ :return: Returns the result object.
869
+ """ # noqa: E501
870
+
871
+ _param = self._logs_get_logs_query_result_serialize(
872
+ query_id=query_id,
873
+ _request_auth=_request_auth,
874
+ _content_type=_content_type,
875
+ _headers=_headers,
876
+ _host_index=_host_index
877
+ )
878
+
879
+ _response_types_map: Dict[str, Optional[str]] = {
880
+ '200': "LogsQueryResultResponse",
881
+ '400': None,
882
+ '401': None,
883
+ '500': None,
884
+ }
885
+ response_data = await self.api_client.call_api(
886
+ *_param,
887
+ _request_timeout=_request_timeout
888
+ )
889
+ await response_data.read()
890
+ return self.api_client.response_deserialize(
891
+ response_data=response_data,
892
+ response_types_map=_response_types_map,
893
+ ).data
894
+
895
+
896
+ @validate_call
897
+ async def logs_get_logs_query_result_with_http_info(
898
+ self,
899
+ query_id: Annotated[StrictStr, Field(description="Query ID")],
900
+ _request_timeout: Union[
901
+ None,
902
+ Annotated[StrictFloat, Field(gt=0)],
903
+ Tuple[
904
+ Annotated[StrictFloat, Field(gt=0)],
905
+ Annotated[StrictFloat, Field(gt=0)]
906
+ ]
907
+ ] = None,
908
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
909
+ _content_type: Optional[StrictStr] = None,
910
+ _headers: Optional[Dict[StrictStr, Any]] = None,
911
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
912
+ ) -> ApiResponse[LogsQueryResultResponse]:
913
+ """Get results from a query ID
914
+
915
+
916
+ :param query_id: Query ID (required)
917
+ :type query_id: str
918
+ :param _request_timeout: timeout setting for this request. If one
919
+ number provided, it will be total request
920
+ timeout. It can also be a pair (tuple) of
921
+ (connection, read) timeouts.
922
+ :type _request_timeout: int, tuple(int, int), optional
923
+ :param _request_auth: set to override the auth_settings for an a single
924
+ request; this effectively ignores the
925
+ authentication in the spec for a single request.
926
+ :type _request_auth: dict, optional
927
+ :param _content_type: force content-type for the request.
928
+ :type _content_type: str, Optional
929
+ :param _headers: set to override the headers for a single
930
+ request; this effectively ignores the headers
931
+ in the spec for a single request.
932
+ :type _headers: dict, optional
933
+ :param _host_index: set to override the host_index for a single
934
+ request; this effectively ignores the host_index
935
+ in the spec for a single request.
936
+ :type _host_index: int, optional
937
+ :return: Returns the result object.
938
+ """ # noqa: E501
939
+
940
+ _param = self._logs_get_logs_query_result_serialize(
941
+ query_id=query_id,
942
+ _request_auth=_request_auth,
943
+ _content_type=_content_type,
944
+ _headers=_headers,
945
+ _host_index=_host_index
946
+ )
947
+
948
+ _response_types_map: Dict[str, Optional[str]] = {
949
+ '200': "LogsQueryResultResponse",
950
+ '400': None,
951
+ '401': None,
952
+ '500': None,
953
+ }
954
+ response_data = await self.api_client.call_api(
955
+ *_param,
956
+ _request_timeout=_request_timeout
957
+ )
958
+ await response_data.read()
959
+ return self.api_client.response_deserialize(
960
+ response_data=response_data,
961
+ response_types_map=_response_types_map,
962
+ )
963
+
964
+
965
+ @validate_call
966
+ async def logs_get_logs_query_result_without_preload_content(
967
+ self,
968
+ query_id: Annotated[StrictStr, Field(description="Query ID")],
969
+ _request_timeout: Union[
970
+ None,
971
+ Annotated[StrictFloat, Field(gt=0)],
972
+ Tuple[
973
+ Annotated[StrictFloat, Field(gt=0)],
974
+ Annotated[StrictFloat, Field(gt=0)]
975
+ ]
976
+ ] = None,
977
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
978
+ _content_type: Optional[StrictStr] = None,
979
+ _headers: Optional[Dict[StrictStr, Any]] = None,
980
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
981
+ ) -> RESTResponseType:
982
+ """Get results from a query ID
983
+
984
+
985
+ :param query_id: Query ID (required)
986
+ :type query_id: str
987
+ :param _request_timeout: timeout setting for this request. If one
988
+ number provided, it will be total request
989
+ timeout. It can also be a pair (tuple) of
990
+ (connection, read) timeouts.
991
+ :type _request_timeout: int, tuple(int, int), optional
992
+ :param _request_auth: set to override the auth_settings for an a single
993
+ request; this effectively ignores the
994
+ authentication in the spec for a single request.
995
+ :type _request_auth: dict, optional
996
+ :param _content_type: force content-type for the request.
997
+ :type _content_type: str, Optional
998
+ :param _headers: set to override the headers for a single
999
+ request; this effectively ignores the headers
1000
+ in the spec for a single request.
1001
+ :type _headers: dict, optional
1002
+ :param _host_index: set to override the host_index for a single
1003
+ request; this effectively ignores the host_index
1004
+ in the spec for a single request.
1005
+ :type _host_index: int, optional
1006
+ :return: Returns the result object.
1007
+ """ # noqa: E501
1008
+
1009
+ _param = self._logs_get_logs_query_result_serialize(
1010
+ query_id=query_id,
1011
+ _request_auth=_request_auth,
1012
+ _content_type=_content_type,
1013
+ _headers=_headers,
1014
+ _host_index=_host_index
1015
+ )
1016
+
1017
+ _response_types_map: Dict[str, Optional[str]] = {
1018
+ '200': "LogsQueryResultResponse",
1019
+ '400': None,
1020
+ '401': None,
1021
+ '500': None,
1022
+ }
1023
+ response_data = await self.api_client.call_api(
1024
+ *_param,
1025
+ _request_timeout=_request_timeout
1026
+ )
1027
+ return response_data.response
1028
+
1029
+
1030
+ def _logs_get_logs_query_result_serialize(
1031
+ self,
1032
+ query_id,
1033
+ _request_auth,
1034
+ _content_type,
1035
+ _headers,
1036
+ _host_index,
1037
+ ) -> RequestSerialized:
1038
+
1039
+ _host = None
1040
+
1041
+ _collection_formats: Dict[str, str] = {
1042
+ }
1043
+
1044
+ _path_params: Dict[str, str] = {}
1045
+ _query_params: List[Tuple[str, str]] = []
1046
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1047
+ _form_params: List[Tuple[str, str]] = []
1048
+ _files: Dict[
1049
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1050
+ ] = {}
1051
+ _body_params: Optional[bytes] = None
1052
+
1053
+ # process the path parameters
1054
+ if query_id is not None:
1055
+ _path_params['queryId'] = query_id
1056
+ # process the query parameters
1057
+ # process the header parameters
1058
+ # process the form parameters
1059
+ # process the body parameter
1060
+
1061
+
1062
+ # set the HTTP header `Accept`
1063
+ if 'Accept' not in _header_params:
1064
+ _header_params['Accept'] = self.api_client.select_header_accept(
1065
+ [
1066
+ 'application/json'
1067
+ ]
1068
+ )
1069
+
1070
+
1071
+ # authentication setting
1072
+ _auth_settings: List[str] = [
1073
+ 'endUserHashed',
1074
+ 'endUser',
1075
+ 'apiKey',
1076
+ 'clientCredentials'
1077
+ ]
1078
+
1079
+ return self.api_client.param_serialize(
1080
+ method='GET',
1081
+ resource_path='/logs/query/{queryId}',
1082
+ path_params=_path_params,
1083
+ query_params=_query_params,
1084
+ header_params=_header_params,
1085
+ body=_body_params,
1086
+ post_params=_form_params,
1087
+ files=_files,
1088
+ auth_settings=_auth_settings,
1089
+ collection_formats=_collection_formats,
1090
+ _host=_host,
1091
+ _request_auth=_request_auth
1092
+ )
1093
+
1094
+
1095
+
1096
+
1097
+ @validate_call
1098
+ async def logs_start_logs_query(
1099
+ self,
1100
+ log_query_post_body: LogQueryPostBody,
1101
+ _request_timeout: Union[
1102
+ None,
1103
+ Annotated[StrictFloat, Field(gt=0)],
1104
+ Tuple[
1105
+ Annotated[StrictFloat, Field(gt=0)],
1106
+ Annotated[StrictFloat, Field(gt=0)]
1107
+ ]
1108
+ ] = None,
1109
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1110
+ _content_type: Optional[StrictStr] = None,
1111
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1112
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1113
+ ) -> LogsQueryResponse:
1114
+ """Start a log query and return query ID for asynchronous log searching
1115
+
1116
+
1117
+ :param log_query_post_body: (required)
1118
+ :type log_query_post_body: LogQueryPostBody
1119
+ :param _request_timeout: timeout setting for this request. If one
1120
+ number provided, it will be total request
1121
+ timeout. It can also be a pair (tuple) of
1122
+ (connection, read) timeouts.
1123
+ :type _request_timeout: int, tuple(int, int), optional
1124
+ :param _request_auth: set to override the auth_settings for an a single
1125
+ request; this effectively ignores the
1126
+ authentication in the spec for a single request.
1127
+ :type _request_auth: dict, optional
1128
+ :param _content_type: force content-type for the request.
1129
+ :type _content_type: str, Optional
1130
+ :param _headers: set to override the headers for a single
1131
+ request; this effectively ignores the headers
1132
+ in the spec for a single request.
1133
+ :type _headers: dict, optional
1134
+ :param _host_index: set to override the host_index for a single
1135
+ request; this effectively ignores the host_index
1136
+ in the spec for a single request.
1137
+ :type _host_index: int, optional
1138
+ :return: Returns the result object.
1139
+ """ # noqa: E501
1140
+
1141
+ _param = self._logs_start_logs_query_serialize(
1142
+ log_query_post_body=log_query_post_body,
1143
+ _request_auth=_request_auth,
1144
+ _content_type=_content_type,
1145
+ _headers=_headers,
1146
+ _host_index=_host_index
1147
+ )
1148
+
1149
+ _response_types_map: Dict[str, Optional[str]] = {
1150
+ '200': "LogsQueryResponse",
1151
+ '400': None,
1152
+ '401': None,
1153
+ '500': None,
1154
+ }
1155
+ response_data = await self.api_client.call_api(
1156
+ *_param,
1157
+ _request_timeout=_request_timeout
1158
+ )
1159
+ await response_data.read()
1160
+ return self.api_client.response_deserialize(
1161
+ response_data=response_data,
1162
+ response_types_map=_response_types_map,
1163
+ ).data
1164
+
1165
+
1166
+ @validate_call
1167
+ async def logs_start_logs_query_with_http_info(
1168
+ self,
1169
+ log_query_post_body: LogQueryPostBody,
1170
+ _request_timeout: Union[
1171
+ None,
1172
+ Annotated[StrictFloat, Field(gt=0)],
1173
+ Tuple[
1174
+ Annotated[StrictFloat, Field(gt=0)],
1175
+ Annotated[StrictFloat, Field(gt=0)]
1176
+ ]
1177
+ ] = None,
1178
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1179
+ _content_type: Optional[StrictStr] = None,
1180
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1181
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1182
+ ) -> ApiResponse[LogsQueryResponse]:
1183
+ """Start a log query and return query ID for asynchronous log searching
1184
+
1185
+
1186
+ :param log_query_post_body: (required)
1187
+ :type log_query_post_body: LogQueryPostBody
1188
+ :param _request_timeout: timeout setting for this request. If one
1189
+ number provided, it will be total request
1190
+ timeout. It can also be a pair (tuple) of
1191
+ (connection, read) timeouts.
1192
+ :type _request_timeout: int, tuple(int, int), optional
1193
+ :param _request_auth: set to override the auth_settings for an a single
1194
+ request; this effectively ignores the
1195
+ authentication in the spec for a single request.
1196
+ :type _request_auth: dict, optional
1197
+ :param _content_type: force content-type for the request.
1198
+ :type _content_type: str, Optional
1199
+ :param _headers: set to override the headers for a single
1200
+ request; this effectively ignores the headers
1201
+ in the spec for a single request.
1202
+ :type _headers: dict, optional
1203
+ :param _host_index: set to override the host_index for a single
1204
+ request; this effectively ignores the host_index
1205
+ in the spec for a single request.
1206
+ :type _host_index: int, optional
1207
+ :return: Returns the result object.
1208
+ """ # noqa: E501
1209
+
1210
+ _param = self._logs_start_logs_query_serialize(
1211
+ log_query_post_body=log_query_post_body,
1212
+ _request_auth=_request_auth,
1213
+ _content_type=_content_type,
1214
+ _headers=_headers,
1215
+ _host_index=_host_index
1216
+ )
1217
+
1218
+ _response_types_map: Dict[str, Optional[str]] = {
1219
+ '200': "LogsQueryResponse",
1220
+ '400': None,
1221
+ '401': None,
1222
+ '500': None,
1223
+ }
1224
+ response_data = await self.api_client.call_api(
1225
+ *_param,
1226
+ _request_timeout=_request_timeout
1227
+ )
1228
+ await response_data.read()
1229
+ return self.api_client.response_deserialize(
1230
+ response_data=response_data,
1231
+ response_types_map=_response_types_map,
1232
+ )
1233
+
1234
+
1235
+ @validate_call
1236
+ async def logs_start_logs_query_without_preload_content(
1237
+ self,
1238
+ log_query_post_body: LogQueryPostBody,
1239
+ _request_timeout: Union[
1240
+ None,
1241
+ Annotated[StrictFloat, Field(gt=0)],
1242
+ Tuple[
1243
+ Annotated[StrictFloat, Field(gt=0)],
1244
+ Annotated[StrictFloat, Field(gt=0)]
1245
+ ]
1246
+ ] = None,
1247
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1248
+ _content_type: Optional[StrictStr] = None,
1249
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1250
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1251
+ ) -> RESTResponseType:
1252
+ """Start a log query and return query ID for asynchronous log searching
1253
+
1254
+
1255
+ :param log_query_post_body: (required)
1256
+ :type log_query_post_body: LogQueryPostBody
1257
+ :param _request_timeout: timeout setting for this request. If one
1258
+ number provided, it will be total request
1259
+ timeout. It can also be a pair (tuple) of
1260
+ (connection, read) timeouts.
1261
+ :type _request_timeout: int, tuple(int, int), optional
1262
+ :param _request_auth: set to override the auth_settings for an a single
1263
+ request; this effectively ignores the
1264
+ authentication in the spec for a single request.
1265
+ :type _request_auth: dict, optional
1266
+ :param _content_type: force content-type for the request.
1267
+ :type _content_type: str, Optional
1268
+ :param _headers: set to override the headers for a single
1269
+ request; this effectively ignores the headers
1270
+ in the spec for a single request.
1271
+ :type _headers: dict, optional
1272
+ :param _host_index: set to override the host_index for a single
1273
+ request; this effectively ignores the host_index
1274
+ in the spec for a single request.
1275
+ :type _host_index: int, optional
1276
+ :return: Returns the result object.
1277
+ """ # noqa: E501
1278
+
1279
+ _param = self._logs_start_logs_query_serialize(
1280
+ log_query_post_body=log_query_post_body,
1281
+ _request_auth=_request_auth,
1282
+ _content_type=_content_type,
1283
+ _headers=_headers,
1284
+ _host_index=_host_index
1285
+ )
1286
+
1287
+ _response_types_map: Dict[str, Optional[str]] = {
1288
+ '200': "LogsQueryResponse",
1289
+ '400': None,
1290
+ '401': None,
1291
+ '500': None,
1292
+ }
1293
+ response_data = await self.api_client.call_api(
1294
+ *_param,
1295
+ _request_timeout=_request_timeout
1296
+ )
1297
+ return response_data.response
1298
+
1299
+
1300
+ def _logs_start_logs_query_serialize(
1301
+ self,
1302
+ log_query_post_body,
1303
+ _request_auth,
1304
+ _content_type,
1305
+ _headers,
1306
+ _host_index,
1307
+ ) -> RequestSerialized:
1308
+
1309
+ _host = None
1310
+
1311
+ _collection_formats: Dict[str, str] = {
1312
+ }
1313
+
1314
+ _path_params: Dict[str, str] = {}
1315
+ _query_params: List[Tuple[str, str]] = []
1316
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1317
+ _form_params: List[Tuple[str, str]] = []
1318
+ _files: Dict[
1319
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1320
+ ] = {}
1321
+ _body_params: Optional[bytes] = None
1322
+
1323
+ # process the path parameters
1324
+ # process the query parameters
1325
+ # process the header parameters
1326
+ # process the form parameters
1327
+ # process the body parameter
1328
+ if log_query_post_body is not None:
1329
+ _body_params = log_query_post_body
1330
+
1331
+
1332
+ # set the HTTP header `Accept`
1333
+ if 'Accept' not in _header_params:
1334
+ _header_params['Accept'] = self.api_client.select_header_accept(
1335
+ [
1336
+ 'application/json'
1337
+ ]
1338
+ )
1339
+
1340
+ # set the HTTP header `Content-Type`
1341
+ if _content_type:
1342
+ _header_params['Content-Type'] = _content_type
1343
+ else:
1344
+ _default_content_type = (
1345
+ self.api_client.select_header_content_type(
1346
+ [
1347
+ 'application/json'
1348
+ ]
1349
+ )
1350
+ )
1351
+ if _default_content_type is not None:
1352
+ _header_params['Content-Type'] = _default_content_type
1353
+
1354
+ # authentication setting
1355
+ _auth_settings: List[str] = [
1356
+ 'endUserHashed',
1357
+ 'endUser',
1358
+ 'apiKey',
1359
+ 'clientCredentials'
1360
+ ]
1361
+
1362
+ return self.api_client.param_serialize(
1363
+ method='POST',
1364
+ resource_path='/logs/query',
1365
+ path_params=_path_params,
1366
+ query_params=_query_params,
1367
+ header_params=_header_params,
1368
+ body=_body_params,
1369
+ post_params=_form_params,
1370
+ files=_files,
1371
+ auth_settings=_auth_settings,
1372
+ collection_formats=_collection_formats,
1373
+ _host=_host,
1374
+ _request_auth=_request_auth
1375
+ )
1376
+
1377
+
1378
+
1379
+
1380
+ @validate_call
1381
+ async def logs_tail_logs(
1382
+ self,
1383
+ _request_timeout: Union[
1384
+ None,
1385
+ Annotated[StrictFloat, Field(gt=0)],
1386
+ Tuple[
1387
+ Annotated[StrictFloat, Field(gt=0)],
1388
+ Annotated[StrictFloat, Field(gt=0)]
1389
+ ]
1390
+ ] = None,
1391
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1392
+ _content_type: Optional[StrictStr] = None,
1393
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1394
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1395
+ ) -> LogsTailResponse:
1396
+ """Get last 100 logs from the stream
1397
+
1398
+
1399
+ :param _request_timeout: timeout setting for this request. If one
1400
+ number provided, it will be total request
1401
+ timeout. It can also be a pair (tuple) of
1402
+ (connection, read) timeouts.
1403
+ :type _request_timeout: int, tuple(int, int), optional
1404
+ :param _request_auth: set to override the auth_settings for an a single
1405
+ request; this effectively ignores the
1406
+ authentication in the spec for a single request.
1407
+ :type _request_auth: dict, optional
1408
+ :param _content_type: force content-type for the request.
1409
+ :type _content_type: str, Optional
1410
+ :param _headers: set to override the headers for a single
1411
+ request; this effectively ignores the headers
1412
+ in the spec for a single request.
1413
+ :type _headers: dict, optional
1414
+ :param _host_index: set to override the host_index for a single
1415
+ request; this effectively ignores the host_index
1416
+ in the spec for a single request.
1417
+ :type _host_index: int, optional
1418
+ :return: Returns the result object.
1419
+ """ # noqa: E501
1420
+
1421
+ _param = self._logs_tail_logs_serialize(
1422
+ _request_auth=_request_auth,
1423
+ _content_type=_content_type,
1424
+ _headers=_headers,
1425
+ _host_index=_host_index
1426
+ )
1427
+
1428
+ _response_types_map: Dict[str, Optional[str]] = {
1429
+ '200': "LogsTailResponse",
1430
+ '400': None,
1431
+ '401': None,
1432
+ '500': None,
1433
+ }
1434
+ response_data = await self.api_client.call_api(
1435
+ *_param,
1436
+ _request_timeout=_request_timeout
1437
+ )
1438
+ await response_data.read()
1439
+ return self.api_client.response_deserialize(
1440
+ response_data=response_data,
1441
+ response_types_map=_response_types_map,
1442
+ ).data
1443
+
1444
+
1445
+ @validate_call
1446
+ async def logs_tail_logs_with_http_info(
1447
+ self,
1448
+ _request_timeout: Union[
1449
+ None,
1450
+ Annotated[StrictFloat, Field(gt=0)],
1451
+ Tuple[
1452
+ Annotated[StrictFloat, Field(gt=0)],
1453
+ Annotated[StrictFloat, Field(gt=0)]
1454
+ ]
1455
+ ] = None,
1456
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1457
+ _content_type: Optional[StrictStr] = None,
1458
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1459
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1460
+ ) -> ApiResponse[LogsTailResponse]:
1461
+ """Get last 100 logs from the stream
1462
+
1463
+
1464
+ :param _request_timeout: timeout setting for this request. If one
1465
+ number provided, it will be total request
1466
+ timeout. It can also be a pair (tuple) of
1467
+ (connection, read) timeouts.
1468
+ :type _request_timeout: int, tuple(int, int), optional
1469
+ :param _request_auth: set to override the auth_settings for an a single
1470
+ request; this effectively ignores the
1471
+ authentication in the spec for a single request.
1472
+ :type _request_auth: dict, optional
1473
+ :param _content_type: force content-type for the request.
1474
+ :type _content_type: str, Optional
1475
+ :param _headers: set to override the headers for a single
1476
+ request; this effectively ignores the headers
1477
+ in the spec for a single request.
1478
+ :type _headers: dict, optional
1479
+ :param _host_index: set to override the host_index for a single
1480
+ request; this effectively ignores the host_index
1481
+ in the spec for a single request.
1482
+ :type _host_index: int, optional
1483
+ :return: Returns the result object.
1484
+ """ # noqa: E501
1485
+
1486
+ _param = self._logs_tail_logs_serialize(
1487
+ _request_auth=_request_auth,
1488
+ _content_type=_content_type,
1489
+ _headers=_headers,
1490
+ _host_index=_host_index
1491
+ )
1492
+
1493
+ _response_types_map: Dict[str, Optional[str]] = {
1494
+ '200': "LogsTailResponse",
1495
+ '400': None,
1496
+ '401': None,
1497
+ '500': None,
1498
+ }
1499
+ response_data = await self.api_client.call_api(
1500
+ *_param,
1501
+ _request_timeout=_request_timeout
1502
+ )
1503
+ await response_data.read()
1504
+ return self.api_client.response_deserialize(
1505
+ response_data=response_data,
1506
+ response_types_map=_response_types_map,
1507
+ )
1508
+
1509
+
1510
+ @validate_call
1511
+ async def logs_tail_logs_without_preload_content(
1512
+ self,
1513
+ _request_timeout: Union[
1514
+ None,
1515
+ Annotated[StrictFloat, Field(gt=0)],
1516
+ Tuple[
1517
+ Annotated[StrictFloat, Field(gt=0)],
1518
+ Annotated[StrictFloat, Field(gt=0)]
1519
+ ]
1520
+ ] = None,
1521
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1522
+ _content_type: Optional[StrictStr] = None,
1523
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1524
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1525
+ ) -> RESTResponseType:
1526
+ """Get last 100 logs from the stream
1527
+
1528
+
1529
+ :param _request_timeout: timeout setting for this request. If one
1530
+ number provided, it will be total request
1531
+ timeout. It can also be a pair (tuple) of
1532
+ (connection, read) timeouts.
1533
+ :type _request_timeout: int, tuple(int, int), optional
1534
+ :param _request_auth: set to override the auth_settings for an a single
1535
+ request; this effectively ignores the
1536
+ authentication in the spec for a single request.
1537
+ :type _request_auth: dict, optional
1538
+ :param _content_type: force content-type for the request.
1539
+ :type _content_type: str, Optional
1540
+ :param _headers: set to override the headers for a single
1541
+ request; this effectively ignores the headers
1542
+ in the spec for a single request.
1543
+ :type _headers: dict, optional
1544
+ :param _host_index: set to override the host_index for a single
1545
+ request; this effectively ignores the host_index
1546
+ in the spec for a single request.
1547
+ :type _host_index: int, optional
1548
+ :return: Returns the result object.
1549
+ """ # noqa: E501
1550
+
1551
+ _param = self._logs_tail_logs_serialize(
1552
+ _request_auth=_request_auth,
1553
+ _content_type=_content_type,
1554
+ _headers=_headers,
1555
+ _host_index=_host_index
1556
+ )
1557
+
1558
+ _response_types_map: Dict[str, Optional[str]] = {
1559
+ '200': "LogsTailResponse",
1560
+ '400': None,
1561
+ '401': None,
1562
+ '500': None,
1563
+ }
1564
+ response_data = await self.api_client.call_api(
1565
+ *_param,
1566
+ _request_timeout=_request_timeout
1567
+ )
1568
+ return response_data.response
1569
+
1570
+
1571
+ def _logs_tail_logs_serialize(
1572
+ self,
1573
+ _request_auth,
1574
+ _content_type,
1575
+ _headers,
1576
+ _host_index,
1577
+ ) -> RequestSerialized:
1578
+
1579
+ _host = None
1580
+
1581
+ _collection_formats: Dict[str, str] = {
1582
+ }
1583
+
1584
+ _path_params: Dict[str, str] = {}
1585
+ _query_params: List[Tuple[str, str]] = []
1586
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1587
+ _form_params: List[Tuple[str, str]] = []
1588
+ _files: Dict[
1589
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1590
+ ] = {}
1591
+ _body_params: Optional[bytes] = None
1592
+
1593
+ # process the path parameters
1594
+ # process the query parameters
1595
+ # process the header parameters
1596
+ # process the form parameters
1597
+ # process the body parameter
1598
+
1599
+
1600
+ # set the HTTP header `Accept`
1601
+ if 'Accept' not in _header_params:
1602
+ _header_params['Accept'] = self.api_client.select_header_accept(
1603
+ [
1604
+ 'application/json'
1605
+ ]
1606
+ )
1607
+
1608
+
1609
+ # authentication setting
1610
+ _auth_settings: List[str] = [
1611
+ 'endUserHashed',
1612
+ 'endUser',
1613
+ 'apiKey',
1614
+ 'clientCredentials'
1615
+ ]
1616
+
1617
+ return self.api_client.param_serialize(
1618
+ method='GET',
1619
+ resource_path='/logs/tail',
1620
+ path_params=_path_params,
1621
+ query_params=_query_params,
1622
+ header_params=_header_params,
1623
+ body=_body_params,
1624
+ post_params=_form_params,
1625
+ files=_files,
1626
+ auth_settings=_auth_settings,
1627
+ collection_formats=_collection_formats,
1628
+ _host=_host,
1629
+ _request_auth=_request_auth
1630
+ )
1631
+
1632
+