graphiant-sdk 25.9.2__py3-none-any.whl → 25.10.1__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.
- graphiant_sdk/__init__.py +154 -28
- graphiant_sdk/api/default_api.py +13428 -6650
- graphiant_sdk/api_client.py +1 -1
- graphiant_sdk/configuration.py +1 -1
- graphiant_sdk/models/__init__.py +102 -18
- graphiant_sdk/models/v1_auth_login_temp_post200_response.py +91 -0
- graphiant_sdk/models/v1_auth_login_temp_post_request.py +89 -0
- graphiant_sdk/models/v1_b2b_extranet_monitoring_filter_post200_response.py +91 -0
- graphiant_sdk/models/v1_b2b_extranet_monitoring_filter_post200_response_filters.py +104 -0
- graphiant_sdk/models/v1_b2b_extranet_monitoring_filter_post200_response_filters_customers_inner.py +93 -0
- graphiant_sdk/models/v1_b2b_extranet_monitoring_filter_post_request.py +91 -0
- graphiant_sdk/models/v1_devices_device_id_config_put_request_core_core_vrf_bgp_neighbors_value_neighbor.py +6 -6
- graphiant_sdk/models/v1_devices_device_id_config_put_request_edge_site_to_site_vpn_value_site_to_site_vpn.py +3 -3
- graphiant_sdk/models/v1_enterprises_get200_response_enterprises_inner.py +3 -1
- graphiant_sdk/models/v1_enterprises_patch_request.py +3 -1
- graphiant_sdk/models/v1_extranet_b2b_monitoring_peering_service_service_customer_list_post200_response.py +87 -0
- graphiant_sdk/models/v1_extranet_b2b_monitoring_peering_service_service_customer_list_post_request.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_general_customers_summary_get200_response.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_general_customers_summary_get200_response_customers_inner.py +104 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response_details_inner.py +109 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response_details_inner_customer.py +94 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response_details_inner_service.py +93 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post200_response.py +109 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request.py +123 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_policy_inner.py +89 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details.py +117 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing.py +97 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp.py +115 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_address_families_value.py +91 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_address_families_value_family.py +98 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_md5_password.py +87 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_static.py +87 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_tunnel1.py +93 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_customer_id_get200_response.py +96 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_customer_id_put_request.py +87 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_customer_post200_response.py +93 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_customer_post_request.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_customer_post_request_invite.py +90 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_customers_post200_response.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_customers_post_request.py +97 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_customers_post_request_info_inner.py +104 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_service_to_customer_post200_response.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_service_to_customer_put200_response.py +91 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_service_to_customer_put_request.py +93 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_service_to_customer_put_request_service.py +112 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_service_to_customer_put_request_service_nat_inner.py +89 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_service_to_customer_put_request_service_service_prefixes_inner.py +89 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_services_summary_get200_response.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_match_services_summary_get200_response_services_inner.py +104 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_producer_id_get200_response.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_producer_id_put_request.py +91 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_producer_post200_response.py +93 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_producer_post200_response_policy.py +93 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_producer_post_request.py +95 -0
- graphiant_sdk/models/v1_extranets_b2b_peering_producer_post_request_policy.py +111 -0
- graphiant_sdk/models/v1_extranets_b2b_post_request_policy.py +19 -2
- graphiant_sdk/models/v1_extranets_b2b_producers_summary_get200_response_info_inner.py +16 -3
- graphiant_sdk/models/v1_extranets_get200_response_policies_inner_branches_excluded_devices_inner_ipsec_tunnels_inner.py +3 -3
- graphiant_sdk/models/v1_gateways_guest_consumer_get200_response.py +91 -0
- graphiant_sdk/models/v1_gateways_put_request_details.py +3 -3
- graphiant_sdk/models/v1_groups_get200_response_groups_inner_permissions.py +3 -1
- graphiant_sdk/models/v1_invitation_email_post_request.py +95 -0
- graphiant_sdk/models/v1_temp_password_put_request.py +91 -0
- {graphiant_sdk-25.9.2.dist-info → graphiant_sdk-25.10.1.dist-info}/METADATA +3 -3
- {graphiant_sdk-25.9.2.dist-info → graphiant_sdk-25.10.1.dist-info}/RECORD +121 -19
- test/test_v1_auth_login_temp_post200_response.py +53 -0
- test/test_v1_auth_login_temp_post_request.py +52 -0
- test/test_v1_b2b_extranet_monitoring_filter_post200_response.py +65 -0
- test/test_v1_b2b_extranet_monitoring_filter_post200_response_filters.py +64 -0
- test/test_v1_b2b_extranet_monitoring_filter_post200_response_filters_customers_inner.py +54 -0
- test/test_v1_b2b_extranet_monitoring_filter_post_request.py +53 -0
- test/test_v1_extranet_b2b_monitoring_peering_service_service_customer_list_post200_response.py +53 -0
- test/test_v1_extranet_b2b_monitoring_peering_service_service_customer_list_post_request.py +60 -0
- test/test_v1_extranets_b2b_general_customers_summary_get200_response.py +64 -0
- test/test_v1_extranets_b2b_general_customers_summary_get200_response_customers_inner.py +61 -0
- test/test_v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response.py +75 -0
- test/test_v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response_details_inner.py +72 -0
- test/test_v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response_details_inner_customer.py +56 -0
- test/test_v1_extranets_b2b_peering_consumer_customer_id_match_details_get200_response_details_inner_service.py +56 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post200_response.py +74 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request.py +123 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_policy_inner.py +54 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn.py +92 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details.py +87 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing.py +69 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp.py +64 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_address_families_value.py +56 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_address_families_value_family.py +55 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_md5_password.py +51 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_static.py +53 -0
- test/test_v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_tunnel1.py +54 -0
- test/test_v1_extranets_b2b_peering_customer_id_get200_response.py +57 -0
- test/test_v1_extranets_b2b_peering_customer_id_put_request.py +51 -0
- test/test_v1_extranets_b2b_peering_customer_post200_response.py +56 -0
- test/test_v1_extranets_b2b_peering_customer_post_request.py +57 -0
- test/test_v1_extranets_b2b_peering_customer_post_request_invite.py +54 -0
- test/test_v1_extranets_b2b_peering_match_customers_post200_response.py +64 -0
- test/test_v1_extranets_b2b_peering_match_customers_post_request.py +65 -0
- test/test_v1_extranets_b2b_peering_match_customers_post_request_info_inner.py +61 -0
- test/test_v1_extranets_b2b_peering_match_service_to_customer_post200_response.py +66 -0
- test/test_v1_extranets_b2b_peering_match_service_to_customer_put200_response.py +64 -0
- test/test_v1_extranets_b2b_peering_match_service_to_customer_put_request.py +65 -0
- test/test_v1_extranets_b2b_peering_match_service_to_customer_put_request_service.py +63 -0
- test/test_v1_extranets_b2b_peering_match_service_to_customer_put_request_service_nat_inner.py +52 -0
- test/test_v1_extranets_b2b_peering_match_service_to_customer_put_request_service_service_prefixes_inner.py +52 -0
- test/test_v1_extranets_b2b_peering_match_services_summary_get200_response.py +62 -0
- test/test_v1_extranets_b2b_peering_match_services_summary_get200_response_services_inner.py +59 -0
- test/test_v1_extranets_b2b_peering_producer_id_get200_response.py +80 -0
- test/test_v1_extranets_b2b_peering_producer_id_put_request.py +76 -0
- test/test_v1_extranets_b2b_peering_producer_post200_response.py +79 -0
- test/test_v1_extranets_b2b_peering_producer_post200_response_policy.py +77 -0
- test/test_v1_extranets_b2b_peering_producer_post_request.py +78 -0
- test/test_v1_extranets_b2b_peering_producer_post_request_policy.py +75 -0
- test/test_v1_gateways_guest_consumer_get200_response.py +93 -0
- test/test_v1_invitation_email_post_request.py +55 -0
- test/test_v1_temp_password_put_request.py +55 -0
- {graphiant_sdk-25.9.2.dist-info → graphiant_sdk-25.10.1.dist-info}/WHEEL +0 -0
- {graphiant_sdk-25.9.2.dist-info → graphiant_sdk-25.10.1.dist-info}/licenses/LICENSE +0 -0
- {graphiant_sdk-25.9.2.dist-info → graphiant_sdk-25.10.1.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Graphiant APIs
|
|
5
|
+
|
|
6
|
+
Graphiant API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from graphiant_sdk.models.v1_b2b_extranet_monitoring_filter_post200_response_filters_customers_inner import V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class V1B2bExtranetMonitoringFilterPost200ResponseFilters(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
V1B2bExtranetMonitoringFilterPost200ResponseFilters
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
customers: Optional[List[V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner]] = None
|
|
31
|
+
sites: Optional[List[V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner]] = None
|
|
32
|
+
__properties: ClassVar[List[str]] = ["customers", "sites"]
|
|
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 V1B2bExtranetMonitoringFilterPost200ResponseFilters 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
|
+
# override the default output from pydantic by calling `to_dict()` of each item in customers (list)
|
|
74
|
+
_items = []
|
|
75
|
+
if self.customers:
|
|
76
|
+
for _item_customers in self.customers:
|
|
77
|
+
if _item_customers:
|
|
78
|
+
_items.append(_item_customers.to_dict())
|
|
79
|
+
_dict['customers'] = _items
|
|
80
|
+
# override the default output from pydantic by calling `to_dict()` of each item in sites (list)
|
|
81
|
+
_items = []
|
|
82
|
+
if self.sites:
|
|
83
|
+
for _item_sites in self.sites:
|
|
84
|
+
if _item_sites:
|
|
85
|
+
_items.append(_item_sites.to_dict())
|
|
86
|
+
_dict['sites'] = _items
|
|
87
|
+
return _dict
|
|
88
|
+
|
|
89
|
+
@classmethod
|
|
90
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
91
|
+
"""Create an instance of V1B2bExtranetMonitoringFilterPost200ResponseFilters from a dict"""
|
|
92
|
+
if obj is None:
|
|
93
|
+
return None
|
|
94
|
+
|
|
95
|
+
if not isinstance(obj, dict):
|
|
96
|
+
return cls.model_validate(obj)
|
|
97
|
+
|
|
98
|
+
_obj = cls.model_validate({
|
|
99
|
+
"customers": [V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner.from_dict(_item) for _item in obj["customers"]] if obj.get("customers") is not None else None,
|
|
100
|
+
"sites": [V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner.from_dict(_item) for _item in obj["sites"]] if obj.get("sites") is not None else None
|
|
101
|
+
})
|
|
102
|
+
return _obj
|
|
103
|
+
|
|
104
|
+
|
graphiant_sdk/models/v1_b2b_extranet_monitoring_filter_post200_response_filters_customers_inner.py
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Graphiant APIs
|
|
5
|
+
|
|
6
|
+
Graphiant API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from typing import Optional, Set
|
|
23
|
+
from typing_extensions import Self
|
|
24
|
+
|
|
25
|
+
class V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner
|
|
28
|
+
""" # noqa: E501
|
|
29
|
+
description: Optional[StrictStr] = None
|
|
30
|
+
id: Optional[StrictInt] = None
|
|
31
|
+
name: Optional[StrictStr] = None
|
|
32
|
+
type: Optional[StrictStr] = None
|
|
33
|
+
__properties: ClassVar[List[str]] = ["description", "id", "name", "type"]
|
|
34
|
+
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
49
|
+
return json.dumps(self.to_dict())
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
53
|
+
"""Create an instance of V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner from a JSON string"""
|
|
54
|
+
return cls.from_dict(json.loads(json_str))
|
|
55
|
+
|
|
56
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
57
|
+
"""Return the dictionary representation of the model using alias.
|
|
58
|
+
|
|
59
|
+
This has the following differences from calling pydantic's
|
|
60
|
+
`self.model_dump(by_alias=True)`:
|
|
61
|
+
|
|
62
|
+
* `None` is only added to the output dict for nullable fields that
|
|
63
|
+
were set at model initialization. Other fields with value `None`
|
|
64
|
+
are ignored.
|
|
65
|
+
"""
|
|
66
|
+
excluded_fields: Set[str] = set([
|
|
67
|
+
])
|
|
68
|
+
|
|
69
|
+
_dict = self.model_dump(
|
|
70
|
+
by_alias=True,
|
|
71
|
+
exclude=excluded_fields,
|
|
72
|
+
exclude_none=True,
|
|
73
|
+
)
|
|
74
|
+
return _dict
|
|
75
|
+
|
|
76
|
+
@classmethod
|
|
77
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
78
|
+
"""Create an instance of V1B2bExtranetMonitoringFilterPost200ResponseFiltersCustomersInner from a dict"""
|
|
79
|
+
if obj is None:
|
|
80
|
+
return None
|
|
81
|
+
|
|
82
|
+
if not isinstance(obj, dict):
|
|
83
|
+
return cls.model_validate(obj)
|
|
84
|
+
|
|
85
|
+
_obj = cls.model_validate({
|
|
86
|
+
"description": obj.get("description"),
|
|
87
|
+
"id": obj.get("id"),
|
|
88
|
+
"name": obj.get("name"),
|
|
89
|
+
"type": obj.get("type")
|
|
90
|
+
})
|
|
91
|
+
return _obj
|
|
92
|
+
|
|
93
|
+
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Graphiant APIs
|
|
5
|
+
|
|
6
|
+
Graphiant API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from typing import Optional, Set
|
|
23
|
+
from typing_extensions import Self
|
|
24
|
+
|
|
25
|
+
class V1B2bExtranetMonitoringFilterPostRequest(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
V1B2bExtranetMonitoringFilterPostRequest
|
|
28
|
+
""" # noqa: E501
|
|
29
|
+
id: Optional[StrictInt] = None
|
|
30
|
+
is_b2_b: Optional[StrictBool] = Field(default=None, alias="isB2B")
|
|
31
|
+
is_provider: Optional[StrictBool] = Field(default=None, alias="isProvider")
|
|
32
|
+
__properties: ClassVar[List[str]] = ["id", "isB2B", "isProvider"]
|
|
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 V1B2bExtranetMonitoringFilterPostRequest 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 V1B2bExtranetMonitoringFilterPostRequest 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
|
+
"id": obj.get("id"),
|
|
86
|
+
"isB2B": obj.get("isB2B"),
|
|
87
|
+
"isProvider": obj.get("isProvider")
|
|
88
|
+
})
|
|
89
|
+
return _obj
|
|
90
|
+
|
|
91
|
+
|
|
@@ -25,8 +25,8 @@ from graphiant_sdk.models.v1_devices_device_id_config_put_request_core_core_vrf_
|
|
|
25
25
|
from graphiant_sdk.models.v1_devices_device_id_config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_ebgp_multihop_ttl import V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighborEbgpMultihopTtl
|
|
26
26
|
from graphiant_sdk.models.v1_devices_device_id_config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_hold_timer_value import V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighborHoldTimerValue
|
|
27
27
|
from graphiant_sdk.models.v1_devices_device_id_config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_max_prefix_value import V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighborMaxPrefixValue
|
|
28
|
-
from graphiant_sdk.models.
|
|
29
|
-
from graphiant_sdk.models.
|
|
28
|
+
from graphiant_sdk.models.v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_address_families_value import V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRoutingBgpAddressFamiliesValue
|
|
29
|
+
from graphiant_sdk.models.v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing_bgp_md5_password import V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRoutingBgpMd5Password
|
|
30
30
|
from graphiant_sdk.models.v1_global_config_patch_request_routing_policies_value_policy_statements_value_statement_matches_value_match_source_interface import V1GlobalConfigPatchRequestRoutingPoliciesValuePolicyStatementsValueStatementMatchesValueMatchSourceInterface
|
|
31
31
|
from typing import Optional, Set
|
|
32
32
|
from typing_extensions import Self
|
|
@@ -35,7 +35,7 @@ class V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighbor(Base
|
|
|
35
35
|
"""
|
|
36
36
|
V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighbor
|
|
37
37
|
""" # noqa: E501
|
|
38
|
-
address_families: Optional[Dict[str,
|
|
38
|
+
address_families: Optional[Dict[str, V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRoutingBgpAddressFamiliesValue]] = Field(default=None, alias="addressFamilies")
|
|
39
39
|
allow_as_in: Optional[V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighborAllowAsIn] = Field(default=None, alias="allowAsIn")
|
|
40
40
|
as_override: Optional[StrictBool] = Field(default=None, alias="asOverride")
|
|
41
41
|
bfd: Optional[V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighborBfd] = None
|
|
@@ -49,7 +49,7 @@ class V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighbor(Base
|
|
|
49
49
|
local_address: Optional[StrictStr] = Field(default=None, alias="localAddress")
|
|
50
50
|
local_interface: Optional[V1GlobalConfigPatchRequestRoutingPoliciesValuePolicyStatementsValueStatementMatchesValueMatchSourceInterface] = Field(default=None, alias="localInterface")
|
|
51
51
|
max_prefix_value: Optional[V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighborMaxPrefixValue] = Field(default=None, alias="maxPrefixValue")
|
|
52
|
-
md5_password: Optional[
|
|
52
|
+
md5_password: Optional[V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRoutingBgpMd5Password] = Field(default=None, alias="md5Password")
|
|
53
53
|
peer_asn: Optional[Annotated[int, Field(strict=True, ge=0)]] = Field(default=None, alias="peerAsn")
|
|
54
54
|
remote_address: Optional[StrictStr] = Field(default=None, alias="remoteAddress")
|
|
55
55
|
remove_private_as: Optional[StrictBool] = Field(default=None, alias="removePrivateAs")
|
|
@@ -139,7 +139,7 @@ class V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighbor(Base
|
|
|
139
139
|
|
|
140
140
|
_obj = cls.model_validate({
|
|
141
141
|
"addressFamilies": dict(
|
|
142
|
-
(_k,
|
|
142
|
+
(_k, V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRoutingBgpAddressFamiliesValue.from_dict(_v))
|
|
143
143
|
for _k, _v in obj["addressFamilies"].items()
|
|
144
144
|
)
|
|
145
145
|
if obj.get("addressFamilies") is not None
|
|
@@ -157,7 +157,7 @@ class V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighbor(Base
|
|
|
157
157
|
"localAddress": obj.get("localAddress"),
|
|
158
158
|
"localInterface": V1GlobalConfigPatchRequestRoutingPoliciesValuePolicyStatementsValueStatementMatchesValueMatchSourceInterface.from_dict(obj["localInterface"]) if obj.get("localInterface") is not None else None,
|
|
159
159
|
"maxPrefixValue": V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValueNeighborMaxPrefixValue.from_dict(obj["maxPrefixValue"]) if obj.get("maxPrefixValue") is not None else None,
|
|
160
|
-
"md5Password":
|
|
160
|
+
"md5Password": V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRoutingBgpMd5Password.from_dict(obj["md5Password"]) if obj.get("md5Password") is not None else None,
|
|
161
161
|
"peerAsn": obj.get("peerAsn"),
|
|
162
162
|
"remoteAddress": obj.get("remoteAddress"),
|
|
163
163
|
"removePrivateAs": obj.get("removePrivateAs"),
|
|
@@ -20,7 +20,7 @@ import json
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
22
|
from typing_extensions import Annotated
|
|
23
|
-
from graphiant_sdk.models.
|
|
23
|
+
from graphiant_sdk.models.v1_extranets_b2b_peering_consumer_id_post_request_site_to_site_vpn_ipsec_gateway_details_routing import V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRouting
|
|
24
24
|
from typing import Optional, Set
|
|
25
25
|
from typing_extensions import Self
|
|
26
26
|
|
|
@@ -42,7 +42,7 @@ class V1DevicesDeviceIdConfigPutRequestEdgeSiteToSiteVpnValueSiteToSiteVpn(BaseM
|
|
|
42
42
|
remote_address_v4: Optional[StrictStr] = Field(default=None, alias="remoteAddressV4")
|
|
43
43
|
remote_address_v6: Optional[StrictStr] = Field(default=None, alias="remoteAddressV6")
|
|
44
44
|
remote_ike_peer_identity: Optional[StrictStr] = Field(default=None, alias="remoteIkePeerIdentity")
|
|
45
|
-
routing: Optional[
|
|
45
|
+
routing: Optional[V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRouting] = None
|
|
46
46
|
tcp_mss: Optional[Annotated[int, Field(strict=True, ge=0)]] = Field(default=None, alias="tcpMss")
|
|
47
47
|
vpn_profile: Optional[StrictStr] = Field(default=None, alias="vpnProfile")
|
|
48
48
|
__properties: ClassVar[List[str]] = ["destinationAddress", "ikeInitiator", "ipsecLabel", "lan", "localAddressV4", "localAddressV6", "localCircuit", "localIkePeerIdentity", "mtu", "name", "presharedKey", "remoteAddressV4", "remoteAddressV6", "remoteIkePeerIdentity", "routing", "tcpMss", "vpnProfile"]
|
|
@@ -115,7 +115,7 @@ class V1DevicesDeviceIdConfigPutRequestEdgeSiteToSiteVpnValueSiteToSiteVpn(BaseM
|
|
|
115
115
|
"remoteAddressV4": obj.get("remoteAddressV4"),
|
|
116
116
|
"remoteAddressV6": obj.get("remoteAddressV6"),
|
|
117
117
|
"remoteIkePeerIdentity": obj.get("remoteIkePeerIdentity"),
|
|
118
|
-
"routing":
|
|
118
|
+
"routing": V1ExtranetsB2bPeeringConsumerIdPostRequestSiteToSiteVpnIpsecGatewayDetailsRouting.from_dict(obj["routing"]) if obj.get("routing") is not None else None,
|
|
119
119
|
"tcpMss": obj.get("tcpMss"),
|
|
120
120
|
"vpnProfile": obj.get("vpnProfile")
|
|
121
121
|
})
|
|
@@ -44,9 +44,10 @@ class V1EnterprisesGet200ResponseEnterprisesInner(BaseModel):
|
|
|
44
44
|
parent_company_name: Optional[StrictStr] = Field(default=None, alias="parentCompanyName")
|
|
45
45
|
parent_enterprise_id: Optional[StrictInt] = Field(default=None, alias="parentEnterpriseId")
|
|
46
46
|
portal_banner: Optional[StrictStr] = Field(default=None, alias="portalBanner")
|
|
47
|
+
proxy_tenant_id: Optional[StrictInt] = Field(default=None, alias="proxyTenantId")
|
|
47
48
|
small_logo: Optional[StrictStr] = Field(default=None, alias="smallLogo")
|
|
48
49
|
token_expiry: Optional[StrictStr] = Field(default=None, alias="tokenExpiry")
|
|
49
|
-
__properties: ClassVar[List[str]] = ["acceptEula", "accountType", "adminEmail", "cloudProvider", "companyName", "counts", "creditLimit", "customers", "enterpriseId", "eulaAgreementDate", "impersonationEnabled", "logo", "parentCompanyName", "parentEnterpriseId", "portalBanner", "smallLogo", "tokenExpiry"]
|
|
50
|
+
__properties: ClassVar[List[str]] = ["acceptEula", "accountType", "adminEmail", "cloudProvider", "companyName", "counts", "creditLimit", "customers", "enterpriseId", "eulaAgreementDate", "impersonationEnabled", "logo", "parentCompanyName", "parentEnterpriseId", "portalBanner", "proxyTenantId", "smallLogo", "tokenExpiry"]
|
|
50
51
|
|
|
51
52
|
model_config = ConfigDict(
|
|
52
53
|
populate_by_name=True,
|
|
@@ -132,6 +133,7 @@ class V1EnterprisesGet200ResponseEnterprisesInner(BaseModel):
|
|
|
132
133
|
"parentCompanyName": obj.get("parentCompanyName"),
|
|
133
134
|
"parentEnterpriseId": obj.get("parentEnterpriseId"),
|
|
134
135
|
"portalBanner": obj.get("portalBanner"),
|
|
136
|
+
"proxyTenantId": obj.get("proxyTenantId"),
|
|
135
137
|
"smallLogo": obj.get("smallLogo"),
|
|
136
138
|
"tokenExpiry": obj.get("tokenExpiry")
|
|
137
139
|
})
|
|
@@ -35,9 +35,10 @@ class V1EnterprisesPatchRequest(BaseModel):
|
|
|
35
35
|
impersonation_enabled: Optional[StrictBool] = Field(default=None, alias="impersonationEnabled")
|
|
36
36
|
logo: Optional[StrictStr] = None
|
|
37
37
|
portal_banner: Optional[StrictStr] = Field(default=None, alias="portalBanner")
|
|
38
|
+
proxy_tenant_id: Optional[StrictInt] = Field(default=None, alias="proxyTenantId")
|
|
38
39
|
small_logo: Optional[StrictStr] = Field(default=None, alias="smallLogo")
|
|
39
40
|
token_expiry: Optional[V1EnterprisesPatchRequestTokenExpiry] = Field(default=None, alias="tokenExpiry")
|
|
40
|
-
__properties: ClassVar[List[str]] = ["adminEmail", "cloudProvider", "companyName", "creditLimit", "enterpriseId", "impersonationEnabled", "logo", "portalBanner", "smallLogo", "tokenExpiry"]
|
|
41
|
+
__properties: ClassVar[List[str]] = ["adminEmail", "cloudProvider", "companyName", "creditLimit", "enterpriseId", "impersonationEnabled", "logo", "portalBanner", "proxyTenantId", "smallLogo", "tokenExpiry"]
|
|
41
42
|
|
|
42
43
|
model_config = ConfigDict(
|
|
43
44
|
populate_by_name=True,
|
|
@@ -101,6 +102,7 @@ class V1EnterprisesPatchRequest(BaseModel):
|
|
|
101
102
|
"impersonationEnabled": obj.get("impersonationEnabled"),
|
|
102
103
|
"logo": obj.get("logo"),
|
|
103
104
|
"portalBanner": obj.get("portalBanner"),
|
|
105
|
+
"proxyTenantId": obj.get("proxyTenantId"),
|
|
104
106
|
"smallLogo": obj.get("smallLogo"),
|
|
105
107
|
"tokenExpiry": V1EnterprisesPatchRequestTokenExpiry.from_dict(obj["tokenExpiry"]) if obj.get("tokenExpiry") is not None else None
|
|
106
108
|
})
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Graphiant APIs
|
|
5
|
+
|
|
6
|
+
Graphiant API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from typing import Optional, Set
|
|
23
|
+
from typing_extensions import Self
|
|
24
|
+
|
|
25
|
+
class V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPost200Response(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPost200Response
|
|
28
|
+
""" # noqa: E501
|
|
29
|
+
customer_name: Optional[List[StrictStr]] = Field(default=None, alias="customerName")
|
|
30
|
+
__properties: ClassVar[List[str]] = ["customerName"]
|
|
31
|
+
|
|
32
|
+
model_config = ConfigDict(
|
|
33
|
+
populate_by_name=True,
|
|
34
|
+
validate_assignment=True,
|
|
35
|
+
protected_namespaces=(),
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def to_str(self) -> str:
|
|
40
|
+
"""Returns the string representation of the model using alias"""
|
|
41
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
42
|
+
|
|
43
|
+
def to_json(self) -> str:
|
|
44
|
+
"""Returns the JSON representation of the model using alias"""
|
|
45
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
46
|
+
return json.dumps(self.to_dict())
|
|
47
|
+
|
|
48
|
+
@classmethod
|
|
49
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
50
|
+
"""Create an instance of V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPost200Response from a JSON string"""
|
|
51
|
+
return cls.from_dict(json.loads(json_str))
|
|
52
|
+
|
|
53
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
54
|
+
"""Return the dictionary representation of the model using alias.
|
|
55
|
+
|
|
56
|
+
This has the following differences from calling pydantic's
|
|
57
|
+
`self.model_dump(by_alias=True)`:
|
|
58
|
+
|
|
59
|
+
* `None` is only added to the output dict for nullable fields that
|
|
60
|
+
were set at model initialization. Other fields with value `None`
|
|
61
|
+
are ignored.
|
|
62
|
+
"""
|
|
63
|
+
excluded_fields: Set[str] = set([
|
|
64
|
+
])
|
|
65
|
+
|
|
66
|
+
_dict = self.model_dump(
|
|
67
|
+
by_alias=True,
|
|
68
|
+
exclude=excluded_fields,
|
|
69
|
+
exclude_none=True,
|
|
70
|
+
)
|
|
71
|
+
return _dict
|
|
72
|
+
|
|
73
|
+
@classmethod
|
|
74
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
75
|
+
"""Create an instance of V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPost200Response from a dict"""
|
|
76
|
+
if obj is None:
|
|
77
|
+
return None
|
|
78
|
+
|
|
79
|
+
if not isinstance(obj, dict):
|
|
80
|
+
return cls.model_validate(obj)
|
|
81
|
+
|
|
82
|
+
_obj = cls.model_validate({
|
|
83
|
+
"customerName": obj.get("customerName")
|
|
84
|
+
})
|
|
85
|
+
return _obj
|
|
86
|
+
|
|
87
|
+
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Graphiant APIs
|
|
5
|
+
|
|
6
|
+
Graphiant API documentation.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from graphiant_sdk.models.v2_notificationlist_post_request_time_window import V2NotificationlistPostRequestTimeWindow
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPostRequest(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPostRequest
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
id: Optional[StrictInt] = None
|
|
31
|
+
is_provider: Optional[StrictBool] = Field(default=None, alias="isProvider")
|
|
32
|
+
time_window: Optional[V2NotificationlistPostRequestTimeWindow] = Field(default=None, alias="timeWindow")
|
|
33
|
+
__properties: ClassVar[List[str]] = ["id", "isProvider", "timeWindow"]
|
|
34
|
+
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
49
|
+
return json.dumps(self.to_dict())
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
53
|
+
"""Create an instance of V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPostRequest from a JSON string"""
|
|
54
|
+
return cls.from_dict(json.loads(json_str))
|
|
55
|
+
|
|
56
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
57
|
+
"""Return the dictionary representation of the model using alias.
|
|
58
|
+
|
|
59
|
+
This has the following differences from calling pydantic's
|
|
60
|
+
`self.model_dump(by_alias=True)`:
|
|
61
|
+
|
|
62
|
+
* `None` is only added to the output dict for nullable fields that
|
|
63
|
+
were set at model initialization. Other fields with value `None`
|
|
64
|
+
are ignored.
|
|
65
|
+
"""
|
|
66
|
+
excluded_fields: Set[str] = set([
|
|
67
|
+
])
|
|
68
|
+
|
|
69
|
+
_dict = self.model_dump(
|
|
70
|
+
by_alias=True,
|
|
71
|
+
exclude=excluded_fields,
|
|
72
|
+
exclude_none=True,
|
|
73
|
+
)
|
|
74
|
+
# override the default output from pydantic by calling `to_dict()` of time_window
|
|
75
|
+
if self.time_window:
|
|
76
|
+
_dict['timeWindow'] = self.time_window.to_dict()
|
|
77
|
+
return _dict
|
|
78
|
+
|
|
79
|
+
@classmethod
|
|
80
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
81
|
+
"""Create an instance of V1ExtranetB2bMonitoringPeeringServiceServiceCustomerListPostRequest from a dict"""
|
|
82
|
+
if obj is None:
|
|
83
|
+
return None
|
|
84
|
+
|
|
85
|
+
if not isinstance(obj, dict):
|
|
86
|
+
return cls.model_validate(obj)
|
|
87
|
+
|
|
88
|
+
_obj = cls.model_validate({
|
|
89
|
+
"id": obj.get("id"),
|
|
90
|
+
"isProvider": obj.get("isProvider"),
|
|
91
|
+
"timeWindow": V2NotificationlistPostRequestTimeWindow.from_dict(obj["timeWindow"]) if obj.get("timeWindow") is not None else None
|
|
92
|
+
})
|
|
93
|
+
return _obj
|
|
94
|
+
|
|
95
|
+
|