blaxel 0.2.34__py3-none-any.whl → 0.2.35__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 (276) hide show
  1. blaxel/__init__.py +2 -2
  2. blaxel/core/client/api/agents/create_agent.py +64 -19
  3. blaxel/core/client/api/agents/delete_agent.py +44 -15
  4. blaxel/core/client/api/agents/get_agent.py +43 -14
  5. blaxel/core/client/api/agents/list_agents.py +40 -11
  6. blaxel/core/client/api/agents/update_agent.py +60 -19
  7. blaxel/core/client/api/compute/create_sandbox.py +60 -23
  8. blaxel/core/client/api/compute/delete_sandbox.py +40 -19
  9. blaxel/core/client/api/compute/get_sandbox.py +39 -18
  10. blaxel/core/client/api/compute/list_sandboxes.py +40 -19
  11. blaxel/core/client/api/compute/update_sandbox.py +56 -23
  12. blaxel/core/client/api/configurations/get_configuration.py +16 -4
  13. blaxel/core/client/api/customdomains/create_custom_domain.py +12 -0
  14. blaxel/core/client/api/customdomains/list_custom_domains.py +16 -4
  15. blaxel/core/client/api/default/get_template.py +8 -4
  16. blaxel/core/client/api/functions/create_function.py +62 -19
  17. blaxel/core/client/api/functions/delete_function.py +46 -15
  18. blaxel/core/client/api/functions/get_function.py +45 -14
  19. blaxel/core/client/api/functions/list_functions.py +44 -15
  20. blaxel/core/client/api/functions/update_function.py +62 -19
  21. blaxel/core/client/api/images/cleanup_images.py +12 -12
  22. blaxel/core/client/api/images/delete_image.py +12 -8
  23. blaxel/core/client/api/images/delete_image_tag.py +12 -8
  24. blaxel/core/client/api/images/get_image.py +12 -8
  25. blaxel/core/client/api/images/list_images.py +12 -8
  26. blaxel/core/client/api/integrations/create_integration_connection.py +56 -23
  27. blaxel/core/client/api/integrations/delete_integration_connection.py +48 -19
  28. blaxel/core/client/api/integrations/get_integration.py +12 -8
  29. blaxel/core/client/api/integrations/get_integration_connection.py +44 -19
  30. blaxel/core/client/api/integrations/get_integration_connection_model.py +2 -2
  31. blaxel/core/client/api/integrations/list_integration_connections.py +36 -19
  32. blaxel/core/client/api/integrations/update_integration_connection.py +52 -19
  33. blaxel/core/client/api/jobs/create_job.py +20 -12
  34. blaxel/core/client/api/jobs/create_job_execution.py +22 -16
  35. blaxel/core/client/api/jobs/delete_job.py +12 -8
  36. blaxel/core/client/api/jobs/delete_job_execution.py +12 -8
  37. blaxel/core/client/api/jobs/get_job.py +24 -20
  38. blaxel/core/client/api/jobs/get_job_execution.py +8 -4
  39. blaxel/core/client/api/jobs/list_job_executions.py +8 -4
  40. blaxel/core/client/api/jobs/list_jobs.py +12 -8
  41. blaxel/core/client/api/jobs/update_job.py +20 -12
  42. blaxel/core/client/api/locations/list_locations.py +12 -8
  43. blaxel/core/client/api/{default → mcphub}/list_mcp_hub_definitions.py +20 -4
  44. blaxel/core/client/api/models/create_model.py +52 -23
  45. blaxel/core/client/api/models/delete_model.py +40 -19
  46. blaxel/core/client/api/models/get_model.py +40 -19
  47. blaxel/core/client/api/models/list_models.py +40 -19
  48. blaxel/core/client/api/models/update_model.py +52 -23
  49. blaxel/core/client/api/policies/create_policy.py +12 -8
  50. blaxel/core/client/api/policies/delete_policy.py +12 -8
  51. blaxel/core/client/api/policies/get_policy.py +12 -8
  52. blaxel/core/client/api/policies/list_policies.py +12 -8
  53. blaxel/core/client/api/policies/update_policy.py +12 -8
  54. blaxel/core/client/api/public_ipslist/list_public_ips.py +37 -5
  55. blaxel/core/client/api/sandboxhub/__init__.py +0 -0
  56. blaxel/core/client/api/{default → sandboxhub}/list_sandbox_hub_definitions.py +20 -4
  57. blaxel/core/client/api/service_accounts/create_api_key_for_service_account.py +12 -8
  58. blaxel/core/client/api/service_accounts/create_workspace_service_account.py +12 -8
  59. blaxel/core/client/api/service_accounts/delete_api_key_for_service_account.py +6 -4
  60. blaxel/core/client/api/service_accounts/delete_workspace_service_account.py +12 -8
  61. blaxel/core/client/api/service_accounts/get_workspace_service_accounts.py +12 -8
  62. blaxel/core/client/api/service_accounts/list_api_keys_for_service_account.py +12 -8
  63. blaxel/core/client/api/service_accounts/update_workspace_service_account.py +8 -8
  64. blaxel/core/client/api/templates/list_templates.py +12 -8
  65. blaxel/core/client/api/volume_templates/create_volume_template.py +8 -4
  66. blaxel/core/client/api/volume_templates/list_volume_templates.py +8 -4
  67. blaxel/core/client/api/volumes/create_volume.py +56 -23
  68. blaxel/core/client/api/volumes/delete_volume.py +44 -19
  69. blaxel/core/client/api/volumes/get_volume.py +40 -19
  70. blaxel/core/client/api/volumes/list_volumes.py +40 -19
  71. blaxel/core/client/api/workspaces/create_workspace.py +54 -23
  72. blaxel/core/client/api/workspaces/delete_workspace.py +42 -19
  73. blaxel/core/client/api/workspaces/get_workspace.py +42 -19
  74. blaxel/core/client/api/workspaces/invite_workspace_user.py +8 -4
  75. blaxel/core/client/api/workspaces/list_workspace_users.py +12 -8
  76. blaxel/core/client/api/workspaces/list_workspaces.py +36 -19
  77. blaxel/core/client/api/workspaces/update_workspace.py +50 -19
  78. blaxel/core/client/models/__init__.py +76 -146
  79. blaxel/core/client/models/agent.py +43 -47
  80. blaxel/core/client/models/agent_runtime.py +139 -0
  81. blaxel/core/client/models/agent_runtime_generation.py +18 -0
  82. blaxel/core/client/models/agent_spec.py +33 -110
  83. blaxel/core/client/models/api_key.py +5 -4
  84. blaxel/core/client/models/core_event.py +5 -5
  85. blaxel/core/client/models/create_api_key_for_service_account_body.py +2 -1
  86. blaxel/core/client/models/create_job_execution_request.py +1 -1
  87. blaxel/core/client/models/create_job_execution_response.py +13 -9
  88. blaxel/core/client/models/custom_domain.py +19 -36
  89. blaxel/core/client/models/custom_domain_metadata.py +4 -3
  90. blaxel/core/client/models/custom_domain_spec.py +14 -5
  91. blaxel/core/client/models/custom_domain_spec_status.py +19 -0
  92. blaxel/core/client/models/entrypoint.py +39 -13
  93. blaxel/core/client/models/{workspace_labels.py → entrypoint_args_item.py} +6 -6
  94. blaxel/core/client/models/entrypoint_env.py +3 -3
  95. blaxel/core/client/models/{job_metrics_executions_total.py → entrypoint_super_gateway_args_item.py} +6 -6
  96. blaxel/core/client/models/{spec_configuration.py → env.py} +17 -8
  97. blaxel/core/{sandbox/client/models/welcome_response.py → client/models/error.py} +26 -23
  98. blaxel/core/client/models/expiration_policy.py +30 -11
  99. blaxel/core/client/models/expiration_policy_action.py +17 -0
  100. blaxel/core/client/models/expiration_policy_type.py +19 -0
  101. blaxel/core/client/models/flavor.py +13 -5
  102. blaxel/core/client/models/flavor_type.py +18 -0
  103. blaxel/core/client/models/form.py +6 -6
  104. blaxel/core/client/models/function.py +43 -47
  105. blaxel/core/client/models/function_runtime.py +138 -0
  106. blaxel/core/client/models/function_runtime_generation.py +18 -0
  107. blaxel/core/client/models/function_spec.py +27 -73
  108. blaxel/core/client/models/function_spec_transport.py +18 -0
  109. blaxel/core/client/models/image.py +19 -36
  110. blaxel/core/client/models/integration_connection.py +25 -39
  111. blaxel/core/client/models/integration_connection_spec.py +8 -5
  112. blaxel/core/client/models/integration_connection_spec_config.py +1 -1
  113. blaxel/core/client/models/integration_connection_spec_secret.py +1 -1
  114. blaxel/core/client/models/integration_endpoint.py +41 -11
  115. blaxel/core/client/models/integration_endpoint_ignore_models_item.py +45 -0
  116. blaxel/core/client/models/{mcp_definition_entrypoint.py → integration_endpoint_models_item.py} +6 -6
  117. blaxel/core/client/models/job.py +43 -47
  118. blaxel/core/client/models/job_execution.py +30 -37
  119. blaxel/core/client/models/job_execution_metadata.py +3 -3
  120. blaxel/core/client/models/job_execution_spec.py +2 -2
  121. blaxel/core/client/models/job_execution_stats.py +5 -5
  122. blaxel/core/client/models/job_execution_status.py +24 -0
  123. blaxel/core/client/models/job_execution_task.py +12 -4
  124. blaxel/core/client/models/job_execution_task_metadata.py +1 -1
  125. blaxel/core/client/models/job_execution_task_spec.py +2 -2
  126. blaxel/core/client/models/job_execution_task_status.py +23 -0
  127. blaxel/core/client/models/job_runtime.py +172 -0
  128. blaxel/core/client/models/job_runtime_generation.py +18 -0
  129. blaxel/core/client/models/job_spec.py +20 -88
  130. blaxel/core/client/models/location_response.py +5 -5
  131. blaxel/core/client/models/mcp_definition.py +30 -17
  132. blaxel/core/client/models/{job_metrics_tasks_total.py → mcp_definition_categories_item.py} +6 -6
  133. blaxel/core/client/models/metadata.py +23 -17
  134. blaxel/core/client/models/metadata_labels.py +4 -1
  135. blaxel/core/client/models/model.py +43 -47
  136. blaxel/core/client/models/model_runtime.py +99 -0
  137. blaxel/core/client/models/model_runtime_type.py +34 -0
  138. blaxel/core/client/models/model_spec.py +12 -58
  139. blaxel/core/client/models/o_auth.py +23 -6
  140. blaxel/core/client/models/{form_oauth.py → o_auth_scope_item.py} +6 -6
  141. blaxel/core/client/models/pending_invitation_accept.py +2 -1
  142. blaxel/core/client/models/pending_invitation_workspace_details.py +27 -6
  143. blaxel/core/client/models/{metrics_request_total_per_code.py → pending_invitation_workspace_details_emails_item.py} +6 -6
  144. blaxel/core/client/models/policy.py +20 -36
  145. blaxel/core/client/models/policy_location.py +13 -5
  146. blaxel/core/client/models/policy_location_type.py +19 -0
  147. blaxel/core/client/models/policy_max_tokens.py +6 -6
  148. blaxel/core/client/models/policy_resource_type.py +20 -0
  149. blaxel/core/client/models/policy_spec.py +31 -10
  150. blaxel/core/client/models/policy_spec_type.py +19 -0
  151. blaxel/core/client/models/port.py +25 -15
  152. blaxel/core/client/models/port_protocol.py +19 -0
  153. blaxel/core/client/models/preview.py +19 -36
  154. blaxel/core/client/models/preview_metadata.py +12 -10
  155. blaxel/core/client/models/preview_token.py +19 -36
  156. blaxel/core/client/models/preview_token_metadata.py +8 -6
  157. blaxel/core/client/models/repository.py +2 -2
  158. blaxel/core/client/models/revision_configuration.py +3 -3
  159. blaxel/core/client/models/sandbox.py +45 -58
  160. blaxel/core/client/models/sandbox_definition.py +37 -22
  161. blaxel/core/client/models/sandbox_definition_categories_item.py +45 -0
  162. blaxel/core/client/models/sandbox_error.py +148 -0
  163. blaxel/core/client/models/sandbox_error_details.py +45 -0
  164. blaxel/core/client/models/sandbox_lifecycle.py +3 -2
  165. blaxel/core/client/models/sandbox_runtime.py +145 -0
  166. blaxel/core/client/models/sandbox_spec.py +33 -134
  167. blaxel/core/client/models/status.py +25 -0
  168. blaxel/core/client/models/template.py +8 -7
  169. blaxel/core/client/models/template_variable.py +5 -5
  170. blaxel/core/client/models/trigger.py +14 -6
  171. blaxel/core/client/models/trigger_configuration.py +7 -6
  172. blaxel/core/client/models/trigger_type.py +19 -0
  173. blaxel/core/client/models/volume.py +35 -47
  174. blaxel/core/client/models/volume_attachment.py +6 -4
  175. blaxel/core/client/models/volume_spec.py +7 -4
  176. blaxel/core/client/models/volume_state.py +3 -3
  177. blaxel/core/client/models/volume_template.py +19 -33
  178. blaxel/core/client/models/volume_template_state.py +12 -4
  179. blaxel/core/client/models/volume_template_state_status.py +19 -0
  180. blaxel/core/client/models/volume_template_version.py +12 -4
  181. blaxel/core/client/models/volume_template_version_status.py +19 -0
  182. blaxel/core/client/models/workspace.py +35 -25
  183. blaxel/core/client/models/workspace_runtime.py +3 -2
  184. blaxel/core/client/models/workspace_status.py +22 -0
  185. blaxel/core/common/__init__.py +1 -1
  186. blaxel/core/jobs/__init__.py +0 -1
  187. blaxel/core/sandbox/__init__.py +2 -0
  188. blaxel/core/sandbox/client/api/process/post_process.py +8 -4
  189. blaxel/core/sandbox/client/models/__init__.py +0 -2
  190. blaxel/core/sandbox/client/models/process_response.py +16 -0
  191. blaxel/core/sandbox/client/models/process_response_status.py +9 -0
  192. blaxel/core/sandbox/default/__init__.py +2 -0
  193. blaxel/core/sandbox/default/interpreter.py +5 -1
  194. blaxel/core/sandbox/default/preview.py +3 -1
  195. blaxel/core/sandbox/default/sandbox.py +51 -16
  196. blaxel/core/sandbox/sync/process.py +2 -1
  197. blaxel/core/sandbox/sync/sandbox.py +34 -13
  198. blaxel/core/tools/common.py +16 -2
  199. blaxel/core/volume/__init__.py +2 -2
  200. blaxel/core/volume/volume.py +32 -10
  201. blaxel/langgraph/tools.py +34 -2
  202. blaxel/openai/tools.py +33 -1
  203. {blaxel-0.2.34.dist-info → blaxel-0.2.35.dist-info}/METADATA +3 -3
  204. {blaxel-0.2.34.dist-info → blaxel-0.2.35.dist-info}/RECORD +207 -246
  205. blaxel/core/client/models/acl.py +0 -133
  206. blaxel/core/client/models/billable_time_metric.py +0 -89
  207. blaxel/core/client/models/core_spec.py +0 -194
  208. blaxel/core/client/models/core_spec_configurations.py +0 -77
  209. blaxel/core/client/models/histogram_bucket.py +0 -79
  210. blaxel/core/client/models/histogram_stats.py +0 -88
  211. blaxel/core/client/models/integration_model.py +0 -162
  212. blaxel/core/client/models/job_execution_config.py +0 -79
  213. blaxel/core/client/models/job_metrics.py +0 -262
  214. blaxel/core/client/models/jobs_chart_value.py +0 -70
  215. blaxel/core/client/models/jobs_network_chart.py +0 -102
  216. blaxel/core/client/models/jobs_success_failed_chart.py +0 -147
  217. blaxel/core/client/models/jobs_total.py +0 -88
  218. blaxel/core/client/models/last_n_requests_metric.py +0 -97
  219. blaxel/core/client/models/latency_metric.py +0 -148
  220. blaxel/core/client/models/logs_response.py +0 -63
  221. blaxel/core/client/models/logs_response_data.py +0 -99
  222. blaxel/core/client/models/mcp_definition_form.py +0 -45
  223. blaxel/core/client/models/memory_allocation_by_name.py +0 -70
  224. blaxel/core/client/models/memory_allocation_metric.py +0 -61
  225. blaxel/core/client/models/metric.py +0 -79
  226. blaxel/core/client/models/metrics.py +0 -273
  227. blaxel/core/client/models/metrics_models.py +0 -45
  228. blaxel/core/client/models/metrics_rps_per_code.py +0 -45
  229. blaxel/core/client/models/pod_template_spec.py +0 -45
  230. blaxel/core/client/models/request_duration_over_time_metric.py +0 -97
  231. blaxel/core/client/models/request_duration_over_time_metrics.py +0 -84
  232. blaxel/core/client/models/request_total_by_origin_metric.py +0 -129
  233. blaxel/core/client/models/request_total_by_origin_metric_request_total_by_origin.py +0 -45
  234. blaxel/core/client/models/request_total_by_origin_metric_request_total_by_origin_and_code.py +0 -45
  235. blaxel/core/client/models/request_total_metric.py +0 -155
  236. blaxel/core/client/models/request_total_metric_request_total_per_code.py +0 -45
  237. blaxel/core/client/models/request_total_metric_rps_per_code.py +0 -45
  238. blaxel/core/client/models/request_total_response_data.py +0 -97
  239. blaxel/core/client/models/resource.py +0 -99
  240. blaxel/core/client/models/resource_log.py +0 -88
  241. blaxel/core/client/models/resource_log_chart.py +0 -133
  242. blaxel/core/client/models/resource_log_response.py +0 -83
  243. blaxel/core/client/models/resource_metrics.py +0 -618
  244. blaxel/core/client/models/resource_metrics_request_total_per_code.py +0 -45
  245. blaxel/core/client/models/resource_metrics_request_total_per_code_previous.py +0 -45
  246. blaxel/core/client/models/resource_metrics_rps_per_code.py +0 -45
  247. blaxel/core/client/models/resource_metrics_rps_per_code_previous.py +0 -45
  248. blaxel/core/client/models/resource_trace.py +0 -97
  249. blaxel/core/client/models/runtime.py +0 -317
  250. blaxel/core/client/models/runtime_configuration.py +0 -45
  251. blaxel/core/client/models/runtime_startup_probe.py +0 -45
  252. blaxel/core/client/models/sandbox_metrics.py +0 -88
  253. blaxel/core/client/models/serverless_config.py +0 -117
  254. blaxel/core/client/models/serverless_config_configuration.py +0 -45
  255. blaxel/core/client/models/start_sandbox.py +0 -98
  256. blaxel/core/client/models/stop_sandbox.py +0 -98
  257. blaxel/core/client/models/store_agent.py +0 -181
  258. blaxel/core/client/models/store_agent_labels.py +0 -45
  259. blaxel/core/client/models/store_configuration.py +0 -156
  260. blaxel/core/client/models/store_configuration_option.py +0 -79
  261. blaxel/core/client/models/time_to_first_token_over_time_metrics.py +0 -87
  262. blaxel/core/client/models/token_rate_metric.py +0 -106
  263. blaxel/core/client/models/token_rate_metrics.py +0 -124
  264. blaxel/core/client/models/token_total_metric.py +0 -112
  265. blaxel/core/client/models/trace_ids_response.py +0 -45
  266. blaxel/core/client/models/websocket_channel.py +0 -97
  267. blaxel/core/client/models/websocket_message.py +0 -106
  268. blaxel/core/sandbox/client/api/root/delete.py +0 -130
  269. blaxel/core/sandbox/client/api/root/get.py +0 -130
  270. blaxel/core/sandbox/client/api/root/options.py +0 -130
  271. blaxel/core/sandbox/client/api/root/patch.py +0 -130
  272. blaxel/core/sandbox/client/api/root/post.py +0 -130
  273. blaxel/core/sandbox/client/api/root/put.py +0 -130
  274. /blaxel/core/{sandbox/client/api/root → client/api/mcphub}/__init__.py +0 -0
  275. {blaxel-0.2.34.dist-info → blaxel-0.2.35.dist-info}/WHEEL +0 -0
  276. {blaxel-0.2.34.dist-info → blaxel-0.2.35.dist-info}/licenses/LICENSE +0 -0
@@ -1,97 +0,0 @@
1
- from typing import Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- T = TypeVar("T", bound="RequestDurationOverTimeMetric")
9
-
10
-
11
- @_attrs_define
12
- class RequestDurationOverTimeMetric:
13
- """Request duration over time metric
14
-
15
- Attributes:
16
- average (Union[Unset, float]): Average request duration
17
- p50 (Union[Unset, float]): P50 request duration
18
- p90 (Union[Unset, float]): P90 request duration
19
- p99 (Union[Unset, float]): P99 request duration
20
- timestamp (Union[Unset, str]): Timestamp
21
- """
22
-
23
- average: Union[Unset, float] = UNSET
24
- p50: Union[Unset, float] = UNSET
25
- p90: Union[Unset, float] = UNSET
26
- p99: Union[Unset, float] = UNSET
27
- timestamp: Union[Unset, str] = UNSET
28
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
29
-
30
- def to_dict(self) -> dict[str, Any]:
31
- average = self.average
32
-
33
- p50 = self.p50
34
-
35
- p90 = self.p90
36
-
37
- p99 = self.p99
38
-
39
- timestamp = self.timestamp
40
-
41
- field_dict: dict[str, Any] = {}
42
- field_dict.update(self.additional_properties)
43
- field_dict.update({})
44
- if average is not UNSET:
45
- field_dict["average"] = average
46
- if p50 is not UNSET:
47
- field_dict["p50"] = p50
48
- if p90 is not UNSET:
49
- field_dict["p90"] = p90
50
- if p99 is not UNSET:
51
- field_dict["p99"] = p99
52
- if timestamp is not UNSET:
53
- field_dict["timestamp"] = timestamp
54
-
55
- return field_dict
56
-
57
- @classmethod
58
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
59
- if not src_dict:
60
- return None
61
- d = src_dict.copy()
62
- average = d.pop("average", UNSET)
63
-
64
- p50 = d.pop("p50", UNSET)
65
-
66
- p90 = d.pop("p90", UNSET)
67
-
68
- p99 = d.pop("p99", UNSET)
69
-
70
- timestamp = d.pop("timestamp", UNSET)
71
-
72
- request_duration_over_time_metric = cls(
73
- average=average,
74
- p50=p50,
75
- p90=p90,
76
- p99=p99,
77
- timestamp=timestamp,
78
- )
79
-
80
- request_duration_over_time_metric.additional_properties = d
81
- return request_duration_over_time_metric
82
-
83
- @property
84
- def additional_keys(self) -> list[str]:
85
- return list(self.additional_properties.keys())
86
-
87
- def __getitem__(self, key: str) -> Any:
88
- return self.additional_properties[key]
89
-
90
- def __setitem__(self, key: str, value: Any) -> None:
91
- self.additional_properties[key] = value
92
-
93
- def __delitem__(self, key: str) -> None:
94
- del self.additional_properties[key]
95
-
96
- def __contains__(self, key: str) -> bool:
97
- return key in self.additional_properties
@@ -1,84 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.request_duration_over_time_metric import RequestDurationOverTimeMetric
10
-
11
-
12
- T = TypeVar("T", bound="RequestDurationOverTimeMetrics")
13
-
14
-
15
- @_attrs_define
16
- class RequestDurationOverTimeMetrics:
17
- """Request duration over time metrics
18
-
19
- Attributes:
20
- request_duration_over_time (Union[Unset, list['RequestDurationOverTimeMetric']]): Request duration over time
21
- """
22
-
23
- request_duration_over_time: Union[Unset, list["RequestDurationOverTimeMetric"]] = UNSET
24
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
25
-
26
- def to_dict(self) -> dict[str, Any]:
27
- request_duration_over_time: Union[Unset, list[dict[str, Any]]] = UNSET
28
- if not isinstance(self.request_duration_over_time, Unset):
29
- request_duration_over_time = []
30
- for request_duration_over_time_item_data in self.request_duration_over_time:
31
- if type(request_duration_over_time_item_data) is dict:
32
- request_duration_over_time_item = request_duration_over_time_item_data
33
- else:
34
- request_duration_over_time_item = request_duration_over_time_item_data.to_dict()
35
- request_duration_over_time.append(request_duration_over_time_item)
36
-
37
- field_dict: dict[str, Any] = {}
38
- field_dict.update(self.additional_properties)
39
- field_dict.update({})
40
- if request_duration_over_time is not UNSET:
41
- field_dict["requestDurationOverTime"] = request_duration_over_time
42
-
43
- return field_dict
44
-
45
- @classmethod
46
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
47
- from ..models.request_duration_over_time_metric import RequestDurationOverTimeMetric
48
-
49
- if not src_dict:
50
- return None
51
- d = src_dict.copy()
52
- request_duration_over_time = []
53
- _request_duration_over_time = d.pop(
54
- "requestDurationOverTime", d.pop("request_duration_over_time", UNSET)
55
- )
56
- for request_duration_over_time_item_data in _request_duration_over_time or []:
57
- request_duration_over_time_item = RequestDurationOverTimeMetric.from_dict(
58
- request_duration_over_time_item_data
59
- )
60
-
61
- request_duration_over_time.append(request_duration_over_time_item)
62
-
63
- request_duration_over_time_metrics = cls(
64
- request_duration_over_time=request_duration_over_time,
65
- )
66
-
67
- request_duration_over_time_metrics.additional_properties = d
68
- return request_duration_over_time_metrics
69
-
70
- @property
71
- def additional_keys(self) -> list[str]:
72
- return list(self.additional_properties.keys())
73
-
74
- def __getitem__(self, key: str) -> Any:
75
- return self.additional_properties[key]
76
-
77
- def __setitem__(self, key: str, value: Any) -> None:
78
- self.additional_properties[key] = value
79
-
80
- def __delitem__(self, key: str) -> None:
81
- del self.additional_properties[key]
82
-
83
- def __contains__(self, key: str) -> bool:
84
- return key in self.additional_properties
@@ -1,129 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.request_total_by_origin_metric_request_total_by_origin import (
10
- RequestTotalByOriginMetricRequestTotalByOrigin,
11
- )
12
- from ..models.request_total_by_origin_metric_request_total_by_origin_and_code import (
13
- RequestTotalByOriginMetricRequestTotalByOriginAndCode,
14
- )
15
-
16
-
17
- T = TypeVar("T", bound="RequestTotalByOriginMetric")
18
-
19
-
20
- @_attrs_define
21
- class RequestTotalByOriginMetric:
22
- """Request total by origin metric
23
-
24
- Attributes:
25
- request_total_by_origin (Union[Unset, RequestTotalByOriginMetricRequestTotalByOrigin]): Request total by origin
26
- request_total_by_origin_and_code (Union[Unset, RequestTotalByOriginMetricRequestTotalByOriginAndCode]): Request
27
- total by origin and code
28
- """
29
-
30
- request_total_by_origin: Union[Unset, "RequestTotalByOriginMetricRequestTotalByOrigin"] = UNSET
31
- request_total_by_origin_and_code: Union[
32
- Unset, "RequestTotalByOriginMetricRequestTotalByOriginAndCode"
33
- ] = UNSET
34
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
35
-
36
- def to_dict(self) -> dict[str, Any]:
37
- request_total_by_origin: Union[Unset, dict[str, Any]] = UNSET
38
- if (
39
- self.request_total_by_origin
40
- and not isinstance(self.request_total_by_origin, Unset)
41
- and not isinstance(self.request_total_by_origin, dict)
42
- ):
43
- request_total_by_origin = self.request_total_by_origin.to_dict()
44
- elif self.request_total_by_origin and isinstance(self.request_total_by_origin, dict):
45
- request_total_by_origin = self.request_total_by_origin
46
-
47
- request_total_by_origin_and_code: Union[Unset, dict[str, Any]] = UNSET
48
- if (
49
- self.request_total_by_origin_and_code
50
- and not isinstance(self.request_total_by_origin_and_code, Unset)
51
- and not isinstance(self.request_total_by_origin_and_code, dict)
52
- ):
53
- request_total_by_origin_and_code = self.request_total_by_origin_and_code.to_dict()
54
- elif self.request_total_by_origin_and_code and isinstance(
55
- self.request_total_by_origin_and_code, dict
56
- ):
57
- request_total_by_origin_and_code = self.request_total_by_origin_and_code
58
-
59
- field_dict: dict[str, Any] = {}
60
- field_dict.update(self.additional_properties)
61
- field_dict.update({})
62
- if request_total_by_origin is not UNSET:
63
- field_dict["requestTotalByOrigin"] = request_total_by_origin
64
- if request_total_by_origin_and_code is not UNSET:
65
- field_dict["requestTotalByOriginAndCode"] = request_total_by_origin_and_code
66
-
67
- return field_dict
68
-
69
- @classmethod
70
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
71
- from ..models.request_total_by_origin_metric_request_total_by_origin import (
72
- RequestTotalByOriginMetricRequestTotalByOrigin,
73
- )
74
- from ..models.request_total_by_origin_metric_request_total_by_origin_and_code import (
75
- RequestTotalByOriginMetricRequestTotalByOriginAndCode,
76
- )
77
-
78
- if not src_dict:
79
- return None
80
- d = src_dict.copy()
81
- _request_total_by_origin = d.pop(
82
- "requestTotalByOrigin", d.pop("request_total_by_origin", UNSET)
83
- )
84
- request_total_by_origin: Union[Unset, RequestTotalByOriginMetricRequestTotalByOrigin]
85
- if isinstance(_request_total_by_origin, Unset):
86
- request_total_by_origin = UNSET
87
- else:
88
- request_total_by_origin = RequestTotalByOriginMetricRequestTotalByOrigin.from_dict(
89
- _request_total_by_origin
90
- )
91
-
92
- _request_total_by_origin_and_code = d.pop(
93
- "requestTotalByOriginAndCode", d.pop("request_total_by_origin_and_code", UNSET)
94
- )
95
- request_total_by_origin_and_code: Union[
96
- Unset, RequestTotalByOriginMetricRequestTotalByOriginAndCode
97
- ]
98
- if isinstance(_request_total_by_origin_and_code, Unset):
99
- request_total_by_origin_and_code = UNSET
100
- else:
101
- request_total_by_origin_and_code = (
102
- RequestTotalByOriginMetricRequestTotalByOriginAndCode.from_dict(
103
- _request_total_by_origin_and_code
104
- )
105
- )
106
-
107
- request_total_by_origin_metric = cls(
108
- request_total_by_origin=request_total_by_origin,
109
- request_total_by_origin_and_code=request_total_by_origin_and_code,
110
- )
111
-
112
- request_total_by_origin_metric.additional_properties = d
113
- return request_total_by_origin_metric
114
-
115
- @property
116
- def additional_keys(self) -> list[str]:
117
- return list(self.additional_properties.keys())
118
-
119
- def __getitem__(self, key: str) -> Any:
120
- return self.additional_properties[key]
121
-
122
- def __setitem__(self, key: str, value: Any) -> None:
123
- self.additional_properties[key] = value
124
-
125
- def __delitem__(self, key: str) -> None:
126
- del self.additional_properties[key]
127
-
128
- def __contains__(self, key: str) -> bool:
129
- return key in self.additional_properties
@@ -1,45 +0,0 @@
1
- from typing import Any, TypeVar
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- T = TypeVar("T", bound="RequestTotalByOriginMetricRequestTotalByOrigin")
7
-
8
-
9
- @_attrs_define
10
- class RequestTotalByOriginMetricRequestTotalByOrigin:
11
- """Request total by origin"""
12
-
13
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
14
-
15
- def to_dict(self) -> dict[str, Any]:
16
- field_dict: dict[str, Any] = {}
17
- field_dict.update(self.additional_properties)
18
-
19
- return field_dict
20
-
21
- @classmethod
22
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
23
- if not src_dict:
24
- return None
25
- d = src_dict.copy()
26
- request_total_by_origin_metric_request_total_by_origin = cls()
27
-
28
- request_total_by_origin_metric_request_total_by_origin.additional_properties = d
29
- return request_total_by_origin_metric_request_total_by_origin
30
-
31
- @property
32
- def additional_keys(self) -> list[str]:
33
- return list(self.additional_properties.keys())
34
-
35
- def __getitem__(self, key: str) -> Any:
36
- return self.additional_properties[key]
37
-
38
- def __setitem__(self, key: str, value: Any) -> None:
39
- self.additional_properties[key] = value
40
-
41
- def __delitem__(self, key: str) -> None:
42
- del self.additional_properties[key]
43
-
44
- def __contains__(self, key: str) -> bool:
45
- return key in self.additional_properties
@@ -1,45 +0,0 @@
1
- from typing import Any, TypeVar
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- T = TypeVar("T", bound="RequestTotalByOriginMetricRequestTotalByOriginAndCode")
7
-
8
-
9
- @_attrs_define
10
- class RequestTotalByOriginMetricRequestTotalByOriginAndCode:
11
- """Request total by origin and code"""
12
-
13
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
14
-
15
- def to_dict(self) -> dict[str, Any]:
16
- field_dict: dict[str, Any] = {}
17
- field_dict.update(self.additional_properties)
18
-
19
- return field_dict
20
-
21
- @classmethod
22
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
23
- if not src_dict:
24
- return None
25
- d = src_dict.copy()
26
- request_total_by_origin_metric_request_total_by_origin_and_code = cls()
27
-
28
- request_total_by_origin_metric_request_total_by_origin_and_code.additional_properties = d
29
- return request_total_by_origin_metric_request_total_by_origin_and_code
30
-
31
- @property
32
- def additional_keys(self) -> list[str]:
33
- return list(self.additional_properties.keys())
34
-
35
- def __getitem__(self, key: str) -> Any:
36
- return self.additional_properties[key]
37
-
38
- def __setitem__(self, key: str, value: Any) -> None:
39
- self.additional_properties[key] = value
40
-
41
- def __delitem__(self, key: str) -> None:
42
- del self.additional_properties[key]
43
-
44
- def __contains__(self, key: str) -> bool:
45
- return key in self.additional_properties
@@ -1,155 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.request_total_metric_request_total_per_code import (
10
- RequestTotalMetricRequestTotalPerCode,
11
- )
12
- from ..models.request_total_metric_rps_per_code import RequestTotalMetricRpsPerCode
13
- from ..models.request_total_response_data import RequestTotalResponseData
14
-
15
-
16
- T = TypeVar("T", bound="RequestTotalMetric")
17
-
18
-
19
- @_attrs_define
20
- class RequestTotalMetric:
21
- """Metrics for request total
22
-
23
- Attributes:
24
- items (Union[Unset, list['RequestTotalResponseData']]): Historical requests for all resources globally
25
- request_total (Union[Unset, float]): Number of requests for all resources globally
26
- request_total_per_code (Union[Unset, RequestTotalMetricRequestTotalPerCode]): Number of requests for all
27
- resources globally per code
28
- rps (Union[Unset, float]): Number of requests per second for all resources globally
29
- rps_per_code (Union[Unset, RequestTotalMetricRpsPerCode]): Number of requests for all resources globally
30
- """
31
-
32
- items: Union[Unset, list["RequestTotalResponseData"]] = UNSET
33
- request_total: Union[Unset, float] = UNSET
34
- request_total_per_code: Union[Unset, "RequestTotalMetricRequestTotalPerCode"] = UNSET
35
- rps: Union[Unset, float] = UNSET
36
- rps_per_code: Union[Unset, "RequestTotalMetricRpsPerCode"] = UNSET
37
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
38
-
39
- def to_dict(self) -> dict[str, Any]:
40
- items: Union[Unset, list[dict[str, Any]]] = UNSET
41
- if not isinstance(self.items, Unset):
42
- items = []
43
- for items_item_data in self.items:
44
- if type(items_item_data) is dict:
45
- items_item = items_item_data
46
- else:
47
- items_item = items_item_data.to_dict()
48
- items.append(items_item)
49
-
50
- request_total = self.request_total
51
-
52
- request_total_per_code: Union[Unset, dict[str, Any]] = UNSET
53
- if (
54
- self.request_total_per_code
55
- and not isinstance(self.request_total_per_code, Unset)
56
- and not isinstance(self.request_total_per_code, dict)
57
- ):
58
- request_total_per_code = self.request_total_per_code.to_dict()
59
- elif self.request_total_per_code and isinstance(self.request_total_per_code, dict):
60
- request_total_per_code = self.request_total_per_code
61
-
62
- rps = self.rps
63
-
64
- rps_per_code: Union[Unset, dict[str, Any]] = UNSET
65
- if (
66
- self.rps_per_code
67
- and not isinstance(self.rps_per_code, Unset)
68
- and not isinstance(self.rps_per_code, dict)
69
- ):
70
- rps_per_code = self.rps_per_code.to_dict()
71
- elif self.rps_per_code and isinstance(self.rps_per_code, dict):
72
- rps_per_code = self.rps_per_code
73
-
74
- field_dict: dict[str, Any] = {}
75
- field_dict.update(self.additional_properties)
76
- field_dict.update({})
77
- if items is not UNSET:
78
- field_dict["items"] = items
79
- if request_total is not UNSET:
80
- field_dict["requestTotal"] = request_total
81
- if request_total_per_code is not UNSET:
82
- field_dict["requestTotalPerCode"] = request_total_per_code
83
- if rps is not UNSET:
84
- field_dict["rps"] = rps
85
- if rps_per_code is not UNSET:
86
- field_dict["rpsPerCode"] = rps_per_code
87
-
88
- return field_dict
89
-
90
- @classmethod
91
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
92
- from ..models.request_total_metric_request_total_per_code import (
93
- RequestTotalMetricRequestTotalPerCode,
94
- )
95
- from ..models.request_total_metric_rps_per_code import RequestTotalMetricRpsPerCode
96
- from ..models.request_total_response_data import RequestTotalResponseData
97
-
98
- if not src_dict:
99
- return None
100
- d = src_dict.copy()
101
- items = []
102
- _items = d.pop("items", UNSET)
103
- for items_item_data in _items or []:
104
- items_item = RequestTotalResponseData.from_dict(items_item_data)
105
-
106
- items.append(items_item)
107
-
108
- request_total = d.pop("requestTotal", d.pop("request_total", UNSET))
109
-
110
- _request_total_per_code = d.pop(
111
- "requestTotalPerCode", d.pop("request_total_per_code", UNSET)
112
- )
113
- request_total_per_code: Union[Unset, RequestTotalMetricRequestTotalPerCode]
114
- if isinstance(_request_total_per_code, Unset):
115
- request_total_per_code = UNSET
116
- else:
117
- request_total_per_code = RequestTotalMetricRequestTotalPerCode.from_dict(
118
- _request_total_per_code
119
- )
120
-
121
- rps = d.pop("rps", UNSET)
122
-
123
- _rps_per_code = d.pop("rpsPerCode", d.pop("rps_per_code", UNSET))
124
- rps_per_code: Union[Unset, RequestTotalMetricRpsPerCode]
125
- if isinstance(_rps_per_code, Unset):
126
- rps_per_code = UNSET
127
- else:
128
- rps_per_code = RequestTotalMetricRpsPerCode.from_dict(_rps_per_code)
129
-
130
- request_total_metric = cls(
131
- items=items,
132
- request_total=request_total,
133
- request_total_per_code=request_total_per_code,
134
- rps=rps,
135
- rps_per_code=rps_per_code,
136
- )
137
-
138
- request_total_metric.additional_properties = d
139
- return request_total_metric
140
-
141
- @property
142
- def additional_keys(self) -> list[str]:
143
- return list(self.additional_properties.keys())
144
-
145
- def __getitem__(self, key: str) -> Any:
146
- return self.additional_properties[key]
147
-
148
- def __setitem__(self, key: str, value: Any) -> None:
149
- self.additional_properties[key] = value
150
-
151
- def __delitem__(self, key: str) -> None:
152
- del self.additional_properties[key]
153
-
154
- def __contains__(self, key: str) -> bool:
155
- return key in self.additional_properties
@@ -1,45 +0,0 @@
1
- from typing import Any, TypeVar
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- T = TypeVar("T", bound="RequestTotalMetricRequestTotalPerCode")
7
-
8
-
9
- @_attrs_define
10
- class RequestTotalMetricRequestTotalPerCode:
11
- """Number of requests for all resources globally per code"""
12
-
13
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
14
-
15
- def to_dict(self) -> dict[str, Any]:
16
- field_dict: dict[str, Any] = {}
17
- field_dict.update(self.additional_properties)
18
-
19
- return field_dict
20
-
21
- @classmethod
22
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
23
- if not src_dict:
24
- return None
25
- d = src_dict.copy()
26
- request_total_metric_request_total_per_code = cls()
27
-
28
- request_total_metric_request_total_per_code.additional_properties = d
29
- return request_total_metric_request_total_per_code
30
-
31
- @property
32
- def additional_keys(self) -> list[str]:
33
- return list(self.additional_properties.keys())
34
-
35
- def __getitem__(self, key: str) -> Any:
36
- return self.additional_properties[key]
37
-
38
- def __setitem__(self, key: str, value: Any) -> None:
39
- self.additional_properties[key] = value
40
-
41
- def __delitem__(self, key: str) -> None:
42
- del self.additional_properties[key]
43
-
44
- def __contains__(self, key: str) -> bool:
45
- return key in self.additional_properties
@@ -1,45 +0,0 @@
1
- from typing import Any, TypeVar
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- T = TypeVar("T", bound="RequestTotalMetricRpsPerCode")
7
-
8
-
9
- @_attrs_define
10
- class RequestTotalMetricRpsPerCode:
11
- """Number of requests for all resources globally"""
12
-
13
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
14
-
15
- def to_dict(self) -> dict[str, Any]:
16
- field_dict: dict[str, Any] = {}
17
- field_dict.update(self.additional_properties)
18
-
19
- return field_dict
20
-
21
- @classmethod
22
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T | None:
23
- if not src_dict:
24
- return None
25
- d = src_dict.copy()
26
- request_total_metric_rps_per_code = cls()
27
-
28
- request_total_metric_rps_per_code.additional_properties = d
29
- return request_total_metric_rps_per_code
30
-
31
- @property
32
- def additional_keys(self) -> list[str]:
33
- return list(self.additional_properties.keys())
34
-
35
- def __getitem__(self, key: str) -> Any:
36
- return self.additional_properties[key]
37
-
38
- def __setitem__(self, key: str, value: Any) -> None:
39
- self.additional_properties[key] = value
40
-
41
- def __delitem__(self, key: str) -> None:
42
- del self.additional_properties[key]
43
-
44
- def __contains__(self, key: str) -> bool:
45
- return key in self.additional_properties