diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApi.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApi.java
index 16c6dc3685d9d381bfab8678f55ba10638a788ee..58f145ce83f98a2be044a782e813f6845ef03326 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApi.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApi.java
@@ -338,8 +338,11 @@ import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.delete.DeleteVocabula
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.delete.VocabularyTermDeletionOptions;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyFetchOptions;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyTermFetchOptions;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get.GetVocabulariesOperation;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get.GetVocabulariesOperationResult;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get.GetVocabularyTermsOperation;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get.GetVocabularyTermsOperationResult;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyTermId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.VocabularyTermPermId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.search.SearchVocabulariesOperation;
@@ -716,6 +719,15 @@ public class ApplicationServerApi extends AbstractServer<IApplicationServerApi>
         return result.getObjectMap();
     }
 
+    @Override
+    @Transactional(readOnly = true)
+    public Map<IVocabularyId, Vocabulary> getVocabularies(String sessionToken, List<? extends IVocabularyId> vocabularyIds,
+            VocabularyFetchOptions fetchOptions)
+    {
+        GetVocabulariesOperationResult result = executeOperation(sessionToken, new GetVocabulariesOperation(vocabularyIds, fetchOptions));
+        return result.getObjectMap();
+    }
+
     @Override
     @Transactional(readOnly = true)
     public Map<IVocabularyTermId, VocabularyTerm> getVocabularyTerms(String sessionToken, List<? extends IVocabularyTermId> vocabularyTermIds,
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApiLogger.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApiLogger.java
index 6ccb34ef19a76a99f669a9186718047c7b365642..fa6d5be93cd0ffdb42ecd0c692cbc24bd1331750 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApiLogger.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/ApplicationServerApiLogger.java
@@ -180,6 +180,7 @@ import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.create.VocabularyTerm
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.delete.VocabularyTermDeletionOptions;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyFetchOptions;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyTermFetchOptions;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyTermId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.VocabularyTermPermId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.search.VocabularySearchCriteria;
@@ -487,6 +488,14 @@ public class ApplicationServerApiLogger extends AbstractServerLogger implements
         return null;
     }
 
+    @Override
+    public Map<IVocabularyId, Vocabulary> getVocabularies(String sessionToken, List<? extends IVocabularyId> vocabularyIds,
+            VocabularyFetchOptions fetchOptions)
+    {
+        logAccess(sessionToken, "get-vocabularies", "VOCABULARY_IDS(%s) FETCH_OPTIONS(%s)", abbreviate(vocabularyIds), fetchOptions);
+        return null;
+    }
+
     @Override
     public Map<IVocabularyTermId, VocabularyTerm> getVocabularyTerms(String sessionToken, List<? extends IVocabularyTermId> vocabularyTermIds,
             VocabularyTermFetchOptions fetchOptions)
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/OperationsExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/OperationsExecutor.java
index 6f751e3f4fc74737da030433705f896472241937..81147baa532fb3afb559c982fd7c186a20b904d2 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/OperationsExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/OperationsExecutor.java
@@ -122,6 +122,7 @@ import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.tag.ISearchTagsOpera
 import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.tag.IUpdateTagsOperationExecutor;
 import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary.ICreateVocabularyTermsOperationExecutor;
 import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary.IDeleteVocabularyTermsOperationExecutor;
+import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary.IGetVocabulariesOperationExecutor;
 import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary.IGetVocabularyTermsOperationExecutor;
 import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary.ISearchVocabulariesOperationExecutor;
 import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary.ISearchVocabularyTermsOperationExecutor;
@@ -328,8 +329,11 @@ public class OperationsExecutor implements IOperationsExecutor
     private IGetPersonsOperationExecutor getPersonsExecutor;
     
     @Autowired
-    private IGetVocabularyTermsOperationExecutor getVocabularyTermsExecutor;
+    private IGetVocabulariesOperationExecutor getVocabulariesExecutor;
 
+    @Autowired
+    private IGetVocabularyTermsOperationExecutor getVocabularyTermsExecutor;
+    
     @Autowired
     private IGetExternalDmsOperationExecutor getExternalDmsExecutor;
 
@@ -527,6 +531,7 @@ public class OperationsExecutor implements IOperationsExecutor
         resultMap.putAll(getAuthorizationGroupsExecutor.execute(context, operations));
         resultMap.putAll(getRoleAssignmentsExecutor.execute(context, operations));
         resultMap.putAll(getPersonsExecutor.execute(context, operations));
+        resultMap.putAll(getVocabulariesExecutor.execute(context, operations));
         resultMap.putAll(getVocabularyTermsExecutor.execute(context, operations));
         resultMap.putAll(getExternalDmsExecutor.execute(context, operations));
         resultMap.putAll(getOperationExecutionsExecutor.execute(context, operations));
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/vocabulary/GetVocabulariesOperationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/vocabulary/GetVocabulariesOperationExecutor.java
new file mode 100644
index 0000000000000000000000000000000000000000..bf334b5297ef9e2d17df0914ea9f4b66634af596
--- /dev/null
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/vocabulary/GetVocabulariesOperationExecutor.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright 2018 ETH Zuerich, SIS
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary;
+
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.get.GetObjectsOperation;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.get.GetObjectsOperationResult;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.Vocabulary;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyFetchOptions;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get.GetVocabulariesOperation;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get.GetVocabulariesOperationResult;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyId;
+import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.common.get.GetObjectsPEOperationExecutor;
+import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.common.get.IMapObjectByIdExecutor;
+import ch.ethz.sis.openbis.generic.server.asapi.v3.translator.ITranslator;
+import ch.ethz.sis.openbis.generic.server.asapi.v3.translator.vocabulary.IVocabularyTranslator;
+import ch.systemsx.cisd.openbis.generic.shared.dto.VocabularyPE;
+
+/**
+ * @author Franz-Josef Elmer
+ */
+@Component
+public class GetVocabulariesOperationExecutor
+        extends GetObjectsPEOperationExecutor<IVocabularyId, VocabularyPE, Vocabulary, VocabularyFetchOptions>
+        implements IGetVocabulariesOperationExecutor
+{
+    @Autowired
+    private IMapVocabularyByIdExecutor mapExecutor;
+    
+    @Autowired
+    private IVocabularyTranslator translator;
+    
+    @Override
+    protected Class<? extends GetObjectsOperation<IVocabularyId, VocabularyFetchOptions>> getOperationClass()
+    {
+        return GetVocabulariesOperation.class;
+    }
+
+    @Override
+    protected IMapObjectByIdExecutor<IVocabularyId, VocabularyPE> getExecutor()
+    {
+        return mapExecutor;
+    }
+
+    @Override
+    protected ITranslator<Long, Vocabulary, VocabularyFetchOptions> getTranslator()
+    {
+        return translator;
+    }
+
+    @Override
+    protected GetObjectsOperationResult<IVocabularyId, Vocabulary> getOperationResult(Map<IVocabularyId, Vocabulary> objectMap)
+    {
+        return new GetVocabulariesOperationResult(objectMap);
+    }
+
+}
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/vocabulary/IGetVocabulariesOperationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/vocabulary/IGetVocabulariesOperationExecutor.java
new file mode 100644
index 0000000000000000000000000000000000000000..a4a26c21d7f1e1a49368e67699675317c63c4ab3
--- /dev/null
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/vocabulary/IGetVocabulariesOperationExecutor.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright 2018 ETH Zuerich, SIS
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.ethz.sis.openbis.generic.server.asapi.v3.executor.vocabulary;
+
+import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.common.IOperationExecutor;
+
+/**
+ * @author Franz-Josef Elmer
+ *
+ */
+public interface IGetVocabulariesOperationExecutor extends IOperationExecutor
+{
+
+}
diff --git a/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/GetVocabulariesTest.java b/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/GetVocabulariesTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..c283bb939ef76badef17fb610a86a9b55880765a
--- /dev/null
+++ b/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/GetVocabulariesTest.java
@@ -0,0 +1,71 @@
+/*
+ * Copyright 2018 ETH Zuerich, SIS
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.ethz.sis.openbis.systemtest.asapi.v3;
+
+import static org.testng.Assert.assertEquals;
+
+import java.util.Arrays;
+import java.util.Map;
+
+import org.testng.annotations.Test;
+
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.Vocabulary;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyFetchOptions;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyId;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.VocabularyPermId;
+
+/**
+ * @author Franz-Josef Elmer
+ *
+ */
+public class GetVocabulariesTest extends AbstractTest
+{
+    @Test
+    public void testGetVocabularyWithTerms()
+    {
+        // Given
+        String sessionToken = v3api.login(TEST_USER, PASSWORD);
+        VocabularyPermId id1 = new VocabularyPermId("ORGANISM");
+        VocabularyPermId id2 = new VocabularyPermId("$STORAGE_FORMAT");
+        VocabularyFetchOptions fetchOptions = new VocabularyFetchOptions();
+        fetchOptions.withTerms();
+        
+        // When
+        Map<IVocabularyId, Vocabulary> result = v3api.getVocabularies(sessionToken, Arrays.asList(id1, id2), fetchOptions);
+        
+        // Then
+        Vocabulary v1 = result.get(id1);
+        assertEquals(v1.getCode(), id1.getPermId());
+        assertEquals(v1.getDescription(), "available-organism");
+        assertEquals(v1.isInternalNameSpace(), false);
+        assertEquals(v1.isManagedInternally(), false);
+        assertEquals(v1.getTerms().toString(), 
+                "[VocabularyTerm DOG, VocabularyTerm FLY, VocabularyTerm GORILLA, VocabularyTerm HUMAN, VocabularyTerm RAT]");
+        Vocabulary v2 = result.get(id2);
+        assertEquals(v2.getCode(), id2.getPermId());
+        assertEquals(v2.getDescription(), "The on-disk storage format of a data set");
+        assertEquals(v2.isInternalNameSpace(), true);
+        assertEquals(v2.isManagedInternally(), true);
+        assertEquals(v2.getTerms().toString(), "[VocabularyTerm BDS_DIRECTORY, VocabularyTerm PROPRIETARY]");
+        assertEquals(v2.getTerms().get(1).getLabel(), "proprietary label");
+        assertEquals(v2.getTerms().get(1).getDescription(), "proprietary description");
+        assertEquals(v2.getTerms().get(1).getOrdinal().longValue(), 1);
+        assertEquals(v2.getTerms().get(1).isOfficial(), Boolean.TRUE);
+        assertEquals(result.size(), 2);
+        v3api.logout(sessionToken);
+    }
+}
diff --git a/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/SearchVocabularyTest.java b/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/SearchVocabularyTest.java
index e893ba0acfcb6926de57c797be394a3aa1cd5680..2eb794579a88cb6ebea8c874a05faec9b97b54b9 100644
--- a/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/SearchVocabularyTest.java
+++ b/openbis/sourceTest/java/ch/ethz/sis/openbis/systemtest/asapi/v3/SearchVocabularyTest.java
@@ -46,6 +46,8 @@ public class SearchVocabularyTest extends AbstractTest
         // Then
         assertEquals(vocabularies.get(0).getCode(), "ORGANISM");
         assertEquals(vocabularies.get(0).getDescription(), "available-organism");
+        assertEquals(vocabularies.get(0).isManagedInternally(), false);
+        assertEquals(vocabularies.get(0).isInternalNameSpace(), false);
     }
 
     @Test
diff --git a/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/IApplicationServerApi.java b/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/IApplicationServerApi.java
index c903dfe09a430a31f30c03d2d8cc59d1d54dd937..199af3060a764eef64c6f198d3890d441f294188 100644
--- a/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/IApplicationServerApi.java
+++ b/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/IApplicationServerApi.java
@@ -179,6 +179,7 @@ import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.create.VocabularyTerm
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.delete.VocabularyTermDeletionOptions;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyFetchOptions;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyTermFetchOptions;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyTermId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.VocabularyTermPermId;
 import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.search.VocabularySearchCriteria;
@@ -303,9 +304,12 @@ public interface IApplicationServerApi extends IRpcService
 
     public Map<IMaterialId, Material> getMaterials(String sessionToken, List<? extends IMaterialId> materialIds, MaterialFetchOptions fetchOptions);
 
+    public Map<IVocabularyId, Vocabulary> getVocabularies(String sessionToken, List<? extends IVocabularyId> vocabularyIds,
+            VocabularyFetchOptions fetchOptions);
+
     public Map<IVocabularyTermId, VocabularyTerm> getVocabularyTerms(String sessionToken, List<? extends IVocabularyTermId> vocabularyTermIds,
             VocabularyTermFetchOptions fetchOptions);
-
+    
     public Map<ITagId, Tag> getTags(String sessionToken, List<? extends ITagId> tagIds, TagFetchOptions fetchOptions);
     
     public Map<IAuthorizationGroupId, AuthorizationGroup> getAuthorizationGroups(String sessionToken, List<? extends IAuthorizationGroupId> groupIds, AuthorizationGroupFetchOptions fetchOptions);
diff --git a/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/vocabulary/get/GetVocabulariesOperation.java b/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/vocabulary/get/GetVocabulariesOperation.java
new file mode 100644
index 0000000000000000000000000000000000000000..a852ed8f8053f14024840c85601b729a55fd8d3d
--- /dev/null
+++ b/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/vocabulary/get/GetVocabulariesOperation.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2018 ETH Zuerich, SIS
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get;
+
+import java.util.List;
+
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.get.GetObjectsOperation;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.fetchoptions.VocabularyFetchOptions;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyId;
+import ch.systemsx.cisd.base.annotation.JsonObject;
+
+@JsonObject("as.dto.vocabulary.get.GetVocabulariesOperation")
+public class GetVocabulariesOperation extends GetObjectsOperation<IVocabularyId, VocabularyFetchOptions>
+{
+    private static final long serialVersionUID = 1L;
+
+    @SuppressWarnings("unused")
+    private GetVocabulariesOperation()
+    {
+    }
+
+    public GetVocabulariesOperation(List<? extends IVocabularyId> ids, VocabularyFetchOptions fetchOptions)
+    {
+        super(ids, fetchOptions);
+    }
+
+}
diff --git a/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/vocabulary/get/GetVocabulariesOperationResult.java b/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/vocabulary/get/GetVocabulariesOperationResult.java
new file mode 100644
index 0000000000000000000000000000000000000000..c81035c76f5efd4c5f868363886fda6e7f38a692
--- /dev/null
+++ b/openbis_api/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/vocabulary/get/GetVocabulariesOperationResult.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2018 ETH Zuerich, SIS
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.get;
+
+import java.util.Map;
+
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.common.get.GetObjectsOperationResult;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.Vocabulary;
+import ch.ethz.sis.openbis.generic.asapi.v3.dto.vocabulary.id.IVocabularyId;
+import ch.systemsx.cisd.base.annotation.JsonObject;
+
+@JsonObject("as.dto.vocabulary.get.GetVocabulariesOperationResult")
+public class GetVocabulariesOperationResult extends GetObjectsOperationResult<IVocabularyId, Vocabulary>
+{
+
+    private static final long serialVersionUID = 1L;
+
+    @SuppressWarnings("unused")
+    private GetVocabulariesOperationResult()
+    {
+    }
+
+    public GetVocabulariesOperationResult(Map<IVocabularyId, Vocabulary> objectMap)
+    {
+        super(objectMap);
+    }
+}