agenta 0.48.9__py3-none-any.whl → 0.49.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.

Potentially problematic release.


This version of agenta might be problematic. Click here for more details.

Files changed (297) hide show
  1. agenta/__init__.py +3 -2
  2. agenta/client/Readme.md +258 -80
  3. agenta/client/__init__.py +205 -29
  4. agenta/client/backend/__init__.py +461 -0
  5. agenta/client/backend/access_control/__init__.py +2 -0
  6. agenta/client/backend/access_control/client.py +53 -73
  7. agenta/client/backend/access_control/raw_client.py +180 -0
  8. agenta/client/backend/admin/__init__.py +2 -0
  9. agenta/client/backend/admin/client.py +473 -268
  10. agenta/client/backend/admin/raw_client.py +1017 -0
  11. agenta/client/backend/api_keys/__init__.py +2 -0
  12. agenta/client/backend/api_keys/client.py +43 -276
  13. agenta/client/backend/api_keys/raw_client.py +364 -0
  14. agenta/client/backend/apps/__init__.py +2 -0
  15. agenta/client/backend/apps/client.py +132 -895
  16. agenta/client/backend/apps/raw_client.py +1516 -0
  17. agenta/client/backend/bases/__init__.py +2 -0
  18. agenta/client/backend/bases/client.py +33 -73
  19. agenta/client/backend/bases/raw_client.py +179 -0
  20. agenta/client/backend/billing/__init__.py +3 -0
  21. agenta/client/backend/billing/client.py +564 -0
  22. agenta/client/backend/billing/raw_client.py +805 -0
  23. agenta/client/backend/client.py +1268 -0
  24. agenta/client/backend/configs/__init__.py +2 -0
  25. agenta/client/backend/configs/client.py +49 -361
  26. agenta/client/backend/configs/raw_client.py +402 -0
  27. agenta/client/backend/containers/__init__.py +1 -3
  28. agenta/client/backend/containers/client.py +25 -548
  29. agenta/client/backend/containers/raw_client.py +112 -0
  30. agenta/client/backend/core/__init__.py +5 -0
  31. agenta/client/backend/core/api_error.py +12 -6
  32. agenta/client/backend/core/client_wrapper.py +4 -4
  33. agenta/client/backend/core/file.py +1 -3
  34. agenta/client/backend/core/force_multipart.py +16 -0
  35. agenta/client/backend/core/http_client.py +78 -34
  36. agenta/client/backend/core/http_response.py +55 -0
  37. agenta/client/backend/core/jsonable_encoder.py +0 -1
  38. agenta/client/backend/core/pydantic_utilities.py +88 -113
  39. agenta/client/backend/core/serialization.py +9 -3
  40. agenta/client/backend/environment.py +7 -0
  41. agenta/client/backend/environments/__init__.py +2 -0
  42. agenta/client/backend/environments/client.py +43 -79
  43. agenta/client/backend/environments/raw_client.py +193 -0
  44. agenta/client/backend/errors/__init__.py +2 -0
  45. agenta/client/backend/errors/unprocessable_entity_error.py +8 -2
  46. agenta/client/backend/evals/__init__.py +3 -0
  47. agenta/client/backend/evals/client.py +1042 -0
  48. agenta/client/backend/evals/raw_client.py +1549 -0
  49. agenta/client/backend/evaluations/__init__.py +2 -0
  50. agenta/client/backend/evaluations/client.py +106 -590
  51. agenta/client/backend/evaluations/raw_client.py +1344 -0
  52. agenta/client/backend/evaluators/__init__.py +2 -0
  53. agenta/client/backend/evaluators/client.py +99 -516
  54. agenta/client/backend/evaluators/raw_client.py +1182 -0
  55. agenta/client/backend/human_evaluations/__init__.py +2 -0
  56. agenta/client/backend/human_evaluations/client.py +120 -680
  57. agenta/client/backend/human_evaluations/raw_client.py +1577 -0
  58. agenta/client/backend/observability/__init__.py +14 -2
  59. agenta/client/backend/observability/client.py +185 -341
  60. agenta/client/backend/observability/raw_client.py +943 -0
  61. agenta/client/backend/observability/types/__init__.py +10 -2
  62. agenta/client/backend/observability/types/{format.py → fetch_trace_by_id_request_trace_id.py} +1 -1
  63. agenta/client/backend/observability/types/fetch_trace_by_id_response.py +15 -0
  64. agenta/client/backend/observability/types/query_analytics_response.py +2 -1
  65. agenta/client/backend/observability/types/query_traces_response.py +7 -3
  66. agenta/client/backend/organization/__init__.py +2 -0
  67. agenta/client/backend/organization/client.py +105 -361
  68. agenta/client/backend/organization/raw_client.py +774 -0
  69. agenta/client/backend/raw_client.py +1432 -0
  70. agenta/client/backend/scopes/__init__.py +2 -0
  71. agenta/client/backend/scopes/client.py +31 -45
  72. agenta/client/backend/scopes/raw_client.py +105 -0
  73. agenta/client/backend/testsets/__init__.py +14 -0
  74. agenta/client/backend/testsets/client.py +1098 -653
  75. agenta/client/backend/testsets/raw_client.py +2348 -0
  76. agenta/client/backend/testsets/types/__init__.py +17 -0
  77. agenta/client/backend/testsets/types/create_testset_from_file_request_file_type.py +7 -0
  78. agenta/client/backend/testsets/types/fetch_testset_to_file_request_file_type.py +7 -0
  79. agenta/client/backend/testsets/types/update_testset_from_file_request_file_type.py +7 -0
  80. agenta/client/backend/tracing/__init__.py +7 -0
  81. agenta/client/backend/tracing/client.py +782 -0
  82. agenta/client/backend/tracing/raw_client.py +1223 -0
  83. agenta/client/backend/tracing/types/__init__.py +8 -0
  84. agenta/client/backend/{types/variant_action_enum.py → tracing/types/fetch_trace_request_trace_id.py} +1 -1
  85. agenta/client/backend/tracing/types/remove_trace_request_trace_id.py +5 -0
  86. agenta/client/backend/types/__init__.py +153 -26
  87. agenta/client/backend/types/account_request.py +24 -0
  88. agenta/client/backend/types/account_response.py +5 -7
  89. agenta/client/backend/types/agenta_node_dto.py +13 -13
  90. agenta/client/backend/types/agenta_node_dto_nodes_value.py +1 -0
  91. agenta/client/backend/types/agenta_nodes_response.py +14 -8
  92. agenta/client/backend/types/agenta_root_dto.py +16 -8
  93. agenta/client/backend/types/agenta_roots_response.py +16 -8
  94. agenta/client/backend/types/agenta_tree_dto.py +16 -8
  95. agenta/client/backend/types/agenta_trees_response.py +16 -8
  96. agenta/client/backend/types/aggregated_result.py +5 -7
  97. agenta/client/backend/types/aggregated_result_evaluator_config.py +1 -0
  98. agenta/client/backend/types/analytics_response.py +4 -6
  99. agenta/client/backend/types/annotation.py +50 -0
  100. agenta/client/backend/types/annotation_create.py +39 -0
  101. agenta/client/backend/types/annotation_edit.py +31 -0
  102. agenta/client/backend/types/annotation_kind.py +5 -0
  103. agenta/client/backend/types/{uri.py → annotation_link.py} +6 -7
  104. agenta/client/backend/types/{provider_key_dto.py → annotation_link_response.py} +6 -7
  105. agenta/client/backend/types/annotation_query.py +40 -0
  106. agenta/client/backend/types/annotation_query_request.py +20 -0
  107. agenta/client/backend/types/annotation_reference.py +21 -0
  108. agenta/client/backend/types/annotation_references.py +22 -0
  109. agenta/client/backend/types/{docker_env_vars.py → annotation_response.py} +6 -7
  110. agenta/client/backend/types/annotation_source.py +5 -0
  111. agenta/client/backend/types/annotations_response.py +24 -0
  112. agenta/client/backend/types/app.py +3 -5
  113. agenta/client/backend/types/app_variant_response.py +3 -6
  114. agenta/client/backend/types/app_variant_revision.py +5 -6
  115. agenta/client/backend/types/artifact.py +44 -0
  116. agenta/client/backend/types/base_output.py +3 -5
  117. agenta/client/backend/types/body_fetch_workflow_revision.py +21 -0
  118. agenta/client/backend/types/body_import_testset.py +3 -5
  119. agenta/client/backend/types/bucket_dto.py +4 -6
  120. agenta/client/backend/types/collect_status_response.py +3 -5
  121. agenta/client/backend/types/config_db.py +3 -5
  122. agenta/client/backend/types/config_dto.py +5 -7
  123. agenta/client/backend/types/config_response_model.py +5 -7
  124. agenta/client/backend/types/correct_answer.py +3 -5
  125. agenta/client/backend/types/create_app_output.py +3 -5
  126. agenta/client/backend/types/custom_model_settings_dto.py +3 -5
  127. agenta/client/backend/types/custom_provider_dto.py +6 -9
  128. agenta/client/backend/types/custom_provider_kind.py +5 -5
  129. agenta/client/backend/types/custom_provider_settings_dto.py +3 -5
  130. agenta/client/backend/types/data.py +2 -1
  131. agenta/client/backend/types/delete_evaluation.py +3 -5
  132. agenta/client/backend/types/environment_output.py +3 -5
  133. agenta/client/backend/types/environment_output_extended.py +4 -6
  134. agenta/client/backend/types/environment_revision.py +5 -5
  135. agenta/client/backend/types/error.py +3 -5
  136. agenta/client/backend/types/evaluation.py +6 -8
  137. agenta/client/backend/types/evaluation_scenario.py +5 -7
  138. agenta/client/backend/types/evaluation_scenario_input.py +3 -5
  139. agenta/client/backend/types/evaluation_scenario_output.py +4 -6
  140. agenta/client/backend/types/evaluation_scenario_result.py +4 -6
  141. agenta/client/backend/types/evaluator.py +31 -12
  142. agenta/client/backend/types/evaluator_config.py +3 -5
  143. agenta/client/backend/types/evaluator_flags.py +21 -0
  144. agenta/client/backend/types/evaluator_mapping_output_interface.py +3 -5
  145. agenta/client/backend/types/evaluator_output_interface.py +3 -5
  146. agenta/client/backend/types/evaluator_query.py +32 -0
  147. agenta/client/backend/types/evaluator_query_request.py +30 -0
  148. agenta/client/backend/types/evaluator_request.py +20 -0
  149. agenta/client/backend/types/evaluator_response.py +21 -0
  150. agenta/client/backend/types/evaluators_response.py +21 -0
  151. agenta/client/backend/types/exception_dto.py +3 -5
  152. agenta/client/backend/types/{o_tel_spans_response.py → extended_o_tel_tracing_response.py} +5 -7
  153. agenta/client/backend/types/focus.py +5 -0
  154. agenta/client/backend/types/format.py +5 -0
  155. agenta/client/backend/types/full_json_input.py +34 -0
  156. agenta/client/backend/types/full_json_output.py +29 -0
  157. agenta/client/backend/types/get_config_response.py +3 -5
  158. agenta/client/backend/types/{header_dto.py → header.py} +4 -6
  159. agenta/client/backend/types/http_validation_error.py +4 -6
  160. agenta/client/backend/types/human_evaluation.py +3 -5
  161. agenta/client/backend/types/human_evaluation_scenario.py +4 -6
  162. agenta/client/backend/types/human_evaluation_scenario_input.py +3 -5
  163. agenta/client/backend/types/human_evaluation_scenario_output.py +3 -5
  164. agenta/client/backend/types/invite_request.py +4 -6
  165. agenta/client/backend/types/legacy_analytics_response.py +4 -6
  166. agenta/client/backend/types/legacy_data_point.py +3 -5
  167. agenta/client/backend/types/legacy_evaluator.py +26 -0
  168. agenta/client/backend/types/legacy_scope_request.py +4 -6
  169. agenta/client/backend/types/legacy_scopes_response.py +3 -5
  170. agenta/client/backend/types/legacy_subscription_request.py +19 -0
  171. agenta/client/backend/types/legacy_user_request.py +5 -7
  172. agenta/client/backend/types/legacy_user_response.py +3 -5
  173. agenta/client/backend/types/lifecycle_dto.py +3 -5
  174. agenta/client/backend/types/link_dto.py +4 -6
  175. agenta/client/backend/types/list_api_keys_response.py +3 -5
  176. agenta/client/backend/types/llm_run_rate_limit.py +3 -5
  177. agenta/client/backend/types/meta_request.py +30 -0
  178. agenta/client/backend/types/metrics_dto.py +3 -5
  179. agenta/client/backend/types/new_testset.py +3 -5
  180. agenta/client/backend/types/node_dto.py +4 -6
  181. agenta/client/backend/types/o_tel_context_dto.py +3 -5
  182. agenta/client/backend/types/o_tel_event.py +35 -0
  183. agenta/client/backend/types/o_tel_event_dto.py +3 -5
  184. agenta/client/backend/types/o_tel_extra_dto.py +4 -6
  185. agenta/client/backend/types/o_tel_flat_span.py +56 -0
  186. agenta/client/backend/types/o_tel_flat_span_input_end_time.py +6 -0
  187. agenta/client/backend/types/o_tel_flat_span_input_start_time.py +6 -0
  188. agenta/client/backend/types/o_tel_flat_span_output_end_time.py +6 -0
  189. agenta/client/backend/types/o_tel_flat_span_output_start_time.py +6 -0
  190. agenta/client/backend/types/o_tel_link.py +34 -0
  191. agenta/client/backend/types/o_tel_link_dto.py +4 -6
  192. agenta/client/backend/types/o_tel_links_response.py +22 -0
  193. agenta/client/backend/types/o_tel_span.py +58 -0
  194. agenta/client/backend/types/o_tel_span_dto.py +8 -10
  195. agenta/client/backend/types/o_tel_span_input_end_time.py +6 -0
  196. agenta/client/backend/types/o_tel_span_input_spans_value.py +7 -0
  197. agenta/client/backend/types/o_tel_span_input_start_time.py +6 -0
  198. agenta/client/backend/types/o_tel_span_output_end_time.py +6 -0
  199. agenta/client/backend/types/o_tel_span_output_spans_value.py +30 -0
  200. agenta/client/backend/types/o_tel_span_output_start_time.py +6 -0
  201. agenta/client/backend/types/o_tel_spans_tree.py +22 -0
  202. agenta/client/backend/types/o_tel_spans_tree_input_spans_value.py +7 -0
  203. agenta/client/backend/types/o_tel_spans_tree_output_spans_value.py +5 -0
  204. agenta/client/backend/types/o_tel_status_code.py +1 -1
  205. agenta/client/backend/types/o_tel_tracing_data_response.py +22 -0
  206. agenta/client/backend/types/o_tel_tracing_request.py +22 -0
  207. agenta/client/backend/types/o_tel_tracing_response.py +27 -0
  208. agenta/client/backend/types/organization.py +3 -5
  209. agenta/client/backend/types/organization_details.py +3 -5
  210. agenta/client/backend/types/organization_membership_request.py +5 -7
  211. agenta/client/backend/types/organization_output.py +3 -5
  212. agenta/client/backend/types/organization_request.py +3 -5
  213. agenta/client/backend/types/parent_dto.py +3 -5
  214. agenta/client/backend/types/permission.py +11 -0
  215. agenta/client/backend/types/plan.py +14 -0
  216. agenta/client/backend/types/project_membership_request.py +5 -7
  217. agenta/client/backend/types/project_request.py +4 -6
  218. agenta/client/backend/types/project_scope.py +5 -7
  219. agenta/client/backend/types/projects_response.py +3 -5
  220. agenta/client/backend/types/recursive_types.py +23 -0
  221. agenta/client/backend/types/reference.py +18 -5
  222. agenta/client/backend/types/reference_dto.py +4 -5
  223. agenta/client/backend/types/reference_request_model.py +4 -5
  224. agenta/client/backend/types/result.py +4 -6
  225. agenta/client/backend/types/root_dto.py +3 -5
  226. agenta/client/backend/types/scopes_response_model.py +4 -6
  227. agenta/client/backend/types/secret_dto.py +5 -7
  228. agenta/client/backend/types/secret_response_dto.py +11 -11
  229. agenta/client/backend/types/simple_evaluation_output.py +4 -6
  230. agenta/client/backend/types/span_dto.py +18 -14
  231. agenta/client/backend/types/span_dto_nodes_value.py +1 -1
  232. agenta/client/backend/types/standard_provider_dto.py +5 -7
  233. agenta/client/backend/types/standard_provider_settings_dto.py +3 -5
  234. agenta/client/backend/types/status_dto.py +4 -6
  235. agenta/client/backend/types/tags_request.py +30 -0
  236. agenta/client/backend/types/test_set_output_response.py +5 -7
  237. agenta/client/backend/types/test_set_simple_response.py +3 -5
  238. agenta/client/backend/types/testcase_response.py +33 -0
  239. agenta/client/backend/types/testset.py +46 -0
  240. agenta/client/backend/types/testset_request.py +20 -0
  241. agenta/client/backend/types/testset_response.py +21 -0
  242. agenta/client/backend/types/testsets_response.py +21 -0
  243. agenta/client/backend/types/time_dto.py +3 -5
  244. agenta/client/backend/types/timestamp.py +6 -0
  245. agenta/client/backend/types/tree_dto.py +4 -6
  246. agenta/client/backend/types/update_app_output.py +3 -5
  247. agenta/client/backend/types/user_request.py +3 -5
  248. agenta/client/backend/types/validation_error.py +4 -6
  249. agenta/client/backend/types/workflow_artifact.py +45 -0
  250. agenta/client/backend/types/workflow_data.py +20 -0
  251. agenta/client/backend/types/workflow_flags.py +21 -0
  252. agenta/client/backend/types/workflow_request.py +20 -0
  253. agenta/client/backend/types/workflow_response.py +21 -0
  254. agenta/client/backend/types/workflow_revision.py +57 -0
  255. agenta/client/backend/types/workflow_revision_request.py +20 -0
  256. agenta/client/backend/types/workflow_revision_response.py +21 -0
  257. agenta/client/backend/types/workflow_revisions_response.py +21 -0
  258. agenta/client/backend/types/workflow_variant.py +48 -0
  259. agenta/client/backend/types/workflow_variant_request.py +20 -0
  260. agenta/client/backend/types/workflow_variant_response.py +21 -0
  261. agenta/client/backend/types/workflow_variants_response.py +21 -0
  262. agenta/client/backend/types/workflows_response.py +21 -0
  263. agenta/client/backend/types/workspace.py +3 -5
  264. agenta/client/backend/types/workspace_member_response.py +4 -6
  265. agenta/client/backend/types/workspace_membership_request.py +5 -7
  266. agenta/client/backend/types/workspace_permission.py +5 -7
  267. agenta/client/backend/types/workspace_request.py +4 -6
  268. agenta/client/backend/types/workspace_response.py +4 -6
  269. agenta/client/backend/variants/__init__.py +2 -0
  270. agenta/client/backend/variants/client.py +306 -1651
  271. agenta/client/backend/variants/raw_client.py +2482 -0
  272. agenta/client/backend/variants/types/__init__.py +2 -0
  273. agenta/client/backend/variants/types/add_variant_from_base_and_config_response.py +1 -0
  274. agenta/client/backend/vault/__init__.py +2 -0
  275. agenta/client/backend/vault/client.py +69 -323
  276. agenta/client/backend/vault/raw_client.py +616 -0
  277. agenta/client/backend/workflows/__init__.py +3 -0
  278. agenta/client/backend/workflows/client.py +2398 -0
  279. agenta/client/backend/workflows/raw_client.py +3639 -0
  280. agenta/client/backend/workspace/__init__.py +2 -0
  281. agenta/client/backend/workspace/client.py +46 -147
  282. agenta/client/backend/workspace/raw_client.py +376 -0
  283. agenta/client/types.py +4 -0
  284. agenta/sdk/litellm/mocks/__init__.py +144 -0
  285. agenta/sdk/middleware/auth.py +26 -25
  286. agenta/sdk/types.py +28 -1
  287. {agenta-0.48.9.dist-info → agenta-0.49.0.dist-info}/METADATA +1 -1
  288. agenta-0.49.0.dist-info/RECORD +362 -0
  289. agenta/client/backend/containers/types/__init__.py +0 -5
  290. agenta/client/backend/containers/types/container_templates_response.py +0 -6
  291. agenta/client/backend/types/image.py +0 -25
  292. agenta/client/backend/types/provider_kind.py +0 -21
  293. agenta/client/backend/types/template.py +0 -23
  294. agenta/client/backend/types/template_image_info.py +0 -29
  295. agenta/client/backend/types/variant_action.py +0 -22
  296. agenta-0.48.9.dist-info/RECORD +0 -255
  297. {agenta-0.48.9.dist-info → agenta-0.49.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,402 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+ from json.decoder import JSONDecodeError
5
+
6
+ from ..core.api_error import ApiError
7
+ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
8
+ from ..core.http_response import AsyncHttpResponse, HttpResponse
9
+ from ..core.jsonable_encoder import jsonable_encoder
10
+ from ..core.pydantic_utilities import parse_obj_as
11
+ from ..core.request_options import RequestOptions
12
+ from ..errors.unprocessable_entity_error import UnprocessableEntityError
13
+ from ..types.get_config_response import GetConfigResponse
14
+ from ..types.http_validation_error import HttpValidationError
15
+
16
+
17
+ class RawConfigsClient:
18
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
19
+ self._client_wrapper = client_wrapper
20
+
21
+ def get_config(
22
+ self,
23
+ *,
24
+ base_id: str,
25
+ config_name: typing.Optional[str] = None,
26
+ environment_name: typing.Optional[str] = None,
27
+ request_options: typing.Optional[RequestOptions] = None,
28
+ ) -> HttpResponse[GetConfigResponse]:
29
+ """
30
+ Parameters
31
+ ----------
32
+ base_id : str
33
+
34
+ config_name : typing.Optional[str]
35
+
36
+ environment_name : typing.Optional[str]
37
+
38
+ request_options : typing.Optional[RequestOptions]
39
+ Request-specific configuration.
40
+
41
+ Returns
42
+ -------
43
+ HttpResponse[GetConfigResponse]
44
+ Successful Response
45
+ """
46
+ _response = self._client_wrapper.httpx_client.request(
47
+ "configs",
48
+ method="GET",
49
+ params={
50
+ "base_id": base_id,
51
+ "config_name": config_name,
52
+ "environment_name": environment_name,
53
+ },
54
+ request_options=request_options,
55
+ )
56
+ try:
57
+ if 200 <= _response.status_code < 300:
58
+ _data = typing.cast(
59
+ GetConfigResponse,
60
+ parse_obj_as(
61
+ type_=GetConfigResponse, # type: ignore
62
+ object_=_response.json(),
63
+ ),
64
+ )
65
+ return HttpResponse(response=_response, data=_data)
66
+ if _response.status_code == 422:
67
+ raise UnprocessableEntityError(
68
+ headers=dict(_response.headers),
69
+ body=typing.cast(
70
+ HttpValidationError,
71
+ parse_obj_as(
72
+ type_=HttpValidationError, # type: ignore
73
+ object_=_response.json(),
74
+ ),
75
+ ),
76
+ )
77
+ _response_json = _response.json()
78
+ except JSONDecodeError:
79
+ raise ApiError(
80
+ status_code=_response.status_code,
81
+ headers=dict(_response.headers),
82
+ body=_response.text,
83
+ )
84
+ raise ApiError(
85
+ status_code=_response.status_code,
86
+ headers=dict(_response.headers),
87
+ body=_response_json,
88
+ )
89
+
90
+ def get_config_deployment_revision(
91
+ self,
92
+ deployment_revision_id: str,
93
+ *,
94
+ request_options: typing.Optional[RequestOptions] = None,
95
+ ) -> HttpResponse[typing.Optional[typing.Any]]:
96
+ """
97
+ Parameters
98
+ ----------
99
+ deployment_revision_id : str
100
+
101
+ request_options : typing.Optional[RequestOptions]
102
+ Request-specific configuration.
103
+
104
+ Returns
105
+ -------
106
+ HttpResponse[typing.Optional[typing.Any]]
107
+ Successful Response
108
+ """
109
+ _response = self._client_wrapper.httpx_client.request(
110
+ f"configs/deployment/{jsonable_encoder(deployment_revision_id)}",
111
+ method="GET",
112
+ request_options=request_options,
113
+ )
114
+ try:
115
+ if _response is None or not _response.text.strip():
116
+ return HttpResponse(response=_response, data=None)
117
+ if 200 <= _response.status_code < 300:
118
+ _data = typing.cast(
119
+ typing.Optional[typing.Any],
120
+ parse_obj_as(
121
+ type_=typing.Optional[typing.Any], # type: ignore
122
+ object_=_response.json(),
123
+ ),
124
+ )
125
+ return HttpResponse(response=_response, data=_data)
126
+ if _response.status_code == 422:
127
+ raise UnprocessableEntityError(
128
+ headers=dict(_response.headers),
129
+ body=typing.cast(
130
+ HttpValidationError,
131
+ parse_obj_as(
132
+ type_=HttpValidationError, # type: ignore
133
+ object_=_response.json(),
134
+ ),
135
+ ),
136
+ )
137
+ _response_json = _response.json()
138
+ except JSONDecodeError:
139
+ raise ApiError(
140
+ status_code=_response.status_code,
141
+ headers=dict(_response.headers),
142
+ body=_response.text,
143
+ )
144
+ raise ApiError(
145
+ status_code=_response.status_code,
146
+ headers=dict(_response.headers),
147
+ body=_response_json,
148
+ )
149
+
150
+ def revert_deployment_revision(
151
+ self,
152
+ deployment_revision_id: str,
153
+ *,
154
+ request_options: typing.Optional[RequestOptions] = None,
155
+ ) -> HttpResponse[typing.Optional[typing.Any]]:
156
+ """
157
+ Parameters
158
+ ----------
159
+ deployment_revision_id : str
160
+
161
+ request_options : typing.Optional[RequestOptions]
162
+ Request-specific configuration.
163
+
164
+ Returns
165
+ -------
166
+ HttpResponse[typing.Optional[typing.Any]]
167
+ Successful Response
168
+ """
169
+ _response = self._client_wrapper.httpx_client.request(
170
+ f"configs/deployment/{jsonable_encoder(deployment_revision_id)}/revert",
171
+ method="POST",
172
+ request_options=request_options,
173
+ )
174
+ try:
175
+ if _response is None or not _response.text.strip():
176
+ return HttpResponse(response=_response, data=None)
177
+ if 200 <= _response.status_code < 300:
178
+ _data = typing.cast(
179
+ typing.Optional[typing.Any],
180
+ parse_obj_as(
181
+ type_=typing.Optional[typing.Any], # type: ignore
182
+ object_=_response.json(),
183
+ ),
184
+ )
185
+ return HttpResponse(response=_response, data=_data)
186
+ if _response.status_code == 422:
187
+ raise UnprocessableEntityError(
188
+ headers=dict(_response.headers),
189
+ body=typing.cast(
190
+ HttpValidationError,
191
+ parse_obj_as(
192
+ type_=HttpValidationError, # type: ignore
193
+ object_=_response.json(),
194
+ ),
195
+ ),
196
+ )
197
+ _response_json = _response.json()
198
+ except JSONDecodeError:
199
+ raise ApiError(
200
+ status_code=_response.status_code,
201
+ headers=dict(_response.headers),
202
+ body=_response.text,
203
+ )
204
+ raise ApiError(
205
+ status_code=_response.status_code,
206
+ headers=dict(_response.headers),
207
+ body=_response_json,
208
+ )
209
+
210
+
211
+ class AsyncRawConfigsClient:
212
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
213
+ self._client_wrapper = client_wrapper
214
+
215
+ async def get_config(
216
+ self,
217
+ *,
218
+ base_id: str,
219
+ config_name: typing.Optional[str] = None,
220
+ environment_name: typing.Optional[str] = None,
221
+ request_options: typing.Optional[RequestOptions] = None,
222
+ ) -> AsyncHttpResponse[GetConfigResponse]:
223
+ """
224
+ Parameters
225
+ ----------
226
+ base_id : str
227
+
228
+ config_name : typing.Optional[str]
229
+
230
+ environment_name : typing.Optional[str]
231
+
232
+ request_options : typing.Optional[RequestOptions]
233
+ Request-specific configuration.
234
+
235
+ Returns
236
+ -------
237
+ AsyncHttpResponse[GetConfigResponse]
238
+ Successful Response
239
+ """
240
+ _response = await self._client_wrapper.httpx_client.request(
241
+ "configs",
242
+ method="GET",
243
+ params={
244
+ "base_id": base_id,
245
+ "config_name": config_name,
246
+ "environment_name": environment_name,
247
+ },
248
+ request_options=request_options,
249
+ )
250
+ try:
251
+ if 200 <= _response.status_code < 300:
252
+ _data = typing.cast(
253
+ GetConfigResponse,
254
+ parse_obj_as(
255
+ type_=GetConfigResponse, # type: ignore
256
+ object_=_response.json(),
257
+ ),
258
+ )
259
+ return AsyncHttpResponse(response=_response, data=_data)
260
+ if _response.status_code == 422:
261
+ raise UnprocessableEntityError(
262
+ headers=dict(_response.headers),
263
+ body=typing.cast(
264
+ HttpValidationError,
265
+ parse_obj_as(
266
+ type_=HttpValidationError, # type: ignore
267
+ object_=_response.json(),
268
+ ),
269
+ ),
270
+ )
271
+ _response_json = _response.json()
272
+ except JSONDecodeError:
273
+ raise ApiError(
274
+ status_code=_response.status_code,
275
+ headers=dict(_response.headers),
276
+ body=_response.text,
277
+ )
278
+ raise ApiError(
279
+ status_code=_response.status_code,
280
+ headers=dict(_response.headers),
281
+ body=_response_json,
282
+ )
283
+
284
+ async def get_config_deployment_revision(
285
+ self,
286
+ deployment_revision_id: str,
287
+ *,
288
+ request_options: typing.Optional[RequestOptions] = None,
289
+ ) -> AsyncHttpResponse[typing.Optional[typing.Any]]:
290
+ """
291
+ Parameters
292
+ ----------
293
+ deployment_revision_id : str
294
+
295
+ request_options : typing.Optional[RequestOptions]
296
+ Request-specific configuration.
297
+
298
+ Returns
299
+ -------
300
+ AsyncHttpResponse[typing.Optional[typing.Any]]
301
+ Successful Response
302
+ """
303
+ _response = await self._client_wrapper.httpx_client.request(
304
+ f"configs/deployment/{jsonable_encoder(deployment_revision_id)}",
305
+ method="GET",
306
+ request_options=request_options,
307
+ )
308
+ try:
309
+ if _response is None or not _response.text.strip():
310
+ return AsyncHttpResponse(response=_response, data=None)
311
+ if 200 <= _response.status_code < 300:
312
+ _data = typing.cast(
313
+ typing.Optional[typing.Any],
314
+ parse_obj_as(
315
+ type_=typing.Optional[typing.Any], # type: ignore
316
+ object_=_response.json(),
317
+ ),
318
+ )
319
+ return AsyncHttpResponse(response=_response, data=_data)
320
+ if _response.status_code == 422:
321
+ raise UnprocessableEntityError(
322
+ headers=dict(_response.headers),
323
+ body=typing.cast(
324
+ HttpValidationError,
325
+ parse_obj_as(
326
+ type_=HttpValidationError, # type: ignore
327
+ object_=_response.json(),
328
+ ),
329
+ ),
330
+ )
331
+ _response_json = _response.json()
332
+ except JSONDecodeError:
333
+ raise ApiError(
334
+ status_code=_response.status_code,
335
+ headers=dict(_response.headers),
336
+ body=_response.text,
337
+ )
338
+ raise ApiError(
339
+ status_code=_response.status_code,
340
+ headers=dict(_response.headers),
341
+ body=_response_json,
342
+ )
343
+
344
+ async def revert_deployment_revision(
345
+ self,
346
+ deployment_revision_id: str,
347
+ *,
348
+ request_options: typing.Optional[RequestOptions] = None,
349
+ ) -> AsyncHttpResponse[typing.Optional[typing.Any]]:
350
+ """
351
+ Parameters
352
+ ----------
353
+ deployment_revision_id : str
354
+
355
+ request_options : typing.Optional[RequestOptions]
356
+ Request-specific configuration.
357
+
358
+ Returns
359
+ -------
360
+ AsyncHttpResponse[typing.Optional[typing.Any]]
361
+ Successful Response
362
+ """
363
+ _response = await self._client_wrapper.httpx_client.request(
364
+ f"configs/deployment/{jsonable_encoder(deployment_revision_id)}/revert",
365
+ method="POST",
366
+ request_options=request_options,
367
+ )
368
+ try:
369
+ if _response is None or not _response.text.strip():
370
+ return AsyncHttpResponse(response=_response, data=None)
371
+ if 200 <= _response.status_code < 300:
372
+ _data = typing.cast(
373
+ typing.Optional[typing.Any],
374
+ parse_obj_as(
375
+ type_=typing.Optional[typing.Any], # type: ignore
376
+ object_=_response.json(),
377
+ ),
378
+ )
379
+ return AsyncHttpResponse(response=_response, data=_data)
380
+ if _response.status_code == 422:
381
+ raise UnprocessableEntityError(
382
+ headers=dict(_response.headers),
383
+ body=typing.cast(
384
+ HttpValidationError,
385
+ parse_obj_as(
386
+ type_=HttpValidationError, # type: ignore
387
+ object_=_response.json(),
388
+ ),
389
+ ),
390
+ )
391
+ _response_json = _response.json()
392
+ except JSONDecodeError:
393
+ raise ApiError(
394
+ status_code=_response.status_code,
395
+ headers=dict(_response.headers),
396
+ body=_response.text,
397
+ )
398
+ raise ApiError(
399
+ status_code=_response.status_code,
400
+ headers=dict(_response.headers),
401
+ body=_response_json,
402
+ )
@@ -1,5 +1,3 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from .types import ContainerTemplatesResponse
4
-
5
- __all__ = ["ContainerTemplatesResponse"]
3
+ # isort: skip_file