private void getMappingByIndex(String indices) throws IOException { GetMappingsRequest getMappingsRequest = new GetMappingsRequest(); getMappingsRequest.indices(indices).types(new String[0]); GetMappingsResponse response = client.admin().indices().getMappings(getMappingsRequest).actionGet(); ImmutableOpenMap<String, ImmutableOpenMap<String, MappingMetaData>> mappingsByIndex = response.getMappings(); for (ObjectObjectCursor<String, ImmutableOpenMap<String, MappingMetaData>> indexEntry : mappingsByIndex) { if (indexEntry.value.isEmpty()) { continue; } System.out.println(indexEntry.key); for (ObjectObjectCursor<String, MappingMetaData> typeEntry : indexEntry.value) { System.out.println((typeEntry.key)); System.out.println(typeEntry.value.sourceAsMap()); } } }