@@ -843,7 +843,7 @@ class Traits(Record):
843
843
autonomous_system_organization : Optional [str ]
844
844
connection_type : Optional [str ]
845
845
domain : Optional [str ]
846
- _ip_address : IPAddress
846
+ _ip_address : Optional [ IPAddress ]
847
847
is_anonymous : bool
848
848
is_anonymous_proxy : bool
849
849
is_anonymous_vpn : bool
@@ -914,8 +914,6 @@ def __init__(
914
914
self .static_ip_score = static_ip_score
915
915
self .user_type = user_type
916
916
self .user_count = user_count
917
- if ip_address is None :
918
- raise TypeError ("ip_address must be defined" )
919
917
self ._ip_address = ip_address
920
918
if network is None :
921
919
self ._network = None
@@ -927,11 +925,16 @@ def __init__(
927
925
self ._prefix_len = prefix_len
928
926
929
927
@property
930
- def ip_address (self ) -> Union [IPv4Address , IPv6Address ]:
928
+ def ip_address (self ) -> Optional [ Union [IPv4Address , IPv6Address ] ]:
931
929
"""The IP address for the record."""
932
- if not isinstance (self ._ip_address , (IPv4Address , IPv6Address )):
933
- self ._ip_address = ipaddress .ip_address (self ._ip_address )
934
- return self ._ip_address
930
+ ip_address = self ._ip_address
931
+ if ip_address is None :
932
+ return None
933
+
934
+ if not isinstance (ip_address , (IPv4Address , IPv6Address )):
935
+ ip_address = ipaddress .ip_address (ip_address )
936
+ self ._ip_address = ip_address
937
+ return ip_address
935
938
936
939
@property
937
940
def network (self ) -> Optional [Union [ipaddress .IPv4Network , ipaddress .IPv6Network ]]:
0 commit comments