Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

AWS::Location Construct Library

---

cdk-constructs: Experimental

The APIs of higher level constructs in this module are experimental and under active development. They are subject to non-backward compatible changes or removal in any future version. These are not subject to the Semantic Versioning model and breaking changes will be announced in the release notes. This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package.


This module is part of the AWS Cloud Development Kit project.

Amazon Location Service lets you add location data and functionality to applications, which includes capabilities such as maps, points of interest, geocoding, routing, geofences, and tracking. Amazon Location provides location-based services (LBS) using high-quality data from global, trusted providers Esri and HERE. With affordable data, tracking and geofencing capabilities, and built-in metrics for health monitoring, you can build sophisticated location-enabled applications.

Geofence Collection

Geofence collection resources allow you to store and manage geofences—virtual boundaries on a map. You can evaluate locations against a geofence collection resource and get notifications when the location update crosses the boundary of any of the geofences in the geofence collection.

# key: kms.Key


location.GeofenceCollection(self, "GeofenceCollection",
    geofence_collection_name="MyGeofenceCollection",  # optional, defaults to a generated name
    kms_key=key
)

Use the grant() or grantRead() method to grant the given identity permissions to perform actions on the geofence collection:

# role: iam.Role


geofence_collection = location.GeofenceCollection(self, "GeofenceCollection",
    geofence_collection_name="MyGeofenceCollection"
)

geofence_collection.grant_read(role)

Tracker

A tracker stores position updates for a collection of devices. The tracker can be used to query the devices' current location or location history. It stores the updates, but reduces storage space and visual noise by filtering the locations before storing them.

For more information, see Trackers.

To create a tracker, define a Tracker:

# key: kms.Key


location.Tracker(self, "Tracker",
    tracker_name="MyTracker",  # optional, defaults to a generated name
    kms_key=key
)

Use the grant(), grantUpdateDevicePositions() or grantRead() method to grant the given identity permissions to perform actions on the geofence collection:

# role: iam.Role


tracker = location.Tracker(self, "Tracker",
    tracker_name="MyTracker"
)

tracker.grant_read(role)

If you want to associate a tracker with geofence collections, define a geofenceCollections property or use the addGeofenceCollections() method.

# geofence_collection: location.GeofenceCollection
# geofence_collection_for_add: location.GeofenceCollection
# tracker: location.Tracker


tracker = location.Tracker(self, "Tracker",
    tracker_name="MyTracker",
    geofence_collections=[geofence_collection]
)

tracker.add_geofence_collections(geofence_collection_for_add)

API key

API keys are a key value that is associated with specific Amazon Location Service resources or API in your AWS account, and specific actions that you can perform on those resources. You can use an API key in your application to make unauthenticated calls to the Amazon Location APIs for those resources.

For more information, see Use API keys to authenticate.

To create an API key, define an ApiKey:

location.ApiKey(self, "APIKeyAny",
    # specify allowed actions
    allow_maps_actions=[location.AllowMapsAction.GET_STATIC_MAP
    ],
    allow_places_actions=[location.AllowPlacesAction.GET_PLACE
    ],
    allow_routes_actions=[location.AllowRoutesAction.CALCULATE_ISOLINES
    ]
)

Note: ApiKey construct only supports Enhanced Places, Routes, and Maps This API key grants access to AWS-managed Places, Routes, and Maps.

Legacy Resources

AWS has released new Enhanced Places, Routes, and Maps. Since these use AWS-managed resources, users no longer need to create Maps, Places, and Routes resources themselves.

As a result, the following constructs are now considered legacy.

For more information, see developer guide.

Map

The Amazon Location Service Map resource gives you access to the underlying basemap data for a map. You use the Map resource with a map rendering library to add an interactive map to your application. You can add other functionality to your map, such as markers (or pins), routes, and polygon areas, as needed for your application.

For information about how to use map resources in practice, see Using Amazon Location Maps in your application.

To create a map, define a Map:

location.Map(self, "Map",
    map_name="my-map",
    style=location.Style.VECTOR_ESRI_NAVIGATION,
    custom_layers=[location.CustomLayer.POI]
)

Use the grant() or grantRendering() method to grant the given identity permissions to perform actions on the map:

# role: iam.Role


map = location.Map(self, "Map",
    style=location.Style.VECTOR_ESRI_NAVIGATION
)
map.grant_rendering(role)

Place Index

A key function of Amazon Location Service is the ability to search the geolocation information. Amazon Location provides this functionality via the Place index resource. The place index includes which data provider to use for the search.

To create a place index, define a PlaceIndex:

location.PlaceIndex(self, "PlaceIndex",
    place_index_name="MyPlaceIndex",  # optional, defaults to a generated name
    data_source=location.DataSource.HERE
)

Use the grant() or grantSearch() method to grant the given identity permissions to perform actions on the place index:

# role: iam.Role


place_index = location.PlaceIndex(self, "PlaceIndex")
place_index.grant_search(role)

Route Calculator

Route calculator resources allow you to find routes and estimate travel time based on up-to-date road network and live traffic information from your chosen data provider.

For more information, see Routes.

To create a route calculator, define a RouteCalculator:

location.RouteCalculator(self, "RouteCalculator",
    route_calculator_name="MyRouteCalculator",  # optional, defaults to a generated name
    data_source=location.DataSource.ESRI
)

Use the grant() or grantRead() method to grant the given identity permissions to perform actions on the route calculator:

# role: iam.Role


route_calculator = location.RouteCalculator(self, "RouteCalculator",
    data_source=location.DataSource.ESRI
)
route_calculator.grant_read(role)

Metadata

Release files for aws-cdk.aws-location-alpha 2.275.0a0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aws-cdk.aws-location-alpha 2.275.0a0
File Size Uploaded Provenance Actions
aws_cdk_aws_location_alpha-2.275.0a0.tar.gz 128.3 kB Without provenance Details for aws_cdk_aws_location_alpha-2.275.0a0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aws-cdk.aws-location-alpha 2.275.0a0
File Interpreter ABI Platform Actions
aws_cdk_aws_location_alpha-2.275.0a0-py3-none-any.whl Python 3 none any Details for aws_cdk_aws_location_alpha-2.275.0a0-py3-none-any.whl

Total release size: 256.2 kB

Release files / aws_cdk_aws_location_alpha-2.275.0a0.tar.gz

Download URL aws_cdk_aws_location_alpha-2.275.0a0.tar.gz
Size 128.3 kB
Tags Source
SHA-256 checksum
How to use checksums
bed71be97834648f8e27862852e05ce088627ecc1e7f07f2fcf494f94ebb2b0c
BLAKE2b-256 checksum
How to use checksums
4d63c09bcd103905d4bca126b439ef6516dc84295def1c32389a758c3989b2a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.17

Release files / aws_cdk_aws_location_alpha-2.275.0a0-py3-none-any.whl

Download URL aws_cdk_aws_location_alpha-2.275.0a0-py3-none-any.whl
Size 127.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
48e079ddeffb5ef66c31b48e3143873482e77e34f774e6d0a3dfc5a1a2a8b78b
BLAKE2b-256 checksum
How to use checksums
c08ee4216a9fadee5ced6183793b08ec3927b40683f7e99c4c27f23ae9bb5916
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.17

Security for aws-cdk.aws-location-alpha 2.275.0a0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page