diff --git a/app/src/handlers/confighandler.cpp b/app/src/handlers/confighandler.cpp
index bcb3e744f50dacf5d8b2a3ceb9ca6d8f6a670bf7..c4043f302011b23734f0f98f0c9598e20d4358e5 100644
--- a/app/src/handlers/confighandler.cpp
+++ b/app/src/handlers/confighandler.cpp
@@ -31,6 +31,11 @@ QJsonObject ConfigHandler::getUsrConfigApplication() const
 
 bool ConfigHandler::setUsrConfigApplication(const QJsonObject &object) const
 {
+    /* object format
+    {
+        "update_checked_at": 1483658977219
+    }
+    */
     return usrConfig_.set("application", object);
 }
 
@@ -64,6 +69,16 @@ bool ConfigHandler::setUsrConfigInstalledItems(const QJsonObject &object) const
     return usrConfig_.set("installed_items", object);
 }
 
+QJsonObject ConfigHandler::getUsrConfigUpdateAvailable() const
+{
+    return usrConfig_.get("update_available");
+}
+
+bool ConfigHandler::setUsrConfigUpdateAvailable(const QJsonObject &object) const
+{
+    return usrConfig_.set("update_available", object);
+}
+
 bool ConfigHandler::setUsrConfigProvidersProvider(const QString &providerKey, const QJsonObject &object) const
 {
     /* object format
@@ -162,6 +177,28 @@ bool ConfigHandler::removeUsrConfigInstalledItemsItem(const QString &itemKey) co
     return setUsrConfigInstalledItems(installedItems);
 }
 
+bool ConfigHandler::setUsrConfigUpdateAvailableFile(const QString &fileKey, const QJsonObject &object) const
+{
+    /* object format
+    {
+        "path": "/home/user/.local/bin/example.AppImage",
+        "filename": "example.AppImage",
+        "installed_item": "http://example.com/downloads/example.AppImage",
+        "update_method": "appimageupdate"
+    }
+    */
+    auto updateAvailable = getUsrConfigUpdateAvailable();
+    updateAvailable[fileKey] = object;
+    return setUsrConfigUpdateAvailable(updateAvailable);
+}
+
+bool ConfigHandler::removeUsrConfigUpdateAvailableFile(const QString &fileKey) const
+{
+    auto updateAvailable = getUsrConfigUpdateAvailable();
+    updateAvailable.remove(fileKey);
+    return setUsrConfigUpdateAvailable(updateAvailable);
+}
+
 void ConfigHandler::importAppConfigApplication()
 {
     appConfigApplication_ = appConfig_.get("application");
diff --git a/app/src/handlers/confighandler.h b/app/src/handlers/confighandler.h
index bd44739d030aec2fe98cc653aed0e7c9f2632c12..76aa0e4cac698760f502d54c1952e347ff344912 100644
--- a/app/src/handlers/confighandler.h
+++ b/app/src/handlers/confighandler.h
@@ -24,6 +24,8 @@ public slots:
     bool setUsrConfigCategories(const QJsonObject &object) const;
     QJsonObject getUsrConfigInstalledItems() const;
     bool setUsrConfigInstalledItems(const QJsonObject &object) const;
+    QJsonObject getUsrConfigUpdateAvailable() const;
+    bool setUsrConfigUpdateAvailable(const QJsonObject &object) const;
 
     bool setUsrConfigProvidersProvider(const QString &providerKey, const QJsonObject &object) const;
     bool removeUsrConfigProvidersProvider(const QString &providerKey) const;
@@ -32,6 +34,8 @@ public slots:
     bool setUsrConfigCategoriesInstallType(const QString &providerKey, const QString &categoryKey, const QString &installType) const;
     bool setUsrConfigInstalledItemsItem(const QString &itemKey, const QJsonObject &object) const;
     bool removeUsrConfigInstalledItemsItem(const QString &itemKey) const;
+    bool setUsrConfigUpdateAvailableFile(const QString &fileKey, const QJsonObject &object) const;
+    bool removeUsrConfigUpdateAvailableFile(const QString &fileKey) const;
 
 private:
     void importAppConfigApplication();