scc-firewall-manager-sdk 1.15.195__py3-none-any.whl → 1.15.563__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.
- scc_firewall_manager_sdk/__init__.py +19 -2
- scc_firewall_manager_sdk/api/__init__.py +2 -0
- scc_firewall_manager_sdk/api/ai_assistant_api.py +12 -12
- scc_firewall_manager_sdk/api/asa_access_groups_api.py +12 -12
- scc_firewall_manager_sdk/api/asa_access_rules_api.py +12 -12
- scc_firewall_manager_sdk/api/asa_interfaces_api.py +72 -72
- scc_firewall_manager_sdk/api/audit_logs_api.py +12 -12
- scc_firewall_manager_sdk/api/change_requests_api.py +12 -12
- scc_firewall_manager_sdk/api/changelogs_api.py +12 -12
- scc_firewall_manager_sdk/api/command_line_interface_api.py +24 -24
- scc_firewall_manager_sdk/api/connectors_api.py +12 -12
- scc_firewall_manager_sdk/api/device_health_aggregations_api.py +19 -19
- scc_firewall_manager_sdk/api/device_upgrades_api.py +298 -297
- scc_firewall_manager_sdk/api/events_api.py +358 -0
- scc_firewall_manager_sdk/api/interface_health_aggregations_api.py +344 -0
- scc_firewall_manager_sdk/api/inventory_api.py +48 -48
- scc_firewall_manager_sdk/api/licensing_api.py +626 -0
- scc_firewall_manager_sdk/api/msp_device_upgrades_api.py +1692 -37
- scc_firewall_manager_sdk/api/msp_inventory_api.py +48 -48
- scc_firewall_manager_sdk/api/msp_tenant_management_api.py +41 -12
- scc_firewall_manager_sdk/api/msp_user_management_api.py +24 -24
- scc_firewall_manager_sdk/api/object_management_api.py +17 -0
- scc_firewall_manager_sdk/api/remote_access_monitoring_api.py +24 -24
- scc_firewall_manager_sdk/api/tenant_management_api.py +21 -18
- scc_firewall_manager_sdk/api/users_api.py +30 -30
- scc_firewall_manager_sdk/api_client.py +1 -1
- scc_firewall_manager_sdk/configuration.py +1 -1
- scc_firewall_manager_sdk/models/__init__.py +16 -1
- scc_firewall_manager_sdk/models/access_group.py +1 -1
- scc_firewall_manager_sdk/models/cdo_token_info.py +3 -1
- scc_firewall_manager_sdk/models/cdo_transaction.py +14 -14
- scc_firewall_manager_sdk/models/common_api_error.py +3 -3
- scc_firewall_manager_sdk/models/compatible_device_dto.py +100 -0
- scc_firewall_manager_sdk/models/compatible_version_info_dto.py +112 -0
- scc_firewall_manager_sdk/models/completion_status_dto.py +104 -0
- scc_firewall_manager_sdk/models/device_license_dto.py +133 -0
- scc_firewall_manager_sdk/models/device_license_page.py +102 -0
- scc_firewall_manager_sdk/models/{tenant_ftd_compatibility_version.py → device_upgrade_status_dto.py} +14 -18
- scc_firewall_manager_sdk/models/enable_cd_fmc_for_tenant_request.py +88 -0
- scc_firewall_manager_sdk/models/log_settings.py +1 -1
- scc_firewall_manager_sdk/models/metric_aggregation_list_item.py +12 -8
- scc_firewall_manager_sdk/models/msp_calculate_compatible_upgrade_versions_input.py +89 -0
- scc_firewall_manager_sdk/models/msp_managed_device.py +13 -1
- scc_firewall_manager_sdk/models/msp_managed_device_distinct_attribute_values.py +5 -1
- scc_firewall_manager_sdk/models/msp_upgrade_ftd_devices_input.py +97 -0
- scc_firewall_manager_sdk/models/msp_upgrade_run_dto.py +135 -0
- scc_firewall_manager_sdk/models/msp_upgrade_run_dto_page.py +102 -0
- scc_firewall_manager_sdk/models/msp_upgrade_runs_attribute_values.py +114 -0
- scc_firewall_manager_sdk/models/page.py +94 -0
- scc_firewall_manager_sdk/models/smart_account.py +90 -0
- scc_firewall_manager_sdk/models/tenant_settings.py +3 -1
- scc_firewall_manager_sdk/models/upgrade_compatibility_info_dto.py +107 -0
- scc_firewall_manager_sdk/models/upgrade_run_dto.py +14 -4
- scc_firewall_manager_sdk/models/upgrade_run_metadata_dto.py +96 -0
- {scc_firewall_manager_sdk-1.15.195.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/METADATA +1 -1
- {scc_firewall_manager_sdk-1.15.195.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/RECORD +58 -41
- {scc_firewall_manager_sdk-1.15.195.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/WHEEL +0 -0
- {scc_firewall_manager_sdk-1.15.195.dist-info → scc_firewall_manager_sdk-1.15.563.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Cisco Security Cloud Control Firewall Manager API
|
|
5
|
+
|
|
6
|
+
Use the documentation to explore the endpoints Security Cloud Control Firewall Manager has to offer
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.15.0
|
|
9
|
+
Contact: cdo.tac@cisco.com
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from datetime import datetime
|
|
22
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr, field_validator
|
|
23
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
24
|
+
from scc_firewall_manager_sdk.models.upgrade_run_metadata_dto import UpgradeRunMetadataDto
|
|
25
|
+
from typing import Optional, Set
|
|
26
|
+
from typing_extensions import Self
|
|
27
|
+
|
|
28
|
+
class MspUpgradeRunDto(BaseModel):
|
|
29
|
+
"""
|
|
30
|
+
MspUpgradeRunDto
|
|
31
|
+
""" # noqa: E501
|
|
32
|
+
error_msg: Optional[StrictStr] = Field(default=None, description="Error message if the upgrade run failed.", alias="errorMsg")
|
|
33
|
+
last_updated_time: Optional[datetime] = Field(default=None, description="Time (UTC; represented using the RFC-3339 standard) at which the upgrade run was last updated.", alias="lastUpdatedTime")
|
|
34
|
+
metadata: Optional[UpgradeRunMetadataDto] = None
|
|
35
|
+
name: Optional[StrictStr] = Field(default=None, description="Name of the upgrade run. Upgrade runs names are unique in a tenant in SCC Firewall Manager.")
|
|
36
|
+
software_version: Optional[StrictStr] = Field(default=None, description="Target software version for the upgrade.", alias="softwareVersion")
|
|
37
|
+
stage_upgrade_only: Optional[StrictBool] = Field(default=None, description="Indicates if this upgrade run is to stage the upgrade on the device. If set to true, the upgrade is not applied on the device.", alias="stageUpgradeOnly")
|
|
38
|
+
submission_time: Optional[datetime] = Field(default=None, description="Time (UTC; represented using the RFC-3339 standard) at which the upgrade run was triggered.", alias="submissionTime")
|
|
39
|
+
transaction_uid: Optional[StrictStr] = Field(default=None, description="Unique identifier, represented as a UUID, of the CDO transaction that tracks this upgrade run.", alias="transactionUid")
|
|
40
|
+
uid: Optional[StrictStr] = Field(default=None, description="The unique identifier, represented as a UUID, of the upgrade run in SCC Firewall Manager.")
|
|
41
|
+
upgrade_run_status: Optional[StrictStr] = Field(default=None, description="Current status of the upgrade run.", alias="upgradeRunStatus")
|
|
42
|
+
upgrade_run_type: Optional[StrictStr] = Field(default=None, description="Type of upgrade run", alias="upgradeRunType")
|
|
43
|
+
username: Optional[StrictStr] = Field(default=None, description="Username of the user who initiated the upgrade run.")
|
|
44
|
+
__properties: ClassVar[List[str]] = ["errorMsg", "lastUpdatedTime", "metadata", "name", "softwareVersion", "stageUpgradeOnly", "submissionTime", "transactionUid", "uid", "upgradeRunStatus", "upgradeRunType", "username"]
|
|
45
|
+
|
|
46
|
+
@field_validator('upgrade_run_status')
|
|
47
|
+
def upgrade_run_status_validate_enum(cls, value):
|
|
48
|
+
"""Validates the enum"""
|
|
49
|
+
if value is None:
|
|
50
|
+
return value
|
|
51
|
+
|
|
52
|
+
if value not in set(['IN_PROGRESS', 'REBUILDING_UPGRADE_CACHE', 'PERFORMING_UPGRADE', 'UPLOADING_IMAGE', 'PERFORMING_READINESS_CHECK', 'UPGRADE_STAGED', 'UPGRADE_STAGING_FAILED', 'UGPRADE_STAGING_FAILED', 'UPGRADE_COMPLETED', 'UPGRADE_FAILED']):
|
|
53
|
+
raise ValueError("must be one of enum values ('IN_PROGRESS', 'REBUILDING_UPGRADE_CACHE', 'PERFORMING_UPGRADE', 'UPLOADING_IMAGE', 'PERFORMING_READINESS_CHECK', 'UPGRADE_STAGED', 'UPGRADE_STAGING_FAILED', 'UGPRADE_STAGING_FAILED', 'UPGRADE_COMPLETED', 'UPGRADE_FAILED')")
|
|
54
|
+
return value
|
|
55
|
+
|
|
56
|
+
@field_validator('upgrade_run_type')
|
|
57
|
+
def upgrade_run_type_validate_enum(cls, value):
|
|
58
|
+
"""Validates the enum"""
|
|
59
|
+
if value is None:
|
|
60
|
+
return value
|
|
61
|
+
|
|
62
|
+
if value not in set(['ASA_DEVICE_UPGRADE', 'FTD_DEVICE_UPGRADE', 'FTD_SECURE_CLIENT_UPGRADE', 'ASA_SECURE_CLIENT_UPGRADE']):
|
|
63
|
+
raise ValueError("must be one of enum values ('ASA_DEVICE_UPGRADE', 'FTD_DEVICE_UPGRADE', 'FTD_SECURE_CLIENT_UPGRADE', 'ASA_SECURE_CLIENT_UPGRADE')")
|
|
64
|
+
return value
|
|
65
|
+
|
|
66
|
+
model_config = ConfigDict(
|
|
67
|
+
populate_by_name=True,
|
|
68
|
+
validate_assignment=True,
|
|
69
|
+
protected_namespaces=(),
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
def to_str(self) -> str:
|
|
74
|
+
"""Returns the string representation of the model using alias"""
|
|
75
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
76
|
+
|
|
77
|
+
def to_json(self) -> str:
|
|
78
|
+
"""Returns the JSON representation of the model using alias"""
|
|
79
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
80
|
+
return json.dumps(self.to_dict())
|
|
81
|
+
|
|
82
|
+
@classmethod
|
|
83
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
84
|
+
"""Create an instance of MspUpgradeRunDto from a JSON string"""
|
|
85
|
+
return cls.from_dict(json.loads(json_str))
|
|
86
|
+
|
|
87
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
88
|
+
"""Return the dictionary representation of the model using alias.
|
|
89
|
+
|
|
90
|
+
This has the following differences from calling pydantic's
|
|
91
|
+
`self.model_dump(by_alias=True)`:
|
|
92
|
+
|
|
93
|
+
* `None` is only added to the output dict for nullable fields that
|
|
94
|
+
were set at model initialization. Other fields with value `None`
|
|
95
|
+
are ignored.
|
|
96
|
+
"""
|
|
97
|
+
excluded_fields: Set[str] = set([
|
|
98
|
+
])
|
|
99
|
+
|
|
100
|
+
_dict = self.model_dump(
|
|
101
|
+
by_alias=True,
|
|
102
|
+
exclude=excluded_fields,
|
|
103
|
+
exclude_none=True,
|
|
104
|
+
)
|
|
105
|
+
# override the default output from pydantic by calling `to_dict()` of metadata
|
|
106
|
+
if self.metadata:
|
|
107
|
+
_dict['metadata'] = self.metadata.to_dict()
|
|
108
|
+
return _dict
|
|
109
|
+
|
|
110
|
+
@classmethod
|
|
111
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
112
|
+
"""Create an instance of MspUpgradeRunDto from a dict"""
|
|
113
|
+
if obj is None:
|
|
114
|
+
return None
|
|
115
|
+
|
|
116
|
+
if not isinstance(obj, dict):
|
|
117
|
+
return cls.model_validate(obj)
|
|
118
|
+
|
|
119
|
+
_obj = cls.model_validate({
|
|
120
|
+
"errorMsg": obj.get("errorMsg"),
|
|
121
|
+
"lastUpdatedTime": obj.get("lastUpdatedTime"),
|
|
122
|
+
"metadata": UpgradeRunMetadataDto.from_dict(obj["metadata"]) if obj.get("metadata") is not None else None,
|
|
123
|
+
"name": obj.get("name"),
|
|
124
|
+
"softwareVersion": obj.get("softwareVersion"),
|
|
125
|
+
"stageUpgradeOnly": obj.get("stageUpgradeOnly"),
|
|
126
|
+
"submissionTime": obj.get("submissionTime"),
|
|
127
|
+
"transactionUid": obj.get("transactionUid"),
|
|
128
|
+
"uid": obj.get("uid"),
|
|
129
|
+
"upgradeRunStatus": obj.get("upgradeRunStatus"),
|
|
130
|
+
"upgradeRunType": obj.get("upgradeRunType"),
|
|
131
|
+
"username": obj.get("username")
|
|
132
|
+
})
|
|
133
|
+
return _obj
|
|
134
|
+
|
|
135
|
+
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Cisco Security Cloud Control Firewall Manager API
|
|
5
|
+
|
|
6
|
+
Use the documentation to explore the endpoints Security Cloud Control Firewall Manager has to offer
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.15.0
|
|
9
|
+
Contact: cdo.tac@cisco.com
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictInt
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from scc_firewall_manager_sdk.models.msp_upgrade_run_dto import MspUpgradeRunDto
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
26
|
+
|
|
27
|
+
class MspUpgradeRunDtoPage(BaseModel):
|
|
28
|
+
"""
|
|
29
|
+
MspUpgradeRunDtoPage
|
|
30
|
+
""" # noqa: E501
|
|
31
|
+
count: Optional[StrictInt] = Field(default=None, description="The total number of results available.")
|
|
32
|
+
items: Optional[List[MspUpgradeRunDto]] = Field(default=None, description="The list of items retrieved.")
|
|
33
|
+
limit: Optional[StrictInt] = Field(default=None, description="The number of results retrieved.")
|
|
34
|
+
offset: Optional[StrictInt] = Field(default=None, description="The offset of the results retrieved. The Security Cloud Control API uses the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.")
|
|
35
|
+
__properties: ClassVar[List[str]] = ["count", "items", "limit", "offset"]
|
|
36
|
+
|
|
37
|
+
model_config = ConfigDict(
|
|
38
|
+
populate_by_name=True,
|
|
39
|
+
validate_assignment=True,
|
|
40
|
+
protected_namespaces=(),
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def to_str(self) -> str:
|
|
45
|
+
"""Returns the string representation of the model using alias"""
|
|
46
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
47
|
+
|
|
48
|
+
def to_json(self) -> str:
|
|
49
|
+
"""Returns the JSON representation of the model using alias"""
|
|
50
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
51
|
+
return json.dumps(self.to_dict())
|
|
52
|
+
|
|
53
|
+
@classmethod
|
|
54
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
55
|
+
"""Create an instance of MspUpgradeRunDtoPage from a JSON string"""
|
|
56
|
+
return cls.from_dict(json.loads(json_str))
|
|
57
|
+
|
|
58
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
59
|
+
"""Return the dictionary representation of the model using alias.
|
|
60
|
+
|
|
61
|
+
This has the following differences from calling pydantic's
|
|
62
|
+
`self.model_dump(by_alias=True)`:
|
|
63
|
+
|
|
64
|
+
* `None` is only added to the output dict for nullable fields that
|
|
65
|
+
were set at model initialization. Other fields with value `None`
|
|
66
|
+
are ignored.
|
|
67
|
+
"""
|
|
68
|
+
excluded_fields: Set[str] = set([
|
|
69
|
+
])
|
|
70
|
+
|
|
71
|
+
_dict = self.model_dump(
|
|
72
|
+
by_alias=True,
|
|
73
|
+
exclude=excluded_fields,
|
|
74
|
+
exclude_none=True,
|
|
75
|
+
)
|
|
76
|
+
# override the default output from pydantic by calling `to_dict()` of each item in items (list)
|
|
77
|
+
_items = []
|
|
78
|
+
if self.items:
|
|
79
|
+
for _item in self.items:
|
|
80
|
+
if _item:
|
|
81
|
+
_items.append(_item.to_dict())
|
|
82
|
+
_dict['items'] = _items
|
|
83
|
+
return _dict
|
|
84
|
+
|
|
85
|
+
@classmethod
|
|
86
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
87
|
+
"""Create an instance of MspUpgradeRunDtoPage from a dict"""
|
|
88
|
+
if obj is None:
|
|
89
|
+
return None
|
|
90
|
+
|
|
91
|
+
if not isinstance(obj, dict):
|
|
92
|
+
return cls.model_validate(obj)
|
|
93
|
+
|
|
94
|
+
_obj = cls.model_validate({
|
|
95
|
+
"count": obj.get("count"),
|
|
96
|
+
"items": [MspUpgradeRunDto.from_dict(_item) for _item in obj["items"]] if obj.get("items") is not None else None,
|
|
97
|
+
"limit": obj.get("limit"),
|
|
98
|
+
"offset": obj.get("offset")
|
|
99
|
+
})
|
|
100
|
+
return _obj
|
|
101
|
+
|
|
102
|
+
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Cisco Security Cloud Control Firewall Manager API
|
|
5
|
+
|
|
6
|
+
Use the documentation to explore the endpoints Security Cloud Control Firewall Manager has to offer
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.15.0
|
|
9
|
+
Contact: cdo.tac@cisco.com
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class MspUpgradeRunsAttributeValues(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
MspUpgradeRunsAttributeValues
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
upgrade_run_statuses: Optional[List[StrictStr]] = Field(default=None, description="Distinct status values for the MSP upgrade runs on this MSP portal.", alias="upgradeRunStatuses")
|
|
31
|
+
upgrade_run_types: Optional[List[StrictStr]] = Field(default=None, alias="upgradeRunTypes")
|
|
32
|
+
users: Optional[List[StrictStr]] = None
|
|
33
|
+
__properties: ClassVar[List[str]] = ["upgradeRunStatuses", "upgradeRunTypes", "users"]
|
|
34
|
+
|
|
35
|
+
@field_validator('upgrade_run_statuses')
|
|
36
|
+
def upgrade_run_statuses_validate_enum(cls, value):
|
|
37
|
+
"""Validates the enum"""
|
|
38
|
+
if value is None:
|
|
39
|
+
return value
|
|
40
|
+
|
|
41
|
+
for i in value:
|
|
42
|
+
if i not in set(['IN_PROGRESS', 'REBUILDING_UPGRADE_CACHE', 'PERFORMING_UPGRADE', 'UPLOADING_IMAGE', 'PERFORMING_READINESS_CHECK', 'UPGRADE_STAGED', 'UPGRADE_STAGING_FAILED', 'UGPRADE_STAGING_FAILED', 'UPGRADE_COMPLETED', 'UPGRADE_FAILED']):
|
|
43
|
+
raise ValueError("each list item must be one of ('IN_PROGRESS', 'REBUILDING_UPGRADE_CACHE', 'PERFORMING_UPGRADE', 'UPLOADING_IMAGE', 'PERFORMING_READINESS_CHECK', 'UPGRADE_STAGED', 'UPGRADE_STAGING_FAILED', 'UGPRADE_STAGING_FAILED', 'UPGRADE_COMPLETED', 'UPGRADE_FAILED')")
|
|
44
|
+
return value
|
|
45
|
+
|
|
46
|
+
@field_validator('upgrade_run_types')
|
|
47
|
+
def upgrade_run_types_validate_enum(cls, value):
|
|
48
|
+
"""Validates the enum"""
|
|
49
|
+
if value is None:
|
|
50
|
+
return value
|
|
51
|
+
|
|
52
|
+
for i in value:
|
|
53
|
+
if i not in set(['ASA_DEVICE_UPGRADE', 'FTD_DEVICE_UPGRADE', 'FTD_SECURE_CLIENT_UPGRADE', 'ASA_SECURE_CLIENT_UPGRADE']):
|
|
54
|
+
raise ValueError("each list item must be one of ('ASA_DEVICE_UPGRADE', 'FTD_DEVICE_UPGRADE', 'FTD_SECURE_CLIENT_UPGRADE', 'ASA_SECURE_CLIENT_UPGRADE')")
|
|
55
|
+
return value
|
|
56
|
+
|
|
57
|
+
model_config = ConfigDict(
|
|
58
|
+
populate_by_name=True,
|
|
59
|
+
validate_assignment=True,
|
|
60
|
+
protected_namespaces=(),
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
def to_str(self) -> str:
|
|
65
|
+
"""Returns the string representation of the model using alias"""
|
|
66
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
67
|
+
|
|
68
|
+
def to_json(self) -> str:
|
|
69
|
+
"""Returns the JSON representation of the model using alias"""
|
|
70
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
71
|
+
return json.dumps(self.to_dict())
|
|
72
|
+
|
|
73
|
+
@classmethod
|
|
74
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
75
|
+
"""Create an instance of MspUpgradeRunsAttributeValues from a JSON string"""
|
|
76
|
+
return cls.from_dict(json.loads(json_str))
|
|
77
|
+
|
|
78
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
79
|
+
"""Return the dictionary representation of the model using alias.
|
|
80
|
+
|
|
81
|
+
This has the following differences from calling pydantic's
|
|
82
|
+
`self.model_dump(by_alias=True)`:
|
|
83
|
+
|
|
84
|
+
* `None` is only added to the output dict for nullable fields that
|
|
85
|
+
were set at model initialization. Other fields with value `None`
|
|
86
|
+
are ignored.
|
|
87
|
+
"""
|
|
88
|
+
excluded_fields: Set[str] = set([
|
|
89
|
+
])
|
|
90
|
+
|
|
91
|
+
_dict = self.model_dump(
|
|
92
|
+
by_alias=True,
|
|
93
|
+
exclude=excluded_fields,
|
|
94
|
+
exclude_none=True,
|
|
95
|
+
)
|
|
96
|
+
return _dict
|
|
97
|
+
|
|
98
|
+
@classmethod
|
|
99
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
100
|
+
"""Create an instance of MspUpgradeRunsAttributeValues from a dict"""
|
|
101
|
+
if obj is None:
|
|
102
|
+
return None
|
|
103
|
+
|
|
104
|
+
if not isinstance(obj, dict):
|
|
105
|
+
return cls.model_validate(obj)
|
|
106
|
+
|
|
107
|
+
_obj = cls.model_validate({
|
|
108
|
+
"upgradeRunStatuses": obj.get("upgradeRunStatuses"),
|
|
109
|
+
"upgradeRunTypes": obj.get("upgradeRunTypes"),
|
|
110
|
+
"users": obj.get("users")
|
|
111
|
+
})
|
|
112
|
+
return _obj
|
|
113
|
+
|
|
114
|
+
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Cisco Security Cloud Control Firewall Manager API
|
|
5
|
+
|
|
6
|
+
Use the documentation to explore the endpoints Security Cloud Control Firewall Manager has to offer
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.15.0
|
|
9
|
+
Contact: cdo.tac@cisco.com
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictInt
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class Page(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
Page
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
count: Optional[StrictInt] = Field(default=None, description="The total number of results available.")
|
|
31
|
+
items: Optional[List[Any]] = Field(default=None, description="The list of items retrieved.")
|
|
32
|
+
limit: Optional[StrictInt] = Field(default=None, description="The number of results retrieved.")
|
|
33
|
+
offset: Optional[StrictInt] = Field(default=None, description="The offset of the results retrieved. The Security Cloud Control API uses the offset field to determine the index of the first result retrieved, and will retrieve `limit` results from the offset specified.")
|
|
34
|
+
__properties: ClassVar[List[str]] = ["count", "items", "limit", "offset"]
|
|
35
|
+
|
|
36
|
+
model_config = ConfigDict(
|
|
37
|
+
populate_by_name=True,
|
|
38
|
+
validate_assignment=True,
|
|
39
|
+
protected_namespaces=(),
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
def to_str(self) -> str:
|
|
44
|
+
"""Returns the string representation of the model using alias"""
|
|
45
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
46
|
+
|
|
47
|
+
def to_json(self) -> str:
|
|
48
|
+
"""Returns the JSON representation of the model using alias"""
|
|
49
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
50
|
+
return json.dumps(self.to_dict())
|
|
51
|
+
|
|
52
|
+
@classmethod
|
|
53
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
54
|
+
"""Create an instance of Page from a JSON string"""
|
|
55
|
+
return cls.from_dict(json.loads(json_str))
|
|
56
|
+
|
|
57
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
58
|
+
"""Return the dictionary representation of the model using alias.
|
|
59
|
+
|
|
60
|
+
This has the following differences from calling pydantic's
|
|
61
|
+
`self.model_dump(by_alias=True)`:
|
|
62
|
+
|
|
63
|
+
* `None` is only added to the output dict for nullable fields that
|
|
64
|
+
were set at model initialization. Other fields with value `None`
|
|
65
|
+
are ignored.
|
|
66
|
+
"""
|
|
67
|
+
excluded_fields: Set[str] = set([
|
|
68
|
+
])
|
|
69
|
+
|
|
70
|
+
_dict = self.model_dump(
|
|
71
|
+
by_alias=True,
|
|
72
|
+
exclude=excluded_fields,
|
|
73
|
+
exclude_none=True,
|
|
74
|
+
)
|
|
75
|
+
return _dict
|
|
76
|
+
|
|
77
|
+
@classmethod
|
|
78
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
79
|
+
"""Create an instance of Page from a dict"""
|
|
80
|
+
if obj is None:
|
|
81
|
+
return None
|
|
82
|
+
|
|
83
|
+
if not isinstance(obj, dict):
|
|
84
|
+
return cls.model_validate(obj)
|
|
85
|
+
|
|
86
|
+
_obj = cls.model_validate({
|
|
87
|
+
"count": obj.get("count"),
|
|
88
|
+
"items": obj.get("items"),
|
|
89
|
+
"limit": obj.get("limit"),
|
|
90
|
+
"offset": obj.get("offset")
|
|
91
|
+
})
|
|
92
|
+
return _obj
|
|
93
|
+
|
|
94
|
+
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Cisco Security Cloud Control Firewall Manager API
|
|
5
|
+
|
|
6
|
+
Use the documentation to explore the endpoints Security Cloud Control Firewall Manager has to offer
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.15.0
|
|
9
|
+
Contact: cdo.tac@cisco.com
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class SmartAccount(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
SmartAccount
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
parent: Optional[StrictStr] = Field(default=None, description="The name of the smart account used to license the device.")
|
|
31
|
+
virtual: Optional[StrictStr] = Field(default=None, description="The name of the virtual account, within the smart account, used to license the device")
|
|
32
|
+
__properties: ClassVar[List[str]] = ["parent", "virtual"]
|
|
33
|
+
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
populate_by_name=True,
|
|
36
|
+
validate_assignment=True,
|
|
37
|
+
protected_namespaces=(),
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def to_str(self) -> str:
|
|
42
|
+
"""Returns the string representation of the model using alias"""
|
|
43
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
44
|
+
|
|
45
|
+
def to_json(self) -> str:
|
|
46
|
+
"""Returns the JSON representation of the model using alias"""
|
|
47
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
48
|
+
return json.dumps(self.to_dict())
|
|
49
|
+
|
|
50
|
+
@classmethod
|
|
51
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
52
|
+
"""Create an instance of SmartAccount from a JSON string"""
|
|
53
|
+
return cls.from_dict(json.loads(json_str))
|
|
54
|
+
|
|
55
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
56
|
+
"""Return the dictionary representation of the model using alias.
|
|
57
|
+
|
|
58
|
+
This has the following differences from calling pydantic's
|
|
59
|
+
`self.model_dump(by_alias=True)`:
|
|
60
|
+
|
|
61
|
+
* `None` is only added to the output dict for nullable fields that
|
|
62
|
+
were set at model initialization. Other fields with value `None`
|
|
63
|
+
are ignored.
|
|
64
|
+
"""
|
|
65
|
+
excluded_fields: Set[str] = set([
|
|
66
|
+
])
|
|
67
|
+
|
|
68
|
+
_dict = self.model_dump(
|
|
69
|
+
by_alias=True,
|
|
70
|
+
exclude=excluded_fields,
|
|
71
|
+
exclude_none=True,
|
|
72
|
+
)
|
|
73
|
+
return _dict
|
|
74
|
+
|
|
75
|
+
@classmethod
|
|
76
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
77
|
+
"""Create an instance of SmartAccount from a dict"""
|
|
78
|
+
if obj is None:
|
|
79
|
+
return None
|
|
80
|
+
|
|
81
|
+
if not isinstance(obj, dict):
|
|
82
|
+
return cls.model_validate(obj)
|
|
83
|
+
|
|
84
|
+
_obj = cls.model_validate({
|
|
85
|
+
"parent": obj.get("parent"),
|
|
86
|
+
"virtual": obj.get("virtual")
|
|
87
|
+
})
|
|
88
|
+
return _obj
|
|
89
|
+
|
|
90
|
+
|
|
@@ -38,11 +38,12 @@ class TenantSettings(BaseModel):
|
|
|
38
38
|
deny_cisco_support_access_to_tenant: Optional[StrictBool] = Field(default=None, description="Indicates if Cisco support is denied access to the tenant.", alias="denyCiscoSupportAccessToTenant")
|
|
39
39
|
msp_portal_uid: Optional[StrictStr] = Field(default=None, description="The unique identifier, represented as a UUID, of the MSP portal associated with the tenant.", alias="mspPortalUid")
|
|
40
40
|
multicloud_defense: Optional[StrictBool] = Field(default=None, description="Indicates if the tenant has the multicloud defense enabled.", alias="multicloudDefense")
|
|
41
|
+
object_sharing_enabled: Optional[StrictBool] = Field(default=None, description="Indicates if the tenant has Object Sharing enabled.", alias="objectSharingEnabled")
|
|
41
42
|
policy_analyzer: Optional[StrictBool] = Field(default=None, description="Indicates if the tenant has the policy analyzer enabled.", alias="policyAnalyzer")
|
|
42
43
|
scheduled_deployments: Optional[StrictBool] = Field(default=None, description="Indicates if the tenant has scheduled deployments enabled.", alias="scheduledDeployments")
|
|
43
44
|
uid: Optional[StrictStr] = Field(default=None, description="The unique identifier, represented as a UUID, of the tenant in Security Cloud Control.")
|
|
44
45
|
web_analytics: Optional[StrictBool] = Field(default=None, description="Indicates if web analytics are enabled for the tenant.", alias="webAnalytics")
|
|
45
|
-
__properties: ClassVar[List[str]] = ["aiAssistant", "allowCrossRegionTenantAddition", "asaHealthMetrics", "autoAcceptDeviceChanges", "autoDiscoverOnPremFmcs", "changeRequestSupport", "conflictDetectionInterval", "denyCiscoSupportAccessToTenant", "mspPortalUid", "multicloudDefense", "policyAnalyzer", "scheduledDeployments", "uid", "webAnalytics"]
|
|
46
|
+
__properties: ClassVar[List[str]] = ["aiAssistant", "allowCrossRegionTenantAddition", "asaHealthMetrics", "autoAcceptDeviceChanges", "autoDiscoverOnPremFmcs", "changeRequestSupport", "conflictDetectionInterval", "denyCiscoSupportAccessToTenant", "mspPortalUid", "multicloudDefense", "objectSharingEnabled", "policyAnalyzer", "scheduledDeployments", "uid", "webAnalytics"]
|
|
46
47
|
|
|
47
48
|
model_config = ConfigDict(
|
|
48
49
|
populate_by_name=True,
|
|
@@ -105,6 +106,7 @@ class TenantSettings(BaseModel):
|
|
|
105
106
|
"denyCiscoSupportAccessToTenant": obj.get("denyCiscoSupportAccessToTenant"),
|
|
106
107
|
"mspPortalUid": obj.get("mspPortalUid"),
|
|
107
108
|
"multicloudDefense": obj.get("multicloudDefense"),
|
|
109
|
+
"objectSharingEnabled": obj.get("objectSharingEnabled"),
|
|
108
110
|
"policyAnalyzer": obj.get("policyAnalyzer"),
|
|
109
111
|
"scheduledDeployments": obj.get("scheduledDeployments"),
|
|
110
112
|
"uid": obj.get("uid"),
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Cisco Security Cloud Control Firewall Manager API
|
|
5
|
+
|
|
6
|
+
Use the documentation to explore the endpoints Security Cloud Control Firewall Manager has to offer
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.15.0
|
|
9
|
+
Contact: cdo.tac@cisco.com
|
|
10
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
|
+
|
|
12
|
+
Do not edit the class manually.
|
|
13
|
+
""" # noqa: E501
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
import pprint
|
|
18
|
+
import re # noqa: F401
|
|
19
|
+
import json
|
|
20
|
+
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from scc_firewall_manager_sdk.models.compatible_version_info_dto import CompatibleVersionInfoDto
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
26
|
+
|
|
27
|
+
class UpgradeCompatibilityInfoDto(BaseModel):
|
|
28
|
+
"""
|
|
29
|
+
Compatible upgrade versions for MSP managed devices across multiple tenants.
|
|
30
|
+
""" # noqa: E501
|
|
31
|
+
compatible_versions: Optional[List[CompatibleVersionInfoDto]] = Field(default=None, description="List of compatible upgrade versions available for the specified devices.", alias="compatibleVersions")
|
|
32
|
+
status: StrictStr = Field(description="The current status of the retrieval of upgrade versions.")
|
|
33
|
+
uid: StrictStr = Field(description="The unique identifier, represented as a UUID, of this list of compatible versions.")
|
|
34
|
+
__properties: ClassVar[List[str]] = ["compatibleVersions", "status", "uid"]
|
|
35
|
+
|
|
36
|
+
@field_validator('status')
|
|
37
|
+
def status_validate_enum(cls, value):
|
|
38
|
+
"""Validates the enum"""
|
|
39
|
+
if value not in set(['IN_PROGRESS', 'DONE', 'ERROR']):
|
|
40
|
+
raise ValueError("must be one of enum values ('IN_PROGRESS', 'DONE', 'ERROR')")
|
|
41
|
+
return value
|
|
42
|
+
|
|
43
|
+
model_config = ConfigDict(
|
|
44
|
+
populate_by_name=True,
|
|
45
|
+
validate_assignment=True,
|
|
46
|
+
protected_namespaces=(),
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
def to_str(self) -> str:
|
|
51
|
+
"""Returns the string representation of the model using alias"""
|
|
52
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
53
|
+
|
|
54
|
+
def to_json(self) -> str:
|
|
55
|
+
"""Returns the JSON representation of the model using alias"""
|
|
56
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
57
|
+
return json.dumps(self.to_dict())
|
|
58
|
+
|
|
59
|
+
@classmethod
|
|
60
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
61
|
+
"""Create an instance of UpgradeCompatibilityInfoDto from a JSON string"""
|
|
62
|
+
return cls.from_dict(json.loads(json_str))
|
|
63
|
+
|
|
64
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
65
|
+
"""Return the dictionary representation of the model using alias.
|
|
66
|
+
|
|
67
|
+
This has the following differences from calling pydantic's
|
|
68
|
+
`self.model_dump(by_alias=True)`:
|
|
69
|
+
|
|
70
|
+
* `None` is only added to the output dict for nullable fields that
|
|
71
|
+
were set at model initialization. Other fields with value `None`
|
|
72
|
+
are ignored.
|
|
73
|
+
"""
|
|
74
|
+
excluded_fields: Set[str] = set([
|
|
75
|
+
])
|
|
76
|
+
|
|
77
|
+
_dict = self.model_dump(
|
|
78
|
+
by_alias=True,
|
|
79
|
+
exclude=excluded_fields,
|
|
80
|
+
exclude_none=True,
|
|
81
|
+
)
|
|
82
|
+
# override the default output from pydantic by calling `to_dict()` of each item in compatible_versions (list)
|
|
83
|
+
_items = []
|
|
84
|
+
if self.compatible_versions:
|
|
85
|
+
for _item in self.compatible_versions:
|
|
86
|
+
if _item:
|
|
87
|
+
_items.append(_item.to_dict())
|
|
88
|
+
_dict['compatibleVersions'] = _items
|
|
89
|
+
return _dict
|
|
90
|
+
|
|
91
|
+
@classmethod
|
|
92
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
93
|
+
"""Create an instance of UpgradeCompatibilityInfoDto from a dict"""
|
|
94
|
+
if obj is None:
|
|
95
|
+
return None
|
|
96
|
+
|
|
97
|
+
if not isinstance(obj, dict):
|
|
98
|
+
return cls.model_validate(obj)
|
|
99
|
+
|
|
100
|
+
_obj = cls.model_validate({
|
|
101
|
+
"compatibleVersions": [CompatibleVersionInfoDto.from_dict(_item) for _item in obj["compatibleVersions"]] if obj.get("compatibleVersions") is not None else None,
|
|
102
|
+
"status": obj.get("status"),
|
|
103
|
+
"uid": obj.get("uid")
|
|
104
|
+
})
|
|
105
|
+
return _obj
|
|
106
|
+
|
|
107
|
+
|