from typing import Any, Dict, List, Literal, Optional, Union
VariableOptionTypeDef = Literal["variable"]
GlobalOptionTypeDef = Literal["global"]
Ipv4SubnetMaskDef = Literal[
"0.0.0.0",
"128.0.0.0",
"192.0.0.0",
"224.0.0.0",
"240.0.0.0",
"248.0.0.0",
"252.0.0.0",
"254.0.0.0",
"255.0.0.0",
"255.128.0.0",
"255.192.0.0",
"255.224.0.0",
"255.240.0.0",
"255.252.0.0",
"255.254.0.0",
"255.255.0.0",
"255.255.128.0",
"255.255.192.0",
"255.255.224.0",
"255.255.240.0",
"255.255.248.0",
"255.255.252.0",
"255.255.254.0",
"255.255.255.0",
"255.255.255.128",
"255.255.255.192",
"255.255.255.224",
"255.255.255.240",
"255.255.255.248",
"255.255.255.252",
"255.255.255.254",
"255.255.255.255",
]
DefaultOptionTypeDef = Literal["default"]
class OneOfIpV4AddressOptionsDef1:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfIpV4AddressOptionsDef2:
option_type: GlobalOptionTypeDef
value: Any
class OneOfIpV4SubnetMaskOptionsDef1:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfIpV4SubnetMaskOptionsDef2:
option_type: GlobalOptionTypeDef
value: (
Ipv4SubnetMaskDef # pytype: disable=annotation-type-mismatch
)
class AddressPool:
"""
Configure IPv4 prefix range of the DHCP address pool
"""
network_address: Union[
OneOfIpV4AddressOptionsDef1, OneOfIpV4AddressOptionsDef2
]
subnet_mask: Union[
OneOfIpV4SubnetMaskOptionsDef1, OneOfIpV4SubnetMaskOptionsDef2
]
class OneOfExcludeOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Union[Any, str]]
class OneOfExcludeOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfExcludeOptionsDef3:
option_type: DefaultOptionTypeDef
class OneOfOnBooleanDefaultFalseNoVariableOptionsDef1:
option_type: GlobalOptionTypeDef
value: bool
class OneOfOnBooleanDefaultFalseNoVariableOptionsDef2:
option_type: DefaultOptionTypeDef
value: bool
class OneOfLeaseTimeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class OneOfLeaseTimeOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfLeaseTimeOptionsDef3:
option_type: Optional[DefaultOptionTypeDef]
value: Optional[int]
class OneOfInterfaceMtuOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class OneOfInterfaceMtuOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfInterfaceMtuOptionsDef3:
option_type: DefaultOptionTypeDef
class OneOfDomainNameOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class OneOfDomainNameOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfDomainNameOptionsDef3:
option_type: DefaultOptionTypeDef
class OneOfDefaultGatewayOptionsDef1:
option_type: GlobalOptionTypeDef
value: Any
class OneOfDefaultGatewayOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfDefaultGatewayOptionsDef3:
option_type: DefaultOptionTypeDef
class OneOfDnsServersOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class OneOfDnsServersOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfDnsServersOptionsDef3:
option_type: DefaultOptionTypeDef
class OneOfTftpServersOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class OneOfTftpServersOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfTftpServersOptionsDef3:
option_type: DefaultOptionTypeDef
class OneOfStaticLeaseMacAddressOptionsDef1:
option_type: GlobalOptionTypeDef
value: Any
class OneOfStaticLeaseMacAddressOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfStaticLeaseIpOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class OneOfStaticLeaseIpOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class StaticLease:
ip: Union[
OneOfStaticLeaseIpOptionsDef1, OneOfStaticLeaseIpOptionsDef2
]
mac_address: Union[
OneOfStaticLeaseMacAddressOptionsDef1,
OneOfStaticLeaseMacAddressOptionsDef2,
]
class OneOfOptionCodeCodeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class OneOfOptionCodeCodeOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OneOfOptionCodeAsciiOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class OneOfOptionCodeAsciiOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OptionCode1:
ascii: Union[
OneOfOptionCodeAsciiOptionsDef1,
OneOfOptionCodeAsciiOptionsDef2,
]
code: Union[
OneOfOptionCodeCodeOptionsDef1, OneOfOptionCodeCodeOptionsDef2
]
class OneOfOptionCodeHexOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class OneOfOptionCodeHexOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OptionCode2:
code: Union[
OneOfOptionCodeCodeOptionsDef1, OneOfOptionCodeCodeOptionsDef2
]
hex: Union[
OneOfOptionCodeHexOptionsDef1, OneOfOptionCodeHexOptionsDef2
]
class OneOfOptionCodeIpOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class OneOfOptionCodeIpOptionsDef2:
option_type: VariableOptionTypeDef
value: str
default: Optional[str]
description: Optional[str]
class OptionCode3:
code: Union[
OneOfOptionCodeCodeOptionsDef1, OneOfOptionCodeCodeOptionsDef2
]
ip: Union[
OneOfOptionCodeIpOptionsDef1, OneOfOptionCodeIpOptionsDef2
]
class DhcpServerData:
# Configure IPv4 prefix range of the DHCP address pool
address_pool: AddressPool
default_gateway: Optional[
Union[
OneOfDefaultGatewayOptionsDef1,
OneOfDefaultGatewayOptionsDef2,
OneOfDefaultGatewayOptionsDef3,
]
]
dns_servers: Optional[
Union[
OneOfDnsServersOptionsDef1,
OneOfDnsServersOptionsDef2,
OneOfDnsServersOptionsDef3,
]
]
domain_name: Optional[
Union[
OneOfDomainNameOptionsDef1,
OneOfDomainNameOptionsDef2,
OneOfDomainNameOptionsDef3,
]
]
exclude: Optional[
Union[
OneOfExcludeOptionsDef1,
OneOfExcludeOptionsDef2,
OneOfExcludeOptionsDef3,
]
]
interface_mtu: Optional[
Union[
OneOfInterfaceMtuOptionsDef1,
OneOfInterfaceMtuOptionsDef2,
OneOfInterfaceMtuOptionsDef3,
]
]
lease_infinite: Optional[
Union[
OneOfOnBooleanDefaultFalseNoVariableOptionsDef1,
OneOfOnBooleanDefaultFalseNoVariableOptionsDef2,
]
]
lease_time: Optional[
Union[
OneOfLeaseTimeOptionsDef1,
OneOfLeaseTimeOptionsDef2,
OneOfLeaseTimeOptionsDef3,
]
]
# Configure Options Code
option_code: Optional[
List[Union[OptionCode1, OptionCode2, OptionCode3]]
]
# Configure static IP addresses
static_lease: Optional[List[StaticLease]]
tftp_servers: Optional[
Union[
OneOfTftpServersOptionsDef1,
OneOfTftpServersOptionsDef2,
OneOfTftpServersOptionsDef3,
]
]
class Payload:
"""
SD-Routing DHCP server feature schema
"""
data: DhcpServerData
description: Optional[str]
metadata: Optional[Any]
name: Optional[str]
class Data:
# User who last created this.
created_by: Optional[str]
# Timestamp of creation
created_on: Optional[int]
# User who last updated this.
last_updated_by: Optional[str]
# Timestamp of last update
last_updated_on: Optional[int]
parcel_id: Optional[str]
parcel_type: Optional[str]
# SD-Routing DHCP server feature schema
payload: Optional[Payload]
class GetListSdRoutingServiceDhcpServerPayload:
data: Optional[List[Data]]
class CreateSdroutingDhcpServerProfileParcelPostResponse:
"""
Profile Parcel POST Response schema
"""
parcel_id: str
metadata: Optional[Any]
class ServiceDhcpServerData:
# Configure IPv4 prefix range of the DHCP address pool
address_pool: AddressPool
default_gateway: Optional[
Union[
OneOfDefaultGatewayOptionsDef1,
OneOfDefaultGatewayOptionsDef2,
OneOfDefaultGatewayOptionsDef3,
]
]
dns_servers: Optional[
Union[
OneOfDnsServersOptionsDef1,
OneOfDnsServersOptionsDef2,
OneOfDnsServersOptionsDef3,
]
]
domain_name: Optional[
Union[
OneOfDomainNameOptionsDef1,
OneOfDomainNameOptionsDef2,
OneOfDomainNameOptionsDef3,
]
]
exclude: Optional[
Union[
OneOfExcludeOptionsDef1,
OneOfExcludeOptionsDef2,
OneOfExcludeOptionsDef3,
]
]
interface_mtu: Optional[
Union[
OneOfInterfaceMtuOptionsDef1,
OneOfInterfaceMtuOptionsDef2,
OneOfInterfaceMtuOptionsDef3,
]
]
lease_infinite: Optional[
Union[
OneOfOnBooleanDefaultFalseNoVariableOptionsDef1,
OneOfOnBooleanDefaultFalseNoVariableOptionsDef2,
]
]
lease_time: Optional[
Union[
OneOfLeaseTimeOptionsDef1,
OneOfLeaseTimeOptionsDef2,
OneOfLeaseTimeOptionsDef3,
]
]
# Configure Options Code
option_code: Optional[
List[Union[OptionCode1, OptionCode2, OptionCode3]]
]
# Configure static IP addresses
static_lease: Optional[List[StaticLease]]
tftp_servers: Optional[
Union[
OneOfTftpServersOptionsDef1,
OneOfTftpServersOptionsDef2,
OneOfTftpServersOptionsDef3,
]
]
class CreateSdroutingDhcpServerProfileParcelPostRequest:
"""
SD-Routing DHCP server feature schema
"""
data: ServiceDhcpServerData
description: Optional[str]
metadata: Optional[Any]
name: Optional[str]
class DhcpServerOneOfExcludeOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Union[Any, str]]
class DhcpServerOneOfLeaseTimeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class DhcpServerOneOfLeaseTimeOptionsDef3:
option_type: Optional[DefaultOptionTypeDef]
value: Optional[int]
class DhcpServerOneOfInterfaceMtuOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class DhcpServerOneOfDomainNameOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class DhcpServerOneOfDnsServersOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class DhcpServerOneOfTftpServersOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class DhcpServerOneOfStaticLeaseMacAddressOptionsDef1:
option_type: GlobalOptionTypeDef
value: Any
class DhcpServerOneOfStaticLeaseIpOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class DhcpServerStaticLease:
ip: Union[
DhcpServerOneOfStaticLeaseIpOptionsDef1,
OneOfStaticLeaseIpOptionsDef2,
]
mac_address: Union[
DhcpServerOneOfStaticLeaseMacAddressOptionsDef1,
OneOfStaticLeaseMacAddressOptionsDef2,
]
class DhcpServerOneOfOptionCodeCodeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class DhcpServerOneOfOptionCodeAsciiOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class DhcpServerOptionCode1:
ascii: Union[
DhcpServerOneOfOptionCodeAsciiOptionsDef1,
OneOfOptionCodeAsciiOptionsDef2,
]
code: Union[
DhcpServerOneOfOptionCodeCodeOptionsDef1,
OneOfOptionCodeCodeOptionsDef2,
]
class ServiceDhcpServerOneOfOptionCodeCodeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class DhcpServerOneOfOptionCodeHexOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class DhcpServerOptionCode2:
code: Union[
ServiceDhcpServerOneOfOptionCodeCodeOptionsDef1,
OneOfOptionCodeCodeOptionsDef2,
]
hex: Union[
DhcpServerOneOfOptionCodeHexOptionsDef1,
OneOfOptionCodeHexOptionsDef2,
]
class SdRoutingServiceDhcpServerOneOfOptionCodeCodeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class DhcpServerOneOfOptionCodeIpOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class DhcpServerOptionCode3:
code: Union[
SdRoutingServiceDhcpServerOneOfOptionCodeCodeOptionsDef1,
OneOfOptionCodeCodeOptionsDef2,
]
ip: Union[
DhcpServerOneOfOptionCodeIpOptionsDef1,
OneOfOptionCodeIpOptionsDef2,
]
class SdRoutingServiceDhcpServerData:
# Configure IPv4 prefix range of the DHCP address pool
address_pool: AddressPool
default_gateway: Optional[
Union[
OneOfDefaultGatewayOptionsDef1,
OneOfDefaultGatewayOptionsDef2,
OneOfDefaultGatewayOptionsDef3,
]
]
dns_servers: Optional[
Union[
DhcpServerOneOfDnsServersOptionsDef1,
OneOfDnsServersOptionsDef2,
OneOfDnsServersOptionsDef3,
]
]
domain_name: Optional[
Union[
DhcpServerOneOfDomainNameOptionsDef1,
OneOfDomainNameOptionsDef2,
OneOfDomainNameOptionsDef3,
]
]
exclude: Optional[
Union[
DhcpServerOneOfExcludeOptionsDef1,
OneOfExcludeOptionsDef2,
OneOfExcludeOptionsDef3,
]
]
interface_mtu: Optional[
Union[
DhcpServerOneOfInterfaceMtuOptionsDef1,
OneOfInterfaceMtuOptionsDef2,
OneOfInterfaceMtuOptionsDef3,
]
]
lease_infinite: Optional[
Union[
OneOfOnBooleanDefaultFalseNoVariableOptionsDef1,
OneOfOnBooleanDefaultFalseNoVariableOptionsDef2,
]
]
lease_time: Optional[
Union[
DhcpServerOneOfLeaseTimeOptionsDef1,
OneOfLeaseTimeOptionsDef2,
DhcpServerOneOfLeaseTimeOptionsDef3,
]
]
# Configure Options Code
option_code: Optional[
List[
Union[
DhcpServerOptionCode1,
DhcpServerOptionCode2,
DhcpServerOptionCode3,
]
]
]
# Configure static IP addresses
static_lease: Optional[List[DhcpServerStaticLease]]
tftp_servers: Optional[
Union[
DhcpServerOneOfTftpServersOptionsDef1,
OneOfTftpServersOptionsDef2,
OneOfTftpServersOptionsDef3,
]
]
class DhcpServerPayload:
"""
SD-Routing DHCP server feature schema
"""
data: SdRoutingServiceDhcpServerData
description: Optional[str]
metadata: Optional[Any]
name: Optional[str]
class GetSingleSdRoutingServiceDhcpServerPayload:
# User who last created this.
created_by: Optional[str]
# Timestamp of creation
created_on: Optional[int]
# User who last updated this.
last_updated_by: Optional[str]
# Timestamp of last update
last_updated_on: Optional[int]
parcel_id: Optional[str]
parcel_type: Optional[str]
# SD-Routing DHCP server feature schema
payload: Optional[DhcpServerPayload]
class EditSdroutingDhcpServerProfileParcelPutResponse:
"""
Profile Parcel PUT Response schema
"""
id: str
metadata: Optional[Any]
class ServiceDhcpServerOneOfExcludeOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Union[Any, str]]
class ServiceDhcpServerOneOfLeaseTimeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class ServiceDhcpServerOneOfLeaseTimeOptionsDef3:
option_type: Optional[DefaultOptionTypeDef]
value: Optional[int]
class ServiceDhcpServerOneOfInterfaceMtuOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class ServiceDhcpServerOneOfDomainNameOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class ServiceDhcpServerOneOfDnsServersOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class ServiceDhcpServerOneOfTftpServersOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class ServiceDhcpServerOneOfStaticLeaseMacAddressOptionsDef1:
option_type: GlobalOptionTypeDef
value: Any
class ServiceDhcpServerOneOfStaticLeaseIpOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class ServiceDhcpServerStaticLease:
ip: Union[
ServiceDhcpServerOneOfStaticLeaseIpOptionsDef1,
OneOfStaticLeaseIpOptionsDef2,
]
mac_address: Union[
ServiceDhcpServerOneOfStaticLeaseMacAddressOptionsDef1,
OneOfStaticLeaseMacAddressOptionsDef2,
]
class FeatureProfileSdRoutingServiceDhcpServerOneOfOptionCodeCodeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class ServiceDhcpServerOneOfOptionCodeAsciiOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class ServiceDhcpServerOptionCode1:
ascii: Union[
ServiceDhcpServerOneOfOptionCodeAsciiOptionsDef1,
OneOfOptionCodeAsciiOptionsDef2,
]
code: Union[
FeatureProfileSdRoutingServiceDhcpServerOneOfOptionCodeCodeOptionsDef1,
OneOfOptionCodeCodeOptionsDef2,
]
class V1FeatureProfileSdRoutingServiceDhcpServerOneOfOptionCodeCodeOptionsDef1:
option_type: GlobalOptionTypeDef
value: int
class ServiceDhcpServerOneOfOptionCodeHexOptionsDef1:
option_type: GlobalOptionTypeDef
value: str
class ServiceDhcpServerOptionCode2:
code: Union[
V1FeatureProfileSdRoutingServiceDhcpServerOneOfOptionCodeCodeOptionsDef1,
OneOfOptionCodeCodeOptionsDef2,
]
hex: Union[
ServiceDhcpServerOneOfOptionCodeHexOptionsDef1,
OneOfOptionCodeHexOptionsDef2,
]
class OneOfOptionCodeCodeOptionsDef11:
option_type: GlobalOptionTypeDef
value: int
class ServiceDhcpServerOneOfOptionCodeIpOptionsDef1:
option_type: GlobalOptionTypeDef
value: List[Any]
class ServiceDhcpServerOptionCode3:
code: Union[
OneOfOptionCodeCodeOptionsDef11,
OneOfOptionCodeCodeOptionsDef2,
]
ip: Union[
ServiceDhcpServerOneOfOptionCodeIpOptionsDef1,
OneOfOptionCodeIpOptionsDef2,
]
class FeatureProfileSdRoutingServiceDhcpServerData:
# Configure IPv4 prefix range of the DHCP address pool
address_pool: AddressPool
default_gateway: Optional[
Union[
OneOfDefaultGatewayOptionsDef1,
OneOfDefaultGatewayOptionsDef2,
OneOfDefaultGatewayOptionsDef3,
]
]
dns_servers: Optional[
Union[
ServiceDhcpServerOneOfDnsServersOptionsDef1,
OneOfDnsServersOptionsDef2,
OneOfDnsServersOptionsDef3,
]
]
domain_name: Optional[
Union[
ServiceDhcpServerOneOfDomainNameOptionsDef1,
OneOfDomainNameOptionsDef2,
OneOfDomainNameOptionsDef3,
]
]
exclude: Optional[
Union[
ServiceDhcpServerOneOfExcludeOptionsDef1,
OneOfExcludeOptionsDef2,
OneOfExcludeOptionsDef3,
]
]
interface_mtu: Optional[
Union[
ServiceDhcpServerOneOfInterfaceMtuOptionsDef1,
OneOfInterfaceMtuOptionsDef2,
OneOfInterfaceMtuOptionsDef3,
]
]
lease_infinite: Optional[
Union[
OneOfOnBooleanDefaultFalseNoVariableOptionsDef1,
OneOfOnBooleanDefaultFalseNoVariableOptionsDef2,
]
]
lease_time: Optional[
Union[
ServiceDhcpServerOneOfLeaseTimeOptionsDef1,
OneOfLeaseTimeOptionsDef2,
ServiceDhcpServerOneOfLeaseTimeOptionsDef3,
]
]
# Configure Options Code
option_code: Optional[
List[
Union[
ServiceDhcpServerOptionCode1,
ServiceDhcpServerOptionCode2,
ServiceDhcpServerOptionCode3,
]
]
]
# Configure static IP addresses
static_lease: Optional[List[ServiceDhcpServerStaticLease]]
tftp_servers: Optional[
Union[
ServiceDhcpServerOneOfTftpServersOptionsDef1,
OneOfTftpServersOptionsDef2,
OneOfTftpServersOptionsDef3,
]
]
class EditSdroutingDhcpServerProfileParcelPutRequest:
"""
SD-Routing DHCP server feature schema
"""
data: FeatureProfileSdRoutingServiceDhcpServerData
description: Optional[str]
metadata: Optional[Any]
name: Optional[str]