diff --git a/provider/search-aws/src/main/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtils.java b/provider/search-aws/src/main/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtils.java
index 4a73d566e4b8fad608fa8d90bb54337e99605b8d..b6924bf5804849c67a31c9431b4a35c563df9912 100644
--- a/provider/search-aws/src/main/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtils.java
+++ b/provider/search-aws/src/main/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtils.java
@@ -52,19 +52,21 @@ public class AwsCrossTenantUtils extends CrossTenantUtils {
                 builder.append(alias);
             }
             else {
-                String index = this.elasticIndexNameResolver.getIndexNameFromKind(kind);
-                String[] indexArr = index.split("-");
-                if (indexArr[0].equalsIgnoreCase("*")) {
-                    indexArr[0] = dpsHeaders.getPartitionId();
+                String[] kindArr = kind.split(":");
+                if (kindArr[0].equalsIgnoreCase("*")) {
+                    kindArr[0] = dpsHeaders.getPartitionId();
                 }
-                else if (indexArr[0].equalsIgnoreCase(dpsHeaders.getPartitionId()) == false) {
+                else if (kindArr[0].equalsIgnoreCase(dpsHeaders.getPartitionId()) == false) {
                     throw new BadRequestException("Invalid kind in search request.");
                 }
-                builder.append(String.join("-", indexArr));
+                String newKind = String.join(":", kindArr);
+                String index = this.elasticIndexNameResolver.getIndexNameFromKind(newKind);
+                builder.append(index);
             }
             builder.append(",");
         }
         builder.append("-.*"); // Exclude Lucene/ElasticSearch internal indices
         return builder.toString();
     }
+
 }
diff --git a/provider/search-aws/src/test/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtilsTest.java b/provider/search-aws/src/test/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtilsTest.java
index 442cc2ed03a020fc7b4bec0f9a6d748ba3c181c9..c13c5ac15fbbb509de7a2b666ce54d761a6b7f0e 100644
--- a/provider/search-aws/src/test/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtilsTest.java
+++ b/provider/search-aws/src/test/java/org/opengroup/osdu/search/provider/aws/util/AwsCrossTenantUtilsTest.java
@@ -48,6 +48,19 @@ public class AwsCrossTenantUtilsTest {
         assertEquals(INDEX_NAME, awsCrossTenantUtils.getIndexName(searchRequest));
     }
 
+    @Test
+    public void should_return_IndexNameWithHyphen_when_partitionIdAndKindMatches() {
+        String DATA_PARTITION_ID = "tenant-1";
+        String KIND = "tenant-1:*:*:*";
+        String INDEX = KIND.replace(":", "-");
+        String INDEX_NAME = String.format("%s,%s", INDEX, "-.*");
+        when(dpsHeaders.getPartitionId()).thenReturn(DATA_PARTITION_ID);
+        when(searchRequest.getKind()).thenReturn(KIND);
+        when(elasticIndexNameResolver.getIndexNameFromKind(KIND)).thenReturn(INDEX);
+
+        assertEquals(INDEX_NAME, awsCrossTenantUtils.getIndexName(searchRequest));
+    }
+
     @Test
     public void should_return_alias_when_searchingHundredSameKindsAndKindMatches() {
         Integer KIND_COUNT = 300;
@@ -88,7 +101,7 @@ public class AwsCrossTenantUtilsTest {
         String DATA_PARTITION_ID = "tenant1";
         String KIND = "*:*:*:*";
         String TENANT_KIND = "tenant1:*:*:*";
-        String INDEX = KIND.replace(":", "-");
+        String INDEX = TENANT_KIND.replace(":", "-");
         List<String> KINDS = Collections.nCopies(KIND_COUNT, KIND);
         String ALIAS = String.format("a%d", TENANT_KIND.hashCode());
         Map<String, String> ALIAS_MAP = new HashMap<>();
@@ -111,7 +124,7 @@ public class AwsCrossTenantUtilsTest {
 
         when(dpsHeaders.getPartitionId()).thenReturn(DATA_PARTITION_ID);
         when(searchRequest.getKind()).thenReturn(HUNDREDS_KINDS);
-        when(elasticIndexNameResolver.getIndexNameFromKind(KIND)).thenReturn(INDEX);
+        when(elasticIndexNameResolver.getIndexNameFromKind(TENANT_KIND)).thenReturn(INDEX);
         when(indexAliasService.getIndicesAliases(KINDS)).thenReturn(ALIAS_MAP);
 
         assertEquals(INDEX_NAME, awsCrossTenantUtils.getIndexName(searchRequest));
@@ -121,11 +134,12 @@ public class AwsCrossTenantUtilsTest {
     public void should_return_PartitionIdIndexName_when_searchingAllKinds() {
         String DATA_PARTITION_ID = "tenant1";
         String KIND = "*:*:*:*";
-        String INDEX = KIND.replace(":", "-");
+        String TENANT_KIND = "tenant1:*:*:*";
+        String INDEX = TENANT_KIND.replace(":", "-");
         String INDEX_NAME = String.format("%s%s,%s", DATA_PARTITION_ID, "-*-*-*", "-.*");
         when(dpsHeaders.getPartitionId()).thenReturn(DATA_PARTITION_ID);
         when(searchRequest.getKind()).thenReturn(KIND);
-        when(elasticIndexNameResolver.getIndexNameFromKind(KIND)).thenReturn(INDEX);
+        when(elasticIndexNameResolver.getIndexNameFromKind(TENANT_KIND)).thenReturn(INDEX);
 
         assertEquals(INDEX_NAME, awsCrossTenantUtils.getIndexName(searchRequest));
     }
@@ -138,7 +152,6 @@ public class AwsCrossTenantUtilsTest {
         String INDEX_NAME = String.format("%s,%s", INDEX, "-.*");
         when(dpsHeaders.getPartitionId()).thenReturn(DATA_PARTITION_ID);
         when(searchRequest.getKind()).thenReturn(KIND);
-        when(elasticIndexNameResolver.getIndexNameFromKind(KIND)).thenReturn(INDEX);
 
         awsCrossTenantUtils.getIndexName(searchRequest); // Should throw an exception.
     }