apiVersion: v1 data: schema.py: | from rest_framework.viewsets import ModelViewSet from rest_framework.permissions import IsAuthenticated from core.permissions import CompanyIdTokenBasedPermission from main.models import AttributeSchema from main.api.v0.filters import AttributeSchemaFilterSet from main.serializers import ( AttributeSchemaCreateSerializer, AttributeSchemaRetrieveSerializer, ) class AttributeSchemaViewSet(ModelViewSet): queryset = AttributeSchema.public.all() create_serializer_class = AttributeSchemaCreateSerializer retrieve_serializer_class = AttributeSchemaRetrieveSerializer filterset_class = AttributeSchemaFilterSet #permission_classes = [IsAuthenticated, CompanyIdTokenBasedPermission] filterset_fields = [ "model_name", "type_identifier", "service_name", ] def get_serializer_class(self): if self.action in ("retrieve", "list",): return self.retrieve_serializer_class return self.create_serializer_class def filter_queryset(self, queryset, *args, **kwargs): qs = super().filter_queryset(queryset) qs = qs.filter(published=True) qs = qs.order_by("tenant_identifier") return qs kind: ConfigMap metadata: name: schema namespace: eav