diff --git a/netbox/dcim/api/serializers.py b/netbox/dcim/api/serializers.py index 5483904f5..7a7feb8e1 100644 --- a/netbox/dcim/api/serializers.py +++ b/netbox/dcim/api/serializers.py @@ -376,6 +376,7 @@ class DeviceSerializer(TaggitSerializer, CustomFieldModelSerializer): cluster = NestedClusterSerializer(required=False, allow_null=True) virtual_chassis = NestedVirtualChassisSerializer(required=False, allow_null=True) tags = TagListSerializerField(required=False) + local_context_data = serializers.SerializerMethodField() class Meta: model = Device @@ -411,6 +412,11 @@ class DeviceSerializer(TaggitSerializer, CustomFieldModelSerializer): data['device_bay'] = NestedDeviceBaySerializer(instance=device_bay, context=context).data return data + @swagger_serializer_method(serializer_or_field=serializers.DictField) + def get_local_context_data(self, obj): + """Used to strongly type the local_context_data field for Swagger generation + """ + return obj.local_context_data class DeviceWithConfigContextSerializer(DeviceSerializer): config_context = serializers.SerializerMethodField() diff --git a/netbox/virtualization/api/serializers.py b/netbox/virtualization/api/serializers.py index a294cdb6f..ecddfbdae 100644 --- a/netbox/virtualization/api/serializers.py +++ b/netbox/virtualization/api/serializers.py @@ -67,6 +67,7 @@ class VirtualMachineSerializer(TaggitSerializer, CustomFieldModelSerializer): primary_ip4 = NestedIPAddressSerializer(required=False, allow_null=True) primary_ip6 = NestedIPAddressSerializer(required=False, allow_null=True) tags = TagListSerializerField(required=False) + local_context_data = serializers.SerializerMethodField() class Meta: model = VirtualMachine @@ -77,6 +78,12 @@ class VirtualMachineSerializer(TaggitSerializer, CustomFieldModelSerializer): ] validators = [] + @swagger_serializer_method(serializer_or_field=serializers.DictField) + def get_local_context_data(self, obj): + """Used to strongly type the local_context_data field for Swagger generation + """ + return obj.local_context_data + class VirtualMachineWithConfigContextSerializer(VirtualMachineSerializer): config_context = serializers.SerializerMethodField()