{"note":"OpenAPI conversion -- returning structured metadata","name":"amazonaws-com-location","description":"Amazon Location Service","version":"2020-11-19","base_url":"","endpoints":60,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Amazon Location Service\n@version 2020-11-19\n@auth AWS SigV4\n@endpoints 60\n@hint download_for_search\n@toc tracking(15), geofencing(12), routes(7), metadata(5), maps(9), places(9), tags(3)\n\n@group tracking\n@endpoint POST /tracking/v0/trackers/{TrackerName}/consumers\n@desc Creates an association between a geofence collection and a tracker resource. This allows the tracker resource to communicate location data to the linked geofence collection.  You can associate up to five geofence collections to each tracker resource.  Currently not supported — Cross-account configurations, such as creating associations between a tracker resource in one account and a geofence collection in another account.\n@required {TrackerName: str, ConsumerArn: str}\n\n@endpoint POST /tracking/v0/trackers/{TrackerName}/delete-positions\n@desc Deletes the position history of one or more devices from a tracker resource.\n@required {TrackerName: str, DeviceIds: [str]}\n@returns(200) {Errors: [BatchDeleteDevicePositionHistoryError]}\n\n@endgroup\n\n@group geofencing\n@endpoint POST /geofencing/v0/collections/{CollectionName}/delete-geofences\n@desc Deletes a batch of geofences from a geofence collection.  This operation deletes the resource permanently.\n@required {CollectionName: str, GeofenceIds: [str]}\n@returns(200) {Errors: [BatchDeleteGeofenceError]}\n\n@endpoint POST /geofencing/v0/collections/{CollectionName}/positions\n@desc Evaluates device positions against the geofence geometries from a given geofence collection. This operation always returns an empty response because geofences are asynchronously evaluated. The evaluation determines if the device has entered or exited a geofenced area, and then publishes one of the following events to Amazon EventBridge:    ENTER if Amazon Location determines that the tracked device has entered a geofenced area.    EXIT if Amazon Location determines that the tracked device has exited a geofenced area.    The last geofence that a device was observed within is tracked for 30 days after the most recent device position update.   Geofence evaluation uses the given device position. It does not account for the optional Accuracy of a DevicePositionUpdate.   The DeviceID is used as a string to represent the device. You do not need to have a Tracker associated with the DeviceID.\n@required {CollectionName: str, DevicePositionUpdates: [DevicePositionUpdate]}\n@returns(200) {Errors: [BatchEvaluateGeofencesError]}\n\n@endgroup\n\n@group tracking\n@endpoint POST /tracking/v0/trackers/{TrackerName}/get-positions\n@desc Lists the latest device positions for requested devices.\n@required {TrackerName: str, DeviceIds: [str]}\n@returns(200) {Errors: [BatchGetDevicePositionError], DevicePositions: [DevicePosition]}\n\n@endgroup\n\n@group geofencing\n@endpoint POST /geofencing/v0/collections/{CollectionName}/put-geofences\n@desc A batch request for storing geofence geometries into a given geofence collection, or updates the geometry of an existing geofence if a geofence ID is included in the request.\n@required {CollectionName: str, Entries: [BatchPutGeofenceRequestEntry]}\n@returns(200) {Successes: [BatchPutGeofenceSuccess], Errors: [BatchPutGeofenceError]}\n\n@endgroup\n\n@group tracking\n@endpoint POST /tracking/v0/trackers/{TrackerName}/positions\n@desc Uploads position update data for one or more devices to a tracker resource (up to 10 devices per batch). Amazon Location uses the data when it reports the last known device position and position history. Amazon Location retains location data for 30 days.  Position updates are handled based on the PositionFiltering property of the tracker. When PositionFiltering is set to TimeBased, updates are evaluated against linked geofence collections, and location data is stored at a maximum of one position per 30 second interval. If your update frequency is more often than every 30 seconds, only one update per 30 seconds is stored for each unique device ID. When PositionFiltering is set to DistanceBased filtering, location data is stored and evaluated against linked geofence collections only if the device has moved more than 30 m (98.4 ft). When PositionFiltering is set to AccuracyBased filtering, location data is stored and evaluated against linked geofence collections only if the device has moved more than the measured accuracy. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the second update is neither stored or evaluated if the device has moved less than 15 m. If PositionFiltering is set to AccuracyBased filtering, Amazon Location uses the default value { \"Horizontal\": 0} when accuracy is not provided on a DevicePositionUpdate.\n@required {TrackerName: str, Updates: [DevicePositionUpdate]}\n@returns(200) {Errors: [BatchUpdateDevicePositionError]}\n\n@endgroup\n\n@group routes\n@endpoint POST /routes/v0/calculators/{CalculatorName}/calculate/route\n@desc 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.   You can't specify both DepartureTime and DepartNow in a single request. Specifying both parameters returns a validation error.     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.  If you specify walking for the travel mode and your data provider is Esri, the start and destination must be within 40km.\n@required {CalculatorName: str, DeparturePosition: [num(f64)], DestinationPosition: [num(f64)]}\n@optional {key: str, WaypointPositions: [[num(f64)]], TravelMode: str, DepartureTime: str(timestamp), DepartNow: bool, DistanceUnit: str, IncludeLegGeometry: bool, CarModeOptions: CalculateRouteCarModeOptions, TruckModeOptions: CalculateRouteTruckModeOptions, ArrivalTime: str(timestamp), OptimizeFor: str}\n@returns(200) {Legs: [Leg], Summary: CalculateRouteSummary{RouteBBox: [num(f64)], DataSource: str, Distance: num(f64), DurationSeconds: num(f64), DistanceUnit: str}}\n\n@endpoint POST /routes/v0/calculators/{CalculatorName}/calculate/route-matrix\n@desc Calculates a route matrix given the following required parameters: DeparturePositions and DestinationPositions. CalculateRouteMatrix calculates routes and returns the travel time and travel distance from each departure position to each destination position in the request. For example, given departure positions A and B, and destination positions X and Y, CalculateRouteMatrix will return time and distance for routes from A to X, A to Y, B to X, and B to Y (in that order). The number of results returned (and routes calculated) will be the number of DeparturePositions times the number of DestinationPositions.  Your account is charged for each route calculated, not the number of requests.  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 routes. Additional options include:     Specifying a departure time using either DepartureTime or DepartNow. This calculates routes based on predictive traffic data at the given time.   You can't specify both DepartureTime and DepartNow in a single request. Specifying both parameters returns a validation error.     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.\n@required {CalculatorName: str, DeparturePositions: [[num(f64)]], DestinationPositions: [[num(f64)]]}\n@optional {key: str, TravelMode: str, DepartureTime: str(timestamp), DepartNow: bool, DistanceUnit: str, CarModeOptions: CalculateRouteCarModeOptions, TruckModeOptions: CalculateRouteTruckModeOptions}\n@returns(200) {RouteMatrix: [[RouteMatrixEntry]], SnappedDeparturePositions: [[num(f64)]]?, SnappedDestinationPositions: [[num(f64)]]?, Summary: CalculateRouteMatrixSummary{DataSource: str, RouteCount: int, ErrorCount: int, DistanceUnit: str}}\n\n@endgroup\n\n@group geofencing\n@endpoint POST /geofencing/v0/collections\n@desc Creates a geofence collection, which manages and stores geofences.\n@required {CollectionName: str}\n@optional {PricingPlan: str, PricingPlanDataSource: str, Description: str, Tags: map<str,str>, KmsKeyId: str}\n@returns(200) {CollectionName: str, CollectionArn: str, CreateTime: str(timestamp)}\n\n@endgroup\n\n@group metadata\n@endpoint POST /metadata/v0/keys\n@desc Creates an API key resource in your Amazon Web Services account, which lets you grant actions for Amazon Location resources to the API key bearer.  For more information, see Using API keys.\n@required {KeyName: str, Restrictions: ApiKeyRestrictions}\n@optional {Description: str, ExpireTime: str(timestamp), NoExpiry: bool, Tags: map<str,str>}\n@returns(200) {Key: str, KeyArn: str, KeyName: str, CreateTime: str(timestamp)}\n\n@endgroup\n\n@group maps\n@endpoint POST /maps/v0/maps\n@desc Creates a map resource in your Amazon Web Services account, which provides map tiles of different styles sourced from global location data providers.  If your application is tracking or routing assets you use in your business, such as delivery vehicles or employees, you must not use Esri as your geolocation provider. See section 82 of the Amazon Web Services service terms for more details.\n@required {MapName: str, Configuration: MapConfiguration}\n@optional {PricingPlan: str, Description: str, Tags: map<str,str>}\n@returns(200) {MapName: str, MapArn: str, CreateTime: str(timestamp)}\n\n@endgroup\n\n@group places\n@endpoint POST /places/v0/indexes\n@desc Creates a place index resource in your Amazon Web Services account. Use a place index resource to geocode addresses and other text queries by using the SearchPlaceIndexForText operation, and reverse geocode coordinates by using the SearchPlaceIndexForPosition operation, and enable autosuggestions by using the SearchPlaceIndexForSuggestions operation.  If your application is tracking or routing assets you use in your business, such as delivery vehicles or employees, you must not use Esri as your geolocation provider. See section 82 of the Amazon Web Services service terms for more details.\n@required {IndexName: str, DataSource: str}\n@optional {PricingPlan: str, Description: str, DataSourceConfiguration: DataSourceConfiguration, Tags: map<str,str>}\n@returns(200) {IndexName: str, IndexArn: str, CreateTime: str(timestamp)}\n\n@endgroup\n\n@group routes\n@endpoint POST /routes/v0/calculators\n@desc Creates a route calculator resource in your Amazon Web Services account. You can send requests to a route calculator resource to estimate travel time, distance, and get directions. A route calculator sources traffic and road network data from your chosen data provider.  If your application is tracking or routing assets you use in your business, such as delivery vehicles or employees, you must not use Esri as your geolocation provider. See section 82 of the Amazon Web Services service terms for more details.\n@required {CalculatorName: str, DataSource: str}\n@optional {PricingPlan: str, Description: str, Tags: map<str,str>}\n@returns(200) {CalculatorName: str, CalculatorArn: str, CreateTime: str(timestamp)}\n\n@endgroup\n\n@group tracking\n@endpoint POST /tracking/v0/trackers\n@desc Creates a tracker resource in your Amazon Web Services account, which lets you retrieve current and historical location of devices.\n@required {TrackerName: str}\n@optional {PricingPlan: str, KmsKeyId: str, PricingPlanDataSource: str, Description: str, Tags: map<str,str>, PositionFiltering: str, EventBridgeEnabled: bool, KmsKeyEnableGeospatialQueries: bool}\n@returns(200) {TrackerName: str, TrackerArn: str, CreateTime: str(timestamp)}\n\n@endgroup\n\n@group geofencing\n@endpoint DELETE /geofencing/v0/collections/{CollectionName}\n@desc Deletes a geofence collection from your Amazon Web Services account.  This operation deletes the resource permanently. If the geofence collection is the target of a tracker resource, the devices will no longer be monitored.\n@required {CollectionName: str}\n\n@endgroup\n\n@group metadata\n@endpoint DELETE /metadata/v0/keys/{KeyName}\n@desc Deletes the specified API key. The API key must have been deactivated more than 90 days previously.\n@required {KeyName: str}\n@optional {forceDelete: bool}\n\n@endgroup\n\n@group maps\n@endpoint DELETE /maps/v0/maps/{MapName}\n@desc Deletes a map resource from your Amazon Web Services account.  This operation deletes the resource permanently. If the map is being used in an application, the map may not render.\n@required {MapName: str}\n\n@endgroup\n\n@group places\n@endpoint DELETE /places/v0/indexes/{IndexName}\n@desc Deletes a place index resource from your Amazon Web Services account.  This operation deletes the resource permanently.\n@required {IndexName: str}\n\n@endgroup\n\n@group routes\n@endpoint DELETE /routes/v0/calculators/{CalculatorName}\n@desc Deletes a route calculator resource from your Amazon Web Services account.  This operation deletes the resource permanently.\n@required {CalculatorName: str}\n\n@endgroup\n\n@group tracking\n@endpoint DELETE /tracking/v0/trackers/{TrackerName}\n@desc Deletes a tracker resource from your Amazon Web Services account.  This operation deletes the resource permanently. If the tracker resource is in use, you may encounter an error. Make sure that the target resource isn't a dependency for your applications.\n@required {TrackerName: str}\n\n@endgroup\n\n@group geofencing\n@endpoint GET /geofencing/v0/collections/{CollectionName}\n@desc Retrieves the geofence collection details.\n@required {CollectionName: str}\n@returns(200) {CollectionName: str, CollectionArn: str, Description: str, PricingPlan: str?, PricingPlanDataSource: str?, KmsKeyId: str?, Tags: map<str,str>?, CreateTime: str(timestamp), UpdateTime: str(timestamp), GeofenceCount: int?}\n\n@endgroup\n\n@group metadata\n@endpoint GET /metadata/v0/keys/{KeyName}\n@desc Retrieves the API key resource details.\n@required {KeyName: str}\n@returns(200) {Key: str, KeyArn: str, KeyName: str, Restrictions: ApiKeyRestrictions{AllowActions: [str], AllowResources: [str], AllowReferers: [str]?}, CreateTime: str(timestamp), ExpireTime: str(timestamp), UpdateTime: str(timestamp), Description: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group maps\n@endpoint GET /maps/v0/maps/{MapName}\n@desc Retrieves the map resource details.\n@required {MapName: str}\n@returns(200) {MapName: str, MapArn: str, PricingPlan: str?, DataSource: str, Configuration: MapConfiguration{Style: str, PoliticalView: str?, CustomLayers: [str]?}, Description: str, Tags: map<str,str>?, CreateTime: str(timestamp), UpdateTime: str(timestamp)}\n\n@endgroup\n\n@group places\n@endpoint GET /places/v0/indexes/{IndexName}\n@desc Retrieves the place index resource details.\n@required {IndexName: str}\n@returns(200) {IndexName: str, IndexArn: str, PricingPlan: str?, Description: str, CreateTime: str(timestamp), UpdateTime: str(timestamp), DataSource: str, DataSourceConfiguration: DataSourceConfiguration{IntendedUse: str?}, Tags: map<str,str>?}\n\n@endgroup\n\n@group routes\n@endpoint GET /routes/v0/calculators/{CalculatorName}\n@desc Retrieves the route calculator resource details.\n@required {CalculatorName: str}\n@returns(200) {CalculatorName: str, CalculatorArn: str, PricingPlan: str?, Description: str, CreateTime: str(timestamp), UpdateTime: str(timestamp), DataSource: str, Tags: map<str,str>?}\n\n@endgroup\n\n@group tracking\n@endpoint GET /tracking/v0/trackers/{TrackerName}\n@desc Retrieves the tracker resource details.\n@required {TrackerName: str}\n@returns(200) {TrackerName: str, TrackerArn: str, Description: str, PricingPlan: str?, PricingPlanDataSource: str?, Tags: map<str,str>?, CreateTime: str(timestamp), UpdateTime: str(timestamp), KmsKeyId: str?, PositionFiltering: str?, EventBridgeEnabled: bool?, KmsKeyEnableGeospatialQueries: bool?}\n\n@endpoint DELETE /tracking/v0/trackers/{TrackerName}/consumers/{ConsumerArn}\n@desc Removes the association between a tracker resource and a geofence collection.  Once you unlink a tracker resource from a geofence collection, the tracker positions will no longer be automatically evaluated against geofences.\n@required {TrackerName: str, ConsumerArn: str}\n\n@endgroup\n\n@group geofencing\n@endpoint POST /geofencing/v0/collections/{CollectionName}/forecast-geofence-events\n@desc Evaluates device positions against geofence geometries from a given geofence collection. The event forecasts three states for which a device can be in relative to a geofence:  ENTER: If a device is outside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.  EXIT: If a device is inside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.  IDLE: If a device is inside of a geofence, and the device is not moving.\n@required {CollectionName: str, DeviceState: ForecastGeofenceEventsDeviceState}\n@optional {TimeHorizonMinutes: num(f64), DistanceUnit: str, SpeedUnit: str, NextToken: str, MaxResults: int}\n@returns(200) {ForecastedEvents: [ForecastedEvent], NextToken: str?, DistanceUnit: str, SpeedUnit: str}\n\n@endgroup\n\n@group tracking\n@endpoint GET /tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/positions/latest\n@desc Retrieves a device's most recent position according to its sample time.  Device positions are deleted after 30 days.\n@required {TrackerName: str, DeviceId: str}\n@returns(200) {DeviceId: str?, SampleTime: str(timestamp), ReceivedTime: str(timestamp), Position: [num(f64)], Accuracy: PositionalAccuracy?{Horizontal: num(f64)}, PositionProperties: map<str,str>?}\n\n@endpoint POST /tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/list-positions\n@desc Retrieves the device position history from a tracker resource within a specified range of time.  Device positions are deleted after 30 days.\n@required {TrackerName: str, DeviceId: str}\n@optional {NextToken: str, StartTimeInclusive: str(timestamp), EndTimeExclusive: str(timestamp), MaxResults: int}\n@returns(200) {DevicePositions: [DevicePosition], NextToken: str?}\n\n@endgroup\n\n@group geofencing\n@endpoint GET /geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}\n@desc Retrieves the geofence details from a geofence collection.  The returned geometry will always match the geometry format used when the geofence was created.\n@required {CollectionName: str, GeofenceId: str}\n@returns(200) {GeofenceId: str, Geometry: GeofenceGeometry{Polygon: [[[num(f64)]]]?, Circle: Circle?{Center: [num(f64)], Radius: num(f64)}, Geobuf: bytes?}, Status: str, CreateTime: str(timestamp), UpdateTime: str(timestamp), GeofenceProperties: map<str,str>?}\n\n@endgroup\n\n@group maps\n@endpoint GET /maps/v0/maps/{MapName}/glyphs/{FontStack}/{FontUnicodeRange}\n@desc Retrieves glyphs used to display labels on a map.\n@required {MapName: str, FontStack: str, FontUnicodeRange: str}\n@optional {key: str}\n@returns(200) {Blob: bytes?, ContentType: str?, CacheControl: str?}\n\n@endpoint GET /maps/v0/maps/{MapName}/sprites/{FileName}\n@desc Retrieves the sprite sheet corresponding to a map resource. The sprite sheet is a PNG image paired with a JSON document describing the offsets of individual icons that will be displayed on a rendered map.\n@required {MapName: str, FileName: str}\n@optional {key: str}\n@returns(200) {Blob: bytes?, ContentType: str?, CacheControl: str?}\n\n@endpoint GET /maps/v0/maps/{MapName}/style-descriptor\n@desc Retrieves the map style descriptor from a map resource.  The style descriptor contains speciﬁcations on how features render on a map. For example, what data to display, what order to display the data in, and the style for the data. Style descriptors follow the Mapbox Style Specification.\n@required {MapName: str}\n@optional {key: str}\n@returns(200) {Blob: bytes?, ContentType: str?, CacheControl: str?}\n\n@endpoint GET /maps/v0/maps/{MapName}/tiles/{Z}/{X}/{Y}\n@desc Retrieves a vector data tile from the map resource. Map tiles are used by clients to render a map. they're addressed using a grid arrangement with an X coordinate, Y coordinate, and Z (zoom) level.  The origin (0, 0) is the top left of the map. Increasing the zoom level by 1 doubles both the X and Y dimensions, so a tile containing data for the entire world at (0/0/0) will be split into 4 tiles at zoom 1 (1/0/0, 1/0/1, 1/1/0, 1/1/1).\n@required {MapName: str, Z: str, X: str, Y: str}\n@optional {key: str}\n@returns(200) {Blob: bytes?, ContentType: str?, CacheControl: str?}\n\n@endgroup\n\n@group places\n@endpoint GET /places/v0/indexes/{IndexName}/places/{PlaceId}\n@desc Finds a place by its unique ID. A PlaceId is returned by other search operations.  A PlaceId is valid only if all of the following are the same in the original search request and the call to GetPlace.   Customer Amazon Web Services account   Amazon Web Services Region   Data provider specified in the place index resource\n@required {IndexName: str, PlaceId: str}\n@optional {language: str, key: str}\n@returns(200) {Place: Place{Label: str?, Geometry: PlaceGeometry{Point: [num(f64)]?}, AddressNumber: str?, Street: str?, Neighborhood: str?, Municipality: str?, SubRegion: str?, Region: str?, Country: str?, PostalCode: str?, Interpolated: bool?, TimeZone: TimeZone?{Name: str, Offset: int?}, UnitType: str?, UnitNumber: str?, Categories: [str]?, SupplementalCategories: [str]?, SubMunicipality: str?}}\n\n@endgroup\n\n@group tracking\n@endpoint POST /tracking/v0/trackers/{TrackerName}/list-positions\n@desc A batch request to retrieve all device positions.\n@required {TrackerName: str}\n@optional {MaxResults: int, NextToken: str, FilterGeometry: TrackingFilterGeometry}\n@returns(200) {Entries: [ListDevicePositionsResponseEntry], NextToken: str?}\n\n@endgroup\n\n@group geofencing\n@endpoint POST /geofencing/v0/list-collections\n@desc Lists geofence collections in your Amazon Web Services account.\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {Entries: [ListGeofenceCollectionsResponseEntry], NextToken: str?}\n\n@endpoint POST /geofencing/v0/collections/{CollectionName}/list-geofences\n@desc Lists geofences stored in a given geofence collection.\n@required {CollectionName: str}\n@optional {NextToken: str, MaxResults: int}\n@returns(200) {Entries: [ListGeofenceResponseEntry], NextToken: str?}\n\n@endgroup\n\n@group metadata\n@endpoint POST /metadata/v0/list-keys\n@desc Lists API key resources in your Amazon Web Services account.\n@optional {MaxResults: int, NextToken: str, Filter: ApiKeyFilter}\n@returns(200) {Entries: [ListKeysResponseEntry], NextToken: str?}\n\n@endgroup\n\n@group maps\n@endpoint POST /maps/v0/list-maps\n@desc Lists map resources in your Amazon Web Services account.\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {Entries: [ListMapsResponseEntry], NextToken: str?}\n\n@endgroup\n\n@group places\n@endpoint POST /places/v0/list-indexes\n@desc Lists place index resources in your Amazon Web Services account.\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {Entries: [ListPlaceIndexesResponseEntry], NextToken: str?}\n\n@endgroup\n\n@group routes\n@endpoint POST /routes/v0/list-calculators\n@desc Lists route calculator resources in your Amazon Web Services account.\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {Entries: [ListRouteCalculatorsResponseEntry], NextToken: str?}\n\n@endgroup\n\n@group tags\n@endpoint GET /tags/{ResourceArn}\n@desc Returns a list of tags that are applied to the specified Amazon Location resource.\n@required {ResourceArn: str}\n@returns(200) {Tags: map<str,str>?}\n\n@endgroup\n\n@group tracking\n@endpoint POST /tracking/v0/trackers/{TrackerName}/list-consumers\n@desc Lists geofence collections currently associated to the given tracker resource.\n@required {TrackerName: str}\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {ConsumerArns: [str], NextToken: str?}\n\n@endpoint POST /tracking/v0/list-trackers\n@desc Lists tracker resources in your Amazon Web Services account.\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {Entries: [ListTrackersResponseEntry], NextToken: str?}\n\n@endgroup\n\n@group geofencing\n@endpoint PUT /geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}\n@desc Stores a geofence geometry in a given geofence collection, or updates the geometry of an existing geofence if a geofence ID is included in the request.\n@required {CollectionName: str, GeofenceId: str, Geometry: GeofenceGeometry}\n@optional {GeofenceProperties: map<str,str>}\n@returns(200) {GeofenceId: str, CreateTime: str(timestamp), UpdateTime: str(timestamp)}\n\n@endgroup\n\n@group places\n@endpoint POST /places/v0/indexes/{IndexName}/search/position\n@desc Reverse geocodes a given coordinate and returns a legible address. Allows you to search for Places or points of interest near a given position.\n@required {IndexName: str, Position: [num(f64)]}\n@optional {key: str, MaxResults: int, Language: str}\n@returns(200) {Summary: SearchPlaceIndexForPositionSummary{Position: [num(f64)], MaxResults: int?, DataSource: str, Language: str?}, Results: [SearchForPositionResult]}\n\n@endpoint POST /places/v0/indexes/{IndexName}/search/suggestions\n@desc 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.  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.\n@required {IndexName: str, Text: str}\n@optional {key: str, BiasPosition: [num(f64)], FilterBBox: [num(f64)], FilterCountries: [str], MaxResults: int, Language: str, FilterCategories: [str]}\n@returns(200) {Summary: SearchPlaceIndexForSuggestionsSummary{Text: str, BiasPosition: [num(f64)]?, FilterBBox: [num(f64)]?, FilterCountries: [str]?, MaxResults: int?, DataSource: str, Language: str?, FilterCategories: [str]?}, Results: [SearchForSuggestionsResult]}\n\n@endpoint POST /places/v0/indexes/{IndexName}/search/text\n@desc 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.  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.\n@required {IndexName: str, Text: str}\n@optional {key: str, BiasPosition: [num(f64)], FilterBBox: [num(f64)], FilterCountries: [str], MaxResults: int, Language: str, FilterCategories: [str]}\n@returns(200) {Summary: SearchPlaceIndexForTextSummary{Text: str, BiasPosition: [num(f64)]?, FilterBBox: [num(f64)]?, FilterCountries: [str]?, MaxResults: int?, ResultBBox: [num(f64)]?, DataSource: str, Language: str?, FilterCategories: [str]?}, Results: [SearchForTextResult]}\n\n@endgroup\n\n@group tags\n@endpoint POST /tags/{ResourceArn}\n@desc Assigns one or more tags (key-value pairs) to the specified Amazon Location Service resource. Tags can help you organize and categorize your resources. You can also use them to scope user permissions, by granting a user permission to access or change only resources with certain tag values. You can use the TagResource operation with an Amazon Location Service resource that already has tags. If you specify a new tag key for the resource, this tag is appended to the tags already associated with the resource. If you specify a tag key that's already associated with the resource, the new tag value that you specify replaces the previous value for that tag.  You can associate up to 50 tags with a resource.\n@required {ResourceArn: str, Tags: map<str,str>}\n\n@endpoint DELETE /tags/{ResourceArn}\n@desc Removes one or more tags from the specified Amazon Location resource.\n@required {ResourceArn: str, tagKeys: [str]}\n\n@endgroup\n\n@group geofencing\n@endpoint PATCH /geofencing/v0/collections/{CollectionName}\n@desc Updates the specified properties of a given geofence collection.\n@required {CollectionName: str}\n@optional {PricingPlan: str, PricingPlanDataSource: str, Description: str}\n@returns(200) {CollectionName: str, CollectionArn: str, UpdateTime: str(timestamp)}\n\n@endgroup\n\n@group metadata\n@endpoint PATCH /metadata/v0/keys/{KeyName}\n@desc Updates the specified properties of a given API key resource.\n@required {KeyName: str}\n@optional {Description: str, ExpireTime: str(timestamp), NoExpiry: bool, ForceUpdate: bool, Restrictions: ApiKeyRestrictions}\n@returns(200) {KeyArn: str, KeyName: str, UpdateTime: str(timestamp)}\n\n@endgroup\n\n@group maps\n@endpoint PATCH /maps/v0/maps/{MapName}\n@desc Updates the specified properties of a given map resource.\n@required {MapName: str}\n@optional {PricingPlan: str, Description: str, ConfigurationUpdate: MapConfigurationUpdate}\n@returns(200) {MapName: str, MapArn: str, UpdateTime: str(timestamp)}\n\n@endgroup\n\n@group places\n@endpoint PATCH /places/v0/indexes/{IndexName}\n@desc Updates the specified properties of a given place index resource.\n@required {IndexName: str}\n@optional {PricingPlan: str, Description: str, DataSourceConfiguration: DataSourceConfiguration}\n@returns(200) {IndexName: str, IndexArn: str, UpdateTime: str(timestamp)}\n\n@endgroup\n\n@group routes\n@endpoint PATCH /routes/v0/calculators/{CalculatorName}\n@desc Updates the specified properties for a given route calculator resource.\n@required {CalculatorName: str}\n@optional {PricingPlan: str, Description: str}\n@returns(200) {CalculatorName: str, CalculatorArn: str, UpdateTime: str(timestamp)}\n\n@endgroup\n\n@group tracking\n@endpoint PATCH /tracking/v0/trackers/{TrackerName}\n@desc Updates the specified properties of a given tracker resource.\n@required {TrackerName: str}\n@optional {PricingPlan: str, PricingPlanDataSource: str, Description: str, PositionFiltering: str, EventBridgeEnabled: bool, KmsKeyEnableGeospatialQueries: bool}\n@returns(200) {TrackerName: str, TrackerArn: str, UpdateTime: str(timestamp)}\n\n@endpoint POST /tracking/v0/trackers/{TrackerName}/positions/verify\n@desc Verifies the integrity of the device's position by determining if it was reported behind a proxy, and by comparing it to an inferred position estimated based on the device's state.\n@required {TrackerName: str, DeviceState: DeviceState}\n@optional {DistanceUnit: str}\n@returns(200) {InferredState: InferredState{Position: [num(f64)]?, Accuracy: PositionalAccuracy?{Horizontal: num(f64)}, DeviationDistance: num(f64)?, ProxyDetected: bool}, DeviceId: str, SampleTime: str(timestamp), ReceivedTime: str(timestamp), DistanceUnit: str}\n\n@endgroup\n\n@end\n"}