Amazon Location Service

2022/09/27 - Amazon Location Service - 1 new 3 updated api methods

Changes  This release adds place IDs, which are unique identifiers of places, along with a new GetPlace operation, which can be used with place IDs to find a place again later. UnitNumber and UnitType are also added as new properties of places.

GetPlace (new) Link ¶

Finds a place by its unique ID. A PlaceId is returned by other search operations.

Note

A PlaceId is valid only if all of the following are the same in the original search request and the call to GetPlace .

  • Customer AWS account

  • AWS Region

  • Data provider specified in the place index resource

See also: AWS API Documentation

Request Syntax

client.get_place(
    IndexName='string',
    Language='string',
    PlaceId='string'
)
type IndexName

string

param IndexName

[REQUIRED]

The name of the place index resource that you want to use for the search.

type Language

string

param Language

The preferred language used to return results. The value must be a valid BCP 47 language tag, for example, en for English.

This setting affects the languages used in the results, but not the results themselves. If no language is specified, or not supported for a particular result, the partner automatically chooses a language for the result.

For an example, we'll use the Greek language. You search for a location around Athens, Greece, with the language parameter set to en . The city in the results will most likely be returned as Athens .

If you set the language parameter to el , for Greek, then the city in the results will more likely be returned as Αθήνα .

If the data provider does not have a value for Greek, the result will be in a language that the provider does support.

type PlaceId

string

param PlaceId

[REQUIRED]

The identifier of the place to find.

rtype

dict

returns

Response Syntax

{
    'Place': {
        'AddressNumber': 'string',
        'Country': 'string',
        'Geometry': {
            'Point': [
                123.0,
            ]
        },
        'Interpolated': True|False,
        'Label': 'string',
        'Municipality': 'string',
        'Neighborhood': 'string',
        'PostalCode': 'string',
        'Region': 'string',
        'Street': 'string',
        'SubRegion': 'string',
        'TimeZone': {
            'Name': 'string',
            'Offset': 123
        },
        'UnitNumber': 'string',
        'UnitType': 'string'
    }
}

Response Structure

  • (dict) --

    • Place (dict) --

      Details about the result, such as its address and position.

      • AddressNumber (string) --

        The numerical portion of an address, such as a building number.

      • Country (string) --

        A country/region specified using ISO 3166 3-digit country/region code. For example, CAN .

      • Geometry (dict) --

        Places uses a point geometry to specify a location or a Place.

        • Point (list) --

          A single point geometry specifies a location for a Place using WGS 84 coordinates:

          • x — Specifies the x coordinate or longitude.

          • y — Specifies the y coordinate or latitude.

          • (float) --

      • Interpolated (boolean) --

        True if the result is interpolated from other known places.

        False if the Place is a known place.

        Not returned when the partner does not provide the information.

        For example, returns False for an address location that is found in the partner data, but returns True if an address does not exist in the partner data and its location is calculated by interpolating between other known addresses.

      • Label (string) --

        The full name and address of the point of interest such as a city, region, or country. For example, 123 Any Street, Any Town, USA .

      • Municipality (string) --

        A name for a local area, such as a city or town name. For example, Toronto .

      • Neighborhood (string) --

        The name of a community district. For example, Downtown .

      • PostalCode (string) --

        A group of numbers and letters in a country-specific format, which accompanies the address for the purpose of identifying a location.

      • Region (string) --

        A name for an area or geographical division, such as a province or state name. For example, British Columbia .

      • Street (string) --

        The name for a street or a road to identify a location. For example, Main Street .

      • SubRegion (string) --

        A country, or an area that's part of a larger region. For example, Metro Vancouver .

      • TimeZone (dict) --

        The time zone in which the Place is located. Returned only when using Here as the selected partner.

        • Name (string) --

          The name of the time zone, following the IANA time zone standard. For example, America/Los_Angeles .

        • Offset (integer) --

          The time zone's offset, in seconds, from UTC.

      • UnitNumber (string) --

        For addresses with multiple units, the unit identifier. Can include numbers and letters, for example 3B or Unit 123 .

        Note

        Returned only for a place index that uses Esri as a data provider. Is not returned for SearchPlaceIndexForPosition .

      • UnitType (string) --

        For addresses with a UnitNumber , the type of unit. For example, Apartment .

SearchPlaceIndexForPosition (updated) Link ¶
Changes (response)
{'Results': {'Place': {'UnitNumber': 'string', 'UnitType': 'string'},
             'PlaceId': 'string'}}

Reverse geocodes a given coordinate and returns a legible address. Allows you to search for Places or points of interest near a given position.

See also: AWS API Documentation

Request Syntax

client.search_place_index_for_position(
    IndexName='string',
    Language='string',
    MaxResults=123,
    Position=[
        123.0,
    ]
)
type IndexName

string

param IndexName

[REQUIRED]

The name of the place index resource you want to use for the search.

type Language

string

param Language

The preferred language used to return results. The value must be a valid BCP 47 language tag, for example, en for English.

This setting affects the languages used in the results, but not the results themselves. If no language is specified, or not supported for a particular result, the partner automatically chooses a language for the result.

For an example, we'll use the Greek language. You search for a location around Athens, Greece, with the language parameter set to en . The city in the results will most likely be returned as Athens .

If you set the language parameter to el , for Greek, then the city in the results will more likely be returned as Αθήνα .

If the data provider does not have a value for Greek, the result will be in a language that the provider does support.

type MaxResults

integer

param MaxResults

An optional parameter. The maximum number of results returned per request.

Default value: 50

type Position

list

param Position

[REQUIRED]

Specifies the longitude and latitude of the position to query.

This parameter must contain a pair of numbers. The first number represents the X coordinate, or longitude; the second number represents the Y coordinate, or latitude.

For example, [-123.1174, 49.2847] represents a position with longitude -123.1174 and latitude 49.2847 .

  • (float) --

rtype

dict

returns

Response Syntax

{
    'Results': [
        {
            'Distance': 123.0,
            'Place': {
                'AddressNumber': 'string',
                'Country': 'string',
                'Geometry': {
                    'Point': [
                        123.0,
                    ]
                },
                'Interpolated': True|False,
                'Label': 'string',
                'Municipality': 'string',
                'Neighborhood': 'string',
                'PostalCode': 'string',
                'Region': 'string',
                'Street': 'string',
                'SubRegion': 'string',
                'TimeZone': {
                    'Name': 'string',
                    'Offset': 123
                },
                'UnitNumber': 'string',
                'UnitType': 'string'
            },
            'PlaceId': 'string'
        },
    ],
    'Summary': {
        'DataSource': 'string',
        'Language': 'string',
        'MaxResults': 123,
        'Position': [
            123.0,
        ]
    }
}

Response Structure

  • (dict) --

    • Results (list) --

      Returns a list of Places closest to the specified position. Each result contains additional information about the Places returned.

      • (dict) --

        Contains a search result from a position search query that is run on a place index resource.

        • Distance (float) --

          The distance in meters of a great-circle arc between the query position and the result.

          Note

          A great-circle arc is the shortest path on a sphere, in this case the Earth. This returns the shortest distance between two locations.

        • Place (dict) --

          Details about the search result, such as its address and position.

          • AddressNumber (string) --

            The numerical portion of an address, such as a building number.

          • Country (string) --

            A country/region specified using ISO 3166 3-digit country/region code. For example, CAN .

          • Geometry (dict) --

            Places uses a point geometry to specify a location or a Place.

            • Point (list) --

              A single point geometry specifies a location for a Place using WGS 84 coordinates:

              • x — Specifies the x coordinate or longitude.

              • y — Specifies the y coordinate or latitude.

              • (float) --

          • Interpolated (boolean) --

            True if the result is interpolated from other known places.

            False if the Place is a known place.

            Not returned when the partner does not provide the information.

            For example, returns False for an address location that is found in the partner data, but returns True if an address does not exist in the partner data and its location is calculated by interpolating between other known addresses.

          • Label (string) --

            The full name and address of the point of interest such as a city, region, or country. For example, 123 Any Street, Any Town, USA .

          • Municipality (string) --

            A name for a local area, such as a city or town name. For example, Toronto .

          • Neighborhood (string) --

            The name of a community district. For example, Downtown .

          • PostalCode (string) --

            A group of numbers and letters in a country-specific format, which accompanies the address for the purpose of identifying a location.

          • Region (string) --

            A name for an area or geographical division, such as a province or state name. For example, British Columbia .

          • Street (string) --

            The name for a street or a road to identify a location. For example, Main Street .

          • SubRegion (string) --

            A country, or an area that's part of a larger region. For example, Metro Vancouver .

          • TimeZone (dict) --

            The time zone in which the Place is located. Returned only when using Here as the selected partner.

            • Name (string) --

              The name of the time zone, following the IANA time zone standard. For example, America/Los_Angeles .

            • Offset (integer) --

              The time zone's offset, in seconds, from UTC.

          • UnitNumber (string) --

            For addresses with multiple units, the unit identifier. Can include numbers and letters, for example 3B or Unit 123 .

            Note

            Returned only for a place index that uses Esri as a data provider. Is not returned for SearchPlaceIndexForPosition .

          • UnitType (string) --

            For addresses with a UnitNumber , the type of unit. For example, Apartment .

        • PlaceId (string) --

          The unique identifier of the place. You can use this with the GetPlace operation to find the place again later.

          Note

          For SearchPlaceIndexForPosition operations, the PlaceId is returned only by place indexes that use HERE as a data provider.

    • Summary (dict) --

      Contains a summary of the request. Echoes the input values for Position , Language , MaxResults , and the DataSource of the place index.

      • DataSource (string) --

        The geospatial data provider attached to the place index resource specified in the request. Values can be one of the following:

        • Esri

        • Here

        For more information about data providers, see Amazon Location Service data providers.

      • Language (string) --

        The preferred language used to return results. Matches the language in the request. The value is a valid BCP 47 language tag, for example, en for English.

      • MaxResults (integer) --

        Contains the optional result count limit that is specified in the request.

        Default value: 50

      • Position (list) --

        The position specified in the request.

        • (float) --

SearchPlaceIndexForSuggestions (updated) Link ¶
Changes (response)
{'Results': {'PlaceId': 'string'}}

Generates suggestions for addresses and points of interest based on partial or misspelled free-form text. This operation is also known as autocomplete, autosuggest, or fuzzy matching.

Optional parameters let you narrow your search results by bounding box or country, or bias your search toward a specific position on the globe.

Note

You can search for suggested place names near a specified position by using BiasPosition , or filter results within a bounding box by using FilterBBox . These parameters are mutually exclusive; using both BiasPosition and FilterBBox in the same command returns an error.

See also: AWS API Documentation

Request Syntax

client.search_place_index_for_suggestions(
    BiasPosition=[
        123.0,
    ],
    FilterBBox=[
        123.0,
    ],
    FilterCountries=[
        'string',
    ],
    IndexName='string',
    Language='string',
    MaxResults=123,
    Text='string'
)
type BiasPosition

list

param BiasPosition

An optional parameter that indicates a preference for place suggestions that are closer to a specified position.

If provided, this parameter must contain a pair of numbers. The first number represents the X coordinate, or longitude; the second number represents the Y coordinate, or latitude.

For example, [-123.1174, 49.2847] represents the position with longitude -123.1174 and latitude 49.2847 .

Note

BiasPosition and FilterBBox are mutually exclusive. Specifying both options results in an error.

  • (float) --

type FilterBBox

list

param FilterBBox

An optional parameter that limits the search results by returning only suggestions within a specified bounding box.

If provided, this parameter must contain a total of four consecutive numbers in two pairs. The first pair of numbers represents the X and Y coordinates (longitude and latitude, respectively) of the southwest corner of the bounding box; the second pair of numbers represents the X and Y coordinates (longitude and latitude, respectively) of the northeast corner of the bounding box.

For example, [-12.7935, -37.4835, -12.0684, -36.9542] represents a bounding box where the southwest corner has longitude -12.7935 and latitude -37.4835 , and the northeast corner has longitude -12.0684 and latitude -36.9542 .

Note

FilterBBox and BiasPosition are mutually exclusive. Specifying both options results in an error.

  • (float) --

type FilterCountries

list

param FilterCountries

An optional parameter that limits the search results by returning only suggestions within the provided list of countries.

  • Use the ISO 3166 3-digit country code. For example, Australia uses three upper-case characters: AUS .

  • (string) --

type IndexName

string

param IndexName

[REQUIRED]

The name of the place index resource you want to use for the search.

type Language

string

param Language

The preferred language used to return results. The value must be a valid BCP 47 language tag, for example, en for English.

This setting affects the languages used in the results. If no language is specified, or not supported for a particular result, the partner automatically chooses a language for the result.

For an example, we'll use the Greek language. You search for Athens, Gr to get suggestions with the language parameter set to en . The results found will most likely be returned as Athens, Greece .

If you set the language parameter to el , for Greek, then the result found will more likely be returned as Αθήνα, Ελλάδα .

If the data provider does not have a value for Greek, the result will be in a language that the provider does support.

type MaxResults

integer

param MaxResults

An optional parameter. The maximum number of results returned per request.

The default: 5

type Text

string

param Text

[REQUIRED]

The free-form partial text to use to generate place suggestions. For example, eiffel tow .

rtype

dict

returns

Response Syntax

{
    'Results': [
        {
            'PlaceId': 'string',
            'Text': 'string'
        },
    ],
    'Summary': {
        'BiasPosition': [
            123.0,
        ],
        'DataSource': 'string',
        'FilterBBox': [
            123.0,
        ],
        'FilterCountries': [
            'string',
        ],
        'Language': 'string',
        'MaxResults': 123,
        'Text': 'string'
    }
}

Response Structure

  • (dict) --

    • Results (list) --

      A list of place suggestions that best match the search text.

      • (dict) --

        Contains a place suggestion resulting from a place suggestion query that is run on a place index resource.

        • PlaceId (string) --

          The unique identifier of the place. You can use this with the GetPlace operation to find the place again later.

          Note

          For SearchPlaceIndexForSuggestions operations, the PlaceId is returned by place indexes that use HERE or Esri as data providers.

        • Text (string) --

          The text of the place suggestion, typically formatted as an address string.

    • Summary (dict) --

      Contains a summary of the request. Echoes the input values for BiasPosition , FilterBBox , FilterCountries , Language , MaxResults , and Text . Also includes the DataSource of the place index.

      • BiasPosition (list) --

        Contains the coordinates for the optional bias position specified in the request.

        This parameter contains a pair of numbers. The first number represents the X coordinate, or longitude; the second number represents the Y coordinate, or latitude.

        For example, [-123.1174, 49.2847] represents the position with longitude -123.1174 and latitude 49.2847 .

        • (float) --

      • DataSource (string) --

        The geospatial data provider attached to the place index resource specified in the request. Values can be one of the following:

        • Esri

        • Here

        For more information about data providers, see Amazon Location Service data providers.

      • FilterBBox (list) --

        Contains the coordinates for the optional bounding box specified in the request.

        • (float) --

      • FilterCountries (list) --

        Contains the optional country filter specified in the request.

        • (string) --

      • Language (string) --

        The preferred language used to return results. Matches the language in the request. The value is a valid BCP 47 language tag, for example, en for English.

      • MaxResults (integer) --

        Contains the optional result count limit specified in the request.

      • Text (string) --

        The free-form partial text input specified in the request.

SearchPlaceIndexForText (updated) Link ¶
Changes (response)
{'Results': {'Place': {'UnitNumber': 'string', 'UnitType': 'string'},
             'PlaceId': 'string'}}

Geocodes free-form text, such as an address, name, city, or region to allow you to search for Places or points of interest.

Optional parameters let you narrow your search results by bounding box or country, or bias your search toward a specific position on the globe.

Note

You can search for places near a given position using BiasPosition , or filter results within a bounding box using FilterBBox . Providing both parameters simultaneously returns an error.

Search results are returned in order of highest to lowest relevance.

See also: AWS API Documentation

Request Syntax

client.search_place_index_for_text(
    BiasPosition=[
        123.0,
    ],
    FilterBBox=[
        123.0,
    ],
    FilterCountries=[
        'string',
    ],
    IndexName='string',
    Language='string',
    MaxResults=123,
    Text='string'
)
type BiasPosition

list

param BiasPosition

An optional parameter that indicates a preference for places that are closer to a specified position.

If provided, this parameter must contain a pair of numbers. The first number represents the X coordinate, or longitude; the second number represents the Y coordinate, or latitude.

For example, [-123.1174, 49.2847] represents the position with longitude -123.1174 and latitude 49.2847 .

Note

BiasPosition and FilterBBox are mutually exclusive. Specifying both options results in an error.

  • (float) --

type FilterBBox

list

param FilterBBox

An optional parameter that limits the search results by returning only places that are within the provided bounding box.

If provided, this parameter must contain a total of four consecutive numbers in two pairs. The first pair of numbers represents the X and Y coordinates (longitude and latitude, respectively) of the southwest corner of the bounding box; the second pair of numbers represents the X and Y coordinates (longitude and latitude, respectively) of the northeast corner of the bounding box.

For example, [-12.7935, -37.4835, -12.0684, -36.9542] represents a bounding box where the southwest corner has longitude -12.7935 and latitude -37.4835 , and the northeast corner has longitude -12.0684 and latitude -36.9542 .

Note

FilterBBox and BiasPosition are mutually exclusive. Specifying both options results in an error.

  • (float) --

type FilterCountries

list

param FilterCountries

An optional parameter that limits the search results by returning only places that are in a specified list of countries.

  • Valid values include ISO 3166 3-digit country codes. For example, Australia uses three upper-case characters: AUS .

  • (string) --

type IndexName

string

param IndexName

[REQUIRED]

The name of the place index resource you want to use for the search.

type Language

string

param Language

The preferred language used to return results. The value must be a valid BCP 47 language tag, for example, en for English.

This setting affects the languages used in the results, but not the results themselves. If no language is specified, or not supported for a particular result, the partner automatically chooses a language for the result.

For an example, we'll use the Greek language. You search for Athens, Greece , with the language parameter set to en . The result found will most likely be returned as Athens .

If you set the language parameter to el , for Greek, then the result found will more likely be returned as Αθήνα .

If the data provider does not have a value for Greek, the result will be in a language that the provider does support.

type MaxResults

integer

param MaxResults

An optional parameter. The maximum number of results returned per request.

The default: 50

type Text

string

param Text

[REQUIRED]

The address, name, city, or region to be used in the search in free-form text format. For example, 123 Any Street .

rtype

dict

returns

Response Syntax

{
    'Results': [
        {
            'Distance': 123.0,
            'Place': {
                'AddressNumber': 'string',
                'Country': 'string',
                'Geometry': {
                    'Point': [
                        123.0,
                    ]
                },
                'Interpolated': True|False,
                'Label': 'string',
                'Municipality': 'string',
                'Neighborhood': 'string',
                'PostalCode': 'string',
                'Region': 'string',
                'Street': 'string',
                'SubRegion': 'string',
                'TimeZone': {
                    'Name': 'string',
                    'Offset': 123
                },
                'UnitNumber': 'string',
                'UnitType': 'string'
            },
            'PlaceId': 'string',
            'Relevance': 123.0
        },
    ],
    'Summary': {
        'BiasPosition': [
            123.0,
        ],
        'DataSource': 'string',
        'FilterBBox': [
            123.0,
        ],
        'FilterCountries': [
            'string',
        ],
        'Language': 'string',
        'MaxResults': 123,
        'ResultBBox': [
            123.0,
        ],
        'Text': 'string'
    }
}

Response Structure

  • (dict) --

    • Results (list) --

      A list of Places matching the input text. Each result contains additional information about the specific point of interest.

      Not all response properties are included with all responses. Some properties may only be returned by specific data partners.

      • (dict) --

        Contains a search result from a text search query that is run on a place index resource.

        • Distance (float) --

          The distance in meters of a great-circle arc between the bias position specified and the result. Distance will be returned only if a bias position was specified in the query.

          Note

          A great-circle arc is the shortest path on a sphere, in this case the Earth. This returns the shortest distance between two locations.

        • Place (dict) --

          Details about the search result, such as its address and position.

          • AddressNumber (string) --

            The numerical portion of an address, such as a building number.

          • Country (string) --

            A country/region specified using ISO 3166 3-digit country/region code. For example, CAN .

          • Geometry (dict) --

            Places uses a point geometry to specify a location or a Place.

            • Point (list) --

              A single point geometry specifies a location for a Place using WGS 84 coordinates:

              • x — Specifies the x coordinate or longitude.

              • y — Specifies the y coordinate or latitude.

              • (float) --

          • Interpolated (boolean) --

            True if the result is interpolated from other known places.

            False if the Place is a known place.

            Not returned when the partner does not provide the information.

            For example, returns False for an address location that is found in the partner data, but returns True if an address does not exist in the partner data and its location is calculated by interpolating between other known addresses.

          • Label (string) --

            The full name and address of the point of interest such as a city, region, or country. For example, 123 Any Street, Any Town, USA .

          • Municipality (string) --

            A name for a local area, such as a city or town name. For example, Toronto .

          • Neighborhood (string) --

            The name of a community district. For example, Downtown .

          • PostalCode (string) --

            A group of numbers and letters in a country-specific format, which accompanies the address for the purpose of identifying a location.

          • Region (string) --

            A name for an area or geographical division, such as a province or state name. For example, British Columbia .

          • Street (string) --

            The name for a street or a road to identify a location. For example, Main Street .

          • SubRegion (string) --

            A country, or an area that's part of a larger region. For example, Metro Vancouver .

          • TimeZone (dict) --

            The time zone in which the Place is located. Returned only when using Here as the selected partner.

            • Name (string) --

              The name of the time zone, following the IANA time zone standard. For example, America/Los_Angeles .

            • Offset (integer) --

              The time zone's offset, in seconds, from UTC.

          • UnitNumber (string) --

            For addresses with multiple units, the unit identifier. Can include numbers and letters, for example 3B or Unit 123 .

            Note

            Returned only for a place index that uses Esri as a data provider. Is not returned for SearchPlaceIndexForPosition .

          • UnitType (string) --

            For addresses with a UnitNumber , the type of unit. For example, Apartment .

        • PlaceId (string) --

          The unique identifier of the place. You can use this with the GetPlace operation to find the place again later.

          Note

          For SearchPlaceIndexForText operations, the PlaceId is returned only by place indexes that use HERE as a data provider.

        • Relevance (float) --

          The relative confidence in the match for a result among the results returned. For example, if more fields for an address match (including house number, street, city, country/region, and postal code), the relevance score is closer to 1.

          Returned only when the partner selected is Esri.

    • Summary (dict) --

      Contains a summary of the request. Echoes the input values for BiasPosition , FilterBBox , FilterCountries , Language , MaxResults , and Text . Also includes the DataSource of the place index and the bounding box, ResultBBox , which surrounds the search results.

      • BiasPosition (list) --

        Contains the coordinates for the optional bias position specified in the request.

        This parameter contains a pair of numbers. The first number represents the X coordinate, or longitude; the second number represents the Y coordinate, or latitude.

        For example, [-123.1174, 49.2847] represents the position with longitude -123.1174 and latitude 49.2847 .

        • (float) --

      • DataSource (string) --

        The geospatial data provider attached to the place index resource specified in the request. Values can be one of the following:

        • Esri

        • Here

        For more information about data providers, see Amazon Location Service data providers.

      • FilterBBox (list) --

        Contains the coordinates for the optional bounding box specified in the request.

        • (float) --

      • FilterCountries (list) --

        Contains the optional country filter specified in the request.

        • (string) --

      • Language (string) --

        The preferred language used to return results. Matches the language in the request. The value is a valid BCP 47 language tag, for example, en for English.

      • MaxResults (integer) --

        Contains the optional result count limit specified in the request.

      • ResultBBox (list) --

        The bounding box that fully contains all search results.

        Note

        If you specified the optional FilterBBox parameter in the request, ResultBBox is contained within FilterBBox .

        • (float) --

      • Text (string) --

        The search text specified in the request.