diff --git a/dojo/api_v2/serializers.py b/dojo/api_v2/serializers.py index 806a8a1453a..7acd0eac1ab 100644 --- a/dojo/api_v2/serializers.py +++ b/dojo/api_v2/serializers.py @@ -2103,6 +2103,11 @@ class ProductSerializer(serializers.ModelSerializer): findings_count = serializers.SerializerMethodField() findings_list = serializers.SerializerMethodField() + business_criticality = serializers.ChoiceField(choices=Product.BUSINESS_CRITICALITY_CHOICES, allow_blank=True, allow_null=True, required=False) + platform = serializers.ChoiceField(choices=Product.PLATFORM_CHOICES, allow_blank=True, allow_null=True, required=False) + lifecycle = serializers.ChoiceField(choices=Product.LIFECYCLE_CHOICES, allow_blank=True, allow_null=True, required=False) + origin = serializers.ChoiceField(choices=Product.ORIGIN_CHOICES, allow_blank=True, allow_null=True, required=False) + tags = TagListSerializerField(required=False) product_meta = ProductMetaSerializer(read_only=True, many=True) diff --git a/dojo/filters.py b/dojo/filters.py index ebd8b023fb8..449b755ef1e 100644 --- a/dojo/filters.py +++ b/dojo/filters.py @@ -1423,10 +1423,10 @@ class ApiProductFilter(DojoFilter): name = CharFilter(lookup_expr="icontains") name_exact = CharFilter(field_name="name", lookup_expr="iexact") description = CharFilter(lookup_expr="icontains") - business_criticality = CharFilter(method=custom_filter, field_name="business_criticality") - platform = CharFilter(method=custom_filter, field_name="platform") - lifecycle = CharFilter(method=custom_filter, field_name="lifecycle") - origin = CharFilter(method=custom_filter, field_name="origin") + business_criticality = MultipleChoiceFilter(choices=Product.BUSINESS_CRITICALITY_CHOICES) + platform = MultipleChoiceFilter(choices=Product.PLATFORM_CHOICES) + lifecycle = MultipleChoiceFilter(choices=Product.LIFECYCLE_CHOICES) + origin = MultipleChoiceFilter(choices=Product.ORIGIN_CHOICES) # NumberInFilter id = NumberInFilter(field_name="id", lookup_expr="in") product_manager = NumberInFilter(field_name="product_manager", lookup_expr="in")