robosystems-client 0.1.15__py3-none-any.whl → 0.1.16__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 robosystems-client might be problematic. Click here for more details.

Files changed (45) hide show
  1. robosystems_client/api/agent/auto_select_agent.py +264 -0
  2. robosystems_client/api/agent/batch_process_queries.py +279 -0
  3. robosystems_client/api/agent/execute_specific_agent.py +276 -0
  4. robosystems_client/api/agent/get_agent_metadata.py +256 -0
  5. robosystems_client/api/agent/list_agents.py +264 -0
  6. robosystems_client/api/agent/recommend_agent.py +273 -0
  7. robosystems_client/api/graph_credits/check_credit_balance.py +14 -10
  8. robosystems_client/models/__init__.py +35 -3
  9. robosystems_client/models/agent_list_response.py +74 -0
  10. robosystems_client/models/agent_list_response_agents.py +67 -0
  11. robosystems_client/models/{credits_summary_response_credits_by_addon_item.py → agent_list_response_agents_additional_property.py} +5 -5
  12. robosystems_client/models/agent_message.py +35 -1
  13. robosystems_client/models/agent_metadata_response.py +133 -0
  14. robosystems_client/models/agent_mode.py +11 -0
  15. robosystems_client/models/agent_recommendation.py +106 -0
  16. robosystems_client/models/agent_recommendation_request.py +108 -0
  17. robosystems_client/models/agent_recommendation_request_context_type_0.py +44 -0
  18. robosystems_client/models/agent_recommendation_response.py +82 -0
  19. robosystems_client/models/agent_request.py +110 -6
  20. robosystems_client/models/agent_response.py +161 -11
  21. robosystems_client/models/agent_response_error_details_type_0.py +44 -0
  22. robosystems_client/models/agent_response_tokens_used_type_0.py +44 -0
  23. robosystems_client/models/auth_response.py +20 -6
  24. robosystems_client/models/batch_agent_request.py +85 -0
  25. robosystems_client/models/batch_agent_response.py +90 -0
  26. robosystems_client/models/credit_summary.py +35 -9
  27. robosystems_client/models/credits_summary_response.py +47 -21
  28. robosystems_client/models/credits_summary_response_credits_by_addon_type_0_item.py +44 -0
  29. robosystems_client/models/custom_schema_definition.py +7 -14
  30. robosystems_client/models/custom_schema_definition_metadata.py +1 -6
  31. robosystems_client/models/database_health_response.py +11 -11
  32. robosystems_client/models/database_info_response.py +13 -14
  33. robosystems_client/models/error_response.py +4 -8
  34. robosystems_client/models/graph_metadata.py +4 -5
  35. robosystems_client/models/health_status.py +2 -2
  36. robosystems_client/models/repository_credits_response.py +43 -16
  37. robosystems_client/models/schema_export_response.py +5 -8
  38. robosystems_client/models/schema_validation_request.py +3 -5
  39. robosystems_client/models/schema_validation_response.py +5 -5
  40. robosystems_client/models/selection_criteria.py +122 -0
  41. robosystems_client/models/success_response.py +1 -1
  42. {robosystems_client-0.1.15.dist-info → robosystems_client-0.1.16.dist-info}/METADATA +1 -1
  43. {robosystems_client-0.1.15.dist-info → robosystems_client-0.1.16.dist-info}/RECORD +44 -25
  44. robosystems_client/api/agent/query_financial_agent.py +0 -423
  45. {robosystems_client-0.1.15.dist-info → robosystems_client-0.1.16.dist-info}/WHEEL +0 -0
@@ -0,0 +1,44 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ T = TypeVar("T", bound="AgentResponseErrorDetailsType0")
8
+
9
+
10
+ @_attrs_define
11
+ class AgentResponseErrorDetailsType0:
12
+ """ """
13
+
14
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
15
+
16
+ def to_dict(self) -> dict[str, Any]:
17
+ field_dict: dict[str, Any] = {}
18
+ field_dict.update(self.additional_properties)
19
+
20
+ return field_dict
21
+
22
+ @classmethod
23
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
24
+ d = dict(src_dict)
25
+ agent_response_error_details_type_0 = cls()
26
+
27
+ agent_response_error_details_type_0.additional_properties = d
28
+ return agent_response_error_details_type_0
29
+
30
+ @property
31
+ def additional_keys(self) -> list[str]:
32
+ return list(self.additional_properties.keys())
33
+
34
+ def __getitem__(self, key: str) -> Any:
35
+ return self.additional_properties[key]
36
+
37
+ def __setitem__(self, key: str, value: Any) -> None:
38
+ self.additional_properties[key] = value
39
+
40
+ def __delitem__(self, key: str) -> None:
41
+ del self.additional_properties[key]
42
+
43
+ def __contains__(self, key: str) -> bool:
44
+ return key in self.additional_properties
@@ -0,0 +1,44 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ T = TypeVar("T", bound="AgentResponseTokensUsedType0")
8
+
9
+
10
+ @_attrs_define
11
+ class AgentResponseTokensUsedType0:
12
+ """ """
13
+
14
+ additional_properties: dict[str, int] = _attrs_field(init=False, factory=dict)
15
+
16
+ def to_dict(self) -> dict[str, Any]:
17
+ field_dict: dict[str, Any] = {}
18
+ field_dict.update(self.additional_properties)
19
+
20
+ return field_dict
21
+
22
+ @classmethod
23
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
24
+ d = dict(src_dict)
25
+ agent_response_tokens_used_type_0 = cls()
26
+
27
+ agent_response_tokens_used_type_0.additional_properties = d
28
+ return agent_response_tokens_used_type_0
29
+
30
+ @property
31
+ def additional_keys(self) -> list[str]:
32
+ return list(self.additional_properties.keys())
33
+
34
+ def __getitem__(self, key: str) -> int:
35
+ return self.additional_properties[key]
36
+
37
+ def __setitem__(self, key: str, value: int) -> None:
38
+ self.additional_properties[key] = value
39
+
40
+ def __delitem__(self, key: str) -> None:
41
+ del self.additional_properties[key]
42
+
43
+ def __contains__(self, key: str) -> bool:
44
+ return key in self.additional_properties
@@ -1,9 +1,11 @@
1
1
  from collections.abc import Mapping
2
- from typing import TYPE_CHECKING, Any, TypeVar
2
+ from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
3
3
 
4
4
  from attrs import define as _attrs_define
5
5
  from attrs import field as _attrs_field
6
6
 
7
+ from ..types import UNSET, Unset
8
+
7
9
  if TYPE_CHECKING:
8
10
  from ..models.auth_response_user import AuthResponseUser
9
11
 
@@ -18,12 +20,12 @@ class AuthResponse:
18
20
  Attributes:
19
21
  user (AuthResponseUser): User information
20
22
  message (str): Success message
21
- token (str): JWT authentication token
23
+ token (Union[None, Unset, str]): JWT authentication token (optional for cookie-based auth)
22
24
  """
23
25
 
24
26
  user: "AuthResponseUser"
25
27
  message: str
26
- token: str
28
+ token: Union[None, Unset, str] = UNSET
27
29
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
28
30
 
29
31
  def to_dict(self) -> dict[str, Any]:
@@ -31,7 +33,11 @@ class AuthResponse:
31
33
 
32
34
  message = self.message
33
35
 
34
- token = self.token
36
+ token: Union[None, Unset, str]
37
+ if isinstance(self.token, Unset):
38
+ token = UNSET
39
+ else:
40
+ token = self.token
35
41
 
36
42
  field_dict: dict[str, Any] = {}
37
43
  field_dict.update(self.additional_properties)
@@ -39,9 +45,10 @@ class AuthResponse:
39
45
  {
40
46
  "user": user,
41
47
  "message": message,
42
- "token": token,
43
48
  }
44
49
  )
50
+ if token is not UNSET:
51
+ field_dict["token"] = token
45
52
 
46
53
  return field_dict
47
54
 
@@ -54,7 +61,14 @@ class AuthResponse:
54
61
 
55
62
  message = d.pop("message")
56
63
 
57
- token = d.pop("token")
64
+ def _parse_token(data: object) -> Union[None, Unset, str]:
65
+ if data is None:
66
+ return data
67
+ if isinstance(data, Unset):
68
+ return data
69
+ return cast(Union[None, Unset, str], data)
70
+
71
+ token = _parse_token(d.pop("token", UNSET))
58
72
 
59
73
  auth_response = cls(
60
74
  user=user,
@@ -0,0 +1,85 @@
1
+ from collections.abc import Mapping
2
+ from typing import TYPE_CHECKING, Any, TypeVar, Union
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ if TYPE_CHECKING:
10
+ from ..models.agent_request import AgentRequest
11
+
12
+
13
+ T = TypeVar("T", bound="BatchAgentRequest")
14
+
15
+
16
+ @_attrs_define
17
+ class BatchAgentRequest:
18
+ """Request for batch processing multiple queries.
19
+
20
+ Attributes:
21
+ queries (list['AgentRequest']): List of queries to process
22
+ parallel (Union[Unset, bool]): Process queries in parallel Default: False.
23
+ """
24
+
25
+ queries: list["AgentRequest"]
26
+ parallel: Union[Unset, bool] = False
27
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
28
+
29
+ def to_dict(self) -> dict[str, Any]:
30
+ queries = []
31
+ for queries_item_data in self.queries:
32
+ queries_item = queries_item_data.to_dict()
33
+ queries.append(queries_item)
34
+
35
+ parallel = self.parallel
36
+
37
+ field_dict: dict[str, Any] = {}
38
+ field_dict.update(self.additional_properties)
39
+ field_dict.update(
40
+ {
41
+ "queries": queries,
42
+ }
43
+ )
44
+ if parallel is not UNSET:
45
+ field_dict["parallel"] = parallel
46
+
47
+ return field_dict
48
+
49
+ @classmethod
50
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
51
+ from ..models.agent_request import AgentRequest
52
+
53
+ d = dict(src_dict)
54
+ queries = []
55
+ _queries = d.pop("queries")
56
+ for queries_item_data in _queries:
57
+ queries_item = AgentRequest.from_dict(queries_item_data)
58
+
59
+ queries.append(queries_item)
60
+
61
+ parallel = d.pop("parallel", UNSET)
62
+
63
+ batch_agent_request = cls(
64
+ queries=queries,
65
+ parallel=parallel,
66
+ )
67
+
68
+ batch_agent_request.additional_properties = d
69
+ return batch_agent_request
70
+
71
+ @property
72
+ def additional_keys(self) -> list[str]:
73
+ return list(self.additional_properties.keys())
74
+
75
+ def __getitem__(self, key: str) -> Any:
76
+ return self.additional_properties[key]
77
+
78
+ def __setitem__(self, key: str, value: Any) -> None:
79
+ self.additional_properties[key] = value
80
+
81
+ def __delitem__(self, key: str) -> None:
82
+ del self.additional_properties[key]
83
+
84
+ def __contains__(self, key: str) -> bool:
85
+ return key in self.additional_properties
@@ -0,0 +1,90 @@
1
+ from collections.abc import Mapping
2
+ from typing import TYPE_CHECKING, Any, TypeVar
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ if TYPE_CHECKING:
8
+ from ..models.agent_response import AgentResponse
9
+
10
+
11
+ T = TypeVar("T", bound="BatchAgentResponse")
12
+
13
+
14
+ @_attrs_define
15
+ class BatchAgentResponse:
16
+ """Response for batch processing.
17
+
18
+ Attributes:
19
+ results (list['AgentResponse']): List of agent responses
20
+ total_execution_time (float): Total execution time
21
+ parallel_processed (bool): Whether queries were processed in parallel
22
+ """
23
+
24
+ results: list["AgentResponse"]
25
+ total_execution_time: float
26
+ parallel_processed: bool
27
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
28
+
29
+ def to_dict(self) -> dict[str, Any]:
30
+ results = []
31
+ for results_item_data in self.results:
32
+ results_item = results_item_data.to_dict()
33
+ results.append(results_item)
34
+
35
+ total_execution_time = self.total_execution_time
36
+
37
+ parallel_processed = self.parallel_processed
38
+
39
+ field_dict: dict[str, Any] = {}
40
+ field_dict.update(self.additional_properties)
41
+ field_dict.update(
42
+ {
43
+ "results": results,
44
+ "total_execution_time": total_execution_time,
45
+ "parallel_processed": parallel_processed,
46
+ }
47
+ )
48
+
49
+ return field_dict
50
+
51
+ @classmethod
52
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
53
+ from ..models.agent_response import AgentResponse
54
+
55
+ d = dict(src_dict)
56
+ results = []
57
+ _results = d.pop("results")
58
+ for results_item_data in _results:
59
+ results_item = AgentResponse.from_dict(results_item_data)
60
+
61
+ results.append(results_item)
62
+
63
+ total_execution_time = d.pop("total_execution_time")
64
+
65
+ parallel_processed = d.pop("parallel_processed")
66
+
67
+ batch_agent_response = cls(
68
+ results=results,
69
+ total_execution_time=total_execution_time,
70
+ parallel_processed=parallel_processed,
71
+ )
72
+
73
+ batch_agent_response.additional_properties = d
74
+ return batch_agent_response
75
+
76
+ @property
77
+ def additional_keys(self) -> list[str]:
78
+ return list(self.additional_properties.keys())
79
+
80
+ def __getitem__(self, key: str) -> Any:
81
+ return self.additional_properties[key]
82
+
83
+ def __setitem__(self, key: str, value: Any) -> None:
84
+ self.additional_properties[key] = value
85
+
86
+ def __delitem__(self, key: str) -> None:
87
+ del self.additional_properties[key]
88
+
89
+ def __contains__(self, key: str) -> bool:
90
+ return key in self.additional_properties
@@ -1,5 +1,5 @@
1
1
  from collections.abc import Mapping
2
- from typing import Any, TypeVar, Union
2
+ from typing import Any, TypeVar, Union, cast
3
3
 
4
4
  from attrs import define as _attrs_define
5
5
  from attrs import field as _attrs_field
@@ -21,8 +21,8 @@ class CreditSummary:
21
21
  rollover_credits (float): Credits rolled over from previous month
22
22
  allows_rollover (bool): Whether rollover is allowed
23
23
  is_active (bool): Whether credit pool is active
24
- last_allocation_date (Union[Unset, str]): Last allocation date (ISO format)
25
- next_allocation_date (Union[Unset, str]): Next allocation date (ISO format)
24
+ last_allocation_date (Union[None, Unset, str]): Last allocation date (ISO format)
25
+ next_allocation_date (Union[None, Unset, str]): Next allocation date (ISO format)
26
26
  """
27
27
 
28
28
  current_balance: float
@@ -32,8 +32,8 @@ class CreditSummary:
32
32
  rollover_credits: float
33
33
  allows_rollover: bool
34
34
  is_active: bool
35
- last_allocation_date: Union[Unset, str] = UNSET
36
- next_allocation_date: Union[Unset, str] = UNSET
35
+ last_allocation_date: Union[None, Unset, str] = UNSET
36
+ next_allocation_date: Union[None, Unset, str] = UNSET
37
37
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
38
38
 
39
39
  def to_dict(self) -> dict[str, Any]:
@@ -51,9 +51,17 @@ class CreditSummary:
51
51
 
52
52
  is_active = self.is_active
53
53
 
54
- last_allocation_date = self.last_allocation_date
54
+ last_allocation_date: Union[None, Unset, str]
55
+ if isinstance(self.last_allocation_date, Unset):
56
+ last_allocation_date = UNSET
57
+ else:
58
+ last_allocation_date = self.last_allocation_date
55
59
 
56
- next_allocation_date = self.next_allocation_date
60
+ next_allocation_date: Union[None, Unset, str]
61
+ if isinstance(self.next_allocation_date, Unset):
62
+ next_allocation_date = UNSET
63
+ else:
64
+ next_allocation_date = self.next_allocation_date
57
65
 
58
66
  field_dict: dict[str, Any] = {}
59
67
  field_dict.update(self.additional_properties)
@@ -92,9 +100,27 @@ class CreditSummary:
92
100
 
93
101
  is_active = d.pop("is_active")
94
102
 
95
- last_allocation_date = d.pop("last_allocation_date", UNSET)
103
+ def _parse_last_allocation_date(data: object) -> Union[None, Unset, str]:
104
+ if data is None:
105
+ return data
106
+ if isinstance(data, Unset):
107
+ return data
108
+ return cast(Union[None, Unset, str], data)
96
109
 
97
- next_allocation_date = d.pop("next_allocation_date", UNSET)
110
+ last_allocation_date = _parse_last_allocation_date(
111
+ d.pop("last_allocation_date", UNSET)
112
+ )
113
+
114
+ def _parse_next_allocation_date(data: object) -> Union[None, Unset, str]:
115
+ if data is None:
116
+ return data
117
+ if isinstance(data, Unset):
118
+ return data
119
+ return cast(Union[None, Unset, str], data)
120
+
121
+ next_allocation_date = _parse_next_allocation_date(
122
+ d.pop("next_allocation_date", UNSET)
123
+ )
98
124
 
99
125
  credit_summary = cls(
100
126
  current_balance=current_balance,
@@ -1,5 +1,5 @@
1
1
  from collections.abc import Mapping
2
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
+ from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
3
3
 
4
4
  from attrs import define as _attrs_define
5
5
  from attrs import field as _attrs_field
@@ -8,8 +8,8 @@ from ..types import UNSET, Unset
8
8
 
9
9
  if TYPE_CHECKING:
10
10
  from ..models.add_on_credit_info import AddOnCreditInfo
11
- from ..models.credits_summary_response_credits_by_addon_item import (
12
- CreditsSummaryResponseCreditsByAddonItem,
11
+ from ..models.credits_summary_response_credits_by_addon_type_0_item import (
12
+ CreditsSummaryResponseCreditsByAddonType0Item,
13
13
  )
14
14
 
15
15
 
@@ -24,16 +24,16 @@ class CreditsSummaryResponse:
24
24
  add_ons (list['AddOnCreditInfo']): Credits breakdown by add-on
25
25
  total_credits (float): Total credits remaining across all subscriptions
26
26
  addon_count (int): Number of active add-ons
27
- credits_by_addon (Union[Unset, list['CreditsSummaryResponseCreditsByAddonItem']]): Legacy field - Credits
28
- breakdown by add-on
27
+ credits_by_addon (Union[None, Unset, list['CreditsSummaryResponseCreditsByAddonType0Item']]): Legacy field -
28
+ Credits breakdown by add-on
29
29
  """
30
30
 
31
31
  add_ons: list["AddOnCreditInfo"]
32
32
  total_credits: float
33
33
  addon_count: int
34
- credits_by_addon: Union[Unset, list["CreditsSummaryResponseCreditsByAddonItem"]] = (
35
- UNSET
36
- )
34
+ credits_by_addon: Union[
35
+ None, Unset, list["CreditsSummaryResponseCreditsByAddonType0Item"]
36
+ ] = UNSET
37
37
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
38
38
 
39
39
  def to_dict(self) -> dict[str, Any]:
@@ -46,12 +46,17 @@ class CreditsSummaryResponse:
46
46
 
47
47
  addon_count = self.addon_count
48
48
 
49
- credits_by_addon: Union[Unset, list[dict[str, Any]]] = UNSET
50
- if not isinstance(self.credits_by_addon, Unset):
49
+ credits_by_addon: Union[None, Unset, list[dict[str, Any]]]
50
+ if isinstance(self.credits_by_addon, Unset):
51
+ credits_by_addon = UNSET
52
+ elif isinstance(self.credits_by_addon, list):
51
53
  credits_by_addon = []
52
- for credits_by_addon_item_data in self.credits_by_addon:
53
- credits_by_addon_item = credits_by_addon_item_data.to_dict()
54
- credits_by_addon.append(credits_by_addon_item)
54
+ for credits_by_addon_type_0_item_data in self.credits_by_addon:
55
+ credits_by_addon_type_0_item = credits_by_addon_type_0_item_data.to_dict()
56
+ credits_by_addon.append(credits_by_addon_type_0_item)
57
+
58
+ else:
59
+ credits_by_addon = self.credits_by_addon
55
60
 
56
61
  field_dict: dict[str, Any] = {}
57
62
  field_dict.update(self.additional_properties)
@@ -70,8 +75,8 @@ class CreditsSummaryResponse:
70
75
  @classmethod
71
76
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
72
77
  from ..models.add_on_credit_info import AddOnCreditInfo
73
- from ..models.credits_summary_response_credits_by_addon_item import (
74
- CreditsSummaryResponseCreditsByAddonItem,
78
+ from ..models.credits_summary_response_credits_by_addon_type_0_item import (
79
+ CreditsSummaryResponseCreditsByAddonType0Item,
75
80
  )
76
81
 
77
82
  d = dict(src_dict)
@@ -86,14 +91,35 @@ class CreditsSummaryResponse:
86
91
 
87
92
  addon_count = d.pop("addon_count")
88
93
 
89
- credits_by_addon = []
90
- _credits_by_addon = d.pop("credits_by_addon", UNSET)
91
- for credits_by_addon_item_data in _credits_by_addon or []:
92
- credits_by_addon_item = CreditsSummaryResponseCreditsByAddonItem.from_dict(
93
- credits_by_addon_item_data
94
+ def _parse_credits_by_addon(
95
+ data: object,
96
+ ) -> Union[None, Unset, list["CreditsSummaryResponseCreditsByAddonType0Item"]]:
97
+ if data is None:
98
+ return data
99
+ if isinstance(data, Unset):
100
+ return data
101
+ try:
102
+ if not isinstance(data, list):
103
+ raise TypeError()
104
+ credits_by_addon_type_0 = []
105
+ _credits_by_addon_type_0 = data
106
+ for credits_by_addon_type_0_item_data in _credits_by_addon_type_0:
107
+ credits_by_addon_type_0_item = (
108
+ CreditsSummaryResponseCreditsByAddonType0Item.from_dict(
109
+ credits_by_addon_type_0_item_data
110
+ )
111
+ )
112
+
113
+ credits_by_addon_type_0.append(credits_by_addon_type_0_item)
114
+
115
+ return credits_by_addon_type_0
116
+ except: # noqa: E722
117
+ pass
118
+ return cast(
119
+ Union[None, Unset, list["CreditsSummaryResponseCreditsByAddonType0Item"]], data
94
120
  )
95
121
 
96
- credits_by_addon.append(credits_by_addon_item)
122
+ credits_by_addon = _parse_credits_by_addon(d.pop("credits_by_addon", UNSET))
97
123
 
98
124
  credits_summary_response = cls(
99
125
  add_ons=add_ons,
@@ -0,0 +1,44 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ T = TypeVar("T", bound="CreditsSummaryResponseCreditsByAddonType0Item")
8
+
9
+
10
+ @_attrs_define
11
+ class CreditsSummaryResponseCreditsByAddonType0Item:
12
+ """ """
13
+
14
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
15
+
16
+ def to_dict(self) -> dict[str, Any]:
17
+ field_dict: dict[str, Any] = {}
18
+ field_dict.update(self.additional_properties)
19
+
20
+ return field_dict
21
+
22
+ @classmethod
23
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
24
+ d = dict(src_dict)
25
+ credits_summary_response_credits_by_addon_type_0_item = cls()
26
+
27
+ credits_summary_response_credits_by_addon_type_0_item.additional_properties = d
28
+ return credits_summary_response_credits_by_addon_type_0_item
29
+
30
+ @property
31
+ def additional_keys(self) -> list[str]:
32
+ return list(self.additional_properties.keys())
33
+
34
+ def __getitem__(self, key: str) -> Any:
35
+ return self.additional_properties[key]
36
+
37
+ def __setitem__(self, key: str, value: Any) -> None:
38
+ self.additional_properties[key] = value
39
+
40
+ def __delitem__(self, key: str) -> None:
41
+ del self.additional_properties[key]
42
+
43
+ def __contains__(self, key: str) -> bool:
44
+ return key in self.additional_properties
@@ -21,23 +21,16 @@ T = TypeVar("T", bound="CustomSchemaDefinition")
21
21
 
22
22
  @_attrs_define
23
23
  class CustomSchemaDefinition:
24
- """Custom schema definition for user-defined graphs.
24
+ """Custom schema definition for custom graphs.
25
25
 
26
26
  Attributes:
27
- name (str): Schema name Example: inventory_management.
28
- version (Union[Unset, str]): Schema version Default: '1.0.0'. Example: 1.0.0.
29
- description (Union[None, Unset, str]): Schema description Example: Inventory management system schema.
30
- extends (Union[None, Unset, str]): Base schema to extend (e.g., 'base') Example: base.
31
- nodes (Union[Unset, list['CustomSchemaDefinitionNodesItem']]): List of node definitions with properties Example:
32
- [{'name': 'Product', 'properties': [{'name': 'sku', 'type': 'STRING', 'is_primary_key': True}, {'name': 'name',
33
- 'type': 'STRING', 'is_required': True}, {'name': 'price', 'type': 'DOUBLE'}, {'name': 'quantity', 'type':
34
- 'INT64'}]}, {'name': 'Warehouse', 'properties': [{'name': 'identifier', 'type': 'STRING', 'is_primary_key':
35
- True}, {'name': 'location', 'type': 'STRING'}]}].
27
+ name (str): Schema name
28
+ version (Union[Unset, str]): Schema version Default: '1.0.0'.
29
+ description (Union[None, Unset, str]): Schema description
30
+ extends (Union[None, Unset, str]): Base schema to extend (e.g., 'base')
31
+ nodes (Union[Unset, list['CustomSchemaDefinitionNodesItem']]): List of node definitions with properties
36
32
  relationships (Union[Unset, list['CustomSchemaDefinitionRelationshipsItem']]): List of relationship definitions
37
- Example: [{'from_node': 'Product', 'name': 'STORED_IN', 'properties': [{'name': 'since', 'type': 'DATE'}],
38
- 'to_node': 'Warehouse'}].
39
- metadata (Union[Unset, CustomSchemaDefinitionMetadata]): Additional schema metadata Example: {'created_by':
40
- 'inventory_team', 'industry': 'retail'}.
33
+ metadata (Union[Unset, CustomSchemaDefinitionMetadata]): Additional schema metadata
41
34
  """
42
35
 
43
36
  name: str
@@ -9,12 +9,7 @@ T = TypeVar("T", bound="CustomSchemaDefinitionMetadata")
9
9
 
10
10
  @_attrs_define
11
11
  class CustomSchemaDefinitionMetadata:
12
- """Additional schema metadata
13
-
14
- Example:
15
- {'created_by': 'inventory_team', 'industry': 'retail'}
16
-
17
- """
12
+ """Additional schema metadata"""
18
13
 
19
14
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
20
15
 
@@ -14,17 +14,17 @@ class DatabaseHealthResponse:
14
14
  """Response model for database health check.
15
15
 
16
16
  Attributes:
17
- graph_id (str): Graph database identifier Example: kg1a2b3c4d5.
18
- status (str): Overall health status Example: healthy.
19
- connection_status (str): Database connection status Example: connected.
20
- uptime_seconds (float): Database uptime in seconds Example: 3600.5.
21
- query_count_24h (int): Number of queries executed in last 24 hours Example: 150.
22
- avg_query_time_ms (float): Average query execution time in milliseconds Example: 45.2.
23
- error_rate_24h (float): Error rate in last 24 hours (percentage) Example: 0.5.
24
- last_query_time (Union[None, Unset, str]): Timestamp of last query execution Example: 2024-01-15T10:30:00Z.
25
- memory_usage_mb (Union[None, Unset, float]): Memory usage in MB Example: 512.3.
26
- storage_usage_mb (Union[None, Unset, float]): Storage usage in MB Example: 1024.7.
27
- alerts (Union[Unset, list[str]]): Active alerts or warnings Example: ['High memory usage detected'].
17
+ graph_id (str): Graph database identifier
18
+ status (str): Overall health status
19
+ connection_status (str): Database connection status
20
+ uptime_seconds (float): Database uptime in seconds
21
+ query_count_24h (int): Number of queries executed in last 24 hours
22
+ avg_query_time_ms (float): Average query execution time in milliseconds
23
+ error_rate_24h (float): Error rate in last 24 hours (percentage)
24
+ last_query_time (Union[None, Unset, str]): Timestamp of last query execution
25
+ memory_usage_mb (Union[None, Unset, float]): Memory usage in MB
26
+ storage_usage_mb (Union[None, Unset, float]): Storage usage in MB
27
+ alerts (Union[Unset, list[str]]): Active alerts or warnings
28
28
  """
29
29
 
30
30
  graph_id: str