diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/ViewDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/ViewDto.java
index 5f9373bb12148777dfadbceae94f1a97dc7dcb78..82a7081e16f08a2cc2c3a7c02a28760adc7ef9d1 100644
--- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/ViewDto.java
+++ b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/ViewDto.java
@@ -65,6 +65,8 @@ public class ViewDto extends CacheableDto {
     @Schema(example = "7de03e818900b6ea6d58ad0306d4a741d658c6df3d1964e89ed2395d8c7e7916")
     private String queryHash;
 
+    @ToString.Exclude
+    @EqualsAndHashCode.Exclude
     private DatabaseDto database;
 
     @NotNull
diff --git a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/table/TableDto.java b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/table/TableDto.java
index e456908ed620d7883ee4287f09063ed9171e5c19..1021d167ca1364eb63b06d321040e708c4f7d6e2 100644
--- a/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/table/TableDto.java
+++ b/dbrepo-metadata-service/api/src/main/java/at/tuwien/api/database/table/TableDto.java
@@ -107,6 +107,8 @@ public class TableDto extends CacheableDto {
     @NotNull
     private List<ColumnDto> columns;
 
+    @ToString.Exclude
+    @EqualsAndHashCode.Exclude
     private DatabaseDto database;
 
     @NotNull
diff --git a/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java b/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java
index cd0b90f9f6458d4c921347586d99ada986f988d0..bd6b952c172a71e38ad4f63a106db4c4d48dc6c6 100644
--- a/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java
+++ b/dbrepo-metadata-service/repositories/src/main/java/at/tuwien/mapper/MetadataMapper.java
@@ -536,6 +536,8 @@ public interface MetadataMapper {
     }
 
     default TableDto tableToTableDto(Table data) {
+        data.getDatabase()
+                .setTables(null);
         final TableDto table = TableDto.builder()
                 .id(data.getId())
                 .name(data.getName())
@@ -548,6 +550,7 @@ public interface MetadataMapper {
                 .description(data.getDescription())
                 .identifiers(new LinkedList<>())
                 .columns(new LinkedList<>())
+                .database(databaseToDatabaseDto(data.getDatabase()))
                 .constraints(constraintsToConstraintsDto(data.getConstraints()))
                 .build();
         if (data.getIdentifiers() != null) {
@@ -833,6 +836,9 @@ public interface MetadataMapper {
                 .trim();
     }
 
+    @Mappings({
+            @Mapping(target = "database.views", ignore = true)
+    })
     ViewDto viewToViewDto(View data);
 
     @Mappings({
diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java
index eec5aebf4bea668164c51bae655c074cb306e4c2..fa0b6f64f76712b82ce1386ad38ff621d5e561dc 100644
--- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java
+++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/mvc/AuthenticationPrivilegedIntegrationMvcTest.java
@@ -10,7 +10,6 @@ import at.tuwien.repository.DatabaseRepository;
 import at.tuwien.repository.LicenseRepository;
 import at.tuwien.repository.UserRepository;
 import at.tuwien.service.AuthenticationService;
-import at.tuwien.service.UserService;
 import at.tuwien.test.AbstractUnitTest;
 import at.tuwien.utils.KeycloakUtils;
 import dasniko.testcontainers.keycloak.KeycloakContainer;
@@ -31,7 +30,7 @@ import org.testcontainers.junit.jupiter.Testcontainers;
 
 import java.util.List;
 
-import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.*;
+import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.httpBasic;
 import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
 import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.header;
@@ -120,9 +119,7 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest
                 .andDo(print())
                 .andExpect(header().string("X-Username", CONTAINER_1_PRIVILEGED_USERNAME))
                 .andExpect(header().string("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD))
-                .andExpect(header().string("X-Host", CONTAINER_1_HOST))
-                .andExpect(header().string("X-Port", "" + CONTAINER_1_PORT))
-                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Host X-Port"))
+                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password"))
                 .andExpect(status().isOk());
     }
 
@@ -138,9 +135,7 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest
                 .andDo(print())
                 .andExpect(header().string("X-Username", CONTAINER_1_PRIVILEGED_USERNAME))
                 .andExpect(header().string("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD))
-                .andExpect(header().string("X-Host", CONTAINER_1_HOST))
-                .andExpect(header().string("X-Port", "" + CONTAINER_1_PORT))
-                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Host X-Port"))
+                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password"))
                 .andExpect(status().isOk());
     }
 
@@ -157,12 +152,7 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest
                 .andDo(print())
                 .andExpect(header().string("X-Username", CONTAINER_1_PRIVILEGED_USERNAME))
                 .andExpect(header().string("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD))
-                .andExpect(header().string("X-Host", CONTAINER_1_HOST))
-                .andExpect(header().string("X-Port", "" + CONTAINER_1_PORT))
-                .andExpect(header().string("X-Type", IMAGE_1_JDBC))
-                .andExpect(header().string("X-Database", DATABASE_1_INTERNALNAME))
-                .andExpect(header().string("X-Table", TABLE_1_INTERNAL_NAME))
-                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Host X-Port X-Type X-Database X-Table"))
+                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password"))
                 .andExpect(status().isOk());
     }
 
@@ -177,11 +167,6 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest
                 .andDo(print())
                 .andExpect(header().doesNotExist("X-Username"))
                 .andExpect(header().doesNotExist("X-Password"))
-                .andExpect(header().doesNotExist("X-Host"))
-                .andExpect(header().doesNotExist("X-Port"))
-                .andExpect(header().doesNotExist("X-Type"))
-                .andExpect(header().doesNotExist("X-Database"))
-                .andExpect(header().doesNotExist("X-Table"))
                 .andExpect(header().doesNotExist("Access-Control-Expose-Headers"))
                 .andExpect(status().isOk());
     }
@@ -197,12 +182,7 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest
                 .andDo(print())
                 .andExpect(header().string("X-Username", CONTAINER_1_PRIVILEGED_USERNAME))
                 .andExpect(header().string("X-Password", CONTAINER_1_PRIVILEGED_PASSWORD))
-                .andExpect(header().string("X-Host", CONTAINER_1_HOST))
-                .andExpect(header().string("X-Port", "" + CONTAINER_1_PORT))
-                .andExpect(header().string("X-Type", IMAGE_1_JDBC))
-                .andExpect(header().string("X-Database", DATABASE_1_INTERNALNAME))
-                .andExpect(header().string("X-Table", TABLE_1_INTERNAL_NAME))
-                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password X-Host X-Port X-Type X-Database X-Table"))
+                .andExpect(header().string("Access-Control-Expose-Headers", "X-Username X-Password"))
                 .andExpect(status().isOk());
     }
 
@@ -217,11 +197,6 @@ public class AuthenticationPrivilegedIntegrationMvcTest extends AbstractUnitTest
                 .andDo(print())
                 .andExpect(header().doesNotExist("X-Username"))
                 .andExpect(header().doesNotExist("X-Password"))
-                .andExpect(header().doesNotExist("X-Host"))
-                .andExpect(header().doesNotExist("X-Port"))
-                .andExpect(header().doesNotExist("X-Type"))
-                .andExpect(header().doesNotExist("X-Database"))
-                .andExpect(header().doesNotExist("X-View"))
                 .andExpect(header().doesNotExist("Access-Control-Expose-Headers"))
                 .andExpect(status().isOk());
     }
diff --git a/lib/python/tests/test_unit_table.py b/lib/python/tests/test_unit_table.py
index 36391e1fdd29d16d8ac65f3aaa823e6be34ca414..eccf8c2a59ee45c3341c4116678301e438f0089b 100644
--- a/lib/python/tests/test_unit_table.py
+++ b/lib/python/tests/test_unit_table.py
@@ -14,46 +14,15 @@ from dbrepo.api.exceptions import MalformedError, ForbiddenError, NotExistsError
 class TableUnitTest(unittest.TestCase):
 
     def test_create_table_succeeds(self):
-        exp = Table(id=2,
-                    name="Test",
-                    description="Test Table",
-                    database_id=1,
-                    internal_name="test",
-                    owner=UserBrief(id='8638c043-5145-4be8-a3e4-4b79991b0a16', username='mweise'),
-                    is_versioned=True,
-                    queue_name='test',
-                    routing_key='dbrepo.test_database_1234.test',
-                    is_public=True,
-                    is_schema_public=True,
-                    constraints=Constraints(uniques=[],
-                                            foreign_keys=[],
-                                            checks=[],
-                                            primary_key=[PrimaryKey(id=1,
-                                                                    table=TableBrief(id=2, database_id=1,
-                                                                                     name='Other',
-                                                                                     internal_name='other',
-                                                                                     description=None,
-                                                                                     is_versioned=True,
-                                                                                     is_public=True,
-                                                                                     is_schema_public=True,
-                                                                                     owned_by='8638c043-5145-4be8-a3e4-4b79991b0a16'),
-                                                                    column=ColumnBrief(id=1, table_id=2,
-                                                                                       database_id=1,
-                                                                                       name='id',
-                                                                                       alias=None,
-                                                                                       internal_name='id',
-                                                                                       type=ColumnType.BIGINT))]),
-                    columns=[Column(id=1,
-                                    ord=0,
-                                    name="ID",
-                                    database_id=1,
-                                    table_id=2,
-                                    internal_name="id",
-                                    auto_generated=True,
-                                    is_primary_key=True,
-                                    type=ColumnType.BIGINT,
-                                    is_public=True,
-                                    is_null_allowed=False)])
+        exp = TableBrief(id=2,
+                         database_id=1,
+                         name="Test",
+                         description="Test Table",
+                         internal_name="test",
+                         owned_by='8638c043-5145-4be8-a3e4-4b79991b0a16',
+                         is_versioned=True,
+                         is_public=True,
+                         is_schema_public=True)
         with requests_mock.Mocker() as mock:
             # mock
             mock.post('/api/database/1/table', json=exp.model_dump(), status_code=201)
diff --git a/lib/python/tests/test_unit_user.py b/lib/python/tests/test_unit_user.py
index 0d1e72088573af1921028daf9af1b3e1f092cac2..0e846b1b42e6ba935a2f204d09aa0920dce69626 100644
--- a/lib/python/tests/test_unit_user.py
+++ b/lib/python/tests/test_unit_user.py
@@ -125,8 +125,8 @@ class UserUnitTest(unittest.TestCase):
 
     def test_update_user_succeeds(self):
         with requests_mock.Mocker() as mock:
-            exp = User(id='8638c043-5145-4be8-a3e4-4b79991b0a16', username='mweise', given_name='Martin',
-                       attributes=UserAttributes(theme='dark'))
+            exp = UserBrief(id='8638c043-5145-4be8-a3e4-4b79991b0a16', username='mweise', given_name='Martin',
+                            attributes=UserAttributes(theme='dark'))
             # mock
             mock.put('http://localhost/api/user/8638c043-5145-4be8-a3e4-4b79991b0a16', status_code=202,
                      json=exp.model_dump())
@@ -173,16 +173,12 @@ class UserUnitTest(unittest.TestCase):
 
     def test_update_user_password_succeeds(self):
         with requests_mock.Mocker() as mock:
-            exp = User(id='8638c043-5145-4be8-a3e4-4b79991b0a16', username='mweise', given_name='Martin',
-                       attributes=UserAttributes(theme='dark'))
             # mock
-            mock.put('http://localhost/api/user/8638c043-5145-4be8-a3e4-4b79991b0a16/password', status_code=202,
-                     json=exp.model_dump())
+            mock.put('http://localhost/api/user/8638c043-5145-4be8-a3e4-4b79991b0a16/password', status_code=202)
             # test
             client = RestClient(username="a", password="b")
             response = client.update_user_password(user_id='8638c043-5145-4be8-a3e4-4b79991b0a16',
                                                    password='s3cr3t1n0rm4t10n')
-            self.assertEqual(exp, response)
 
     def test_update_user_password_not_allowed_fails(self):
         with requests_mock.Mocker() as mock: