Link Search Menu Expand Document Documentation Menu

Geopoint field type

A geopoint field type contains a geographic point specified by latitude and longitude.

Example

Create a mapping with a geopoint field type:

PUT testindex1
{
  "mappings": {
    "properties": {
      "point": {
        "type": "geo_point"
      }
    }
  }
}

Formats

Geopoints can be indexed in the following formats:

  • An object with a latitude and longitude
PUT testindex1/_doc/1
{
  "point": { 
    "lat": 40.71,
    "lon": 74.00
  }
}

  • A string in the “latitude,longitude” format
PUT testindex1/_doc/2
{
  "point": "40.71,74.00" 
}

  • A geohash
PUT testindex1/_doc/3
{
  "point": "txhxegj0uyp3"
}

  • An array in the [longitude, latitude] format
PUT testindex1/_doc/4
{
  "point": [74.00, 40.71] 
}

PUT testindex1/_doc/5
{
  "point": "POINT (74.00 40.71)"
}

  • GeoJSON format, where the coordinates are in the [longitude, latitude] format
PUT testindex1/_doc/6
{
  "point": {
    "type": "Point",
    "coordinates": [74.00, 40.71]
  }
}

Parameters

The following table lists the parameters accepted by geopoint field types. All parameters are optional.

Parameter Description
ignore_malformed A Boolean value that specifies to ignore malformed values and not to throw an exception. Valid values for latitude are [-90, 90]. Valid values for longitude are [-180, 180]. Default is false.
ignore_z_value Specific to points with three coordinates. If ignore_z_value is true, the third coordinate is not indexed but is still stored in the _source field. If ignore_z_value is false, an exception is thrown.
null_value A value to be used in place of null. Must be of the same type as the field. If this parameter is not specified, the field is treated as missing when its value is null. Default is null.