diff --git a/src/main/java/com/tarento/formservice/controllers/FormsController.java b/src/main/java/com/tarento/formservice/controllers/FormsController.java
index 3600f66afe8fda56d99d450be28e1d3fe12be586..cb030106551d13f7e96fde871eab92db2221074d 100644
--- a/src/main/java/com/tarento/formservice/controllers/FormsController.java
+++ b/src/main/java/com/tarento/formservice/controllers/FormsController.java
@@ -102,7 +102,7 @@ public class FormsController {
 		}
 		return ResponseGenerator.successResponse(formsService.getFormById(formId));
 	}
-	
+
 	@PostMapping(value = PathRoutes.FormServiceApi.CREATE_FORM)
 	public String createForm(@RequestBody FormDetail form,
 			@RequestHeader(value = Constants.Parameters.X_USER_INFO, required = false) String xUserInfo)
@@ -533,17 +533,14 @@ public class FormsController {
 		}
 		return ResponseGenerator.failureResponse();
 	}
-	
+
 	@GetMapping(value = PathRoutes.FormServiceApi.GET_ALL_FORM_STATUS)
 	public String getAllFormStatus() throws IOException {
-	    final List<KeyValue> modelList = new ArrayList<>();
-	    for (final Status key : Status.values())
-	        modelList.add(new KeyValue(key.name(), key));
-	    return ResponseGenerator.successResponse(modelList);
+		final List<KeyValue> modelList = new ArrayList<>();
+		for (final Status key : Status.values())
+			modelList.add(new KeyValue(key.name(), key));
+		return ResponseGenerator.successResponse(modelList);
 	}
-	
-	
-	
 
 	@PostMapping(value = PathRoutes.FormServiceApi.GPS_TAGGING)
 	public String gpsTagging(@RequestBody IncomingData incomingData,
@@ -563,7 +560,6 @@ public class FormsController {
 				return ResponseGenerator.successResponse(Boolean.TRUE);
 			}
 		}
-
 		return ResponseGenerator.failureResponse();
 	}
 
diff --git a/src/main/java/com/tarento/formservice/model/AssignApplication.java b/src/main/java/com/tarento/formservice/model/AssignApplication.java
index 9f0cef5558551034d01c12573eb2c28ed7801533..12c1803482ebe46058639fe312a8dad409548b70 100644
--- a/src/main/java/com/tarento/formservice/model/AssignApplication.java
+++ b/src/main/java/com/tarento/formservice/model/AssignApplication.java
@@ -18,15 +18,6 @@ public class AssignApplication {
 	private List<Long> assistingInspector;
 	private List<Long> leadInspector;
 	private Long formId;
-	private List<Long> userId;
-
-	public List<Long> getUserId() {
-		return userId;
-	}
-
-	public void setUserId(List<Long> userId) {
-		this.userId = userId;
-	}
 
 	public List<Long> getAssistingInspector() {
 		return assistingInspector;
diff --git a/src/main/java/com/tarento/formservice/model/SearchRequestDto.java b/src/main/java/com/tarento/formservice/model/SearchRequestDto.java
index 4c5b68f96f289d87011ef77ff81104b07d0e04a6..b54b3a2a7e1fcd755c9e20ed2d8c4ed6659f10af 100644
--- a/src/main/java/com/tarento/formservice/model/SearchRequestDto.java
+++ b/src/main/java/com/tarento/formservice/model/SearchRequestDto.java
@@ -9,6 +9,7 @@ import java.util.List;
 public class SearchRequestDto {
 	private List<SearchObject> searchObjects;
 	private List<SearchObject> excludeObject;
+	private List<SearchObject> filterObjects;
 
 	public List<SearchObject> getSearchObjects() {
 		return searchObjects;
@@ -26,4 +27,12 @@ public class SearchRequestDto {
 		this.excludeObject = excludeObject;
 	}
 
+	public List<SearchObject> getFilterObjects() {
+		return filterObjects;
+	}
+
+	public void setFilterObjects(List<SearchObject> filterObjects) {
+		this.filterObjects = filterObjects;
+	}
+
 }
diff --git a/src/main/java/com/tarento/formservice/service/impl/FormsServiceImpl.java b/src/main/java/com/tarento/formservice/service/impl/FormsServiceImpl.java
index 4474dff297a3c201c39f7e3c6f4835d9a7210c57..d75516860ae534165a9a96b4509115435a4eb173 100644
--- a/src/main/java/com/tarento/formservice/service/impl/FormsServiceImpl.java
+++ b/src/main/java/com/tarento/formservice/service/impl/FormsServiceImpl.java
@@ -694,7 +694,11 @@ public class FormsServiceImpl implements FormsService {
 			SearchRequest searchRequest = new SearchRequest(appConfig.getFormDataIndex())
 					.types(appConfig.getFormIndexType()).source(searchSourceBuilder);
 			LOGGER.info("Search Request : " + searchRequest);
-			return formsDao.searchResponse(searchRequest);
+			List<Map<String, Object>> response = formsDao.searchResponse(searchRequest);
+			if (searchRequestDto != null && searchRequestDto.getFilterObjects() != null) {
+				return filterSearchResults(response, searchRequestDto.getFilterObjects(), userInfo);
+			}
+			return response;
 
 		} catch (Exception e) {
 			LOGGER.error(String.format(Constants.EXCEPTION, "getApplications", e.getMessage()));
@@ -702,6 +706,36 @@ public class FormsServiceImpl implements FormsService {
 		return null;
 	}
 
+	/**
+	 * Add filters in search response
+	 */
+	private List<Map<String, Object>> filterSearchResults(List<Map<String, Object>> response,
+			List<SearchObject> filterObjects, UserInfo userInfo) throws Exception {
+		if (filterObjects != null && filterObjects.size() > 0) {
+			List<Map<String, Object>> filteredResponse = new ArrayList<>();
+			for (SearchObject searchObj : filterObjects) {
+				if (searchObj.getKey().equals(Constants.Parameters.TO_CONSENT)
+						&& searchObj.getValues().equals(Boolean.TRUE)) {
+					for (Map<String, Object> responseObj : response) {
+						IncomingData incomingData = objectMapper.convertValue(responseObj, IncomingData.class);
+						if (incomingData.getInspection() != null
+								&& incomingData.getInspection().getStatus().equals(Status.LEADINSCOMPLETED.name())
+								&& incomingData.getInspection().getAssignedTo() != null) {
+							for (Assignee assignee : incomingData.getInspection().getAssignedTo()) {
+								if (assignee.getId().equals(userInfo.getId())
+										&& StringUtils.isBlank(assignee.getStatus())) {
+									filteredResponse.add(responseObj);
+								}
+							}
+						}
+					}
+				}
+			}
+			return filteredResponse;
+		}
+		return response;
+	}
+
 	private void setRoleBasedSearchObject(UserInfo userInfo, SearchRequestDto searchRequestDto) {
 		if (userInfo != null && userInfo.getRoles() != null) {
 			for (Role role : userInfo.getRoles()) {
@@ -748,39 +782,41 @@ public class FormsServiceImpl implements FormsService {
 	public KeyValueList getApplicationsStatusCount(UserInfo userInfo) {
 		try {
 			// query builder
-			
-			if(userInfo != null && userInfo.getRoles() != null) { 
-				for(Role role : userInfo.getRoles()) { 
-					if(role.getName().equals(Roles.Regulator.name())) { 
+
+			if (userInfo != null && userInfo.getRoles() != null) {
+				for (Role role : userInfo.getRoles()) {
+					if (role.getName().equals(Roles.Regulator.name())) {
 						SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder().size(0);
 						searchSourceBuilder.aggregation(AggregationBuilders.terms("Total Pending")
 								.field(Constants.ElasticSearchFields.MAPPING.get(Constants.STATUS)));
 						SearchRequest searchRequest = new SearchRequest(appConfig.getFormDataIndex())
 								.types(appConfig.getFormIndexType()).source(searchSourceBuilder);
 						LOGGER.info("Search Request : " + searchRequest);
-						List<Map<String, Object>> responseNode = formsDao.searchAggregationResponse(searchRequest, "Total Pending");
+						List<Map<String, Object>> responseNode = formsDao.searchAggregationResponse(searchRequest,
+								"Total Pending");
 						return translateResponse(responseNode);
-					} else { 
-						// Setting all prerequisites 
+					} else {
+						// Setting all prerequisites
 						List<SearchRequest> searchRequestList = new ArrayList<SearchRequest>();
-						List<Map<String, Object>> responseNode = new ArrayList<Map<String,Object>>(); 
-						List<Long> userIdList = new ArrayList<Long>(); 
-						userIdList.add(userInfo.getId()); 
+						List<Map<String, Object>> responseNode = new ArrayList<Map<String, Object>>();
+						List<Long> userIdList = new ArrayList<Long>();
+						userIdList.add(userInfo.getId());
 						Calendar cal = Calendar.getInstance();
 						cal.setTime(new Date());
-						String dateFormat = "" + cal.get(Calendar.YEAR) + "-" + cal.get(Calendar.MONTH + 1) + "-" + cal.get(Calendar.DAY_OF_MONTH);
-						KeyValueList finalList = new KeyValueList(); 
-						List<KeyValue> keyValueList = new ArrayList<>(); 
+						String dateFormat = "" + cal.get(Calendar.YEAR) + "-" + cal.get(Calendar.MONTH + 1) + "-"
+								+ cal.get(Calendar.DAY_OF_MONTH);
+						KeyValueList finalList = new KeyValueList();
+						List<KeyValue> keyValueList = new ArrayList<>();
 						finalList.setKeyValues(keyValueList);
-						
+
 						// Creating Search Request for Total Pending
-						TermsQueryBuilder userIdFilter = QueryBuilders.termsQuery("inspection.leadInspector", userIdList);
-						TermQueryBuilder inspectionStatusFilter = QueryBuilders.termQuery("inspection.status.keyword", "SENTFORINS");
+						TermsQueryBuilder userIdFilter = QueryBuilders.termsQuery("inspection.leadInspector",
+								userIdList);
+						TermQueryBuilder inspectionStatusFilter = QueryBuilders.termQuery("inspection.status.keyword",
+								"SENTFORINS");
 						TermQueryBuilder statusFilter = QueryBuilders.termQuery("status.keyword", "SENTFORINS");
-						BoolQueryBuilder filters = QueryBuilders.boolQuery()
-								   .filter(userIdFilter)
-								   .filter(inspectionStatusFilter)
-								   .filter(statusFilter);
+						BoolQueryBuilder filters = QueryBuilders.boolQuery().filter(userIdFilter)
+								.filter(inspectionStatusFilter).filter(statusFilter);
 						FilterAggregationBuilder totalPendingAggregationFilter = AggregationBuilders
 								.filter("Inspector Total Pending", filters).subAggregation(AggregationBuilders
 										.cardinality("Count").field("inspection.applicationId.keyword"));
@@ -789,15 +825,16 @@ public class FormsServiceImpl implements FormsService {
 						SearchRequest totalPendingSearchRequest = new SearchRequest(appConfig.getFormDataIndex())
 								.types(appConfig.getFormIndexType()).source(totalPendingAggrSourceBuilder);
 						LOGGER.info("Search Request : " + totalPendingSearchRequest);
-						List<Map<String, Object>> totalPendingResponse = formsDao.searchAggregationResponse(totalPendingSearchRequest, "Inspector Total Pending");
+						List<Map<String, Object>> totalPendingResponse = formsDao
+								.searchAggregationResponse(totalPendingSearchRequest, "Inspector Total Pending");
 						KeyValueList list = translateResponse(totalPendingResponse);
-						finalList.getKeyValues().addAll(list.getKeyValues()); 
-						
-						// Creating Search Request for Received Today						
-						TermQueryBuilder assignedDateFilter = QueryBuilders.termQuery("inspection.assignedDate", new Date().getTime());
-						BoolQueryBuilder filters2 = QueryBuilders.boolQuery()
-								   .filter(userIdFilter)
-								   .filter(assignedDateFilter);
+						finalList.getKeyValues().addAll(list.getKeyValues());
+
+						// Creating Search Request for Received Today
+						TermQueryBuilder assignedDateFilter = QueryBuilders.termQuery("inspection.assignedDate",
+								new Date().getTime());
+						BoolQueryBuilder filters2 = QueryBuilders.boolQuery().filter(userIdFilter)
+								.filter(assignedDateFilter);
 						FilterAggregationBuilder receivedTodayAggregationFilter = AggregationBuilders
 								.filter("Received Today", filters2).subAggregation(AggregationBuilders
 										.cardinality("Count").field("inspection.applicationId.keyword"));
@@ -806,17 +843,18 @@ public class FormsServiceImpl implements FormsService {
 						SearchRequest receivedTodaySearchRequest = new SearchRequest(appConfig.getFormDataIndex())
 								.types(appConfig.getFormIndexType()).source(receivedTodayAggrSourceBuilder);
 						LOGGER.info("Search Request : " + receivedTodaySearchRequest);
-						List<Map<String, Object>> receivedTodayResponse = formsDao.searchAggregationResponse(receivedTodaySearchRequest, "Received Today");
+						List<Map<String, Object>> receivedTodayResponse = formsDao
+								.searchAggregationResponse(receivedTodaySearchRequest, "Received Today");
 						list = translateResponse(receivedTodayResponse);
-						finalList.getKeyValues().addAll(list.getKeyValues()); 
-						
+						finalList.getKeyValues().addAll(list.getKeyValues());
+
 						// Creating Search Request for Reviewed Today
-						TermQueryBuilder updatedDateFilter = QueryBuilders.termQuery("inspection.updatedDate", new Date().getTime());
-						TermQueryBuilder inspectionCompletedFilter = QueryBuilders.termQuery("status.keyword", "INSCOMPLETED");
-						BoolQueryBuilder filters3 = QueryBuilders.boolQuery()
-								   .filter(userIdFilter)
-								   .filter(updatedDateFilter)
-								   .filter(inspectionCompletedFilter); 
+						TermQueryBuilder updatedDateFilter = QueryBuilders.termQuery("inspection.updatedDate",
+								new Date().getTime());
+						TermQueryBuilder inspectionCompletedFilter = QueryBuilders.termQuery("status.keyword",
+								"INSCOMPLETED");
+						BoolQueryBuilder filters3 = QueryBuilders.boolQuery().filter(userIdFilter)
+								.filter(updatedDateFilter).filter(inspectionCompletedFilter);
 						FilterAggregationBuilder reviewedTodayAggregationFilter = AggregationBuilders
 								.filter("Reviewed Today", filters3).subAggregation(AggregationBuilders
 										.cardinality("Count").field("inspection.applicationId.keyword"));
@@ -825,18 +863,17 @@ public class FormsServiceImpl implements FormsService {
 						SearchRequest reviewedTodaySearchRequest = new SearchRequest(appConfig.getFormDataIndex())
 								.types(appConfig.getFormIndexType()).source(reviewedTodayAggrSourceBuilder);
 						LOGGER.info("Search Request : " + reviewedTodaySearchRequest);
-						List<Map<String, Object>> reviewedTodayResponse = formsDao.searchAggregationResponse(reviewedTodaySearchRequest, "Reviewed Today");
+						List<Map<String, Object>> reviewedTodayResponse = formsDao
+								.searchAggregationResponse(reviewedTodaySearchRequest, "Reviewed Today");
 						list = translateResponse(reviewedTodayResponse);
 						finalList.getKeyValues().addAll(list.getKeyValues());
-						
-						
-						return finalList; 
-						
+
+						return finalList;
+
 					}
 				}
 			}
-			
-			
+
 		} catch (Exception ex) {
 			LOGGER.error(String.format(Constants.EXCEPTION, "getApplicationsStatusCount", ex.getMessage()));
 		}
@@ -857,14 +894,13 @@ public class FormsServiceImpl implements FormsService {
 		list.setKeyValues(listOfKeyValuePairs);
 		return list;
 	}
-	
+
 	KeyValueList translateInspectorResponse(List<Map<String, Object>> responseNode) {
 		KeyValueList list = new KeyValueList();
 		List<KeyValue> listOfKeyValuePairs = new ArrayList<KeyValue>();
 		for (Map<String, Object> eachMap : responseNode) {
 			List<KeyValue> keyValueList = eachMap.entrySet().stream()
-					.map(entry -> new KeyValue(entry.getKey(), entry.getValue()))
-					.collect(Collectors.toList());
+					.map(entry -> new KeyValue(entry.getKey(), entry.getValue())).collect(Collectors.toList());
 			listOfKeyValuePairs.addAll(keyValueList);
 		}
 		list.setKeyValues(listOfKeyValuePairs);
diff --git a/src/main/java/com/tarento/formservice/utils/Constants.java b/src/main/java/com/tarento/formservice/utils/Constants.java
index a782146a73838cbe347e52b6124a138f34db7c28..9a6dc2ddf3bc976132db5fd464db9d78534137b0 100644
--- a/src/main/java/com/tarento/formservice/utils/Constants.java
+++ b/src/main/java/com/tarento/formservice/utils/Constants.java
@@ -74,6 +74,9 @@ public interface Constants {
 		static final String UPDATED_BY = "updatedBy";
 		static final String UPDATED_DATE = "updatedDate";
 		static final String UPDATED_BY_EMAIL = "updatedByEmail";
+
+		// filters
+		static final String TO_CONSENT = "toConsent";
 	}
 
 	interface WorkflowActions {