Вы говорите о чем-то подобном?
class FooSerializer(serializers.Serializer):
bar = serializers.CharField(max_length=100)
filter1 = serializers.CharField(max_length=100)
filter2 = serializers.CharField(max_length=100)
def validate(self, data):
print('bar value:', data.get('bar'))
print('filter1 value:', data.get('filter1'))
print('filter2 value:', data.get('filter2'))
# Put your conditions and queries here and raise serializers.ValidationError() if they don't match
return data
serializer = FooSerializer(data=request.data)
serializer.is_valid(raise_exception=True)