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
@@ -39,6 +39,8 @@ from .create_api_key_response import CreateAPIKeyResponse
39
39
  from .create_connection_request import CreateConnectionRequest
40
40
  from .create_connection_request_provider import CreateConnectionRequestProvider
41
41
  from .create_graph_request import CreateGraphRequest
42
+ from .create_subgraph_request import CreateSubgraphRequest
43
+ from .create_subgraph_request_metadata_type_0 import CreateSubgraphRequestMetadataType0
42
44
  from .credit_check_request import CreditCheckRequest
43
45
  from .credit_summary import CreditSummary
44
46
  from .credit_summary_response import CreditSummaryResponse
@@ -56,6 +58,8 @@ from .cypher_query_request import CypherQueryRequest
56
58
  from .cypher_query_request_parameters_type_0 import CypherQueryRequestParametersType0
57
59
  from .database_health_response import DatabaseHealthResponse
58
60
  from .database_info_response import DatabaseInfoResponse
61
+ from .delete_subgraph_request import DeleteSubgraphRequest
62
+ from .delete_subgraph_response import DeleteSubgraphResponse
59
63
  from .detailed_transactions_response import DetailedTransactionsResponse
60
64
  from .detailed_transactions_response_date_range import (
61
65
  DetailedTransactionsResponseDateRange,
@@ -71,6 +75,9 @@ from .exchange_token_request_metadata_type_0 import ExchangeTokenRequestMetadata
71
75
  from .get_all_credit_summaries_response_getallcreditsummaries import (
72
76
  GetAllCreditSummariesResponseGetallcreditsummaries,
73
77
  )
78
+ from .get_all_shared_repository_limits_response_getallsharedrepositorylimits import (
79
+ GetAllSharedRepositoryLimitsResponseGetallsharedrepositorylimits,
80
+ )
74
81
  from .get_backup_download_url_response_getbackupdownloadurl import (
75
82
  GetBackupDownloadUrlResponseGetbackupdownloadurl,
76
83
  )
@@ -92,10 +99,12 @@ from .get_graph_schema_info_response_getgraphschemainfo import (
92
99
  from .get_graph_usage_details_response_getgraphusagedetails import (
93
100
  GetGraphUsageDetailsResponseGetgraphusagedetails,
94
101
  )
95
- from .get_mcp_health_response_getmcphealth import GetMCPHealthResponseGetmcphealth
96
102
  from .get_operation_status_response_getoperationstatus import (
97
103
  GetOperationStatusResponseGetoperationstatus,
98
104
  )
105
+ from .get_shared_repository_limits_response_getsharedrepositorylimits import (
106
+ GetSharedRepositoryLimitsResponseGetsharedrepositorylimits,
107
+ )
99
108
  from .get_storage_usage_response_getstorageusage import (
100
109
  GetStorageUsageResponseGetstorageusage,
101
110
  )
@@ -126,6 +135,7 @@ from .list_connections_provider_type_0 import ListConnectionsProviderType0
126
135
  from .list_schema_extensions_response_listschemaextensions import (
127
136
  ListSchemaExtensionsResponseListschemaextensions,
128
137
  )
138
+ from .list_subgraphs_response import ListSubgraphsResponse
129
139
  from .login_request import LoginRequest
130
140
  from .logout_user_response_logoutuser import LogoutUserResponseLogoutuser
131
141
  from .mcp_tool_call import MCPToolCall
@@ -177,6 +187,11 @@ from .sso_exchange_response import SSOExchangeResponse
177
187
  from .sso_login_request import SSOLoginRequest
178
188
  from .sso_token_response import SSOTokenResponse
179
189
  from .storage_limit_response import StorageLimitResponse
190
+ from .subgraph_quota_response import SubgraphQuotaResponse
191
+ from .subgraph_response import SubgraphResponse
192
+ from .subgraph_response_metadata_type_0 import SubgraphResponseMetadataType0
193
+ from .subgraph_summary import SubgraphSummary
194
+ from .subgraph_type import SubgraphType
180
195
  from .subscription_info import SubscriptionInfo
181
196
  from .subscription_info_metadata import SubscriptionInfoMetadata
182
197
  from .subscription_request import SubscriptionRequest
@@ -253,6 +268,8 @@ __all__ = (
253
268
  "CreateConnectionRequest",
254
269
  "CreateConnectionRequestProvider",
255
270
  "CreateGraphRequest",
271
+ "CreateSubgraphRequest",
272
+ "CreateSubgraphRequestMetadataType0",
256
273
  "CreditCheckRequest",
257
274
  "CreditsSummaryResponse",
258
275
  "CreditsSummaryResponseCreditsByAddonItem",
@@ -266,6 +283,8 @@ __all__ = (
266
283
  "CypherQueryRequestParametersType0",
267
284
  "DatabaseHealthResponse",
268
285
  "DatabaseInfoResponse",
286
+ "DeleteSubgraphRequest",
287
+ "DeleteSubgraphResponse",
269
288
  "DetailedTransactionsResponse",
270
289
  "DetailedTransactionsResponseDateRange",
271
290
  "DetailedTransactionsResponseSummary",
@@ -275,6 +294,7 @@ __all__ = (
275
294
  "ExchangeTokenRequest",
276
295
  "ExchangeTokenRequestMetadataType0",
277
296
  "GetAllCreditSummariesResponseGetallcreditsummaries",
297
+ "GetAllSharedRepositoryLimitsResponseGetallsharedrepositorylimits",
278
298
  "GetBackupDownloadUrlResponseGetbackupdownloadurl",
279
299
  "GetCurrentAuthUserResponseGetcurrentauthuser",
280
300
  "GetCurrentGraphBillResponseGetcurrentgraphbill",
@@ -282,8 +302,8 @@ __all__ = (
282
302
  "GetGraphMonthlyBillResponseGetgraphmonthlybill",
283
303
  "GetGraphSchemaInfoResponseGetgraphschemainfo",
284
304
  "GetGraphUsageDetailsResponseGetgraphusagedetails",
285
- "GetMCPHealthResponseGetmcphealth",
286
305
  "GetOperationStatusResponseGetoperationstatus",
306
+ "GetSharedRepositoryLimitsResponseGetsharedrepositorylimits",
287
307
  "GetStorageUsageResponseGetstorageusage",
288
308
  "GraphInfo",
289
309
  "GraphMetadata",
@@ -306,6 +326,7 @@ __all__ = (
306
326
  "LinkTokenRequestProviderType0",
307
327
  "ListConnectionsProviderType0",
308
328
  "ListSchemaExtensionsResponseListschemaextensions",
329
+ "ListSubgraphsResponse",
309
330
  "LoginRequest",
310
331
  "LogoutUserResponseLogoutuser",
311
332
  "MCPToolCall",
@@ -345,6 +366,11 @@ __all__ = (
345
366
  "SSOLoginRequest",
346
367
  "SSOTokenResponse",
347
368
  "StorageLimitResponse",
369
+ "SubgraphQuotaResponse",
370
+ "SubgraphResponse",
371
+ "SubgraphResponseMetadataType0",
372
+ "SubgraphSummary",
373
+ "SubgraphType",
348
374
  "SubscriptionInfo",
349
375
  "SubscriptionInfoMetadata",
350
376
  "SubscriptionRequest",
@@ -30,14 +30,14 @@ class CreateGraphRequest:
30
30
  custom_schema (Union['CustomSchemaDefinition', None, Unset]): Custom schema definition to apply
31
31
  initial_entity (Union['InitialEntityData', None, Unset]): Optional initial entity to create in the graph. If
32
32
  provided, creates a entity-focused graph.
33
- tags (Union[None, Unset, list[str]]): Optional tags for organization
33
+ tags (Union[Unset, list[str]]): Optional tags for organization
34
34
  """
35
35
 
36
36
  metadata: "GraphMetadata"
37
37
  instance_tier: Union[Unset, str] = "standard"
38
38
  custom_schema: Union["CustomSchemaDefinition", None, Unset] = UNSET
39
39
  initial_entity: Union["InitialEntityData", None, Unset] = UNSET
40
- tags: Union[None, Unset, list[str]] = UNSET
40
+ tags: Union[Unset, list[str]] = UNSET
41
41
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
42
42
 
43
43
  def to_dict(self) -> dict[str, Any]:
@@ -64,13 +64,8 @@ class CreateGraphRequest:
64
64
  else:
65
65
  initial_entity = self.initial_entity
66
66
 
67
- tags: Union[None, Unset, list[str]]
68
- if isinstance(self.tags, Unset):
69
- tags = UNSET
70
- elif isinstance(self.tags, list):
71
- tags = self.tags
72
-
73
- else:
67
+ tags: Union[Unset, list[str]] = UNSET
68
+ if not isinstance(self.tags, Unset):
74
69
  tags = self.tags
75
70
 
76
71
  field_dict: dict[str, Any] = {}
@@ -138,22 +133,7 @@ class CreateGraphRequest:
138
133
 
139
134
  initial_entity = _parse_initial_entity(d.pop("initial_entity", UNSET))
140
135
 
141
- def _parse_tags(data: object) -> Union[None, Unset, list[str]]:
142
- if data is None:
143
- return data
144
- if isinstance(data, Unset):
145
- return data
146
- try:
147
- if not isinstance(data, list):
148
- raise TypeError()
149
- tags_type_0 = cast(list[str], data)
150
-
151
- return tags_type_0
152
- except: # noqa: E722
153
- pass
154
- return cast(Union[None, Unset, list[str]], data)
155
-
156
- tags = _parse_tags(d.pop("tags", UNSET))
136
+ tags = cast(list[str], d.pop("tags", UNSET))
157
137
 
158
138
  create_graph_request = cls(
159
139
  metadata=metadata,
@@ -0,0 +1,185 @@
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 ..models.subgraph_type import SubgraphType
8
+ from ..types import UNSET, Unset
9
+
10
+ if TYPE_CHECKING:
11
+ from ..models.create_subgraph_request_metadata_type_0 import (
12
+ CreateSubgraphRequestMetadataType0,
13
+ )
14
+
15
+
16
+ T = TypeVar("T", bound="CreateSubgraphRequest")
17
+
18
+
19
+ @_attrs_define
20
+ class CreateSubgraphRequest:
21
+ """Request model for creating a subgraph.
22
+
23
+ Attributes:
24
+ name (str): Alphanumeric name for the subgraph (e.g., dev, staging, prod1)
25
+ display_name (str): Human-readable display name for the subgraph
26
+ description (Union[None, Unset, str]): Optional description of the subgraph's purpose
27
+ schema_extensions (Union[None, Unset, list[str]]): Schema extensions to include (inherits from parent by
28
+ default)
29
+ subgraph_type (Union[Unset, SubgraphType]): Types of subgraphs.
30
+ metadata (Union['CreateSubgraphRequestMetadataType0', None, Unset]): Additional metadata for the subgraph
31
+ """
32
+
33
+ name: str
34
+ display_name: str
35
+ description: Union[None, Unset, str] = UNSET
36
+ schema_extensions: Union[None, Unset, list[str]] = UNSET
37
+ subgraph_type: Union[Unset, SubgraphType] = UNSET
38
+ metadata: Union["CreateSubgraphRequestMetadataType0", None, Unset] = UNSET
39
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
40
+
41
+ def to_dict(self) -> dict[str, Any]:
42
+ from ..models.create_subgraph_request_metadata_type_0 import (
43
+ CreateSubgraphRequestMetadataType0,
44
+ )
45
+
46
+ name = self.name
47
+
48
+ display_name = self.display_name
49
+
50
+ description: Union[None, Unset, str]
51
+ if isinstance(self.description, Unset):
52
+ description = UNSET
53
+ else:
54
+ description = self.description
55
+
56
+ schema_extensions: Union[None, Unset, list[str]]
57
+ if isinstance(self.schema_extensions, Unset):
58
+ schema_extensions = UNSET
59
+ elif isinstance(self.schema_extensions, list):
60
+ schema_extensions = self.schema_extensions
61
+
62
+ else:
63
+ schema_extensions = self.schema_extensions
64
+
65
+ subgraph_type: Union[Unset, str] = UNSET
66
+ if not isinstance(self.subgraph_type, Unset):
67
+ subgraph_type = self.subgraph_type.value
68
+
69
+ metadata: Union[None, Unset, dict[str, Any]]
70
+ if isinstance(self.metadata, Unset):
71
+ metadata = UNSET
72
+ elif isinstance(self.metadata, CreateSubgraphRequestMetadataType0):
73
+ metadata = self.metadata.to_dict()
74
+ else:
75
+ metadata = self.metadata
76
+
77
+ field_dict: dict[str, Any] = {}
78
+ field_dict.update(self.additional_properties)
79
+ field_dict.update(
80
+ {
81
+ "name": name,
82
+ "display_name": display_name,
83
+ }
84
+ )
85
+ if description is not UNSET:
86
+ field_dict["description"] = description
87
+ if schema_extensions is not UNSET:
88
+ field_dict["schema_extensions"] = schema_extensions
89
+ if subgraph_type is not UNSET:
90
+ field_dict["subgraph_type"] = subgraph_type
91
+ if metadata is not UNSET:
92
+ field_dict["metadata"] = metadata
93
+
94
+ return field_dict
95
+
96
+ @classmethod
97
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
98
+ from ..models.create_subgraph_request_metadata_type_0 import (
99
+ CreateSubgraphRequestMetadataType0,
100
+ )
101
+
102
+ d = dict(src_dict)
103
+ name = d.pop("name")
104
+
105
+ display_name = d.pop("display_name")
106
+
107
+ def _parse_description(data: object) -> Union[None, Unset, str]:
108
+ if data is None:
109
+ return data
110
+ if isinstance(data, Unset):
111
+ return data
112
+ return cast(Union[None, Unset, str], data)
113
+
114
+ description = _parse_description(d.pop("description", UNSET))
115
+
116
+ def _parse_schema_extensions(data: object) -> Union[None, Unset, list[str]]:
117
+ if data is None:
118
+ return data
119
+ if isinstance(data, Unset):
120
+ return data
121
+ try:
122
+ if not isinstance(data, list):
123
+ raise TypeError()
124
+ schema_extensions_type_0 = cast(list[str], data)
125
+
126
+ return schema_extensions_type_0
127
+ except: # noqa: E722
128
+ pass
129
+ return cast(Union[None, Unset, list[str]], data)
130
+
131
+ schema_extensions = _parse_schema_extensions(d.pop("schema_extensions", UNSET))
132
+
133
+ _subgraph_type = d.pop("subgraph_type", UNSET)
134
+ subgraph_type: Union[Unset, SubgraphType]
135
+ if isinstance(_subgraph_type, Unset):
136
+ subgraph_type = UNSET
137
+ else:
138
+ subgraph_type = SubgraphType(_subgraph_type)
139
+
140
+ def _parse_metadata(
141
+ data: object,
142
+ ) -> Union["CreateSubgraphRequestMetadataType0", None, Unset]:
143
+ if data is None:
144
+ return data
145
+ if isinstance(data, Unset):
146
+ return data
147
+ try:
148
+ if not isinstance(data, dict):
149
+ raise TypeError()
150
+ metadata_type_0 = CreateSubgraphRequestMetadataType0.from_dict(data)
151
+
152
+ return metadata_type_0
153
+ except: # noqa: E722
154
+ pass
155
+ return cast(Union["CreateSubgraphRequestMetadataType0", None, Unset], data)
156
+
157
+ metadata = _parse_metadata(d.pop("metadata", UNSET))
158
+
159
+ create_subgraph_request = cls(
160
+ name=name,
161
+ display_name=display_name,
162
+ description=description,
163
+ schema_extensions=schema_extensions,
164
+ subgraph_type=subgraph_type,
165
+ metadata=metadata,
166
+ )
167
+
168
+ create_subgraph_request.additional_properties = d
169
+ return create_subgraph_request
170
+
171
+ @property
172
+ def additional_keys(self) -> list[str]:
173
+ return list(self.additional_properties.keys())
174
+
175
+ def __getitem__(self, key: str) -> Any:
176
+ return self.additional_properties[key]
177
+
178
+ def __setitem__(self, key: str, value: Any) -> None:
179
+ self.additional_properties[key] = value
180
+
181
+ def __delitem__(self, key: str) -> None:
182
+ del self.additional_properties[key]
183
+
184
+ def __contains__(self, key: str) -> bool:
185
+ 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="CreateSubgraphRequestMetadataType0")
8
+
9
+
10
+ @_attrs_define
11
+ class CreateSubgraphRequestMetadataType0:
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
+ create_subgraph_request_metadata_type_0 = cls()
26
+
27
+ create_subgraph_request_metadata_type_0.additional_properties = d
28
+ return create_subgraph_request_metadata_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
@@ -16,7 +16,6 @@ class CreditSummaryResponse:
16
16
  Attributes:
17
17
  graph_id (str):
18
18
  graph_tier (str):
19
- credit_multiplier (float):
20
19
  current_balance (float):
21
20
  monthly_allocation (float):
22
21
  consumed_this_month (float):
@@ -27,7 +26,6 @@ class CreditSummaryResponse:
27
26
 
28
27
  graph_id: str
29
28
  graph_tier: str
30
- credit_multiplier: float
31
29
  current_balance: float
32
30
  monthly_allocation: float
33
31
  consumed_this_month: float
@@ -41,8 +39,6 @@ class CreditSummaryResponse:
41
39
 
42
40
  graph_tier = self.graph_tier
43
41
 
44
- credit_multiplier = self.credit_multiplier
45
-
46
42
  current_balance = self.current_balance
47
43
 
48
44
  monthly_allocation = self.monthly_allocation
@@ -65,7 +61,6 @@ class CreditSummaryResponse:
65
61
  {
66
62
  "graph_id": graph_id,
67
63
  "graph_tier": graph_tier,
68
- "credit_multiplier": credit_multiplier,
69
64
  "current_balance": current_balance,
70
65
  "monthly_allocation": monthly_allocation,
71
66
  "consumed_this_month": consumed_this_month,
@@ -85,8 +80,6 @@ class CreditSummaryResponse:
85
80
 
86
81
  graph_tier = d.pop("graph_tier")
87
82
 
88
- credit_multiplier = d.pop("credit_multiplier")
89
-
90
83
  current_balance = d.pop("current_balance")
91
84
 
92
85
  monthly_allocation = d.pop("monthly_allocation")
@@ -111,7 +104,6 @@ class CreditSummaryResponse:
111
104
  credit_summary_response = cls(
112
105
  graph_id=graph_id,
113
106
  graph_tier=graph_tier,
114
- credit_multiplier=credit_multiplier,
115
107
  current_balance=current_balance,
116
108
  monthly_allocation=monthly_allocation,
117
109
  consumed_this_month=consumed_this_month,
@@ -14,7 +14,7 @@ class DatabaseHealthResponse:
14
14
  """Response model for database health check.
15
15
 
16
16
  Attributes:
17
- graph_id (str): Graph database identifier Example: entity_12345.
17
+ graph_id (str): Graph database identifier Example: kg1a2b3c4d5.
18
18
  status (str): Overall health status Example: healthy.
19
19
  connection_status (str): Database connection status Example: connected.
20
20
  uptime_seconds (float): Database uptime in seconds Example: 3600.5.
@@ -14,8 +14,8 @@ class DatabaseInfoResponse:
14
14
  """Response model for database information and statistics.
15
15
 
16
16
  Attributes:
17
- graph_id (str): Graph database identifier Example: entity_12345.
18
- database_name (str): Database name Example: entity_12345.
17
+ graph_id (str): Graph database identifier Example: kg1a2b3c4d5.
18
+ database_name (str): Database name Example: kg1a2b3c4d5.
19
19
  database_size_bytes (int): Database size in bytes Example: 1048576.
20
20
  database_size_mb (float): Database size in MB Example: 1.0.
21
21
  node_count (int): Total number of nodes Example: 1250.
@@ -0,0 +1,89 @@
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="DeleteSubgraphRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class DeleteSubgraphRequest:
14
+ """Request model for deleting a subgraph.
15
+
16
+ Attributes:
17
+ force (Union[Unset, bool]): Force deletion even if subgraph contains data Default: False.
18
+ backup_first (Union[Unset, bool]): Create a backup before deletion Default: True.
19
+ backup_location (Union[None, Unset, str]): S3 location for backup (uses default if not specified)
20
+ """
21
+
22
+ force: Union[Unset, bool] = False
23
+ backup_first: Union[Unset, bool] = True
24
+ backup_location: Union[None, Unset, str] = UNSET
25
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
26
+
27
+ def to_dict(self) -> dict[str, Any]:
28
+ force = self.force
29
+
30
+ backup_first = self.backup_first
31
+
32
+ backup_location: Union[None, Unset, str]
33
+ if isinstance(self.backup_location, Unset):
34
+ backup_location = UNSET
35
+ else:
36
+ backup_location = self.backup_location
37
+
38
+ field_dict: dict[str, Any] = {}
39
+ field_dict.update(self.additional_properties)
40
+ field_dict.update({})
41
+ if force is not UNSET:
42
+ field_dict["force"] = force
43
+ if backup_first is not UNSET:
44
+ field_dict["backup_first"] = backup_first
45
+ if backup_location is not UNSET:
46
+ field_dict["backup_location"] = backup_location
47
+
48
+ return field_dict
49
+
50
+ @classmethod
51
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
52
+ d = dict(src_dict)
53
+ force = d.pop("force", UNSET)
54
+
55
+ backup_first = d.pop("backup_first", UNSET)
56
+
57
+ def _parse_backup_location(data: object) -> Union[None, Unset, str]:
58
+ if data is None:
59
+ return data
60
+ if isinstance(data, Unset):
61
+ return data
62
+ return cast(Union[None, Unset, str], data)
63
+
64
+ backup_location = _parse_backup_location(d.pop("backup_location", UNSET))
65
+
66
+ delete_subgraph_request = cls(
67
+ force=force,
68
+ backup_first=backup_first,
69
+ backup_location=backup_location,
70
+ )
71
+
72
+ delete_subgraph_request.additional_properties = d
73
+ return delete_subgraph_request
74
+
75
+ @property
76
+ def additional_keys(self) -> list[str]:
77
+ return list(self.additional_properties.keys())
78
+
79
+ def __getitem__(self, key: str) -> Any:
80
+ return self.additional_properties[key]
81
+
82
+ def __setitem__(self, key: str, value: Any) -> None:
83
+ self.additional_properties[key] = value
84
+
85
+ def __delitem__(self, key: str) -> None:
86
+ del self.additional_properties[key]
87
+
88
+ def __contains__(self, key: str) -> bool:
89
+ return key in self.additional_properties
@@ -0,0 +1,120 @@
1
+ import datetime
2
+ from collections.abc import Mapping
3
+ from typing import Any, TypeVar, Union, cast
4
+
5
+ from attrs import define as _attrs_define
6
+ from attrs import field as _attrs_field
7
+ from dateutil.parser import isoparse
8
+
9
+ from ..types import UNSET, Unset
10
+
11
+ T = TypeVar("T", bound="DeleteSubgraphResponse")
12
+
13
+
14
+ @_attrs_define
15
+ class DeleteSubgraphResponse:
16
+ """Response model for subgraph deletion.
17
+
18
+ Attributes:
19
+ graph_id (str): Deleted subgraph identifier
20
+ status (str): Deletion status
21
+ deleted_at (datetime.datetime): When deletion occurred
22
+ backup_location (Union[None, Unset, str]): Location of backup if created
23
+ message (Union[None, Unset, str]): Additional information about the deletion
24
+ """
25
+
26
+ graph_id: str
27
+ status: str
28
+ deleted_at: datetime.datetime
29
+ backup_location: Union[None, Unset, str] = UNSET
30
+ message: Union[None, Unset, str] = UNSET
31
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
32
+
33
+ def to_dict(self) -> dict[str, Any]:
34
+ graph_id = self.graph_id
35
+
36
+ status = self.status
37
+
38
+ deleted_at = self.deleted_at.isoformat()
39
+
40
+ backup_location: Union[None, Unset, str]
41
+ if isinstance(self.backup_location, Unset):
42
+ backup_location = UNSET
43
+ else:
44
+ backup_location = self.backup_location
45
+
46
+ message: Union[None, Unset, str]
47
+ if isinstance(self.message, Unset):
48
+ message = UNSET
49
+ else:
50
+ message = self.message
51
+
52
+ field_dict: dict[str, Any] = {}
53
+ field_dict.update(self.additional_properties)
54
+ field_dict.update(
55
+ {
56
+ "graph_id": graph_id,
57
+ "status": status,
58
+ "deleted_at": deleted_at,
59
+ }
60
+ )
61
+ if backup_location is not UNSET:
62
+ field_dict["backup_location"] = backup_location
63
+ if message is not UNSET:
64
+ field_dict["message"] = message
65
+
66
+ return field_dict
67
+
68
+ @classmethod
69
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
70
+ d = dict(src_dict)
71
+ graph_id = d.pop("graph_id")
72
+
73
+ status = d.pop("status")
74
+
75
+ deleted_at = isoparse(d.pop("deleted_at"))
76
+
77
+ def _parse_backup_location(data: object) -> Union[None, Unset, str]:
78
+ if data is None:
79
+ return data
80
+ if isinstance(data, Unset):
81
+ return data
82
+ return cast(Union[None, Unset, str], data)
83
+
84
+ backup_location = _parse_backup_location(d.pop("backup_location", UNSET))
85
+
86
+ def _parse_message(data: object) -> Union[None, Unset, str]:
87
+ if data is None:
88
+ return data
89
+ if isinstance(data, Unset):
90
+ return data
91
+ return cast(Union[None, Unset, str], data)
92
+
93
+ message = _parse_message(d.pop("message", UNSET))
94
+
95
+ delete_subgraph_response = cls(
96
+ graph_id=graph_id,
97
+ status=status,
98
+ deleted_at=deleted_at,
99
+ backup_location=backup_location,
100
+ message=message,
101
+ )
102
+
103
+ delete_subgraph_response.additional_properties = d
104
+ return delete_subgraph_response
105
+
106
+ @property
107
+ def additional_keys(self) -> list[str]:
108
+ return list(self.additional_properties.keys())
109
+
110
+ def __getitem__(self, key: str) -> Any:
111
+ return self.additional_properties[key]
112
+
113
+ def __setitem__(self, key: str, value: Any) -> None:
114
+ self.additional_properties[key] = value
115
+
116
+ def __delitem__(self, key: str) -> None:
117
+ del self.additional_properties[key]
118
+
119
+ def __contains__(self, key: str) -> bool:
120
+ return key in self.additional_properties