diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/ResultPageRequestCriteria.java b/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/ResultPageRequestCriteria.java
deleted file mode 100644
index 4b456efafc4d96b39c866323ec9f2450eaaba476..0000000000000000000000000000000000000000
--- a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/ResultPageRequestCriteria.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package de.ozgcloud.alfa.vorgang;
-
-import lombok.Builder;
-import lombok.Getter;
-
-@Builder(toBuilder = true)
-@Getter
-public class ResultPageRequestCriteria {
-
-	private int page;
-	private int limit;
-	private OrderBy orderBy;
-}
diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangRemoteService.java b/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangRemoteService.java
index 5e183908678002a699db74e1ee0e450c98f08eb7..664833f36b9cf8b7fb55f2645dd16074fe423462 100644
--- a/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangRemoteService.java
+++ b/alfa-service/src/main/java/de/ozgcloud/alfa/vorgang/VorgangRemoteService.java
@@ -44,6 +44,8 @@ import net.devh.boot.grpc.client.inject.GrpcClient;
 @Service
 class VorgangRemoteService {
 
+	static final String VORGAENGE_WITH_UNGELESENE_NACHRICHTEN_PATH = "ClientAttribute.OzgCloud_NachrichtenManager.hasNewPostfachNachricht";
+
 	@GrpcClient(GrpcUtil.VORGANG_MANAGER_GRPC_CLIENT)
 	private VorgangServiceBlockingStub vorgangServiceStub;
 	@Autowired
@@ -62,17 +64,14 @@ class VorgangRemoteService {
 	GrpcFindVorgangRequest buildFindVorgangRequest(FindVorgaengeHeaderRequestCriteria requestCriteria, FilterCriteria filterCriteria) {
 		var requestBuilder = createFindVorgangRequestBuilder(requestCriteria, filterCriteria);
 
-//				requestCriteria.getSearchBy().ifPresent(requestBuilder::setSearchBy);
-		requestCriteria.getSearchBy().ifPresentOrElse(
-				requestBuilder::setSearchBy,
-				() -> requestBuilder.setQuery(mapToGrpcQuery(filterCriteria)));
+		requestCriteria.getSearchBy().ifPresent(requestBuilder::setSearchBy);
 
 		return requestBuilder.build();
 	}
 
 	private GrpcFindVorgangRequest.Builder createFindVorgangRequestBuilder(FindVorgaengeHeaderRequestCriteria requestCriteria,
 			FilterCriteria filterCriteria) {
-		return createFindVorgangRequestBuilder(requestCriteria).setFilterBy(mapFilterCriteria(filterCriteria));
+		return createFindVorgangRequestBuilder(requestCriteria).setQuery(createQuery(filterCriteria)).setFilterBy(createFilterBy(filterCriteria));
 	}
 
 	private GrpcFindVorgangRequest.Builder createFindVorgangRequestBuilder(FindVorgaengeHeaderRequestCriteria requestCriteria) {
@@ -82,18 +81,22 @@ class VorgangRemoteService {
 				.setOffset(requestCriteria.getPage() * requestCriteria.getLimit());
 	}
 
-	private GrpcQuery mapToGrpcQuery(FilterCriteria filterCriteria) {
+	GrpcQuery createQuery(FilterCriteria filterCriteria) {
 		var queryBuilder = GrpcQuery.newBuilder();
 		if (filterCriteria.isHasUngeleseneNachrichten()) {
-			queryBuilder.addExpressions(GrpcVorgangQueryExpression.newBuilder()
-					.setPath("ClientAttribute.OzgCloud_NachrichtenManager.hasNewPostfachNachricht")
-					.setOperator(GrpcQueryOperator.EQUAL)
-					.setOperandBoolValue(true)
-					.build());
+			addUngeleseneNachrichtenExpression(queryBuilder);
 		}
 		return queryBuilder.build();
 	}
 
+	private void addUngeleseneNachrichtenExpression(GrpcQuery.Builder queryBuilder) {
+		queryBuilder.addExpressions(GrpcVorgangQueryExpression.newBuilder()
+				.setPath(VORGAENGE_WITH_UNGELESENE_NACHRICHTEN_PATH)
+				.setOperator(GrpcQueryOperator.EQUAL)
+				.setOperandBoolValue(true)
+				.build());
+	}
+
 	VorgaengeHeaderResponse buildVorgaengeHeaderResponse(GrpcFindVorgangResponse response) {
 		return VorgaengeHeaderResponse.builder().total(response.getTotal()).vorgaengeHeader(getVorgaengeHeaderFromResponse(response)).build();
 	}
@@ -111,10 +114,10 @@ class VorgangRemoteService {
 	}
 
 	GrpcFindVorgangWithEingangRequest buildFindVorgangWithEingangRequest(String vorgangId, FilterCriteria filterCriteria) {
-		return GrpcFindVorgangWithEingangRequest.newBuilder().setId(vorgangId).setFilterBy(mapFilterCriteria(filterCriteria)).build();
+		return GrpcFindVorgangWithEingangRequest.newBuilder().setId(vorgangId).setFilterBy(createFilterBy(filterCriteria)).build();
 	}
 
-	GrpcFilterBy mapFilterCriteria(FilterCriteria filterCriteria) {
+	GrpcFilterBy createFilterBy(FilterCriteria filterCriteria) {
 		var filterCriteriaBuilder = GrpcFilterBy.newBuilder()
 				.setFilterByAssignedTo(filterCriteria.isFilterByAssignedTo())
 				.setFilterByOrganisationseinheitenId(filterCriteria.isFilterByOrganisationseinheitenId())
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/statistic/StatisticTestFactory.java b/alfa-service/src/test/java/de/ozgcloud/alfa/statistic/StatisticTestFactory.java
index d4acbda72b80abdb119b6e736812291208ae0411..bbf4d40ff968a5bd418116a7dfbdd62a81279ad1 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/statistic/StatisticTestFactory.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/statistic/StatisticTestFactory.java
@@ -5,6 +5,8 @@ public class StatisticTestFactory {
 	public static final int COUNT_WIEDERVORLAGEN = 8;
 	public static final boolean EXISTS_WIEDERVORLAGE_OVERDUE = true;
 
+	public static final int COUNT_UNGELESENE_NACHRICHTEN = 5;
+
 	public static Statistic create() {
 		return createBuilder().build();
 	}
@@ -13,6 +15,7 @@ public class StatisticTestFactory {
 		return Statistic.builder()
 				.byStatus(ByStatusTestFactory.create())
 				.wiedervorlagen(COUNT_WIEDERVORLAGEN)
-				.existsWiedervorlageOverdue(EXISTS_WIEDERVORLAGE_OVERDUE);
+				.existsWiedervorlageOverdue(EXISTS_WIEDERVORLAGE_OVERDUE)
+				.ungeleseneNachrichten(COUNT_UNGELESENE_NACHRICHTEN);
 	}
 }
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/FilterCriteriaTestFactory.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/FilterCriteriaTestFactory.java
index a4572dc1eaf28498d41b9aa0da67f8a935ea837b..7b32a18fc61c31eced83377f57b89fb3c3db248d 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/FilterCriteriaTestFactory.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/FilterCriteriaTestFactory.java
@@ -16,6 +16,8 @@ public class FilterCriteriaTestFactory {
 
 	public static final boolean HAS_NEXT_WIEDERVORLAGE_FRIST = false;
 
+	public static final boolean HAS_UNGELESENE_NACHRICHTEN = false;
+
 	public static FilterCriteria create() {
 		return createBuilder().build();
 	}
@@ -27,6 +29,7 @@ public class FilterCriteriaTestFactory {
 				.filterByAssignedTo(FILTER_BY_ASSIGNED_TO)
 				.assignedTo(Optional.of(UserProfileTestFactory.ID))
 				.organisationsEinheitenId(List.of(ORGANISATIONS_EINHEIT_ID))
-				.hasNextWiedervorlageFrist(HAS_NEXT_WIEDERVORLAGE_FRIST);
+				.hasNextWiedervorlageFrist(HAS_NEXT_WIEDERVORLAGE_FRIST)
+				.hasUngeleseneNachrichten(HAS_UNGELESENE_NACHRICHTEN);
 	}
 }
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcQueryTestFactory.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcQueryTestFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..33c4fe7c36a9af6b5a85423c00b649af863ab468
--- /dev/null
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/GrpcQueryTestFactory.java
@@ -0,0 +1,14 @@
+package de.ozgcloud.alfa.vorgang;
+
+import de.ozgcloud.vorgang.vorgang.GrpcQuery;
+
+public class GrpcQueryTestFactory {
+
+	public static GrpcQuery create() {
+		return createBuilder().build();
+	}
+
+	public static GrpcQuery.Builder createBuilder() {
+		return GrpcQuery.newBuilder();
+	}
+}
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerITCase.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerITCase.java
index 8eea6215c5ed51e9cd4d184c627a70ba5ee5a55a..c93835bcb0da848cf565cdedfc35ee677880ce3a 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerITCase.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerITCase.java
@@ -142,42 +142,42 @@ class VorgangControllerITCase {
 				private static final String BY_STATUS_PATH = "$.statistic.byStatus.";
 
 				@Test
-				void shouldContainsNeu() throws Exception {
+				void shouldContainNeu() throws Exception {
 					var response = doRequest();
 
 					response.andExpect(jsonPath(BY_STATUS_PATH + "neu").value(ByStatusTestFactory.NEU_COUNT));
 				}
 
 				@Test
-				void shouldContainsAngenommen() throws Exception {
+				void shouldContainAngenommen() throws Exception {
 					var response = doRequest();
 
 					response.andExpect(jsonPath(BY_STATUS_PATH + "angenommen").value(ByStatusTestFactory.ANGENOMMEN_COUNT));
 				}
 
 				@Test
-				void shouldContainsInBearbeitung() throws Exception {
+				void shouldContainInBearbeitung() throws Exception {
 					var response = doRequest();
 
 					response.andExpect(jsonPath(BY_STATUS_PATH + "inBearbeitung").value(ByStatusTestFactory.IN_BEARBEITUNG_COUNT));
 				}
 
 				@Test
-				void shouldContainsBeschieden() throws Exception {
+				void shouldContainBeschieden() throws Exception {
 					var response = doRequest();
 
 					response.andExpect(jsonPath(BY_STATUS_PATH + "beschieden").value(ByStatusTestFactory.BESCHIEDEN_COUNT));
 				}
 
 				@Test
-				void shouldContainsAbgeschlossen() throws Exception {
+				void shouldContainAbgeschlossen() throws Exception {
 					var response = doRequest();
 
 					response.andExpect(jsonPath(BY_STATUS_PATH + "abgeschlossen").value(ByStatusTestFactory.ABGESCHLOSSEN_COUNT));
 				}
 
 				@Test
-				void shouldContainsVerworfen() throws Exception {
+				void shouldContainVerworfen() throws Exception {
 					var response = doRequest();
 
 					response.andExpect(jsonPath(BY_STATUS_PATH + "verworfen").value(ByStatusTestFactory.VERWORFEN_COUNT));
@@ -185,11 +185,18 @@ class VorgangControllerITCase {
 			}
 
 			@Test
-			void shouldContainsWiedervorlagen() throws Exception {
+			void shouldContainWiedervorlagen() throws Exception {
 				var response = doRequest();
 
 				response.andExpect(jsonPath("$.statistic.wiedervorlagen").value(StatisticTestFactory.COUNT_WIEDERVORLAGEN));
 			}
+
+			@Test
+			void shouldContainUngeleseneNachrichten() throws Exception {
+				var response = doRequest();
+
+				response.andExpect(jsonPath("$.statistic.ungeleseneNachrichten").value(StatisticTestFactory.COUNT_UNGELESENE_NACHRICHTEN));
+			}
 		}
 	}
 
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerTest.java
index eb68a2d7b8716df1ac05a12ae42ffc6b34e89600..0490cbdc413ccb38f3db7ef6dd457646f1e16830 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangControllerTest.java
@@ -606,6 +606,123 @@ class VorgangControllerTest {
 				}
 			}
 		}
+
+		@Nested
+		class TestGetAllByUngeleseneNachrichten {
+
+			@Test
+			void shouldCallHandleGetAllRequest() {
+				doRequest();
+
+				verify(controller).handleGetAllRequest(any(FindVorgaengeHeaderRequestCriteria.class));
+			}
+
+			@DisplayName("build criteria")
+			@Nested
+			class TestBuildCriteria {
+
+				@Test
+				void shouldHavePage() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getPage()).isEqualTo(PAGE);
+				}
+
+				@Test
+				void shoulHaveLimit() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getLimit()).isEqualTo(LIMIT);
+				}
+
+				@Test
+				void shoulHaveHasUngeleseneNachrichten() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getFilterCriteria().isHasUngeleseneNachrichten()).isTrue();
+				}
+			}
+
+			@SneakyThrows
+			private void doRequest() {
+				mockMvc.perform(get(PATH)
+								.param(VorgangController.PARAM_PAGE, Integer.toString(PAGE))
+								.param(VorgangController.PARAM_LIMIT, Integer.toString(LIMIT))
+								.param(VorgangController.PARAM_NACHRICHTEN, VorgangController.PARAM_NACHRICHTEN_UNGELESENE))
+						.andExpect(status().isOk());
+			}
+		}
+
+		@Nested
+		class TestGetAllByAssignedToAndUngeleseneNachrichten {
+
+			private static final UserId ASSIGNED_TO = UserProfileTestFactory.ID;
+
+			@Test
+			void shouldCallHandleGetAllRequest() {
+				doRequest();
+
+				verify(controller).handleGetAllRequest(any(FindVorgaengeHeaderRequestCriteria.class));
+			}
+
+			@DisplayName("build criteria")
+			@Nested
+			class TestBuildCriteria {
+
+				@Test
+				void shouldHavePage() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getPage()).isEqualTo(PAGE);
+				}
+
+				@Test
+				void shoulHaveLimit() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getLimit()).isEqualTo(LIMIT);
+				}
+
+				@Test
+				void shoulHaveAssignedTo() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getFilterCriteria().getAssignedTo()).hasValue(ASSIGNED_TO);
+				}
+
+				@Test
+				void shouldSetFilterByAssignedTo() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getFilterCriteria().isFilterByAssignedTo()).isTrue();
+				}
+
+				@Test
+				void shoulHaveHasUngeleseneNachrichten() {
+					doRequest();
+
+					verify(controller).handleGetAllRequest(criteriaCaptor.capture());
+					assertThat(criteriaCaptor.getValue().getFilterCriteria().isHasUngeleseneNachrichten()).isTrue();
+				}
+			}
+
+			@SneakyThrows
+			private void doRequest() {
+				mockMvc.perform(get(PATH)
+								.param(VorgangController.PARAM_PAGE, Integer.toString(PAGE))
+								.param(VorgangController.PARAM_LIMIT, Integer.toString(LIMIT))
+								.param(VorgangController.PARAM_ASSIGNED_TO, ASSIGNED_TO.toString())
+								.param(VorgangController.PARAM_NACHRICHTEN, VorgangController.PARAM_NACHRICHTEN_UNGELESENE))
+						.andExpect(status().isOk());
+			}
+		}
 	}
 
 	@DisplayName("As Optional")
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangRemoteServiceTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangRemoteServiceTest.java
index c2c4eb8db070a11c9fecdc60473d9325d3e77745..be66261c6e40450b44a08d50d9f325ce6b2df18a 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangRemoteServiceTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/vorgang/VorgangRemoteServiceTest.java
@@ -23,6 +23,7 @@
  */
 package de.ozgcloud.alfa.vorgang;
 
+import static de.ozgcloud.alfa.vorgang.VorgangRemoteService.*;
 import static org.assertj.core.api.Assertions.*;
 import static org.mockito.ArgumentMatchers.*;
 import static org.mockito.Mockito.*;
@@ -39,9 +40,12 @@ import org.mockito.Mock;
 import org.mockito.Spy;
 
 import de.ozgcloud.alfa.common.user.UserProfileTestFactory;
+import de.ozgcloud.vorgang.common.GrpcQueryOperator;
 import de.ozgcloud.vorgang.vorgang.GrpcFilterBy;
 import de.ozgcloud.vorgang.vorgang.GrpcFindVorgangRequest;
 import de.ozgcloud.vorgang.vorgang.GrpcFindVorgangResponse;
+import de.ozgcloud.vorgang.vorgang.GrpcQuery;
+import de.ozgcloud.vorgang.vorgang.GrpcVorgangQueryExpression;
 import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub;
 
 class VorgangRemoteServiceTest {
@@ -59,6 +63,8 @@ class VorgangRemoteServiceTest {
 
 	private final GrpcFilterBy filterBy = GrpcFilterByTestFactory.create();
 
+	private final GrpcQuery query = GrpcQueryTestFactory.create();
+
 	@DisplayName("Find vorgaenge header")
 	@Nested
 	class TestFindVorgaengeHeader {
@@ -73,7 +79,8 @@ class VorgangRemoteServiceTest {
 
 			@BeforeEach
 			void initMockReturnValues() {
-				doReturn(filterBy).when(service).mapFilterCriteria(any());
+				doReturn(query).when(service).createQuery(any());
+				doReturn(filterBy).when(service).createFilterBy(any());
 				doReturn(VorgangListResponseTestFactory.create()).when(service).buildVorgaengeHeaderResponse(any());
 			}
 
@@ -84,11 +91,18 @@ class VorgangRemoteServiceTest {
 				verify(service).buildFindVorgangRequest(requestCriteria, filterCriteria);
 			}
 
+			@Test
+			void callCreateQuery() {
+				callService();
+
+				verify(service).createQuery(filterCriteria);
+			}
+
 			@Test
 			void callCreateFilterBy() {
 				callService();
 
-				verify(service).mapFilterCriteria(filterCriteria);
+				verify(service).createFilterBy(filterCriteria);
 			}
 
 			@Test
@@ -109,7 +123,8 @@ class VorgangRemoteServiceTest {
 
 			@BeforeEach
 			void initMockReturnValues() {
-				doReturn(filterBy).when(service).mapFilterCriteria(any());
+				doReturn(query).when(service).createQuery(any());
+				doReturn(filterBy).when(service).createFilterBy(any());
 			}
 
 			@Test
@@ -127,6 +142,13 @@ class VorgangRemoteServiceTest {
 						.isEqualTo(FindVorgaengeRequestCriteriaTestFactory.PAGE * FindVorgaengeRequestCriteriaTestFactory.LIMIT);
 			}
 
+			@Test
+			void shouldSetQuery() {
+				var request = callService();
+
+				assertThat(request.getQuery()).isEqualTo(query);
+			}
+
 			@Test
 			void shouldSetFilterBy() {
 				var request = callService();
@@ -186,13 +208,64 @@ class VorgangRemoteServiceTest {
 		}
 	}
 
+	@Nested
+	class TestCreateQuery {
+
+		@Nested
+		class WhenHasUngeleseneNachrichtenIsTrue {
+
+			private final FilterCriteria filterCriteria = FilterCriteriaTestFactory.createBuilder().hasUngeleseneNachrichten(true).build();
+
+			@Test
+			void shouldAddExpression() {
+				var query = service.createQuery(filterCriteria);
+
+				assertThat(query.getExpressionsList()).extracting(GrpcVorgangQueryExpression::getPath)
+						.containsOnlyOnce(VORGAENGE_WITH_UNGELESENE_NACHRICHTEN_PATH);
+			}
+
+			@Test
+			void shouldHaveOperator() {
+				var expression = getExpression(service.createQuery(filterCriteria));
+
+				assertThat(expression.getOperator()).isEqualTo(GrpcQueryOperator.EQUAL);
+			}
+
+			@Test
+			void shouldHaveOperandBoolValue() {
+				var expression = getExpression(service.createQuery(filterCriteria));
+
+				assertThat(expression.getOperandBoolValue()).isTrue();
+			}
+
+			private GrpcVorgangQueryExpression getExpression(GrpcQuery query) {
+				return query.getExpressionsList().stream()
+						.filter(expression -> expression.getPath().equals(VORGAENGE_WITH_UNGELESENE_NACHRICHTEN_PATH)).findFirst().orElseThrow();
+			}
+		}
+
+		@Nested
+		class WhenHasUngeleseneNachrichtenIsFalse {
+
+			private final FilterCriteria filterCriteria = FilterCriteriaTestFactory.createBuilder().hasUngeleseneNachrichten(false).build();
+
+			@Test
+			void shouldNotAddExpression() {
+				var query = service.createQuery(filterCriteria);
+
+				assertThat(query.getExpressionsList()).extracting(GrpcVorgangQueryExpression::getPath)
+						.isNotEqualTo(VORGAENGE_WITH_UNGELESENE_NACHRICHTEN_PATH);
+			}
+		}
+	}
+
 	@DisplayName("Create filterBy")
 	@Nested
 	class TestCreateFilterBy {
 
 		@Test
 		void shouldSetFilterByOrganisationsEinheitId() {
-			var filterCriteria = mapFilterCriteria();
+			var filterCriteria = createFilterBy();
 
 			assertThat(filterCriteria.getFilterByOrganisationseinheitenId())
 					.isEqualTo(FilterCriteriaTestFactory.FILTER_BY_ORGANISATIONS_EINHEITEN_ID);
@@ -200,7 +273,7 @@ class VorgangRemoteServiceTest {
 
 		@Test
 		void shouldSetOrganisationsEinheitIds() {
-			var filterCriteria = mapFilterCriteria();
+			var filterCriteria = createFilterBy();
 
 			assertThat(filterCriteria.getOrganisationseinheitIdList()).containsExactly(FilterCriteriaTestFactory.ORGANISATIONS_EINHEIT_ID);
 		}
@@ -211,7 +284,7 @@ class VorgangRemoteServiceTest {
 
 			@Test
 			void shouldBeSet() {
-				var filterCriteria = mapFilterCriteria();
+				var filterCriteria = createFilterBy();
 
 				assertThat(filterCriteria.getFilterByAssignedTo()).isTrue();
 			}
@@ -223,14 +296,14 @@ class VorgangRemoteServiceTest {
 
 			@Test
 			void shouldBeSetIfExists() {
-				var filterCriteria = mapFilterCriteria();
+				var filterCriteria = createFilterBy();
 
 				assertThat(filterCriteria.getAssignedTo()).isEqualTo(UserProfileTestFactory.ID.toString());
 			}
 
 			@Test
 			void shouldNotBeSetIfNotExist() {
-				var filterCriteria = mapFilterCriteria(FilterCriteriaTestFactory.createBuilder().assignedTo(Optional.empty()).build());
+				var filterCriteria = createFilterBy(FilterCriteriaTestFactory.createBuilder().assignedTo(Optional.empty()).build());
 
 				assertThat(filterCriteria.getAssignedTo()).isEqualTo(StringUtils.EMPTY);
 			}
@@ -242,14 +315,14 @@ class VorgangRemoteServiceTest {
 
 			@Test
 			void shouldBeSetIfExists() {
-				var filterCriteria = mapFilterCriteria();
+				var filterCriteria = createFilterBy();
 
 				assertThat(filterCriteria.getStatusList()).containsExactly(FilterCriteriaTestFactory.VORGANG_STATUS.toString());
 			}
 
 			@Test
 			void shouldNotBeSetIfNotExist() {
-				var filterCriteria = mapFilterCriteria(FilterCriteriaTestFactory.createBuilder().status(Optional.empty()).build());
+				var filterCriteria = createFilterBy(FilterCriteriaTestFactory.createBuilder().status(Optional.empty()).build());
 
 				assertThat(filterCriteria.getStatusCount()).isZero();
 
@@ -262,25 +335,25 @@ class VorgangRemoteServiceTest {
 
 			@Test
 			void shouldBeSetToFalse() {
-				var filterCriteria = mapFilterCriteria(FilterCriteriaTestFactory.createBuilder().hasNextWiedervorlageFrist(false).build());
+				var filterCriteria = createFilterBy(FilterCriteriaTestFactory.createBuilder().hasNextWiedervorlageFrist(false).build());
 
 				assertThat(filterCriteria.getHasNextWiedervorlageFrist()).isFalse();
 			}
 
 			@Test
 			void shouldNotBeSetToTrue() {
-				var filterCriteria = mapFilterCriteria(FilterCriteriaTestFactory.createBuilder().hasNextWiedervorlageFrist(true).build());
+				var filterCriteria = createFilterBy(FilterCriteriaTestFactory.createBuilder().hasNextWiedervorlageFrist(true).build());
 
 				assertThat(filterCriteria.getHasNextWiedervorlageFrist()).isTrue();
 			}
 		}
 
-		private GrpcFilterBy mapFilterCriteria() {
-			return mapFilterCriteria(FilterCriteriaTestFactory.create());
+		private GrpcFilterBy createFilterBy() {
+			return createFilterBy(FilterCriteriaTestFactory.create());
 		}
 
-		private GrpcFilterBy mapFilterCriteria(FilterCriteria filterCriteria) {
-			return service.mapFilterCriteria(filterCriteria);
+		private GrpcFilterBy createFilterBy(FilterCriteria filterCriteria) {
+			return service.createFilterBy(filterCriteria);
 		}
 	}
 
@@ -300,14 +373,14 @@ class VorgangRemoteServiceTest {
 				when(serviceStub.findVorgangWithEingang(any()))
 						.thenReturn(GrpcVorgangWithEingangResponseTestFactory.createVorgangWithEingangResponse());
 				when(vorgangWithEingangMapper.toVorgangWithEingang(any())).thenReturn(vorgangWithEingang);
-				doReturn(filterBy).when(service).mapFilterCriteria(any());
+				doReturn(filterBy).when(service).createFilterBy(any());
 			}
 
 			@Test
 			void shouldCreateFilterBy() {
 				callService();
 
-				verify(service).mapFilterCriteria(any());
+				verify(service).createFilterBy(any());
 			}
 
 			@Test
@@ -345,7 +418,7 @@ class VorgangRemoteServiceTest {
 
 			@BeforeEach
 			void mockReturnValue() {
-				doReturn(filterBy).when(service).mapFilterCriteria(any());
+				doReturn(filterBy).when(service).createFilterBy(any());
 			}
 
 			@Test