def METHOD_NAME(self):
    permission_classes = [IsAdminUser]
    if self.action == "create":
        permission_classes = [IsAdminOrFirstTimeSetupOrRegistrationAllowed]
    elif self.action in ["list", "retrieve"]:
        permission_classes = [AllowAny]
    elif self.action in ["update", "partial_update"]:
        permission_classes = [IsAdminOrSelf]
    return [p() for p in permission_classes]