stackit-stackitmarketplace 1.10.0__tar.gz → 1.12.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_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/PKG-INFO +5 -2
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/pyproject.toml +1 -1
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_detail.py +19 -3
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_details_vendor.py +4 -11
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_overview.py +4 -11
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/LICENSE.md +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/NOTICE.txt +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/README.md +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/__init__.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/api/__init__.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/api/default_api.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/api_client.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/api_response.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/configuration.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/exceptions.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/__init__.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/approve_subscription_payload.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/assets.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/become_vendor.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_pricing_option_highlight.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_facets_value_inner.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_highlight.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_overview_vendor.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_pricing_option.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_support_resource.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/catalog_product_vendor_terms.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/contact_sales.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/delivery_method.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/error_response.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/free_trial.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/inquiries_create_inquiry_payload.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/inquiry_become_vendor.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/inquiry_contact_sales.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/inquiry_form_type.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/inquiry_register_testing.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/inquiry_request_private_plan.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/inquiry_suggest_product.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/list_catalog_products_response.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/list_vendor_subscriptions_response.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/localized_version.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/notice_period.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/offer_type.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/price_type.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/pricing_option_unit.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/product_lifecycle_state.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/register_testing.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/request_private_plan.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/resolve_customer_payload.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/service_certificate.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/subscription_lifecycle_state.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/subscription_product.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/suggest_product.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/models/vendor_subscription.py +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/py.typed +0 -0
- {stackit_stackitmarketplace-1.10.0 → stackit_stackitmarketplace-1.12.0}/src/stackit/stackitmarketplace/rest.py +0 -0
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: stackit-stackitmarketplace
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.12.0
|
|
4
4
|
Summary: STACKIT Marketplace API
|
|
5
|
+
License-File: LICENSE.md
|
|
6
|
+
License-File: NOTICE.txt
|
|
5
7
|
Author: STACKIT Developer Tools
|
|
6
8
|
Author-email: developer-tools@stackit.cloud
|
|
7
9
|
Requires-Python: >=3.9,<4.0
|
|
@@ -13,6 +15,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
13
15
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
15
17
|
Classifier: Programming Language :: Python :: 3.13
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
16
19
|
Requires-Dist: pydantic (>=2.9.2)
|
|
17
20
|
Requires-Dist: python-dateutil (>=2.9.0.post0)
|
|
18
21
|
Requires-Dist: requests (>=2.32.3)
|
|
@@ -17,14 +17,13 @@ from __future__ import annotations
|
|
|
17
17
|
import json
|
|
18
18
|
import pprint
|
|
19
19
|
import re # noqa: F401
|
|
20
|
-
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
20
|
+
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
21
21
|
|
|
22
22
|
from pydantic import (
|
|
23
23
|
BaseModel,
|
|
24
24
|
ConfigDict,
|
|
25
25
|
Field,
|
|
26
26
|
StrictBool,
|
|
27
|
-
StrictBytes,
|
|
28
27
|
StrictStr,
|
|
29
28
|
field_validator,
|
|
30
29
|
)
|
|
@@ -63,6 +62,9 @@ class CatalogProductDetail(BaseModel):
|
|
|
63
62
|
default=None, description="The list of categories associated to the product."
|
|
64
63
|
)
|
|
65
64
|
delivery_method: DeliveryMethod = Field(alias="deliveryMethod")
|
|
65
|
+
demo_url: Optional[Annotated[str, Field(strict=True, max_length=512)]] = Field(
|
|
66
|
+
default=None, description="The URL to a demo if available.", alias="demoUrl"
|
|
67
|
+
)
|
|
66
68
|
description: StrictStr = Field(description="The product description.")
|
|
67
69
|
documentation_url: Annotated[str, Field(strict=True, max_length=512)] = Field(
|
|
68
70
|
description="The documentation URL.", alias="documentationUrl"
|
|
@@ -78,7 +80,7 @@ class CatalogProductDetail(BaseModel):
|
|
|
78
80
|
alias="isProductListing",
|
|
79
81
|
)
|
|
80
82
|
lifecycle_state: ProductLifecycleState = Field(alias="lifecycleState")
|
|
81
|
-
logo:
|
|
83
|
+
logo: StrictStr = Field(description="The logo information.")
|
|
82
84
|
name: Annotated[str, Field(strict=True, max_length=512)] = Field(description="The name of the product.")
|
|
83
85
|
offer_type: OfferType = Field(alias="offerType")
|
|
84
86
|
pricing_options: List[CatalogProductPricingOption] = Field(
|
|
@@ -108,6 +110,7 @@ class CatalogProductDetail(BaseModel):
|
|
|
108
110
|
"assets",
|
|
109
111
|
"categories",
|
|
110
112
|
"deliveryMethod",
|
|
113
|
+
"demoUrl",
|
|
111
114
|
"description",
|
|
112
115
|
"documentationUrl",
|
|
113
116
|
"email",
|
|
@@ -129,6 +132,18 @@ class CatalogProductDetail(BaseModel):
|
|
|
129
132
|
"videoUrl",
|
|
130
133
|
]
|
|
131
134
|
|
|
135
|
+
@field_validator("demo_url")
|
|
136
|
+
def demo_url_validate_regular_expression(cls, value):
|
|
137
|
+
"""Validates the regular expression"""
|
|
138
|
+
if value is None:
|
|
139
|
+
return value
|
|
140
|
+
|
|
141
|
+
if not re.match(r"^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$", value):
|
|
142
|
+
raise ValueError(
|
|
143
|
+
r"must validate the regular expression /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/"
|
|
144
|
+
)
|
|
145
|
+
return value
|
|
146
|
+
|
|
132
147
|
@field_validator("documentation_url")
|
|
133
148
|
def documentation_url_validate_regular_expression(cls, value):
|
|
134
149
|
"""Validates the regular expression"""
|
|
@@ -260,6 +275,7 @@ class CatalogProductDetail(BaseModel):
|
|
|
260
275
|
"assets": Assets.from_dict(obj["assets"]) if obj.get("assets") is not None else None,
|
|
261
276
|
"categories": obj.get("categories"),
|
|
262
277
|
"deliveryMethod": obj.get("deliveryMethod"),
|
|
278
|
+
"demoUrl": obj.get("demoUrl"),
|
|
263
279
|
"description": obj.get("description"),
|
|
264
280
|
"documentationUrl": obj.get("documentationUrl"),
|
|
265
281
|
"email": obj.get("email"),
|
|
@@ -17,16 +17,9 @@ from __future__ import annotations
|
|
|
17
17
|
import json
|
|
18
18
|
import pprint
|
|
19
19
|
import re # noqa: F401
|
|
20
|
-
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
21
|
-
|
|
22
|
-
from pydantic import
|
|
23
|
-
BaseModel,
|
|
24
|
-
ConfigDict,
|
|
25
|
-
Field,
|
|
26
|
-
StrictBytes,
|
|
27
|
-
StrictStr,
|
|
28
|
-
field_validator,
|
|
29
|
-
)
|
|
20
|
+
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
21
|
+
|
|
22
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
30
23
|
from typing_extensions import Annotated, Self
|
|
31
24
|
|
|
32
25
|
|
|
@@ -36,7 +29,7 @@ class CatalogProductDetailsVendor(BaseModel):
|
|
|
36
29
|
""" # noqa: E501
|
|
37
30
|
|
|
38
31
|
description: StrictStr = Field(description="The vendor description.")
|
|
39
|
-
logo:
|
|
32
|
+
logo: StrictStr = Field(description="The logo information.")
|
|
40
33
|
name: Annotated[str, Field(strict=True, max_length=512)] = Field(description="The product's vendor name.")
|
|
41
34
|
vendor_id: Annotated[str, Field(min_length=36, strict=True, max_length=36)] = Field(
|
|
42
35
|
description="Universally Unique Identifier (UUID).", alias="vendorId"
|
|
@@ -17,16 +17,9 @@ from __future__ import annotations
|
|
|
17
17
|
import json
|
|
18
18
|
import pprint
|
|
19
19
|
import re # noqa: F401
|
|
20
|
-
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
21
|
-
|
|
22
|
-
from pydantic import
|
|
23
|
-
BaseModel,
|
|
24
|
-
ConfigDict,
|
|
25
|
-
Field,
|
|
26
|
-
StrictBytes,
|
|
27
|
-
StrictStr,
|
|
28
|
-
field_validator,
|
|
29
|
-
)
|
|
20
|
+
from typing import Any, ClassVar, Dict, List, Optional, Set
|
|
21
|
+
|
|
22
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
30
23
|
from typing_extensions import Annotated, Self
|
|
31
24
|
|
|
32
25
|
from stackit.stackitmarketplace.models.catalog_product_overview_vendor import (
|
|
@@ -47,7 +40,7 @@ class CatalogProductOverview(BaseModel):
|
|
|
47
40
|
delivery_method: DeliveryMethod = Field(alias="deliveryMethod")
|
|
48
41
|
free_trial: Optional[FreeTrial] = Field(default=None, alias="freeTrial")
|
|
49
42
|
lifecycle_state: ProductLifecycleState = Field(alias="lifecycleState")
|
|
50
|
-
logo: Optional[
|
|
43
|
+
logo: Optional[StrictStr] = Field(default=None, description="The logo information.")
|
|
51
44
|
name: Annotated[str, Field(strict=True, max_length=512)] = Field(description="The name of the product.")
|
|
52
45
|
product_id: Annotated[str, Field(min_length=10, strict=True, max_length=29)] = Field(
|
|
53
46
|
description="The user-readable product ID.", alias="productId"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|