def sda_manager_apps():
            logging.info("[" + request.method + "] sda manager apps - IN")

            l = list()
            apps = list()
            ret = dict()

            response = requests.get(
                url="http://" + SDAManager().get_sda_manager_ip() + ":" +
                str(Port.sda_manager_port()) + "/api/v1/agents/" +
                SDAManager.get_device_id(),
                timeout=1500)

            if response.status_code is not 200:
                logging.error("SDAM Server Return Error, Error Code(" +
                              str(response.status_code) + ") - OUT")
                abort(500)

            root_path = os.getcwd()
            with open(root_path + "/static/user/apps", 'r') as content_file:
                content = content_file.read()
                if content != "":
                    apps = json.loads(content)["apps"]

            for obj in response.json()["apps"]:
                d = dict()
                d.update({"id": str(obj)})
                response2 = requests.get(
                    url="http://" + SDAManager().get_sda_manager_ip() + ":" +
                    str(Port.sda_manager_port()) + "/api/v1/agents/" +
                    SDAManager.get_device_id() + "/apps/" + str(obj),
                    timeout=1500)

                if response2.status_code is not 200:
                    logging.error("SDAM Server Return Error, Error Code(" +
                                  str(response.status_code) + ") - OUT")
                    abort(500)

                d.update({"services": len(response2.json()["services"])})
                d.update({"state": response2.json()["state"]})

                for app in apps:
                    if "id" in app and app["id"] == str(obj):
                        d.update({"name": app["name"]})

                l.append(d)

            ret.update({
                "device":
                "IP: " + SDAManager.get_device_ip() + ", PORT: " +
                SDAManager.get_device_port(),
                "apps":
                l
            })

            return json.dumps(json.dumps(ret)), 200
        def sda_manager_apps():
            logging.info("[" + request.method + "] sda manager apps - IN")

            l = list()
            apps = list()
            ret = dict()

            response = requests.get(
                url="http://" + SDAManager().get_sda_manager_endpoint() +
                "/api/v1/management/nodes/" + SDAManager.get_device_id(),
                timeout=1500)

            if response.status_code is not 200:
                logging.error("SDAM Server Return Error, Error Code(" +
                              str(response.status_code) + ") - OUT")
                abort(500)

            root_path = os.getcwd()

            if not os.path.exists(root_path + "/static/user/apps"):
                with open(root_path + "/static/user/apps", 'w'):
                    pass

            with open(root_path + "/static/user/apps", 'r') as content_file:
                content = content_file.read()
                if content != "":
                    apps = json.loads(content)["apps"]

            for obj in response.json()["apps"]:
                d = dict()
                d.update({"id": str(obj)})
                response2 = requests.get(
                    url="http://" + SDAManager().get_sda_manager_endpoint() +
                    "/api/v1/management/nodes/" + SDAManager.get_device_id() +
                    "/apps/" + str(obj),
                    timeout=1500)

                if response2.status_code is not 200:
                    logging.error("SDAM Server Return Error, Error Code(" +
                                  str(response.status_code) + ") - OUT")
                    abort(500)

                d.update({"services": len(response2.json()["services"])})
                d.update({"state": response2.json()["state"]})

                for app in apps:
                    if "id" in app and app["id"] == str(obj):
                        d.update({"name": app["name"]})

                l.append(d)
            response3 = requests.get(
                url="http://" + SDAManager().get_sda_manager_endpoint() +
                "/api/v1/management/nodes/" + SDAManager.get_device_id() +
                "/configuration",
                timeout=1500)
            if response3.status_code is not 200:
                logging.error("SDAM Server Return Error, Error Code(" +
                              str(response.status_code) + ") - OUT")
                abort(500)

            if "properties" in response3.json():
                for prop in response3.json()["properties"]:
                    if "devicename" in prop:
                        device_name = str(prop["devicename"])
                        ret.update({
                            "device":
                            device_name + "(" + SDAManager.get_device_ip() +
                            ")",
                            "apps":
                            l
                        })

            return json.dumps(json.dumps(ret)), 200