robosystems-client 0.1.11__py3-none-any.whl → 0.1.13__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.
- robosystems_client/api/agent/query_financial_agent.py +4 -4
- robosystems_client/api/backup/create_backup.py +1 -1
- robosystems_client/api/backup/export_backup.py +14 -19
- robosystems_client/api/backup/get_backup_download_url.py +1 -1
- robosystems_client/api/backup/get_backup_stats.py +19 -1
- robosystems_client/api/backup/list_backups.py +19 -1
- robosystems_client/api/backup/restore_backup.py +1 -1
- robosystems_client/api/copy/copy_data_to_graph.py +314 -0
- robosystems_client/api/{credits_ → graph_credits}/check_credit_balance.py +42 -20
- robosystems_client/api/graph_health/__init__.py +1 -0
- robosystems_client/api/{graph_status → graph_health}/get_database_health.py +1 -1
- robosystems_client/api/graph_info/__init__.py +1 -0
- robosystems_client/api/{graph_status → graph_info}/get_database_info.py +1 -1
- robosystems_client/api/graph_limits/__init__.py +1 -0
- robosystems_client/api/graph_limits/get_graph_limits.py +259 -0
- robosystems_client/api/subgraphs/__init__.py +1 -0
- robosystems_client/api/{billing/upgrade_graph_subscription_v1_graph_id_billing_subscription_upgrade_post.py → subgraphs/create_subgraph.py} +82 -36
- robosystems_client/api/subgraphs/delete_subgraph.py +317 -0
- robosystems_client/api/subgraphs/get_subgraph_info.py +300 -0
- robosystems_client/api/subgraphs/get_subgraph_quota.py +276 -0
- robosystems_client/api/{billing/get_credit_billing_info_v1_graph_id_billing_credits_get.py → subgraphs/list_subgraphs.py} +58 -32
- robosystems_client/api/user/get_all_credit_summaries.py +1 -1
- robosystems_client/extensions/README.md +2 -6
- robosystems_client/models/__init__.py +46 -10
- robosystems_client/models/copy_response.py +223 -0
- robosystems_client/models/{kuzu_backup_health_response_kuzubackuphealth.py → copy_response_error_details_type_0.py} +5 -5
- robosystems_client/models/copy_response_status.py +10 -0
- robosystems_client/models/create_subgraph_request.py +185 -0
- robosystems_client/models/create_subgraph_request_metadata_type_0.py +44 -0
- robosystems_client/models/credit_summary_response.py +0 -8
- robosystems_client/models/custom_schema_definition.py +2 -2
- robosystems_client/models/data_frame_copy_request.py +125 -0
- robosystems_client/models/data_frame_copy_request_format.py +10 -0
- robosystems_client/models/delete_subgraph_request.py +89 -0
- robosystems_client/models/delete_subgraph_response.py +120 -0
- robosystems_client/models/get_graph_limits_response_getgraphlimits.py +44 -0
- robosystems_client/models/list_subgraphs_response.py +148 -0
- robosystems_client/models/s3_copy_request.py +375 -0
- robosystems_client/models/s3_copy_request_file_format.py +12 -0
- robosystems_client/models/s3_copy_request_s3_url_style_type_0.py +9 -0
- robosystems_client/models/subgraph_quota_response.py +158 -0
- robosystems_client/models/subgraph_response.py +279 -0
- robosystems_client/models/subgraph_response_metadata_type_0.py +44 -0
- robosystems_client/models/subgraph_summary.py +155 -0
- robosystems_client/models/subgraph_type.py +11 -0
- robosystems_client/models/url_copy_request.py +157 -0
- robosystems_client/models/url_copy_request_file_format.py +10 -0
- robosystems_client/models/url_copy_request_headers_type_0.py +44 -0
- {robosystems_client-0.1.11.dist-info → robosystems_client-0.1.13.dist-info}/METADATA +1 -1
- {robosystems_client-0.1.11.dist-info → robosystems_client-0.1.13.dist-info}/RECORD +62 -39
- robosystems_client/api/backup/kuzu_backup_health.py +0 -202
- robosystems_client/api/billing/get_available_subscription_plans_v1_graph_id_billing_available_plans_get.py +0 -198
- robosystems_client/api/billing/get_graph_pricing_info_v1_graph_id_billing_pricing_get.py +0 -198
- robosystems_client/api/billing/get_graph_subscription_v1_graph_id_billing_subscription_get.py +0 -198
- robosystems_client/models/backup_export_request.py +0 -72
- robosystems_client/models/credit_check_request.py +0 -82
- robosystems_client/models/upgrade_subscription_request.py +0 -82
- /robosystems_client/api/{billing → copy}/__init__.py +0 -0
- /robosystems_client/api/{credits_ → graph_billing}/__init__.py +0 -0
- /robosystems_client/api/{billing → graph_billing}/get_current_graph_bill.py +0 -0
- /robosystems_client/api/{billing → graph_billing}/get_graph_billing_history.py +0 -0
- /robosystems_client/api/{billing → graph_billing}/get_graph_monthly_bill.py +0 -0
- /robosystems_client/api/{billing → graph_billing}/get_graph_usage_details.py +0 -0
- /robosystems_client/api/{graph_status → graph_credits}/__init__.py +0 -0
- /robosystems_client/api/{credits_ → graph_credits}/check_storage_limits.py +0 -0
- /robosystems_client/api/{credits_ → graph_credits}/get_credit_summary.py +0 -0
- /robosystems_client/api/{credits_ → graph_credits}/get_storage_usage.py +0 -0
- /robosystems_client/api/{credits_ → graph_credits}/list_credit_transactions.py +0 -0
- {robosystems_client-0.1.11.dist-info → robosystems_client-0.1.13.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,223 @@
|
|
|
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.copy_response_status import CopyResponseStatus
|
|
8
|
+
from ..types import UNSET, Unset
|
|
9
|
+
|
|
10
|
+
if TYPE_CHECKING:
|
|
11
|
+
from ..models.copy_response_error_details_type_0 import CopyResponseErrorDetailsType0
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
T = TypeVar("T", bound="CopyResponse")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@_attrs_define
|
|
18
|
+
class CopyResponse:
|
|
19
|
+
"""Response model for copy operations.
|
|
20
|
+
|
|
21
|
+
Attributes:
|
|
22
|
+
status (CopyResponseStatus): Operation status
|
|
23
|
+
source_type (str): Type of source that was copied from
|
|
24
|
+
execution_time_ms (float): Total execution time in milliseconds
|
|
25
|
+
message (str): Human-readable status message
|
|
26
|
+
rows_imported (Union[None, Unset, int]): Number of rows successfully imported
|
|
27
|
+
rows_skipped (Union[None, Unset, int]): Number of rows skipped due to errors (when ignore_errors=true)
|
|
28
|
+
warnings (Union[None, Unset, list[str]]): List of warnings encountered during import
|
|
29
|
+
error_details (Union['CopyResponseErrorDetailsType0', None, Unset]): Detailed error information if operation
|
|
30
|
+
failed
|
|
31
|
+
bytes_processed (Union[None, Unset, int]): Total bytes processed from source
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
status: CopyResponseStatus
|
|
35
|
+
source_type: str
|
|
36
|
+
execution_time_ms: float
|
|
37
|
+
message: str
|
|
38
|
+
rows_imported: Union[None, Unset, int] = UNSET
|
|
39
|
+
rows_skipped: Union[None, Unset, int] = UNSET
|
|
40
|
+
warnings: Union[None, Unset, list[str]] = UNSET
|
|
41
|
+
error_details: Union["CopyResponseErrorDetailsType0", None, Unset] = UNSET
|
|
42
|
+
bytes_processed: Union[None, Unset, int] = UNSET
|
|
43
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
44
|
+
|
|
45
|
+
def to_dict(self) -> dict[str, Any]:
|
|
46
|
+
from ..models.copy_response_error_details_type_0 import (
|
|
47
|
+
CopyResponseErrorDetailsType0,
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
status = self.status.value
|
|
51
|
+
|
|
52
|
+
source_type = self.source_type
|
|
53
|
+
|
|
54
|
+
execution_time_ms = self.execution_time_ms
|
|
55
|
+
|
|
56
|
+
message = self.message
|
|
57
|
+
|
|
58
|
+
rows_imported: Union[None, Unset, int]
|
|
59
|
+
if isinstance(self.rows_imported, Unset):
|
|
60
|
+
rows_imported = UNSET
|
|
61
|
+
else:
|
|
62
|
+
rows_imported = self.rows_imported
|
|
63
|
+
|
|
64
|
+
rows_skipped: Union[None, Unset, int]
|
|
65
|
+
if isinstance(self.rows_skipped, Unset):
|
|
66
|
+
rows_skipped = UNSET
|
|
67
|
+
else:
|
|
68
|
+
rows_skipped = self.rows_skipped
|
|
69
|
+
|
|
70
|
+
warnings: Union[None, Unset, list[str]]
|
|
71
|
+
if isinstance(self.warnings, Unset):
|
|
72
|
+
warnings = UNSET
|
|
73
|
+
elif isinstance(self.warnings, list):
|
|
74
|
+
warnings = self.warnings
|
|
75
|
+
|
|
76
|
+
else:
|
|
77
|
+
warnings = self.warnings
|
|
78
|
+
|
|
79
|
+
error_details: Union[None, Unset, dict[str, Any]]
|
|
80
|
+
if isinstance(self.error_details, Unset):
|
|
81
|
+
error_details = UNSET
|
|
82
|
+
elif isinstance(self.error_details, CopyResponseErrorDetailsType0):
|
|
83
|
+
error_details = self.error_details.to_dict()
|
|
84
|
+
else:
|
|
85
|
+
error_details = self.error_details
|
|
86
|
+
|
|
87
|
+
bytes_processed: Union[None, Unset, int]
|
|
88
|
+
if isinstance(self.bytes_processed, Unset):
|
|
89
|
+
bytes_processed = UNSET
|
|
90
|
+
else:
|
|
91
|
+
bytes_processed = self.bytes_processed
|
|
92
|
+
|
|
93
|
+
field_dict: dict[str, Any] = {}
|
|
94
|
+
field_dict.update(self.additional_properties)
|
|
95
|
+
field_dict.update(
|
|
96
|
+
{
|
|
97
|
+
"status": status,
|
|
98
|
+
"source_type": source_type,
|
|
99
|
+
"execution_time_ms": execution_time_ms,
|
|
100
|
+
"message": message,
|
|
101
|
+
}
|
|
102
|
+
)
|
|
103
|
+
if rows_imported is not UNSET:
|
|
104
|
+
field_dict["rows_imported"] = rows_imported
|
|
105
|
+
if rows_skipped is not UNSET:
|
|
106
|
+
field_dict["rows_skipped"] = rows_skipped
|
|
107
|
+
if warnings is not UNSET:
|
|
108
|
+
field_dict["warnings"] = warnings
|
|
109
|
+
if error_details is not UNSET:
|
|
110
|
+
field_dict["error_details"] = error_details
|
|
111
|
+
if bytes_processed is not UNSET:
|
|
112
|
+
field_dict["bytes_processed"] = bytes_processed
|
|
113
|
+
|
|
114
|
+
return field_dict
|
|
115
|
+
|
|
116
|
+
@classmethod
|
|
117
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
118
|
+
from ..models.copy_response_error_details_type_0 import (
|
|
119
|
+
CopyResponseErrorDetailsType0,
|
|
120
|
+
)
|
|
121
|
+
|
|
122
|
+
d = dict(src_dict)
|
|
123
|
+
status = CopyResponseStatus(d.pop("status"))
|
|
124
|
+
|
|
125
|
+
source_type = d.pop("source_type")
|
|
126
|
+
|
|
127
|
+
execution_time_ms = d.pop("execution_time_ms")
|
|
128
|
+
|
|
129
|
+
message = d.pop("message")
|
|
130
|
+
|
|
131
|
+
def _parse_rows_imported(data: object) -> Union[None, Unset, int]:
|
|
132
|
+
if data is None:
|
|
133
|
+
return data
|
|
134
|
+
if isinstance(data, Unset):
|
|
135
|
+
return data
|
|
136
|
+
return cast(Union[None, Unset, int], data)
|
|
137
|
+
|
|
138
|
+
rows_imported = _parse_rows_imported(d.pop("rows_imported", UNSET))
|
|
139
|
+
|
|
140
|
+
def _parse_rows_skipped(data: object) -> Union[None, Unset, int]:
|
|
141
|
+
if data is None:
|
|
142
|
+
return data
|
|
143
|
+
if isinstance(data, Unset):
|
|
144
|
+
return data
|
|
145
|
+
return cast(Union[None, Unset, int], data)
|
|
146
|
+
|
|
147
|
+
rows_skipped = _parse_rows_skipped(d.pop("rows_skipped", UNSET))
|
|
148
|
+
|
|
149
|
+
def _parse_warnings(data: object) -> Union[None, Unset, list[str]]:
|
|
150
|
+
if data is None:
|
|
151
|
+
return data
|
|
152
|
+
if isinstance(data, Unset):
|
|
153
|
+
return data
|
|
154
|
+
try:
|
|
155
|
+
if not isinstance(data, list):
|
|
156
|
+
raise TypeError()
|
|
157
|
+
warnings_type_0 = cast(list[str], data)
|
|
158
|
+
|
|
159
|
+
return warnings_type_0
|
|
160
|
+
except: # noqa: E722
|
|
161
|
+
pass
|
|
162
|
+
return cast(Union[None, Unset, list[str]], data)
|
|
163
|
+
|
|
164
|
+
warnings = _parse_warnings(d.pop("warnings", UNSET))
|
|
165
|
+
|
|
166
|
+
def _parse_error_details(
|
|
167
|
+
data: object,
|
|
168
|
+
) -> Union["CopyResponseErrorDetailsType0", None, Unset]:
|
|
169
|
+
if data is None:
|
|
170
|
+
return data
|
|
171
|
+
if isinstance(data, Unset):
|
|
172
|
+
return data
|
|
173
|
+
try:
|
|
174
|
+
if not isinstance(data, dict):
|
|
175
|
+
raise TypeError()
|
|
176
|
+
error_details_type_0 = CopyResponseErrorDetailsType0.from_dict(data)
|
|
177
|
+
|
|
178
|
+
return error_details_type_0
|
|
179
|
+
except: # noqa: E722
|
|
180
|
+
pass
|
|
181
|
+
return cast(Union["CopyResponseErrorDetailsType0", None, Unset], data)
|
|
182
|
+
|
|
183
|
+
error_details = _parse_error_details(d.pop("error_details", UNSET))
|
|
184
|
+
|
|
185
|
+
def _parse_bytes_processed(data: object) -> Union[None, Unset, int]:
|
|
186
|
+
if data is None:
|
|
187
|
+
return data
|
|
188
|
+
if isinstance(data, Unset):
|
|
189
|
+
return data
|
|
190
|
+
return cast(Union[None, Unset, int], data)
|
|
191
|
+
|
|
192
|
+
bytes_processed = _parse_bytes_processed(d.pop("bytes_processed", UNSET))
|
|
193
|
+
|
|
194
|
+
copy_response = cls(
|
|
195
|
+
status=status,
|
|
196
|
+
source_type=source_type,
|
|
197
|
+
execution_time_ms=execution_time_ms,
|
|
198
|
+
message=message,
|
|
199
|
+
rows_imported=rows_imported,
|
|
200
|
+
rows_skipped=rows_skipped,
|
|
201
|
+
warnings=warnings,
|
|
202
|
+
error_details=error_details,
|
|
203
|
+
bytes_processed=bytes_processed,
|
|
204
|
+
)
|
|
205
|
+
|
|
206
|
+
copy_response.additional_properties = d
|
|
207
|
+
return copy_response
|
|
208
|
+
|
|
209
|
+
@property
|
|
210
|
+
def additional_keys(self) -> list[str]:
|
|
211
|
+
return list(self.additional_properties.keys())
|
|
212
|
+
|
|
213
|
+
def __getitem__(self, key: str) -> Any:
|
|
214
|
+
return self.additional_properties[key]
|
|
215
|
+
|
|
216
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
217
|
+
self.additional_properties[key] = value
|
|
218
|
+
|
|
219
|
+
def __delitem__(self, key: str) -> None:
|
|
220
|
+
del self.additional_properties[key]
|
|
221
|
+
|
|
222
|
+
def __contains__(self, key: str) -> bool:
|
|
223
|
+
return key in self.additional_properties
|
|
@@ -4,11 +4,11 @@ from typing import Any, TypeVar
|
|
|
4
4
|
from attrs import define as _attrs_define
|
|
5
5
|
from attrs import field as _attrs_field
|
|
6
6
|
|
|
7
|
-
T = TypeVar("T", bound="
|
|
7
|
+
T = TypeVar("T", bound="CopyResponseErrorDetailsType0")
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
@_attrs_define
|
|
11
|
-
class
|
|
11
|
+
class CopyResponseErrorDetailsType0:
|
|
12
12
|
""" """
|
|
13
13
|
|
|
14
14
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
@@ -22,10 +22,10 @@ class KuzuBackupHealthResponseKuzubackuphealth:
|
|
|
22
22
|
@classmethod
|
|
23
23
|
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
24
24
|
d = dict(src_dict)
|
|
25
|
-
|
|
25
|
+
copy_response_error_details_type_0 = cls()
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
return
|
|
27
|
+
copy_response_error_details_type_0.additional_properties = d
|
|
28
|
+
return copy_response_error_details_type_0
|
|
29
29
|
|
|
30
30
|
@property
|
|
31
31
|
def additional_keys(self) -> list[str]:
|
|
@@ -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,
|
|
@@ -31,8 +31,8 @@ class CustomSchemaDefinition:
|
|
|
31
31
|
nodes (Union[Unset, list['CustomSchemaDefinitionNodesItem']]): List of node definitions with properties Example:
|
|
32
32
|
[{'name': 'Product', 'properties': [{'name': 'sku', 'type': 'STRING', 'is_primary_key': True}, {'name': 'name',
|
|
33
33
|
'type': 'STRING', 'is_required': True}, {'name': 'price', 'type': 'DOUBLE'}, {'name': 'quantity', 'type':
|
|
34
|
-
'INT64'}]}, {'name': 'Warehouse', 'properties': [{'name': '
|
|
35
|
-
{'name': 'location', 'type': 'STRING'}]}].
|
|
34
|
+
'INT64'}]}, {'name': 'Warehouse', 'properties': [{'name': 'identifier', 'type': 'STRING', 'is_primary_key':
|
|
35
|
+
True}, {'name': 'location', 'type': 'STRING'}]}].
|
|
36
36
|
relationships (Union[Unset, list['CustomSchemaDefinitionRelationshipsItem']]): List of relationship definitions
|
|
37
37
|
Example: [{'from_node': 'Product', 'name': 'STORED_IN', 'properties': [{'name': 'since', 'type': 'DATE'}],
|
|
38
38
|
'to_node': 'Warehouse'}].
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, Literal, TypeVar, Union, cast
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
from ..models.data_frame_copy_request_format import DataFrameCopyRequestFormat
|
|
8
|
+
from ..types import UNSET, Unset
|
|
9
|
+
|
|
10
|
+
T = TypeVar("T", bound="DataFrameCopyRequest")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@_attrs_define
|
|
14
|
+
class DataFrameCopyRequest:
|
|
15
|
+
"""Request model for DataFrame copy operations (future).
|
|
16
|
+
|
|
17
|
+
Attributes:
|
|
18
|
+
table_name (str): Target Kuzu table name
|
|
19
|
+
data_reference (str): Reference to uploaded DataFrame data
|
|
20
|
+
ignore_errors (Union[Unset, bool]): Skip duplicate/invalid rows (enables upsert-like behavior) Default: True.
|
|
21
|
+
extended_timeout (Union[Unset, bool]): Use extended timeout for large datasets Default: False.
|
|
22
|
+
validate_schema (Union[Unset, bool]): Validate source schema against target table Default: True.
|
|
23
|
+
source_type (Union[Literal['dataframe'], Unset]): Source type identifier Default: 'dataframe'.
|
|
24
|
+
format_ (Union[Unset, DataFrameCopyRequestFormat]): DataFrame format Default: DataFrameCopyRequestFormat.PANDAS.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
table_name: str
|
|
28
|
+
data_reference: str
|
|
29
|
+
ignore_errors: Union[Unset, bool] = True
|
|
30
|
+
extended_timeout: Union[Unset, bool] = False
|
|
31
|
+
validate_schema: Union[Unset, bool] = True
|
|
32
|
+
source_type: Union[Literal["dataframe"], Unset] = "dataframe"
|
|
33
|
+
format_: Union[Unset, DataFrameCopyRequestFormat] = DataFrameCopyRequestFormat.PANDAS
|
|
34
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
35
|
+
|
|
36
|
+
def to_dict(self) -> dict[str, Any]:
|
|
37
|
+
table_name = self.table_name
|
|
38
|
+
|
|
39
|
+
data_reference = self.data_reference
|
|
40
|
+
|
|
41
|
+
ignore_errors = self.ignore_errors
|
|
42
|
+
|
|
43
|
+
extended_timeout = self.extended_timeout
|
|
44
|
+
|
|
45
|
+
validate_schema = self.validate_schema
|
|
46
|
+
|
|
47
|
+
source_type = self.source_type
|
|
48
|
+
|
|
49
|
+
format_: Union[Unset, str] = UNSET
|
|
50
|
+
if not isinstance(self.format_, Unset):
|
|
51
|
+
format_ = self.format_.value
|
|
52
|
+
|
|
53
|
+
field_dict: dict[str, Any] = {}
|
|
54
|
+
field_dict.update(self.additional_properties)
|
|
55
|
+
field_dict.update(
|
|
56
|
+
{
|
|
57
|
+
"table_name": table_name,
|
|
58
|
+
"data_reference": data_reference,
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
if ignore_errors is not UNSET:
|
|
62
|
+
field_dict["ignore_errors"] = ignore_errors
|
|
63
|
+
if extended_timeout is not UNSET:
|
|
64
|
+
field_dict["extended_timeout"] = extended_timeout
|
|
65
|
+
if validate_schema is not UNSET:
|
|
66
|
+
field_dict["validate_schema"] = validate_schema
|
|
67
|
+
if source_type is not UNSET:
|
|
68
|
+
field_dict["source_type"] = source_type
|
|
69
|
+
if format_ is not UNSET:
|
|
70
|
+
field_dict["format"] = format_
|
|
71
|
+
|
|
72
|
+
return field_dict
|
|
73
|
+
|
|
74
|
+
@classmethod
|
|
75
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
76
|
+
d = dict(src_dict)
|
|
77
|
+
table_name = d.pop("table_name")
|
|
78
|
+
|
|
79
|
+
data_reference = d.pop("data_reference")
|
|
80
|
+
|
|
81
|
+
ignore_errors = d.pop("ignore_errors", UNSET)
|
|
82
|
+
|
|
83
|
+
extended_timeout = d.pop("extended_timeout", UNSET)
|
|
84
|
+
|
|
85
|
+
validate_schema = d.pop("validate_schema", UNSET)
|
|
86
|
+
|
|
87
|
+
source_type = cast(Union[Literal["dataframe"], Unset], d.pop("source_type", UNSET))
|
|
88
|
+
if source_type != "dataframe" and not isinstance(source_type, Unset):
|
|
89
|
+
raise ValueError(f"source_type must match const 'dataframe', got '{source_type}'")
|
|
90
|
+
|
|
91
|
+
_format_ = d.pop("format", UNSET)
|
|
92
|
+
format_: Union[Unset, DataFrameCopyRequestFormat]
|
|
93
|
+
if isinstance(_format_, Unset):
|
|
94
|
+
format_ = UNSET
|
|
95
|
+
else:
|
|
96
|
+
format_ = DataFrameCopyRequestFormat(_format_)
|
|
97
|
+
|
|
98
|
+
data_frame_copy_request = cls(
|
|
99
|
+
table_name=table_name,
|
|
100
|
+
data_reference=data_reference,
|
|
101
|
+
ignore_errors=ignore_errors,
|
|
102
|
+
extended_timeout=extended_timeout,
|
|
103
|
+
validate_schema=validate_schema,
|
|
104
|
+
source_type=source_type,
|
|
105
|
+
format_=format_,
|
|
106
|
+
)
|
|
107
|
+
|
|
108
|
+
data_frame_copy_request.additional_properties = d
|
|
109
|
+
return data_frame_copy_request
|
|
110
|
+
|
|
111
|
+
@property
|
|
112
|
+
def additional_keys(self) -> list[str]:
|
|
113
|
+
return list(self.additional_properties.keys())
|
|
114
|
+
|
|
115
|
+
def __getitem__(self, key: str) -> Any:
|
|
116
|
+
return self.additional_properties[key]
|
|
117
|
+
|
|
118
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
119
|
+
self.additional_properties[key] = value
|
|
120
|
+
|
|
121
|
+
def __delitem__(self, key: str) -> None:
|
|
122
|
+
del self.additional_properties[key]
|
|
123
|
+
|
|
124
|
+
def __contains__(self, key: str) -> bool:
|
|
125
|
+
return key in self.additional_properties
|