diff --git a/openbis/source/javascript/openbis.js b/openbis/source/javascript/openbis.js
index 50d3a7c8008f0f2c1419ea729a0b239277f795ea..a0a3f819d40161eb8957200002174dd6fc5ee3f5 100644
--- a/openbis/source/javascript/openbis.js
+++ b/openbis/source/javascript/openbis.js
@@ -65,6 +65,7 @@ function eraseCookie(name) {
  */
 function openbis(url, dssUrl) {
 	this.generalInfoServiceUrl = url + "/rmi-general-information-v1.json";
+	this.generalInfoChangingServiceUrl = url + "/rmi-general-information-changing-v1.json";
 	this.queryServiceUrl = url + "/rmi-query-v1.json";
 	this.dssUrl = dssUrl + "/rmi-dss-api-v1.json";
 	this.webInfoServiceUrl = url + "/openbis/openbis/rmi-web-information-v1.json"
@@ -328,6 +329,30 @@ openbis.prototype.createReportFromAggregationService = function(dataStoreCode, s
 	});
 }
 
+/**
+ * See ch.systemsx.cisd.openbis.generic.shared.api.v1.IGeneralInformationChangingService.getWebAppSettings(String, String)
+ */
+openbis.prototype.getWebAppSettings = function(webappId, action) {
+	ajaxRequest({
+		url: this.generalInfoChangingServiceUrl,
+		data: { "method" : "getWebAppSettings",
+		params : [ this.sessionToken, webappId ] },
+		success: action
+	});
+}
+
+/**
+ * See ch.systemsx.cisd.openbis.generic.shared.api.v1.IGeneralInformationChangingService.setWebAppSettings(String, WebAppSettings)
+ */
+openbis.prototype.setWebAppSettings = function(webappSettings, action) {
+	ajaxRequest({
+		url: this.generalInfoChangingServiceUrl,
+		data: { "method" : "setWebAppSettings",
+		params : [ this.sessionToken, webappSettings ] },
+		success: action
+	});
+}
+
 /**
  * A utility class for deferring an action until all of some kind of action has completed
  *