agenta 0.48.8__py3-none-any.whl → 0.48.10__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/decorators/tracing.py +2 -4
  285. agenta/sdk/tracing/processors.py +26 -39
  286. agenta/sdk/types.py +28 -1
  287. {agenta-0.48.8.dist-info → agenta-0.48.10.dist-info}/METADATA +1 -1
  288. agenta-0.48.10.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.8.dist-info/RECORD +0 -255
  297. {agenta-0.48.8.dist-info → agenta-0.48.10.dist-info}/WHEEL +0 -0
@@ -1,19 +1,13 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  import typing
4
- from ..core.client_wrapper import SyncClientWrapper
4
+
5
+ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
5
6
  from ..core.request_options import RequestOptions
7
+ from ..types.invite_request import InviteRequest
6
8
  from ..types.organization import Organization
7
- from ..core.pydantic_utilities import parse_obj_as
8
- from json.decoder import JSONDecodeError
9
- from ..core.api_error import ApiError
10
9
  from ..types.organization_details import OrganizationDetails
11
- from ..core.jsonable_encoder import jsonable_encoder
12
- from ..errors.unprocessable_entity_error import UnprocessableEntityError
13
- from ..types.http_validation_error import HttpValidationError
14
- from ..types.invite_request import InviteRequest
15
- from ..core.serialization import convert_and_respect_annotation_metadata
16
- from ..core.client_wrapper import AsyncClientWrapper
10
+ from .raw_client import AsyncRawOrganizationClient, RawOrganizationClient
17
11
 
18
12
  # this is used as the default value for optional parameters
19
13
  OMIT = typing.cast(typing.Any, ...)
@@ -21,28 +15,35 @@ OMIT = typing.cast(typing.Any, ...)
21
15
 
22
16
  class OrganizationClient:
23
17
  def __init__(self, *, client_wrapper: SyncClientWrapper):
24
- self._client_wrapper = client_wrapper
18
+ self._raw_client = RawOrganizationClient(client_wrapper=client_wrapper)
25
19
 
26
- def list_organizations(
27
- self, *, request_options: typing.Optional[RequestOptions] = None
28
- ) -> typing.List[Organization]:
20
+ @property
21
+ def with_raw_response(self) -> RawOrganizationClient:
29
22
  """
30
- Returns a list of organizations associated with the user's session.
23
+ Retrieves a raw implementation of this client that returns raw responses.
31
24
 
32
- Returns:
33
- list[Organization]: A list of organizations associated with the user's session.
25
+ Returns
26
+ -------
27
+ RawOrganizationClient
28
+ """
29
+ return self._raw_client
34
30
 
35
- Raises:
36
- HTTPException: If there is an error retrieving the organizations from the database.
31
+ def fetch_organization_details(
32
+ self, org_id: str, *, request_options: typing.Optional[RequestOptions] = None
33
+ ) -> OrganizationDetails:
34
+ """
35
+ Return the details of the organization.
37
36
 
38
37
  Parameters
39
38
  ----------
39
+ org_id : str
40
+
40
41
  request_options : typing.Optional[RequestOptions]
41
42
  Request-specific configuration.
42
43
 
43
44
  Returns
44
45
  -------
45
- typing.List[Organization]
46
+ OrganizationDetails
46
47
  Successful Response
47
48
 
48
49
  Examples
@@ -51,45 +52,36 @@ class OrganizationClient:
51
52
 
52
53
  client = AgentaApi(
53
54
  api_key="YOUR_API_KEY",
54
- base_url="https://yourhost.com/path/to/api",
55
55
  )
56
- client.organization.list_organizations()
56
+ client.organization.fetch_organization_details(
57
+ org_id="org_id",
58
+ )
57
59
  """
58
- _response = self._client_wrapper.httpx_client.request(
59
- "organizations",
60
- method="GET",
61
- request_options=request_options,
60
+ _response = self._raw_client.fetch_organization_details(
61
+ org_id, request_options=request_options
62
62
  )
63
- try:
64
- if 200 <= _response.status_code < 300:
65
- return typing.cast(
66
- typing.List[Organization],
67
- parse_obj_as(
68
- type_=typing.List[Organization], # type: ignore
69
- object_=_response.json(),
70
- ),
71
- )
72
- _response_json = _response.json()
73
- except JSONDecodeError:
74
- raise ApiError(status_code=_response.status_code, body=_response.text)
75
- raise ApiError(status_code=_response.status_code, body=_response_json)
63
+ return _response.data
76
64
 
77
- def fetch_organization_details(
78
- self, org_id: str, *, request_options: typing.Optional[RequestOptions] = None
79
- ) -> OrganizationDetails:
65
+ def list_organizations(
66
+ self, *, request_options: typing.Optional[RequestOptions] = None
67
+ ) -> typing.List[Organization]:
80
68
  """
81
- Return the details of the organization.
69
+ Returns a list of organizations associated with the user's session.
70
+
71
+ Returns:
72
+ list[Organization]: A list of organizations associated with the user's session.
73
+
74
+ Raises:
75
+ HTTPException: If there is an error retrieving the organizations from the database.
82
76
 
83
77
  Parameters
84
78
  ----------
85
- org_id : str
86
-
87
79
  request_options : typing.Optional[RequestOptions]
88
80
  Request-specific configuration.
89
81
 
90
82
  Returns
91
83
  -------
92
- OrganizationDetails
84
+ typing.List[Organization]
93
85
  Successful Response
94
86
 
95
87
  Examples
@@ -98,40 +90,11 @@ class OrganizationClient:
98
90
 
99
91
  client = AgentaApi(
100
92
  api_key="YOUR_API_KEY",
101
- base_url="https://yourhost.com/path/to/api",
102
- )
103
- client.organization.fetch_organization_details(
104
- org_id="org_id",
105
93
  )
94
+ client.organization.list_organizations()
106
95
  """
107
- _response = self._client_wrapper.httpx_client.request(
108
- f"organizations/{jsonable_encoder(org_id)}",
109
- method="GET",
110
- request_options=request_options,
111
- )
112
- try:
113
- if 200 <= _response.status_code < 300:
114
- return typing.cast(
115
- OrganizationDetails,
116
- parse_obj_as(
117
- type_=OrganizationDetails, # type: ignore
118
- object_=_response.json(),
119
- ),
120
- )
121
- if _response.status_code == 422:
122
- raise UnprocessableEntityError(
123
- typing.cast(
124
- HttpValidationError,
125
- parse_obj_as(
126
- type_=HttpValidationError, # type: ignore
127
- object_=_response.json(),
128
- ),
129
- )
130
- )
131
- _response_json = _response.json()
132
- except JSONDecodeError:
133
- raise ApiError(status_code=_response.status_code, body=_response.text)
134
- raise ApiError(status_code=_response.status_code, body=_response_json)
96
+ _response = self._raw_client.list_organizations(request_options=request_options)
97
+ return _response.data
135
98
 
136
99
  def invite_user_to_workspace(
137
100
  self,
@@ -178,7 +141,6 @@ class OrganizationClient:
178
141
 
179
142
  client = AgentaApi(
180
143
  api_key="YOUR_API_KEY",
181
- base_url="https://yourhost.com/path/to/api",
182
144
  )
183
145
  client.organization.invite_user_to_workspace(
184
146
  org_id="org_id",
@@ -186,45 +148,14 @@ class OrganizationClient:
186
148
  request=[
187
149
  InviteRequest(
188
150
  email="email",
189
- roles=["roles"],
190
151
  )
191
152
  ],
192
153
  )
193
154
  """
194
- _response = self._client_wrapper.httpx_client.request(
195
- f"organizations/{jsonable_encoder(org_id)}/workspaces/{jsonable_encoder(workspace_id)}/invite",
196
- method="POST",
197
- json=convert_and_respect_annotation_metadata(
198
- object_=request,
199
- annotation=typing.Sequence[InviteRequest],
200
- direction="write",
201
- ),
202
- request_options=request_options,
203
- omit=OMIT,
155
+ _response = self._raw_client.invite_user_to_workspace(
156
+ org_id, workspace_id, request=request, request_options=request_options
204
157
  )
205
- try:
206
- if 200 <= _response.status_code < 300:
207
- return typing.cast(
208
- typing.Optional[typing.Any],
209
- parse_obj_as(
210
- type_=typing.Optional[typing.Any], # type: ignore
211
- object_=_response.json(),
212
- ),
213
- )
214
- if _response.status_code == 422:
215
- raise UnprocessableEntityError(
216
- typing.cast(
217
- HttpValidationError,
218
- parse_obj_as(
219
- type_=HttpValidationError, # type: ignore
220
- object_=_response.json(),
221
- ),
222
- )
223
- )
224
- _response_json = _response.json()
225
- except JSONDecodeError:
226
- raise ApiError(status_code=_response.status_code, body=_response.text)
227
- raise ApiError(status_code=_response.status_code, body=_response_json)
158
+ return _response.data
228
159
 
229
160
  def resend_invitation(
230
161
  self,
@@ -267,7 +198,6 @@ class OrganizationClient:
267
198
 
268
199
  client = AgentaApi(
269
200
  api_key="YOUR_API_KEY",
270
- base_url="https://yourhost.com/path/to/api",
271
201
  )
272
202
  client.organization.resend_invitation(
273
203
  org_id="org_id",
@@ -275,41 +205,10 @@ class OrganizationClient:
275
205
  email="email",
276
206
  )
277
207
  """
278
- _response = self._client_wrapper.httpx_client.request(
279
- f"organizations/{jsonable_encoder(org_id)}/workspaces/{jsonable_encoder(workspace_id)}/invite/resend",
280
- method="POST",
281
- json={
282
- "email": email,
283
- },
284
- headers={
285
- "content-type": "application/json",
286
- },
287
- request_options=request_options,
288
- omit=OMIT,
208
+ _response = self._raw_client.resend_invitation(
209
+ org_id, workspace_id, email=email, request_options=request_options
289
210
  )
290
- try:
291
- if 200 <= _response.status_code < 300:
292
- return typing.cast(
293
- typing.Optional[typing.Any],
294
- parse_obj_as(
295
- type_=typing.Optional[typing.Any], # type: ignore
296
- object_=_response.json(),
297
- ),
298
- )
299
- if _response.status_code == 422:
300
- raise UnprocessableEntityError(
301
- typing.cast(
302
- HttpValidationError,
303
- parse_obj_as(
304
- type_=HttpValidationError, # type: ignore
305
- object_=_response.json(),
306
- ),
307
- )
308
- )
309
- _response_json = _response.json()
310
- except JSONDecodeError:
311
- raise ApiError(status_code=_response.status_code, body=_response.text)
312
- raise ApiError(status_code=_response.status_code, body=_response_json)
211
+ return _response.data
313
212
 
314
213
  def accept_invitation(
315
214
  self,
@@ -358,7 +257,6 @@ class OrganizationClient:
358
257
 
359
258
  client = AgentaApi(
360
259
  api_key="YOUR_API_KEY",
361
- base_url="https://yourhost.com/path/to/api",
362
260
  )
363
261
  client.organization.accept_invitation(
364
262
  org_id="org_id",
@@ -368,71 +266,48 @@ class OrganizationClient:
368
266
  email="email",
369
267
  )
370
268
  """
371
- _response = self._client_wrapper.httpx_client.request(
372
- f"organizations/{jsonable_encoder(org_id)}/workspaces/{jsonable_encoder(workspace_id)}/invite/accept",
373
- method="POST",
374
- params={
375
- "project_id": project_id,
376
- },
377
- json={
378
- "token": token,
379
- "email": email,
380
- },
381
- headers={
382
- "content-type": "application/json",
383
- },
269
+ _response = self._raw_client.accept_invitation(
270
+ org_id,
271
+ workspace_id,
272
+ project_id=project_id,
273
+ token=token,
274
+ email=email,
384
275
  request_options=request_options,
385
- omit=OMIT,
386
276
  )
387
- try:
388
- if 200 <= _response.status_code < 300:
389
- return typing.cast(
390
- typing.Optional[typing.Any],
391
- parse_obj_as(
392
- type_=typing.Optional[typing.Any], # type: ignore
393
- object_=_response.json(),
394
- ),
395
- )
396
- if _response.status_code == 422:
397
- raise UnprocessableEntityError(
398
- typing.cast(
399
- HttpValidationError,
400
- parse_obj_as(
401
- type_=HttpValidationError, # type: ignore
402
- object_=_response.json(),
403
- ),
404
- )
405
- )
406
- _response_json = _response.json()
407
- except JSONDecodeError:
408
- raise ApiError(status_code=_response.status_code, body=_response.text)
409
- raise ApiError(status_code=_response.status_code, body=_response_json)
277
+ return _response.data
410
278
 
411
279
 
412
280
  class AsyncOrganizationClient:
413
281
  def __init__(self, *, client_wrapper: AsyncClientWrapper):
414
- self._client_wrapper = client_wrapper
282
+ self._raw_client = AsyncRawOrganizationClient(client_wrapper=client_wrapper)
415
283
 
416
- async def list_organizations(
417
- self, *, request_options: typing.Optional[RequestOptions] = None
418
- ) -> typing.List[Organization]:
284
+ @property
285
+ def with_raw_response(self) -> AsyncRawOrganizationClient:
419
286
  """
420
- Returns a list of organizations associated with the user's session.
287
+ Retrieves a raw implementation of this client that returns raw responses.
421
288
 
422
- Returns:
423
- list[Organization]: A list of organizations associated with the user's session.
289
+ Returns
290
+ -------
291
+ AsyncRawOrganizationClient
292
+ """
293
+ return self._raw_client
424
294
 
425
- Raises:
426
- HTTPException: If there is an error retrieving the organizations from the database.
295
+ async def fetch_organization_details(
296
+ self, org_id: str, *, request_options: typing.Optional[RequestOptions] = None
297
+ ) -> OrganizationDetails:
298
+ """
299
+ Return the details of the organization.
427
300
 
428
301
  Parameters
429
302
  ----------
303
+ org_id : str
304
+
430
305
  request_options : typing.Optional[RequestOptions]
431
306
  Request-specific configuration.
432
307
 
433
308
  Returns
434
309
  -------
435
- typing.List[Organization]
310
+ OrganizationDetails
436
311
  Successful Response
437
312
 
438
313
  Examples
@@ -443,51 +318,42 @@ class AsyncOrganizationClient:
443
318
 
444
319
  client = AsyncAgentaApi(
445
320
  api_key="YOUR_API_KEY",
446
- base_url="https://yourhost.com/path/to/api",
447
321
  )
448
322
 
449
323
 
450
324
  async def main() -> None:
451
- await client.organization.list_organizations()
325
+ await client.organization.fetch_organization_details(
326
+ org_id="org_id",
327
+ )
452
328
 
453
329
 
454
330
  asyncio.run(main())
455
331
  """
456
- _response = await self._client_wrapper.httpx_client.request(
457
- "organizations",
458
- method="GET",
459
- request_options=request_options,
332
+ _response = await self._raw_client.fetch_organization_details(
333
+ org_id, request_options=request_options
460
334
  )
461
- try:
462
- if 200 <= _response.status_code < 300:
463
- return typing.cast(
464
- typing.List[Organization],
465
- parse_obj_as(
466
- type_=typing.List[Organization], # type: ignore
467
- object_=_response.json(),
468
- ),
469
- )
470
- _response_json = _response.json()
471
- except JSONDecodeError:
472
- raise ApiError(status_code=_response.status_code, body=_response.text)
473
- raise ApiError(status_code=_response.status_code, body=_response_json)
335
+ return _response.data
474
336
 
475
- async def fetch_organization_details(
476
- self, org_id: str, *, request_options: typing.Optional[RequestOptions] = None
477
- ) -> OrganizationDetails:
337
+ async def list_organizations(
338
+ self, *, request_options: typing.Optional[RequestOptions] = None
339
+ ) -> typing.List[Organization]:
478
340
  """
479
- Return the details of the organization.
341
+ Returns a list of organizations associated with the user's session.
342
+
343
+ Returns:
344
+ list[Organization]: A list of organizations associated with the user's session.
345
+
346
+ Raises:
347
+ HTTPException: If there is an error retrieving the organizations from the database.
480
348
 
481
349
  Parameters
482
350
  ----------
483
- org_id : str
484
-
485
351
  request_options : typing.Optional[RequestOptions]
486
352
  Request-specific configuration.
487
353
 
488
354
  Returns
489
355
  -------
490
- OrganizationDetails
356
+ typing.List[Organization]
491
357
  Successful Response
492
358
 
493
359
  Examples
@@ -498,46 +364,19 @@ class AsyncOrganizationClient:
498
364
 
499
365
  client = AsyncAgentaApi(
500
366
  api_key="YOUR_API_KEY",
501
- base_url="https://yourhost.com/path/to/api",
502
367
  )
503
368
 
504
369
 
505
370
  async def main() -> None:
506
- await client.organization.fetch_organization_details(
507
- org_id="org_id",
508
- )
371
+ await client.organization.list_organizations()
509
372
 
510
373
 
511
374
  asyncio.run(main())
512
375
  """
513
- _response = await self._client_wrapper.httpx_client.request(
514
- f"organizations/{jsonable_encoder(org_id)}",
515
- method="GET",
516
- request_options=request_options,
376
+ _response = await self._raw_client.list_organizations(
377
+ request_options=request_options
517
378
  )
518
- try:
519
- if 200 <= _response.status_code < 300:
520
- return typing.cast(
521
- OrganizationDetails,
522
- parse_obj_as(
523
- type_=OrganizationDetails, # type: ignore
524
- object_=_response.json(),
525
- ),
526
- )
527
- if _response.status_code == 422:
528
- raise UnprocessableEntityError(
529
- typing.cast(
530
- HttpValidationError,
531
- parse_obj_as(
532
- type_=HttpValidationError, # type: ignore
533
- object_=_response.json(),
534
- ),
535
- )
536
- )
537
- _response_json = _response.json()
538
- except JSONDecodeError:
539
- raise ApiError(status_code=_response.status_code, body=_response.text)
540
- raise ApiError(status_code=_response.status_code, body=_response_json)
379
+ return _response.data
541
380
 
542
381
  async def invite_user_to_workspace(
543
382
  self,
@@ -586,7 +425,6 @@ class AsyncOrganizationClient:
586
425
 
587
426
  client = AsyncAgentaApi(
588
427
  api_key="YOUR_API_KEY",
589
- base_url="https://yourhost.com/path/to/api",
590
428
  )
591
429
 
592
430
 
@@ -597,7 +435,6 @@ class AsyncOrganizationClient:
597
435
  request=[
598
436
  InviteRequest(
599
437
  email="email",
600
- roles=["roles"],
601
438
  )
602
439
  ],
603
440
  )
@@ -605,40 +442,10 @@ class AsyncOrganizationClient:
605
442
 
606
443
  asyncio.run(main())
607
444
  """
608
- _response = await self._client_wrapper.httpx_client.request(
609
- f"organizations/{jsonable_encoder(org_id)}/workspaces/{jsonable_encoder(workspace_id)}/invite",
610
- method="POST",
611
- json=convert_and_respect_annotation_metadata(
612
- object_=request,
613
- annotation=typing.Sequence[InviteRequest],
614
- direction="write",
615
- ),
616
- request_options=request_options,
617
- omit=OMIT,
445
+ _response = await self._raw_client.invite_user_to_workspace(
446
+ org_id, workspace_id, request=request, request_options=request_options
618
447
  )
619
- try:
620
- if 200 <= _response.status_code < 300:
621
- return typing.cast(
622
- typing.Optional[typing.Any],
623
- parse_obj_as(
624
- type_=typing.Optional[typing.Any], # type: ignore
625
- object_=_response.json(),
626
- ),
627
- )
628
- if _response.status_code == 422:
629
- raise UnprocessableEntityError(
630
- typing.cast(
631
- HttpValidationError,
632
- parse_obj_as(
633
- type_=HttpValidationError, # type: ignore
634
- object_=_response.json(),
635
- ),
636
- )
637
- )
638
- _response_json = _response.json()
639
- except JSONDecodeError:
640
- raise ApiError(status_code=_response.status_code, body=_response.text)
641
- raise ApiError(status_code=_response.status_code, body=_response_json)
448
+ return _response.data
642
449
 
643
450
  async def resend_invitation(
644
451
  self,
@@ -683,7 +490,6 @@ class AsyncOrganizationClient:
683
490
 
684
491
  client = AsyncAgentaApi(
685
492
  api_key="YOUR_API_KEY",
686
- base_url="https://yourhost.com/path/to/api",
687
493
  )
688
494
 
689
495
 
@@ -697,41 +503,10 @@ class AsyncOrganizationClient:
697
503
 
698
504
  asyncio.run(main())
699
505
  """
700
- _response = await self._client_wrapper.httpx_client.request(
701
- f"organizations/{jsonable_encoder(org_id)}/workspaces/{jsonable_encoder(workspace_id)}/invite/resend",
702
- method="POST",
703
- json={
704
- "email": email,
705
- },
706
- headers={
707
- "content-type": "application/json",
708
- },
709
- request_options=request_options,
710
- omit=OMIT,
506
+ _response = await self._raw_client.resend_invitation(
507
+ org_id, workspace_id, email=email, request_options=request_options
711
508
  )
712
- try:
713
- if 200 <= _response.status_code < 300:
714
- return typing.cast(
715
- typing.Optional[typing.Any],
716
- parse_obj_as(
717
- type_=typing.Optional[typing.Any], # type: ignore
718
- object_=_response.json(),
719
- ),
720
- )
721
- if _response.status_code == 422:
722
- raise UnprocessableEntityError(
723
- typing.cast(
724
- HttpValidationError,
725
- parse_obj_as(
726
- type_=HttpValidationError, # type: ignore
727
- object_=_response.json(),
728
- ),
729
- )
730
- )
731
- _response_json = _response.json()
732
- except JSONDecodeError:
733
- raise ApiError(status_code=_response.status_code, body=_response.text)
734
- raise ApiError(status_code=_response.status_code, body=_response_json)
509
+ return _response.data
735
510
 
736
511
  async def accept_invitation(
737
512
  self,
@@ -782,7 +557,6 @@ class AsyncOrganizationClient:
782
557
 
783
558
  client = AsyncAgentaApi(
784
559
  api_key="YOUR_API_KEY",
785
- base_url="https://yourhost.com/path/to/api",
786
560
  )
787
561
 
788
562
 
@@ -798,42 +572,12 @@ class AsyncOrganizationClient:
798
572
 
799
573
  asyncio.run(main())
800
574
  """
801
- _response = await self._client_wrapper.httpx_client.request(
802
- f"organizations/{jsonable_encoder(org_id)}/workspaces/{jsonable_encoder(workspace_id)}/invite/accept",
803
- method="POST",
804
- params={
805
- "project_id": project_id,
806
- },
807
- json={
808
- "token": token,
809
- "email": email,
810
- },
811
- headers={
812
- "content-type": "application/json",
813
- },
575
+ _response = await self._raw_client.accept_invitation(
576
+ org_id,
577
+ workspace_id,
578
+ project_id=project_id,
579
+ token=token,
580
+ email=email,
814
581
  request_options=request_options,
815
- omit=OMIT,
816
582
  )
817
- try:
818
- if 200 <= _response.status_code < 300:
819
- return typing.cast(
820
- typing.Optional[typing.Any],
821
- parse_obj_as(
822
- type_=typing.Optional[typing.Any], # type: ignore
823
- object_=_response.json(),
824
- ),
825
- )
826
- if _response.status_code == 422:
827
- raise UnprocessableEntityError(
828
- typing.cast(
829
- HttpValidationError,
830
- parse_obj_as(
831
- type_=HttpValidationError, # type: ignore
832
- object_=_response.json(),
833
- ),
834
- )
835
- )
836
- _response_json = _response.json()
837
- except JSONDecodeError:
838
- raise ApiError(status_code=_response.status_code, body=_response.text)
839
- raise ApiError(status_code=_response.status_code, body=_response_json)
583
+ return _response.data