url = serializers.CharField(help_text="Url of VIM", required=True)
     userName = serializers.CharField(help_text="User Name of VIM", required=True)
     password = serializers.CharField(help_text="Password of VIM", required=True)
-    tenantId = serializers.CharField(help_text="Tenant ID of VIM", required=True)
-    tenant = serializers.CharField(help_text="Default Tenant of VIM", required=True)
+    tenantId = serializers.CharField(help_text="Tenant ID of VIM", required=False, allow_null=True, allow_blank=True)
+    tenant = serializers.CharField(help_text="Default Tenant of VIM", required=False, allow_null=True, allow_blank=True)
     vendor = serializers.CharField(help_text="Vendor of VIM", required=False, allow_null=True, allow_blank=True)
     version = serializers.CharField(help_text="Version of VIM", required=False, allow_null=True, allow_blank=True)
     description = serializers.CharField(help_text="Description of VIM", required=False, allow_null=True, allow_blank=True)
     createTime = serializers.CharField(help_text="Create Time of VIM", required=False, allow_null=True, allow_blank=True)
     sslCacert = serializers.CharField(help_text="SSL Cacert of VIM", required=False, allow_null=True, allow_blank=True)
     sslInsecure = serializers.CharField(help_text="SSL Insecure of VIM", required=False, allow_null=True, allow_blank=True)
-    status = serializers.CharField(help_text="Status of VIM", required=True)
+    status = serializers.CharField(help_text="Status of VIM", required=False, allow_null=True, allow_blank=True)
 
 from lcm.ns.vnfs.serializers import VerifyVnfReqSerializer
 from lcm.ns.vnfs.serializers import VerifyVnfRespSerializer
 from lcm.ns.vnfs.serializers import VnfmInfoRespSerializer
+from lcm.ns.vnfs.serializers import VimInfoRespSerializer
 
 logger = logging.getLogger(__name__)
 
 
 
 class NfVimInfoView(APIView):
+    @swagger_auto_schema(
+        request_body=None,
+        responses={
+            status.HTTP_200_OK: VimInfoRespSerializer(),
+            status.HTTP_500_INTERNAL_SERVER_ERROR: "Inner error"
+        }
+    )
     def get(self, request, vimid):
         logger.debug("NfVimInfoView--get::> %s" % vimid)
         try:
             vim_info = get_vim_by_id(vimid)
+
+            resp_serializer = VimInfoRespSerializer(data=vim_info)
+            if not resp_serializer.is_valid():
+                raise Exception(resp_serializer.errors)
+
         except NSLCMException as e:
             logger.error(e.message)
             return Response(data={'error': '%s' % e.message}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
 
         "type": ignore_case_get(esr_system_info[0], "type"),
         "createTime": "",
         "sslCacert": ignore_case_get(esr_system_info[0], "ssl-cacert"),
-        "sslInsecure": ignore_case_get(esr_system_info[0], "ssl-insecure"),
+        "sslInsecure": str(ignore_case_get(esr_system_info[0], "ssl-insecure")),
         "status": ignore_case_get(esr_system_info[0], "system-status")
     }
     return vim_info