diff --git a/frontend-js/src/main/js/map/AbstractCustomMap.js b/frontend-js/src/main/js/map/AbstractCustomMap.js
index 348f6818ee36701c619801c454655da80eb9bb36..c5387bf2af597b16963a46577f7eb54cad7b9e68 100644
--- a/frontend-js/src/main/js/map/AbstractCustomMap.js
+++ b/frontend-js/src/main/js/map/AbstractCustomMap.js
@@ -1081,11 +1081,15 @@ AbstractCustomMap.prototype.setZoom = function (zoom) {
   if (this.initialized) {
     return Promise.resolve(this.getGoogleMap().setZoom(zoom));
   } else {
-    logger.warn("cannot center map that is not opened yet");
+    logger.warn("cannot change zoom for map that is not opened yet");
     return Promise.resolve();
   }
 };
 
+AbstractCustomMap.prototype.getZoom = function () {
+  return this.getGoogleMap().getZoom()
+};
+
 AbstractCustomMap.prototype.fitBounds = function (markers) {
   var self = this;
   var map = self.getGoogleMap();
diff --git a/frontend-js/src/main/js/plugin/MinervaPluginProxy.js b/frontend-js/src/main/js/plugin/MinervaPluginProxy.js
index 672a15930285871e5afaa19448fa2215f087eaef..40eeb4fb94da9762fb1bc48a7047cff1760070af 100644
--- a/frontend-js/src/main/js/plugin/MinervaPluginProxy.js
+++ b/frontend-js/src/main/js/plugin/MinervaPluginProxy.js
@@ -423,6 +423,13 @@ function createProjectMap(options) {
       }
       return submap.setZoom(params.zoom);
     },
+    getZoom: function (params) {
+      var submap = map.getSubmapById(params.modelId);
+      if (submap === null) {
+        throw new Error("Unknown modelId: " + params.modelId);
+      }
+      return submap.getZoom();
+    },
     openMap: function (params) {
       return map.openSubmap(params.id);
     }
diff --git a/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js b/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js
index 2e561621db6e8d8622ab979eca261deb319824d4..f6ff68f9fdaa3f4b893e05e9d7c37ac4ec207f1d 100644
--- a/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js
+++ b/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js
@@ -328,6 +328,23 @@ describe('MinervaPluginProxy', function () {
     });
   });
 
+  it("getZoom", function () {
+    var map, proxy;
+    return ServerConnector.getProject().then(function (project) {
+      map = helper.createCustomMap(project);
+      proxy = createProxy(map);
+      return proxy.project.map.setZoom({
+        modelId: 15781,
+        zoom: 10
+      });
+    }).then(function () {
+      var zoom = proxy.project.map.getZoom({modelId: 15781});
+      assert.equal(zoom, 10);
+    }).then(function () {
+      map.destroy();
+    });
+  });
+
   it("getReactionByParticipantId", function () {
     var ie = {
       modelId: 15781,