diff --git a/lib/private/AllConfig.php b/lib/private/AllConfig.php
index 09520aae2a9dc66f738b7626e8269ab4f38f14bb..05ac1bad64bdcd911a2a22aa78f93e2d656a2bbf 100644
--- a/lib/private/AllConfig.php
+++ b/lib/private/AllConfig.php
@@ -125,6 +125,42 @@ class AllConfig implements \OCP\IConfig {
 		return $this->systemConfig->getValue($key, $default);
 	}
 
+	/**
+	 * Looks up a boolean system wide defined value
+	 *
+	 * @param string $key the key of the value, under which it was saved
+	 * @param mixed $default the default value to be returned if the value isn't set
+	 * @return mixed the value or $default
+	 * @since 16.0.0
+	 */
+	public function getSystemValueBool(string $key, bool $default = false): bool {
+		return (bool) $this->getSystemValue($key, $default);
+	}
+
+	/**
+	 * Looks up an integer system wide defined value
+	 *
+	 * @param string $key the key of the value, under which it was saved
+	 * @param mixed $default the default value to be returned if the value isn't set
+	 * @return mixed the value or $default
+	 * @since 16.0.0
+	 */
+	public function getSystemValueInt(string $key, int $default = 0): int {
+		return (int) $this->getSystemValue($key, $default);
+	}
+
+	/**
+	 * Looks up a string system wide defined value
+	 *
+	 * @param string $key the key of the value, under which it was saved
+	 * @param mixed $default the default value to be returned if the value isn't set
+	 * @return mixed the value or $default
+	 * @since 16.0.0
+	 */
+	public function getSystemValueString(string $key, string $default = ''): string {
+		return (string) $this->getSystemValue($key, $default);
+	}
+
 	/**
 	 * Looks up a system wide defined value and filters out sensitive data
 	 *
diff --git a/lib/public/IConfig.php b/lib/public/IConfig.php
index e4cd158f8720903427a1c0ac787589f1b4a7fbf8..878c0acf0c3f64bd7b819fa3890f7c58c889592d 100644
--- a/lib/public/IConfig.php
+++ b/lib/public/IConfig.php
@@ -74,6 +74,36 @@ interface IConfig {
 	 */
 	public function getSystemValue($key, $default = '');
 
+	/**
+	 * Looks up a boolean system wide defined value
+	 *
+	 * @param string $key the key of the value, under which it was saved
+	 * @param bool $default the default value to be returned if the value isn't set
+	 * @return bool the value or $default
+	 * @since 16.0.0
+	 */
+	public function getSystemValueBool(string $key, bool $default = false): bool;
+
+	/**
+	 * Looks up an integer system wide defined value
+	 *
+	 * @param string $key the key of the value, under which it was saved
+	 * @param int $default the default value to be returned if the value isn't set
+	 * @return int the value or $default
+	 * @since 16.0.0
+	 */
+	public function getSystemValueInt(string $key, int $default = 0): int;
+
+	/**
+	 * Looks up a string system wide defined value
+	 *
+	 * @param string $key the key of the value, under which it was saved
+	 * @param string $default the default value to be returned if the value isn't set
+	 * @return string the value or $default
+	 * @since 16.0.0
+	 */
+	public function getSystemValueString(string $key, string $default = ''): string;
+
 	/**
 	 * Looks up a system wide defined value and filters out sensitive data
 	 *