typizer 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 (318) hide show
  1. typizer/__init__.py +8 -0
  2. typizer/api/__init__.py +1 -0
  3. typizer/api/account/__init__.py +1 -0
  4. typizer/api/account/delete_me.py +243 -0
  5. typizer/api/account/get_me.py +192 -0
  6. typizer/api/account/list_sign_ins.py +194 -0
  7. typizer/api/agent/__init__.py +1 -0
  8. typizer/api/agent/create_agent_message.py +290 -0
  9. typizer/api/agent/create_agent_sample_run.py +304 -0
  10. typizer/api/agent/create_agent_thread.py +251 -0
  11. typizer/api/agent/get_agent_thread.py +223 -0
  12. typizer/api/agent/list_agent_threads.py +243 -0
  13. typizer/api/agent/save_agent_thread.py +283 -0
  14. typizer/api/agent/update_agent_thread.py +245 -0
  15. typizer/api/api_keys/__init__.py +1 -0
  16. typizer/api/api_keys/create_api_key.py +235 -0
  17. typizer/api/api_keys/delete_api_key.py +217 -0
  18. typizer/api/api_keys/list_api_keys.py +196 -0
  19. typizer/api/auth/__init__.py +1 -0
  20. typizer/api/auth/start_login.py +209 -0
  21. typizer/api/batches/__init__.py +1 -0
  22. typizer/api/batches/create_batch.py +333 -0
  23. typizer/api/batches/export_batch.py +281 -0
  24. typizer/api/batches/get_batch.py +213 -0
  25. typizer/api/batches/list_batches.py +243 -0
  26. typizer/api/billing/__init__.py +1 -0
  27. typizer/api/billing/create_checkout.py +243 -0
  28. typizer/api/billing/create_contract_request.py +233 -0
  29. typizer/api/billing/create_invoice.py +243 -0
  30. typizer/api/billing/get_act_pdf.py +225 -0
  31. typizer/api/billing/get_balance.py +187 -0
  32. typizer/api/billing/get_billing_profile.py +196 -0
  33. typizer/api/billing/get_company.py +233 -0
  34. typizer/api/billing/get_contract_request_pdf.py +225 -0
  35. typizer/api/billing/get_payment.py +213 -0
  36. typizer/api/billing/get_usage.py +278 -0
  37. typizer/api/billing/list_contract_requests.py +196 -0
  38. typizer/api/billing/list_payments.py +233 -0
  39. typizer/api/billing/suggest_companies.py +214 -0
  40. typizer/api/billing/update_autotopup.py +231 -0
  41. typizer/api/billing/update_billing_profile.py +230 -0
  42. typizer/api/consents/__init__.py +1 -0
  43. typizer/api/consents/create_consent.py +228 -0
  44. typizer/api/consents/get_my_consents.py +210 -0
  45. typizer/api/demo/__init__.py +1 -0
  46. typizer/api/demo/create_demo_run.py +314 -0
  47. typizer/api/demo/get_demo_run.py +249 -0
  48. typizer/api/demo/list_demo_samples.py +159 -0
  49. typizer/api/files/__init__.py +1 -0
  50. typizer/api/files/create_file.py +266 -0
  51. typizer/api/files/delete_file.py +231 -0
  52. typizer/api/files/get_file.py +213 -0
  53. typizer/api/files/get_file_content.py +233 -0
  54. typizer/api/meta/__init__.py +1 -0
  55. typizer/api/meta/get_open_api_document.py +185 -0
  56. typizer/api/organization/__init__.py +1 -0
  57. typizer/api/organization/delete_organization.py +231 -0
  58. typizer/api/organization/get_organization.py +194 -0
  59. typizer/api/organization/update_organization.py +212 -0
  60. typizer/api/runs/__init__.py +1 -0
  61. typizer/api/runs/create_run.py +358 -0
  62. typizer/api/runs/extract.py +350 -0
  63. typizer/api/runs/get_run.py +225 -0
  64. typizer/api/runs/get_run_output.py +286 -0
  65. typizer/api/runs/list_runs.py +362 -0
  66. typizer/api/runs/retry_run.py +275 -0
  67. typizer/api/status/__init__.py +1 -0
  68. typizer/api/status/get_status.py +172 -0
  69. typizer/api/typizers/__init__.py +1 -0
  70. typizer/api/typizers/create_typizer.py +239 -0
  71. typizer/api/typizers/delete_typizer.py +229 -0
  72. typizer/api/typizers/generate_typizer.py +282 -0
  73. typizer/api/typizers/get_typizer.py +213 -0
  74. typizer/api/typizers/get_typizer_version.py +231 -0
  75. typizer/api/typizers/get_typizer_xsd.py +215 -0
  76. typizer/api/typizers/list_typizer_versions.py +256 -0
  77. typizer/api/typizers/list_typizers.py +235 -0
  78. typizer/api/typizers/update_typizer.py +247 -0
  79. typizer/api/webhooks/__init__.py +1 -0
  80. typizer/api/webhooks/create_webhook_endpoint.py +259 -0
  81. typizer/api/webhooks/delete_webhook_endpoint.py +217 -0
  82. typizer/api/webhooks/get_webhook_endpoint.py +217 -0
  83. typizer/api/webhooks/list_webhook_deliveries.py +264 -0
  84. typizer/api/webhooks/list_webhook_endpoints.py +235 -0
  85. typizer/api/webhooks/retry_webhook_delivery.py +254 -0
  86. typizer/api/webhooks/test_webhook_endpoint.py +254 -0
  87. typizer/api/webhooks/update_webhook_endpoint.py +252 -0
  88. typizer/client.py +268 -0
  89. typizer/errors.py +16 -0
  90. typizer/models/__init__.py +449 -0
  91. typizer/models/agent_message.py +103 -0
  92. typizer/models/agent_message_content.py +72 -0
  93. typizer/models/agent_message_object.py +8 -0
  94. typizer/models/agent_message_role.py +10 -0
  95. typizer/models/agent_thread.py +166 -0
  96. typizer/models/agent_thread_draft_schema_type_0.py +47 -0
  97. typizer/models/agent_thread_object.py +8 -0
  98. typizer/models/api_key.py +152 -0
  99. typizer/models/api_key_created_by.py +87 -0
  100. typizer/models/api_key_object.py +8 -0
  101. typizer/models/balance.py +103 -0
  102. typizer/models/balance_lot.py +97 -0
  103. typizer/models/balance_lot_source.py +11 -0
  104. typizer/models/balance_object.py +8 -0
  105. typizer/models/batch.py +146 -0
  106. typizer/models/batch_object.py +8 -0
  107. typizer/models/batch_status.py +9 -0
  108. typizer/models/billing_profile.py +184 -0
  109. typizer/models/billing_profile_autotopup.py +148 -0
  110. typizer/models/billing_profile_object.py +8 -0
  111. typizer/models/checkout.py +69 -0
  112. typizer/models/checkout_request.py +87 -0
  113. typizer/models/checkout_request_autotopup.py +81 -0
  114. typizer/models/checkout_request_package_code.py +12 -0
  115. typizer/models/company.py +139 -0
  116. typizer/models/company_list.py +107 -0
  117. typizer/models/company_list_object.py +8 -0
  118. typizer/models/company_object.py +8 -0
  119. typizer/models/company_status.py +12 -0
  120. typizer/models/company_type.py +9 -0
  121. typizer/models/consent_request.py +61 -0
  122. typizer/models/consent_request_kind.py +9 -0
  123. typizer/models/contract_request.py +211 -0
  124. typizer/models/contract_request_delivery_type_1.py +9 -0
  125. typizer/models/contract_request_delivery_type_2_type_1.py +9 -0
  126. typizer/models/contract_request_delivery_type_3_type_1.py +9 -0
  127. typizer/models/contract_request_edo_type_0.py +112 -0
  128. typizer/models/contract_request_list.py +107 -0
  129. typizer/models/contract_request_list_object.py +8 -0
  130. typizer/models/contract_request_object.py +8 -0
  131. typizer/models/contract_request_status.py +12 -0
  132. typizer/models/create_agent_message_request.py +54 -0
  133. typizer/models/create_agent_thread_request.py +51 -0
  134. typizer/models/create_api_key_request.py +85 -0
  135. typizer/models/create_batch_files_body.py +149 -0
  136. typizer/models/create_batch_files_body_format.py +11 -0
  137. typizer/models/create_batch_files_body_mode.py +9 -0
  138. typizer/models/create_batch_request.py +108 -0
  139. typizer/models/create_batch_request_format.py +11 -0
  140. typizer/models/create_batch_request_metadata.py +52 -0
  141. typizer/models/create_batch_request_mode.py +9 -0
  142. typizer/models/create_demo_run_files_body.py +107 -0
  143. typizer/models/create_demo_run_files_body_consent_pd.py +8 -0
  144. typizer/models/create_file_body.py +75 -0
  145. typizer/models/create_invoice_request.py +63 -0
  146. typizer/models/create_invoice_request_package_code.py +12 -0
  147. typizer/models/create_run_files_body.py +169 -0
  148. typizer/models/create_run_files_body_format.py +11 -0
  149. typizer/models/create_run_files_body_mode.py +9 -0
  150. typizer/models/create_run_request.py +120 -0
  151. typizer/models/create_run_request_format.py +11 -0
  152. typizer/models/create_run_request_metadata.py +53 -0
  153. typizer/models/create_run_request_mode.py +9 -0
  154. typizer/models/create_typizer_request.py +125 -0
  155. typizer/models/create_typizer_request_default_format.py +11 -0
  156. typizer/models/create_typizer_request_mode.py +9 -0
  157. typizer/models/create_typizer_request_schema.py +53 -0
  158. typizer/models/create_webhook_endpoint_request.py +62 -0
  159. typizer/models/created_api_key.py +163 -0
  160. typizer/models/deleted_api_key.py +79 -0
  161. typizer/models/deleted_api_key_object.py +8 -0
  162. typizer/models/deleted_file.py +79 -0
  163. typizer/models/deleted_file_object.py +8 -0
  164. typizer/models/deleted_typizer.py +79 -0
  165. typizer/models/deleted_typizer_object.py +8 -0
  166. typizer/models/deleted_webhook_endpoint.py +79 -0
  167. typizer/models/deleted_webhook_endpoint_object.py +8 -0
  168. typizer/models/demo_run.py +180 -0
  169. typizer/models/demo_run_error_type_0.py +69 -0
  170. typizer/models/demo_run_object.py +8 -0
  171. typizer/models/demo_run_pages.py +76 -0
  172. typizer/models/demo_run_request.py +52 -0
  173. typizer/models/demo_run_request_sample.py +10 -0
  174. typizer/models/demo_run_status.py +11 -0
  175. typizer/models/demo_sample.py +95 -0
  176. typizer/models/demo_sample_id.py +10 -0
  177. typizer/models/demo_sample_list.py +85 -0
  178. typizer/models/demo_sample_list_object.py +8 -0
  179. typizer/models/export_batch_format.py +10 -0
  180. typizer/models/extract_files_body.py +194 -0
  181. typizer/models/extract_files_body_format.py +11 -0
  182. typizer/models/extract_files_body_mode.py +9 -0
  183. typizer/models/extract_request.py +146 -0
  184. typizer/models/extract_request_format.py +11 -0
  185. typizer/models/extract_request_metadata.py +53 -0
  186. typizer/models/extract_request_mode.py +9 -0
  187. typizer/models/extract_request_schema.py +53 -0
  188. typizer/models/file.py +153 -0
  189. typizer/models/file_object.py +8 -0
  190. typizer/models/file_source.py +12 -0
  191. typizer/models/generate_typizer_request.py +51 -0
  192. typizer/models/get_open_api_document_response_200.py +45 -0
  193. typizer/models/get_run_output_format.py +11 -0
  194. typizer/models/get_usage_group_by.py +10 -0
  195. typizer/models/list_agent_threads_response_200.py +107 -0
  196. typizer/models/list_agent_threads_response_200_object.py +8 -0
  197. typizer/models/list_api_keys_response_200.py +107 -0
  198. typizer/models/list_api_keys_response_200_object.py +8 -0
  199. typizer/models/list_batches_response_200.py +107 -0
  200. typizer/models/list_batches_response_200_object.py +8 -0
  201. typizer/models/list_runs_response_200.py +107 -0
  202. typizer/models/list_runs_response_200_object.py +8 -0
  203. typizer/models/list_runs_source.py +12 -0
  204. typizer/models/list_runs_status.py +11 -0
  205. typizer/models/list_typizer_versions_response_200.py +107 -0
  206. typizer/models/list_typizer_versions_response_200_object.py +8 -0
  207. typizer/models/list_typizers_response_200.py +107 -0
  208. typizer/models/list_typizers_response_200_object.py +8 -0
  209. typizer/models/list_webhook_deliveries_response_200.py +107 -0
  210. typizer/models/list_webhook_deliveries_response_200_object.py +8 -0
  211. typizer/models/list_webhook_endpoints_response_200.py +107 -0
  212. typizer/models/list_webhook_endpoints_response_200_object.py +8 -0
  213. typizer/models/login_challenge.py +71 -0
  214. typizer/models/login_challenge_object.py +8 -0
  215. typizer/models/login_start_request.py +94 -0
  216. typizer/models/login_start_request_consents.py +74 -0
  217. typizer/models/login_start_request_consents_pd_processing.py +61 -0
  218. typizer/models/maintenance_event.py +139 -0
  219. typizer/models/maintenance_event_components_item.py +13 -0
  220. typizer/models/maintenance_event_kind.py +9 -0
  221. typizer/models/maintenance_event_object.py +8 -0
  222. typizer/models/maintenance_event_status.py +9 -0
  223. typizer/models/marketing_consent_state.py +102 -0
  224. typizer/models/me.py +226 -0
  225. typizer/models/me_api_key_type_0.py +88 -0
  226. typizer/models/me_auth.py +9 -0
  227. typizer/models/me_features.py +70 -0
  228. typizer/models/me_object.py +8 -0
  229. typizer/models/me_organization.py +69 -0
  230. typizer/models/me_organizations_item.py +79 -0
  231. typizer/models/me_organizations_item_role.py +10 -0
  232. typizer/models/me_role_type_1.py +10 -0
  233. typizer/models/me_role_type_2_type_1.py +10 -0
  234. typizer/models/me_role_type_3_type_1.py +10 -0
  235. typizer/models/me_user_type_0.py +86 -0
  236. typizer/models/my_consents.py +77 -0
  237. typizer/models/my_consents_object.py +8 -0
  238. typizer/models/organization.py +93 -0
  239. typizer/models/organization_object.py +8 -0
  240. typizer/models/organization_settings.py +74 -0
  241. typizer/models/organization_settings_file_retention.py +11 -0
  242. typizer/models/organization_settings_output_retention.py +10 -0
  243. typizer/models/payment.py +231 -0
  244. typizer/models/payment_act_type_0.py +136 -0
  245. typizer/models/payment_act_type_0_edo_type_0.py +112 -0
  246. typizer/models/payment_invoice_type_0.py +121 -0
  247. typizer/models/payment_invoice_type_0_status.py +11 -0
  248. typizer/models/payment_list.py +107 -0
  249. typizer/models/payment_list_object.py +8 -0
  250. typizer/models/payment_method.py +10 -0
  251. typizer/models/payment_object.py +8 -0
  252. typizer/models/payment_status.py +15 -0
  253. typizer/models/problem.py +158 -0
  254. typizer/models/problem_code.py +26 -0
  255. typizer/models/run.py +318 -0
  256. typizer/models/run_error_type_0.py +69 -0
  257. typizer/models/run_fields_type_0.py +45 -0
  258. typizer/models/run_file_type_0.py +69 -0
  259. typizer/models/run_format.py +11 -0
  260. typizer/models/run_metadata.py +45 -0
  261. typizer/models/run_mode.py +9 -0
  262. typizer/models/run_object.py +8 -0
  263. typizer/models/run_pages.py +82 -0
  264. typizer/models/run_source.py +12 -0
  265. typizer/models/run_status.py +11 -0
  266. typizer/models/save_agent_thread_request.py +63 -0
  267. typizer/models/save_agent_thread_response_200.py +47 -0
  268. typizer/models/save_agent_thread_response_201.py +47 -0
  269. typizer/models/scope.py +12 -0
  270. typizer/models/sign_in.py +94 -0
  271. typizer/models/sign_in_list.py +108 -0
  272. typizer/models/sign_in_list_object.py +8 -0
  273. typizer/models/sign_in_object.py +8 -0
  274. typizer/models/status.py +85 -0
  275. typizer/models/status_object.py +8 -0
  276. typizer/models/typizer.py +158 -0
  277. typizer/models/typizer_default_format.py +11 -0
  278. typizer/models/typizer_draft.py +97 -0
  279. typizer/models/typizer_draft_object.py +8 -0
  280. typizer/models/typizer_draft_schema.py +53 -0
  281. typizer/models/typizer_mode.py +9 -0
  282. typizer/models/typizer_object.py +8 -0
  283. typizer/models/typizer_schema.py +47 -0
  284. typizer/models/typizer_version.py +118 -0
  285. typizer/models/typizer_version_object.py +8 -0
  286. typizer/models/typizer_version_schema.py +45 -0
  287. typizer/models/update_agent_thread_request.py +80 -0
  288. typizer/models/update_agent_thread_request_draft_schema.py +53 -0
  289. typizer/models/update_autotopup_request.py +111 -0
  290. typizer/models/update_autotopup_request_consent.py +62 -0
  291. typizer/models/update_autotopup_request_package_code.py +12 -0
  292. typizer/models/update_billing_profile_request.py +127 -0
  293. typizer/models/update_organization_request.py +69 -0
  294. typizer/models/update_organization_request_file_retention.py +11 -0
  295. typizer/models/update_organization_request_output_retention.py +10 -0
  296. typizer/models/update_typizer_request.py +131 -0
  297. typizer/models/update_typizer_request_default_format.py +11 -0
  298. typizer/models/update_typizer_request_mode.py +9 -0
  299. typizer/models/update_typizer_request_schema.py +53 -0
  300. typizer/models/update_webhook_endpoint_request.py +83 -0
  301. typizer/models/update_webhook_endpoint_request_status.py +9 -0
  302. typizer/models/usage.py +119 -0
  303. typizer/models/usage_group_by.py +10 -0
  304. typizer/models/usage_object.py +8 -0
  305. typizer/models/usage_row.py +102 -0
  306. typizer/models/webhook_delivery.py +154 -0
  307. typizer/models/webhook_delivery_object.py +8 -0
  308. typizer/models/webhook_delivery_status.py +10 -0
  309. typizer/models/webhook_endpoint.py +156 -0
  310. typizer/models/webhook_endpoint_object.py +8 -0
  311. typizer/models/webhook_endpoint_status.py +9 -0
  312. typizer/models/webhook_event_type.py +11 -0
  313. typizer/py.typed +1 -0
  314. typizer/types.py +54 -0
  315. typizer-0.1.0.dist-info/METADATA +280 -0
  316. typizer-0.1.0.dist-info/RECORD +318 -0
  317. typizer-0.1.0.dist-info/WHEEL +4 -0
  318. typizer-0.1.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,251 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.agent_thread import AgentThread
9
+ from ...models.create_agent_thread_request import CreateAgentThreadRequest
10
+ from ...models.problem import Problem
11
+ from ...types import UNSET, Response, Unset
12
+
13
+
14
+ def _get_kwargs(
15
+ *,
16
+ body: CreateAgentThreadRequest | Unset = UNSET,
17
+ typizer_organization: str | Unset = UNSET,
18
+ idempotency_key: str | Unset = UNSET,
19
+ ) -> dict[str, Any]:
20
+ headers: dict[str, Any] = {}
21
+ if not isinstance(typizer_organization, Unset):
22
+ headers["Typizer-Organization"] = typizer_organization
23
+
24
+ if not isinstance(idempotency_key, Unset):
25
+ headers["Idempotency-Key"] = idempotency_key
26
+
27
+ _kwargs: dict[str, Any] = {
28
+ "method": "post",
29
+ "url": "/v1/agent/threads",
30
+ }
31
+
32
+ if not isinstance(body, Unset):
33
+ _kwargs["json"] = body.to_dict()
34
+
35
+ headers["Content-Type"] = "application/json"
36
+
37
+ _kwargs["headers"] = headers
38
+ return _kwargs
39
+
40
+
41
+ def _parse_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> AgentThread | Problem | None:
42
+ if response.status_code == 201:
43
+ response_201 = AgentThread.from_dict(response.json())
44
+
45
+ return response_201
46
+
47
+ if response.status_code == 400:
48
+ response_400 = Problem.from_dict(response.json())
49
+
50
+ return response_400
51
+
52
+ if response.status_code == 401:
53
+ response_401 = Problem.from_dict(response.json())
54
+
55
+ return response_401
56
+
57
+ if response.status_code == 403:
58
+ response_403 = Problem.from_dict(response.json())
59
+
60
+ return response_403
61
+
62
+ if response.status_code == 404:
63
+ response_404 = Problem.from_dict(response.json())
64
+
65
+ return response_404
66
+
67
+ if response.status_code == 409:
68
+ response_409 = Problem.from_dict(response.json())
69
+
70
+ return response_409
71
+
72
+ if response.status_code == 429:
73
+ response_429 = Problem.from_dict(response.json())
74
+
75
+ return response_429
76
+
77
+ if response.status_code == 500:
78
+ response_500 = Problem.from_dict(response.json())
79
+
80
+ return response_500
81
+
82
+ if response.status_code == 503:
83
+ response_503 = Problem.from_dict(response.json())
84
+
85
+ return response_503
86
+
87
+ if client.raise_on_unexpected_status:
88
+ raise errors.UnexpectedStatus(response.status_code, response.content)
89
+ else:
90
+ return None
91
+
92
+
93
+ def _build_response(
94
+ *, client: AuthenticatedClient | Client, response: httpx.Response
95
+ ) -> Response[AgentThread | Problem]:
96
+ return Response(
97
+ status_code=HTTPStatus(response.status_code),
98
+ content=response.content,
99
+ headers=response.headers,
100
+ parsed=_parse_response(client=client, response=response),
101
+ )
102
+
103
+
104
+ def sync_detailed(
105
+ *,
106
+ client: AuthenticatedClient,
107
+ body: CreateAgentThreadRequest | Unset = UNSET,
108
+ typizer_organization: str | Unset = UNSET,
109
+ idempotency_key: str | Unset = UNSET,
110
+ ) -> Response[AgentThread | Problem]:
111
+ """Начать диалог с ассистентом
112
+
113
+ Только сессия (любая роль); диалог виден пользователю, который его начал. Поддерживает Idempotency-
114
+ Key.
115
+
116
+ Доступ: только сессия.
117
+
118
+ Args:
119
+ typizer_organization (str | Unset):
120
+ idempotency_key (str | Unset):
121
+ body (CreateAgentThreadRequest | Unset):
122
+
123
+ Raises:
124
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
125
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
126
+
127
+ Returns:
128
+ Response[AgentThread | Problem]
129
+ """
130
+
131
+ kwargs = _get_kwargs(
132
+ body=body,
133
+ typizer_organization=typizer_organization,
134
+ idempotency_key=idempotency_key,
135
+ )
136
+
137
+ response = client.get_httpx_client().request(
138
+ **kwargs,
139
+ )
140
+
141
+ return _build_response(client=client, response=response)
142
+
143
+
144
+ def sync(
145
+ *,
146
+ client: AuthenticatedClient,
147
+ body: CreateAgentThreadRequest | Unset = UNSET,
148
+ typizer_organization: str | Unset = UNSET,
149
+ idempotency_key: str | Unset = UNSET,
150
+ ) -> AgentThread | Problem | None:
151
+ """Начать диалог с ассистентом
152
+
153
+ Только сессия (любая роль); диалог виден пользователю, который его начал. Поддерживает Idempotency-
154
+ Key.
155
+
156
+ Доступ: только сессия.
157
+
158
+ Args:
159
+ typizer_organization (str | Unset):
160
+ idempotency_key (str | Unset):
161
+ body (CreateAgentThreadRequest | Unset):
162
+
163
+ Raises:
164
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
165
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
166
+
167
+ Returns:
168
+ AgentThread | Problem
169
+ """
170
+
171
+ return sync_detailed(
172
+ client=client,
173
+ body=body,
174
+ typizer_organization=typizer_organization,
175
+ idempotency_key=idempotency_key,
176
+ ).parsed
177
+
178
+
179
+ async def asyncio_detailed(
180
+ *,
181
+ client: AuthenticatedClient,
182
+ body: CreateAgentThreadRequest | Unset = UNSET,
183
+ typizer_organization: str | Unset = UNSET,
184
+ idempotency_key: str | Unset = UNSET,
185
+ ) -> Response[AgentThread | Problem]:
186
+ """Начать диалог с ассистентом
187
+
188
+ Только сессия (любая роль); диалог виден пользователю, который его начал. Поддерживает Idempotency-
189
+ Key.
190
+
191
+ Доступ: только сессия.
192
+
193
+ Args:
194
+ typizer_organization (str | Unset):
195
+ idempotency_key (str | Unset):
196
+ body (CreateAgentThreadRequest | Unset):
197
+
198
+ Raises:
199
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
200
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
201
+
202
+ Returns:
203
+ Response[AgentThread | Problem]
204
+ """
205
+
206
+ kwargs = _get_kwargs(
207
+ body=body,
208
+ typizer_organization=typizer_organization,
209
+ idempotency_key=idempotency_key,
210
+ )
211
+
212
+ response = await client.get_async_httpx_client().request(**kwargs)
213
+
214
+ return _build_response(client=client, response=response)
215
+
216
+
217
+ async def asyncio(
218
+ *,
219
+ client: AuthenticatedClient,
220
+ body: CreateAgentThreadRequest | Unset = UNSET,
221
+ typizer_organization: str | Unset = UNSET,
222
+ idempotency_key: str | Unset = UNSET,
223
+ ) -> AgentThread | Problem | None:
224
+ """Начать диалог с ассистентом
225
+
226
+ Только сессия (любая роль); диалог виден пользователю, который его начал. Поддерживает Idempotency-
227
+ Key.
228
+
229
+ Доступ: только сессия.
230
+
231
+ Args:
232
+ typizer_organization (str | Unset):
233
+ idempotency_key (str | Unset):
234
+ body (CreateAgentThreadRequest | Unset):
235
+
236
+ Raises:
237
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
238
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
239
+
240
+ Returns:
241
+ AgentThread | Problem
242
+ """
243
+
244
+ return (
245
+ await asyncio_detailed(
246
+ client=client,
247
+ body=body,
248
+ typizer_organization=typizer_organization,
249
+ idempotency_key=idempotency_key,
250
+ )
251
+ ).parsed
@@ -0,0 +1,223 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.agent_thread import AgentThread
10
+ from ...models.problem import Problem
11
+ from ...types import UNSET, Response, Unset
12
+
13
+
14
+ def _get_kwargs(
15
+ id: str,
16
+ *,
17
+ typizer_organization: str | Unset = UNSET,
18
+ ) -> dict[str, Any]:
19
+ headers: dict[str, Any] = {}
20
+ if not isinstance(typizer_organization, Unset):
21
+ headers["Typizer-Organization"] = typizer_organization
22
+
23
+ _kwargs: dict[str, Any] = {
24
+ "method": "get",
25
+ "url": "/v1/agent/threads/{id}".format(
26
+ id=quote(str(id), safe=""),
27
+ ),
28
+ }
29
+
30
+ _kwargs["headers"] = headers
31
+ return _kwargs
32
+
33
+
34
+ def _parse_response(*, client: AuthenticatedClient | Client, response: httpx.Response) -> AgentThread | Problem | None:
35
+ if response.status_code == 200:
36
+ response_200 = AgentThread.from_dict(response.json())
37
+
38
+ return response_200
39
+
40
+ if response.status_code == 400:
41
+ response_400 = Problem.from_dict(response.json())
42
+
43
+ return response_400
44
+
45
+ if response.status_code == 401:
46
+ response_401 = Problem.from_dict(response.json())
47
+
48
+ return response_401
49
+
50
+ if response.status_code == 403:
51
+ response_403 = Problem.from_dict(response.json())
52
+
53
+ return response_403
54
+
55
+ if response.status_code == 404:
56
+ response_404 = Problem.from_dict(response.json())
57
+
58
+ return response_404
59
+
60
+ if response.status_code == 429:
61
+ response_429 = Problem.from_dict(response.json())
62
+
63
+ return response_429
64
+
65
+ if response.status_code == 500:
66
+ response_500 = Problem.from_dict(response.json())
67
+
68
+ return response_500
69
+
70
+ if response.status_code == 503:
71
+ response_503 = Problem.from_dict(response.json())
72
+
73
+ return response_503
74
+
75
+ if client.raise_on_unexpected_status:
76
+ raise errors.UnexpectedStatus(response.status_code, response.content)
77
+ else:
78
+ return None
79
+
80
+
81
+ def _build_response(
82
+ *, client: AuthenticatedClient | Client, response: httpx.Response
83
+ ) -> Response[AgentThread | Problem]:
84
+ return Response(
85
+ status_code=HTTPStatus(response.status_code),
86
+ content=response.content,
87
+ headers=response.headers,
88
+ parsed=_parse_response(client=client, response=response),
89
+ )
90
+
91
+
92
+ def sync_detailed(
93
+ id: str,
94
+ *,
95
+ client: AuthenticatedClient,
96
+ typizer_organization: str | Unset = UNSET,
97
+ ) -> Response[AgentThread | Problem]:
98
+ """Получить диалог с сообщениями
99
+
100
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
101
+
102
+ Доступ: только сессия.
103
+
104
+ Args:
105
+ id (str): Example: thr_….
106
+ typizer_organization (str | Unset):
107
+
108
+ Raises:
109
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
110
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
111
+
112
+ Returns:
113
+ Response[AgentThread | Problem]
114
+ """
115
+
116
+ kwargs = _get_kwargs(
117
+ id=id,
118
+ typizer_organization=typizer_organization,
119
+ )
120
+
121
+ response = client.get_httpx_client().request(
122
+ **kwargs,
123
+ )
124
+
125
+ return _build_response(client=client, response=response)
126
+
127
+
128
+ def sync(
129
+ id: str,
130
+ *,
131
+ client: AuthenticatedClient,
132
+ typizer_organization: str | Unset = UNSET,
133
+ ) -> AgentThread | Problem | None:
134
+ """Получить диалог с сообщениями
135
+
136
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
137
+
138
+ Доступ: только сессия.
139
+
140
+ Args:
141
+ id (str): Example: thr_….
142
+ typizer_organization (str | Unset):
143
+
144
+ Raises:
145
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
146
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
147
+
148
+ Returns:
149
+ AgentThread | Problem
150
+ """
151
+
152
+ return sync_detailed(
153
+ id=id,
154
+ client=client,
155
+ typizer_organization=typizer_organization,
156
+ ).parsed
157
+
158
+
159
+ async def asyncio_detailed(
160
+ id: str,
161
+ *,
162
+ client: AuthenticatedClient,
163
+ typizer_organization: str | Unset = UNSET,
164
+ ) -> Response[AgentThread | Problem]:
165
+ """Получить диалог с сообщениями
166
+
167
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
168
+
169
+ Доступ: только сессия.
170
+
171
+ Args:
172
+ id (str): Example: thr_….
173
+ typizer_organization (str | Unset):
174
+
175
+ Raises:
176
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
177
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
178
+
179
+ Returns:
180
+ Response[AgentThread | Problem]
181
+ """
182
+
183
+ kwargs = _get_kwargs(
184
+ id=id,
185
+ typizer_organization=typizer_organization,
186
+ )
187
+
188
+ response = await client.get_async_httpx_client().request(**kwargs)
189
+
190
+ return _build_response(client=client, response=response)
191
+
192
+
193
+ async def asyncio(
194
+ id: str,
195
+ *,
196
+ client: AuthenticatedClient,
197
+ typizer_organization: str | Unset = UNSET,
198
+ ) -> AgentThread | Problem | None:
199
+ """Получить диалог с сообщениями
200
+
201
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
202
+
203
+ Доступ: только сессия.
204
+
205
+ Args:
206
+ id (str): Example: thr_….
207
+ typizer_organization (str | Unset):
208
+
209
+ Raises:
210
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
211
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
212
+
213
+ Returns:
214
+ AgentThread | Problem
215
+ """
216
+
217
+ return (
218
+ await asyncio_detailed(
219
+ id=id,
220
+ client=client,
221
+ typizer_organization=typizer_organization,
222
+ )
223
+ ).parsed
@@ -0,0 +1,243 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.list_agent_threads_response_200 import ListAgentThreadsResponse200
9
+ from ...models.problem import Problem
10
+ from ...types import UNSET, Response, Unset
11
+
12
+
13
+ def _get_kwargs(
14
+ *,
15
+ limit: int | Unset = 20,
16
+ starting_after: str | Unset = UNSET,
17
+ typizer_organization: str | Unset = UNSET,
18
+ ) -> dict[str, Any]:
19
+ headers: dict[str, Any] = {}
20
+ if not isinstance(typizer_organization, Unset):
21
+ headers["Typizer-Organization"] = typizer_organization
22
+
23
+ params: dict[str, Any] = {}
24
+
25
+ params["limit"] = limit
26
+
27
+ params["starting_after"] = starting_after
28
+
29
+ params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
30
+
31
+ _kwargs: dict[str, Any] = {
32
+ "method": "get",
33
+ "url": "/v1/agent/threads",
34
+ "params": params,
35
+ }
36
+
37
+ _kwargs["headers"] = headers
38
+ return _kwargs
39
+
40
+
41
+ def _parse_response(
42
+ *, client: AuthenticatedClient | Client, response: httpx.Response
43
+ ) -> ListAgentThreadsResponse200 | Problem | None:
44
+ if response.status_code == 200:
45
+ response_200 = ListAgentThreadsResponse200.from_dict(response.json())
46
+
47
+ return response_200
48
+
49
+ if response.status_code == 400:
50
+ response_400 = Problem.from_dict(response.json())
51
+
52
+ return response_400
53
+
54
+ if response.status_code == 401:
55
+ response_401 = Problem.from_dict(response.json())
56
+
57
+ return response_401
58
+
59
+ if response.status_code == 403:
60
+ response_403 = Problem.from_dict(response.json())
61
+
62
+ return response_403
63
+
64
+ if response.status_code == 429:
65
+ response_429 = Problem.from_dict(response.json())
66
+
67
+ return response_429
68
+
69
+ if response.status_code == 500:
70
+ response_500 = Problem.from_dict(response.json())
71
+
72
+ return response_500
73
+
74
+ if response.status_code == 503:
75
+ response_503 = Problem.from_dict(response.json())
76
+
77
+ return response_503
78
+
79
+ if client.raise_on_unexpected_status:
80
+ raise errors.UnexpectedStatus(response.status_code, response.content)
81
+ else:
82
+ return None
83
+
84
+
85
+ def _build_response(
86
+ *, client: AuthenticatedClient | Client, response: httpx.Response
87
+ ) -> Response[ListAgentThreadsResponse200 | Problem]:
88
+ return Response(
89
+ status_code=HTTPStatus(response.status_code),
90
+ content=response.content,
91
+ headers=response.headers,
92
+ parsed=_parse_response(client=client, response=response),
93
+ )
94
+
95
+
96
+ def sync_detailed(
97
+ *,
98
+ client: AuthenticatedClient,
99
+ limit: int | Unset = 20,
100
+ starting_after: str | Unset = UNSET,
101
+ typizer_organization: str | Unset = UNSET,
102
+ ) -> Response[ListAgentThreadsResponse200 | Problem]:
103
+ """Ваши диалоги с ассистентом, новые первыми
104
+
105
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
106
+
107
+ Доступ: только сессия.
108
+
109
+ Args:
110
+ limit (int | Unset): Элементов на странице, 1–100 Default: 20. Example: 20.
111
+ starting_after (str | Unset): `next_cursor` предыдущей страницы: список продолжается после
112
+ этого идентификатора
113
+ typizer_organization (str | Unset):
114
+
115
+ Raises:
116
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
117
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
118
+
119
+ Returns:
120
+ Response[ListAgentThreadsResponse200 | Problem]
121
+ """
122
+
123
+ kwargs = _get_kwargs(
124
+ limit=limit,
125
+ starting_after=starting_after,
126
+ typizer_organization=typizer_organization,
127
+ )
128
+
129
+ response = client.get_httpx_client().request(
130
+ **kwargs,
131
+ )
132
+
133
+ return _build_response(client=client, response=response)
134
+
135
+
136
+ def sync(
137
+ *,
138
+ client: AuthenticatedClient,
139
+ limit: int | Unset = 20,
140
+ starting_after: str | Unset = UNSET,
141
+ typizer_organization: str | Unset = UNSET,
142
+ ) -> ListAgentThreadsResponse200 | Problem | None:
143
+ """Ваши диалоги с ассистентом, новые первыми
144
+
145
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
146
+
147
+ Доступ: только сессия.
148
+
149
+ Args:
150
+ limit (int | Unset): Элементов на странице, 1–100 Default: 20. Example: 20.
151
+ starting_after (str | Unset): `next_cursor` предыдущей страницы: список продолжается после
152
+ этого идентификатора
153
+ typizer_organization (str | Unset):
154
+
155
+ Raises:
156
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
157
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
158
+
159
+ Returns:
160
+ ListAgentThreadsResponse200 | Problem
161
+ """
162
+
163
+ return sync_detailed(
164
+ client=client,
165
+ limit=limit,
166
+ starting_after=starting_after,
167
+ typizer_organization=typizer_organization,
168
+ ).parsed
169
+
170
+
171
+ async def asyncio_detailed(
172
+ *,
173
+ client: AuthenticatedClient,
174
+ limit: int | Unset = 20,
175
+ starting_after: str | Unset = UNSET,
176
+ typizer_organization: str | Unset = UNSET,
177
+ ) -> Response[ListAgentThreadsResponse200 | Problem]:
178
+ """Ваши диалоги с ассистентом, новые первыми
179
+
180
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
181
+
182
+ Доступ: только сессия.
183
+
184
+ Args:
185
+ limit (int | Unset): Элементов на странице, 1–100 Default: 20. Example: 20.
186
+ starting_after (str | Unset): `next_cursor` предыдущей страницы: список продолжается после
187
+ этого идентификатора
188
+ typizer_organization (str | Unset):
189
+
190
+ Raises:
191
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
192
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
193
+
194
+ Returns:
195
+ Response[ListAgentThreadsResponse200 | Problem]
196
+ """
197
+
198
+ kwargs = _get_kwargs(
199
+ limit=limit,
200
+ starting_after=starting_after,
201
+ typizer_organization=typizer_organization,
202
+ )
203
+
204
+ response = await client.get_async_httpx_client().request(**kwargs)
205
+
206
+ return _build_response(client=client, response=response)
207
+
208
+
209
+ async def asyncio(
210
+ *,
211
+ client: AuthenticatedClient,
212
+ limit: int | Unset = 20,
213
+ starting_after: str | Unset = UNSET,
214
+ typizer_organization: str | Unset = UNSET,
215
+ ) -> ListAgentThreadsResponse200 | Problem | None:
216
+ """Ваши диалоги с ассистентом, новые первыми
217
+
218
+ Только сессия (любая роль); диалог виден пользователю, который его начал.
219
+
220
+ Доступ: только сессия.
221
+
222
+ Args:
223
+ limit (int | Unset): Элементов на странице, 1–100 Default: 20. Example: 20.
224
+ starting_after (str | Unset): `next_cursor` предыдущей страницы: список продолжается после
225
+ этого идентификатора
226
+ typizer_organization (str | Unset):
227
+
228
+ Raises:
229
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
230
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
231
+
232
+ Returns:
233
+ ListAgentThreadsResponse200 | Problem
234
+ """
235
+
236
+ return (
237
+ await asyncio_detailed(
238
+ client=client,
239
+ limit=limit,
240
+ starting_after=starting_after,
241
+ typizer_organization=typizer_organization,
242
+ )
243
+ ).parsed