diff --git a/.env.unix.example b/.env.unix.example
index bd3524812a095b17706c79b6d64f5e45472ca5a5..2ec2f0bd0576c8a182a8f3ad6d24a84d5b16854a 100644
--- a/.env.unix.example
+++ b/.env.unix.example
@@ -3,6 +3,7 @@ METADATA_USERNAME=postgres
 METADATA_PASSWORD=postgres
 BROKER_USERNAME=fda
 BROKER_PASSWORD=fda
+BROKER_CONSUMERS=2
 WEBSITE=http://example.com
 MAIL_FROM=Database Repository <noreply@example.com>
 MAIL_REPLY_TO=Admin <somebody@example.com>
diff --git a/.env.win.example b/.env.win.example
index c7e7597ae89f119147a8ce294b276e0c130ccddb..f32024850cb947270d3cae750573c19d16886a82 100644
--- a/.env.win.example
+++ b/.env.win.example
@@ -3,6 +3,7 @@ METADATA_USERNAME=postgres
 METADATA_PASSWORD=postgres
 BROKER_USERNAME=fda
 BROKER_PASSWORD=fda
+BROKER_CONSUMERS=2
 WEBSITE=http://example.com
 MAIL_FROM=Database Repository <noreply@example.com>
 MAIL_REPLY_TO=Admin <somebody@example.com>
diff --git a/.jupyter/api_authentication/models/container_dto.py b/.jupyter/api_authentication/models/container_dto.py
index 30ead8278f5a12958bd17dcac9f08d4527cd9d84..2ee63baa6c5eb205fd79c108439fdf048c487371 100644
--- a/.jupyter/api_authentication/models/container_dto.py
+++ b/.jupyter/api_authentication/models/container_dto.py
@@ -169,7 +169,7 @@ class ContainerDto(object):
         :param state: The state of this ContainerDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["ContainerStateDto.CREATED", "ContainerStateDto.RESTARTING", "ContainerStateDto.RUNNING", "ContainerStateDto.PAUSED", "ContainerStateDto.EXITED", "ContainerStateDto.DEAD"]  # noqa: E501
+        allowed_values = ["created", "restarting", "running", "paused", "exited", "dead"]  # noqa: E501
         if state not in allowed_values:
             raise ValueError(
                 "Invalid value for `state` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_authentication/models/database_dto.py b/.jupyter/api_authentication/models/database_dto.py
index 6119a4d801d552d4994ae04eae81b457e5c98622..a9a30f5c7c80da0d264b90f5173837c43ce00e77 100644
--- a/.jupyter/api_authentication/models/database_dto.py
+++ b/.jupyter/api_authentication/models/database_dto.py
@@ -28,334 +28,335 @@ class DatabaseDto(object):
                             and the value is json key in definition.
     """
     swagger_types = {
-        'database_id': 'int',
-        'database_name': 'str',
-        'database_exchange': 'str',
-        'database_creator': 'UserBriefDto',
-        'database_subjects': 'list[str]',
-        'database_language': 'str',
-        'database_license': 'LicenseDto',
-        'database_description': 'str',
-        'database_publisher': 'str',
-        'database_contact_person': 'UserDto',
+        'id': 'int',
+        'name': 'str',
+        'exchange': 'str',
+        'creator': 'UserBriefDto',
+        'subjects': 'list[str]',
+        'language': 'str',
+        'license': 'LicenseDto',
+        'description': 'str',
+        'publisher': 'str',
+        'contact': 'UserDto',
         'tables': 'list[TableBriefDto]',
-        'database_container_image': 'ImageDto',
+        'image': 'ImageDto',
         'container': 'ContainerDto',
-        'database_creation_time': 'datetime',
+        'created': 'datetime',
         'deleted': 'datetime',
-        'database_internal_name': 'str',
-        'database_publication_year': 'int',
-        'database_publication_month': 'int',
-        'database_publication_day': 'int',
-        'database_public': 'bool'
+        'internal_name': 'str',
+        'publication_year': 'int',
+        'publication_month': 'int',
+        'publication_day': 'int',
+        'is_public': 'bool'
     }
 
     attribute_map = {
-        'database_id': 'database id',
-        'database_name': 'database name',
-        'database_exchange': 'database exchange',
-        'database_creator': 'database creator',
-        'database_subjects': 'database subjects',
-        'database_language': 'database language',
-        'database_license': 'database license',
-        'database_description': 'database description',
-        'database_publisher': 'database publisher',
-        'database_contact_person': 'database contact person',
+        'id': 'id',
+        'name': 'name',
+        'exchange': 'exchange',
+        'creator': 'creator',
+        'subjects': 'subjects',
+        'language': 'language',
+        'license': 'license',
+        'description': 'description',
+        'publisher': 'publisher',
+        'contact': 'contact',
         'tables': 'tables',
-        'database_container_image': 'database container image',
+        'image': 'image',
         'container': 'container',
-        'database_creation_time': 'database creation time',
+        'created': 'created',
         'deleted': 'deleted',
-        'database_internal_name': 'database internal name',
-        'database_publication_year': 'database publication year',
-        'database_publication_month': 'database publication month',
-        'database_publication_day': 'database publication day',
-        'database_public': 'database public'
+        'internal_name': 'internal_name',
+        'publication_year': 'publication_year',
+        'publication_month': 'publication_month',
+        'publication_day': 'publication_day',
+        'is_public': 'is_public'
     }
 
-    def __init__(self, database_id=None, database_name=None, database_exchange=None, database_creator=None, database_subjects=None, database_language=None, database_license=None, database_description=None, database_publisher=None, database_contact_person=None, tables=None, database_container_image=None, container=None, database_creation_time=None, deleted=None, database_internal_name=None, database_publication_year=None, database_publication_month=None, database_publication_day=None, database_public=None):  # noqa: E501
+    def __init__(self, id=None, name=None, exchange=None, creator=None, subjects=None, language=None, license=None, description=None, publisher=None, contact=None, tables=None, image=None, container=None, created=None, deleted=None, internal_name=None, publication_year=None, publication_month=None, publication_day=None, is_public=None):  # noqa: E501
         """DatabaseDto - a model defined in Swagger"""  # noqa: E501
-        self._database_id = None
-        self._database_name = None
-        self._database_exchange = None
-        self._database_creator = None
-        self._database_subjects = None
-        self._database_language = None
-        self._database_license = None
-        self._database_description = None
-        self._database_publisher = None
-        self._database_contact_person = None
+        self._id = None
+        self._name = None
+        self._exchange = None
+        self._creator = None
+        self._subjects = None
+        self._language = None
+        self._license = None
+        self._description = None
+        self._publisher = None
+        self._contact = None
         self._tables = None
-        self._database_container_image = None
+        self._image = None
         self._container = None
-        self._database_creation_time = None
+        self._created = None
         self._deleted = None
-        self._database_internal_name = None
-        self._database_publication_year = None
-        self._database_publication_month = None
-        self._database_publication_day = None
-        self._database_public = None
+        self._internal_name = None
+        self._publication_year = None
+        self._publication_month = None
+        self._publication_day = None
+        self._is_public = None
         self.discriminator = None
-        self.database_id = database_id
-        self.database_name = database_name
-        self.database_exchange = database_exchange
-        self.database_creator = database_creator
-        if database_subjects is not None:
-            self.database_subjects = database_subjects
-        if database_language is not None:
-            self.database_language = database_language
-        if database_license is not None:
-            self.database_license = database_license
-        self.database_description = database_description
-        if database_publisher is not None:
-            self.database_publisher = database_publisher
-        if database_contact_person is not None:
-            self.database_contact_person = database_contact_person
+        self.id = id
+        self.name = name
+        self.exchange = exchange
+        self.creator = creator
+        if subjects is not None:
+            self.subjects = subjects
+        if language is not None:
+            self.language = language
+        if license is not None:
+            self.license = license
+        if description is not None:
+            self.description = description
+        if publisher is not None:
+            self.publisher = publisher
+        if contact is not None:
+            self.contact = contact
         if tables is not None:
             self.tables = tables
-        if database_container_image is not None:
-            self.database_container_image = database_container_image
+        if image is not None:
+            self.image = image
         if container is not None:
             self.container = container
-        if database_creation_time is not None:
-            self.database_creation_time = database_creation_time
+        if created is not None:
+            self.created = created
         if deleted is not None:
             self.deleted = deleted
-        self.database_internal_name = database_internal_name
-        if database_publication_year is not None:
-            self.database_publication_year = database_publication_year
-        if database_publication_month is not None:
-            self.database_publication_month = database_publication_month
-        if database_publication_day is not None:
-            self.database_publication_day = database_publication_day
-        if database_public is not None:
-            self.database_public = database_public
+        self.internal_name = internal_name
+        if publication_year is not None:
+            self.publication_year = publication_year
+        if publication_month is not None:
+            self.publication_month = publication_month
+        if publication_day is not None:
+            self.publication_day = publication_day
+        if is_public is not None:
+            self.is_public = is_public
 
     @property
-    def database_id(self):
-        """Gets the database_id of this DatabaseDto.  # noqa: E501
+    def id(self):
+        """Gets the id of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_id of this DatabaseDto.  # noqa: E501
+        :return: The id of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_id
+        return self._id
 
-    @database_id.setter
-    def database_id(self, database_id):
-        """Sets the database_id of this DatabaseDto.
+    @id.setter
+    def id(self, id):
+        """Sets the id of this DatabaseDto.
 
 
-        :param database_id: The database_id of this DatabaseDto.  # noqa: E501
+        :param id: The id of this DatabaseDto.  # noqa: E501
         :type: int
         """
-        if database_id is None:
-            raise ValueError("Invalid value for `database_id`, must not be `None`")  # noqa: E501
+        if id is None:
+            raise ValueError("Invalid value for `id`, must not be `None`")  # noqa: E501
 
-        self._database_id = database_id
+        self._id = id
 
     @property
-    def database_name(self):
-        """Gets the database_name of this DatabaseDto.  # noqa: E501
+    def name(self):
+        """Gets the name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_name of this DatabaseDto.  # noqa: E501
+        :return: The name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_name
+        return self._name
 
-    @database_name.setter
-    def database_name(self, database_name):
-        """Sets the database_name of this DatabaseDto.
+    @name.setter
+    def name(self, name):
+        """Sets the name of this DatabaseDto.
 
 
-        :param database_name: The database_name of this DatabaseDto.  # noqa: E501
+        :param name: The name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_name is None:
-            raise ValueError("Invalid value for `database_name`, must not be `None`")  # noqa: E501
+        if name is None:
+            raise ValueError("Invalid value for `name`, must not be `None`")  # noqa: E501
 
-        self._database_name = database_name
+        self._name = name
 
     @property
-    def database_exchange(self):
-        """Gets the database_exchange of this DatabaseDto.  # noqa: E501
+    def exchange(self):
+        """Gets the exchange of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_exchange of this DatabaseDto.  # noqa: E501
+        :return: The exchange of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_exchange
+        return self._exchange
 
-    @database_exchange.setter
-    def database_exchange(self, database_exchange):
-        """Sets the database_exchange of this DatabaseDto.
+    @exchange.setter
+    def exchange(self, exchange):
+        """Sets the exchange of this DatabaseDto.
 
 
-        :param database_exchange: The database_exchange of this DatabaseDto.  # noqa: E501
+        :param exchange: The exchange of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_exchange is None:
-            raise ValueError("Invalid value for `database_exchange`, must not be `None`")  # noqa: E501
+        if exchange is None:
+            raise ValueError("Invalid value for `exchange`, must not be `None`")  # noqa: E501
 
-        self._database_exchange = database_exchange
+        self._exchange = exchange
 
     @property
-    def database_creator(self):
-        """Gets the database_creator of this DatabaseDto.  # noqa: E501
+    def creator(self):
+        """Gets the creator of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creator of this DatabaseDto.  # noqa: E501
+        :return: The creator of this DatabaseDto.  # noqa: E501
         :rtype: UserBriefDto
         """
-        return self._database_creator
+        return self._creator
 
-    @database_creator.setter
-    def database_creator(self, database_creator):
-        """Sets the database_creator of this DatabaseDto.
+    @creator.setter
+    def creator(self, creator):
+        """Sets the creator of this DatabaseDto.
 
 
-        :param database_creator: The database_creator of this DatabaseDto.  # noqa: E501
+        :param creator: The creator of this DatabaseDto.  # noqa: E501
         :type: UserBriefDto
         """
-        if database_creator is None:
-            raise ValueError("Invalid value for `database_creator`, must not be `None`")  # noqa: E501
+        if creator is None:
+            raise ValueError("Invalid value for `creator`, must not be `None`")  # noqa: E501
 
-        self._database_creator = database_creator
+        self._creator = creator
 
     @property
-    def database_subjects(self):
-        """Gets the database_subjects of this DatabaseDto.  # noqa: E501
+    def subjects(self):
+        """Gets the subjects of this DatabaseDto.  # noqa: E501
 
+        database subjects  # noqa: E501
 
-        :return: The database_subjects of this DatabaseDto.  # noqa: E501
+        :return: The subjects of this DatabaseDto.  # noqa: E501
         :rtype: list[str]
         """
-        return self._database_subjects
+        return self._subjects
 
-    @database_subjects.setter
-    def database_subjects(self, database_subjects):
-        """Sets the database_subjects of this DatabaseDto.
+    @subjects.setter
+    def subjects(self, subjects):
+        """Sets the subjects of this DatabaseDto.
 
+        database subjects  # noqa: E501
 
-        :param database_subjects: The database_subjects of this DatabaseDto.  # noqa: E501
+        :param subjects: The subjects of this DatabaseDto.  # noqa: E501
         :type: list[str]
         """
 
-        self._database_subjects = database_subjects
+        self._subjects = subjects
 
     @property
-    def database_language(self):
-        """Gets the database_language of this DatabaseDto.  # noqa: E501
+    def language(self):
+        """Gets the language of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_language of this DatabaseDto.  # noqa: E501
+        :return: The language of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_language
+        return self._language
 
-    @database_language.setter
-    def database_language(self, database_language):
-        """Sets the database_language of this DatabaseDto.
+    @language.setter
+    def language(self, language):
+        """Sets the language of this DatabaseDto.
 
 
-        :param database_language: The database_language of this DatabaseDto.  # noqa: E501
+        :param language: The language of this DatabaseDto.  # noqa: E501
         :type: str
         """
         allowed_values = ["ab", "aa", "af", "ak", "sq", "am", "ar", "an", "hy", "as", "av", "ae", "ay", "az", "bm", "ba", "eu", "be", "bn", "bh", "bi", "bs", "br", "bg", "my", "ca", "km", "ch", "ce", "ny", "zh", "cu", "cv", "kw", "co", "cr", "hr", "cs", "da", "dv", "nl", "dz", "en", "eo", "et", "ee", "fo", "fj", "fi", "fr", "ff", "gd", "gl", "lg", "ka", "de", "ki", "el", "kl", "gn", "gu", "ht", "ha", "he", "hz", "hi", "ho", "hu", "is", "io", "ig", "id", "ia", "ie", "iu", "ik", "ga", "it", "ja", "jv", "kn", "kr", "ks", "kk", "rw", "kv", "kg", "ko", "kj", "ku", "ky", "lo", "la", "lv", "lb", "li", "ln", "lt", "lu", "mk", "mg", "ms", "ml", "mt", "gv", "mi", "mr", "mh", "ro", "mn", "na", "nv", "nd", "ng", "ne", "se", "no", "nb", "nn", "ii", "oc", "oj", "or", "om", "os", "pi", "pa", "ps", "fa", "pl", "pt", "qu", "rm", "rn", "ru", "sm", "sg", "sa", "sc", "sr", "sn", "sd", "si", "sk", "sl", "so", "st", "nr", "es", "su", "sw", "ss", "sv", "tl", "ty", "tg", "ta", "tt", "te", "th", "bo", "ti", "to", "ts", "tn", "tr", "tk", "tw", "ug", "uk", "ur", "uz", "ve", "vi", "vo", "wa", "cy", "fy", "wo", "xh", "yi", "yo", "za", "zu"]  # noqa: E501
-        if database_language not in allowed_values:
+        if language not in allowed_values:
             raise ValueError(
-                "Invalid value for `database_language` ({0}), must be one of {1}"  # noqa: E501
-                .format(database_language, allowed_values)
+                "Invalid value for `language` ({0}), must be one of {1}"  # noqa: E501
+                .format(language, allowed_values)
             )
 
-        self._database_language = database_language
+        self._language = language
 
     @property
-    def database_license(self):
-        """Gets the database_license of this DatabaseDto.  # noqa: E501
+    def license(self):
+        """Gets the license of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_license of this DatabaseDto.  # noqa: E501
+        :return: The license of this DatabaseDto.  # noqa: E501
         :rtype: LicenseDto
         """
-        return self._database_license
+        return self._license
 
-    @database_license.setter
-    def database_license(self, database_license):
-        """Sets the database_license of this DatabaseDto.
+    @license.setter
+    def license(self, license):
+        """Sets the license of this DatabaseDto.
 
 
-        :param database_license: The database_license of this DatabaseDto.  # noqa: E501
+        :param license: The license of this DatabaseDto.  # noqa: E501
         :type: LicenseDto
         """
 
-        self._database_license = database_license
+        self._license = license
 
     @property
-    def database_description(self):
-        """Gets the database_description of this DatabaseDto.  # noqa: E501
+    def description(self):
+        """Gets the description of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_description of this DatabaseDto.  # noqa: E501
+        :return: The description of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_description
+        return self._description
 
-    @database_description.setter
-    def database_description(self, database_description):
-        """Sets the database_description of this DatabaseDto.
+    @description.setter
+    def description(self, description):
+        """Sets the description of this DatabaseDto.
 
 
-        :param database_description: The database_description of this DatabaseDto.  # noqa: E501
+        :param description: The description of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_description is None:
-            raise ValueError("Invalid value for `database_description`, must not be `None`")  # noqa: E501
 
-        self._database_description = database_description
+        self._description = description
 
     @property
-    def database_publisher(self):
-        """Gets the database_publisher of this DatabaseDto.  # noqa: E501
+    def publisher(self):
+        """Gets the publisher of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_publisher of this DatabaseDto.  # noqa: E501
+        :return: The publisher of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_publisher
+        return self._publisher
 
-    @database_publisher.setter
-    def database_publisher(self, database_publisher):
-        """Sets the database_publisher of this DatabaseDto.
+    @publisher.setter
+    def publisher(self, publisher):
+        """Sets the publisher of this DatabaseDto.
 
 
-        :param database_publisher: The database_publisher of this DatabaseDto.  # noqa: E501
+        :param publisher: The publisher of this DatabaseDto.  # noqa: E501
         :type: str
         """
 
-        self._database_publisher = database_publisher
+        self._publisher = publisher
 
     @property
-    def database_contact_person(self):
-        """Gets the database_contact_person of this DatabaseDto.  # noqa: E501
+    def contact(self):
+        """Gets the contact of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :return: The contact of this DatabaseDto.  # noqa: E501
         :rtype: UserDto
         """
-        return self._database_contact_person
+        return self._contact
 
-    @database_contact_person.setter
-    def database_contact_person(self, database_contact_person):
-        """Sets the database_contact_person of this DatabaseDto.
+    @contact.setter
+    def contact(self, contact):
+        """Sets the contact of this DatabaseDto.
 
 
-        :param database_contact_person: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :param contact: The contact of this DatabaseDto.  # noqa: E501
         :type: UserDto
         """
 
-        self._database_contact_person = database_contact_person
+        self._contact = contact
 
     @property
     def tables(self):
@@ -379,25 +380,25 @@ class DatabaseDto(object):
         self._tables = tables
 
     @property
-    def database_container_image(self):
-        """Gets the database_container_image of this DatabaseDto.  # noqa: E501
+    def image(self):
+        """Gets the image of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_container_image of this DatabaseDto.  # noqa: E501
+        :return: The image of this DatabaseDto.  # noqa: E501
         :rtype: ImageDto
         """
-        return self._database_container_image
+        return self._image
 
-    @database_container_image.setter
-    def database_container_image(self, database_container_image):
-        """Sets the database_container_image of this DatabaseDto.
+    @image.setter
+    def image(self, image):
+        """Sets the image of this DatabaseDto.
 
 
-        :param database_container_image: The database_container_image of this DatabaseDto.  # noqa: E501
+        :param image: The image of this DatabaseDto.  # noqa: E501
         :type: ImageDto
         """
 
-        self._database_container_image = database_container_image
+        self._image = image
 
     @property
     def container(self):
@@ -421,25 +422,25 @@ class DatabaseDto(object):
         self._container = container
 
     @property
-    def database_creation_time(self):
-        """Gets the database_creation_time of this DatabaseDto.  # noqa: E501
+    def created(self):
+        """Gets the created of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :return: The created of this DatabaseDto.  # noqa: E501
         :rtype: datetime
         """
-        return self._database_creation_time
+        return self._created
 
-    @database_creation_time.setter
-    def database_creation_time(self, database_creation_time):
-        """Sets the database_creation_time of this DatabaseDto.
+    @created.setter
+    def created(self, created):
+        """Sets the created of this DatabaseDto.
 
 
-        :param database_creation_time: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :param created: The created of this DatabaseDto.  # noqa: E501
         :type: datetime
         """
 
-        self._database_creation_time = database_creation_time
+        self._created = created
 
     @property
     def deleted(self):
@@ -463,111 +464,119 @@ class DatabaseDto(object):
         self._deleted = deleted
 
     @property
-    def database_internal_name(self):
-        """Gets the database_internal_name of this DatabaseDto.  # noqa: E501
+    def internal_name(self):
+        """Gets the internal_name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :return: The internal_name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_internal_name
+        return self._internal_name
 
-    @database_internal_name.setter
-    def database_internal_name(self, database_internal_name):
-        """Sets the database_internal_name of this DatabaseDto.
+    @internal_name.setter
+    def internal_name(self, internal_name):
+        """Sets the internal_name of this DatabaseDto.
 
 
-        :param database_internal_name: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :param internal_name: The internal_name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_internal_name is None:
-            raise ValueError("Invalid value for `database_internal_name`, must not be `None`")  # noqa: E501
+        if internal_name is None:
+            raise ValueError("Invalid value for `internal_name`, must not be `None`")  # noqa: E501
 
-        self._database_internal_name = database_internal_name
+        self._internal_name = internal_name
 
     @property
-    def database_publication_year(self):
-        """Gets the database_publication_year of this DatabaseDto.  # noqa: E501
+    def publication_year(self):
+        """Gets the publication_year of this DatabaseDto.  # noqa: E501
 
+        database publication year  # noqa: E501
 
-        :return: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :return: The publication_year of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_year
+        return self._publication_year
 
-    @database_publication_year.setter
-    def database_publication_year(self, database_publication_year):
-        """Sets the database_publication_year of this DatabaseDto.
+    @publication_year.setter
+    def publication_year(self, publication_year):
+        """Sets the publication_year of this DatabaseDto.
 
+        database publication year  # noqa: E501
 
-        :param database_publication_year: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :param publication_year: The publication_year of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_year = database_publication_year
+        self._publication_year = publication_year
 
     @property
-    def database_publication_month(self):
-        """Gets the database_publication_month of this DatabaseDto.  # noqa: E501
+    def publication_month(self):
+        """Gets the publication_month of this DatabaseDto.  # noqa: E501
 
+        database publication month  # noqa: E501
 
-        :return: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :return: The publication_month of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_month
+        return self._publication_month
 
-    @database_publication_month.setter
-    def database_publication_month(self, database_publication_month):
-        """Sets the database_publication_month of this DatabaseDto.
+    @publication_month.setter
+    def publication_month(self, publication_month):
+        """Sets the publication_month of this DatabaseDto.
 
+        database publication month  # noqa: E501
 
-        :param database_publication_month: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :param publication_month: The publication_month of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_month = database_publication_month
+        self._publication_month = publication_month
 
     @property
-    def database_publication_day(self):
-        """Gets the database_publication_day of this DatabaseDto.  # noqa: E501
+    def publication_day(self):
+        """Gets the publication_day of this DatabaseDto.  # noqa: E501
 
+        database publication day  # noqa: E501
 
-        :return: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :return: The publication_day of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_day
+        return self._publication_day
 
-    @database_publication_day.setter
-    def database_publication_day(self, database_publication_day):
-        """Sets the database_publication_day of this DatabaseDto.
+    @publication_day.setter
+    def publication_day(self, publication_day):
+        """Sets the publication_day of this DatabaseDto.
 
+        database publication day  # noqa: E501
 
-        :param database_publication_day: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :param publication_day: The publication_day of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_day = database_publication_day
+        self._publication_day = publication_day
 
     @property
-    def database_public(self):
-        """Gets the database_public of this DatabaseDto.  # noqa: E501
+    def is_public(self):
+        """Gets the is_public of this DatabaseDto.  # noqa: E501
 
+        database publicity  # noqa: E501
 
-        :return: The database_public of this DatabaseDto.  # noqa: E501
+        :return: The is_public of this DatabaseDto.  # noqa: E501
         :rtype: bool
         """
-        return self._database_public
+        return self._is_public
 
-    @database_public.setter
-    def database_public(self, database_public):
-        """Sets the database_public of this DatabaseDto.
+    @is_public.setter
+    def is_public(self, is_public):
+        """Sets the is_public of this DatabaseDto.
 
+        database publicity  # noqa: E501
 
-        :param database_public: The database_public of this DatabaseDto.  # noqa: E501
+        :param is_public: The is_public of this DatabaseDto.  # noqa: E501
         :type: bool
         """
 
-        self._database_public = database_public
+        self._is_public = is_public
 
     def to_dict(self):
         """Returns the model properties as a dict"""
diff --git a/.jupyter/api_authentication/models/image_env_item_dto.py b/.jupyter/api_authentication/models/image_env_item_dto.py
index 30cae17883057e0e928cc721ade694a2bc7988af..0a8089775eddf76cf0fc461d9cc94852246487ff 100644
--- a/.jupyter/api_authentication/models/image_env_item_dto.py
+++ b/.jupyter/api_authentication/models/image_env_item_dto.py
@@ -51,8 +51,7 @@ class ImageEnvItemDto(object):
         self.iid = iid
         self.key = key
         self.value = value
-        if type is not None:
-            self.type = type
+        self.type = type
 
     @property
     def iid(self):
@@ -141,7 +140,9 @@ class ImageEnvItemDto(object):
         :param type: The type of this ImageEnvItemDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["USERNAME", "PASSWORD", "PRIVILEGED_USERNAME", "PRIVILEGED_PASSWORD"]  # noqa: E501
+        if type is None:
+            raise ValueError("Invalid value for `type`, must not be `None`")  # noqa: E501
+        allowed_values = ["username", "password", "privileged_username", "privileged_password"]  # noqa: E501
         if type not in allowed_values:
             raise ValueError(
                 "Invalid value for `type` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_authentication/models/user_brief_dto.py b/.jupyter/api_authentication/models/user_brief_dto.py
index 7b904d8e7a7eccc8d285001ca74db5346faa06e5..79fbd2db971a41b74fda65941dde1e04f6e81ebf 100644
--- a/.jupyter/api_authentication/models/user_brief_dto.py
+++ b/.jupyter/api_authentication/models/user_brief_dto.py
@@ -110,6 +110,7 @@ class UserBriefDto(object):
     def username(self):
         """Gets the username of this UserBriefDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserBriefDto.  # noqa: E501
         :rtype: str
@@ -120,6 +121,7 @@ class UserBriefDto(object):
     def username(self, username):
         """Sets the username of this UserBriefDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserBriefDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_authentication/models/user_dto.py b/.jupyter/api_authentication/models/user_dto.py
index 88484dad5345dec904944dd18b6d637ada8e7bbb..e5a3cf440293c565718006cd46962706ad260f6f 100644
--- a/.jupyter/api_authentication/models/user_dto.py
+++ b/.jupyter/api_authentication/models/user_dto.py
@@ -155,6 +155,7 @@ class UserDto(object):
     def username(self):
         """Gets the username of this UserDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserDto.  # noqa: E501
         :rtype: str
@@ -165,6 +166,7 @@ class UserDto(object):
     def username(self, username):
         """Sets the username of this UserDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_authentication/models/user_update_dto.py b/.jupyter/api_authentication/models/user_update_dto.py
index 06ceb6b9acbac5ec04c2278d0636d3d4ecfaddb9..24d66d8517df6bcb925bf669f6e2976a563472c5 100644
--- a/.jupyter/api_authentication/models/user_update_dto.py
+++ b/.jupyter/api_authentication/models/user_update_dto.py
@@ -54,8 +54,10 @@ class UserUpdateDto(object):
         self._titles_before = None
         self._titles_after = None
         self.discriminator = None
-        self.firstname = firstname
-        self.lastname = lastname
+        if firstname is not None:
+            self.firstname = firstname
+        if lastname is not None:
+            self.lastname = lastname
         if affiliation is not None:
             self.affiliation = affiliation
         if orcid is not None:
@@ -83,8 +85,6 @@ class UserUpdateDto(object):
         :param firstname: The firstname of this UserUpdateDto.  # noqa: E501
         :type: str
         """
-        if firstname is None:
-            raise ValueError("Invalid value for `firstname`, must not be `None`")  # noqa: E501
 
         self._firstname = firstname
 
@@ -106,8 +106,6 @@ class UserUpdateDto(object):
         :param lastname: The lastname of this UserUpdateDto.  # noqa: E501
         :type: str
         """
-        if lastname is None:
-            raise ValueError("Invalid value for `lastname`, must not be `None`")  # noqa: E501
 
         self._lastname = lastname
 
diff --git a/.jupyter/api_container/models/container_dto.py b/.jupyter/api_container/models/container_dto.py
index d5acb90cf9a5ab1b1d1da37f64b71832da32627d..0be42d21d1d2692b65afe99388fb1eccd24a93cf 100644
--- a/.jupyter/api_container/models/container_dto.py
+++ b/.jupyter/api_container/models/container_dto.py
@@ -169,7 +169,7 @@ class ContainerDto(object):
         :param state: The state of this ContainerDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["ContainerStateDto.CREATED", "ContainerStateDto.RESTARTING", "ContainerStateDto.RUNNING", "ContainerStateDto.PAUSED", "ContainerStateDto.EXITED", "ContainerStateDto.DEAD"]  # noqa: E501
+        allowed_values = ["created", "restarting", "running", "paused", "exited", "dead"]  # noqa: E501
         if state not in allowed_values:
             raise ValueError(
                 "Invalid value for `state` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_container/models/database_dto.py b/.jupyter/api_container/models/database_dto.py
index 95e967060fc4db7b769e9d3d3ebf7b6d63e22997..5c0b35a3277cdcb2153446d382383c078807e205 100644
--- a/.jupyter/api_container/models/database_dto.py
+++ b/.jupyter/api_container/models/database_dto.py
@@ -28,334 +28,335 @@ class DatabaseDto(object):
                             and the value is json key in definition.
     """
     swagger_types = {
-        'database_id': 'int',
-        'database_name': 'str',
-        'database_exchange': 'str',
-        'database_creator': 'UserBriefDto',
-        'database_subjects': 'list[str]',
-        'database_language': 'str',
-        'database_license': 'LicenseDto',
-        'database_description': 'str',
-        'database_publisher': 'str',
-        'database_contact_person': 'UserDto',
+        'id': 'int',
+        'name': 'str',
+        'exchange': 'str',
+        'creator': 'UserBriefDto',
+        'subjects': 'list[str]',
+        'language': 'str',
+        'license': 'LicenseDto',
+        'description': 'str',
+        'publisher': 'str',
+        'contact': 'UserDto',
         'tables': 'list[TableBriefDto]',
-        'database_container_image': 'ImageDto',
+        'image': 'ImageDto',
         'container': 'ContainerDto',
-        'database_creation_time': 'datetime',
+        'created': 'datetime',
         'deleted': 'datetime',
-        'database_internal_name': 'str',
-        'database_publication_year': 'int',
-        'database_publication_month': 'int',
-        'database_publication_day': 'int',
-        'database_public': 'bool'
+        'internal_name': 'str',
+        'publication_year': 'int',
+        'publication_month': 'int',
+        'publication_day': 'int',
+        'is_public': 'bool'
     }
 
     attribute_map = {
-        'database_id': 'database id',
-        'database_name': 'database name',
-        'database_exchange': 'database exchange',
-        'database_creator': 'database creator',
-        'database_subjects': 'database subjects',
-        'database_language': 'database language',
-        'database_license': 'database license',
-        'database_description': 'database description',
-        'database_publisher': 'database publisher',
-        'database_contact_person': 'database contact person',
+        'id': 'id',
+        'name': 'name',
+        'exchange': 'exchange',
+        'creator': 'creator',
+        'subjects': 'subjects',
+        'language': 'language',
+        'license': 'license',
+        'description': 'description',
+        'publisher': 'publisher',
+        'contact': 'contact',
         'tables': 'tables',
-        'database_container_image': 'database container image',
+        'image': 'image',
         'container': 'container',
-        'database_creation_time': 'database creation time',
+        'created': 'created',
         'deleted': 'deleted',
-        'database_internal_name': 'database internal name',
-        'database_publication_year': 'database publication year',
-        'database_publication_month': 'database publication month',
-        'database_publication_day': 'database publication day',
-        'database_public': 'database public'
+        'internal_name': 'internal_name',
+        'publication_year': 'publication_year',
+        'publication_month': 'publication_month',
+        'publication_day': 'publication_day',
+        'is_public': 'is_public'
     }
 
-    def __init__(self, database_id=None, database_name=None, database_exchange=None, database_creator=None, database_subjects=None, database_language=None, database_license=None, database_description=None, database_publisher=None, database_contact_person=None, tables=None, database_container_image=None, container=None, database_creation_time=None, deleted=None, database_internal_name=None, database_publication_year=None, database_publication_month=None, database_publication_day=None, database_public=None):  # noqa: E501
+    def __init__(self, id=None, name=None, exchange=None, creator=None, subjects=None, language=None, license=None, description=None, publisher=None, contact=None, tables=None, image=None, container=None, created=None, deleted=None, internal_name=None, publication_year=None, publication_month=None, publication_day=None, is_public=None):  # noqa: E501
         """DatabaseDto - a model defined in Swagger"""  # noqa: E501
-        self._database_id = None
-        self._database_name = None
-        self._database_exchange = None
-        self._database_creator = None
-        self._database_subjects = None
-        self._database_language = None
-        self._database_license = None
-        self._database_description = None
-        self._database_publisher = None
-        self._database_contact_person = None
+        self._id = None
+        self._name = None
+        self._exchange = None
+        self._creator = None
+        self._subjects = None
+        self._language = None
+        self._license = None
+        self._description = None
+        self._publisher = None
+        self._contact = None
         self._tables = None
-        self._database_container_image = None
+        self._image = None
         self._container = None
-        self._database_creation_time = None
+        self._created = None
         self._deleted = None
-        self._database_internal_name = None
-        self._database_publication_year = None
-        self._database_publication_month = None
-        self._database_publication_day = None
-        self._database_public = None
+        self._internal_name = None
+        self._publication_year = None
+        self._publication_month = None
+        self._publication_day = None
+        self._is_public = None
         self.discriminator = None
-        self.database_id = database_id
-        self.database_name = database_name
-        self.database_exchange = database_exchange
-        self.database_creator = database_creator
-        if database_subjects is not None:
-            self.database_subjects = database_subjects
-        if database_language is not None:
-            self.database_language = database_language
-        if database_license is not None:
-            self.database_license = database_license
-        self.database_description = database_description
-        if database_publisher is not None:
-            self.database_publisher = database_publisher
-        if database_contact_person is not None:
-            self.database_contact_person = database_contact_person
+        self.id = id
+        self.name = name
+        self.exchange = exchange
+        self.creator = creator
+        if subjects is not None:
+            self.subjects = subjects
+        if language is not None:
+            self.language = language
+        if license is not None:
+            self.license = license
+        if description is not None:
+            self.description = description
+        if publisher is not None:
+            self.publisher = publisher
+        if contact is not None:
+            self.contact = contact
         if tables is not None:
             self.tables = tables
-        if database_container_image is not None:
-            self.database_container_image = database_container_image
+        if image is not None:
+            self.image = image
         if container is not None:
             self.container = container
-        if database_creation_time is not None:
-            self.database_creation_time = database_creation_time
+        if created is not None:
+            self.created = created
         if deleted is not None:
             self.deleted = deleted
-        self.database_internal_name = database_internal_name
-        if database_publication_year is not None:
-            self.database_publication_year = database_publication_year
-        if database_publication_month is not None:
-            self.database_publication_month = database_publication_month
-        if database_publication_day is not None:
-            self.database_publication_day = database_publication_day
-        if database_public is not None:
-            self.database_public = database_public
+        self.internal_name = internal_name
+        if publication_year is not None:
+            self.publication_year = publication_year
+        if publication_month is not None:
+            self.publication_month = publication_month
+        if publication_day is not None:
+            self.publication_day = publication_day
+        if is_public is not None:
+            self.is_public = is_public
 
     @property
-    def database_id(self):
-        """Gets the database_id of this DatabaseDto.  # noqa: E501
+    def id(self):
+        """Gets the id of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_id of this DatabaseDto.  # noqa: E501
+        :return: The id of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_id
+        return self._id
 
-    @database_id.setter
-    def database_id(self, database_id):
-        """Sets the database_id of this DatabaseDto.
+    @id.setter
+    def id(self, id):
+        """Sets the id of this DatabaseDto.
 
 
-        :param database_id: The database_id of this DatabaseDto.  # noqa: E501
+        :param id: The id of this DatabaseDto.  # noqa: E501
         :type: int
         """
-        if database_id is None:
-            raise ValueError("Invalid value for `database_id`, must not be `None`")  # noqa: E501
+        if id is None:
+            raise ValueError("Invalid value for `id`, must not be `None`")  # noqa: E501
 
-        self._database_id = database_id
+        self._id = id
 
     @property
-    def database_name(self):
-        """Gets the database_name of this DatabaseDto.  # noqa: E501
+    def name(self):
+        """Gets the name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_name of this DatabaseDto.  # noqa: E501
+        :return: The name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_name
+        return self._name
 
-    @database_name.setter
-    def database_name(self, database_name):
-        """Sets the database_name of this DatabaseDto.
+    @name.setter
+    def name(self, name):
+        """Sets the name of this DatabaseDto.
 
 
-        :param database_name: The database_name of this DatabaseDto.  # noqa: E501
+        :param name: The name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_name is None:
-            raise ValueError("Invalid value for `database_name`, must not be `None`")  # noqa: E501
+        if name is None:
+            raise ValueError("Invalid value for `name`, must not be `None`")  # noqa: E501
 
-        self._database_name = database_name
+        self._name = name
 
     @property
-    def database_exchange(self):
-        """Gets the database_exchange of this DatabaseDto.  # noqa: E501
+    def exchange(self):
+        """Gets the exchange of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_exchange of this DatabaseDto.  # noqa: E501
+        :return: The exchange of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_exchange
+        return self._exchange
 
-    @database_exchange.setter
-    def database_exchange(self, database_exchange):
-        """Sets the database_exchange of this DatabaseDto.
+    @exchange.setter
+    def exchange(self, exchange):
+        """Sets the exchange of this DatabaseDto.
 
 
-        :param database_exchange: The database_exchange of this DatabaseDto.  # noqa: E501
+        :param exchange: The exchange of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_exchange is None:
-            raise ValueError("Invalid value for `database_exchange`, must not be `None`")  # noqa: E501
+        if exchange is None:
+            raise ValueError("Invalid value for `exchange`, must not be `None`")  # noqa: E501
 
-        self._database_exchange = database_exchange
+        self._exchange = exchange
 
     @property
-    def database_creator(self):
-        """Gets the database_creator of this DatabaseDto.  # noqa: E501
+    def creator(self):
+        """Gets the creator of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creator of this DatabaseDto.  # noqa: E501
+        :return: The creator of this DatabaseDto.  # noqa: E501
         :rtype: UserBriefDto
         """
-        return self._database_creator
+        return self._creator
 
-    @database_creator.setter
-    def database_creator(self, database_creator):
-        """Sets the database_creator of this DatabaseDto.
+    @creator.setter
+    def creator(self, creator):
+        """Sets the creator of this DatabaseDto.
 
 
-        :param database_creator: The database_creator of this DatabaseDto.  # noqa: E501
+        :param creator: The creator of this DatabaseDto.  # noqa: E501
         :type: UserBriefDto
         """
-        if database_creator is None:
-            raise ValueError("Invalid value for `database_creator`, must not be `None`")  # noqa: E501
+        if creator is None:
+            raise ValueError("Invalid value for `creator`, must not be `None`")  # noqa: E501
 
-        self._database_creator = database_creator
+        self._creator = creator
 
     @property
-    def database_subjects(self):
-        """Gets the database_subjects of this DatabaseDto.  # noqa: E501
+    def subjects(self):
+        """Gets the subjects of this DatabaseDto.  # noqa: E501
 
+        database subjects  # noqa: E501
 
-        :return: The database_subjects of this DatabaseDto.  # noqa: E501
+        :return: The subjects of this DatabaseDto.  # noqa: E501
         :rtype: list[str]
         """
-        return self._database_subjects
+        return self._subjects
 
-    @database_subjects.setter
-    def database_subjects(self, database_subjects):
-        """Sets the database_subjects of this DatabaseDto.
+    @subjects.setter
+    def subjects(self, subjects):
+        """Sets the subjects of this DatabaseDto.
 
+        database subjects  # noqa: E501
 
-        :param database_subjects: The database_subjects of this DatabaseDto.  # noqa: E501
+        :param subjects: The subjects of this DatabaseDto.  # noqa: E501
         :type: list[str]
         """
 
-        self._database_subjects = database_subjects
+        self._subjects = subjects
 
     @property
-    def database_language(self):
-        """Gets the database_language of this DatabaseDto.  # noqa: E501
+    def language(self):
+        """Gets the language of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_language of this DatabaseDto.  # noqa: E501
+        :return: The language of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_language
+        return self._language
 
-    @database_language.setter
-    def database_language(self, database_language):
-        """Sets the database_language of this DatabaseDto.
+    @language.setter
+    def language(self, language):
+        """Sets the language of this DatabaseDto.
 
 
-        :param database_language: The database_language of this DatabaseDto.  # noqa: E501
+        :param language: The language of this DatabaseDto.  # noqa: E501
         :type: str
         """
         allowed_values = ["ab", "aa", "af", "ak", "sq", "am", "ar", "an", "hy", "as", "av", "ae", "ay", "az", "bm", "ba", "eu", "be", "bn", "bh", "bi", "bs", "br", "bg", "my", "ca", "km", "ch", "ce", "ny", "zh", "cu", "cv", "kw", "co", "cr", "hr", "cs", "da", "dv", "nl", "dz", "en", "eo", "et", "ee", "fo", "fj", "fi", "fr", "ff", "gd", "gl", "lg", "ka", "de", "ki", "el", "kl", "gn", "gu", "ht", "ha", "he", "hz", "hi", "ho", "hu", "is", "io", "ig", "id", "ia", "ie", "iu", "ik", "ga", "it", "ja", "jv", "kn", "kr", "ks", "kk", "rw", "kv", "kg", "ko", "kj", "ku", "ky", "lo", "la", "lv", "lb", "li", "ln", "lt", "lu", "mk", "mg", "ms", "ml", "mt", "gv", "mi", "mr", "mh", "ro", "mn", "na", "nv", "nd", "ng", "ne", "se", "no", "nb", "nn", "ii", "oc", "oj", "or", "om", "os", "pi", "pa", "ps", "fa", "pl", "pt", "qu", "rm", "rn", "ru", "sm", "sg", "sa", "sc", "sr", "sn", "sd", "si", "sk", "sl", "so", "st", "nr", "es", "su", "sw", "ss", "sv", "tl", "ty", "tg", "ta", "tt", "te", "th", "bo", "ti", "to", "ts", "tn", "tr", "tk", "tw", "ug", "uk", "ur", "uz", "ve", "vi", "vo", "wa", "cy", "fy", "wo", "xh", "yi", "yo", "za", "zu"]  # noqa: E501
-        if database_language not in allowed_values:
+        if language not in allowed_values:
             raise ValueError(
-                "Invalid value for `database_language` ({0}), must be one of {1}"  # noqa: E501
-                .format(database_language, allowed_values)
+                "Invalid value for `language` ({0}), must be one of {1}"  # noqa: E501
+                .format(language, allowed_values)
             )
 
-        self._database_language = database_language
+        self._language = language
 
     @property
-    def database_license(self):
-        """Gets the database_license of this DatabaseDto.  # noqa: E501
+    def license(self):
+        """Gets the license of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_license of this DatabaseDto.  # noqa: E501
+        :return: The license of this DatabaseDto.  # noqa: E501
         :rtype: LicenseDto
         """
-        return self._database_license
+        return self._license
 
-    @database_license.setter
-    def database_license(self, database_license):
-        """Sets the database_license of this DatabaseDto.
+    @license.setter
+    def license(self, license):
+        """Sets the license of this DatabaseDto.
 
 
-        :param database_license: The database_license of this DatabaseDto.  # noqa: E501
+        :param license: The license of this DatabaseDto.  # noqa: E501
         :type: LicenseDto
         """
 
-        self._database_license = database_license
+        self._license = license
 
     @property
-    def database_description(self):
-        """Gets the database_description of this DatabaseDto.  # noqa: E501
+    def description(self):
+        """Gets the description of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_description of this DatabaseDto.  # noqa: E501
+        :return: The description of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_description
+        return self._description
 
-    @database_description.setter
-    def database_description(self, database_description):
-        """Sets the database_description of this DatabaseDto.
+    @description.setter
+    def description(self, description):
+        """Sets the description of this DatabaseDto.
 
 
-        :param database_description: The database_description of this DatabaseDto.  # noqa: E501
+        :param description: The description of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_description is None:
-            raise ValueError("Invalid value for `database_description`, must not be `None`")  # noqa: E501
 
-        self._database_description = database_description
+        self._description = description
 
     @property
-    def database_publisher(self):
-        """Gets the database_publisher of this DatabaseDto.  # noqa: E501
+    def publisher(self):
+        """Gets the publisher of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_publisher of this DatabaseDto.  # noqa: E501
+        :return: The publisher of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_publisher
+        return self._publisher
 
-    @database_publisher.setter
-    def database_publisher(self, database_publisher):
-        """Sets the database_publisher of this DatabaseDto.
+    @publisher.setter
+    def publisher(self, publisher):
+        """Sets the publisher of this DatabaseDto.
 
 
-        :param database_publisher: The database_publisher of this DatabaseDto.  # noqa: E501
+        :param publisher: The publisher of this DatabaseDto.  # noqa: E501
         :type: str
         """
 
-        self._database_publisher = database_publisher
+        self._publisher = publisher
 
     @property
-    def database_contact_person(self):
-        """Gets the database_contact_person of this DatabaseDto.  # noqa: E501
+    def contact(self):
+        """Gets the contact of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :return: The contact of this DatabaseDto.  # noqa: E501
         :rtype: UserDto
         """
-        return self._database_contact_person
+        return self._contact
 
-    @database_contact_person.setter
-    def database_contact_person(self, database_contact_person):
-        """Sets the database_contact_person of this DatabaseDto.
+    @contact.setter
+    def contact(self, contact):
+        """Sets the contact of this DatabaseDto.
 
 
-        :param database_contact_person: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :param contact: The contact of this DatabaseDto.  # noqa: E501
         :type: UserDto
         """
 
-        self._database_contact_person = database_contact_person
+        self._contact = contact
 
     @property
     def tables(self):
@@ -379,25 +380,25 @@ class DatabaseDto(object):
         self._tables = tables
 
     @property
-    def database_container_image(self):
-        """Gets the database_container_image of this DatabaseDto.  # noqa: E501
+    def image(self):
+        """Gets the image of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_container_image of this DatabaseDto.  # noqa: E501
+        :return: The image of this DatabaseDto.  # noqa: E501
         :rtype: ImageDto
         """
-        return self._database_container_image
+        return self._image
 
-    @database_container_image.setter
-    def database_container_image(self, database_container_image):
-        """Sets the database_container_image of this DatabaseDto.
+    @image.setter
+    def image(self, image):
+        """Sets the image of this DatabaseDto.
 
 
-        :param database_container_image: The database_container_image of this DatabaseDto.  # noqa: E501
+        :param image: The image of this DatabaseDto.  # noqa: E501
         :type: ImageDto
         """
 
-        self._database_container_image = database_container_image
+        self._image = image
 
     @property
     def container(self):
@@ -421,25 +422,25 @@ class DatabaseDto(object):
         self._container = container
 
     @property
-    def database_creation_time(self):
-        """Gets the database_creation_time of this DatabaseDto.  # noqa: E501
+    def created(self):
+        """Gets the created of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :return: The created of this DatabaseDto.  # noqa: E501
         :rtype: datetime
         """
-        return self._database_creation_time
+        return self._created
 
-    @database_creation_time.setter
-    def database_creation_time(self, database_creation_time):
-        """Sets the database_creation_time of this DatabaseDto.
+    @created.setter
+    def created(self, created):
+        """Sets the created of this DatabaseDto.
 
 
-        :param database_creation_time: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :param created: The created of this DatabaseDto.  # noqa: E501
         :type: datetime
         """
 
-        self._database_creation_time = database_creation_time
+        self._created = created
 
     @property
     def deleted(self):
@@ -463,111 +464,119 @@ class DatabaseDto(object):
         self._deleted = deleted
 
     @property
-    def database_internal_name(self):
-        """Gets the database_internal_name of this DatabaseDto.  # noqa: E501
+    def internal_name(self):
+        """Gets the internal_name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :return: The internal_name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_internal_name
+        return self._internal_name
 
-    @database_internal_name.setter
-    def database_internal_name(self, database_internal_name):
-        """Sets the database_internal_name of this DatabaseDto.
+    @internal_name.setter
+    def internal_name(self, internal_name):
+        """Sets the internal_name of this DatabaseDto.
 
 
-        :param database_internal_name: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :param internal_name: The internal_name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_internal_name is None:
-            raise ValueError("Invalid value for `database_internal_name`, must not be `None`")  # noqa: E501
+        if internal_name is None:
+            raise ValueError("Invalid value for `internal_name`, must not be `None`")  # noqa: E501
 
-        self._database_internal_name = database_internal_name
+        self._internal_name = internal_name
 
     @property
-    def database_publication_year(self):
-        """Gets the database_publication_year of this DatabaseDto.  # noqa: E501
+    def publication_year(self):
+        """Gets the publication_year of this DatabaseDto.  # noqa: E501
 
+        database publication year  # noqa: E501
 
-        :return: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :return: The publication_year of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_year
+        return self._publication_year
 
-    @database_publication_year.setter
-    def database_publication_year(self, database_publication_year):
-        """Sets the database_publication_year of this DatabaseDto.
+    @publication_year.setter
+    def publication_year(self, publication_year):
+        """Sets the publication_year of this DatabaseDto.
 
+        database publication year  # noqa: E501
 
-        :param database_publication_year: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :param publication_year: The publication_year of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_year = database_publication_year
+        self._publication_year = publication_year
 
     @property
-    def database_publication_month(self):
-        """Gets the database_publication_month of this DatabaseDto.  # noqa: E501
+    def publication_month(self):
+        """Gets the publication_month of this DatabaseDto.  # noqa: E501
 
+        database publication month  # noqa: E501
 
-        :return: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :return: The publication_month of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_month
+        return self._publication_month
 
-    @database_publication_month.setter
-    def database_publication_month(self, database_publication_month):
-        """Sets the database_publication_month of this DatabaseDto.
+    @publication_month.setter
+    def publication_month(self, publication_month):
+        """Sets the publication_month of this DatabaseDto.
 
+        database publication month  # noqa: E501
 
-        :param database_publication_month: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :param publication_month: The publication_month of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_month = database_publication_month
+        self._publication_month = publication_month
 
     @property
-    def database_publication_day(self):
-        """Gets the database_publication_day of this DatabaseDto.  # noqa: E501
+    def publication_day(self):
+        """Gets the publication_day of this DatabaseDto.  # noqa: E501
 
+        database publication day  # noqa: E501
 
-        :return: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :return: The publication_day of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_day
+        return self._publication_day
 
-    @database_publication_day.setter
-    def database_publication_day(self, database_publication_day):
-        """Sets the database_publication_day of this DatabaseDto.
+    @publication_day.setter
+    def publication_day(self, publication_day):
+        """Sets the publication_day of this DatabaseDto.
 
+        database publication day  # noqa: E501
 
-        :param database_publication_day: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :param publication_day: The publication_day of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_day = database_publication_day
+        self._publication_day = publication_day
 
     @property
-    def database_public(self):
-        """Gets the database_public of this DatabaseDto.  # noqa: E501
+    def is_public(self):
+        """Gets the is_public of this DatabaseDto.  # noqa: E501
 
+        database publicity  # noqa: E501
 
-        :return: The database_public of this DatabaseDto.  # noqa: E501
+        :return: The is_public of this DatabaseDto.  # noqa: E501
         :rtype: bool
         """
-        return self._database_public
+        return self._is_public
 
-    @database_public.setter
-    def database_public(self, database_public):
-        """Sets the database_public of this DatabaseDto.
+    @is_public.setter
+    def is_public(self, is_public):
+        """Sets the is_public of this DatabaseDto.
 
+        database publicity  # noqa: E501
 
-        :param database_public: The database_public of this DatabaseDto.  # noqa: E501
+        :param is_public: The is_public of this DatabaseDto.  # noqa: E501
         :type: bool
         """
 
-        self._database_public = database_public
+        self._is_public = is_public
 
     def to_dict(self):
         """Returns the model properties as a dict"""
diff --git a/.jupyter/api_container/models/image_change_dto.py b/.jupyter/api_container/models/image_change_dto.py
index 8f8670d98a2be17539b7125ac0f7ba72d08f4c15..ee455f431a8444c195db6dd5edaa74358624cdd9 100644
--- a/.jupyter/api_container/models/image_change_dto.py
+++ b/.jupyter/api_container/models/image_change_dto.py
@@ -30,7 +30,6 @@ class ImageChangeDto(object):
     swagger_types = {
         'default_port': 'int',
         'environment': 'list[ImageEnvItemDto]',
-        'logo': 'str',
         'dialect': 'str',
         'driver_class': 'str',
         'jdbc_method': 'str'
@@ -39,17 +38,15 @@ class ImageChangeDto(object):
     attribute_map = {
         'default_port': 'defaultPort',
         'environment': 'environment',
-        'logo': 'logo',
         'dialect': 'dialect',
         'driver_class': 'driver_class',
         'jdbc_method': 'jdbc_method'
     }
 
-    def __init__(self, default_port=None, environment=None, logo=None, dialect=None, driver_class=None, jdbc_method=None):  # noqa: E501
+    def __init__(self, default_port=None, environment=None, dialect=None, driver_class=None, jdbc_method=None):  # noqa: E501
         """ImageChangeDto - a model defined in Swagger"""  # noqa: E501
         self._default_port = None
         self._environment = None
-        self._logo = None
         self._dialect = None
         self._driver_class = None
         self._jdbc_method = None
@@ -58,7 +55,6 @@ class ImageChangeDto(object):
             self.default_port = default_port
         if environment is not None:
             self.environment = environment
-        self.logo = logo
         self.dialect = dialect
         self.driver_class = driver_class
         self.jdbc_method = jdbc_method
@@ -105,29 +101,6 @@ class ImageChangeDto(object):
 
         self._environment = environment
 
-    @property
-    def logo(self):
-        """Gets the logo of this ImageChangeDto.  # noqa: E501
-
-
-        :return: The logo of this ImageChangeDto.  # noqa: E501
-        :rtype: str
-        """
-        return self._logo
-
-    @logo.setter
-    def logo(self, logo):
-        """Sets the logo of this ImageChangeDto.
-
-
-        :param logo: The logo of this ImageChangeDto.  # noqa: E501
-        :type: str
-        """
-        if logo is None:
-            raise ValueError("Invalid value for `logo`, must not be `None`")  # noqa: E501
-
-        self._logo = logo
-
     @property
     def dialect(self):
         """Gets the dialect of this ImageChangeDto.  # noqa: E501
diff --git a/.jupyter/api_container/models/image_create_dto.py b/.jupyter/api_container/models/image_create_dto.py
index 4327dc7534112d9ef634a8bd223f140c38315c1e..43bf86e8f014a28de06c5b073689837b52d9be85 100644
--- a/.jupyter/api_container/models/image_create_dto.py
+++ b/.jupyter/api_container/models/image_create_dto.py
@@ -31,8 +31,6 @@ class ImageCreateDto(object):
         'repository': 'str',
         'tag': 'str',
         'dialect': 'str',
-        'logo': 'str',
-        'local': 'bool',
         'environment': 'list[ImageEnvItemDto]',
         'driver_class': 'str',
         'jdbc_method': 'str',
@@ -43,21 +41,17 @@ class ImageCreateDto(object):
         'repository': 'repository',
         'tag': 'tag',
         'dialect': 'dialect',
-        'logo': 'logo',
-        'local': 'local',
         'environment': 'environment',
         'driver_class': 'driver_class',
         'jdbc_method': 'jdbc_method',
         'default_port': 'default_port'
     }
 
-    def __init__(self, repository=None, tag=None, dialect=None, logo=None, local=None, environment=None, driver_class=None, jdbc_method=None, default_port=None):  # noqa: E501
+    def __init__(self, repository=None, tag=None, dialect=None, environment=None, driver_class=None, jdbc_method=None, default_port=None):  # noqa: E501
         """ImageCreateDto - a model defined in Swagger"""  # noqa: E501
         self._repository = None
         self._tag = None
         self._dialect = None
-        self._logo = None
-        self._local = None
         self._environment = None
         self._driver_class = None
         self._jdbc_method = None
@@ -66,8 +60,6 @@ class ImageCreateDto(object):
         self.repository = repository
         self.tag = tag
         self.dialect = dialect
-        self.logo = logo
-        self.local = local
         if environment is not None:
             self.environment = environment
         self.driver_class = driver_class
@@ -143,52 +135,6 @@ class ImageCreateDto(object):
 
         self._dialect = dialect
 
-    @property
-    def logo(self):
-        """Gets the logo of this ImageCreateDto.  # noqa: E501
-
-
-        :return: The logo of this ImageCreateDto.  # noqa: E501
-        :rtype: str
-        """
-        return self._logo
-
-    @logo.setter
-    def logo(self, logo):
-        """Sets the logo of this ImageCreateDto.
-
-
-        :param logo: The logo of this ImageCreateDto.  # noqa: E501
-        :type: str
-        """
-        if logo is None:
-            raise ValueError("Invalid value for `logo`, must not be `None`")  # noqa: E501
-
-        self._logo = logo
-
-    @property
-    def local(self):
-        """Gets the local of this ImageCreateDto.  # noqa: E501
-
-
-        :return: The local of this ImageCreateDto.  # noqa: E501
-        :rtype: bool
-        """
-        return self._local
-
-    @local.setter
-    def local(self, local):
-        """Sets the local of this ImageCreateDto.
-
-
-        :param local: The local of this ImageCreateDto.  # noqa: E501
-        :type: bool
-        """
-        if local is None:
-            raise ValueError("Invalid value for `local`, must not be `None`")  # noqa: E501
-
-        self._local = local
-
     @property
     def environment(self):
         """Gets the environment of this ImageCreateDto.  # noqa: E501
diff --git a/.jupyter/api_container/models/image_env_item_dto.py b/.jupyter/api_container/models/image_env_item_dto.py
index 5f77c61e3604cc1446733d653d6ea5c9a8f4c0a5..e414cf91202f219a15c36661940fe394e084a7da 100644
--- a/.jupyter/api_container/models/image_env_item_dto.py
+++ b/.jupyter/api_container/models/image_env_item_dto.py
@@ -51,8 +51,7 @@ class ImageEnvItemDto(object):
         self.iid = iid
         self.key = key
         self.value = value
-        if type is not None:
-            self.type = type
+        self.type = type
 
     @property
     def iid(self):
@@ -141,7 +140,9 @@ class ImageEnvItemDto(object):
         :param type: The type of this ImageEnvItemDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["USERNAME", "PASSWORD", "PRIVILEGED_USERNAME", "PRIVILEGED_PASSWORD"]  # noqa: E501
+        if type is None:
+            raise ValueError("Invalid value for `type`, must not be `None`")  # noqa: E501
+        allowed_values = ["username", "password", "privileged_username", "privileged_password"]  # noqa: E501
         if type not in allowed_values:
             raise ValueError(
                 "Invalid value for `type` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_container/models/user_brief_dto.py b/.jupyter/api_container/models/user_brief_dto.py
index 4ca5e34dcb464f9ba974617485f62ba5e74da8f9..15e5e217a9b1cc3b4ee91e65f422dc782a4c37ac 100644
--- a/.jupyter/api_container/models/user_brief_dto.py
+++ b/.jupyter/api_container/models/user_brief_dto.py
@@ -110,6 +110,7 @@ class UserBriefDto(object):
     def username(self):
         """Gets the username of this UserBriefDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserBriefDto.  # noqa: E501
         :rtype: str
@@ -120,6 +121,7 @@ class UserBriefDto(object):
     def username(self, username):
         """Sets the username of this UserBriefDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserBriefDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_container/models/user_dto.py b/.jupyter/api_container/models/user_dto.py
index 1d4b0bbf7f7aa3c801b4b2ae734fac286b9a5a87..3d1b14417ef4405b97be22e752df7c5144127a49 100644
--- a/.jupyter/api_container/models/user_dto.py
+++ b/.jupyter/api_container/models/user_dto.py
@@ -155,6 +155,7 @@ class UserDto(object):
     def username(self):
         """Gets the username of this UserDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserDto.  # noqa: E501
         :rtype: str
@@ -165,6 +166,7 @@ class UserDto(object):
     def username(self, username):
         """Sets the username of this UserDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_database/models/container_dto.py b/.jupyter/api_database/models/container_dto.py
index 8aec8c1ceebd97e3dc2e757e61b7629d9926ceb6..1ab9e4195efa179e64077d6c9a8e62938cd10c24 100644
--- a/.jupyter/api_database/models/container_dto.py
+++ b/.jupyter/api_database/models/container_dto.py
@@ -169,7 +169,7 @@ class ContainerDto(object):
         :param state: The state of this ContainerDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["ContainerStateDto.CREATED", "ContainerStateDto.RESTARTING", "ContainerStateDto.RUNNING", "ContainerStateDto.PAUSED", "ContainerStateDto.EXITED", "ContainerStateDto.DEAD"]  # noqa: E501
+        allowed_values = ["created", "restarting", "running", "paused", "exited", "dead"]  # noqa: E501
         if state not in allowed_values:
             raise ValueError(
                 "Invalid value for `state` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_database/models/database_dto.py b/.jupyter/api_database/models/database_dto.py
index 56899bd1051f4bf6440c22f309aae45d1d9c4e3f..a9abee5127956007bff7f1388a5384627a74cead 100644
--- a/.jupyter/api_database/models/database_dto.py
+++ b/.jupyter/api_database/models/database_dto.py
@@ -28,334 +28,335 @@ class DatabaseDto(object):
                             and the value is json key in definition.
     """
     swagger_types = {
-        'database_id': 'int',
-        'database_name': 'str',
-        'database_exchange': 'str',
-        'database_creator': 'UserBriefDto',
-        'database_subjects': 'list[str]',
-        'database_language': 'str',
-        'database_license': 'LicenseDto',
-        'database_description': 'str',
-        'database_publisher': 'str',
-        'database_contact_person': 'UserDto',
+        'id': 'int',
+        'name': 'str',
+        'exchange': 'str',
+        'creator': 'UserBriefDto',
+        'subjects': 'list[str]',
+        'language': 'str',
+        'license': 'LicenseDto',
+        'description': 'str',
+        'publisher': 'str',
+        'contact': 'UserDto',
         'tables': 'list[TableBriefDto]',
-        'database_container_image': 'ImageDto',
+        'image': 'ImageDto',
         'container': 'ContainerDto',
-        'database_creation_time': 'datetime',
+        'created': 'datetime',
         'deleted': 'datetime',
-        'database_internal_name': 'str',
-        'database_publication_year': 'int',
-        'database_publication_month': 'int',
-        'database_publication_day': 'int',
-        'database_public': 'bool'
+        'internal_name': 'str',
+        'publication_year': 'int',
+        'publication_month': 'int',
+        'publication_day': 'int',
+        'is_public': 'bool'
     }
 
     attribute_map = {
-        'database_id': 'database id',
-        'database_name': 'database name',
-        'database_exchange': 'database exchange',
-        'database_creator': 'database creator',
-        'database_subjects': 'database subjects',
-        'database_language': 'database language',
-        'database_license': 'database license',
-        'database_description': 'database description',
-        'database_publisher': 'database publisher',
-        'database_contact_person': 'database contact person',
+        'id': 'id',
+        'name': 'name',
+        'exchange': 'exchange',
+        'creator': 'creator',
+        'subjects': 'subjects',
+        'language': 'language',
+        'license': 'license',
+        'description': 'description',
+        'publisher': 'publisher',
+        'contact': 'contact',
         'tables': 'tables',
-        'database_container_image': 'database container image',
+        'image': 'image',
         'container': 'container',
-        'database_creation_time': 'database creation time',
+        'created': 'created',
         'deleted': 'deleted',
-        'database_internal_name': 'database internal name',
-        'database_publication_year': 'database publication year',
-        'database_publication_month': 'database publication month',
-        'database_publication_day': 'database publication day',
-        'database_public': 'database public'
+        'internal_name': 'internal_name',
+        'publication_year': 'publication_year',
+        'publication_month': 'publication_month',
+        'publication_day': 'publication_day',
+        'is_public': 'is_public'
     }
 
-    def __init__(self, database_id=None, database_name=None, database_exchange=None, database_creator=None, database_subjects=None, database_language=None, database_license=None, database_description=None, database_publisher=None, database_contact_person=None, tables=None, database_container_image=None, container=None, database_creation_time=None, deleted=None, database_internal_name=None, database_publication_year=None, database_publication_month=None, database_publication_day=None, database_public=None):  # noqa: E501
+    def __init__(self, id=None, name=None, exchange=None, creator=None, subjects=None, language=None, license=None, description=None, publisher=None, contact=None, tables=None, image=None, container=None, created=None, deleted=None, internal_name=None, publication_year=None, publication_month=None, publication_day=None, is_public=None):  # noqa: E501
         """DatabaseDto - a model defined in Swagger"""  # noqa: E501
-        self._database_id = None
-        self._database_name = None
-        self._database_exchange = None
-        self._database_creator = None
-        self._database_subjects = None
-        self._database_language = None
-        self._database_license = None
-        self._database_description = None
-        self._database_publisher = None
-        self._database_contact_person = None
+        self._id = None
+        self._name = None
+        self._exchange = None
+        self._creator = None
+        self._subjects = None
+        self._language = None
+        self._license = None
+        self._description = None
+        self._publisher = None
+        self._contact = None
         self._tables = None
-        self._database_container_image = None
+        self._image = None
         self._container = None
-        self._database_creation_time = None
+        self._created = None
         self._deleted = None
-        self._database_internal_name = None
-        self._database_publication_year = None
-        self._database_publication_month = None
-        self._database_publication_day = None
-        self._database_public = None
+        self._internal_name = None
+        self._publication_year = None
+        self._publication_month = None
+        self._publication_day = None
+        self._is_public = None
         self.discriminator = None
-        self.database_id = database_id
-        self.database_name = database_name
-        self.database_exchange = database_exchange
-        self.database_creator = database_creator
-        if database_subjects is not None:
-            self.database_subjects = database_subjects
-        if database_language is not None:
-            self.database_language = database_language
-        if database_license is not None:
-            self.database_license = database_license
-        self.database_description = database_description
-        if database_publisher is not None:
-            self.database_publisher = database_publisher
-        if database_contact_person is not None:
-            self.database_contact_person = database_contact_person
+        self.id = id
+        self.name = name
+        self.exchange = exchange
+        self.creator = creator
+        if subjects is not None:
+            self.subjects = subjects
+        if language is not None:
+            self.language = language
+        if license is not None:
+            self.license = license
+        if description is not None:
+            self.description = description
+        if publisher is not None:
+            self.publisher = publisher
+        if contact is not None:
+            self.contact = contact
         if tables is not None:
             self.tables = tables
-        if database_container_image is not None:
-            self.database_container_image = database_container_image
+        if image is not None:
+            self.image = image
         if container is not None:
             self.container = container
-        if database_creation_time is not None:
-            self.database_creation_time = database_creation_time
+        if created is not None:
+            self.created = created
         if deleted is not None:
             self.deleted = deleted
-        self.database_internal_name = database_internal_name
-        if database_publication_year is not None:
-            self.database_publication_year = database_publication_year
-        if database_publication_month is not None:
-            self.database_publication_month = database_publication_month
-        if database_publication_day is not None:
-            self.database_publication_day = database_publication_day
-        if database_public is not None:
-            self.database_public = database_public
+        self.internal_name = internal_name
+        if publication_year is not None:
+            self.publication_year = publication_year
+        if publication_month is not None:
+            self.publication_month = publication_month
+        if publication_day is not None:
+            self.publication_day = publication_day
+        if is_public is not None:
+            self.is_public = is_public
 
     @property
-    def database_id(self):
-        """Gets the database_id of this DatabaseDto.  # noqa: E501
+    def id(self):
+        """Gets the id of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_id of this DatabaseDto.  # noqa: E501
+        :return: The id of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_id
+        return self._id
 
-    @database_id.setter
-    def database_id(self, database_id):
-        """Sets the database_id of this DatabaseDto.
+    @id.setter
+    def id(self, id):
+        """Sets the id of this DatabaseDto.
 
 
-        :param database_id: The database_id of this DatabaseDto.  # noqa: E501
+        :param id: The id of this DatabaseDto.  # noqa: E501
         :type: int
         """
-        if database_id is None:
-            raise ValueError("Invalid value for `database_id`, must not be `None`")  # noqa: E501
+        if id is None:
+            raise ValueError("Invalid value for `id`, must not be `None`")  # noqa: E501
 
-        self._database_id = database_id
+        self._id = id
 
     @property
-    def database_name(self):
-        """Gets the database_name of this DatabaseDto.  # noqa: E501
+    def name(self):
+        """Gets the name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_name of this DatabaseDto.  # noqa: E501
+        :return: The name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_name
+        return self._name
 
-    @database_name.setter
-    def database_name(self, database_name):
-        """Sets the database_name of this DatabaseDto.
+    @name.setter
+    def name(self, name):
+        """Sets the name of this DatabaseDto.
 
 
-        :param database_name: The database_name of this DatabaseDto.  # noqa: E501
+        :param name: The name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_name is None:
-            raise ValueError("Invalid value for `database_name`, must not be `None`")  # noqa: E501
+        if name is None:
+            raise ValueError("Invalid value for `name`, must not be `None`")  # noqa: E501
 
-        self._database_name = database_name
+        self._name = name
 
     @property
-    def database_exchange(self):
-        """Gets the database_exchange of this DatabaseDto.  # noqa: E501
+    def exchange(self):
+        """Gets the exchange of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_exchange of this DatabaseDto.  # noqa: E501
+        :return: The exchange of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_exchange
+        return self._exchange
 
-    @database_exchange.setter
-    def database_exchange(self, database_exchange):
-        """Sets the database_exchange of this DatabaseDto.
+    @exchange.setter
+    def exchange(self, exchange):
+        """Sets the exchange of this DatabaseDto.
 
 
-        :param database_exchange: The database_exchange of this DatabaseDto.  # noqa: E501
+        :param exchange: The exchange of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_exchange is None:
-            raise ValueError("Invalid value for `database_exchange`, must not be `None`")  # noqa: E501
+        if exchange is None:
+            raise ValueError("Invalid value for `exchange`, must not be `None`")  # noqa: E501
 
-        self._database_exchange = database_exchange
+        self._exchange = exchange
 
     @property
-    def database_creator(self):
-        """Gets the database_creator of this DatabaseDto.  # noqa: E501
+    def creator(self):
+        """Gets the creator of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creator of this DatabaseDto.  # noqa: E501
+        :return: The creator of this DatabaseDto.  # noqa: E501
         :rtype: UserBriefDto
         """
-        return self._database_creator
+        return self._creator
 
-    @database_creator.setter
-    def database_creator(self, database_creator):
-        """Sets the database_creator of this DatabaseDto.
+    @creator.setter
+    def creator(self, creator):
+        """Sets the creator of this DatabaseDto.
 
 
-        :param database_creator: The database_creator of this DatabaseDto.  # noqa: E501
+        :param creator: The creator of this DatabaseDto.  # noqa: E501
         :type: UserBriefDto
         """
-        if database_creator is None:
-            raise ValueError("Invalid value for `database_creator`, must not be `None`")  # noqa: E501
+        if creator is None:
+            raise ValueError("Invalid value for `creator`, must not be `None`")  # noqa: E501
 
-        self._database_creator = database_creator
+        self._creator = creator
 
     @property
-    def database_subjects(self):
-        """Gets the database_subjects of this DatabaseDto.  # noqa: E501
+    def subjects(self):
+        """Gets the subjects of this DatabaseDto.  # noqa: E501
 
+        database subjects  # noqa: E501
 
-        :return: The database_subjects of this DatabaseDto.  # noqa: E501
+        :return: The subjects of this DatabaseDto.  # noqa: E501
         :rtype: list[str]
         """
-        return self._database_subjects
+        return self._subjects
 
-    @database_subjects.setter
-    def database_subjects(self, database_subjects):
-        """Sets the database_subjects of this DatabaseDto.
+    @subjects.setter
+    def subjects(self, subjects):
+        """Sets the subjects of this DatabaseDto.
 
+        database subjects  # noqa: E501
 
-        :param database_subjects: The database_subjects of this DatabaseDto.  # noqa: E501
+        :param subjects: The subjects of this DatabaseDto.  # noqa: E501
         :type: list[str]
         """
 
-        self._database_subjects = database_subjects
+        self._subjects = subjects
 
     @property
-    def database_language(self):
-        """Gets the database_language of this DatabaseDto.  # noqa: E501
+    def language(self):
+        """Gets the language of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_language of this DatabaseDto.  # noqa: E501
+        :return: The language of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_language
+        return self._language
 
-    @database_language.setter
-    def database_language(self, database_language):
-        """Sets the database_language of this DatabaseDto.
+    @language.setter
+    def language(self, language):
+        """Sets the language of this DatabaseDto.
 
 
-        :param database_language: The database_language of this DatabaseDto.  # noqa: E501
+        :param language: The language of this DatabaseDto.  # noqa: E501
         :type: str
         """
         allowed_values = ["ab", "aa", "af", "ak", "sq", "am", "ar", "an", "hy", "as", "av", "ae", "ay", "az", "bm", "ba", "eu", "be", "bn", "bh", "bi", "bs", "br", "bg", "my", "ca", "km", "ch", "ce", "ny", "zh", "cu", "cv", "kw", "co", "cr", "hr", "cs", "da", "dv", "nl", "dz", "en", "eo", "et", "ee", "fo", "fj", "fi", "fr", "ff", "gd", "gl", "lg", "ka", "de", "ki", "el", "kl", "gn", "gu", "ht", "ha", "he", "hz", "hi", "ho", "hu", "is", "io", "ig", "id", "ia", "ie", "iu", "ik", "ga", "it", "ja", "jv", "kn", "kr", "ks", "kk", "rw", "kv", "kg", "ko", "kj", "ku", "ky", "lo", "la", "lv", "lb", "li", "ln", "lt", "lu", "mk", "mg", "ms", "ml", "mt", "gv", "mi", "mr", "mh", "ro", "mn", "na", "nv", "nd", "ng", "ne", "se", "no", "nb", "nn", "ii", "oc", "oj", "or", "om", "os", "pi", "pa", "ps", "fa", "pl", "pt", "qu", "rm", "rn", "ru", "sm", "sg", "sa", "sc", "sr", "sn", "sd", "si", "sk", "sl", "so", "st", "nr", "es", "su", "sw", "ss", "sv", "tl", "ty", "tg", "ta", "tt", "te", "th", "bo", "ti", "to", "ts", "tn", "tr", "tk", "tw", "ug", "uk", "ur", "uz", "ve", "vi", "vo", "wa", "cy", "fy", "wo", "xh", "yi", "yo", "za", "zu"]  # noqa: E501
-        if database_language not in allowed_values:
+        if language not in allowed_values:
             raise ValueError(
-                "Invalid value for `database_language` ({0}), must be one of {1}"  # noqa: E501
-                .format(database_language, allowed_values)
+                "Invalid value for `language` ({0}), must be one of {1}"  # noqa: E501
+                .format(language, allowed_values)
             )
 
-        self._database_language = database_language
+        self._language = language
 
     @property
-    def database_license(self):
-        """Gets the database_license of this DatabaseDto.  # noqa: E501
+    def license(self):
+        """Gets the license of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_license of this DatabaseDto.  # noqa: E501
+        :return: The license of this DatabaseDto.  # noqa: E501
         :rtype: LicenseDto
         """
-        return self._database_license
+        return self._license
 
-    @database_license.setter
-    def database_license(self, database_license):
-        """Sets the database_license of this DatabaseDto.
+    @license.setter
+    def license(self, license):
+        """Sets the license of this DatabaseDto.
 
 
-        :param database_license: The database_license of this DatabaseDto.  # noqa: E501
+        :param license: The license of this DatabaseDto.  # noqa: E501
         :type: LicenseDto
         """
 
-        self._database_license = database_license
+        self._license = license
 
     @property
-    def database_description(self):
-        """Gets the database_description of this DatabaseDto.  # noqa: E501
+    def description(self):
+        """Gets the description of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_description of this DatabaseDto.  # noqa: E501
+        :return: The description of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_description
+        return self._description
 
-    @database_description.setter
-    def database_description(self, database_description):
-        """Sets the database_description of this DatabaseDto.
+    @description.setter
+    def description(self, description):
+        """Sets the description of this DatabaseDto.
 
 
-        :param database_description: The database_description of this DatabaseDto.  # noqa: E501
+        :param description: The description of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_description is None:
-            raise ValueError("Invalid value for `database_description`, must not be `None`")  # noqa: E501
 
-        self._database_description = database_description
+        self._description = description
 
     @property
-    def database_publisher(self):
-        """Gets the database_publisher of this DatabaseDto.  # noqa: E501
+    def publisher(self):
+        """Gets the publisher of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_publisher of this DatabaseDto.  # noqa: E501
+        :return: The publisher of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_publisher
+        return self._publisher
 
-    @database_publisher.setter
-    def database_publisher(self, database_publisher):
-        """Sets the database_publisher of this DatabaseDto.
+    @publisher.setter
+    def publisher(self, publisher):
+        """Sets the publisher of this DatabaseDto.
 
 
-        :param database_publisher: The database_publisher of this DatabaseDto.  # noqa: E501
+        :param publisher: The publisher of this DatabaseDto.  # noqa: E501
         :type: str
         """
 
-        self._database_publisher = database_publisher
+        self._publisher = publisher
 
     @property
-    def database_contact_person(self):
-        """Gets the database_contact_person of this DatabaseDto.  # noqa: E501
+    def contact(self):
+        """Gets the contact of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :return: The contact of this DatabaseDto.  # noqa: E501
         :rtype: UserDto
         """
-        return self._database_contact_person
+        return self._contact
 
-    @database_contact_person.setter
-    def database_contact_person(self, database_contact_person):
-        """Sets the database_contact_person of this DatabaseDto.
+    @contact.setter
+    def contact(self, contact):
+        """Sets the contact of this DatabaseDto.
 
 
-        :param database_contact_person: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :param contact: The contact of this DatabaseDto.  # noqa: E501
         :type: UserDto
         """
 
-        self._database_contact_person = database_contact_person
+        self._contact = contact
 
     @property
     def tables(self):
@@ -379,25 +380,25 @@ class DatabaseDto(object):
         self._tables = tables
 
     @property
-    def database_container_image(self):
-        """Gets the database_container_image of this DatabaseDto.  # noqa: E501
+    def image(self):
+        """Gets the image of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_container_image of this DatabaseDto.  # noqa: E501
+        :return: The image of this DatabaseDto.  # noqa: E501
         :rtype: ImageDto
         """
-        return self._database_container_image
+        return self._image
 
-    @database_container_image.setter
-    def database_container_image(self, database_container_image):
-        """Sets the database_container_image of this DatabaseDto.
+    @image.setter
+    def image(self, image):
+        """Sets the image of this DatabaseDto.
 
 
-        :param database_container_image: The database_container_image of this DatabaseDto.  # noqa: E501
+        :param image: The image of this DatabaseDto.  # noqa: E501
         :type: ImageDto
         """
 
-        self._database_container_image = database_container_image
+        self._image = image
 
     @property
     def container(self):
@@ -421,25 +422,25 @@ class DatabaseDto(object):
         self._container = container
 
     @property
-    def database_creation_time(self):
-        """Gets the database_creation_time of this DatabaseDto.  # noqa: E501
+    def created(self):
+        """Gets the created of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :return: The created of this DatabaseDto.  # noqa: E501
         :rtype: datetime
         """
-        return self._database_creation_time
+        return self._created
 
-    @database_creation_time.setter
-    def database_creation_time(self, database_creation_time):
-        """Sets the database_creation_time of this DatabaseDto.
+    @created.setter
+    def created(self, created):
+        """Sets the created of this DatabaseDto.
 
 
-        :param database_creation_time: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :param created: The created of this DatabaseDto.  # noqa: E501
         :type: datetime
         """
 
-        self._database_creation_time = database_creation_time
+        self._created = created
 
     @property
     def deleted(self):
@@ -463,111 +464,119 @@ class DatabaseDto(object):
         self._deleted = deleted
 
     @property
-    def database_internal_name(self):
-        """Gets the database_internal_name of this DatabaseDto.  # noqa: E501
+    def internal_name(self):
+        """Gets the internal_name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :return: The internal_name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_internal_name
+        return self._internal_name
 
-    @database_internal_name.setter
-    def database_internal_name(self, database_internal_name):
-        """Sets the database_internal_name of this DatabaseDto.
+    @internal_name.setter
+    def internal_name(self, internal_name):
+        """Sets the internal_name of this DatabaseDto.
 
 
-        :param database_internal_name: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :param internal_name: The internal_name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_internal_name is None:
-            raise ValueError("Invalid value for `database_internal_name`, must not be `None`")  # noqa: E501
+        if internal_name is None:
+            raise ValueError("Invalid value for `internal_name`, must not be `None`")  # noqa: E501
 
-        self._database_internal_name = database_internal_name
+        self._internal_name = internal_name
 
     @property
-    def database_publication_year(self):
-        """Gets the database_publication_year of this DatabaseDto.  # noqa: E501
+    def publication_year(self):
+        """Gets the publication_year of this DatabaseDto.  # noqa: E501
 
+        database publication year  # noqa: E501
 
-        :return: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :return: The publication_year of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_year
+        return self._publication_year
 
-    @database_publication_year.setter
-    def database_publication_year(self, database_publication_year):
-        """Sets the database_publication_year of this DatabaseDto.
+    @publication_year.setter
+    def publication_year(self, publication_year):
+        """Sets the publication_year of this DatabaseDto.
 
+        database publication year  # noqa: E501
 
-        :param database_publication_year: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :param publication_year: The publication_year of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_year = database_publication_year
+        self._publication_year = publication_year
 
     @property
-    def database_publication_month(self):
-        """Gets the database_publication_month of this DatabaseDto.  # noqa: E501
+    def publication_month(self):
+        """Gets the publication_month of this DatabaseDto.  # noqa: E501
 
+        database publication month  # noqa: E501
 
-        :return: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :return: The publication_month of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_month
+        return self._publication_month
 
-    @database_publication_month.setter
-    def database_publication_month(self, database_publication_month):
-        """Sets the database_publication_month of this DatabaseDto.
+    @publication_month.setter
+    def publication_month(self, publication_month):
+        """Sets the publication_month of this DatabaseDto.
 
+        database publication month  # noqa: E501
 
-        :param database_publication_month: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :param publication_month: The publication_month of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_month = database_publication_month
+        self._publication_month = publication_month
 
     @property
-    def database_publication_day(self):
-        """Gets the database_publication_day of this DatabaseDto.  # noqa: E501
+    def publication_day(self):
+        """Gets the publication_day of this DatabaseDto.  # noqa: E501
 
+        database publication day  # noqa: E501
 
-        :return: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :return: The publication_day of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_day
+        return self._publication_day
 
-    @database_publication_day.setter
-    def database_publication_day(self, database_publication_day):
-        """Sets the database_publication_day of this DatabaseDto.
+    @publication_day.setter
+    def publication_day(self, publication_day):
+        """Sets the publication_day of this DatabaseDto.
 
+        database publication day  # noqa: E501
 
-        :param database_publication_day: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :param publication_day: The publication_day of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_day = database_publication_day
+        self._publication_day = publication_day
 
     @property
-    def database_public(self):
-        """Gets the database_public of this DatabaseDto.  # noqa: E501
+    def is_public(self):
+        """Gets the is_public of this DatabaseDto.  # noqa: E501
 
+        database publicity  # noqa: E501
 
-        :return: The database_public of this DatabaseDto.  # noqa: E501
+        :return: The is_public of this DatabaseDto.  # noqa: E501
         :rtype: bool
         """
-        return self._database_public
+        return self._is_public
 
-    @database_public.setter
-    def database_public(self, database_public):
-        """Sets the database_public of this DatabaseDto.
+    @is_public.setter
+    def is_public(self, is_public):
+        """Sets the is_public of this DatabaseDto.
 
+        database publicity  # noqa: E501
 
-        :param database_public: The database_public of this DatabaseDto.  # noqa: E501
+        :param is_public: The is_public of this DatabaseDto.  # noqa: E501
         :type: bool
         """
 
-        self._database_public = database_public
+        self._is_public = is_public
 
     def to_dict(self):
         """Returns the model properties as a dict"""
diff --git a/.jupyter/api_database/models/database_modify_dto.py b/.jupyter/api_database/models/database_modify_dto.py
index 1e74ccca7b8e024459bd90b76f71f87724fc23c4..b860ef440549e8c66f0ff47985d3ab6a978d9f40 100644
--- a/.jupyter/api_database/models/database_modify_dto.py
+++ b/.jupyter/api_database/models/database_modify_dto.py
@@ -33,7 +33,7 @@ class DatabaseModifyDto(object):
         'publisher': 'str',
         'license': 'LicenseDto',
         'language': 'str',
-        'database_publication_year': 'int',
+        'publication_year': 'int',
         'publication_month': 'int',
         'publication_day': 'int',
         'contact_person': 'str'
@@ -45,20 +45,20 @@ class DatabaseModifyDto(object):
         'publisher': 'publisher',
         'license': 'license',
         'language': 'language',
-        'database_publication_year': 'database publication year',
+        'publication_year': 'publication_year',
         'publication_month': 'publication_month',
         'publication_day': 'publication_day',
         'contact_person': 'contact_person'
     }
 
-    def __init__(self, subjects=None, description=None, publisher=None, license=None, language=None, database_publication_year=None, publication_month=None, publication_day=None, contact_person=None):  # noqa: E501
+    def __init__(self, subjects=None, description=None, publisher=None, license=None, language=None, publication_year=None, publication_month=None, publication_day=None, contact_person=None):  # noqa: E501
         """DatabaseModifyDto - a model defined in Swagger"""  # noqa: E501
         self._subjects = None
         self._description = None
         self._publisher = None
         self._license = None
         self._language = None
-        self._database_publication_year = None
+        self._publication_year = None
         self._publication_month = None
         self._publication_day = None
         self._contact_person = None
@@ -72,7 +72,7 @@ class DatabaseModifyDto(object):
             self.license = license
         if language is not None:
             self.language = language
-        self.database_publication_year = database_publication_year
+        self.publication_year = publication_year
         if publication_month is not None:
             self.publication_month = publication_month
         if publication_day is not None:
@@ -194,32 +194,35 @@ class DatabaseModifyDto(object):
         self._language = language
 
     @property
-    def database_publication_year(self):
-        """Gets the database_publication_year of this DatabaseModifyDto.  # noqa: E501
+    def publication_year(self):
+        """Gets the publication_year of this DatabaseModifyDto.  # noqa: E501
 
+        database publication year  # noqa: E501
 
-        :return: The database_publication_year of this DatabaseModifyDto.  # noqa: E501
+        :return: The publication_year of this DatabaseModifyDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_year
+        return self._publication_year
 
-    @database_publication_year.setter
-    def database_publication_year(self, database_publication_year):
-        """Sets the database_publication_year of this DatabaseModifyDto.
+    @publication_year.setter
+    def publication_year(self, publication_year):
+        """Sets the publication_year of this DatabaseModifyDto.
 
+        database publication year  # noqa: E501
 
-        :param database_publication_year: The database_publication_year of this DatabaseModifyDto.  # noqa: E501
+        :param publication_year: The publication_year of this DatabaseModifyDto.  # noqa: E501
         :type: int
         """
-        if database_publication_year is None:
-            raise ValueError("Invalid value for `database_publication_year`, must not be `None`")  # noqa: E501
+        if publication_year is None:
+            raise ValueError("Invalid value for `publication_year`, must not be `None`")  # noqa: E501
 
-        self._database_publication_year = database_publication_year
+        self._publication_year = publication_year
 
     @property
     def publication_month(self):
         """Gets the publication_month of this DatabaseModifyDto.  # noqa: E501
 
+        database publication month  # noqa: E501
 
         :return: The publication_month of this DatabaseModifyDto.  # noqa: E501
         :rtype: int
@@ -230,6 +233,7 @@ class DatabaseModifyDto(object):
     def publication_month(self, publication_month):
         """Sets the publication_month of this DatabaseModifyDto.
 
+        database publication month  # noqa: E501
 
         :param publication_month: The publication_month of this DatabaseModifyDto.  # noqa: E501
         :type: int
@@ -241,6 +245,7 @@ class DatabaseModifyDto(object):
     def publication_day(self):
         """Gets the publication_day of this DatabaseModifyDto.  # noqa: E501
 
+        database publication day  # noqa: E501
 
         :return: The publication_day of this DatabaseModifyDto.  # noqa: E501
         :rtype: int
@@ -251,6 +256,7 @@ class DatabaseModifyDto(object):
     def publication_day(self, publication_day):
         """Sets the publication_day of this DatabaseModifyDto.
 
+        database publication day  # noqa: E501
 
         :param publication_day: The publication_day of this DatabaseModifyDto.  # noqa: E501
         :type: int
diff --git a/.jupyter/api_database/models/image_env_item_dto.py b/.jupyter/api_database/models/image_env_item_dto.py
index 21f24fc6b259b257ab6963b6b24b3c686cefccef..731f28ed827093c1414b766d4d07007f05ea67da 100644
--- a/.jupyter/api_database/models/image_env_item_dto.py
+++ b/.jupyter/api_database/models/image_env_item_dto.py
@@ -51,8 +51,7 @@ class ImageEnvItemDto(object):
         self.iid = iid
         self.key = key
         self.value = value
-        if type is not None:
-            self.type = type
+        self.type = type
 
     @property
     def iid(self):
@@ -141,7 +140,9 @@ class ImageEnvItemDto(object):
         :param type: The type of this ImageEnvItemDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["USERNAME", "PASSWORD", "PRIVILEGED_USERNAME", "PRIVILEGED_PASSWORD"]  # noqa: E501
+        if type is None:
+            raise ValueError("Invalid value for `type`, must not be `None`")  # noqa: E501
+        allowed_values = ["username", "password", "privileged_username", "privileged_password"]  # noqa: E501
         if type not in allowed_values:
             raise ValueError(
                 "Invalid value for `type` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_database/models/user_brief_dto.py b/.jupyter/api_database/models/user_brief_dto.py
index 3987d84a78d9fe15760e4e59a7bade18f8b210dc..8803ecc7bd620090e37f9ede772206c9e2d9b35c 100644
--- a/.jupyter/api_database/models/user_brief_dto.py
+++ b/.jupyter/api_database/models/user_brief_dto.py
@@ -110,6 +110,7 @@ class UserBriefDto(object):
     def username(self):
         """Gets the username of this UserBriefDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserBriefDto.  # noqa: E501
         :rtype: str
@@ -120,6 +121,7 @@ class UserBriefDto(object):
     def username(self, username):
         """Sets the username of this UserBriefDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserBriefDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_database/models/user_dto.py b/.jupyter/api_database/models/user_dto.py
index fef246bbae7e509d86e14142176a3fb235fa5d89..46206a4a60b0d254b5f407d9a758a1ca87199bb0 100644
--- a/.jupyter/api_database/models/user_dto.py
+++ b/.jupyter/api_database/models/user_dto.py
@@ -155,6 +155,7 @@ class UserDto(object):
     def username(self):
         """Gets the username of this UserDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserDto.  # noqa: E501
         :rtype: str
@@ -165,6 +166,7 @@ class UserDto(object):
     def username(self, username):
         """Sets the username of this UserDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_identifier/models/container_dto.py b/.jupyter/api_identifier/models/container_dto.py
index 85170cb23b4595f14479e05b7583587594712e6d..693e708bb79270f8205e19a3d28bdff9960c24eb 100644
--- a/.jupyter/api_identifier/models/container_dto.py
+++ b/.jupyter/api_identifier/models/container_dto.py
@@ -169,7 +169,7 @@ class ContainerDto(object):
         :param state: The state of this ContainerDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["ContainerStateDto.CREATED", "ContainerStateDto.RESTARTING", "ContainerStateDto.RUNNING", "ContainerStateDto.PAUSED", "ContainerStateDto.EXITED", "ContainerStateDto.DEAD"]  # noqa: E501
+        allowed_values = ["created", "restarting", "running", "paused", "exited", "dead"]  # noqa: E501
         if state not in allowed_values:
             raise ValueError(
                 "Invalid value for `state` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_identifier/models/database_dto.py b/.jupyter/api_identifier/models/database_dto.py
index 871e9b409172c3bef32a4a93367d0df5579f3fed..ec76a65948ec69e74be06f0f8461d18b699eeb0c 100644
--- a/.jupyter/api_identifier/models/database_dto.py
+++ b/.jupyter/api_identifier/models/database_dto.py
@@ -28,334 +28,335 @@ class DatabaseDto(object):
                             and the value is json key in definition.
     """
     swagger_types = {
-        'database_id': 'int',
-        'database_name': 'str',
-        'database_exchange': 'str',
-        'database_creator': 'UserBriefDto',
-        'database_subjects': 'list[str]',
-        'database_language': 'str',
-        'database_license': 'LicenseDto',
-        'database_description': 'str',
-        'database_publisher': 'str',
-        'database_contact_person': 'UserDto',
+        'id': 'int',
+        'name': 'str',
+        'exchange': 'str',
+        'creator': 'UserBriefDto',
+        'subjects': 'list[str]',
+        'language': 'str',
+        'license': 'LicenseDto',
+        'description': 'str',
+        'publisher': 'str',
+        'contact': 'UserDto',
         'tables': 'list[TableBriefDto]',
-        'database_container_image': 'ImageDto',
+        'image': 'ImageDto',
         'container': 'ContainerDto',
-        'database_creation_time': 'datetime',
+        'created': 'datetime',
         'deleted': 'datetime',
-        'database_internal_name': 'str',
-        'database_publication_year': 'int',
-        'database_publication_month': 'int',
-        'database_publication_day': 'int',
-        'database_public': 'bool'
+        'internal_name': 'str',
+        'publication_year': 'int',
+        'publication_month': 'int',
+        'publication_day': 'int',
+        'is_public': 'bool'
     }
 
     attribute_map = {
-        'database_id': 'database id',
-        'database_name': 'database name',
-        'database_exchange': 'database exchange',
-        'database_creator': 'database creator',
-        'database_subjects': 'database subjects',
-        'database_language': 'database language',
-        'database_license': 'database license',
-        'database_description': 'database description',
-        'database_publisher': 'database publisher',
-        'database_contact_person': 'database contact person',
+        'id': 'id',
+        'name': 'name',
+        'exchange': 'exchange',
+        'creator': 'creator',
+        'subjects': 'subjects',
+        'language': 'language',
+        'license': 'license',
+        'description': 'description',
+        'publisher': 'publisher',
+        'contact': 'contact',
         'tables': 'tables',
-        'database_container_image': 'database container image',
+        'image': 'image',
         'container': 'container',
-        'database_creation_time': 'database creation time',
+        'created': 'created',
         'deleted': 'deleted',
-        'database_internal_name': 'database internal name',
-        'database_publication_year': 'database publication year',
-        'database_publication_month': 'database publication month',
-        'database_publication_day': 'database publication day',
-        'database_public': 'database public'
+        'internal_name': 'internal_name',
+        'publication_year': 'publication_year',
+        'publication_month': 'publication_month',
+        'publication_day': 'publication_day',
+        'is_public': 'is_public'
     }
 
-    def __init__(self, database_id=None, database_name=None, database_exchange=None, database_creator=None, database_subjects=None, database_language=None, database_license=None, database_description=None, database_publisher=None, database_contact_person=None, tables=None, database_container_image=None, container=None, database_creation_time=None, deleted=None, database_internal_name=None, database_publication_year=None, database_publication_month=None, database_publication_day=None, database_public=None):  # noqa: E501
+    def __init__(self, id=None, name=None, exchange=None, creator=None, subjects=None, language=None, license=None, description=None, publisher=None, contact=None, tables=None, image=None, container=None, created=None, deleted=None, internal_name=None, publication_year=None, publication_month=None, publication_day=None, is_public=None):  # noqa: E501
         """DatabaseDto - a model defined in Swagger"""  # noqa: E501
-        self._database_id = None
-        self._database_name = None
-        self._database_exchange = None
-        self._database_creator = None
-        self._database_subjects = None
-        self._database_language = None
-        self._database_license = None
-        self._database_description = None
-        self._database_publisher = None
-        self._database_contact_person = None
+        self._id = None
+        self._name = None
+        self._exchange = None
+        self._creator = None
+        self._subjects = None
+        self._language = None
+        self._license = None
+        self._description = None
+        self._publisher = None
+        self._contact = None
         self._tables = None
-        self._database_container_image = None
+        self._image = None
         self._container = None
-        self._database_creation_time = None
+        self._created = None
         self._deleted = None
-        self._database_internal_name = None
-        self._database_publication_year = None
-        self._database_publication_month = None
-        self._database_publication_day = None
-        self._database_public = None
+        self._internal_name = None
+        self._publication_year = None
+        self._publication_month = None
+        self._publication_day = None
+        self._is_public = None
         self.discriminator = None
-        self.database_id = database_id
-        self.database_name = database_name
-        self.database_exchange = database_exchange
-        self.database_creator = database_creator
-        if database_subjects is not None:
-            self.database_subjects = database_subjects
-        if database_language is not None:
-            self.database_language = database_language
-        if database_license is not None:
-            self.database_license = database_license
-        self.database_description = database_description
-        if database_publisher is not None:
-            self.database_publisher = database_publisher
-        if database_contact_person is not None:
-            self.database_contact_person = database_contact_person
+        self.id = id
+        self.name = name
+        self.exchange = exchange
+        self.creator = creator
+        if subjects is not None:
+            self.subjects = subjects
+        if language is not None:
+            self.language = language
+        if license is not None:
+            self.license = license
+        if description is not None:
+            self.description = description
+        if publisher is not None:
+            self.publisher = publisher
+        if contact is not None:
+            self.contact = contact
         if tables is not None:
             self.tables = tables
-        if database_container_image is not None:
-            self.database_container_image = database_container_image
+        if image is not None:
+            self.image = image
         if container is not None:
             self.container = container
-        if database_creation_time is not None:
-            self.database_creation_time = database_creation_time
+        if created is not None:
+            self.created = created
         if deleted is not None:
             self.deleted = deleted
-        self.database_internal_name = database_internal_name
-        if database_publication_year is not None:
-            self.database_publication_year = database_publication_year
-        if database_publication_month is not None:
-            self.database_publication_month = database_publication_month
-        if database_publication_day is not None:
-            self.database_publication_day = database_publication_day
-        if database_public is not None:
-            self.database_public = database_public
+        self.internal_name = internal_name
+        if publication_year is not None:
+            self.publication_year = publication_year
+        if publication_month is not None:
+            self.publication_month = publication_month
+        if publication_day is not None:
+            self.publication_day = publication_day
+        if is_public is not None:
+            self.is_public = is_public
 
     @property
-    def database_id(self):
-        """Gets the database_id of this DatabaseDto.  # noqa: E501
+    def id(self):
+        """Gets the id of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_id of this DatabaseDto.  # noqa: E501
+        :return: The id of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_id
+        return self._id
 
-    @database_id.setter
-    def database_id(self, database_id):
-        """Sets the database_id of this DatabaseDto.
+    @id.setter
+    def id(self, id):
+        """Sets the id of this DatabaseDto.
 
 
-        :param database_id: The database_id of this DatabaseDto.  # noqa: E501
+        :param id: The id of this DatabaseDto.  # noqa: E501
         :type: int
         """
-        if database_id is None:
-            raise ValueError("Invalid value for `database_id`, must not be `None`")  # noqa: E501
+        if id is None:
+            raise ValueError("Invalid value for `id`, must not be `None`")  # noqa: E501
 
-        self._database_id = database_id
+        self._id = id
 
     @property
-    def database_name(self):
-        """Gets the database_name of this DatabaseDto.  # noqa: E501
+    def name(self):
+        """Gets the name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_name of this DatabaseDto.  # noqa: E501
+        :return: The name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_name
+        return self._name
 
-    @database_name.setter
-    def database_name(self, database_name):
-        """Sets the database_name of this DatabaseDto.
+    @name.setter
+    def name(self, name):
+        """Sets the name of this DatabaseDto.
 
 
-        :param database_name: The database_name of this DatabaseDto.  # noqa: E501
+        :param name: The name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_name is None:
-            raise ValueError("Invalid value for `database_name`, must not be `None`")  # noqa: E501
+        if name is None:
+            raise ValueError("Invalid value for `name`, must not be `None`")  # noqa: E501
 
-        self._database_name = database_name
+        self._name = name
 
     @property
-    def database_exchange(self):
-        """Gets the database_exchange of this DatabaseDto.  # noqa: E501
+    def exchange(self):
+        """Gets the exchange of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_exchange of this DatabaseDto.  # noqa: E501
+        :return: The exchange of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_exchange
+        return self._exchange
 
-    @database_exchange.setter
-    def database_exchange(self, database_exchange):
-        """Sets the database_exchange of this DatabaseDto.
+    @exchange.setter
+    def exchange(self, exchange):
+        """Sets the exchange of this DatabaseDto.
 
 
-        :param database_exchange: The database_exchange of this DatabaseDto.  # noqa: E501
+        :param exchange: The exchange of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_exchange is None:
-            raise ValueError("Invalid value for `database_exchange`, must not be `None`")  # noqa: E501
+        if exchange is None:
+            raise ValueError("Invalid value for `exchange`, must not be `None`")  # noqa: E501
 
-        self._database_exchange = database_exchange
+        self._exchange = exchange
 
     @property
-    def database_creator(self):
-        """Gets the database_creator of this DatabaseDto.  # noqa: E501
+    def creator(self):
+        """Gets the creator of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creator of this DatabaseDto.  # noqa: E501
+        :return: The creator of this DatabaseDto.  # noqa: E501
         :rtype: UserBriefDto
         """
-        return self._database_creator
+        return self._creator
 
-    @database_creator.setter
-    def database_creator(self, database_creator):
-        """Sets the database_creator of this DatabaseDto.
+    @creator.setter
+    def creator(self, creator):
+        """Sets the creator of this DatabaseDto.
 
 
-        :param database_creator: The database_creator of this DatabaseDto.  # noqa: E501
+        :param creator: The creator of this DatabaseDto.  # noqa: E501
         :type: UserBriefDto
         """
-        if database_creator is None:
-            raise ValueError("Invalid value for `database_creator`, must not be `None`")  # noqa: E501
+        if creator is None:
+            raise ValueError("Invalid value for `creator`, must not be `None`")  # noqa: E501
 
-        self._database_creator = database_creator
+        self._creator = creator
 
     @property
-    def database_subjects(self):
-        """Gets the database_subjects of this DatabaseDto.  # noqa: E501
+    def subjects(self):
+        """Gets the subjects of this DatabaseDto.  # noqa: E501
 
+        database subjects  # noqa: E501
 
-        :return: The database_subjects of this DatabaseDto.  # noqa: E501
+        :return: The subjects of this DatabaseDto.  # noqa: E501
         :rtype: list[str]
         """
-        return self._database_subjects
+        return self._subjects
 
-    @database_subjects.setter
-    def database_subjects(self, database_subjects):
-        """Sets the database_subjects of this DatabaseDto.
+    @subjects.setter
+    def subjects(self, subjects):
+        """Sets the subjects of this DatabaseDto.
 
+        database subjects  # noqa: E501
 
-        :param database_subjects: The database_subjects of this DatabaseDto.  # noqa: E501
+        :param subjects: The subjects of this DatabaseDto.  # noqa: E501
         :type: list[str]
         """
 
-        self._database_subjects = database_subjects
+        self._subjects = subjects
 
     @property
-    def database_language(self):
-        """Gets the database_language of this DatabaseDto.  # noqa: E501
+    def language(self):
+        """Gets the language of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_language of this DatabaseDto.  # noqa: E501
+        :return: The language of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_language
+        return self._language
 
-    @database_language.setter
-    def database_language(self, database_language):
-        """Sets the database_language of this DatabaseDto.
+    @language.setter
+    def language(self, language):
+        """Sets the language of this DatabaseDto.
 
 
-        :param database_language: The database_language of this DatabaseDto.  # noqa: E501
+        :param language: The language of this DatabaseDto.  # noqa: E501
         :type: str
         """
         allowed_values = ["ab", "aa", "af", "ak", "sq", "am", "ar", "an", "hy", "as", "av", "ae", "ay", "az", "bm", "ba", "eu", "be", "bn", "bh", "bi", "bs", "br", "bg", "my", "ca", "km", "ch", "ce", "ny", "zh", "cu", "cv", "kw", "co", "cr", "hr", "cs", "da", "dv", "nl", "dz", "en", "eo", "et", "ee", "fo", "fj", "fi", "fr", "ff", "gd", "gl", "lg", "ka", "de", "ki", "el", "kl", "gn", "gu", "ht", "ha", "he", "hz", "hi", "ho", "hu", "is", "io", "ig", "id", "ia", "ie", "iu", "ik", "ga", "it", "ja", "jv", "kn", "kr", "ks", "kk", "rw", "kv", "kg", "ko", "kj", "ku", "ky", "lo", "la", "lv", "lb", "li", "ln", "lt", "lu", "mk", "mg", "ms", "ml", "mt", "gv", "mi", "mr", "mh", "ro", "mn", "na", "nv", "nd", "ng", "ne", "se", "no", "nb", "nn", "ii", "oc", "oj", "or", "om", "os", "pi", "pa", "ps", "fa", "pl", "pt", "qu", "rm", "rn", "ru", "sm", "sg", "sa", "sc", "sr", "sn", "sd", "si", "sk", "sl", "so", "st", "nr", "es", "su", "sw", "ss", "sv", "tl", "ty", "tg", "ta", "tt", "te", "th", "bo", "ti", "to", "ts", "tn", "tr", "tk", "tw", "ug", "uk", "ur", "uz", "ve", "vi", "vo", "wa", "cy", "fy", "wo", "xh", "yi", "yo", "za", "zu"]  # noqa: E501
-        if database_language not in allowed_values:
+        if language not in allowed_values:
             raise ValueError(
-                "Invalid value for `database_language` ({0}), must be one of {1}"  # noqa: E501
-                .format(database_language, allowed_values)
+                "Invalid value for `language` ({0}), must be one of {1}"  # noqa: E501
+                .format(language, allowed_values)
             )
 
-        self._database_language = database_language
+        self._language = language
 
     @property
-    def database_license(self):
-        """Gets the database_license of this DatabaseDto.  # noqa: E501
+    def license(self):
+        """Gets the license of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_license of this DatabaseDto.  # noqa: E501
+        :return: The license of this DatabaseDto.  # noqa: E501
         :rtype: LicenseDto
         """
-        return self._database_license
+        return self._license
 
-    @database_license.setter
-    def database_license(self, database_license):
-        """Sets the database_license of this DatabaseDto.
+    @license.setter
+    def license(self, license):
+        """Sets the license of this DatabaseDto.
 
 
-        :param database_license: The database_license of this DatabaseDto.  # noqa: E501
+        :param license: The license of this DatabaseDto.  # noqa: E501
         :type: LicenseDto
         """
 
-        self._database_license = database_license
+        self._license = license
 
     @property
-    def database_description(self):
-        """Gets the database_description of this DatabaseDto.  # noqa: E501
+    def description(self):
+        """Gets the description of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_description of this DatabaseDto.  # noqa: E501
+        :return: The description of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_description
+        return self._description
 
-    @database_description.setter
-    def database_description(self, database_description):
-        """Sets the database_description of this DatabaseDto.
+    @description.setter
+    def description(self, description):
+        """Sets the description of this DatabaseDto.
 
 
-        :param database_description: The database_description of this DatabaseDto.  # noqa: E501
+        :param description: The description of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_description is None:
-            raise ValueError("Invalid value for `database_description`, must not be `None`")  # noqa: E501
 
-        self._database_description = database_description
+        self._description = description
 
     @property
-    def database_publisher(self):
-        """Gets the database_publisher of this DatabaseDto.  # noqa: E501
+    def publisher(self):
+        """Gets the publisher of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_publisher of this DatabaseDto.  # noqa: E501
+        :return: The publisher of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_publisher
+        return self._publisher
 
-    @database_publisher.setter
-    def database_publisher(self, database_publisher):
-        """Sets the database_publisher of this DatabaseDto.
+    @publisher.setter
+    def publisher(self, publisher):
+        """Sets the publisher of this DatabaseDto.
 
 
-        :param database_publisher: The database_publisher of this DatabaseDto.  # noqa: E501
+        :param publisher: The publisher of this DatabaseDto.  # noqa: E501
         :type: str
         """
 
-        self._database_publisher = database_publisher
+        self._publisher = publisher
 
     @property
-    def database_contact_person(self):
-        """Gets the database_contact_person of this DatabaseDto.  # noqa: E501
+    def contact(self):
+        """Gets the contact of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :return: The contact of this DatabaseDto.  # noqa: E501
         :rtype: UserDto
         """
-        return self._database_contact_person
+        return self._contact
 
-    @database_contact_person.setter
-    def database_contact_person(self, database_contact_person):
-        """Sets the database_contact_person of this DatabaseDto.
+    @contact.setter
+    def contact(self, contact):
+        """Sets the contact of this DatabaseDto.
 
 
-        :param database_contact_person: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :param contact: The contact of this DatabaseDto.  # noqa: E501
         :type: UserDto
         """
 
-        self._database_contact_person = database_contact_person
+        self._contact = contact
 
     @property
     def tables(self):
@@ -379,25 +380,25 @@ class DatabaseDto(object):
         self._tables = tables
 
     @property
-    def database_container_image(self):
-        """Gets the database_container_image of this DatabaseDto.  # noqa: E501
+    def image(self):
+        """Gets the image of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_container_image of this DatabaseDto.  # noqa: E501
+        :return: The image of this DatabaseDto.  # noqa: E501
         :rtype: ImageDto
         """
-        return self._database_container_image
+        return self._image
 
-    @database_container_image.setter
-    def database_container_image(self, database_container_image):
-        """Sets the database_container_image of this DatabaseDto.
+    @image.setter
+    def image(self, image):
+        """Sets the image of this DatabaseDto.
 
 
-        :param database_container_image: The database_container_image of this DatabaseDto.  # noqa: E501
+        :param image: The image of this DatabaseDto.  # noqa: E501
         :type: ImageDto
         """
 
-        self._database_container_image = database_container_image
+        self._image = image
 
     @property
     def container(self):
@@ -421,25 +422,25 @@ class DatabaseDto(object):
         self._container = container
 
     @property
-    def database_creation_time(self):
-        """Gets the database_creation_time of this DatabaseDto.  # noqa: E501
+    def created(self):
+        """Gets the created of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :return: The created of this DatabaseDto.  # noqa: E501
         :rtype: datetime
         """
-        return self._database_creation_time
+        return self._created
 
-    @database_creation_time.setter
-    def database_creation_time(self, database_creation_time):
-        """Sets the database_creation_time of this DatabaseDto.
+    @created.setter
+    def created(self, created):
+        """Sets the created of this DatabaseDto.
 
 
-        :param database_creation_time: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :param created: The created of this DatabaseDto.  # noqa: E501
         :type: datetime
         """
 
-        self._database_creation_time = database_creation_time
+        self._created = created
 
     @property
     def deleted(self):
@@ -463,111 +464,119 @@ class DatabaseDto(object):
         self._deleted = deleted
 
     @property
-    def database_internal_name(self):
-        """Gets the database_internal_name of this DatabaseDto.  # noqa: E501
+    def internal_name(self):
+        """Gets the internal_name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :return: The internal_name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_internal_name
+        return self._internal_name
 
-    @database_internal_name.setter
-    def database_internal_name(self, database_internal_name):
-        """Sets the database_internal_name of this DatabaseDto.
+    @internal_name.setter
+    def internal_name(self, internal_name):
+        """Sets the internal_name of this DatabaseDto.
 
 
-        :param database_internal_name: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :param internal_name: The internal_name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_internal_name is None:
-            raise ValueError("Invalid value for `database_internal_name`, must not be `None`")  # noqa: E501
+        if internal_name is None:
+            raise ValueError("Invalid value for `internal_name`, must not be `None`")  # noqa: E501
 
-        self._database_internal_name = database_internal_name
+        self._internal_name = internal_name
 
     @property
-    def database_publication_year(self):
-        """Gets the database_publication_year of this DatabaseDto.  # noqa: E501
+    def publication_year(self):
+        """Gets the publication_year of this DatabaseDto.  # noqa: E501
 
+        database publication year  # noqa: E501
 
-        :return: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :return: The publication_year of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_year
+        return self._publication_year
 
-    @database_publication_year.setter
-    def database_publication_year(self, database_publication_year):
-        """Sets the database_publication_year of this DatabaseDto.
+    @publication_year.setter
+    def publication_year(self, publication_year):
+        """Sets the publication_year of this DatabaseDto.
 
+        database publication year  # noqa: E501
 
-        :param database_publication_year: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :param publication_year: The publication_year of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_year = database_publication_year
+        self._publication_year = publication_year
 
     @property
-    def database_publication_month(self):
-        """Gets the database_publication_month of this DatabaseDto.  # noqa: E501
+    def publication_month(self):
+        """Gets the publication_month of this DatabaseDto.  # noqa: E501
 
+        database publication month  # noqa: E501
 
-        :return: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :return: The publication_month of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_month
+        return self._publication_month
 
-    @database_publication_month.setter
-    def database_publication_month(self, database_publication_month):
-        """Sets the database_publication_month of this DatabaseDto.
+    @publication_month.setter
+    def publication_month(self, publication_month):
+        """Sets the publication_month of this DatabaseDto.
 
+        database publication month  # noqa: E501
 
-        :param database_publication_month: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :param publication_month: The publication_month of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_month = database_publication_month
+        self._publication_month = publication_month
 
     @property
-    def database_publication_day(self):
-        """Gets the database_publication_day of this DatabaseDto.  # noqa: E501
+    def publication_day(self):
+        """Gets the publication_day of this DatabaseDto.  # noqa: E501
 
+        database publication day  # noqa: E501
 
-        :return: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :return: The publication_day of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_day
+        return self._publication_day
 
-    @database_publication_day.setter
-    def database_publication_day(self, database_publication_day):
-        """Sets the database_publication_day of this DatabaseDto.
+    @publication_day.setter
+    def publication_day(self, publication_day):
+        """Sets the publication_day of this DatabaseDto.
 
+        database publication day  # noqa: E501
 
-        :param database_publication_day: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :param publication_day: The publication_day of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_day = database_publication_day
+        self._publication_day = publication_day
 
     @property
-    def database_public(self):
-        """Gets the database_public of this DatabaseDto.  # noqa: E501
+    def is_public(self):
+        """Gets the is_public of this DatabaseDto.  # noqa: E501
 
+        database publicity  # noqa: E501
 
-        :return: The database_public of this DatabaseDto.  # noqa: E501
+        :return: The is_public of this DatabaseDto.  # noqa: E501
         :rtype: bool
         """
-        return self._database_public
+        return self._is_public
 
-    @database_public.setter
-    def database_public(self, database_public):
-        """Sets the database_public of this DatabaseDto.
+    @is_public.setter
+    def is_public(self, is_public):
+        """Sets the is_public of this DatabaseDto.
 
+        database publicity  # noqa: E501
 
-        :param database_public: The database_public of this DatabaseDto.  # noqa: E501
+        :param is_public: The is_public of this DatabaseDto.  # noqa: E501
         :type: bool
         """
 
-        self._database_public = database_public
+        self._is_public = is_public
 
     def to_dict(self):
         """Returns the model properties as a dict"""
diff --git a/.jupyter/api_identifier/models/image_env_item_dto.py b/.jupyter/api_identifier/models/image_env_item_dto.py
index c628feb2429398fe23d2f4b914e372e75f8446dd..d57bcd016227638defc32e968b0ccb68f157dfef 100644
--- a/.jupyter/api_identifier/models/image_env_item_dto.py
+++ b/.jupyter/api_identifier/models/image_env_item_dto.py
@@ -51,8 +51,7 @@ class ImageEnvItemDto(object):
         self.iid = iid
         self.key = key
         self.value = value
-        if type is not None:
-            self.type = type
+        self.type = type
 
     @property
     def iid(self):
@@ -141,7 +140,9 @@ class ImageEnvItemDto(object):
         :param type: The type of this ImageEnvItemDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["USERNAME", "PASSWORD", "PRIVILEGED_USERNAME", "PRIVILEGED_PASSWORD"]  # noqa: E501
+        if type is None:
+            raise ValueError("Invalid value for `type`, must not be `None`")  # noqa: E501
+        allowed_values = ["username", "password", "privileged_username", "privileged_password"]  # noqa: E501
         if type not in allowed_values:
             raise ValueError(
                 "Invalid value for `type` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_identifier/models/user_brief_dto.py b/.jupyter/api_identifier/models/user_brief_dto.py
index 40f051336a795bbbdd47abd0daba60af11ca02e1..2c331dde9093c6a77468dc93b938d670e58d267d 100644
--- a/.jupyter/api_identifier/models/user_brief_dto.py
+++ b/.jupyter/api_identifier/models/user_brief_dto.py
@@ -110,6 +110,7 @@ class UserBriefDto(object):
     def username(self):
         """Gets the username of this UserBriefDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserBriefDto.  # noqa: E501
         :rtype: str
@@ -120,6 +121,7 @@ class UserBriefDto(object):
     def username(self, username):
         """Sets the username of this UserBriefDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserBriefDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_identifier/models/user_dto.py b/.jupyter/api_identifier/models/user_dto.py
index 59563bcff5f028843f2303b96231661d30bd1315..882cb85a7d297c121498fb7d8d6c38e5d0dfdca9 100644
--- a/.jupyter/api_identifier/models/user_dto.py
+++ b/.jupyter/api_identifier/models/user_dto.py
@@ -155,6 +155,7 @@ class UserDto(object):
     def username(self):
         """Gets the username of this UserDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserDto.  # noqa: E501
         :rtype: str
@@ -165,6 +166,7 @@ class UserDto(object):
     def username(self, username):
         """Sets the username of this UserDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_query/api/table_data_endpoint_api.py b/.jupyter/api_query/api/table_data_endpoint_api.py
index 8f34b37dacac4db3543dd2def4951d0d24501b87..632bf0023c0c979119e43647dec551cf4bc744ad 100644
--- a/.jupyter/api_query/api/table_data_endpoint_api.py
+++ b/.jupyter/api_query/api/table_data_endpoint_api.py
@@ -259,7 +259,7 @@ class TableDataEndpointApi(object):
         auth_settings = ['bearerAuth']  # noqa: E501
 
         return self.api_client.call_api(
-            '/api/container/{id}/database/{databaseId}/table/{tableId}/data', 'GET',
+            '/api/container/{id}/database/{databaseId}/table/{tableId}/data', 'HEAD',
             path_params,
             query_params,
             header_params,
@@ -380,7 +380,7 @@ class TableDataEndpointApi(object):
         auth_settings = ['bearerAuth']  # noqa: E501
 
         return self.api_client.call_api(
-            '/api/container/{id}/database/{databaseId}/table/{tableId}/data', 'HEAD',
+            '/api/container/{id}/database/{databaseId}/table/{tableId}/data', 'GET',
             path_params,
             query_params,
             header_params,
diff --git a/.jupyter/api_query/api/table_history_endpoint_api.py b/.jupyter/api_query/api/table_history_endpoint_api.py
index 024816773f5d4328cc00116d9c298b48cd860fc9..f013bf0c6aede1359efe4f36e48a29c1d18215c9 100644
--- a/.jupyter/api_query/api/table_history_endpoint_api.py
+++ b/.jupyter/api_query/api/table_history_endpoint_api.py
@@ -126,7 +126,7 @@ class TableHistoryEndpointApi(object):
         auth_settings = ['bearerAuth']  # noqa: E501
 
         return self.api_client.call_api(
-            '/api/container/{id}/database/{databaseId}/table/{tableId}/history', 'GET',
+            '/api/container/{id}/database/{databaseId}/table/{tableId}/history', 'HEAD',
             path_params,
             query_params,
             header_params,
@@ -235,7 +235,7 @@ class TableHistoryEndpointApi(object):
         auth_settings = ['bearerAuth']  # noqa: E501
 
         return self.api_client.call_api(
-            '/api/container/{id}/database/{databaseId}/table/{tableId}/history', 'HEAD',
+            '/api/container/{id}/database/{databaseId}/table/{tableId}/history', 'GET',
             path_params,
             query_params,
             header_params,
diff --git a/.jupyter/api_query/models/container_dto.py b/.jupyter/api_query/models/container_dto.py
index 2bb0a530aae1ed016e1daa786724eccfa9f3f95a..2869b35048a30bc5d5a0afe173526c738885301e 100644
--- a/.jupyter/api_query/models/container_dto.py
+++ b/.jupyter/api_query/models/container_dto.py
@@ -169,7 +169,7 @@ class ContainerDto(object):
         :param state: The state of this ContainerDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["ContainerStateDto.CREATED", "ContainerStateDto.RESTARTING", "ContainerStateDto.RUNNING", "ContainerStateDto.PAUSED", "ContainerStateDto.EXITED", "ContainerStateDto.DEAD"]  # noqa: E501
+        allowed_values = ["created", "restarting", "running", "paused", "exited", "dead"]  # noqa: E501
         if state not in allowed_values:
             raise ValueError(
                 "Invalid value for `state` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_query/models/database_dto.py b/.jupyter/api_query/models/database_dto.py
index fb94bfb4d9045bb7ad5ff5789c279538827cdf25..4b2785c269d94113cfb0bb7230b25cb2f31660be 100644
--- a/.jupyter/api_query/models/database_dto.py
+++ b/.jupyter/api_query/models/database_dto.py
@@ -28,334 +28,335 @@ class DatabaseDto(object):
                             and the value is json key in definition.
     """
     swagger_types = {
-        'database_id': 'int',
-        'database_name': 'str',
-        'database_exchange': 'str',
-        'database_creator': 'UserBriefDto',
-        'database_subjects': 'list[str]',
-        'database_language': 'str',
-        'database_license': 'LicenseDto',
-        'database_description': 'str',
-        'database_publisher': 'str',
-        'database_contact_person': 'UserDto',
+        'id': 'int',
+        'name': 'str',
+        'exchange': 'str',
+        'creator': 'UserBriefDto',
+        'subjects': 'list[str]',
+        'language': 'str',
+        'license': 'LicenseDto',
+        'description': 'str',
+        'publisher': 'str',
+        'contact': 'UserDto',
         'tables': 'list[TableBriefDto]',
-        'database_container_image': 'ImageDto',
+        'image': 'ImageDto',
         'container': 'ContainerDto',
-        'database_creation_time': 'datetime',
+        'created': 'datetime',
         'deleted': 'datetime',
-        'database_internal_name': 'str',
-        'database_publication_year': 'int',
-        'database_publication_month': 'int',
-        'database_publication_day': 'int',
-        'database_public': 'bool'
+        'internal_name': 'str',
+        'publication_year': 'int',
+        'publication_month': 'int',
+        'publication_day': 'int',
+        'is_public': 'bool'
     }
 
     attribute_map = {
-        'database_id': 'database id',
-        'database_name': 'database name',
-        'database_exchange': 'database exchange',
-        'database_creator': 'database creator',
-        'database_subjects': 'database subjects',
-        'database_language': 'database language',
-        'database_license': 'database license',
-        'database_description': 'database description',
-        'database_publisher': 'database publisher',
-        'database_contact_person': 'database contact person',
+        'id': 'id',
+        'name': 'name',
+        'exchange': 'exchange',
+        'creator': 'creator',
+        'subjects': 'subjects',
+        'language': 'language',
+        'license': 'license',
+        'description': 'description',
+        'publisher': 'publisher',
+        'contact': 'contact',
         'tables': 'tables',
-        'database_container_image': 'database container image',
+        'image': 'image',
         'container': 'container',
-        'database_creation_time': 'database creation time',
+        'created': 'created',
         'deleted': 'deleted',
-        'database_internal_name': 'database internal name',
-        'database_publication_year': 'database publication year',
-        'database_publication_month': 'database publication month',
-        'database_publication_day': 'database publication day',
-        'database_public': 'database public'
+        'internal_name': 'internal_name',
+        'publication_year': 'publication_year',
+        'publication_month': 'publication_month',
+        'publication_day': 'publication_day',
+        'is_public': 'is_public'
     }
 
-    def __init__(self, database_id=None, database_name=None, database_exchange=None, database_creator=None, database_subjects=None, database_language=None, database_license=None, database_description=None, database_publisher=None, database_contact_person=None, tables=None, database_container_image=None, container=None, database_creation_time=None, deleted=None, database_internal_name=None, database_publication_year=None, database_publication_month=None, database_publication_day=None, database_public=None):  # noqa: E501
+    def __init__(self, id=None, name=None, exchange=None, creator=None, subjects=None, language=None, license=None, description=None, publisher=None, contact=None, tables=None, image=None, container=None, created=None, deleted=None, internal_name=None, publication_year=None, publication_month=None, publication_day=None, is_public=None):  # noqa: E501
         """DatabaseDto - a model defined in Swagger"""  # noqa: E501
-        self._database_id = None
-        self._database_name = None
-        self._database_exchange = None
-        self._database_creator = None
-        self._database_subjects = None
-        self._database_language = None
-        self._database_license = None
-        self._database_description = None
-        self._database_publisher = None
-        self._database_contact_person = None
+        self._id = None
+        self._name = None
+        self._exchange = None
+        self._creator = None
+        self._subjects = None
+        self._language = None
+        self._license = None
+        self._description = None
+        self._publisher = None
+        self._contact = None
         self._tables = None
-        self._database_container_image = None
+        self._image = None
         self._container = None
-        self._database_creation_time = None
+        self._created = None
         self._deleted = None
-        self._database_internal_name = None
-        self._database_publication_year = None
-        self._database_publication_month = None
-        self._database_publication_day = None
-        self._database_public = None
+        self._internal_name = None
+        self._publication_year = None
+        self._publication_month = None
+        self._publication_day = None
+        self._is_public = None
         self.discriminator = None
-        self.database_id = database_id
-        self.database_name = database_name
-        self.database_exchange = database_exchange
-        self.database_creator = database_creator
-        if database_subjects is not None:
-            self.database_subjects = database_subjects
-        if database_language is not None:
-            self.database_language = database_language
-        if database_license is not None:
-            self.database_license = database_license
-        self.database_description = database_description
-        if database_publisher is not None:
-            self.database_publisher = database_publisher
-        if database_contact_person is not None:
-            self.database_contact_person = database_contact_person
+        self.id = id
+        self.name = name
+        self.exchange = exchange
+        self.creator = creator
+        if subjects is not None:
+            self.subjects = subjects
+        if language is not None:
+            self.language = language
+        if license is not None:
+            self.license = license
+        if description is not None:
+            self.description = description
+        if publisher is not None:
+            self.publisher = publisher
+        if contact is not None:
+            self.contact = contact
         if tables is not None:
             self.tables = tables
-        if database_container_image is not None:
-            self.database_container_image = database_container_image
+        if image is not None:
+            self.image = image
         if container is not None:
             self.container = container
-        if database_creation_time is not None:
-            self.database_creation_time = database_creation_time
+        if created is not None:
+            self.created = created
         if deleted is not None:
             self.deleted = deleted
-        self.database_internal_name = database_internal_name
-        if database_publication_year is not None:
-            self.database_publication_year = database_publication_year
-        if database_publication_month is not None:
-            self.database_publication_month = database_publication_month
-        if database_publication_day is not None:
-            self.database_publication_day = database_publication_day
-        if database_public is not None:
-            self.database_public = database_public
+        self.internal_name = internal_name
+        if publication_year is not None:
+            self.publication_year = publication_year
+        if publication_month is not None:
+            self.publication_month = publication_month
+        if publication_day is not None:
+            self.publication_day = publication_day
+        if is_public is not None:
+            self.is_public = is_public
 
     @property
-    def database_id(self):
-        """Gets the database_id of this DatabaseDto.  # noqa: E501
+    def id(self):
+        """Gets the id of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_id of this DatabaseDto.  # noqa: E501
+        :return: The id of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_id
+        return self._id
 
-    @database_id.setter
-    def database_id(self, database_id):
-        """Sets the database_id of this DatabaseDto.
+    @id.setter
+    def id(self, id):
+        """Sets the id of this DatabaseDto.
 
 
-        :param database_id: The database_id of this DatabaseDto.  # noqa: E501
+        :param id: The id of this DatabaseDto.  # noqa: E501
         :type: int
         """
-        if database_id is None:
-            raise ValueError("Invalid value for `database_id`, must not be `None`")  # noqa: E501
+        if id is None:
+            raise ValueError("Invalid value for `id`, must not be `None`")  # noqa: E501
 
-        self._database_id = database_id
+        self._id = id
 
     @property
-    def database_name(self):
-        """Gets the database_name of this DatabaseDto.  # noqa: E501
+    def name(self):
+        """Gets the name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_name of this DatabaseDto.  # noqa: E501
+        :return: The name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_name
+        return self._name
 
-    @database_name.setter
-    def database_name(self, database_name):
-        """Sets the database_name of this DatabaseDto.
+    @name.setter
+    def name(self, name):
+        """Sets the name of this DatabaseDto.
 
 
-        :param database_name: The database_name of this DatabaseDto.  # noqa: E501
+        :param name: The name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_name is None:
-            raise ValueError("Invalid value for `database_name`, must not be `None`")  # noqa: E501
+        if name is None:
+            raise ValueError("Invalid value for `name`, must not be `None`")  # noqa: E501
 
-        self._database_name = database_name
+        self._name = name
 
     @property
-    def database_exchange(self):
-        """Gets the database_exchange of this DatabaseDto.  # noqa: E501
+    def exchange(self):
+        """Gets the exchange of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_exchange of this DatabaseDto.  # noqa: E501
+        :return: The exchange of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_exchange
+        return self._exchange
 
-    @database_exchange.setter
-    def database_exchange(self, database_exchange):
-        """Sets the database_exchange of this DatabaseDto.
+    @exchange.setter
+    def exchange(self, exchange):
+        """Sets the exchange of this DatabaseDto.
 
 
-        :param database_exchange: The database_exchange of this DatabaseDto.  # noqa: E501
+        :param exchange: The exchange of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_exchange is None:
-            raise ValueError("Invalid value for `database_exchange`, must not be `None`")  # noqa: E501
+        if exchange is None:
+            raise ValueError("Invalid value for `exchange`, must not be `None`")  # noqa: E501
 
-        self._database_exchange = database_exchange
+        self._exchange = exchange
 
     @property
-    def database_creator(self):
-        """Gets the database_creator of this DatabaseDto.  # noqa: E501
+    def creator(self):
+        """Gets the creator of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creator of this DatabaseDto.  # noqa: E501
+        :return: The creator of this DatabaseDto.  # noqa: E501
         :rtype: UserBriefDto
         """
-        return self._database_creator
+        return self._creator
 
-    @database_creator.setter
-    def database_creator(self, database_creator):
-        """Sets the database_creator of this DatabaseDto.
+    @creator.setter
+    def creator(self, creator):
+        """Sets the creator of this DatabaseDto.
 
 
-        :param database_creator: The database_creator of this DatabaseDto.  # noqa: E501
+        :param creator: The creator of this DatabaseDto.  # noqa: E501
         :type: UserBriefDto
         """
-        if database_creator is None:
-            raise ValueError("Invalid value for `database_creator`, must not be `None`")  # noqa: E501
+        if creator is None:
+            raise ValueError("Invalid value for `creator`, must not be `None`")  # noqa: E501
 
-        self._database_creator = database_creator
+        self._creator = creator
 
     @property
-    def database_subjects(self):
-        """Gets the database_subjects of this DatabaseDto.  # noqa: E501
+    def subjects(self):
+        """Gets the subjects of this DatabaseDto.  # noqa: E501
 
+        database subjects  # noqa: E501
 
-        :return: The database_subjects of this DatabaseDto.  # noqa: E501
+        :return: The subjects of this DatabaseDto.  # noqa: E501
         :rtype: list[str]
         """
-        return self._database_subjects
+        return self._subjects
 
-    @database_subjects.setter
-    def database_subjects(self, database_subjects):
-        """Sets the database_subjects of this DatabaseDto.
+    @subjects.setter
+    def subjects(self, subjects):
+        """Sets the subjects of this DatabaseDto.
 
+        database subjects  # noqa: E501
 
-        :param database_subjects: The database_subjects of this DatabaseDto.  # noqa: E501
+        :param subjects: The subjects of this DatabaseDto.  # noqa: E501
         :type: list[str]
         """
 
-        self._database_subjects = database_subjects
+        self._subjects = subjects
 
     @property
-    def database_language(self):
-        """Gets the database_language of this DatabaseDto.  # noqa: E501
+    def language(self):
+        """Gets the language of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_language of this DatabaseDto.  # noqa: E501
+        :return: The language of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_language
+        return self._language
 
-    @database_language.setter
-    def database_language(self, database_language):
-        """Sets the database_language of this DatabaseDto.
+    @language.setter
+    def language(self, language):
+        """Sets the language of this DatabaseDto.
 
 
-        :param database_language: The database_language of this DatabaseDto.  # noqa: E501
+        :param language: The language of this DatabaseDto.  # noqa: E501
         :type: str
         """
         allowed_values = ["ab", "aa", "af", "ak", "sq", "am", "ar", "an", "hy", "as", "av", "ae", "ay", "az", "bm", "ba", "eu", "be", "bn", "bh", "bi", "bs", "br", "bg", "my", "ca", "km", "ch", "ce", "ny", "zh", "cu", "cv", "kw", "co", "cr", "hr", "cs", "da", "dv", "nl", "dz", "en", "eo", "et", "ee", "fo", "fj", "fi", "fr", "ff", "gd", "gl", "lg", "ka", "de", "ki", "el", "kl", "gn", "gu", "ht", "ha", "he", "hz", "hi", "ho", "hu", "is", "io", "ig", "id", "ia", "ie", "iu", "ik", "ga", "it", "ja", "jv", "kn", "kr", "ks", "kk", "rw", "kv", "kg", "ko", "kj", "ku", "ky", "lo", "la", "lv", "lb", "li", "ln", "lt", "lu", "mk", "mg", "ms", "ml", "mt", "gv", "mi", "mr", "mh", "ro", "mn", "na", "nv", "nd", "ng", "ne", "se", "no", "nb", "nn", "ii", "oc", "oj", "or", "om", "os", "pi", "pa", "ps", "fa", "pl", "pt", "qu", "rm", "rn", "ru", "sm", "sg", "sa", "sc", "sr", "sn", "sd", "si", "sk", "sl", "so", "st", "nr", "es", "su", "sw", "ss", "sv", "tl", "ty", "tg", "ta", "tt", "te", "th", "bo", "ti", "to", "ts", "tn", "tr", "tk", "tw", "ug", "uk", "ur", "uz", "ve", "vi", "vo", "wa", "cy", "fy", "wo", "xh", "yi", "yo", "za", "zu"]  # noqa: E501
-        if database_language not in allowed_values:
+        if language not in allowed_values:
             raise ValueError(
-                "Invalid value for `database_language` ({0}), must be one of {1}"  # noqa: E501
-                .format(database_language, allowed_values)
+                "Invalid value for `language` ({0}), must be one of {1}"  # noqa: E501
+                .format(language, allowed_values)
             )
 
-        self._database_language = database_language
+        self._language = language
 
     @property
-    def database_license(self):
-        """Gets the database_license of this DatabaseDto.  # noqa: E501
+    def license(self):
+        """Gets the license of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_license of this DatabaseDto.  # noqa: E501
+        :return: The license of this DatabaseDto.  # noqa: E501
         :rtype: LicenseDto
         """
-        return self._database_license
+        return self._license
 
-    @database_license.setter
-    def database_license(self, database_license):
-        """Sets the database_license of this DatabaseDto.
+    @license.setter
+    def license(self, license):
+        """Sets the license of this DatabaseDto.
 
 
-        :param database_license: The database_license of this DatabaseDto.  # noqa: E501
+        :param license: The license of this DatabaseDto.  # noqa: E501
         :type: LicenseDto
         """
 
-        self._database_license = database_license
+        self._license = license
 
     @property
-    def database_description(self):
-        """Gets the database_description of this DatabaseDto.  # noqa: E501
+    def description(self):
+        """Gets the description of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_description of this DatabaseDto.  # noqa: E501
+        :return: The description of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_description
+        return self._description
 
-    @database_description.setter
-    def database_description(self, database_description):
-        """Sets the database_description of this DatabaseDto.
+    @description.setter
+    def description(self, description):
+        """Sets the description of this DatabaseDto.
 
 
-        :param database_description: The database_description of this DatabaseDto.  # noqa: E501
+        :param description: The description of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_description is None:
-            raise ValueError("Invalid value for `database_description`, must not be `None`")  # noqa: E501
 
-        self._database_description = database_description
+        self._description = description
 
     @property
-    def database_publisher(self):
-        """Gets the database_publisher of this DatabaseDto.  # noqa: E501
+    def publisher(self):
+        """Gets the publisher of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_publisher of this DatabaseDto.  # noqa: E501
+        :return: The publisher of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_publisher
+        return self._publisher
 
-    @database_publisher.setter
-    def database_publisher(self, database_publisher):
-        """Sets the database_publisher of this DatabaseDto.
+    @publisher.setter
+    def publisher(self, publisher):
+        """Sets the publisher of this DatabaseDto.
 
 
-        :param database_publisher: The database_publisher of this DatabaseDto.  # noqa: E501
+        :param publisher: The publisher of this DatabaseDto.  # noqa: E501
         :type: str
         """
 
-        self._database_publisher = database_publisher
+        self._publisher = publisher
 
     @property
-    def database_contact_person(self):
-        """Gets the database_contact_person of this DatabaseDto.  # noqa: E501
+    def contact(self):
+        """Gets the contact of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :return: The contact of this DatabaseDto.  # noqa: E501
         :rtype: UserDto
         """
-        return self._database_contact_person
+        return self._contact
 
-    @database_contact_person.setter
-    def database_contact_person(self, database_contact_person):
-        """Sets the database_contact_person of this DatabaseDto.
+    @contact.setter
+    def contact(self, contact):
+        """Sets the contact of this DatabaseDto.
 
 
-        :param database_contact_person: The database_contact_person of this DatabaseDto.  # noqa: E501
+        :param contact: The contact of this DatabaseDto.  # noqa: E501
         :type: UserDto
         """
 
-        self._database_contact_person = database_contact_person
+        self._contact = contact
 
     @property
     def tables(self):
@@ -379,25 +380,25 @@ class DatabaseDto(object):
         self._tables = tables
 
     @property
-    def database_container_image(self):
-        """Gets the database_container_image of this DatabaseDto.  # noqa: E501
+    def image(self):
+        """Gets the image of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_container_image of this DatabaseDto.  # noqa: E501
+        :return: The image of this DatabaseDto.  # noqa: E501
         :rtype: ImageDto
         """
-        return self._database_container_image
+        return self._image
 
-    @database_container_image.setter
-    def database_container_image(self, database_container_image):
-        """Sets the database_container_image of this DatabaseDto.
+    @image.setter
+    def image(self, image):
+        """Sets the image of this DatabaseDto.
 
 
-        :param database_container_image: The database_container_image of this DatabaseDto.  # noqa: E501
+        :param image: The image of this DatabaseDto.  # noqa: E501
         :type: ImageDto
         """
 
-        self._database_container_image = database_container_image
+        self._image = image
 
     @property
     def container(self):
@@ -421,25 +422,25 @@ class DatabaseDto(object):
         self._container = container
 
     @property
-    def database_creation_time(self):
-        """Gets the database_creation_time of this DatabaseDto.  # noqa: E501
+    def created(self):
+        """Gets the created of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :return: The created of this DatabaseDto.  # noqa: E501
         :rtype: datetime
         """
-        return self._database_creation_time
+        return self._created
 
-    @database_creation_time.setter
-    def database_creation_time(self, database_creation_time):
-        """Sets the database_creation_time of this DatabaseDto.
+    @created.setter
+    def created(self, created):
+        """Sets the created of this DatabaseDto.
 
 
-        :param database_creation_time: The database_creation_time of this DatabaseDto.  # noqa: E501
+        :param created: The created of this DatabaseDto.  # noqa: E501
         :type: datetime
         """
 
-        self._database_creation_time = database_creation_time
+        self._created = created
 
     @property
     def deleted(self):
@@ -463,111 +464,119 @@ class DatabaseDto(object):
         self._deleted = deleted
 
     @property
-    def database_internal_name(self):
-        """Gets the database_internal_name of this DatabaseDto.  # noqa: E501
+    def internal_name(self):
+        """Gets the internal_name of this DatabaseDto.  # noqa: E501
 
 
-        :return: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :return: The internal_name of this DatabaseDto.  # noqa: E501
         :rtype: str
         """
-        return self._database_internal_name
+        return self._internal_name
 
-    @database_internal_name.setter
-    def database_internal_name(self, database_internal_name):
-        """Sets the database_internal_name of this DatabaseDto.
+    @internal_name.setter
+    def internal_name(self, internal_name):
+        """Sets the internal_name of this DatabaseDto.
 
 
-        :param database_internal_name: The database_internal_name of this DatabaseDto.  # noqa: E501
+        :param internal_name: The internal_name of this DatabaseDto.  # noqa: E501
         :type: str
         """
-        if database_internal_name is None:
-            raise ValueError("Invalid value for `database_internal_name`, must not be `None`")  # noqa: E501
+        if internal_name is None:
+            raise ValueError("Invalid value for `internal_name`, must not be `None`")  # noqa: E501
 
-        self._database_internal_name = database_internal_name
+        self._internal_name = internal_name
 
     @property
-    def database_publication_year(self):
-        """Gets the database_publication_year of this DatabaseDto.  # noqa: E501
+    def publication_year(self):
+        """Gets the publication_year of this DatabaseDto.  # noqa: E501
 
+        database publication year  # noqa: E501
 
-        :return: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :return: The publication_year of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_year
+        return self._publication_year
 
-    @database_publication_year.setter
-    def database_publication_year(self, database_publication_year):
-        """Sets the database_publication_year of this DatabaseDto.
+    @publication_year.setter
+    def publication_year(self, publication_year):
+        """Sets the publication_year of this DatabaseDto.
 
+        database publication year  # noqa: E501
 
-        :param database_publication_year: The database_publication_year of this DatabaseDto.  # noqa: E501
+        :param publication_year: The publication_year of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_year = database_publication_year
+        self._publication_year = publication_year
 
     @property
-    def database_publication_month(self):
-        """Gets the database_publication_month of this DatabaseDto.  # noqa: E501
+    def publication_month(self):
+        """Gets the publication_month of this DatabaseDto.  # noqa: E501
 
+        database publication month  # noqa: E501
 
-        :return: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :return: The publication_month of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_month
+        return self._publication_month
 
-    @database_publication_month.setter
-    def database_publication_month(self, database_publication_month):
-        """Sets the database_publication_month of this DatabaseDto.
+    @publication_month.setter
+    def publication_month(self, publication_month):
+        """Sets the publication_month of this DatabaseDto.
 
+        database publication month  # noqa: E501
 
-        :param database_publication_month: The database_publication_month of this DatabaseDto.  # noqa: E501
+        :param publication_month: The publication_month of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_month = database_publication_month
+        self._publication_month = publication_month
 
     @property
-    def database_publication_day(self):
-        """Gets the database_publication_day of this DatabaseDto.  # noqa: E501
+    def publication_day(self):
+        """Gets the publication_day of this DatabaseDto.  # noqa: E501
 
+        database publication day  # noqa: E501
 
-        :return: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :return: The publication_day of this DatabaseDto.  # noqa: E501
         :rtype: int
         """
-        return self._database_publication_day
+        return self._publication_day
 
-    @database_publication_day.setter
-    def database_publication_day(self, database_publication_day):
-        """Sets the database_publication_day of this DatabaseDto.
+    @publication_day.setter
+    def publication_day(self, publication_day):
+        """Sets the publication_day of this DatabaseDto.
 
+        database publication day  # noqa: E501
 
-        :param database_publication_day: The database_publication_day of this DatabaseDto.  # noqa: E501
+        :param publication_day: The publication_day of this DatabaseDto.  # noqa: E501
         :type: int
         """
 
-        self._database_publication_day = database_publication_day
+        self._publication_day = publication_day
 
     @property
-    def database_public(self):
-        """Gets the database_public of this DatabaseDto.  # noqa: E501
+    def is_public(self):
+        """Gets the is_public of this DatabaseDto.  # noqa: E501
 
+        database publicity  # noqa: E501
 
-        :return: The database_public of this DatabaseDto.  # noqa: E501
+        :return: The is_public of this DatabaseDto.  # noqa: E501
         :rtype: bool
         """
-        return self._database_public
+        return self._is_public
 
-    @database_public.setter
-    def database_public(self, database_public):
-        """Sets the database_public of this DatabaseDto.
+    @is_public.setter
+    def is_public(self, is_public):
+        """Sets the is_public of this DatabaseDto.
 
+        database publicity  # noqa: E501
 
-        :param database_public: The database_public of this DatabaseDto.  # noqa: E501
+        :param is_public: The is_public of this DatabaseDto.  # noqa: E501
         :type: bool
         """
 
-        self._database_public = database_public
+        self._is_public = is_public
 
     def to_dict(self):
         """Returns the model properties as a dict"""
diff --git a/.jupyter/api_query/models/image_env_item_dto.py b/.jupyter/api_query/models/image_env_item_dto.py
index 73c5fbab7092aeb3e00129d0546064469523d009..521b735ee2ca69d6b694e6ade5cdc4de63c36478 100644
--- a/.jupyter/api_query/models/image_env_item_dto.py
+++ b/.jupyter/api_query/models/image_env_item_dto.py
@@ -51,8 +51,7 @@ class ImageEnvItemDto(object):
         self.iid = iid
         self.key = key
         self.value = value
-        if type is not None:
-            self.type = type
+        self.type = type
 
     @property
     def iid(self):
@@ -141,7 +140,9 @@ class ImageEnvItemDto(object):
         :param type: The type of this ImageEnvItemDto.  # noqa: E501
         :type: str
         """
-        allowed_values = ["USERNAME", "PASSWORD", "PRIVILEGED_USERNAME", "PRIVILEGED_PASSWORD"]  # noqa: E501
+        if type is None:
+            raise ValueError("Invalid value for `type`, must not be `None`")  # noqa: E501
+        allowed_values = ["username", "password", "privileged_username", "privileged_password"]  # noqa: E501
         if type not in allowed_values:
             raise ValueError(
                 "Invalid value for `type` ({0}), must be one of {1}"  # noqa: E501
diff --git a/.jupyter/api_query/models/user_brief_dto.py b/.jupyter/api_query/models/user_brief_dto.py
index 20e36cd32ecd6911d7a6b34c83695e997df801c3..c29510792162b1cdc193a1068c52cbdd470949dc 100644
--- a/.jupyter/api_query/models/user_brief_dto.py
+++ b/.jupyter/api_query/models/user_brief_dto.py
@@ -110,6 +110,7 @@ class UserBriefDto(object):
     def username(self):
         """Gets the username of this UserBriefDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserBriefDto.  # noqa: E501
         :rtype: str
@@ -120,6 +121,7 @@ class UserBriefDto(object):
     def username(self, username):
         """Sets the username of this UserBriefDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserBriefDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_query/models/user_dto.py b/.jupyter/api_query/models/user_dto.py
index e0f2dc8d8c065a386cc5c758b7f344328324d94f..6c3503411c21a5595d2818e6a107656da6b9e2ce 100644
--- a/.jupyter/api_query/models/user_dto.py
+++ b/.jupyter/api_query/models/user_dto.py
@@ -155,6 +155,7 @@ class UserDto(object):
     def username(self):
         """Gets the username of this UserDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserDto.  # noqa: E501
         :rtype: str
@@ -165,6 +166,7 @@ class UserDto(object):
     def username(self, username):
         """Sets the username of this UserDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/api_table/models/column_create_dto.py b/.jupyter/api_table/models/column_create_dto.py
index da2d3b81f6f29594e466d6831c3b76cd85738a22..5c14839dd9683c72ffe8de93612c9c5944a723e0 100644
--- a/.jupyter/api_table/models/column_create_dto.py
+++ b/.jupyter/api_table/models/column_create_dto.py
@@ -138,6 +138,7 @@ class ColumnCreateDto(object):
     def dfid(self):
         """Gets the dfid of this ColumnCreateDto.  # noqa: E501
 
+        date format id  # noqa: E501
 
         :return: The dfid of this ColumnCreateDto.  # noqa: E501
         :rtype: int
@@ -148,6 +149,7 @@ class ColumnCreateDto(object):
     def dfid(self, dfid):
         """Sets the dfid of this ColumnCreateDto.
 
+        date format id  # noqa: E501
 
         :param dfid: The dfid of this ColumnCreateDto.  # noqa: E501
         :type: int
diff --git a/.jupyter/api_table/models/column_dto.py b/.jupyter/api_table/models/column_dto.py
index 965d0658fd1d0996c37114eaac844cbe3d39f2db..08c3ab7a70536b6fec106d21b598225f2da9369e 100644
--- a/.jupyter/api_table/models/column_dto.py
+++ b/.jupyter/api_table/models/column_dto.py
@@ -38,8 +38,6 @@ class ColumnDto(object):
         'is_primary_key': 'bool',
         'column_type': 'str',
         'column_concept': 'ConceptDto',
-        'decimal_digits_before': 'int',
-        'decimal_digits_after': 'int',
         'is_null_allowed': 'bool',
         'check_expression': 'str',
         'foreign_key': 'str',
@@ -57,15 +55,13 @@ class ColumnDto(object):
         'is_primary_key': 'is_primary_key',
         'column_type': 'column_type',
         'column_concept': 'column_concept',
-        'decimal_digits_before': 'decimal_digits_before',
-        'decimal_digits_after': 'decimal_digits_after',
         'is_null_allowed': 'is_null_allowed',
         'check_expression': 'check_expression',
         'foreign_key': 'foreign_key',
         'enum_values': 'enum_values'
     }
 
-    def __init__(self, id=None, name=None, unique=None, references=None, internal_name=None, date_format=None, auto_generated=None, is_primary_key=None, column_type=None, column_concept=None, decimal_digits_before=None, decimal_digits_after=None, is_null_allowed=None, check_expression=None, foreign_key=None, enum_values=None):  # noqa: E501
+    def __init__(self, id=None, name=None, unique=None, references=None, internal_name=None, date_format=None, auto_generated=None, is_primary_key=None, column_type=None, column_concept=None, is_null_allowed=None, check_expression=None, foreign_key=None, enum_values=None):  # noqa: E501
         """ColumnDto - a model defined in Swagger"""  # noqa: E501
         self._id = None
         self._name = None
@@ -77,8 +73,6 @@ class ColumnDto(object):
         self._is_primary_key = None
         self._column_type = None
         self._column_concept = None
-        self._decimal_digits_before = None
-        self._decimal_digits_after = None
         self._is_null_allowed = None
         self._check_expression = None
         self._foreign_key = None
@@ -97,10 +91,6 @@ class ColumnDto(object):
         self.column_type = column_type
         if column_concept is not None:
             self.column_concept = column_concept
-        if decimal_digits_before is not None:
-            self.decimal_digits_before = decimal_digits_before
-        if decimal_digits_after is not None:
-            self.decimal_digits_after = decimal_digits_after
         self.is_null_allowed = is_null_allowed
         if check_expression is not None:
             self.check_expression = check_expression
@@ -339,48 +329,6 @@ class ColumnDto(object):
 
         self._column_concept = column_concept
 
-    @property
-    def decimal_digits_before(self):
-        """Gets the decimal_digits_before of this ColumnDto.  # noqa: E501
-
-
-        :return: The decimal_digits_before of this ColumnDto.  # noqa: E501
-        :rtype: int
-        """
-        return self._decimal_digits_before
-
-    @decimal_digits_before.setter
-    def decimal_digits_before(self, decimal_digits_before):
-        """Sets the decimal_digits_before of this ColumnDto.
-
-
-        :param decimal_digits_before: The decimal_digits_before of this ColumnDto.  # noqa: E501
-        :type: int
-        """
-
-        self._decimal_digits_before = decimal_digits_before
-
-    @property
-    def decimal_digits_after(self):
-        """Gets the decimal_digits_after of this ColumnDto.  # noqa: E501
-
-
-        :return: The decimal_digits_after of this ColumnDto.  # noqa: E501
-        :rtype: int
-        """
-        return self._decimal_digits_after
-
-    @decimal_digits_after.setter
-    def decimal_digits_after(self, decimal_digits_after):
-        """Sets the decimal_digits_after of this ColumnDto.
-
-
-        :param decimal_digits_after: The decimal_digits_after of this ColumnDto.  # noqa: E501
-        :type: int
-        """
-
-        self._decimal_digits_after = decimal_digits_after
-
     @property
     def is_null_allowed(self):
         """Gets the is_null_allowed of this ColumnDto.  # noqa: E501
diff --git a/.jupyter/api_table/models/user_brief_dto.py b/.jupyter/api_table/models/user_brief_dto.py
index b1a6948e55b41d14a0f10197b30a206c1bf0dc74..ed701ff11ae01e4d93dab071529b088e3c330ae9 100644
--- a/.jupyter/api_table/models/user_brief_dto.py
+++ b/.jupyter/api_table/models/user_brief_dto.py
@@ -110,6 +110,7 @@ class UserBriefDto(object):
     def username(self):
         """Gets the username of this UserBriefDto.  # noqa: E501
 
+        Only contains lowercase characters  # noqa: E501
 
         :return: The username of this UserBriefDto.  # noqa: E501
         :rtype: str
@@ -120,6 +121,7 @@ class UserBriefDto(object):
     def username(self, username):
         """Sets the username of this UserBriefDto.
 
+        Only contains lowercase characters  # noqa: E501
 
         :param username: The username of this UserBriefDto.  # noqa: E501
         :type: str
diff --git a/.jupyter/load_test.py b/.jupyter/load_test.py
index f607e9b0c1d26d375465694617f87be5912537ee..64bb43fe3d2efb812aea7bc2eaafbf01ed2d07aa 100755
--- a/.jupyter/load_test.py
+++ b/.jupyter/load_test.py
@@ -5,6 +5,7 @@ import os
 import shutil
 import uuid
 import requests as rq
+from pika.exceptions import ProbableAuthenticationError, ChannelClosedByBroker
 from postgres import Postgres
 
 import api_query.rest
@@ -170,7 +171,7 @@ def create_table(container_id, database_id, columns=None):
         "name": "Airquality " + str(uuid.uuid1()),
         "description": "Airquality in Zürich, Switzerland",
         "columns": columns
-    }, container_id, database_id)
+    }, "Bearer " + token, container_id, database_id)
     print("created table with id %d" % response.id)
     return response
 
@@ -307,6 +308,16 @@ def send_tuple(exchange, routing_key, username, password, payload):
     print("sent tuple to exchange with routing key %s" % routing_key)
     return response
 
+def send_tuple_fails(exchange, routing_key, username, password, payload):
+    broker = BrokerServiceClient(exchange=exchange, routing_key=routing_key, host="localhost", username=username,
+                                 password=password)
+    try:
+        broker.send(payload)
+    except ChannelClosedByBroker:
+        print("... access to exchange successfully refused")
+        return True
+    raise Exception("Tuple successfully sent, should have failed")
+
 
 if __name__ == '__main__':
     #
@@ -383,6 +394,8 @@ if __name__ == '__main__':
     send_tuple(dbexchange, ttopic, "test1", "test1", {"primary": 1})
     send_tuple(dbexchange, ttopic, "test1", "test1", {"primary": 2})
     send_tuple(dbexchange, ttopic, "test1", "test1", {"primary": 3})
+    create_user("other")
+    send_tuple_fails(dbexchange, ttopic, "other", "other", {"primary": 4})
     create_table(cid, dbid, columns=[{
         "name": "primary",
         "type": "date",
diff --git a/.jupyter/send_tuple.py b/.jupyter/send_tuple.py
new file mode 100755
index 0000000000000000000000000000000000000000..57c2eb5d526054ec0c72cdb09ebd2e873c91325c
--- /dev/null
+++ b/.jupyter/send_tuple.py
@@ -0,0 +1,33 @@
+#!/bin/env python3
+from pika.exceptions import ProbableAuthenticationError
+
+from api_broker.BrokerServiceClient import BrokerServiceClient
+
+dbexchange = "airquality_c64fc6f4-3a87-11ed-a3d0-64bc58900b78"
+ttopic = "airquality_c67d2b58-3a87-11ed-a3d0-64bc58900b78"
+
+
+def send_tuple(exchange, routing_key, username, password, payload):
+    broker = BrokerServiceClient(exchange=exchange, routing_key=routing_key, host="localhost", username=username,
+                                 password=password)
+    response = broker.send(payload)
+    print("sent tuple to exchange with routing key %s" % routing_key)
+    return response
+
+
+def send_tuple_fails(exchange, routing_key, username, password, payload):
+    try:
+        broker = BrokerServiceClient(exchange=exchange, routing_key=routing_key, host="localhost", username=username,
+                                 password=password)
+        broker.send(payload)
+    except ProbableAuthenticationError:
+        print("... authentication successfully failed")
+        return True
+    raise Exception("Tuple successfully sent, should have failed")
+
+
+if __name__ == '__main__':
+    send_tuple(dbexchange, ttopic, "test1", "test1", {"primary": 1})
+    send_tuple(dbexchange, ttopic, "test1", "test1", {"primary": 2})
+    send_tuple(dbexchange, ttopic, "test1", "test1", {"primary": 3})
+    send_tuple_fails(dbexchange, ttopic, "test2", "test2", {"primary": 4})
diff --git a/docker-compose.demo.yml b/docker-compose.demo.yml
index c6d16e96a326184b53e2b4d8c42aae3f631b91c0..62492765f6823729d474f9ec20e12a4f40bf6ede 100644
--- a/docker-compose.demo.yml
+++ b/docker-compose.demo.yml
@@ -178,6 +178,7 @@ services:
       METADATA_PASSWORD: ${METADATA_PASSWORD}
       BROKER_USERNAME: ${BROKER_USERNAME}
       BROKER_PASSWORD: ${BROKER_PASSWORD}
+      BROKER_CONSUMERS: ${BROKER_CONSUMERS}
     volumes:
       - /tmp:/tmp
     depends_on:
diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml
index 1837a5a7298f52e24d47f2a8bb16149552e93653..f4eb790941b3d1cf8aadca502df5abdcb14e391a 100644
--- a/docker-compose.prod.yml
+++ b/docker-compose.prod.yml
@@ -176,6 +176,7 @@ services:
       METADATA_PASSWORD: ${METADATA_PASSWORD}
       BROKER_USERNAME: ${BROKER_USERNAME}
       BROKER_PASSWORD: ${BROKER_PASSWORD}
+      BROKER_CONSUMERS: ${BROKER_CONSUMERS}
     volumes:
       - ${SHARED_FILESYSTEM}:/tmp
     depends_on:
@@ -336,6 +337,7 @@ services:
       - "3000:3000"
     volumes:
       - ${SHARED_FILESYSTEM}:/tmp
+      - /logos:/app/static/logos
     depends_on:
       identifier-service:
         condition: service_healthy
@@ -345,5 +347,6 @@ services:
       BROKER_USERNAME: ${BROKER_USERNAME}
       BROKER_PASSWORD: ${BROKER_PASSWORD}
       SHARED_FILESYSTEM: ${SHARED_FILESYSTEM}
+      LOGO: ${LOGO}
     logging:
       driver: json-file
diff --git a/fda-authentication-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java b/fda-authentication-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java
index d0b232316493f0648f6eef09a7916b36a89e2f5e..edcf16ee56ee371ae0a19b4454ebe83da48b05c2 100644
--- a/fda-authentication-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java
+++ b/fda-authentication-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java
@@ -2,6 +2,7 @@ package at.tuwien.gateway;
 
 
 import at.tuwien.api.amqp.CreateUserDto;
+import at.tuwien.api.amqp.GrantVirtualHostPermissionsDto;
 import at.tuwien.exception.BrokerUserCreationException;
 
 
@@ -16,6 +17,15 @@ public interface BrokerServiceGateway {
      */
     void createUser(String username, CreateUserDto data) throws BrokerUserCreationException;
 
+    /**
+     * Modified host permissions
+     *
+     * @param username The user name.
+     * @param data     The user data.
+     * @throws BrokerUserCreationException The broker did not modify the user.
+     */
+    void modifyHostPermissions(String username, GrantVirtualHostPermissionsDto data) throws BrokerUserCreationException;
+
     /**
      * Modify a user password for a user at the Queue Service
      *
diff --git a/fda-authentication-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java b/fda-authentication-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java
index 9a2acc658620d231168d52f757426aa404b3209a..79c0225fe3c63e406af0741c63620d70acfa7af9 100644
--- a/fda-authentication-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java
+++ b/fda-authentication-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java
@@ -1,7 +1,9 @@
 package at.tuwien.gateway.impl;
 
 import at.tuwien.api.amqp.CreateUserDto;
+import at.tuwien.api.amqp.GrantVirtualHostPermissionsDto;
 import at.tuwien.config.AmqpConfig;
+import at.tuwien.config.GatewayConfig;
 import at.tuwien.exception.BrokerUserCreationException;
 import at.tuwien.gateway.BrokerServiceGateway;
 import lombok.extern.slf4j.Slf4j;
@@ -11,6 +13,7 @@ import org.springframework.http.*;
 import org.springframework.stereotype.Service;
 import org.springframework.web.client.RestTemplate;
 
+import java.net.URI;
 import java.nio.charset.Charset;
 
 @Slf4j
@@ -19,11 +22,13 @@ public class BrokerServiceGatewayImpl implements BrokerServiceGateway {
 
     private final AmqpConfig amqpConfig;
     private final RestTemplate restTemplate;
+    private final GatewayConfig gatewayConfig;
 
     @Autowired
-    public BrokerServiceGatewayImpl(RestTemplate restTemplate, AmqpConfig amqpConfig) {
+    public BrokerServiceGatewayImpl(RestTemplate restTemplate, AmqpConfig amqpConfig, GatewayConfig gatewayConfig) {
         this.amqpConfig = amqpConfig;
         this.restTemplate = restTemplate;
+        this.gatewayConfig = gatewayConfig;
     }
 
     @Override
@@ -39,6 +44,20 @@ public class BrokerServiceGatewayImpl implements BrokerServiceGateway {
         log.info("Created user at broker service with username {}", username);
     }
 
+    @Override
+    public void modifyHostPermissions(String username, GrantVirtualHostPermissionsDto data) throws BrokerUserCreationException {
+        /* create user */
+        final URI modifyUri = URI.create(gatewayConfig.getGatewayEndpoint() + "/api/broker/permissions/%2F/" + username);
+        final ResponseEntity<Void> createResponse = restTemplate.exchange(modifyUri, HttpMethod.PUT,
+                new HttpEntity<>(data, getHeaders()), Void.class);
+        if (!createResponse.getStatusCode().equals(HttpStatus.CREATED)) {
+            log.error("Failed to modify user permissions at broker service: {}", createResponse.getStatusCode());
+            throw new BrokerUserCreationException("Failed to modify user permissions at broker service");
+        }
+        log.info("Modified user permissions at broker service for user with username {}", username);
+        log.info("modified user permissions at broker service {}", data);
+    }
+
     @Override
     public void modifyUserPassword(String username, CreateUserDto data) throws BrokerUserCreationException {
         /* modify at broker service */
diff --git a/fda-authentication-service/services/src/main/java/at/tuwien/mapper/AmqpMapper.java b/fda-authentication-service/services/src/main/java/at/tuwien/mapper/AmqpMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..8660009d076ef233ce105f64b3441f56bcee0994
--- /dev/null
+++ b/fda-authentication-service/services/src/main/java/at/tuwien/mapper/AmqpMapper.java
@@ -0,0 +1,19 @@
+package at.tuwien.mapper;
+
+import at.tuwien.api.amqp.GrantVirtualHostPermissionsDto;
+import org.mapstruct.Mapper;
+
+@Mapper(componentModel = "spring")
+public interface AmqpMapper {
+
+    org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(AmqpMapper.class);
+
+    default GrantVirtualHostPermissionsDto defaultVirtualHostUserPermissions() {
+        return GrantVirtualHostPermissionsDto.builder()
+                .configure("")
+                .read("")
+                .write("")
+                .build();
+    }
+
+}
diff --git a/fda-authentication-service/services/src/main/java/at/tuwien/mapper/UserMapper.java b/fda-authentication-service/services/src/main/java/at/tuwien/mapper/UserMapper.java
index dd5c761b5bd1f49e5807b4b5f29123810260e765..c50d3cd68db68a1bea2e758d217cb826b99be8de 100644
--- a/fda-authentication-service/services/src/main/java/at/tuwien/mapper/UserMapper.java
+++ b/fda-authentication-service/services/src/main/java/at/tuwien/mapper/UserMapper.java
@@ -1,25 +1,18 @@
 package at.tuwien.mapper;
 
-import at.tuwien.api.amqp.CreateUserDto;
 import at.tuwien.api.amqp.GrantVirtualHostPermissionsDto;
 import at.tuwien.api.auth.JwtResponseDto;
-import at.tuwien.api.auth.LoginRequestDto;
 import at.tuwien.api.auth.SignupRequestDto;
 import at.tuwien.api.user.*;
-import at.tuwien.entities.container.Container;
 import at.tuwien.entities.database.Database;
-import at.tuwien.entities.database.table.Table;
 import at.tuwien.entities.user.RoleType;
 import at.tuwien.entities.user.User;
 import at.tuwien.exception.OrcidMalformedException;
 import org.mapstruct.Mapper;
-import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.authority.SimpleGrantedAuthority;
-import org.springframework.security.core.userdetails.UserDetails;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.security.Principal;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Objects;
@@ -34,10 +27,6 @@ public interface UserMapper {
 
     UserDetailsDto userToUserDetailsDto(User data);
 
-    CreateUserDto signupRequestDtoToCreateUserDto(SignupRequestDto data);
-
-    LoginRequestDto createUserDtoToLoginRequestDto(CreateUserDto data);
-
     UserPasswordDto userResetDtoToUserPasswordDto(UserResetDto data);
 
     UserBriefDto userToUserBriefDto(User data);
@@ -89,12 +78,6 @@ public interface UserMapper {
                 .build();
     }
 
-    default GrantedAuthorityDto grantedAuthorityToGrantedAuthority(GrantedAuthority data) {
-        return GrantedAuthorityDto.builder()
-                .authority(data.getAuthority())
-                .build();
-    }
-
     default String userUpdateDtoToCompressedOrcid(UserUpdateDto data) {
         if (data.getOrcid() == null) {
             return null;
@@ -121,41 +104,4 @@ public interface UserMapper {
                 .toString();
     }
 
-    default GrantVirtualHostPermissionsDto signupRequestDtoToGrantVirtualHostPermissionsDto() {
-        return GrantVirtualHostPermissionsDto.builder()
-                .configure("")
-                .write("")
-                .read("")
-                .build();
-    }
-
-    default GrantVirtualHostPermissionsDto userToGrantVirtualHostPermissionsDto(User data) {
-        final List<Database> databases = new LinkedList<>();
-        data.getContainers()
-                .forEach(container -> databases.addAll(container.getDatabases()));
-        final String permissions = "^[" + databases.stream()
-                .map(Database::getExchange)
-                .collect(Collectors.joining("|")) + "]";
-        return GrantVirtualHostPermissionsDto.builder()
-                .configure("")
-                .write(permissions)
-                .read(permissions)
-                .build();
-    }
-
-    @Transactional(readOnly = true)
-    default UserDto userDetailsToUserDto(UserDetails data, Principal principal) {
-        final UsernamePasswordAuthenticationToken token = (UsernamePasswordAuthenticationToken) principal;
-        final UserDto user = UserDto.builder()
-                .username(data.getUsername())
-                .password(data.getPassword())
-                .authorities(token.getAuthorities()
-                        .stream()
-                        .map(this::grantedAuthorityToGrantedAuthority)
-                        .collect(Collectors.toList()))
-                .build();
-        log.debug("mapped user and principal {}", user);
-        return user;
-    }
-
 }
diff --git a/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/QueueServiceImpl.java b/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/QueueServiceImpl.java
index 65a223006dfaed149759e47dedda87ad5bd4160e..e19a1054792fe59c77cb082787be082260eb42fc 100644
--- a/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/QueueServiceImpl.java
+++ b/fda-authentication-service/services/src/main/java/at/tuwien/service/impl/QueueServiceImpl.java
@@ -6,6 +6,7 @@ import at.tuwien.api.user.UserPasswordDto;
 import at.tuwien.entities.user.User;
 import at.tuwien.exception.BrokerUserCreationException;
 import at.tuwien.gateway.BrokerServiceGateway;
+import at.tuwien.mapper.AmqpMapper;
 import at.tuwien.service.QueueService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -15,10 +16,12 @@ import org.springframework.stereotype.Service;
 @Service
 public class QueueServiceImpl implements QueueService {
 
+    private final AmqpMapper amqpMapper;
     private final BrokerServiceGateway brokerServiceGateway;
 
     @Autowired
-    public QueueServiceImpl(BrokerServiceGateway brokerServiceGateway) {
+    public QueueServiceImpl(AmqpMapper amqpMapper, BrokerServiceGateway brokerServiceGateway) {
+        this.amqpMapper = amqpMapper;
         this.brokerServiceGateway = brokerServiceGateway;
     }
 
@@ -29,6 +32,7 @@ public class QueueServiceImpl implements QueueService {
                 .tags("")
                 .build();
         brokerServiceGateway.createUser(username, userDto);
+        brokerServiceGateway.modifyHostPermissions(username, amqpMapper.defaultVirtualHostUserPermissions());
     }
 
     @Override
diff --git a/fda-database-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java b/fda-database-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java
index 4837272952f8a485022d44da409a2cfc4142dda8..52420c559eaeadcf567cabbf4cbff51a7c01d6d6 100644
--- a/fda-database-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java
+++ b/fda-database-service/rest-service/src/main/java/at/tuwien/endpoints/DatabaseEndpoint.java
@@ -79,6 +79,7 @@ public class DatabaseEndpoint extends AbstractEndpoint {
         final Database database = databaseService.create(containerId, createDto, principal);
         messageQueueService.createExchange(database, principal);
         queryStoreService.create(containerId, database.getId());
+        messageQueueService.updatePermissions(principal);
         return ResponseEntity.status(HttpStatus.CREATED)
                 .body(databaseMapper.databaseToDatabaseBriefDto(database));
     }
@@ -141,11 +142,12 @@ public class DatabaseEndpoint extends AbstractEndpoint {
     public ResponseEntity<?> delete(@NotBlank @PathVariable("id") Long containerId,
                                     @NotBlank @PathVariable Long databaseId,
                                     Principal principal) throws DatabaseNotFoundException,
-            ImageNotSupportedException, DatabaseMalformedException, AmqpException, ContainerConnectionException,
-            ContainerNotFoundException, DatabaseConnectionException, QueryMalformedException {
+            ImageNotSupportedException, DatabaseMalformedException, AmqpException, ContainerNotFoundException,
+            DatabaseConnectionException, QueryMalformedException, BrokerVirtualHostCreationException {
         final Database database = databaseService.findById(containerId, databaseId);
         messageQueueService.deleteExchange(database);
         databaseService.delete(containerId, databaseId, principal);
+        messageQueueService.updatePermissions(principal);
         return ResponseEntity.status(HttpStatus.ACCEPTED)
                 .build();
     }
diff --git a/fda-database-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java b/fda-database-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java
index bdaf5d14d8de942d0f3ad87b010586a903fc4bd0..3facd976d927b1bab3bd48c868734668ff16f915 100644
--- a/fda-database-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java
+++ b/fda-database-service/services/src/main/java/at/tuwien/gateway/BrokerServiceGateway.java
@@ -25,4 +25,14 @@ public interface BrokerServiceGateway {
      */
     void grantPermission(String username, ExchangeUpdatePermissionsDto data)
             throws BrokerVirtualHostCreationException;
+
+    /**
+     * Grants a user permission at a virtual host in the queue service.
+     *
+     * @param username The username of the user.
+     * @param data     The grant data.
+     * @throws BrokerVirtualHostCreationException The queue service did not respond within the 3s timeout.
+     */
+    void grantPermission(String username, GrantVirtualHostPermissionsDto data)
+            throws BrokerVirtualHostCreationException;
 }
diff --git a/fda-database-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java b/fda-database-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java
index e803ac2fd8340a0678ed4ad8ae0570068f5b3f06..904023d3cb946771f1a9da8f83c29fe134c2e862 100644
--- a/fda-database-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java
+++ b/fda-database-service/services/src/main/java/at/tuwien/gateway/impl/BrokerServiceGatewayImpl.java
@@ -1,6 +1,7 @@
 package at.tuwien.gateway.impl;
 
 import at.tuwien.api.amqp.CreateVirtualHostDto;
+import at.tuwien.api.amqp.GrantVirtualHostPermissionsDto;
 import at.tuwien.api.user.ExchangeUpdatePermissionsDto;
 import at.tuwien.config.GatewayConfig;
 import at.tuwien.exception.BrokerVirtualHostCreationException;
@@ -47,6 +48,20 @@ public class BrokerServiceGatewayImpl implements BrokerServiceGateway {
     public void grantPermission(String username, ExchangeUpdatePermissionsDto data)
             throws BrokerVirtualHostCreationException {
         final URI grantUri = URI.create(gatewayConfig.getGatewayEndpoint() + "/api/broker/topic-permissions/%2F/" + username);
+        final ResponseEntity<Void> response = restTemplate.exchange(grantUri, HttpMethod.PUT,
+                new HttpEntity<>(data), Void.class);
+        if (!response.getStatusCode().equals(HttpStatus.CREATED) && !response.getStatusCode().equals(HttpStatus.NO_CONTENT)) {
+            log.error("Failed to grant exchange: {}", response.getStatusCode());
+            throw new BrokerVirtualHostCreationException("Failed to grant exchange");
+        }
+        log.info("Grant exchange for user with username {}", username);
+        log.debug("grant exchange {}", data);
+    }
+
+    @Override
+    public void grantPermission(String username, GrantVirtualHostPermissionsDto data)
+            throws BrokerVirtualHostCreationException {
+        final URI grantUri = URI.create(gatewayConfig.getGatewayEndpoint() + "/api/broker/permissions/%2F/" + username);
         final ResponseEntity<Void> response = restTemplate.exchange(grantUri, HttpMethod.PUT,
                 new HttpEntity<>(data), Void.class);
         if (!response.getStatusCode().equals(HttpStatus.CREATED) && !response.getStatusCode().equals(HttpStatus.NO_CONTENT)) {
diff --git a/fda-database-service/services/src/main/java/at/tuwien/mapper/AmqpMapper.java b/fda-database-service/services/src/main/java/at/tuwien/mapper/AmqpMapper.java
index 6df6e4d5a3b5b2fccfd1beb57c89a9d6e24bfe1b..25c810eb33c531d255ad1c2b5e126a7333cea35d 100644
--- a/fda-database-service/services/src/main/java/at/tuwien/mapper/AmqpMapper.java
+++ b/fda-database-service/services/src/main/java/at/tuwien/mapper/AmqpMapper.java
@@ -1,21 +1,35 @@
 package at.tuwien.mapper;
 
-import at.tuwien.api.user.ExchangeUpdatePermissionsDto;
+import at.tuwien.api.amqp.GrantVirtualHostPermissionsDto;
 import at.tuwien.entities.database.Database;
 import org.mapstruct.Mapper;
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 @Mapper(componentModel = "spring")
 public interface AmqpMapper {
 
+    org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(AmqpMapper.class);
+
     default String exchangeName(Database database) {
         return database.getInternalName();
     }
 
-    default ExchangeUpdatePermissionsDto exchangeToExchangeUpdatePermissionsDto(String exchange) {
-        return ExchangeUpdatePermissionsDto.builder()
-                .exchange(exchange)
-                .read(".*")
-                .write(".*")
+    default GrantVirtualHostPermissionsDto databasesToGrantVirtualHostPermissionsDto(List<Database> databases) {
+        final String permissions;
+        if (databases.size() == 0) {
+            permissions = "";
+        } else {
+            permissions = "^(" + databases.stream()
+                    .map(Database::getExchange)
+                    .collect(Collectors.joining("|")) + ")$";
+        }
+        log.trace("mapped database count {} to permissions '{}'", databases.size(), permissions);
+        return GrantVirtualHostPermissionsDto.builder()
+                .configure("")
+                .write(permissions)
+                .read(permissions)
                 .build();
     }
 
diff --git a/fda-database-service/services/src/main/java/at/tuwien/repository/jpa/DatabaseRepository.java b/fda-database-service/services/src/main/java/at/tuwien/repository/jpa/DatabaseRepository.java
index 857abe665031de3db4a7649f32e03ab251e8c327..1e18cfc42df3e0bf4c6f96950bec8ad6f9eeb993 100644
--- a/fda-database-service/services/src/main/java/at/tuwien/repository/jpa/DatabaseRepository.java
+++ b/fda-database-service/services/src/main/java/at/tuwien/repository/jpa/DatabaseRepository.java
@@ -12,13 +12,8 @@ import java.util.Optional;
 @Repository
 public interface DatabaseRepository extends JpaRepository<Database, Long> {
 
-    @Query("select d from Database d where d.container.id = :containerId and (d.isPublic = true or (d.isPublic = " +
-            "false and d.creator.username = :username))")
-    List<Database> findAllByPublicAndContainerIdOrMine(@Param("containerId") Long containerId,
-                                             @Param("username") String username);
-
-    @Query("select d from Database d where d.container.id = :containerId and d.isPublic = true")
-    List<Database> findAllByPublicAndContainerId(@Param("containerId") Long containerId);
+    @Query("select d from Database d where d.creator.username = :username")
+    List<Database> findAllByUsername(@Param("username") String username);
 
     @Query("select d from Database d where d.container.id = :containerId")
     List<Database> findAll(@Param("containerId") Long containerId);
diff --git a/fda-database-service/services/src/main/java/at/tuwien/service/MessageQueueService.java b/fda-database-service/services/src/main/java/at/tuwien/service/MessageQueueService.java
index 96db86c29216b697d066ae94b8660ce6cd122911..c5dc6f39cec40e81d6163dead8b9ceae5d215e31 100644
--- a/fda-database-service/services/src/main/java/at/tuwien/service/MessageQueueService.java
+++ b/fda-database-service/services/src/main/java/at/tuwien/service/MessageQueueService.java
@@ -14,7 +14,15 @@ public interface MessageQueueService {
      * @param principal The user.
      * @throws AmqpException Could not create the exchange.
      */
-    void createExchange(Database database, Principal principal) throws AmqpException, BrokerVirtualHostCreationException;
+    void createExchange(Database database, Principal principal) throws AmqpException;
+
+    /**
+     * Updates the virtual host permissions in the broker service.
+     *
+     * @param principal Te user.
+     * @throws BrokerVirtualHostCreationException Could not update the permissions.
+     */
+    void updatePermissions(Principal principal) throws BrokerVirtualHostCreationException;
 
     /**
      * Deletes an exchange for a database.
diff --git a/fda-database-service/services/src/main/java/at/tuwien/service/impl/RabbitMqServiceImpl.java b/fda-database-service/services/src/main/java/at/tuwien/service/impl/RabbitMqServiceImpl.java
index 4f530f784fac94bb07e8ea93c70e7f348e2aee17..0f63f203680dca2602cd679fd4dfe82099174a81 100644
--- a/fda-database-service/services/src/main/java/at/tuwien/service/impl/RabbitMqServiceImpl.java
+++ b/fda-database-service/services/src/main/java/at/tuwien/service/impl/RabbitMqServiceImpl.java
@@ -1,6 +1,6 @@
 package at.tuwien.service.impl;
 
-import at.tuwien.api.user.ExchangeUpdatePermissionsDto;
+import at.tuwien.api.amqp.GrantVirtualHostPermissionsDto;
 import at.tuwien.config.AmqpConfig;
 import at.tuwien.entities.database.Database;
 import at.tuwien.exception.AmqpException;
@@ -42,7 +42,7 @@ public class RabbitMqServiceImpl implements MessageQueueService {
     }
 
     @PostConstruct
-    public void init() throws AmqpException, BrokerVirtualHostCreationException {
+    public void init() throws AmqpException {
         final List<Database> databases = databaseRepository.findAll();
         final Principal principal = new BasicUserPrincipal(amqpConfig.getAmpqUsername());
         for (Database database : databases) {
@@ -51,8 +51,7 @@ public class RabbitMqServiceImpl implements MessageQueueService {
     }
 
     @Override
-    public void createExchange(Database database, Principal principal) throws AmqpException,
-            BrokerVirtualHostCreationException {
+    public void createExchange(Database database, Principal principal) throws AmqpException {
         try {
             channel.exchangeDeclare(database.getExchange(), BuiltinExchangeType.FANOUT, true);
             log.info("Declared exchange {}", database.getExchange());
@@ -60,8 +59,12 @@ public class RabbitMqServiceImpl implements MessageQueueService {
             log.error("Failed to declare exchange {}", database.getExchange());
             throw new AmqpException("Failed to declare exchange", e);
         }
-        final ExchangeUpdatePermissionsDto permissions = amqpMapper.exchangeToExchangeUpdatePermissionsDto(
-                database.getExchange());
+    }
+
+    @Override
+    public void updatePermissions(Principal principal) throws BrokerVirtualHostCreationException {
+        final List<Database> databases = databaseRepository.findAllByUsername(principal.getName());
+        final GrantVirtualHostPermissionsDto permissions = amqpMapper.databasesToGrantVirtualHostPermissionsDto(databases);
         brokerServiceGateway.grantPermission(principal.getName(), permissions);
     }
 
diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java
index 9378f162729b3021ac834baaf8f14a5410cd83c7..b1e765a3d48283bff06336f99a5b76d69bc2756c 100644
--- a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java
+++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/DatabaseDto.java
@@ -50,7 +50,6 @@ public class DatabaseDto {
 
     private LicenseDto license;
 
-    @NotBlank
     @Schema(example = "Air Quality in Austria")
     private String description;
 
diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/LicenseDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/LicenseDto.java
index b95215f060aa8dba2d741a6f37ae71a557cb4ac9..bf8b6b10e6d59cd1618610a71cbf52e38c61c743 100644
--- a/fda-metadata-db/api/src/main/java/at/tuwien/api/database/LicenseDto.java
+++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/database/LicenseDto.java
@@ -19,7 +19,7 @@ public class LicenseDto {
     private String identifier;
 
     @NotBlank
-    @Schema(name = "https://opensource.org/licenses/MIT")
+    @Schema(example = "https://opensource.org/licenses/MIT")
     private String uri;
 
 }
\ No newline at end of file
diff --git a/fda-query-service/rest-service/src/main/resources/application-docker.yml b/fda-query-service/rest-service/src/main/resources/application-docker.yml
index 77c04460c15034f08b0d091a37f0da076f4420f3..a32339855a305d471953065d9ee1eb55a571ebf8 100644
--- a/fda-query-service/rest-service/src/main/resources/application-docker.yml
+++ b/fda-query-service/rest-service/src/main/resources/application-docker.yml
@@ -41,3 +41,4 @@ eureka:
 fda:
   gateway.endpoint: "${GATEWAY_ENDPOINT}"
   ready.path: /ready
+  consumers: 2
diff --git a/fda-query-service/rest-service/src/main/resources/application.yml b/fda-query-service/rest-service/src/main/resources/application.yml
index 1ccb95256cbd3b78888fdfc3baec0a3bb4e631aa..867d7b625563eb620b9756835cf541aa05d1f8ce 100644
--- a/fda-query-service/rest-service/src/main/resources/application.yml
+++ b/fda-query-service/rest-service/src/main/resources/application.yml
@@ -41,3 +41,4 @@ eureka:
 fda:
   gateway.endpoint: "${GATEWAY_ENDPOINT}"
   ready.path: /ready
+  consumers: "${BROKER_CONSUMERS}"
diff --git a/fda-query-service/services/src/main/java/at/tuwien/config/AmqpConfig.java b/fda-query-service/services/src/main/java/at/tuwien/config/AmqpConfig.java
index 93da331dc00afce2129ea2a51f52630e1f2747a9..f0a8ce2cfa3d56c8b024dd973580445362fad5a9 100644
--- a/fda-query-service/services/src/main/java/at/tuwien/config/AmqpConfig.java
+++ b/fda-query-service/services/src/main/java/at/tuwien/config/AmqpConfig.java
@@ -26,6 +26,9 @@ public class AmqpConfig {
     @Value("${spring.rabbitmq.password}")
     private String amqpPassword;
 
+    @Value("${fda.consumers}")
+    private Integer amqpConsumers;
+
     @Bean
     public Channel getChannel() throws IOException, TimeoutException {
         final ConnectionFactory factory = new ConnectionFactory();
diff --git a/fda-query-service/services/src/main/java/at/tuwien/listener/impl/RabbitMqListenerImpl.java b/fda-query-service/services/src/main/java/at/tuwien/listener/impl/RabbitMqListenerImpl.java
index 6f5304684cfa089a70948aa82d359fcb61f30644..066bd64e947e17339bcd4144b0bc683c25cf97d0 100644
--- a/fda-query-service/services/src/main/java/at/tuwien/listener/impl/RabbitMqListenerImpl.java
+++ b/fda-query-service/services/src/main/java/at/tuwien/listener/impl/RabbitMqListenerImpl.java
@@ -1,6 +1,7 @@
 package at.tuwien.listener.impl;
 
 import at.tuwien.api.amqp.ConsumerDto;
+import at.tuwien.config.AmqpConfig;
 import at.tuwien.entities.database.table.Table;
 import at.tuwien.exception.AmqpException;
 import at.tuwien.gateway.BrokerServiceGateway;
@@ -19,13 +20,15 @@ import java.util.List;
 @Service
 public class RabbitMqListenerImpl implements MessageQueueListener {
 
+    private final AmqpConfig amqpConfig;
     private final TableService tableService;
     private final MessageQueueService messageQueueService;
     private final BrokerServiceGateway brokerServiceGateway;
 
     @Autowired
-    public RabbitMqListenerImpl(TableService tableService, MessageQueueService messageQueueService,
-                                BrokerServiceGateway brokerServiceGateway) {
+    public RabbitMqListenerImpl(AmqpConfig amqpConfig, TableService tableService,
+                                MessageQueueService messageQueueService, BrokerServiceGateway brokerServiceGateway) {
+        this.amqpConfig = amqpConfig;
         this.tableService = tableService;
         this.messageQueueService = messageQueueService;
         this.brokerServiceGateway = brokerServiceGateway;
@@ -37,10 +40,13 @@ public class RabbitMqListenerImpl implements MessageQueueListener {
         final List<Table> tables = tableService.findAll();
         final List<ConsumerDto> consumers = brokerServiceGateway.findAllConsumers();
         for (Table table : tables) {
-            if (consumers.stream().anyMatch(c -> c.getQueue().getName().equals(table.getTopic()))) {
-                log.trace("table {} already has a consumer, skip.", table);
+            final long consumerCount = consumers.stream().filter(c -> c.getQueue().getName().equals(table.getTopic())).count();
+            if (consumerCount >= amqpConfig.getAmqpConsumers()) {
+                log.trace("table {} already has {}/{} consumers, skip.", table, consumerCount, amqpConfig.getAmqpConsumers());
                 continue;
             }
+            log.info("Table with id {} needs {} more consumers", table.getId(), amqpConfig.getAmqpConsumers() - consumerCount);
+            log.debug("table with id {} has {} consumers, but needs {} in total", table.getId(), consumerCount, amqpConfig.getAmqpConsumers());
             messageQueueService.createConsumer(table.getTopic(), table.getDatabase().getContainer().getId(),
                     table.getDatabase().getId(), table.getId());
         }