diff --git a/linode_api4/objects/linode.py b/linode_api4/objects/linode.py index fd4f990de..d14261d74 100644 --- a/linode_api4/objects/linode.py +++ b/linode_api4/objects/linode.py @@ -2006,15 +2006,18 @@ def interfaces_settings(self) -> LinodeInterfacesSettings: return self._interfaces_settings @property - def interfaces(self) -> List[LinodeInterface]: + def linode_interfaces(self) -> Optional[list[LinodeInterface]]: """ All interfaces for this Linode. API Documentation: https://techdocs.akamai.com/linode-api/reference/get-linode-interface - :returns: An ordered list of interfaces under this Linode. + :returns: An ordered list of linode interfaces under this Linode. If the linode is with legacy config interfaces, returns None. + :rtype: Optional[list[LinodeInterface]] """ + if self.interface_generation != InterfaceGeneration.LINODE: + return None if not hasattr(self, "_interfaces"): result = self._client.get( "{}/interfaces".format(Instance.api_endpoint), diff --git a/test/unit/objects/linode_test.py b/test/unit/objects/linode_test.py index 4945ff423..d20b9f1c0 100644 --- a/test/unit/objects/linode_test.py +++ b/test/unit/objects/linode_test.py @@ -481,7 +481,7 @@ def test_get_interfaces(self): assert instance.interface_generation == InterfaceGeneration.LINODE - interfaces = instance.interfaces + interfaces = instance.linode_interfaces LinodeInterfaceTest.assert_linode_124_interface_123( next(iface for iface in interfaces if iface.id == 123)