stackit-cost 0.1.0__tar.gz → 0.3.0__tar.gz
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.
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/PKG-INFO +3 -4
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/pyproject.toml +7 -7
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/__init__.py +5 -6
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/api/default_api.py +5 -5
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/api_client.py +20 -23
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/api_response.py +0 -1
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/configuration.py +5 -6
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/exceptions.py +5 -5
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/__init__.py +5 -5
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/auth_error_response.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/detailed_service_cost.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/error_response.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/project_cost.py +5 -6
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/project_cost_with_detailed_services.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/project_cost_with_reports.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/project_cost_with_summarized_services.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/report_data.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/report_data_time_period.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/summarized_project_cost.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/summarized_service_cost.py +9 -8
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/rest.py +5 -6
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/.gitignore +0 -0
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/README.md +0 -0
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/api/__init__.py +0 -0
- {stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/py.typed +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: stackit-cost
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: STACKIT Cost API
|
|
5
5
|
Project-URL: Homepage, https://github.com/stackitcloud/stackit-sdk-python
|
|
6
6
|
Project-URL: Issues, https://github.com/stackitcloud/stackit-sdk-python/issues
|
|
@@ -8,16 +8,15 @@ Author-email: STACKIT Developer Tools <developer-tools@stackit.cloud>
|
|
|
8
8
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
9
9
|
Classifier: Operating System :: OS Independent
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
12
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
13
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
13
|
Classifier: Programming Language :: Python :: 3.12
|
|
15
14
|
Classifier: Programming Language :: Python :: 3.13
|
|
16
15
|
Classifier: Programming Language :: Python :: 3.14
|
|
17
|
-
Requires-Python: <4.0,>=3.
|
|
16
|
+
Requires-Python: <4.0,>=3.10
|
|
18
17
|
Requires-Dist: pydantic>=2.9.2
|
|
19
18
|
Requires-Dist: python-dateutil>=2.9.0.post0
|
|
20
|
-
Requires-Dist: requests>=2.
|
|
19
|
+
Requires-Dist: requests>=2.33.0
|
|
21
20
|
Requires-Dist: stackit-core>=0.0.1a
|
|
22
21
|
Description-Content-Type: text/markdown
|
|
23
22
|
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "stackit-cost"
|
|
3
|
-
version = "v0.
|
|
3
|
+
version = "v0.3.0"
|
|
4
4
|
description = "STACKIT Cost API"
|
|
5
5
|
authors = [{name = "STACKIT Developer Tools", email = "developer-tools@stackit.cloud"}]
|
|
6
|
-
requires-python = ">=3.
|
|
6
|
+
requires-python = ">=3.10,<4.0"
|
|
7
7
|
readme = "README.md"
|
|
8
8
|
classifiers = [
|
|
9
9
|
"Programming Language :: Python :: 3",
|
|
10
10
|
"License :: OSI Approved :: Apache Software License",
|
|
11
11
|
"Operating System :: OS Independent",
|
|
12
|
-
"Programming Language :: Python :: 3.9",
|
|
13
12
|
"Programming Language :: Python :: 3.10",
|
|
14
13
|
"Programming Language :: Python :: 3.11",
|
|
15
14
|
"Programming Language :: Python :: 3.12",
|
|
@@ -18,7 +17,7 @@ classifiers = [
|
|
|
18
17
|
]
|
|
19
18
|
dependencies = [
|
|
20
19
|
"stackit-core>=0.0.1a",
|
|
21
|
-
"requests>=2.
|
|
20
|
+
"requests>=2.33.0",
|
|
22
21
|
"pydantic>=2.9.2",
|
|
23
22
|
"python-dateutil>=2.9.0.post0",
|
|
24
23
|
]
|
|
@@ -29,8 +28,8 @@ Issues = "https://github.com/stackitcloud/stackit-sdk-python/issues"
|
|
|
29
28
|
|
|
30
29
|
[dependency-groups]
|
|
31
30
|
dev = [
|
|
32
|
-
"black>=
|
|
33
|
-
"pytest>=
|
|
31
|
+
"black>=26.3.1",
|
|
32
|
+
"pytest>=9.1.1",
|
|
34
33
|
"flake8>=5.0.3 ; python_full_version < '3.12'",
|
|
35
34
|
"flake8>=6.0.1 ; python_full_version >= '3.12'",
|
|
36
35
|
"flake8-black>=0.3.6",
|
|
@@ -102,7 +101,8 @@ show-source = false
|
|
|
102
101
|
max-line-length = 120
|
|
103
102
|
# E203,W503 and E704 are incompatible with the formatter black
|
|
104
103
|
# W291 needs to be disabled because some doc-strings get generated with trailing whitespace but black won't re-format comments
|
|
105
|
-
|
|
104
|
+
# fixing B042 in upstream exceptions.mustache would be a breaking change
|
|
105
|
+
ignore = ["E203", "W503", "E704", "W291", "B042"]
|
|
106
106
|
inline-quotes = '"'
|
|
107
107
|
docstring-quotes = '"""'
|
|
108
108
|
multiline-quotes = '"""'
|
|
@@ -3,17 +3,16 @@
|
|
|
3
3
|
# flake8: noqa
|
|
4
4
|
|
|
5
5
|
"""
|
|
6
|
-
|
|
6
|
+
STACKIT Cost API
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
The version of the OpenAPI document: 3.0
|
|
11
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Do not edit the class manually.
|
|
14
14
|
""" # noqa: E501
|
|
15
15
|
|
|
16
|
-
|
|
17
16
|
__version__ = "1.0.0"
|
|
18
17
|
|
|
19
18
|
# Define package exports
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from datetime import date
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
import datetime
|
|
@@ -36,7 +36,6 @@ from stackit.cost.exceptions import (
|
|
|
36
36
|
ApiException,
|
|
37
37
|
)
|
|
38
38
|
|
|
39
|
-
|
|
40
39
|
RequestSerialized = Tuple[str, str, Dict[str, str], Optional[str], List[str]]
|
|
41
40
|
|
|
42
41
|
|
|
@@ -66,6 +65,7 @@ class ApiClient:
|
|
|
66
65
|
"date": datetime.date,
|
|
67
66
|
"datetime": datetime.datetime,
|
|
68
67
|
"decimal": decimal.Decimal,
|
|
68
|
+
"UUID": uuid.UUID,
|
|
69
69
|
"object": object,
|
|
70
70
|
}
|
|
71
71
|
_pool = None
|
|
@@ -265,7 +265,7 @@ class ApiClient:
|
|
|
265
265
|
response_text = None
|
|
266
266
|
return_data = None
|
|
267
267
|
try:
|
|
268
|
-
if response_type
|
|
268
|
+
if response_type in ("bytearray", "bytes"):
|
|
269
269
|
return_data = response_data.data
|
|
270
270
|
elif response_type == "file":
|
|
271
271
|
return_data = self.__deserialize_file(response_data)
|
|
@@ -326,25 +326,20 @@ class ApiClient:
|
|
|
326
326
|
return obj.isoformat()
|
|
327
327
|
elif isinstance(obj, decimal.Decimal):
|
|
328
328
|
return str(obj)
|
|
329
|
-
|
|
330
329
|
elif isinstance(obj, dict):
|
|
331
|
-
|
|
330
|
+
return {key: self.sanitize_for_serialization(val) for key, val in obj.items()}
|
|
331
|
+
|
|
332
|
+
# Convert model obj to dict except
|
|
333
|
+
# attributes `openapi_types`, `attribute_map`
|
|
334
|
+
# and attributes which value is not None.
|
|
335
|
+
# Convert attribute name to json key in
|
|
336
|
+
# model definition for request.
|
|
337
|
+
if hasattr(obj, "to_dict") and callable(getattr(obj, "to_dict")): # noqa: B009
|
|
338
|
+
obj_dict = obj.to_dict()
|
|
332
339
|
else:
|
|
333
|
-
|
|
334
|
-
# attributes `openapi_types`, `attribute_map`
|
|
335
|
-
# and attributes which value is not None.
|
|
336
|
-
# Convert attribute name to json key in
|
|
337
|
-
# model definition for request.
|
|
338
|
-
if hasattr(obj, "to_dict") and callable(getattr(obj, "to_dict")): # noqa: B009
|
|
339
|
-
obj_dict = obj.to_dict()
|
|
340
|
-
else:
|
|
341
|
-
obj_dict = obj.__dict__
|
|
342
|
-
|
|
343
|
-
if isinstance(obj_dict, list):
|
|
344
|
-
# here we handle instances that can either be a list or something else, and only became a real list by calling to_dict() # noqa: E501
|
|
345
|
-
return self.sanitize_for_serialization(obj_dict)
|
|
340
|
+
obj_dict = obj.__dict__
|
|
346
341
|
|
|
347
|
-
return
|
|
342
|
+
return self.sanitize_for_serialization(obj_dict)
|
|
348
343
|
|
|
349
344
|
def deserialize(self, response_text: str, response_type: str, content_type: Optional[str]):
|
|
350
345
|
"""Deserializes response into an object.
|
|
@@ -417,6 +412,8 @@ class ApiClient:
|
|
|
417
412
|
return self.__deserialize_datetime(data)
|
|
418
413
|
elif klass is decimal.Decimal:
|
|
419
414
|
return decimal.Decimal(data)
|
|
415
|
+
elif klass is uuid.UUID:
|
|
416
|
+
return uuid.UUID(data)
|
|
420
417
|
elif issubclass(klass, Enum):
|
|
421
418
|
return self.__deserialize_enum(data, klass)
|
|
422
419
|
else:
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
import sys
|
|
@@ -18,7 +18,6 @@ from typing_extensions import NotRequired
|
|
|
18
18
|
|
|
19
19
|
import os
|
|
20
20
|
|
|
21
|
-
|
|
22
21
|
ServerVariablesT = Dict[str, str]
|
|
23
22
|
|
|
24
23
|
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from typing import Any, Optional
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
# flake8: noqa
|
|
4
4
|
"""
|
|
5
|
-
|
|
5
|
+
STACKIT Cost API
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
The version of the OpenAPI document: 3.0
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Do not edit the class manually.
|
|
13
13
|
""" # noqa: E501
|
|
14
14
|
|
|
15
15
|
# import models into model package
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -20,6 +20,7 @@ from datetime import datetime
|
|
|
20
20
|
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
21
21
|
|
|
22
22
|
from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr, field_validator
|
|
23
|
+
from pydantic_core import to_jsonable_python
|
|
23
24
|
from typing_extensions import Self
|
|
24
25
|
|
|
25
26
|
|
|
@@ -49,7 +50,8 @@ class AuthErrorResponse(BaseModel):
|
|
|
49
50
|
return value
|
|
50
51
|
|
|
51
52
|
model_config = ConfigDict(
|
|
52
|
-
|
|
53
|
+
validate_by_name=True,
|
|
54
|
+
validate_by_alias=True,
|
|
53
55
|
validate_assignment=True,
|
|
54
56
|
protected_namespaces=(),
|
|
55
57
|
)
|
|
@@ -60,8 +62,7 @@ class AuthErrorResponse(BaseModel):
|
|
|
60
62
|
|
|
61
63
|
def to_json(self) -> str:
|
|
62
64
|
"""Returns the JSON representation of the model using alias"""
|
|
63
|
-
|
|
64
|
-
return json.dumps(self.to_dict())
|
|
65
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
65
66
|
|
|
66
67
|
@classmethod
|
|
67
68
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -24,6 +24,7 @@ from pydantic import (
|
|
|
24
24
|
StrictFloat,
|
|
25
25
|
StrictInt,
|
|
26
26
|
)
|
|
27
|
+
from pydantic_core import to_jsonable_python
|
|
27
28
|
from typing_extensions import Annotated, Self
|
|
28
29
|
|
|
29
30
|
from stackit.cost.models.report_data import ReportData
|
|
@@ -70,7 +71,8 @@ class DetailedServiceCost(BaseModel):
|
|
|
70
71
|
]
|
|
71
72
|
|
|
72
73
|
model_config = ConfigDict(
|
|
73
|
-
|
|
74
|
+
validate_by_name=True,
|
|
75
|
+
validate_by_alias=True,
|
|
74
76
|
validate_assignment=True,
|
|
75
77
|
protected_namespaces=(),
|
|
76
78
|
)
|
|
@@ -81,8 +83,7 @@ class DetailedServiceCost(BaseModel):
|
|
|
81
83
|
|
|
82
84
|
def to_json(self) -> str:
|
|
83
85
|
"""Returns the JSON representation of the model using alias"""
|
|
84
|
-
|
|
85
|
-
return json.dumps(self.to_dict())
|
|
86
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
86
87
|
|
|
87
88
|
@classmethod
|
|
88
89
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -18,6 +18,7 @@ import pprint
|
|
|
18
18
|
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
19
19
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, StrictStr
|
|
21
|
+
from pydantic_core import to_jsonable_python
|
|
21
22
|
from typing_extensions import Self
|
|
22
23
|
|
|
23
24
|
|
|
@@ -30,7 +31,8 @@ class ErrorResponse(BaseModel):
|
|
|
30
31
|
__properties: ClassVar[List[str]] = ["msg"]
|
|
31
32
|
|
|
32
33
|
model_config = ConfigDict(
|
|
33
|
-
|
|
34
|
+
validate_by_name=True,
|
|
35
|
+
validate_by_alias=True,
|
|
34
36
|
validate_assignment=True,
|
|
35
37
|
protected_namespaces=(),
|
|
36
38
|
)
|
|
@@ -41,8 +43,7 @@ class ErrorResponse(BaseModel):
|
|
|
41
43
|
|
|
42
44
|
def to_json(self) -> str:
|
|
43
45
|
"""Returns the JSON representation of the model using alias"""
|
|
44
|
-
|
|
45
|
-
return json.dumps(self.to_dict())
|
|
46
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
46
47
|
|
|
47
48
|
@classmethod
|
|
48
49
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -33,7 +33,6 @@ from stackit.cost.models.project_cost_with_summarized_services import (
|
|
|
33
33
|
)
|
|
34
34
|
from stackit.cost.models.summarized_project_cost import SummarizedProjectCost
|
|
35
35
|
|
|
36
|
-
|
|
37
36
|
PROJECTCOST_ANY_OF_SCHEMAS = [
|
|
38
37
|
"ProjectCostWithDetailedServices",
|
|
39
38
|
"ProjectCostWithReports",
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -26,6 +26,7 @@ from pydantic import (
|
|
|
26
26
|
StrictInt,
|
|
27
27
|
StrictStr,
|
|
28
28
|
)
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
from typing_extensions import Self
|
|
30
31
|
|
|
31
32
|
from stackit.cost.models.detailed_service_cost import DetailedServiceCost
|
|
@@ -61,7 +62,8 @@ class ProjectCostWithDetailedServices(BaseModel):
|
|
|
61
62
|
]
|
|
62
63
|
|
|
63
64
|
model_config = ConfigDict(
|
|
64
|
-
|
|
65
|
+
validate_by_name=True,
|
|
66
|
+
validate_by_alias=True,
|
|
65
67
|
validate_assignment=True,
|
|
66
68
|
protected_namespaces=(),
|
|
67
69
|
)
|
|
@@ -72,8 +74,7 @@ class ProjectCostWithDetailedServices(BaseModel):
|
|
|
72
74
|
|
|
73
75
|
def to_json(self) -> str:
|
|
74
76
|
"""Returns the JSON representation of the model using alias"""
|
|
75
|
-
|
|
76
|
-
return json.dumps(self.to_dict())
|
|
77
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
77
78
|
|
|
78
79
|
@classmethod
|
|
79
80
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
{stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/project_cost_with_reports.py
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -26,6 +26,7 @@ from pydantic import (
|
|
|
26
26
|
StrictInt,
|
|
27
27
|
StrictStr,
|
|
28
28
|
)
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
from typing_extensions import Self
|
|
30
31
|
|
|
31
32
|
from stackit.cost.models.report_data import ReportData
|
|
@@ -62,7 +63,8 @@ class ProjectCostWithReports(BaseModel):
|
|
|
62
63
|
]
|
|
63
64
|
|
|
64
65
|
model_config = ConfigDict(
|
|
65
|
-
|
|
66
|
+
validate_by_name=True,
|
|
67
|
+
validate_by_alias=True,
|
|
66
68
|
validate_assignment=True,
|
|
67
69
|
protected_namespaces=(),
|
|
68
70
|
)
|
|
@@ -73,8 +75,7 @@ class ProjectCostWithReports(BaseModel):
|
|
|
73
75
|
|
|
74
76
|
def to_json(self) -> str:
|
|
75
77
|
"""Returns the JSON representation of the model using alias"""
|
|
76
|
-
|
|
77
|
-
return json.dumps(self.to_dict())
|
|
78
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
78
79
|
|
|
79
80
|
@classmethod
|
|
80
81
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -26,6 +26,7 @@ from pydantic import (
|
|
|
26
26
|
StrictInt,
|
|
27
27
|
StrictStr,
|
|
28
28
|
)
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
from typing_extensions import Self
|
|
30
31
|
|
|
31
32
|
from stackit.cost.models.summarized_service_cost import SummarizedServiceCost
|
|
@@ -58,7 +59,8 @@ class ProjectCostWithSummarizedServices(BaseModel):
|
|
|
58
59
|
]
|
|
59
60
|
|
|
60
61
|
model_config = ConfigDict(
|
|
61
|
-
|
|
62
|
+
validate_by_name=True,
|
|
63
|
+
validate_by_alias=True,
|
|
62
64
|
validate_assignment=True,
|
|
63
65
|
protected_namespaces=(),
|
|
64
66
|
)
|
|
@@ -69,8 +71,7 @@ class ProjectCostWithSummarizedServices(BaseModel):
|
|
|
69
71
|
|
|
70
72
|
def to_json(self) -> str:
|
|
71
73
|
"""Returns the JSON representation of the model using alias"""
|
|
72
|
-
|
|
73
|
-
return json.dumps(self.to_dict())
|
|
74
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
74
75
|
|
|
75
76
|
@classmethod
|
|
76
77
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -24,6 +24,7 @@ from pydantic import (
|
|
|
24
24
|
StrictFloat,
|
|
25
25
|
StrictInt,
|
|
26
26
|
)
|
|
27
|
+
from pydantic_core import to_jsonable_python
|
|
27
28
|
from typing_extensions import Self
|
|
28
29
|
|
|
29
30
|
from stackit.cost.models.report_data_time_period import ReportDataTimePeriod
|
|
@@ -41,7 +42,8 @@ class ReportData(BaseModel):
|
|
|
41
42
|
__properties: ClassVar[List[str]] = ["charge", "discount", "quantity", "timePeriod"]
|
|
42
43
|
|
|
43
44
|
model_config = ConfigDict(
|
|
44
|
-
|
|
45
|
+
validate_by_name=True,
|
|
46
|
+
validate_by_alias=True,
|
|
45
47
|
validate_assignment=True,
|
|
46
48
|
protected_namespaces=(),
|
|
47
49
|
)
|
|
@@ -52,8 +54,7 @@ class ReportData(BaseModel):
|
|
|
52
54
|
|
|
53
55
|
def to_json(self) -> str:
|
|
54
56
|
"""Returns the JSON representation of the model using alias"""
|
|
55
|
-
|
|
56
|
-
return json.dumps(self.to_dict())
|
|
57
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
57
58
|
|
|
58
59
|
@classmethod
|
|
59
60
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
{stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/report_data_time_period.py
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -19,6 +19,7 @@ from datetime import date
|
|
|
19
19
|
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
20
20
|
|
|
21
21
|
from pydantic import BaseModel, ConfigDict
|
|
22
|
+
from pydantic_core import to_jsonable_python
|
|
22
23
|
from typing_extensions import Self
|
|
23
24
|
|
|
24
25
|
|
|
@@ -32,7 +33,8 @@ class ReportDataTimePeriod(BaseModel):
|
|
|
32
33
|
__properties: ClassVar[List[str]] = ["end", "start"]
|
|
33
34
|
|
|
34
35
|
model_config = ConfigDict(
|
|
35
|
-
|
|
36
|
+
validate_by_name=True,
|
|
37
|
+
validate_by_alias=True,
|
|
36
38
|
validate_assignment=True,
|
|
37
39
|
protected_namespaces=(),
|
|
38
40
|
)
|
|
@@ -43,8 +45,7 @@ class ReportDataTimePeriod(BaseModel):
|
|
|
43
45
|
|
|
44
46
|
def to_json(self) -> str:
|
|
45
47
|
"""Returns the JSON representation of the model using alias"""
|
|
46
|
-
|
|
47
|
-
return json.dumps(self.to_dict())
|
|
48
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
48
49
|
|
|
49
50
|
@classmethod
|
|
50
51
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
{stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/summarized_project_cost.py
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -26,6 +26,7 @@ from pydantic import (
|
|
|
26
26
|
StrictInt,
|
|
27
27
|
StrictStr,
|
|
28
28
|
)
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
from typing_extensions import Self
|
|
30
31
|
|
|
31
32
|
|
|
@@ -54,7 +55,8 @@ class SummarizedProjectCost(BaseModel):
|
|
|
54
55
|
]
|
|
55
56
|
|
|
56
57
|
model_config = ConfigDict(
|
|
57
|
-
|
|
58
|
+
validate_by_name=True,
|
|
59
|
+
validate_by_alias=True,
|
|
58
60
|
validate_assignment=True,
|
|
59
61
|
protected_namespaces=(),
|
|
60
62
|
)
|
|
@@ -65,8 +67,7 @@ class SummarizedProjectCost(BaseModel):
|
|
|
65
67
|
|
|
66
68
|
def to_json(self) -> str:
|
|
67
69
|
"""Returns the JSON representation of the model using alias"""
|
|
68
|
-
|
|
69
|
-
return json.dumps(self.to_dict())
|
|
70
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
70
71
|
|
|
71
72
|
@classmethod
|
|
72
73
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
{stackit_cost-0.1.0 → stackit_cost-0.3.0}/src/stackit/cost/models/summarized_service_cost.py
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
from __future__ import annotations
|
|
@@ -26,6 +26,7 @@ from pydantic import (
|
|
|
26
26
|
StrictInt,
|
|
27
27
|
StrictStr,
|
|
28
28
|
)
|
|
29
|
+
from pydantic_core import to_jsonable_python
|
|
29
30
|
from typing_extensions import Self
|
|
30
31
|
|
|
31
32
|
|
|
@@ -54,7 +55,8 @@ class SummarizedServiceCost(BaseModel):
|
|
|
54
55
|
]
|
|
55
56
|
|
|
56
57
|
model_config = ConfigDict(
|
|
57
|
-
|
|
58
|
+
validate_by_name=True,
|
|
59
|
+
validate_by_alias=True,
|
|
58
60
|
validate_assignment=True,
|
|
59
61
|
protected_namespaces=(),
|
|
60
62
|
)
|
|
@@ -65,8 +67,7 @@ class SummarizedServiceCost(BaseModel):
|
|
|
65
67
|
|
|
66
68
|
def to_json(self) -> str:
|
|
67
69
|
"""Returns the JSON representation of the model using alias"""
|
|
68
|
-
|
|
69
|
-
return json.dumps(self.to_dict())
|
|
70
|
+
return json.dumps(to_jsonable_python(self.to_dict()))
|
|
70
71
|
|
|
71
72
|
@classmethod
|
|
72
73
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
|
|
4
|
+
STACKIT Cost API
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
The cost API provides detailed reports on the costs for a customer or project over a certain amount of time
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The version of the OpenAPI document: 3.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Do not edit the class manually.
|
|
12
12
|
""" # noqa: E501
|
|
13
13
|
|
|
14
14
|
import io
|
|
@@ -21,7 +21,6 @@ from stackit.core.configuration import Configuration
|
|
|
21
21
|
|
|
22
22
|
from stackit.cost.exceptions import ApiException, ApiValueError
|
|
23
23
|
|
|
24
|
-
|
|
25
24
|
RESTResponseType = requests.Response
|
|
26
25
|
|
|
27
26
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|