robosystems-client 0.1.10__py3-none-any.whl → 0.1.12__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 (61) hide show
  1. robosystems_client/api/agent/query_financial_agent.py +16 -16
  2. robosystems_client/api/backup/create_backup.py +0 -4
  3. robosystems_client/api/backup/export_backup.py +0 -3
  4. robosystems_client/api/backup/get_backup_download_url.py +1 -1
  5. robosystems_client/api/backup/restore_backup.py +0 -4
  6. robosystems_client/api/connections/create_connection.py +8 -20
  7. robosystems_client/api/connections/delete_connection.py +8 -16
  8. robosystems_client/api/connections/sync_connection.py +8 -20
  9. robosystems_client/api/create/get_available_extensions.py +1 -1
  10. robosystems_client/api/graph_analytics/get_graph_metrics.py +8 -16
  11. robosystems_client/api/graph_analytics/get_graph_usage_stats.py +8 -16
  12. robosystems_client/api/mcp/call_mcp_tool.py +8 -20
  13. robosystems_client/api/query/execute_cypher_query.py +28 -31
  14. robosystems_client/api/schema/get_graph_schema_info.py +4 -19
  15. robosystems_client/api/schema/validate_schema.py +4 -16
  16. robosystems_client/api/service_offerings/get_service_offerings.py +4 -4
  17. robosystems_client/api/subgraphs/__init__.py +1 -0
  18. robosystems_client/api/subgraphs/create_subgraph.py +372 -0
  19. robosystems_client/api/subgraphs/delete_subgraph.py +317 -0
  20. robosystems_client/api/subgraphs/get_subgraph_info.py +300 -0
  21. robosystems_client/api/subgraphs/get_subgraph_quota.py +272 -0
  22. robosystems_client/api/subgraphs/list_subgraphs.py +272 -0
  23. robosystems_client/api/user/select_user_graph.py +1 -1
  24. robosystems_client/api/user_limits/get_all_shared_repository_limits.py +223 -0
  25. robosystems_client/api/user_limits/get_shared_repository_limits.py +248 -0
  26. robosystems_client/api/user_subscriptions/get_repository_credits.py +18 -18
  27. robosystems_client/extensions/README.md +2 -6
  28. robosystems_client/extensions/__init__.py +1 -1
  29. robosystems_client/extensions/auth_integration.py +2 -2
  30. robosystems_client/extensions/extensions.py +1 -1
  31. robosystems_client/extensions/tests/__init__.py +1 -1
  32. robosystems_client/extensions/tests/test_integration.py +3 -3
  33. robosystems_client/extensions/tests/test_unit.py +5 -3
  34. robosystems_client/extensions/utils.py +1 -1
  35. robosystems_client/models/__init__.py +28 -2
  36. robosystems_client/models/create_graph_request.py +5 -25
  37. robosystems_client/models/create_subgraph_request.py +185 -0
  38. robosystems_client/models/create_subgraph_request_metadata_type_0.py +44 -0
  39. robosystems_client/models/credit_summary_response.py +0 -8
  40. robosystems_client/models/database_health_response.py +1 -1
  41. robosystems_client/models/database_info_response.py +2 -2
  42. robosystems_client/models/delete_subgraph_request.py +89 -0
  43. robosystems_client/models/delete_subgraph_response.py +120 -0
  44. robosystems_client/models/get_all_shared_repository_limits_response_getallsharedrepositorylimits.py +46 -0
  45. robosystems_client/models/get_shared_repository_limits_response_getsharedrepositorylimits.py +44 -0
  46. robosystems_client/models/list_subgraphs_response.py +148 -0
  47. robosystems_client/models/repository_credits_response.py +6 -6
  48. robosystems_client/models/schema_export_response.py +2 -2
  49. robosystems_client/models/subgraph_quota_response.py +158 -0
  50. robosystems_client/models/subgraph_response.py +279 -0
  51. robosystems_client/models/{get_mcp_health_response_getmcphealth.py → subgraph_response_metadata_type_0.py} +5 -5
  52. robosystems_client/models/subgraph_summary.py +155 -0
  53. robosystems_client/models/subgraph_type.py +11 -0
  54. robosystems_client/models/subscription_info.py +0 -28
  55. robosystems_client/models/subscription_request.py +0 -9
  56. robosystems_client/models/subscription_response.py +0 -8
  57. robosystems_client/sdk-config.yaml +1 -1
  58. {robosystems_client-0.1.10.dist-info → robosystems_client-0.1.12.dist-info}/METADATA +1 -1
  59. {robosystems_client-0.1.10.dist-info → robosystems_client-0.1.12.dist-info}/RECORD +60 -42
  60. robosystems_client/api/status/get_mcp_health.py +0 -136
  61. {robosystems_client-0.1.10.dist-info → robosystems_client-0.1.12.dist-info}/WHEEL +0 -0
@@ -0,0 +1,46 @@
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(
8
+ "T", bound="GetAllSharedRepositoryLimitsResponseGetallsharedrepositorylimits"
9
+ )
10
+
11
+
12
+ @_attrs_define
13
+ class GetAllSharedRepositoryLimitsResponseGetallsharedrepositorylimits:
14
+ """ """
15
+
16
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
17
+
18
+ def to_dict(self) -> dict[str, Any]:
19
+ field_dict: dict[str, Any] = {}
20
+ field_dict.update(self.additional_properties)
21
+
22
+ return field_dict
23
+
24
+ @classmethod
25
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
26
+ d = dict(src_dict)
27
+ get_all_shared_repository_limits_response_getallsharedrepositorylimits = cls()
28
+
29
+ get_all_shared_repository_limits_response_getallsharedrepositorylimits.additional_properties = d
30
+ return get_all_shared_repository_limits_response_getallsharedrepositorylimits
31
+
32
+ @property
33
+ def additional_keys(self) -> list[str]:
34
+ return list(self.additional_properties.keys())
35
+
36
+ def __getitem__(self, key: str) -> Any:
37
+ return self.additional_properties[key]
38
+
39
+ def __setitem__(self, key: str, value: Any) -> None:
40
+ self.additional_properties[key] = value
41
+
42
+ def __delitem__(self, key: str) -> None:
43
+ del self.additional_properties[key]
44
+
45
+ def __contains__(self, key: str) -> bool:
46
+ 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="GetSharedRepositoryLimitsResponseGetsharedrepositorylimits")
8
+
9
+
10
+ @_attrs_define
11
+ class GetSharedRepositoryLimitsResponseGetsharedrepositorylimits:
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
+ get_shared_repository_limits_response_getsharedrepositorylimits = cls()
26
+
27
+ get_shared_repository_limits_response_getsharedrepositorylimits.additional_properties = d
28
+ return get_shared_repository_limits_response_getsharedrepositorylimits
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,148 @@
1
+ from collections.abc import Mapping
2
+ from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
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.subgraph_summary import SubgraphSummary
11
+
12
+
13
+ T = TypeVar("T", bound="ListSubgraphsResponse")
14
+
15
+
16
+ @_attrs_define
17
+ class ListSubgraphsResponse:
18
+ """Response model for listing subgraphs.
19
+
20
+ Attributes:
21
+ parent_graph_id (str): Parent graph identifier
22
+ parent_graph_name (str): Parent graph name
23
+ parent_graph_tier (str): Parent graph tier
24
+ subgraph_count (int): Total number of subgraphs
25
+ subgraphs (list['SubgraphSummary']): List of subgraphs
26
+ max_subgraphs (Union[None, Unset, int]): Maximum allowed subgraphs for this tier (None = unlimited)
27
+ total_size_mb (Union[None, Unset, float]): Combined size of all subgraphs in megabytes
28
+ """
29
+
30
+ parent_graph_id: str
31
+ parent_graph_name: str
32
+ parent_graph_tier: str
33
+ subgraph_count: int
34
+ subgraphs: list["SubgraphSummary"]
35
+ max_subgraphs: Union[None, Unset, int] = UNSET
36
+ total_size_mb: Union[None, Unset, float] = UNSET
37
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
38
+
39
+ def to_dict(self) -> dict[str, Any]:
40
+ parent_graph_id = self.parent_graph_id
41
+
42
+ parent_graph_name = self.parent_graph_name
43
+
44
+ parent_graph_tier = self.parent_graph_tier
45
+
46
+ subgraph_count = self.subgraph_count
47
+
48
+ subgraphs = []
49
+ for subgraphs_item_data in self.subgraphs:
50
+ subgraphs_item = subgraphs_item_data.to_dict()
51
+ subgraphs.append(subgraphs_item)
52
+
53
+ max_subgraphs: Union[None, Unset, int]
54
+ if isinstance(self.max_subgraphs, Unset):
55
+ max_subgraphs = UNSET
56
+ else:
57
+ max_subgraphs = self.max_subgraphs
58
+
59
+ total_size_mb: Union[None, Unset, float]
60
+ if isinstance(self.total_size_mb, Unset):
61
+ total_size_mb = UNSET
62
+ else:
63
+ total_size_mb = self.total_size_mb
64
+
65
+ field_dict: dict[str, Any] = {}
66
+ field_dict.update(self.additional_properties)
67
+ field_dict.update(
68
+ {
69
+ "parent_graph_id": parent_graph_id,
70
+ "parent_graph_name": parent_graph_name,
71
+ "parent_graph_tier": parent_graph_tier,
72
+ "subgraph_count": subgraph_count,
73
+ "subgraphs": subgraphs,
74
+ }
75
+ )
76
+ if max_subgraphs is not UNSET:
77
+ field_dict["max_subgraphs"] = max_subgraphs
78
+ if total_size_mb is not UNSET:
79
+ field_dict["total_size_mb"] = total_size_mb
80
+
81
+ return field_dict
82
+
83
+ @classmethod
84
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
85
+ from ..models.subgraph_summary import SubgraphSummary
86
+
87
+ d = dict(src_dict)
88
+ parent_graph_id = d.pop("parent_graph_id")
89
+
90
+ parent_graph_name = d.pop("parent_graph_name")
91
+
92
+ parent_graph_tier = d.pop("parent_graph_tier")
93
+
94
+ subgraph_count = d.pop("subgraph_count")
95
+
96
+ subgraphs = []
97
+ _subgraphs = d.pop("subgraphs")
98
+ for subgraphs_item_data in _subgraphs:
99
+ subgraphs_item = SubgraphSummary.from_dict(subgraphs_item_data)
100
+
101
+ subgraphs.append(subgraphs_item)
102
+
103
+ def _parse_max_subgraphs(data: object) -> Union[None, Unset, int]:
104
+ if data is None:
105
+ return data
106
+ if isinstance(data, Unset):
107
+ return data
108
+ return cast(Union[None, Unset, int], data)
109
+
110
+ max_subgraphs = _parse_max_subgraphs(d.pop("max_subgraphs", UNSET))
111
+
112
+ def _parse_total_size_mb(data: object) -> Union[None, Unset, float]:
113
+ if data is None:
114
+ return data
115
+ if isinstance(data, Unset):
116
+ return data
117
+ return cast(Union[None, Unset, float], data)
118
+
119
+ total_size_mb = _parse_total_size_mb(d.pop("total_size_mb", UNSET))
120
+
121
+ list_subgraphs_response = cls(
122
+ parent_graph_id=parent_graph_id,
123
+ parent_graph_name=parent_graph_name,
124
+ parent_graph_tier=parent_graph_tier,
125
+ subgraph_count=subgraph_count,
126
+ subgraphs=subgraphs,
127
+ max_subgraphs=max_subgraphs,
128
+ total_size_mb=total_size_mb,
129
+ )
130
+
131
+ list_subgraphs_response.additional_properties = d
132
+ return list_subgraphs_response
133
+
134
+ @property
135
+ def additional_keys(self) -> list[str]:
136
+ return list(self.additional_properties.keys())
137
+
138
+ def __getitem__(self, key: str) -> Any:
139
+ return self.additional_properties[key]
140
+
141
+ def __setitem__(self, key: str, value: Any) -> None:
142
+ self.additional_properties[key] = value
143
+
144
+ def __delitem__(self, key: str) -> None:
145
+ del self.additional_properties[key]
146
+
147
+ def __contains__(self, key: str) -> bool:
148
+ return key in self.additional_properties
@@ -18,20 +18,20 @@ class RepositoryCreditsResponse:
18
18
  """Response for repository-specific credits.
19
19
 
20
20
  Attributes:
21
- repository_type (str): Repository type
21
+ repository (str): Repository identifier
22
22
  has_access (bool): Whether user has access
23
23
  message (Union[Unset, str]): Access message
24
24
  credits_ (Union[Unset, CreditSummary]): Credit balance summary.
25
25
  """
26
26
 
27
- repository_type: str
27
+ repository: str
28
28
  has_access: bool
29
29
  message: Union[Unset, str] = UNSET
30
30
  credits_: Union[Unset, "CreditSummary"] = UNSET
31
31
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
32
32
 
33
33
  def to_dict(self) -> dict[str, Any]:
34
- repository_type = self.repository_type
34
+ repository = self.repository
35
35
 
36
36
  has_access = self.has_access
37
37
 
@@ -45,7 +45,7 @@ class RepositoryCreditsResponse:
45
45
  field_dict.update(self.additional_properties)
46
46
  field_dict.update(
47
47
  {
48
- "repository_type": repository_type,
48
+ "repository": repository,
49
49
  "has_access": has_access,
50
50
  }
51
51
  )
@@ -61,7 +61,7 @@ class RepositoryCreditsResponse:
61
61
  from ..models.credit_summary import CreditSummary
62
62
 
63
63
  d = dict(src_dict)
64
- repository_type = d.pop("repository_type")
64
+ repository = d.pop("repository")
65
65
 
66
66
  has_access = d.pop("has_access")
67
67
 
@@ -75,7 +75,7 @@ class RepositoryCreditsResponse:
75
75
  credits_ = CreditSummary.from_dict(_credits_)
76
76
 
77
77
  repository_credits_response = cls(
78
- repository_type=repository_type,
78
+ repository=repository,
79
79
  has_access=has_access,
80
80
  message=message,
81
81
  credits_=credits_,
@@ -23,9 +23,9 @@ class SchemaExportResponse:
23
23
  """Response model for schema export.
24
24
 
25
25
  Attributes:
26
- graph_id (str): Graph ID Example: entity_12345.
26
+ graph_id (str): Graph ID Example: kg1a2b3c4d5.
27
27
  schema_definition (Union['SchemaExportResponseSchemaDefinitionType0', str]): Exported schema definition Example:
28
- {'name': 'entity_12345_schema', 'nodes': [{'name': 'Entity', 'properties': []}], 'relationships': [], 'version':
28
+ {'name': 'kg1a2b3c4d5_schema', 'nodes': [{'name': 'Entity', 'properties': []}], 'relationships': [], 'version':
29
29
  '1.0.0'}.
30
30
  format_ (str): Export format used Example: json.
31
31
  exported_at (str): Export timestamp Example: 2024-01-15T10:30:00Z.
@@ -0,0 +1,158 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union, cast
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
+ T = TypeVar("T", bound="SubgraphQuotaResponse")
10
+
11
+
12
+ @_attrs_define
13
+ class SubgraphQuotaResponse:
14
+ """Response model for subgraph quota information.
15
+
16
+ Attributes:
17
+ parent_graph_id (str): Parent graph identifier
18
+ tier (str): Graph tier
19
+ current_count (int): Current number of subgraphs
20
+ max_allowed (Union[None, Unset, int]): Maximum allowed subgraphs (None = unlimited)
21
+ remaining (Union[None, Unset, int]): Remaining subgraphs that can be created
22
+ total_size_mb (Union[None, Unset, float]): Total size of all subgraphs
23
+ max_size_mb (Union[None, Unset, float]): Maximum allowed total size
24
+ """
25
+
26
+ parent_graph_id: str
27
+ tier: str
28
+ current_count: int
29
+ max_allowed: Union[None, Unset, int] = UNSET
30
+ remaining: Union[None, Unset, int] = UNSET
31
+ total_size_mb: Union[None, Unset, float] = UNSET
32
+ max_size_mb: Union[None, Unset, float] = UNSET
33
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
34
+
35
+ def to_dict(self) -> dict[str, Any]:
36
+ parent_graph_id = self.parent_graph_id
37
+
38
+ tier = self.tier
39
+
40
+ current_count = self.current_count
41
+
42
+ max_allowed: Union[None, Unset, int]
43
+ if isinstance(self.max_allowed, Unset):
44
+ max_allowed = UNSET
45
+ else:
46
+ max_allowed = self.max_allowed
47
+
48
+ remaining: Union[None, Unset, int]
49
+ if isinstance(self.remaining, Unset):
50
+ remaining = UNSET
51
+ else:
52
+ remaining = self.remaining
53
+
54
+ total_size_mb: Union[None, Unset, float]
55
+ if isinstance(self.total_size_mb, Unset):
56
+ total_size_mb = UNSET
57
+ else:
58
+ total_size_mb = self.total_size_mb
59
+
60
+ max_size_mb: Union[None, Unset, float]
61
+ if isinstance(self.max_size_mb, Unset):
62
+ max_size_mb = UNSET
63
+ else:
64
+ max_size_mb = self.max_size_mb
65
+
66
+ field_dict: dict[str, Any] = {}
67
+ field_dict.update(self.additional_properties)
68
+ field_dict.update(
69
+ {
70
+ "parent_graph_id": parent_graph_id,
71
+ "tier": tier,
72
+ "current_count": current_count,
73
+ }
74
+ )
75
+ if max_allowed is not UNSET:
76
+ field_dict["max_allowed"] = max_allowed
77
+ if remaining is not UNSET:
78
+ field_dict["remaining"] = remaining
79
+ if total_size_mb is not UNSET:
80
+ field_dict["total_size_mb"] = total_size_mb
81
+ if max_size_mb is not UNSET:
82
+ field_dict["max_size_mb"] = max_size_mb
83
+
84
+ return field_dict
85
+
86
+ @classmethod
87
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
88
+ d = dict(src_dict)
89
+ parent_graph_id = d.pop("parent_graph_id")
90
+
91
+ tier = d.pop("tier")
92
+
93
+ current_count = d.pop("current_count")
94
+
95
+ def _parse_max_allowed(data: object) -> Union[None, Unset, int]:
96
+ if data is None:
97
+ return data
98
+ if isinstance(data, Unset):
99
+ return data
100
+ return cast(Union[None, Unset, int], data)
101
+
102
+ max_allowed = _parse_max_allowed(d.pop("max_allowed", UNSET))
103
+
104
+ def _parse_remaining(data: object) -> Union[None, Unset, int]:
105
+ if data is None:
106
+ return data
107
+ if isinstance(data, Unset):
108
+ return data
109
+ return cast(Union[None, Unset, int], data)
110
+
111
+ remaining = _parse_remaining(d.pop("remaining", UNSET))
112
+
113
+ def _parse_total_size_mb(data: object) -> Union[None, Unset, float]:
114
+ if data is None:
115
+ return data
116
+ if isinstance(data, Unset):
117
+ return data
118
+ return cast(Union[None, Unset, float], data)
119
+
120
+ total_size_mb = _parse_total_size_mb(d.pop("total_size_mb", UNSET))
121
+
122
+ def _parse_max_size_mb(data: object) -> Union[None, Unset, float]:
123
+ if data is None:
124
+ return data
125
+ if isinstance(data, Unset):
126
+ return data
127
+ return cast(Union[None, Unset, float], data)
128
+
129
+ max_size_mb = _parse_max_size_mb(d.pop("max_size_mb", UNSET))
130
+
131
+ subgraph_quota_response = cls(
132
+ parent_graph_id=parent_graph_id,
133
+ tier=tier,
134
+ current_count=current_count,
135
+ max_allowed=max_allowed,
136
+ remaining=remaining,
137
+ total_size_mb=total_size_mb,
138
+ max_size_mb=max_size_mb,
139
+ )
140
+
141
+ subgraph_quota_response.additional_properties = d
142
+ return subgraph_quota_response
143
+
144
+ @property
145
+ def additional_keys(self) -> list[str]:
146
+ return list(self.additional_properties.keys())
147
+
148
+ def __getitem__(self, key: str) -> Any:
149
+ return self.additional_properties[key]
150
+
151
+ def __setitem__(self, key: str, value: Any) -> None:
152
+ self.additional_properties[key] = value
153
+
154
+ def __delitem__(self, key: str) -> None:
155
+ del self.additional_properties[key]
156
+
157
+ def __contains__(self, key: str) -> bool:
158
+ return key in self.additional_properties