def METHOD_NAME(client, index_pattern):
    """
    Calls index GET to retrieve mapping + settings, filtering settings
    so they can be used to re-create this index
    :param client: Elasticsearch client
    :param index_pattern: name of index
    :return: index creation dictionary
    """
    results = {}
    logger = logging.getLogger(__name__)
    # the response might contain multiple indices if a wildcard was provided
    response = client.indices.get(index=index_pattern, params={"expand_wildcards": "all"})
    for index, details in response.items():
        valid, reason = is_valid(index, index_pattern)
        if valid:
            mappings = details["mappings"]
            index_settings = filter_ephemeral_index_settings(details["settings"]["index"])
            update_index_setting_parameters(index_settings)
            results[index] = {"mappings": mappings, "settings": {"index": index_settings}}
        else:
            logger.info("Skipping index [%s] (reason: %s).", index, reason)
    return results