Amazon Location Service

2023/12/12 - Amazon Location Service - 4 updated api methods

Changes  This release 1) adds sub-municipality field in Places API for searching and getting places information, and 2) allows optimizing route calculation based on expected arrival time.

CalculateRoute (updated) Link ¶
Changes (request)
{'ArrivalTime': 'timestamp', 'OptimizeFor': 'FastestRoute | ShortestRoute'}

Calculates a route given the following required parameters: DeparturePosition and DestinationPosition. Requires that you first create a route calculator resource.

By default, a request that doesn't specify a departure time uses the best time of day to travel with the best traffic conditions when calculating the route.

Additional options include:

  • Specifying a departure time using either DepartureTime or DepartNow. This calculates a route based on predictive traffic data at the given time.

  • Specifying a travel mode using TravelMode sets the transportation mode used to calculate the routes. This also lets you specify additional route preferences in CarModeOptions if traveling by Car, or TruckModeOptions if traveling by Truck.

See also: AWS API Documentation

Request Syntax

client.calculate_route(
    ArrivalTime=datetime(2015, 1, 1),
    CalculatorName='string',
    CarModeOptions={
        'AvoidFerries': True|False,
        'AvoidTolls': True|False
    },
    DepartNow=True|False,
    DeparturePosition=[
        123.0,
    ],
    DepartureTime=datetime(2015, 1, 1),
    DestinationPosition=[
        123.0,
    ],
    DistanceUnit='Kilometers'|'Miles',
    IncludeLegGeometry=True|False,
    Key='string',
    OptimizeFor='FastestRoute'|'ShortestRoute',
    TravelMode='Car'|'Truck'|'Walking'|'Bicycle'|'Motorcycle',
    TruckModeOptions={
        'AvoidFerries': True|False,
        'AvoidTolls': True|False,
        'Dimensions': {
            'Height': 123.0,
            'Length': 123.0,
            'Unit': 'Meters'|'Feet',
            'Width': 123.0
        },
        'Weight': {
            'Total': 123.0,
            'Unit': 'Kilograms'|'Pounds'
        }
    },
    WaypointPositions=[
        [
            123.0,
        ],
    ]
)
type ArrivalTime:

datetime

param ArrivalTime:

Specifies the desired time of arrival. Uses the given time to calculate the route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.

type CalculatorName:

string

param CalculatorName:

[REQUIRED]

The name of the route calculator resource that you want to use to calculate the route.

type CarModeOptions:

dict

param CarModeOptions:

Specifies route preferences when traveling by Car, such as avoiding routes that use ferries or tolls.

Requirements: TravelMode must be specified as Car.

  • AvoidFerries (boolean) --

    Avoids ferries when calculating routes.

    Default Value: false

    Valid Values: false | true

  • AvoidTolls (boolean) --

    Avoids tolls when calculating routes.

    Default Value: false

    Valid Values: false | true

type DepartNow:

boolean

param DepartNow:

Sets the time of departure as the current time. Uses the current time to calculate a route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.

Default Value: false

Valid Values: false | true

type DeparturePosition:

list

param DeparturePosition:

[REQUIRED]

The start position for the route. Defined in World Geodetic System (WGS 84) format: [longitude, latitude].

  • For example, [-123.115, 49.285]

Valid Values: [-180 to 180,-90 to 90]

  • (float) --

type DepartureTime:

datetime

param DepartureTime:

Specifies the desired time of departure. Uses the given time to calculate the route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.

  • In ISO 8601 format: YYYY-MM-DDThh:mm:ss.sssZ. For example, 2020–07-2T12:15:20.000Z+01:00

type DestinationPosition:

list

param DestinationPosition:

[REQUIRED]

The finish position for the route. Defined in World Geodetic System (WGS 84) format: [longitude, latitude].

  • For example, [-122.339, 47.615]

Valid Values: [-180 to 180,-90 to 90]

  • (float) --

type DistanceUnit:

string

param DistanceUnit:

Set the unit system to specify the distance.

Default Value: Kilometers

type IncludeLegGeometry:

boolean

param IncludeLegGeometry:

Set to include the geometry details in the result for each path between a pair of positions.

Default Value: false

Valid Values: false | true

type Key:

string

param Key:

The optional API key to authorize the request.

type OptimizeFor:

string

param OptimizeFor:

Specifies the distance to optimize for when calculating a route.

type TravelMode:

string

param TravelMode:

Specifies the mode of transport when calculating a route. Used in estimating the speed of travel and road compatibility. You can choose Car, Truck, Walking, Bicycle or Motorcycle as options for the TravelMode.

The TravelMode you specify also determines how you specify route preferences:

  • If traveling by Car use the CarModeOptions parameter.

  • If traveling by Truck use the TruckModeOptions parameter.

Default Value: Car

type TruckModeOptions:

dict

param TruckModeOptions:

Specifies route preferences when traveling by Truck, such as avoiding routes that use ferries or tolls, and truck specifications to consider when choosing an optimal road.

Requirements: TravelMode must be specified as Truck.

  • AvoidFerries (boolean) --

    Avoids ferries when calculating routes.

    Default Value: false

    Valid Values: false | true

  • AvoidTolls (boolean) --

    Avoids tolls when calculating routes.

    Default Value: false

    Valid Values: false | true

  • Dimensions (dict) --

    Specifies the truck's dimension specifications including length, height, width, and unit of measurement. Used to avoid roads that can't support the truck's dimensions.

    • Height (float) --

      The height of the truck.

      • For example, 4.5.

    • Length (float) --

      The length of the truck.

      • For example, 15.5.

    • Unit (string) --

      Specifies the unit of measurement for the truck dimensions.

      Default Value: Meters

    • Width (float) --

      The width of the truck.

      • For example, 4.5.

  • Weight (dict) --

    Specifies the truck's weight specifications including total weight and unit of measurement. Used to avoid roads that can't support the truck's weight.

    • Total (float) --

      The total weight of the truck.

      • For example, 3500.

    • Unit (string) --

      The unit of measurement to use for the truck weight.

      Default Value: Kilograms

type WaypointPositions:

list

param WaypointPositions:

Specifies an ordered list of up to 23 intermediate positions to include along a route between the departure position and destination position.

  • For example, from the DeparturePosition [-123.115, 49.285], the route follows the order that the waypoint positions are given [[-122.757, 49.0021],[-122.349, 47.620]]

Valid Values: [-180 to 180,-90 to 90]

  • (list) --

    • (float) --

rtype:

dict

returns:

Response Syntax

{
    'Legs': [
        {
            'Distance': 123.0,
            'DurationSeconds': 123.0,
            'EndPosition': [
                123.0,
            ],
            'Geometry': {
                'LineString': [
                    [
                        123.0,
                    ],
                ]
            },
            'StartPosition': [
                123.0,
            ],
            'Steps': [
                {
                    'Distance': 123.0,
                    'DurationSeconds': 123.0,
                    'EndPosition': [
                        123.0,
                    ],
                    'GeometryOffset': 123,
                    'StartPosition': [
                        123.0,
                    ]
                },
            ]
        },
    ],
    'Summary': {
        'DataSource': 'string',
        'Distance': 123.0,
        'DistanceUnit': 'Kilometers'|'Miles',
        'DurationSeconds': 123.0,
        'RouteBBox': [
            123.0,
        ]
    }
}

Response Structure

  • (dict) --

    Returns the result of the route calculation. Metadata includes legs and route summary.

    • Legs (list) --

      Contains details about each path between a pair of positions included along a route such as: StartPosition, EndPosition, Distance, DurationSeconds, Geometry, and Steps. The number of legs returned corresponds to one fewer than the total number of positions in the request.

      For example, a route with a departure position and destination position returns one leg with the positions snapped to a nearby road:

      • The StartPosition is the departure position.

      • The EndPosition is the destination position.

      A route with a waypoint between the departure and destination position returns two legs with the positions snapped to a nearby road:

      • Leg 1: The StartPosition is the departure position . The EndPosition is the waypoint positon.

      • Leg 2: The StartPosition is the waypoint position. The EndPosition is the destination position.

      • (dict) --

        Contains the calculated route's details for each path between a pair of positions. The number of legs returned corresponds to one fewer than the total number of positions in the request.

        For example, a route with a departure position and destination position returns one leg with the positions snapped to a nearby road:

        • The StartPosition is the departure position.

        • The EndPosition is the destination position.

        A route with a waypoint between the departure and destination position returns two legs with the positions snapped to a nearby road:

        • Leg 1: The StartPosition is the departure position . The EndPosition is the waypoint positon.

        • Leg 2: The StartPosition is the waypoint position. The EndPosition is the destination position.

        • Distance (float) --

          The distance between the leg's StartPosition and EndPosition along a calculated route.

          • The default measurement is Kilometers unless the request specifies a DistanceUnit of Miles.

        • DurationSeconds (float) --

          The estimated travel time between the leg's StartPosition and EndPosition. The travel mode and departure time that you specify in the request determines the calculated time.

        • EndPosition (list) --

          The terminating position of the leg. Follows the format [longitude,latitude].

          • (float) --

        • Geometry (dict) --

          Contains the calculated route's path as a linestring geometry.

          • LineString (list) --

            An ordered list of positions used to plot a route on a map.

            The first position is closest to the start position for the leg, and the last position is the closest to the end position for the leg.

            • For example, [[-123.117, 49.284],[-123.115, 49.285],[-123.115, 49.285]]

            • (list) --

              • (float) --

        • StartPosition (list) --

          The starting position of the leg. Follows the format [longitude,latitude].

          • (float) --

        • Steps (list) --

          Contains a list of steps, which represent subsections of a leg. Each step provides instructions for how to move to the next step in the leg such as the step's start position, end position, travel distance, travel duration, and geometry offset.

          • (dict) --

            Represents an element of a leg within a route. A step contains instructions for how to move to the next step in the leg.

            • Distance (float) --

              The travel distance between the step's StartPosition and EndPosition.

            • DurationSeconds (float) --

              The estimated travel time, in seconds, from the step's StartPosition to the EndPosition. . The travel mode and departure time that you specify in the request determines the calculated time.

            • EndPosition (list) --

              The end position of a step. If the position the last step in the leg, this position is the same as the end position of the leg.

              • (float) --

            • GeometryOffset (integer) --

              Represents the start position, or index, in a sequence of steps within the leg's line string geometry. For example, the index of the first step in a leg geometry is 0.

              Included in the response for queries that set IncludeLegGeometry to True.

            • StartPosition (list) --

              The starting position of a step. If the position is the first step in the leg, this position is the same as the start position of the leg.

              • (float) --

    • Summary (dict) --

      Contains information about the whole route, such as: RouteBBox, DataSource, Distance, DistanceUnit, and DurationSeconds.

      • DataSource (string) --

        The data provider of traffic and road network data used to calculate the route. Indicates one of the available providers:

        • Esri

        • Grab

        • Here

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

      • Distance (float) --

        The total distance covered by the route. The sum of the distance travelled between every stop on the route.

      • DistanceUnit (string) --

        The unit of measurement for route distances.

      • DurationSeconds (float) --

        The total travel time for the route measured in seconds. The sum of the travel time between every stop on the route.

      • RouteBBox (list) --

        Specifies a geographical box surrounding a route. Used to zoom into a route when displaying it in a map. For example, [min x, min y, max x, max y].

        The first 2 bbox parameters describe the lower southwest corner:

        • The first bbox position is the X coordinate or longitude of the lower southwest corner.

        • The second bbox position is the Y coordinate or latitude of the lower southwest corner.

        The next 2 bbox parameters describe the upper northeast corner:

        • The third bbox position is the X coordinate, or longitude of the upper northeast corner.

        • The fourth bbox position is the Y coordinate, or latitude of the upper northeast corner.

        • (float) --

GetPlace (updated) Link ¶
Changes (response)
{'Place': {'SubMunicipality': 'string'}}

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

See also: AWS API Documentation

Request Syntax

client.get_place(
    IndexName='string',
    Key='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 Key:

string

param Key:

The optional API key to authorize the request.

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',
        'Categories': [
            'string',
        ],
        'Country': 'string',
        'Geometry': {
            'Point': [
                123.0,
            ]
        },
        'Interpolated': True|False,
        'Label': 'string',
        'Municipality': 'string',
        'Neighborhood': 'string',
        'PostalCode': 'string',
        'Region': 'string',
        'Street': 'string',
        'SubMunicipality': 'string',
        'SubRegion': 'string',
        'SupplementalCategories': [
            '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.

      • Categories (list) --

        The Amazon Location categories that describe this Place.

        For more information about using categories, including a list of Amazon Location categories, see Categories and filtering, in the Amazon Location Service Developer Guide.

        • (string) --

      • 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.

      • SubMunicipality (string) --

        An area that's part of a larger municipality. For example, Blissville is a submunicipality in the Queen County in New York.

      • SubRegion (string) --

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

      • SupplementalCategories (list) --

        Categories from the data provider that describe the Place that are not mapped to any Amazon Location categories.

        • (string) --

      • TimeZone (dict) --

        The time zone in which the Place is located. Returned only when using HERE or Grab 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.

      • UnitType (string) --

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

SearchPlaceIndexForPosition (updated) Link ¶
Changes (response)
{'Results': {'Place': {'SubMunicipality': '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',
    Key='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 Key:

string

param Key:

The optional API key to authorize the request.

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',
                'Categories': [
                    'string',
                ],
                'Country': 'string',
                'Geometry': {
                    'Point': [
                        123.0,
                    ]
                },
                'Interpolated': True|False,
                'Label': 'string',
                'Municipality': 'string',
                'Neighborhood': 'string',
                'PostalCode': 'string',
                'Region': 'string',
                'Street': 'string',
                'SubMunicipality': 'string',
                'SubRegion': 'string',
                'SupplementalCategories': [
                    '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.

        • 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.

          • Categories (list) --

            The Amazon Location categories that describe this Place.

            For more information about using categories, including a list of Amazon Location categories, see Categories and filtering, in the Amazon Location Service Developer Guide.

            • (string) --

          • 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.

          • SubMunicipality (string) --

            An area that's part of a larger municipality. For example, Blissville is a submunicipality in the Queen County in New York.

          • SubRegion (string) --

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

          • SupplementalCategories (list) --

            Categories from the data provider that describe the Place that are not mapped to any Amazon Location categories.

            • (string) --

          • TimeZone (dict) --

            The time zone in which the Place is located. Returned only when using HERE or Grab 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.

          • 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.

    • 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

        • Grab

        • 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) --

SearchPlaceIndexForText (updated) Link ¶
Changes (response)
{'Results': {'Place': {'SubMunicipality': '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.

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,
    ],
    FilterCategories=[
        'string',
    ],
    FilterCountries=[
        'string',
    ],
    IndexName='string',
    Key='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.

  • (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.

  • (float) --

type FilterCategories:

list

param FilterCategories:

A list of one or more Amazon Location categories to filter the returned places. If you include more than one category, the results will include results that match any of the categories listed.

For more information about using categories, including a list of Amazon Location categories, see Categories and filtering, in the Amazon Location Service Developer Guide.

  • (string) --

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 Key:

string

param Key:

The optional API key to authorize the request.

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',
                'Categories': [
                    'string',
                ],
                'Country': 'string',
                'Geometry': {
                    'Point': [
                        123.0,
                    ]
                },
                'Interpolated': True|False,
                'Label': 'string',
                'Municipality': 'string',
                'Neighborhood': 'string',
                'PostalCode': 'string',
                'Region': 'string',
                'Street': 'string',
                'SubMunicipality': 'string',
                'SubRegion': 'string',
                'SupplementalCategories': [
                    'string',
                ],
                'TimeZone': {
                    'Name': 'string',
                    'Offset': 123
                },
                'UnitNumber': 'string',
                'UnitType': 'string'
            },
            'PlaceId': 'string',
            'Relevance': 123.0
        },
    ],
    'Summary': {
        'BiasPosition': [
            123.0,
        ],
        'DataSource': 'string',
        'FilterBBox': [
            123.0,
        ],
        'FilterCategories': [
            'string',
        ],
        '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.

        • 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.

          • Categories (list) --

            The Amazon Location categories that describe this Place.

            For more information about using categories, including a list of Amazon Location categories, see Categories and filtering, in the Amazon Location Service Developer Guide.

            • (string) --

          • 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.

          • SubMunicipality (string) --

            An area that's part of a larger municipality. For example, Blissville is a submunicipality in the Queen County in New York.

          • SubRegion (string) --

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

          • SupplementalCategories (list) --

            Categories from the data provider that describe the Place that are not mapped to any Amazon Location categories.

            • (string) --

          • TimeZone (dict) --

            The time zone in which the Place is located. Returned only when using HERE or Grab 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.

          • 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.

        • 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 or Grab.

    • 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

        • Grab

        • 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) --

      • FilterCategories (list) --

        The optional category filter specified in the request.

        • (string) --

      • 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.

        • (float) --

      • Text (string) --

        The search text specified in the request.