---
type: api
title: Get mapping definitions
description: **All methods and paths for this operation:**
url: https://www.elastic.co/elastic/docs-builder/docs/4493/api/doc/elasticsearch/v9/operation/operation-indices-get-field-mapping
resource: https://www.elastic.co/elastic/docs-builder/docs/4493/api/doc/elasticsearch/v9/operation/operation-indices-get-field-mapping
products:
  - Elasticsearch
---

# Get mapping definitions


## Paths

- `GET` `/{index}/_mapping/field/{fields}`
- `GET` `/_mapping/field/{fields}`

#### Path parameters

- `index` (union string | string[]) — optional, leave it out to use `/_mapping/field/{fields}`
  Comma-separated list of data streams, indices, and aliases used to limit the request.
Supports wildcards (`*`).
To target all data streams and indices, omit this parameter or use `*` or `_all`.
- `fields` (union string | string[]) — required
  Comma-separated list or wildcard expression of fields used to limit returned information.
Supports wildcards (`*`).

## Description

Retrieves mapping definitions for one or more fields.
For data streams, the API retrieves field mappings for the stream’s backing indices.

This API is useful if you don't need a complete mapping or if an index mapping contains a large number of fields.

## Required authorization

- Index privileges: `view_index_metadata`

## Authentication

- Api key: `Authorization: <value>`
  Elasticsearch APIs support key-based authentication.
  You must create an API key and use the encoded value in the request header.
  For example:
  
  
  ```
  curl -X GET "${ES_URL}/_cat/indices?v=true" \
    -H "Authorization: ApiKey ${API_KEY}"
  ```
  
  To get API keys, use the `/_security/api_key` APIs.
- Basic: `Authorization: Basic <credentials>`
- Bearer: `Authorization: Bearer <token>`
  Elasticsearch APIs support the use of bearer tokens in the `Authorization` HTTP header to authenticate with the API.
  For examples, refer to [Token-based authentication services](https://www.elastic.co/docs/deploy-manage/users-roles/cluster-or-deployment-auth/token-based-authentication-services)

## Query string parameters

- `allow_no_indices` (boolean · default: true) — optional
  A setting that does two separate checks on the index expression.
If `false`, the request returns an error (1) if any wildcard expression
(including `_all` and `*`) resolves to zero matching indices or (2) if the
complete set of resolved indices, aliases or data streams is empty after all
expressions are evaluated. If `true`, index expressions that resolve to no
indices are allowed and the request returns an empty result.
- `expand_wildcards` (string · default: open) — optional
  Type of index that wildcard patterns can match.
If the request can target data streams, this argument determines whether wildcard expressions match hidden data streams.
Supports comma-separated values, such as `open,hidden`.

Supported values include:
  - `all`: Match any data stream or index, including hidden ones.
  - `open`: Match open, non-hidden indices. Also matches any non-hidden data stream.
  - `closed`: Match closed, non-hidden indices. Also matches any non-hidden data stream. Data streams cannot be closed.
  - `hidden`: Match hidden data streams and hidden indices. Must be combined with `open`, `closed`, or `both`.
  - `none`: Wildcard expressions are not accepted.
  Values: `all`, `open`, `closed`, `hidden`, `none`
- `ignore_unavailable` (boolean · default: false) — optional
  If `false`, the request returns an error if it targets a concrete (non-wildcarded)
index, alias, or data stream that is missing, closed, or otherwise unavailable.
If `true`, unavailable concrete targets are silently ignored.
- `include_defaults` (boolean · default: false) — optional
  If `true`, return all default settings in the response.

## Response

`application/json`

- `<string>` (object)
  - `mappings` (map string to object)
    Map values (object)
    - `full_name` (string)
    - `mapping` (map string to oneOf · min properties: 1 · max properties: 1)
## Code examples

#### Console

```console
GET publications/_mapping/field/title
```

#### JavaScript

```javascript
const response = await client.indices.getFieldMapping({
  index: "publications",
  fields: "title",
});
```

#### Python

```python
resp = client.indices.get_field_mapping(
    index="publications",
    fields="title",
)
```

#### curl

```curl
curl -X GET "$ELASTICSEARCH_URL/publications/_mapping/field/title" \
  -H "Authorization: ApiKey $ELASTIC_API_KEY"
```

#### Java

```java
client.indices().getFieldMapping(g -> g
    .fields("title")
    .index("publications")
);
```

#### C#

```c#
var response = await client.Indices
    .GetFieldMappingAsync(new GetFieldMappingRequest()
    {
        Fields = global::Elastic.Clients.Elasticsearch.Infer.Fields<MyDocument>(x => x.Title),
        Indices = new[] { "publications" }
    });
```

#### PHP

```php
$resp = $client->indices()->getFieldMapping([
    "index" => "publications",
    "fields" => "title",
]);
```

#### Ruby

```ruby
response = client.indices.get_field_mapping(
  index: "publications",
  fields: "title"
)
```

## Response examples

#### A single field mapping

A sucessful response from `GET publications/_mapping/field/title`, which returns the mapping of a field called `title`.

```json
{
   "publications": {
      "mappings": {
          "title": {
             "full_name": "title",
             "mapping": {
                "title": {
                   "type": "text"
                }
             }
          }
       }
   }
}
```

#### Multiple field mappings

A successful response from `GET publications/_mapping/field/author.id,abstract,name`. The get field mapping API also supports wildcard notation.

```json
{
   "publications": {
      "mappings": {
        "author.id": {
           "full_name": "author.id",
           "mapping": {
              "id": {
                 "type": "text"
              }
           }
        },
        "abstract": {
           "full_name": "abstract",
           "mapping": {
              "abstract": {
                 "type": "text"
              }
           }
        }
     }
   }
}
```

#### Wildcards

A successful response from `GET publications/_mapping/field/a*`.

```json
{
   "publications": {
      "mappings": {
         "author.name": {
            "full_name": "author.name",
            "mapping": {
               "name": {
                 "type": "text"
               }
            }
         },
         "abstract": {
            "full_name": "abstract",
            "mapping": {
               "abstract": {
                  "type": "text"
               }
            }
         },
         "author.id": {
            "full_name": "author.id",
            "mapping": {
               "id": {
                  "type": "text"
               }
            }
         }
      }
   }
}
```

