diff --git a/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/html/index.html b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/html/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..5440975851ba1f39fd788c78a57c1ac57532e30b
--- /dev/null
+++ b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/html/index.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8">
+  <title>Openbis New Api Test</title>
+  <link rel="stylesheet" href="../common-test/qunit.css">
+
+  <script src="/openbis/resources/js/jquery.js"></script>
+  <script src="../common-test/qunit.js"></script>
+  <script src="../common-test/qunit-reporter-junit.js"></script>  
+  <script src="../common-test/common-test.js"></script>
+  <script src="openbis-new-api-test.js"></script>
+
+</head>
+<body>
+  <div id="qunit"></div>
+  <div id="qunit-fixture"></div>
+  <div id="qunit-junit-report"></div>
+</body>
+</html>
diff --git a/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/html/openbis-new-api-test.js b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/html/openbis-new-api-test.js
new file mode 100644
index 0000000000000000000000000000000000000000..79128f4afcbeb7346f1f6e68b49da404f9b5d506
--- /dev/null
+++ b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/html/openbis-new-api-test.js
@@ -0,0 +1,173 @@
+/*
+ * These tests should be run against openBIS instance 
+ * with screening sprint server database version
+ */
+
+var testProtocol = window.location.protocol;
+var testHost = window.location.hostname;
+var testPort = window.location.port;
+var testUrl = testProtocol + "//" + testHost + ":" + testPort;
+var testApiUrl = testUrl + "/openbis/openbis/rmi-application-server-v3.json";
+
+var testUserId = "openbis_test_js";
+var testUserPassword = "password";
+
+var openbis = function() {
+
+	this.ajaxRequest = function(settings) {
+		settings.type = "POST";
+		settings.processData = false;
+		settings.dataType = "json";
+
+		var data = settings.data;
+		data["id"] = "1";
+		data["jsonrpc"] = "2.0";
+		settings.data = JSON.stringify(data);
+
+		var originalSuccess = settings.success || function() {
+		};
+		var originalError = settings.error || function() {
+		};
+
+		settings.success = function(response) {
+			if (response.error) {
+				console.log("Request failed - data: " + JSON.stringify(settings.data) + ", error: " + JSON.stringify(response.error));
+				originalError(response.error);
+			} else {
+				originalSuccess(response.result);
+			}
+		}
+
+		settings.error = function(xhr, status, error) {
+			console.log("Request failed - data: " + JSON.stringify(settings.data) + ", error: " + JSON.stringify(error));
+			originalError(error);
+		}
+
+		$.ajax(settings)
+	}
+
+	this.login = function(user, password, onSuccess, onError) {
+		var thisOpenbis = this;
+
+		this.ajaxRequest({
+			url : testApiUrl,
+			data : {
+				"method" : "login",
+				"params" : [ user, password ]
+			},
+			success : function(sessionToken) {
+				thisOpenbis.sessionToken = sessionToken;
+				onSuccess(sessionToken);
+			},
+			error : onError
+		});
+	}
+
+	this.logout = function(onSuccess, onError) {
+		var thisOpenbis = this;
+
+		this.ajaxRequest({
+			url : testApiUrl,
+			data : {
+				"method" : "logout",
+				"params" : [ thisOpenbis.sessionToken ]
+			},
+			success : function() {
+				thisOpenbis.sessionToken = null;
+				onSuccess();
+			},
+			error : onError
+		});
+	}
+
+}
+
+var createFacade = function(action) {
+	stop();
+
+	var facade = new openbis();
+
+	facade.close = function() {
+		facade.logout(function() {
+			facade.closed = true;
+		});
+	};
+
+	action(facade);
+
+	var timeout = 30000;
+	var checkInterval = 100;
+	var intervalTotal = 0;
+
+	var startWhenClosed = function() {
+		if (facade.closed) {
+			start();
+		} else {
+			intervalTotal += checkInterval;
+
+			if (intervalTotal < timeout) {
+				setTimeout(startWhenClosed, checkInterval);
+			} else {
+				start();
+			}
+		}
+	};
+
+	startWhenClosed();
+}
+
+var createFacadeAndLogin = function(action) {
+	createFacade(function(facade) {
+		facade.login(testUserId, testUserPassword, function() {
+			action(facade);
+		});
+	});
+}
+
+test("listExperiments()", function() {
+	createFacadeAndLogin(function(facade) {
+		facade.ajaxRequest({
+			url : testApiUrl,
+			data : {
+				"method" : "listExperiments",
+				"params" : [ facade.sessionToken, [ {
+					"@type" : "ExperimentPermId",
+					"permId" : "20130412105232616-2"
+				} ], {
+					"@type" : "ExperimentFetchOptions",
+
+					"type" : {
+						"@type" : "ExperimentTypeFetchOptions"
+					},
+
+					"project" : {
+						"@type" : "ProjectFetchOptions"
+					},
+
+					"properties" : {
+						"@type" : "PropertyFetchOptions"
+					},
+
+					"tags" : {
+						"@type" : "TagFetchOptions"
+					},
+
+					"registrator" : {
+						"@type" : "PersonFetchOptions"
+					},
+
+					"modifier" : {
+						"@type" : "PersonFetchOptions"
+					},
+
+					"attachments" : {
+						"@type" : "AttachmentFetchOptions"
+					}
+				} ]
+			},
+			success : function(experiments) {
+				alert(experiments);
+			}
+		});
+	});
+});
diff --git a/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/plugin.properties b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/plugin.properties
new file mode 100644
index 0000000000000000000000000000000000000000..38bf2552bc075ba55c3d37d821b183aba14059a3
--- /dev/null
+++ b/js-test/servers/common/core-plugins/tests/1/as/webapps/openbis-new-api-test/plugin.properties
@@ -0,0 +1,3 @@
+webapp-folder = html
+openbisui-contexts = modules-menu
+label = openbis-new-api-test.js