diff --git a/pybis/src/python/pybis/pybis.py b/pybis/src/python/pybis/pybis.py
index 6fd9e32bd9baab6daadf906b7c143762cc106027..ff9ce97d18d71a6423deb333761397c9d3c17f6b 100644
--- a/pybis/src/python/pybis/pybis.py
+++ b/pybis/src/python/pybis/pybis.py
@@ -2744,7 +2744,10 @@ class Openbis:
         else:
             parse_jackson(resp)
             for ident in resp:
-                vocabulary = Vocabulary( openbis_obj=self, data=resp[ident])
+                data = resp[ident]
+                if only_data:
+                    return data
+                vocabulary = Vocabulary( openbis_obj=self, data=data)
                 if self.use_cache:
                     self._object_cache(entity='vocabulary', code=code, value=vocabulary)
                 return vocabulary