aws-sdk-locationservice 1.13.0 → 1.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -24,18 +24,129 @@ module Aws::LocationService
24
24
  include Aws::Structure
25
25
  end
26
26
 
27
- # @note When making an API call, you may pass AssociateTrackerConsumerRequest
28
- # data as a hash:
27
+ # Options for filtering API keys.
29
28
  #
30
- # {
31
- # consumer_arn: "Arn", # required
32
- # tracker_name: "ResourceName", # required
33
- # }
29
+ # @!attribute [rw] key_status
30
+ # Filter on `Active` or `Expired` API keys.
31
+ # @return [String]
32
+ #
33
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ApiKeyFilter AWS API Documentation
34
+ #
35
+ class ApiKeyFilter < Struct.new(
36
+ :key_status)
37
+ SENSITIVE = []
38
+ include Aws::Structure
39
+ end
40
+
41
+ # API Restrictions on the allowed actions, resources, and referers for
42
+ # an API key resource.
43
+ #
44
+ # @!attribute [rw] allow_actions
45
+ # A list of allowed actions that an API key resource grants
46
+ # permissions to perform. You must have at least one action for each
47
+ # type of resource. For example, if you have a place resource, you
48
+ # must include at least one place action.
49
+ #
50
+ # The following are valid values for the actions.
51
+ #
52
+ # * **Map actions**
53
+ #
54
+ # * `geo:GetMap*` - Allows all actions needed for map rendering.
55
+ #
56
+ # ^
57
+ #
58
+ # * **Place actions**
59
+ #
60
+ # * `geo:SearchPlaceIndexForText` - Allows geocoding.
61
+ #
62
+ # * `geo:SearchPlaceIndexForPosition` - Allows reverse geocoding.
63
+ #
64
+ # * `geo:SearchPlaceIndexForSuggestions` - Allows generating
65
+ # suggestions from text.
66
+ #
67
+ # * `GetPlace` - Allows finding a place by place ID.
68
+ #
69
+ # * **Route actions**
70
+ #
71
+ # * `geo:CalculateRoute` - Allows point to point routing.
72
+ #
73
+ # * `geo:CalculateRouteMatrix` - Allows calculating a matrix of
74
+ # routes.
75
+ #
76
+ # <note markdown="1"> You must use these strings exactly. For example, to provide access
77
+ # to map rendering, the only valid action is `geo:GetMap*` as an input
78
+ # to the list. `["geo:GetMap*"]` is valid but `["geo:GetMapTile"]` is
79
+ # not. Similarly, you cannot use `["geo:SearchPlaceIndexFor*"]` - you
80
+ # must list each of the Place actions separately.
81
+ #
82
+ # </note>
83
+ # @return [Array<String>]
84
+ #
85
+ # @!attribute [rw] allow_referers
86
+ # An optional list of allowed HTTP referers for which requests must
87
+ # originate from. Requests using this API key from other domains will
88
+ # not be allowed.
89
+ #
90
+ # Requirements:
91
+ #
92
+ # * Contain only alphanumeric characters (A–Z, a–z, 0–9) or any
93
+ # symbols in this list `` $\-._+!*`(),;/?:@=& ``
94
+ #
95
+ # * May contain a percent (%) if followed by 2 hexadecimal digits
96
+ # (A-F, a-f, 0-9); this is used for URL encoding purposes.
97
+ #
98
+ # * May contain wildcard characters question mark (?) and asterisk
99
+ # (*).
100
+ #
101
+ # Question mark (?) will replace any single character (including
102
+ # hexadecimal digits).
103
+ #
104
+ # Asterisk (*) will replace any multiple characters (including
105
+ # multiple hexadecimal digits).
34
106
  #
107
+ # * No spaces allowed. For example, `https://example.com`.
108
+ # @return [Array<String>]
109
+ #
110
+ # @!attribute [rw] allow_resources
111
+ # A list of allowed resource ARNs that a API key bearer can perform
112
+ # actions on.
113
+ #
114
+ # * The ARN must be the correct ARN for a map, place, or route ARN.
115
+ # You may include wildcards in the resource-id to match multiple
116
+ # resources of the same type.
117
+ #
118
+ # * The resources must be in the same `partition`, `region`, and
119
+ # `account-id` as the key that is being created.
120
+ #
121
+ # * Other than wildcards, you must include the full ARN, including the
122
+ # `arn`, `partition`, `service`, `region`, `account-id` and
123
+ # `resource-id`, delimited by colons (:).
124
+ #
125
+ # * No spaces allowed, even with wildcards. For example,
126
+ # `arn:aws:geo:region:account-id:map/ExampleMap*`.
127
+ #
128
+ # For more information about ARN format, see [Amazon Resource Names
129
+ # (ARNs)][1].
130
+ #
131
+ #
132
+ #
133
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
134
+ # @return [Array<String>]
135
+ #
136
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ApiKeyRestrictions AWS API Documentation
137
+ #
138
+ class ApiKeyRestrictions < Struct.new(
139
+ :allow_actions,
140
+ :allow_referers,
141
+ :allow_resources)
142
+ SENSITIVE = []
143
+ include Aws::Structure
144
+ end
145
+
35
146
  # @!attribute [rw] consumer_arn
36
147
  # The Amazon Resource Name (ARN) for the geofence collection to be
37
148
  # associated to tracker resource. Used when you need to specify a
38
- # resource across all AWS.
149
+ # resource across all Amazon Web Services.
39
150
  #
40
151
  # * Format example:
41
152
  # `arn:aws:geo:region:account-id:geofence-collection/ExampleGeofenceCollectionConsumer`
@@ -81,14 +192,6 @@ module Aws::LocationService
81
192
  include Aws::Structure
82
193
  end
83
194
 
84
- # @note When making an API call, you may pass BatchDeleteDevicePositionHistoryRequest
85
- # data as a hash:
86
- #
87
- # {
88
- # device_ids: ["Id"], # required
89
- # tracker_name: "ResourceName", # required
90
- # }
91
- #
92
195
  # @!attribute [rw] device_ids
93
196
  # Devices whose position history you want to delete.
94
197
  #
@@ -145,14 +248,6 @@ module Aws::LocationService
145
248
  include Aws::Structure
146
249
  end
147
250
 
148
- # @note When making an API call, you may pass BatchDeleteGeofenceRequest
149
- # data as a hash:
150
- #
151
- # {
152
- # collection_name: "ResourceName", # required
153
- # geofence_ids: ["Id"], # required
154
- # }
155
- #
156
251
  # @!attribute [rw] collection_name
157
252
  # The geofence collection storing the geofences to be deleted.
158
253
  # @return [String]
@@ -212,20 +307,6 @@ module Aws::LocationService
212
307
  include Aws::Structure
213
308
  end
214
309
 
215
- # @note When making an API call, you may pass BatchEvaluateGeofencesRequest
216
- # data as a hash:
217
- #
218
- # {
219
- # collection_name: "ResourceName", # required
220
- # device_position_updates: [ # required
221
- # {
222
- # device_id: "Id", # required
223
- # position: [1.0], # required
224
- # sample_time: Time.now, # required
225
- # },
226
- # ],
227
- # }
228
- #
229
310
  # @!attribute [rw] collection_name
230
311
  # The geofence collection used in evaluating the position of devices
231
312
  # against its geofences.
@@ -277,14 +358,6 @@ module Aws::LocationService
277
358
  include Aws::Structure
278
359
  end
279
360
 
280
- # @note When making an API call, you may pass BatchGetDevicePositionRequest
281
- # data as a hash:
282
- #
283
- # {
284
- # device_ids: ["Id"], # required
285
- # tracker_name: "BatchGetDevicePositionRequestTrackerNameString", # required
286
- # }
287
- #
288
361
  # @!attribute [rw] device_ids
289
362
  # Devices whose position you want to retrieve.
290
363
  #
@@ -365,25 +438,6 @@ module Aws::LocationService
365
438
  include Aws::Structure
366
439
  end
367
440
 
368
- # @note When making an API call, you may pass BatchPutGeofenceRequest
369
- # data as a hash:
370
- #
371
- # {
372
- # collection_name: "ResourceName", # required
373
- # entries: [ # required
374
- # {
375
- # geofence_id: "Id", # required
376
- # geometry: { # required
377
- # polygon: [
378
- # [
379
- # [1.0],
380
- # ],
381
- # ],
382
- # },
383
- # },
384
- # ],
385
- # }
386
- #
387
441
  # @!attribute [rw] collection_name
388
442
  # The geofence collection storing the geofences.
389
443
  # @return [String]
@@ -403,30 +457,25 @@ module Aws::LocationService
403
457
 
404
458
  # Contains geofence geometry details.
405
459
  #
406
- # @note When making an API call, you may pass BatchPutGeofenceRequestEntry
407
- # data as a hash:
408
- #
409
- # {
410
- # geofence_id: "Id", # required
411
- # geometry: { # required
412
- # polygon: [
413
- # [
414
- # [1.0],
415
- # ],
416
- # ],
417
- # },
418
- # }
419
- #
420
460
  # @!attribute [rw] geofence_id
421
461
  # The identifier for the geofence to be stored in a given geofence
422
462
  # collection.
423
463
  # @return [String]
424
464
  #
465
+ # @!attribute [rw] geofence_properties
466
+ # Associates one of more properties with the geofence. A property is a
467
+ # key-value pair stored with the geofence and added to any geofence
468
+ # event triggered with that geofence.
469
+ #
470
+ # Format: `"key" : "value"`
471
+ # @return [Hash<String,String>]
472
+ #
425
473
  # @!attribute [rw] geometry
426
- # Contains the polygon details to specify the position of the
427
- # geofence.
474
+ # Contains the details of the position of the geofence. Can be either
475
+ # a polygon or a circle. Including both will return a validation
476
+ # error.
428
477
  #
429
- # <note markdown="1"> Each [geofence polygon][1] can have a maximum of 1,000 vertices.
478
+ # <note markdown="1"> Each [ geofence polygon][1] can have a maximum of 1,000 vertices.
430
479
  #
431
480
  # </note>
432
481
  #
@@ -439,8 +488,9 @@ module Aws::LocationService
439
488
  #
440
489
  class BatchPutGeofenceRequestEntry < Struct.new(
441
490
  :geofence_id,
491
+ :geofence_properties,
442
492
  :geometry)
443
- SENSITIVE = []
493
+ SENSITIVE = [:geofence_properties]
444
494
  include Aws::Structure
445
495
  end
446
496
 
@@ -529,26 +579,13 @@ module Aws::LocationService
529
579
  include Aws::Structure
530
580
  end
531
581
 
532
- # @note When making an API call, you may pass BatchUpdateDevicePositionRequest
533
- # data as a hash:
534
- #
535
- # {
536
- # tracker_name: "ResourceName", # required
537
- # updates: [ # required
538
- # {
539
- # device_id: "Id", # required
540
- # position: [1.0], # required
541
- # sample_time: Time.now, # required
542
- # },
543
- # ],
544
- # }
545
- #
546
582
  # @!attribute [rw] tracker_name
547
583
  # The name of the tracker resource to update.
548
584
  # @return [String]
549
585
  #
550
586
  # @!attribute [rw] updates
551
- # Contains the position update details for each device.
587
+ # Contains the position update details for each device, up to 10
588
+ # devices.
552
589
  # @return [Array<Types::DevicePositionUpdate>]
553
590
  #
554
591
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/BatchUpdateDevicePositionRequest AWS API Documentation
@@ -576,14 +613,6 @@ module Aws::LocationService
576
613
  # Contains details about additional route preferences for requests that
577
614
  # specify `TravelMode` as `Car`.
578
615
  #
579
- # @note When making an API call, you may pass CalculateRouteCarModeOptions
580
- # data as a hash:
581
- #
582
- # {
583
- # avoid_ferries: false,
584
- # avoid_tolls: false,
585
- # }
586
- #
587
616
  # @!attribute [rw] avoid_ferries
588
617
  # Avoids ferries when calculating routes.
589
618
  #
@@ -609,41 +638,256 @@ module Aws::LocationService
609
638
  include Aws::Structure
610
639
  end
611
640
 
612
- # @note When making an API call, you may pass CalculateRouteRequest
613
- # data as a hash:
614
- #
615
- # {
616
- # calculator_name: "ResourceName", # required
617
- # car_mode_options: {
618
- # avoid_ferries: false,
619
- # avoid_tolls: false,
620
- # },
621
- # depart_now: false,
622
- # departure_position: [1.0], # required
623
- # departure_time: Time.now,
624
- # destination_position: [1.0], # required
625
- # distance_unit: "Kilometers", # accepts Kilometers, Miles
626
- # include_leg_geometry: false,
627
- # travel_mode: "Car", # accepts Car, Truck, Walking
628
- # truck_mode_options: {
629
- # avoid_ferries: false,
630
- # avoid_tolls: false,
631
- # dimensions: {
632
- # height: 1.0,
633
- # length: 1.0,
634
- # unit: "Meters", # accepts Meters, Feet
635
- # width: 1.0,
636
- # },
637
- # weight: {
638
- # total: 1.0,
639
- # unit: "Kilograms", # accepts Kilograms, Pounds
640
- # },
641
- # },
642
- # waypoint_positions: [
643
- # [1.0],
644
- # ],
645
- # }
641
+ # @!attribute [rw] calculator_name
642
+ # The name of the route calculator resource that you want to use to
643
+ # calculate the route matrix.
644
+ # @return [String]
645
+ #
646
+ # @!attribute [rw] car_mode_options
647
+ # Specifies route preferences when traveling by `Car`, such as
648
+ # avoiding routes that use ferries or tolls.
649
+ #
650
+ # Requirements: `TravelMode` must be specified as `Car`.
651
+ # @return [Types::CalculateRouteCarModeOptions]
652
+ #
653
+ # @!attribute [rw] depart_now
654
+ # Sets the time of departure as the current time. Uses the current
655
+ # time to calculate the route matrix. You can't set both
656
+ # `DepartureTime` and `DepartNow`. If neither is set, the best time of
657
+ # day to travel with the best traffic conditions is used to calculate
658
+ # the route matrix.
659
+ #
660
+ # Default Value: `false`
661
+ #
662
+ # Valid Values: `false` \| `true`
663
+ # @return [Boolean]
664
+ #
665
+ # @!attribute [rw] departure_positions
666
+ # The list of departure (origin) positions for the route matrix. An
667
+ # array of points, each of which is itself a 2-value array defined in
668
+ # [WGS 84][1] format: `[longitude, latitude]`. For example,
669
+ # `[-123.115, 49.285]`.
670
+ #
671
+ # Depending on the data provider selected in the route calculator
672
+ # resource there may be additional restrictions on the inputs you can
673
+ # choose. See [ Position restrictions][2] in the *Amazon Location
674
+ # Service Developer Guide*.
675
+ #
676
+ # <note markdown="1"> For route calculators that use Esri as the data provider, if you
677
+ # specify a departure that's not located on a road, Amazon Location [
678
+ # moves the position to the nearest road][3]. The snapped value is
679
+ # available in the result in `SnappedDeparturePositions`.
680
+ #
681
+ # </note>
682
+ #
683
+ # Valid Values: `[-180 to 180,-90 to 90]`
684
+ #
685
+ #
686
+ #
687
+ # [1]: https://earth-info.nga.mil/GandG/wgs84/index.html
688
+ # [2]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route-matrix.html#matrix-routing-position-limits
689
+ # [3]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
690
+ # @return [Array<Array<Float>>]
691
+ #
692
+ # @!attribute [rw] departure_time
693
+ # Specifies the desired time of departure. Uses the given time to
694
+ # calculate the route matrix. You can't set both `DepartureTime` and
695
+ # `DepartNow`. If neither is set, the best time of day to travel with
696
+ # the best traffic conditions is used to calculate the route matrix.
697
+ #
698
+ # <note markdown="1"> Setting a departure time in the past returns a `400
699
+ # ValidationException` error.
700
+ #
701
+ # </note>
702
+ #
703
+ # * In [ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`. For example,
704
+ # `2020–07-2T12:15:20.000Z+01:00`
705
+ #
706
+ # ^
707
+ #
708
+ #
709
+ #
710
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
711
+ # @return [Time]
712
+ #
713
+ # @!attribute [rw] destination_positions
714
+ # The list of destination positions for the route matrix. An array of
715
+ # points, each of which is itself a 2-value array defined in [WGS
716
+ # 84][1] format: `[longitude, latitude]`. For example, `[-122.339,
717
+ # 47.615]`
718
+ #
719
+ # Depending on the data provider selected in the route calculator
720
+ # resource there may be additional restrictions on the inputs you can
721
+ # choose. See [ Position restrictions][2] in the *Amazon Location
722
+ # Service Developer Guide*.
723
+ #
724
+ # <note markdown="1"> For route calculators that use Esri as the data provider, if you
725
+ # specify a destination that's not located on a road, Amazon Location
726
+ # [ moves the position to the nearest road][3]. The snapped value is
727
+ # available in the result in `SnappedDestinationPositions`.
728
+ #
729
+ # </note>
730
+ #
731
+ # Valid Values: `[-180 to 180,-90 to 90]`
732
+ #
733
+ #
734
+ #
735
+ # [1]: https://earth-info.nga.mil/GandG/wgs84/index.html
736
+ # [2]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route-matrix.html#matrix-routing-position-limits
737
+ # [3]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
738
+ # @return [Array<Array<Float>>]
739
+ #
740
+ # @!attribute [rw] distance_unit
741
+ # Set the unit system to specify the distance.
742
+ #
743
+ # Default Value: `Kilometers`
744
+ # @return [String]
745
+ #
746
+ # @!attribute [rw] key
747
+ # The optional [API key][1] to authorize the request.
748
+ #
749
+ #
750
+ #
751
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
752
+ # @return [String]
753
+ #
754
+ # @!attribute [rw] travel_mode
755
+ # Specifies the mode of transport when calculating a route. Used in
756
+ # estimating the speed of travel and road compatibility.
757
+ #
758
+ # The `TravelMode` you specify also determines how you specify route
759
+ # preferences:
760
+ #
761
+ # * If traveling by `Car` use the `CarModeOptions` parameter.
762
+ #
763
+ # * If traveling by `Truck` use the `TruckModeOptions` parameter.
764
+ #
765
+ # <note markdown="1"> `Bicycle` or `Motorcycle` are only valid when using `Grab` as a data
766
+ # provider, and only within Southeast Asia.
767
+ #
768
+ # `Truck` is not available for Grab.
769
+ #
770
+ # For more information about using Grab as a data provider, see
771
+ # [GrabMaps][1] in the *Amazon Location Service Developer Guide*.
772
+ #
773
+ # </note>
774
+ #
775
+ # Default Value: `Car`
776
+ #
777
+ #
778
+ #
779
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html
780
+ # @return [String]
781
+ #
782
+ # @!attribute [rw] truck_mode_options
783
+ # Specifies route preferences when traveling by `Truck`, such as
784
+ # avoiding routes that use ferries or tolls, and truck specifications
785
+ # to consider when choosing an optimal road.
786
+ #
787
+ # Requirements: `TravelMode` must be specified as `Truck`.
788
+ # @return [Types::CalculateRouteTruckModeOptions]
789
+ #
790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/CalculateRouteMatrixRequest AWS API Documentation
791
+ #
792
+ class CalculateRouteMatrixRequest < Struct.new(
793
+ :calculator_name,
794
+ :car_mode_options,
795
+ :depart_now,
796
+ :departure_positions,
797
+ :departure_time,
798
+ :destination_positions,
799
+ :distance_unit,
800
+ :key,
801
+ :travel_mode,
802
+ :truck_mode_options)
803
+ SENSITIVE = [:key]
804
+ include Aws::Structure
805
+ end
806
+
807
+ # Returns the result of the route matrix calculation.
808
+ #
809
+ # @!attribute [rw] route_matrix
810
+ # The calculated route matrix containing the results for all pairs of
811
+ # `DeparturePositions` to `DestinationPositions`. Each row corresponds
812
+ # to one entry in `DeparturePositions`. Each entry in the row
813
+ # corresponds to the route from that entry in `DeparturePositions` to
814
+ # an entry in `DestinationPositions`.
815
+ # @return [Array<Array<Types::RouteMatrixEntry>>]
816
+ #
817
+ # @!attribute [rw] snapped_departure_positions
818
+ # For routes calculated using an Esri route calculator resource,
819
+ # departure positions are snapped to the closest road. For Esri route
820
+ # calculator resources, this returns the list of departure/origin
821
+ # positions used for calculation of the `RouteMatrix`.
822
+ # @return [Array<Array<Float>>]
823
+ #
824
+ # @!attribute [rw] snapped_destination_positions
825
+ # The list of destination positions for the route matrix used for
826
+ # calculation of the `RouteMatrix`.
827
+ # @return [Array<Array<Float>>]
828
+ #
829
+ # @!attribute [rw] summary
830
+ # Contains information about the route matrix, `DataSource`,
831
+ # `DistanceUnit`, `RouteCount` and `ErrorCount`.
832
+ # @return [Types::CalculateRouteMatrixSummary]
833
+ #
834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/CalculateRouteMatrixResponse AWS API Documentation
835
+ #
836
+ class CalculateRouteMatrixResponse < Struct.new(
837
+ :route_matrix,
838
+ :snapped_departure_positions,
839
+ :snapped_destination_positions,
840
+ :summary)
841
+ SENSITIVE = []
842
+ include Aws::Structure
843
+ end
844
+
845
+ # A summary of the calculated route matrix.
846
+ #
847
+ # @!attribute [rw] data_source
848
+ # The data provider of traffic and road network data used to calculate
849
+ # the routes. Indicates one of the available providers:
850
+ #
851
+ # * `Esri`
852
+ #
853
+ # * `Grab`
854
+ #
855
+ # * `Here`
856
+ #
857
+ # For more information about data providers, see [Amazon Location
858
+ # Service data providers][1].
859
+ #
646
860
  #
861
+ #
862
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html
863
+ # @return [String]
864
+ #
865
+ # @!attribute [rw] distance_unit
866
+ # The unit of measurement for route distances.
867
+ # @return [String]
868
+ #
869
+ # @!attribute [rw] error_count
870
+ # The count of error results in the route matrix. If this number is 0,
871
+ # all routes were calculated successfully.
872
+ # @return [Integer]
873
+ #
874
+ # @!attribute [rw] route_count
875
+ # The count of cells in the route matrix. Equal to the number of
876
+ # `DeparturePositions` multiplied by the number of
877
+ # `DestinationPositions`.
878
+ # @return [Integer]
879
+ #
880
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/CalculateRouteMatrixSummary AWS API Documentation
881
+ #
882
+ class CalculateRouteMatrixSummary < Struct.new(
883
+ :data_source,
884
+ :distance_unit,
885
+ :error_count,
886
+ :route_count)
887
+ SENSITIVE = []
888
+ include Aws::Structure
889
+ end
890
+
647
891
  # @!attribute [rw] calculator_name
648
892
  # The name of the route calculator resource that you want to use to
649
893
  # calculate the route.
@@ -667,8 +911,8 @@ module Aws::LocationService
667
911
  # @return [Boolean]
668
912
  #
669
913
  # @!attribute [rw] departure_position
670
- # The start position for the route. Defined in [WGS 84][1] format:
671
- # `[longitude, latitude]`.
914
+ # The start position for the route. Defined in [World Geodetic System
915
+ # (WGS 84)][1] format: `[longitude, latitude]`.
672
916
  #
673
917
  # * For example, `[-123.115, 49.285]`
674
918
  #
@@ -685,8 +929,8 @@ module Aws::LocationService
685
929
  #
686
930
  #
687
931
  #
688
- # [1]: https://earth-info.nga.mil/GandG/wgs84/index.html
689
- # [2]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route.html#snap-to-nearby-road
932
+ # [1]: https://earth-info.nga.mil/index.php?dir=wgs84&amp;action=wgs84
933
+ # [2]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
690
934
  # @return [Array<Float>]
691
935
  #
692
936
  # @!attribute [rw] departure_time
@@ -710,8 +954,8 @@ module Aws::LocationService
710
954
  # @return [Time]
711
955
  #
712
956
  # @!attribute [rw] destination_position
713
- # The finish position for the route. Defined in [WGS 84][1] format:
714
- # `[longitude, latitude]`.
957
+ # The finish position for the route. Defined in [World Geodetic System
958
+ # (WGS 84)][1] format: `[longitude, latitude]`.
715
959
  #
716
960
  # * For example, `[-122.339, 47.615]`
717
961
  #
@@ -726,8 +970,8 @@ module Aws::LocationService
726
970
  #
727
971
  #
728
972
  #
729
- # [1]: https://earth-info.nga.mil/GandG/wgs84/index.html
730
- # [2]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route.html#snap-to-nearby-road
973
+ # [1]: https://earth-info.nga.mil/index.php?dir=wgs84&amp;action=wgs84
974
+ # [2]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
731
975
  # @return [Array<Float>]
732
976
  #
733
977
  # @!attribute [rw] distance_unit
@@ -745,11 +989,32 @@ module Aws::LocationService
745
989
  # Valid Values: `false` \| `true`
746
990
  # @return [Boolean]
747
991
  #
992
+ # @!attribute [rw] key
993
+ # The optional [API key][1] to authorize the request.
994
+ #
995
+ #
996
+ #
997
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
998
+ # @return [String]
999
+ #
748
1000
  # @!attribute [rw] travel_mode
749
1001
  # Specifies the mode of transport when calculating a route. Used in
750
- # estimating the speed of travel and road compatibility.
1002
+ # estimating the speed of travel and road compatibility. You can
1003
+ # choose `Car`, `Truck`, `Walking`, `Bicycle` or `Motorcycle` as
1004
+ # options for the `TravelMode`.
1005
+ #
1006
+ # <note markdown="1"> `Bicycle` and `Motorcycle` are only valid when using Grab as a data
1007
+ # provider, and only within Southeast Asia.
1008
+ #
1009
+ # `Truck` is not available for Grab.
1010
+ #
1011
+ # For more details on the using Grab for routing, including areas of
1012
+ # coverage, see [GrabMaps][1] in the *Amazon Location Service
1013
+ # Developer Guide*.
1014
+ #
1015
+ # </note>
751
1016
  #
752
- # The `TravelMode` you specify determines how you specify route
1017
+ # The `TravelMode` you specify also determines how you specify route
753
1018
  # preferences:
754
1019
  #
755
1020
  # * If traveling by `Car` use the `CarModeOptions` parameter.
@@ -757,6 +1022,10 @@ module Aws::LocationService
757
1022
  # * If traveling by `Truck` use the `TruckModeOptions` parameter.
758
1023
  #
759
1024
  # Default Value: `Car`
1025
+ #
1026
+ #
1027
+ #
1028
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html
760
1029
  # @return [String]
761
1030
  #
762
1031
  # @!attribute [rw] truck_mode_options
@@ -794,7 +1063,7 @@ module Aws::LocationService
794
1063
  #
795
1064
  #
796
1065
  #
797
- # [1]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route.html#snap-to-nearby-road
1066
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
798
1067
  # @return [Array<Array<Float>>]
799
1068
  #
800
1069
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/CalculateRouteRequest AWS API Documentation
@@ -808,10 +1077,11 @@ module Aws::LocationService
808
1077
  :destination_position,
809
1078
  :distance_unit,
810
1079
  :include_leg_geometry,
1080
+ :key,
811
1081
  :travel_mode,
812
1082
  :truck_mode_options,
813
1083
  :waypoint_positions)
814
- SENSITIVE = [:departure_position, :destination_position]
1084
+ SENSITIVE = [:departure_position, :destination_position, :key]
815
1085
  include Aws::Structure
816
1086
  end
817
1087
 
@@ -827,7 +1097,7 @@ module Aws::LocationService
827
1097
  #
828
1098
  # For example, a route with a departure position and destination
829
1099
  # position returns one leg with the positions [snapped to a nearby
830
- # road][1]\:
1100
+ # road][1]:
831
1101
  #
832
1102
  # * The `StartPosition` is the departure position.
833
1103
  #
@@ -845,7 +1115,7 @@ module Aws::LocationService
845
1115
  #
846
1116
  #
847
1117
  #
848
- # [1]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route.html#snap-to-nearby-road
1118
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
849
1119
  # @return [Array<Types::Leg>]
850
1120
  #
851
1121
  # @!attribute [rw] summary
@@ -870,6 +1140,8 @@ module Aws::LocationService
870
1140
  #
871
1141
  # * `Esri`
872
1142
  #
1143
+ # * `Grab`
1144
+ #
873
1145
  # * `Here`
874
1146
  #
875
1147
  # For more information about data providers, see [Amazon Location
@@ -937,24 +1209,6 @@ module Aws::LocationService
937
1209
  # Contains details about additional route preferences for requests that
938
1210
  # specify `TravelMode` as `Truck`.
939
1211
  #
940
- # @note When making an API call, you may pass CalculateRouteTruckModeOptions
941
- # data as a hash:
942
- #
943
- # {
944
- # avoid_ferries: false,
945
- # avoid_tolls: false,
946
- # dimensions: {
947
- # height: 1.0,
948
- # length: 1.0,
949
- # unit: "Meters", # accepts Meters, Feet
950
- # width: 1.0,
951
- # },
952
- # weight: {
953
- # total: 1.0,
954
- # unit: "Kilograms", # accepts Kilograms, Pounds
955
- # },
956
- # }
957
- #
958
1212
  # @!attribute [rw] avoid_ferries
959
1213
  # Avoids ferries when calculating routes.
960
1214
  #
@@ -964,7 +1218,7 @@ module Aws::LocationService
964
1218
  # @return [Boolean]
965
1219
  #
966
1220
  # @!attribute [rw] avoid_tolls
967
- # Avoids ferries when calculating routes.
1221
+ # Avoids tolls when calculating routes.
968
1222
  #
969
1223
  # Default Value: `false`
970
1224
  #
@@ -994,33 +1248,44 @@ module Aws::LocationService
994
1248
  include Aws::Structure
995
1249
  end
996
1250
 
997
- # The request was unsuccessful because of a conflict.
1251
+ # A circle on the earth, as defined by a center point and a radius.
998
1252
  #
999
- # @!attribute [rw] message
1000
- # @return [String]
1253
+ # @!attribute [rw] center
1254
+ # A single point geometry, specifying the center of the circle, using
1255
+ # [WGS 84][1] coordinates, in the form `[longitude, latitude]`.
1001
1256
  #
1002
- # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ConflictException AWS API Documentation
1003
1257
  #
1004
- class ConflictException < Struct.new(
1005
- :message)
1006
- SENSITIVE = []
1007
- include Aws::Structure
1008
- end
1258
+ #
1259
+ # [1]: https://gisgeography.com/wgs84-world-geodetic-system/
1260
+ # @return [Array<Float>]
1261
+ #
1262
+ # @!attribute [rw] radius
1263
+ # The radius of the circle in meters. Must be greater than zero and no
1264
+ # larger than 100,000 (100 kilometers).
1265
+ # @return [Float]
1266
+ #
1267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/Circle AWS API Documentation
1268
+ #
1269
+ class Circle < Struct.new(
1270
+ :center,
1271
+ :radius)
1272
+ SENSITIVE = [:center]
1273
+ include Aws::Structure
1274
+ end
1009
1275
 
1010
- # @note When making an API call, you may pass CreateGeofenceCollectionRequest
1011
- # data as a hash:
1276
+ # The request was unsuccessful because of a conflict.
1277
+ #
1278
+ # @!attribute [rw] message
1279
+ # @return [String]
1012
1280
  #
1013
- # {
1014
- # collection_name: "ResourceName", # required
1015
- # description: "ResourceDescription",
1016
- # kms_key_id: "KmsKeyId",
1017
- # pricing_plan: "RequestBasedUsage", # required, accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
1018
- # pricing_plan_data_source: "String",
1019
- # tags: {
1020
- # "TagKey" => "TagValue",
1021
- # },
1022
- # }
1281
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ConflictException AWS API Documentation
1023
1282
  #
1283
+ class ConflictException < Struct.new(
1284
+ :message)
1285
+ SENSITIVE = []
1286
+ include Aws::Structure
1287
+ end
1288
+
1024
1289
  # @!attribute [rw] collection_name
1025
1290
  # A custom name for the geofence collection.
1026
1291
  #
@@ -1039,8 +1304,8 @@ module Aws::LocationService
1039
1304
  # @return [String]
1040
1305
  #
1041
1306
  # @!attribute [rw] kms_key_id
1042
- # A key identifier for an [AWS KMS customer managed key][1]. Enter a
1043
- # key ID, key ARN, alias name, or alias ARN.
1307
+ # A key identifier for an [Amazon Web Services KMS customer managed
1308
+ # key][1]. Enter a key ID, key ARN, alias name, or alias ARN.
1044
1309
  #
1045
1310
  #
1046
1311
  #
@@ -1048,40 +1313,12 @@ module Aws::LocationService
1048
1313
  # @return [String]
1049
1314
  #
1050
1315
  # @!attribute [rw] pricing_plan
1051
- # Specifies the pricing plan for the geofence collection.
1052
- #
1053
- # For additional details and restrictions on each pricing plan option,
1054
- # see the [Amazon Location Service pricing page][1].
1055
- #
1056
- #
1057
- #
1058
- # [1]: https://aws.amazon.com/location/pricing/
1316
+ # No longer used. If included, the only allowed value is
1317
+ # `RequestBasedUsage`.
1059
1318
  # @return [String]
1060
1319
  #
1061
1320
  # @!attribute [rw] pricing_plan_data_source
1062
- # Specifies the data provider for the geofence collection.
1063
- #
1064
- # * Required value for the following pricing plans:
1065
- # `MobileAssetTracking `\| `MobileAssetManagement`
1066
- #
1067
- # ^
1068
- #
1069
- # For more information about [Data Providers][1], and [Pricing
1070
- # plans][2], see the Amazon Location Service product page.
1071
- #
1072
- # <note markdown="1"> Amazon Location Service only uses `PricingPlanDataSource` to
1073
- # calculate billing for your geofence collection. Your data won't be
1074
- # shared with the data provider, and will remain in your AWS account
1075
- # or Region unless you move it.
1076
- #
1077
- # </note>
1078
- #
1079
- # Valid Values: `Esri `\| `Here`
1080
- #
1081
- #
1082
- #
1083
- # [1]: https://aws.amazon.com/location/data-providers/
1084
- # [2]: https://aws.amazon.com/location/pricing/
1321
+ # This parameter is no longer used.
1085
1322
  # @return [String]
1086
1323
  #
1087
1324
  # @!attribute [rw] tags
@@ -1122,7 +1359,8 @@ module Aws::LocationService
1122
1359
 
1123
1360
  # @!attribute [rw] collection_arn
1124
1361
  # The Amazon Resource Name (ARN) for the geofence collection resource.
1125
- # Used when you need to specify a resource across all AWS.
1362
+ # Used when you need to specify a resource across all Amazon Web
1363
+ # Services.
1126
1364
  #
1127
1365
  # * Format example:
1128
1366
  # `arn:aws:geo:region:account-id:geofence-collection/ExampleGeofenceCollection`
@@ -1153,23 +1391,124 @@ module Aws::LocationService
1153
1391
  include Aws::Structure
1154
1392
  end
1155
1393
 
1156
- # @note When making an API call, you may pass CreateMapRequest
1157
- # data as a hash:
1394
+ # @!attribute [rw] description
1395
+ # An optional description for the API key resource.
1396
+ # @return [String]
1397
+ #
1398
+ # @!attribute [rw] expire_time
1399
+ # The optional timestamp for when the API key resource will expire in
1400
+ # [ ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`. One of `NoExpiry`
1401
+ # or `ExpireTime` must be set.
1402
+ #
1403
+ #
1404
+ #
1405
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
1406
+ # @return [Time]
1407
+ #
1408
+ # @!attribute [rw] key_name
1409
+ # A custom name for the API key resource.
1410
+ #
1411
+ # Requirements:
1412
+ #
1413
+ # * Contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-),
1414
+ # periods (.), and underscores (\_).
1415
+ #
1416
+ # * Must be a unique API key name.
1417
+ #
1418
+ # * No spaces allowed. For example, `ExampleAPIKey`.
1419
+ # @return [String]
1420
+ #
1421
+ # @!attribute [rw] no_expiry
1422
+ # Optionally set to `true` to set no expiration time for the API key.
1423
+ # One of `NoExpiry` or `ExpireTime` must be set.
1424
+ # @return [Boolean]
1425
+ #
1426
+ # @!attribute [rw] restrictions
1427
+ # The API key restrictions for the API key resource.
1428
+ # @return [Types::ApiKeyRestrictions]
1429
+ #
1430
+ # @!attribute [rw] tags
1431
+ # Applies one or more tags to the map resource. A tag is a key-value
1432
+ # pair that helps manage, identify, search, and filter your resources
1433
+ # by labelling them.
1434
+ #
1435
+ # Format: `"key" : "value"`
1436
+ #
1437
+ # Restrictions:
1438
+ #
1439
+ # * Maximum 50 tags per resource
1440
+ #
1441
+ # * Each resource tag must be unique with a maximum of one value.
1442
+ #
1443
+ # * Maximum key length: 128 Unicode characters in UTF-8
1444
+ #
1445
+ # * Maximum value length: 256 Unicode characters in UTF-8
1446
+ #
1447
+ # * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following
1448
+ # characters: + - = . \_ : / @.
1449
+ #
1450
+ # * Cannot use "aws:" as a prefix for a key.
1451
+ # @return [Hash<String,String>]
1452
+ #
1453
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/CreateKeyRequest AWS API Documentation
1454
+ #
1455
+ class CreateKeyRequest < Struct.new(
1456
+ :description,
1457
+ :expire_time,
1458
+ :key_name,
1459
+ :no_expiry,
1460
+ :restrictions,
1461
+ :tags)
1462
+ SENSITIVE = []
1463
+ include Aws::Structure
1464
+ end
1465
+
1466
+ # @!attribute [rw] create_time
1467
+ # The timestamp for when the API key resource was created in [ ISO
1468
+ # 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
1469
+ #
1470
+ #
1471
+ #
1472
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
1473
+ # @return [Time]
1474
+ #
1475
+ # @!attribute [rw] key
1476
+ # The key value/string of an API key. This value is used when making
1477
+ # API calls to authorize the call. For example, see [GetMapGlyphs][1].
1478
+ #
1479
+ #
1480
+ #
1481
+ # [1]: https://docs.aws.amazon.com/location/latest/APIReference/API_GetMapGlyphs.html
1482
+ # @return [String]
1158
1483
  #
1159
- # {
1160
- # configuration: { # required
1161
- # style: "MapStyle", # required
1162
- # },
1163
- # description: "ResourceDescription",
1164
- # map_name: "ResourceName", # required
1165
- # pricing_plan: "RequestBasedUsage", # required, accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
1166
- # tags: {
1167
- # "TagKey" => "TagValue",
1168
- # },
1169
- # }
1484
+ # @!attribute [rw] key_arn
1485
+ # The Amazon Resource Name (ARN) for the API key resource. Used when
1486
+ # you need to specify a resource across all Amazon Web Services.
1170
1487
  #
1488
+ # * Format example: `arn:aws:geo:region:account-id:key/ExampleKey`
1489
+ #
1490
+ # ^
1491
+ # @return [String]
1492
+ #
1493
+ # @!attribute [rw] key_name
1494
+ # The name of the API key resource.
1495
+ # @return [String]
1496
+ #
1497
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/CreateKeyResponse AWS API Documentation
1498
+ #
1499
+ class CreateKeyResponse < Struct.new(
1500
+ :create_time,
1501
+ :key,
1502
+ :key_arn,
1503
+ :key_name)
1504
+ SENSITIVE = [:key]
1505
+ include Aws::Structure
1506
+ end
1507
+
1171
1508
  # @!attribute [rw] configuration
1172
- # Specifies the map style selected from an available data provider.
1509
+ # Specifies the `MapConfiguration`, including the map style, for the
1510
+ # map resource that you create. The map style defines the look of maps
1511
+ # and the data provider for your map resource.
1173
1512
  # @return [Types::MapConfiguration]
1174
1513
  #
1175
1514
  # @!attribute [rw] description
@@ -1190,14 +1529,8 @@ module Aws::LocationService
1190
1529
  # @return [String]
1191
1530
  #
1192
1531
  # @!attribute [rw] pricing_plan
1193
- # Specifies the pricing plan for your map resource.
1194
- #
1195
- # For additional details and restrictions on each pricing plan option,
1196
- # see [Amazon Location Service pricing][1].
1197
- #
1198
- #
1199
- #
1200
- # [1]: https://aws.amazon.com/location/pricing/
1532
+ # No longer used. If included, the only allowed value is
1533
+ # `RequestBasedUsage`.
1201
1534
  # @return [String]
1202
1535
  #
1203
1536
  # @!attribute [rw] tags
@@ -1246,9 +1579,9 @@ module Aws::LocationService
1246
1579
  #
1247
1580
  # @!attribute [rw] map_arn
1248
1581
  # The Amazon Resource Name (ARN) for the map resource. Used to specify
1249
- # a resource across all AWS.
1582
+ # a resource across all Amazon Web Services.
1250
1583
  #
1251
- # * Format example: `arn:aws:geo:region:account-id:maps/ExampleMap`
1584
+ # * Format example: `arn:aws:geo:region:account-id:map/ExampleMap`
1252
1585
  #
1253
1586
  # ^
1254
1587
  # @return [String]
@@ -1267,22 +1600,6 @@ module Aws::LocationService
1267
1600
  include Aws::Structure
1268
1601
  end
1269
1602
 
1270
- # @note When making an API call, you may pass CreatePlaceIndexRequest
1271
- # data as a hash:
1272
- #
1273
- # {
1274
- # data_source: "String", # required
1275
- # data_source_configuration: {
1276
- # intended_use: "SingleUse", # accepts SingleUse, Storage
1277
- # },
1278
- # description: "ResourceDescription",
1279
- # index_name: "ResourceName", # required
1280
- # pricing_plan: "RequestBasedUsage", # required, accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
1281
- # tags: {
1282
- # "TagKey" => "TagValue",
1283
- # },
1284
- # }
1285
- #
1286
1603
  # @!attribute [rw] data_source
1287
1604
  # Specifies the geospatial data provider for the new place index.
1288
1605
  #
@@ -1297,27 +1614,33 @@ module Aws::LocationService
1297
1614
  # your region of interest, see [Esri details on geocoding
1298
1615
  # coverage][2].
1299
1616
  #
1300
- # * `Here` – For additional information about [HERE Technologies][3]'
1617
+ # * `Grab` – Grab provides place index functionality for Southeast
1618
+ # Asia. For additional information about [GrabMaps][3]' coverage,
1619
+ # see [GrabMaps countries and areas covered][4].
1620
+ #
1621
+ # * `Here` – For additional information about [HERE Technologies][5]'
1301
1622
  # coverage in your region of interest, see [HERE details on
1302
- # goecoding coverage][4].
1623
+ # goecoding coverage][6].
1303
1624
  #
1304
1625
  # If you specify HERE Technologies (`Here`) as the data provider,
1305
- # you may not [store results][5] for locations in Japan. For more
1306
- # information, see the [AWS Service Terms][6] for Amazon Location
1307
- # Service.
1626
+ # you may not [store results][7] for locations in Japan. For more
1627
+ # information, see the [Amazon Web Services Service Terms][8] for
1628
+ # Amazon Location Service.
1308
1629
  #
1309
- # For additional information , see [Data providers][7] on the *Amazon
1630
+ # For additional information , see [Data providers][9] on the *Amazon
1310
1631
  # Location Service Developer Guide*.
1311
1632
  #
1312
1633
  #
1313
1634
  #
1314
1635
  # [1]: https://docs.aws.amazon.com/location/latest/developerguide/esri.html
1315
1636
  # [2]: https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm
1316
- # [3]: https://docs.aws.amazon.com/location/latest/developerguide/HERE.html
1317
- # [4]: https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html
1318
- # [5]: https://docs.aws.amazon.com/location-places/latest/APIReference/API_DataSourceConfiguration.html
1319
- # [6]: https://aws.amazon.com/service-terms/
1320
- # [7]: https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html
1637
+ # [3]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html
1638
+ # [4]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area
1639
+ # [5]: https://docs.aws.amazon.com/location/latest/developerguide/HERE.html
1640
+ # [6]: https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html
1641
+ # [7]: https://docs.aws.amazon.com/location-places/latest/APIReference/API_DataSourceConfiguration.html
1642
+ # [8]: http://aws.amazon.com/service-terms/
1643
+ # [9]: https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html
1321
1644
  # @return [String]
1322
1645
  #
1323
1646
  # @!attribute [rw] data_source_configuration
@@ -1342,14 +1665,8 @@ module Aws::LocationService
1342
1665
  # @return [String]
1343
1666
  #
1344
1667
  # @!attribute [rw] pricing_plan
1345
- # Specifies the pricing plan for your place index resource.
1346
- #
1347
- # For additional details and restrictions on each pricing plan option,
1348
- # see [Amazon Location Service pricing][1].
1349
- #
1350
- #
1351
- #
1352
- # [1]: https://aws.amazon.com/location/pricing/
1668
+ # No longer used. If included, the only allowed value is
1669
+ # `RequestBasedUsage`.
1353
1670
  # @return [String]
1354
1671
  #
1355
1672
  # @!attribute [rw] tags
@@ -1400,7 +1717,7 @@ module Aws::LocationService
1400
1717
  #
1401
1718
  # @!attribute [rw] index_arn
1402
1719
  # The Amazon Resource Name (ARN) for the place index resource. Used to
1403
- # specify a resource across AWS.
1720
+ # specify a resource across Amazon Web Services.
1404
1721
  #
1405
1722
  # * Format example:
1406
1723
  # `arn:aws:geo:region:account-id:place-index/ExamplePlaceIndex`
@@ -1422,19 +1739,6 @@ module Aws::LocationService
1422
1739
  include Aws::Structure
1423
1740
  end
1424
1741
 
1425
- # @note When making an API call, you may pass CreateRouteCalculatorRequest
1426
- # data as a hash:
1427
- #
1428
- # {
1429
- # calculator_name: "ResourceName", # required
1430
- # data_source: "String", # required
1431
- # description: "ResourceDescription",
1432
- # pricing_plan: "RequestBasedUsage", # required, accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
1433
- # tags: {
1434
- # "TagKey" => "TagValue",
1435
- # },
1436
- # }
1437
- #
1438
1742
  # @!attribute [rw] calculator_name
1439
1743
  # The name of the route calculator resource.
1440
1744
  #
@@ -1452,9 +1756,7 @@ module Aws::LocationService
1452
1756
  # Specifies the data provider of traffic and road network data.
1453
1757
  #
1454
1758
  # <note markdown="1"> This field is case-sensitive. Enter the valid values as shown. For
1455
- # example, entering `HERE` returns an error. Route calculators that
1456
- # use Esri as a data source only calculate routes that are shorter
1457
- # than 400 km.
1759
+ # example, entering `HERE` returns an error.
1458
1760
  #
1459
1761
  # </note>
1460
1762
  #
@@ -1464,21 +1766,30 @@ module Aws::LocationService
1464
1766
  # your region of interest, see [Esri details on street networks and
1465
1767
  # traffic coverage][2].
1466
1768
  #
1467
- # * `Here` For additional information about [HERE Technologies][3]'
1769
+ # Route calculators that use Esri as a data source only calculate
1770
+ # routes that are shorter than 400 km.
1771
+ #
1772
+ # * `Grab` – Grab provides routing functionality for Southeast Asia.
1773
+ # For additional information about [GrabMaps][3]' coverage, see
1774
+ # [GrabMaps countries and areas covered][4].
1775
+ #
1776
+ # * `Here` – For additional information about [HERE Technologies][5]'
1468
1777
  # coverage in your region of interest, see [HERE car routing
1469
- # coverage][4] and [HERE truck routing coverage][5].
1778
+ # coverage][6] and [HERE truck routing coverage][7].
1470
1779
  #
1471
- # For additional information , see [Data providers][6] on the *Amazon
1780
+ # For additional information , see [Data providers][8] on the *Amazon
1472
1781
  # Location Service Developer Guide*.
1473
1782
  #
1474
1783
  #
1475
1784
  #
1476
1785
  # [1]: https://docs.aws.amazon.com/location/latest/developerguide/esri.html
1477
1786
  # [2]: https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm
1478
- # [3]: https://docs.aws.amazon.com/location/latest/developerguide/HERE.html
1479
- # [4]: https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html
1480
- # [5]: https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html
1481
- # [6]: https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html
1787
+ # [3]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html
1788
+ # [4]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area
1789
+ # [5]: https://docs.aws.amazon.com/location/latest/developerguide/HERE.html
1790
+ # [6]: https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html
1791
+ # [7]: https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html
1792
+ # [8]: https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html
1482
1793
  # @return [String]
1483
1794
  #
1484
1795
  # @!attribute [rw] description
@@ -1486,14 +1797,8 @@ module Aws::LocationService
1486
1797
  # @return [String]
1487
1798
  #
1488
1799
  # @!attribute [rw] pricing_plan
1489
- # Specifies the pricing plan for your route calculator resource.
1490
- #
1491
- # For additional details and restrictions on each pricing plan option,
1492
- # see [Amazon Location Service pricing][1].
1493
- #
1494
- #
1495
- #
1496
- # [1]: https://aws.amazon.com/location/pricing/
1800
+ # No longer used. If included, the only allowed value is
1801
+ # `RequestBasedUsage`.
1497
1802
  # @return [String]
1498
1803
  #
1499
1804
  # @!attribute [rw] tags
@@ -1537,7 +1842,8 @@ module Aws::LocationService
1537
1842
 
1538
1843
  # @!attribute [rw] calculator_arn
1539
1844
  # The Amazon Resource Name (ARN) for the route calculator resource.
1540
- # Use the ARN when you specify a resource across all AWS.
1845
+ # Use the ARN when you specify a resource across all Amazon Web
1846
+ # Services.
1541
1847
  #
1542
1848
  # * Format example:
1543
1849
  # `arn:aws:geo:region:account-id:route-calculator/ExampleCalculator`
@@ -1576,28 +1882,49 @@ module Aws::LocationService
1576
1882
  include Aws::Structure
1577
1883
  end
1578
1884
 
1579
- # @note When making an API call, you may pass CreateTrackerRequest
1580
- # data as a hash:
1581
- #
1582
- # {
1583
- # description: "ResourceDescription",
1584
- # kms_key_id: "KmsKeyId",
1585
- # position_filtering: "TimeBased", # accepts TimeBased, DistanceBased, AccuracyBased
1586
- # pricing_plan: "RequestBasedUsage", # required, accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
1587
- # pricing_plan_data_source: "String",
1588
- # tags: {
1589
- # "TagKey" => "TagValue",
1590
- # },
1591
- # tracker_name: "ResourceName", # required
1592
- # }
1593
- #
1594
1885
  # @!attribute [rw] description
1595
1886
  # An optional description for the tracker resource.
1596
1887
  # @return [String]
1597
1888
  #
1889
+ # @!attribute [rw] event_bridge_enabled
1890
+ # Whether to enable position `UPDATE` events from this tracker to be
1891
+ # sent to EventBridge.
1892
+ #
1893
+ # <note markdown="1"> You do not need enable this feature to get `ENTER` and `EXIT` events
1894
+ # for geofences with this tracker. Those events are always sent to
1895
+ # EventBridge.
1896
+ #
1897
+ # </note>
1898
+ # @return [Boolean]
1899
+ #
1900
+ # @!attribute [rw] kms_key_enable_geospatial_queries
1901
+ # Enables `GeospatialQueries` for a tracker that uses a [Amazon Web
1902
+ # Services KMS customer managed key][1].
1903
+ #
1904
+ # This parameter is only used if you are using a KMS customer managed
1905
+ # key.
1906
+ #
1907
+ # <note markdown="1"> If you wish to encrypt your data using your own KMS customer managed
1908
+ # key, then the Bounding Polygon Queries feature will be disabled by
1909
+ # default. This is because by using this feature, a representation of
1910
+ # your device positions will not be encrypted using the your KMS
1911
+ # managed key. The exact device position, however; is still encrypted
1912
+ # using your managed key.
1913
+ #
1914
+ # You can choose to opt-in to the Bounding Polygon Quseries feature.
1915
+ # This is done by setting the `KmsKeyEnableGeospatialQueries`
1916
+ # parameter to true when creating or updating a Tracker.
1917
+ #
1918
+ # </note>
1919
+ #
1920
+ #
1921
+ #
1922
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html
1923
+ # @return [Boolean]
1924
+ #
1598
1925
  # @!attribute [rw] kms_key_id
1599
- # A key identifier for an [AWS KMS customer managed key][1]. Enter a
1600
- # key ID, key ARN, alias name, or alias ARN.
1926
+ # A key identifier for an [Amazon Web Services KMS customer managed
1927
+ # key][1]. Enter a key ID, key ARN, alias name, or alias ARN.
1601
1928
  #
1602
1929
  #
1603
1930
  #
@@ -1622,45 +1949,27 @@ module Aws::LocationService
1622
1949
  # through. Distance-based filtering can also reduce the effects of
1623
1950
  # GPS noise when displaying device trajectories on a map.
1624
1951
  #
1952
+ # * `AccuracyBased` - If the device has moved less than the measured
1953
+ # accuracy, location updates are ignored. For example, if two
1954
+ # consecutive updates from a device have a horizontal accuracy of 5
1955
+ # m and 10 m, the second update is ignored if the device has moved
1956
+ # less than 15 m. Ignored location updates are neither evaluated
1957
+ # against linked geofence collections, nor stored. This can reduce
1958
+ # the effects of GPS noise when displaying device trajectories on a
1959
+ # map, and can help control your costs by reducing the number of
1960
+ # geofence evaluations.
1961
+ #
1625
1962
  # This field is optional. If not specified, the default value is
1626
1963
  # `TimeBased`.
1627
1964
  # @return [String]
1628
1965
  #
1629
1966
  # @!attribute [rw] pricing_plan
1630
- # Specifies the pricing plan for the tracker resource.
1631
- #
1632
- # For additional details and restrictions on each pricing plan option,
1633
- # see [Amazon Location Service pricing][1].
1634
- #
1635
- #
1636
- #
1637
- # [1]: https://aws.amazon.com/location/pricing/
1967
+ # No longer used. If included, the only allowed value is
1968
+ # `RequestBasedUsage`.
1638
1969
  # @return [String]
1639
1970
  #
1640
1971
  # @!attribute [rw] pricing_plan_data_source
1641
- # Specifies the data provider for the tracker resource.
1642
- #
1643
- # * Required value for the following pricing plans:
1644
- # `MobileAssetTracking `\| `MobileAssetManagement`
1645
- #
1646
- # ^
1647
- #
1648
- # For more information about [Data Providers][1], and [Pricing
1649
- # plans][2], see the Amazon Location Service product page.
1650
- #
1651
- # <note markdown="1"> Amazon Location Service only uses `PricingPlanDataSource` to
1652
- # calculate billing for your tracker resource. Your data will not be
1653
- # shared with the data provider, and will remain in your AWS account
1654
- # or Region unless you move it.
1655
- #
1656
- # </note>
1657
- #
1658
- # Valid values: `Esri` \| `Here`
1659
- #
1660
- #
1661
- #
1662
- # [1]: https://aws.amazon.com/location/data-providers/
1663
- # [2]: https://aws.amazon.com/location/pricing/
1972
+ # This parameter is no longer used.
1664
1973
  # @return [String]
1665
1974
  #
1666
1975
  # @!attribute [rw] tags
@@ -1703,6 +2012,8 @@ module Aws::LocationService
1703
2012
  #
1704
2013
  class CreateTrackerRequest < Struct.new(
1705
2014
  :description,
2015
+ :event_bridge_enabled,
2016
+ :kms_key_enable_geospatial_queries,
1706
2017
  :kms_key_id,
1707
2018
  :position_filtering,
1708
2019
  :pricing_plan,
@@ -1724,7 +2035,7 @@ module Aws::LocationService
1724
2035
  #
1725
2036
  # @!attribute [rw] tracker_arn
1726
2037
  # The Amazon Resource Name (ARN) for the tracker resource. Used when
1727
- # you need to specify a resource across all AWS.
2038
+ # you need to specify a resource across all Amazon Web Services.
1728
2039
  #
1729
2040
  # * Format example:
1730
2041
  # `arn:aws:geo:region:account-id:tracker/ExampleTracker`
@@ -1766,13 +2077,6 @@ module Aws::LocationService
1766
2077
  #
1767
2078
  # [1]: https://aws.amazon.com/service-terms/
1768
2079
  #
1769
- # @note When making an API call, you may pass DataSourceConfiguration
1770
- # data as a hash:
1771
- #
1772
- # {
1773
- # intended_use: "SingleUse", # accepts SingleUse, Storage
1774
- # }
1775
- #
1776
2080
  # @!attribute [rw] intended_use
1777
2081
  # Specifies how the results of an operation will be stored by the
1778
2082
  # caller.
@@ -1795,13 +2099,6 @@ module Aws::LocationService
1795
2099
  include Aws::Structure
1796
2100
  end
1797
2101
 
1798
- # @note When making an API call, you may pass DeleteGeofenceCollectionRequest
1799
- # data as a hash:
1800
- #
1801
- # {
1802
- # collection_name: "ResourceName", # required
1803
- # }
1804
- #
1805
2102
  # @!attribute [rw] collection_name
1806
2103
  # The name of the geofence collection to be deleted.
1807
2104
  # @return [String]
@@ -1818,13 +2115,22 @@ module Aws::LocationService
1818
2115
  #
1819
2116
  class DeleteGeofenceCollectionResponse < Aws::EmptyStructure; end
1820
2117
 
1821
- # @note When making an API call, you may pass DeleteMapRequest
1822
- # data as a hash:
2118
+ # @!attribute [rw] key_name
2119
+ # The name of the API key to delete.
2120
+ # @return [String]
1823
2121
  #
1824
- # {
1825
- # map_name: "ResourceName", # required
1826
- # }
2122
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/DeleteKeyRequest AWS API Documentation
1827
2123
  #
2124
+ class DeleteKeyRequest < Struct.new(
2125
+ :key_name)
2126
+ SENSITIVE = []
2127
+ include Aws::Structure
2128
+ end
2129
+
2130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/DeleteKeyResponse AWS API Documentation
2131
+ #
2132
+ class DeleteKeyResponse < Aws::EmptyStructure; end
2133
+
1828
2134
  # @!attribute [rw] map_name
1829
2135
  # The name of the map resource to be deleted.
1830
2136
  # @return [String]
@@ -1841,13 +2147,6 @@ module Aws::LocationService
1841
2147
  #
1842
2148
  class DeleteMapResponse < Aws::EmptyStructure; end
1843
2149
 
1844
- # @note When making an API call, you may pass DeletePlaceIndexRequest
1845
- # data as a hash:
1846
- #
1847
- # {
1848
- # index_name: "ResourceName", # required
1849
- # }
1850
- #
1851
2150
  # @!attribute [rw] index_name
1852
2151
  # The name of the place index resource to be deleted.
1853
2152
  # @return [String]
@@ -1864,13 +2163,6 @@ module Aws::LocationService
1864
2163
  #
1865
2164
  class DeletePlaceIndexResponse < Aws::EmptyStructure; end
1866
2165
 
1867
- # @note When making an API call, you may pass DeleteRouteCalculatorRequest
1868
- # data as a hash:
1869
- #
1870
- # {
1871
- # calculator_name: "ResourceName", # required
1872
- # }
1873
- #
1874
2166
  # @!attribute [rw] calculator_name
1875
2167
  # The name of the route calculator resource to be deleted.
1876
2168
  # @return [String]
@@ -1887,13 +2179,6 @@ module Aws::LocationService
1887
2179
  #
1888
2180
  class DeleteRouteCalculatorResponse < Aws::EmptyStructure; end
1889
2181
 
1890
- # @note When making an API call, you may pass DeleteTrackerRequest
1891
- # data as a hash:
1892
- #
1893
- # {
1894
- # tracker_name: "ResourceName", # required
1895
- # }
1896
- #
1897
2182
  # @!attribute [rw] tracker_name
1898
2183
  # The name of the tracker resource to be deleted.
1899
2184
  # @return [String]
@@ -1910,13 +2195,6 @@ module Aws::LocationService
1910
2195
  #
1911
2196
  class DeleteTrackerResponse < Aws::EmptyStructure; end
1912
2197
 
1913
- # @note When making an API call, you may pass DescribeGeofenceCollectionRequest
1914
- # data as a hash:
1915
- #
1916
- # {
1917
- # collection_name: "ResourceName", # required
1918
- # }
1919
- #
1920
2198
  # @!attribute [rw] collection_name
1921
2199
  # The name of the geofence collection.
1922
2200
  # @return [String]
@@ -1931,7 +2209,8 @@ module Aws::LocationService
1931
2209
 
1932
2210
  # @!attribute [rw] collection_arn
1933
2211
  # The Amazon Resource Name (ARN) for the geofence collection resource.
1934
- # Used when you need to specify a resource across all AWS.
2212
+ # Used when you need to specify a resource across all Amazon Web
2213
+ # Services.
1935
2214
  #
1936
2215
  # * Format example:
1937
2216
  # `arn:aws:geo:region:account-id:geofence-collection/ExampleGeofenceCollection`
@@ -1956,9 +2235,13 @@ module Aws::LocationService
1956
2235
  # The optional description for the geofence collection.
1957
2236
  # @return [String]
1958
2237
  #
2238
+ # @!attribute [rw] geofence_count
2239
+ # The number of geofences in the geofence collection.
2240
+ # @return [Integer]
2241
+ #
1959
2242
  # @!attribute [rw] kms_key_id
1960
- # A key identifier for an [AWS KMS customer managed key][1] assigned
1961
- # to the Amazon Location resource
2243
+ # A key identifier for an [Amazon Web Services KMS customer managed
2244
+ # key][1] assigned to the Amazon Location resource
1962
2245
  #
1963
2246
  #
1964
2247
  #
@@ -1966,18 +2249,11 @@ module Aws::LocationService
1966
2249
  # @return [String]
1967
2250
  #
1968
2251
  # @!attribute [rw] pricing_plan
1969
- # The pricing plan selected for the specified geofence collection.
1970
- #
1971
- # For additional details and restrictions on each pricing plan option,
1972
- # see the [Amazon Location Service pricing page][1].
1973
- #
1974
- #
1975
- #
1976
- # [1]: https://aws.amazon.com/location/pricing/
2252
+ # No longer used. Always returns `RequestBasedUsage`.
1977
2253
  # @return [String]
1978
2254
  #
1979
2255
  # @!attribute [rw] pricing_plan_data_source
1980
- # The specified data provider for the geofence collection.
2256
+ # No longer used. Always returns an empty string.
1981
2257
  # @return [String]
1982
2258
  #
1983
2259
  # @!attribute [rw] tags
@@ -2000,6 +2276,7 @@ module Aws::LocationService
2000
2276
  :collection_name,
2001
2277
  :create_time,
2002
2278
  :description,
2279
+ :geofence_count,
2003
2280
  :kms_key_id,
2004
2281
  :pricing_plan,
2005
2282
  :pricing_plan_data_source,
@@ -2009,13 +2286,91 @@ module Aws::LocationService
2009
2286
  include Aws::Structure
2010
2287
  end
2011
2288
 
2012
- # @note When making an API call, you may pass DescribeMapRequest
2013
- # data as a hash:
2289
+ # @!attribute [rw] key_name
2290
+ # The name of the API key resource.
2291
+ # @return [String]
2292
+ #
2293
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/DescribeKeyRequest AWS API Documentation
2294
+ #
2295
+ class DescribeKeyRequest < Struct.new(
2296
+ :key_name)
2297
+ SENSITIVE = []
2298
+ include Aws::Structure
2299
+ end
2300
+
2301
+ # @!attribute [rw] create_time
2302
+ # The timestamp for when the API key resource was created in [ ISO
2303
+ # 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
2304
+ #
2305
+ #
2306
+ #
2307
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
2308
+ # @return [Time]
2309
+ #
2310
+ # @!attribute [rw] description
2311
+ # The optional description for the API key resource.
2312
+ # @return [String]
2313
+ #
2314
+ # @!attribute [rw] expire_time
2315
+ # The timestamp for when the API key resource will expire in [ ISO
2316
+ # 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
2317
+ #
2318
+ #
2319
+ #
2320
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
2321
+ # @return [Time]
2322
+ #
2323
+ # @!attribute [rw] key
2324
+ # The key value/string of an API key.
2325
+ # @return [String]
2326
+ #
2327
+ # @!attribute [rw] key_arn
2328
+ # The Amazon Resource Name (ARN) for the API key resource. Used when
2329
+ # you need to specify a resource across all Amazon Web Services.
2330
+ #
2331
+ # * Format example: `arn:aws:geo:region:account-id:key/ExampleKey`
2332
+ #
2333
+ # ^
2334
+ # @return [String]
2335
+ #
2336
+ # @!attribute [rw] key_name
2337
+ # The name of the API key resource.
2338
+ # @return [String]
2339
+ #
2340
+ # @!attribute [rw] restrictions
2341
+ # API Restrictions on the allowed actions, resources, and referers for
2342
+ # an API key resource.
2343
+ # @return [Types::ApiKeyRestrictions]
2344
+ #
2345
+ # @!attribute [rw] tags
2346
+ # Tags associated with the API key resource.
2347
+ # @return [Hash<String,String>]
2348
+ #
2349
+ # @!attribute [rw] update_time
2350
+ # The timestamp for when the API key resource was last updated in [
2351
+ # ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
2352
+ #
2353
+ #
2354
+ #
2355
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
2356
+ # @return [Time]
2014
2357
  #
2015
- # {
2016
- # map_name: "ResourceName", # required
2017
- # }
2358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/DescribeKeyResponse AWS API Documentation
2018
2359
  #
2360
+ class DescribeKeyResponse < Struct.new(
2361
+ :create_time,
2362
+ :description,
2363
+ :expire_time,
2364
+ :key,
2365
+ :key_arn,
2366
+ :key_name,
2367
+ :restrictions,
2368
+ :tags,
2369
+ :update_time)
2370
+ SENSITIVE = [:key]
2371
+ include Aws::Structure
2372
+ end
2373
+
2019
2374
  # @!attribute [rw] map_name
2020
2375
  # The name of the map resource.
2021
2376
  # @return [String]
@@ -2051,9 +2406,9 @@ module Aws::LocationService
2051
2406
  #
2052
2407
  # @!attribute [rw] map_arn
2053
2408
  # The Amazon Resource Name (ARN) for the map resource. Used to specify
2054
- # a resource across all AWS.
2409
+ # a resource across all Amazon Web Services.
2055
2410
  #
2056
- # * Format example: `arn:aws:geo:region:account-id:maps/ExampleMap`
2411
+ # * Format example: `arn:aws:geo:region:account-id:map/ExampleMap`
2057
2412
  #
2058
2413
  # ^
2059
2414
  # @return [String]
@@ -2063,9 +2418,7 @@ module Aws::LocationService
2063
2418
  # @return [String]
2064
2419
  #
2065
2420
  # @!attribute [rw] pricing_plan
2066
- # The pricing plan selected for the specified map resource.
2067
- #
2068
- # <p>For additional details and restrictions on each pricing plan option, see <a href="https://aws.amazon.com/location/pricing/">Amazon Location Service pricing</a>.</p>
2421
+ # No longer used. Always returns `RequestBasedUsage`.
2069
2422
  # @return [String]
2070
2423
  #
2071
2424
  # @!attribute [rw] tags
@@ -2097,13 +2450,6 @@ module Aws::LocationService
2097
2450
  include Aws::Structure
2098
2451
  end
2099
2452
 
2100
- # @note When making an API call, you may pass DescribePlaceIndexRequest
2101
- # data as a hash:
2102
- #
2103
- # {
2104
- # index_name: "ResourceName", # required
2105
- # }
2106
- #
2107
2453
  # @!attribute [rw] index_name
2108
2454
  # The name of the place index resource.
2109
2455
  # @return [String]
@@ -2131,6 +2477,8 @@ module Aws::LocationService
2131
2477
  #
2132
2478
  # * `Esri`
2133
2479
  #
2480
+ # * `Grab`
2481
+ #
2134
2482
  # * `Here`
2135
2483
  #
2136
2484
  # For more information about data providers, see [Amazon Location
@@ -2151,7 +2499,7 @@ module Aws::LocationService
2151
2499
  #
2152
2500
  # @!attribute [rw] index_arn
2153
2501
  # The Amazon Resource Name (ARN) for the place index resource. Used to
2154
- # specify a resource across AWS.
2502
+ # specify a resource across Amazon Web Services.
2155
2503
  #
2156
2504
  # * Format example:
2157
2505
  # `arn:aws:geo:region:account-id:place-index/ExamplePlaceIndex`
@@ -2164,14 +2512,7 @@ module Aws::LocationService
2164
2512
  # @return [String]
2165
2513
  #
2166
2514
  # @!attribute [rw] pricing_plan
2167
- # The pricing plan selected for the specified place index resource.
2168
- #
2169
- # For additional details and restrictions on each pricing plan option,
2170
- # see [Amazon Location Service pricing][1].
2171
- #
2172
- #
2173
- #
2174
- # [1]: https://aws.amazon.com/location/pricing/
2515
+ # No longer used. Always returns `RequestBasedUsage`.
2175
2516
  # @return [String]
2176
2517
  #
2177
2518
  # @!attribute [rw] tags
@@ -2203,13 +2544,6 @@ module Aws::LocationService
2203
2544
  include Aws::Structure
2204
2545
  end
2205
2546
 
2206
- # @note When making an API call, you may pass DescribeRouteCalculatorRequest
2207
- # data as a hash:
2208
- #
2209
- # {
2210
- # calculator_name: "ResourceName", # required
2211
- # }
2212
- #
2213
2547
  # @!attribute [rw] calculator_name
2214
2548
  # The name of the route calculator resource.
2215
2549
  # @return [String]
@@ -2224,7 +2558,7 @@ module Aws::LocationService
2224
2558
 
2225
2559
  # @!attribute [rw] calculator_arn
2226
2560
  # The Amazon Resource Name (ARN) for the Route calculator resource.
2227
- # Use the ARN when you specify a resource across AWS.
2561
+ # Use the ARN when you specify a resource across Amazon Web Services.
2228
2562
  #
2229
2563
  # * Format example:
2230
2564
  # `arn:aws:geo:region:account-id:route-calculator/ExampleCalculator`
@@ -2255,6 +2589,8 @@ module Aws::LocationService
2255
2589
  #
2256
2590
  # * `Esri`
2257
2591
  #
2592
+ # * `Grab`
2593
+ #
2258
2594
  # * `Here`
2259
2595
  #
2260
2596
  # For more information about data providers, see [Amazon Location
@@ -2270,15 +2606,7 @@ module Aws::LocationService
2270
2606
  # @return [String]
2271
2607
  #
2272
2608
  # @!attribute [rw] pricing_plan
2273
- # The pricing plan selected for the specified route calculator
2274
- # resource.
2275
- #
2276
- # For additional details and restrictions on each pricing plan option,
2277
- # see [Amazon Location Service pricing][1].
2278
- #
2279
- #
2280
- #
2281
- # [1]: https://aws.amazon.com/location/pricing/
2609
+ # Always returns `RequestBasedUsage`.
2282
2610
  # @return [String]
2283
2611
  #
2284
2612
  # @!attribute [rw] tags
@@ -2313,13 +2641,6 @@ module Aws::LocationService
2313
2641
  include Aws::Structure
2314
2642
  end
2315
2643
 
2316
- # @note When making an API call, you may pass DescribeTrackerRequest
2317
- # data as a hash:
2318
- #
2319
- # {
2320
- # tracker_name: "ResourceName", # required
2321
- # }
2322
- #
2323
2644
  # @!attribute [rw] tracker_name
2324
2645
  # The name of the tracker resource.
2325
2646
  # @return [String]
@@ -2345,9 +2666,39 @@ module Aws::LocationService
2345
2666
  # The optional description for the tracker resource.
2346
2667
  # @return [String]
2347
2668
  #
2669
+ # @!attribute [rw] event_bridge_enabled
2670
+ # Whether `UPDATE` events from this tracker in EventBridge are
2671
+ # enabled. If set to `true` these events will be sent to EventBridge.
2672
+ # @return [Boolean]
2673
+ #
2674
+ # @!attribute [rw] kms_key_enable_geospatial_queries
2675
+ # Enables `GeospatialQueries` for a tracker that uses a [Amazon Web
2676
+ # Services KMS customer managed key][1].
2677
+ #
2678
+ # This parameter is only used if you are using a KMS customer managed
2679
+ # key.
2680
+ #
2681
+ # <note markdown="1"> If you wish to encrypt your data using your own KMS customer managed
2682
+ # key, then the Bounding Polygon Queries feature will be disabled by
2683
+ # default. This is because by using this feature, a representation of
2684
+ # your device positions will not be encrypted using the your KMS
2685
+ # managed key. The exact device position, however; is still encrypted
2686
+ # using your managed key.
2687
+ #
2688
+ # You can choose to opt-in to the Bounding Polygon Quseries feature.
2689
+ # This is done by setting the `KmsKeyEnableGeospatialQueries`
2690
+ # parameter to true when creating or updating a Tracker.
2691
+ #
2692
+ # </note>
2693
+ #
2694
+ #
2695
+ #
2696
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html
2697
+ # @return [Boolean]
2698
+ #
2348
2699
  # @!attribute [rw] kms_key_id
2349
- # A key identifier for an [AWS KMS customer managed key][1] assigned
2350
- # to the Amazon Location resource.
2700
+ # A key identifier for an [Amazon Web Services KMS customer managed
2701
+ # key][1] assigned to the Amazon Location resource.
2351
2702
  #
2352
2703
  #
2353
2704
  #
@@ -2359,18 +2710,11 @@ module Aws::LocationService
2359
2710
  # @return [String]
2360
2711
  #
2361
2712
  # @!attribute [rw] pricing_plan
2362
- # The pricing plan selected for the specified tracker resource.
2363
- #
2364
- # For additional details and restrictions on each pricing plan option,
2365
- # see [Amazon Location Service pricing][1].
2366
- #
2367
- #
2368
- #
2369
- # [1]: https://aws.amazon.com/location/pricing/
2713
+ # Always returns `RequestBasedUsage`.
2370
2714
  # @return [String]
2371
2715
  #
2372
2716
  # @!attribute [rw] pricing_plan_data_source
2373
- # The specified data provider for the tracker resource.
2717
+ # No longer used. Always returns an empty string.
2374
2718
  # @return [String]
2375
2719
  #
2376
2720
  # @!attribute [rw] tags
@@ -2379,7 +2723,7 @@ module Aws::LocationService
2379
2723
  #
2380
2724
  # @!attribute [rw] tracker_arn
2381
2725
  # The Amazon Resource Name (ARN) for the tracker resource. Used when
2382
- # you need to specify a resource across all AWS.
2726
+ # you need to specify a resource across all Amazon Web Services.
2383
2727
  #
2384
2728
  # * Format example:
2385
2729
  # `arn:aws:geo:region:account-id:tracker/ExampleTracker`
@@ -2405,6 +2749,8 @@ module Aws::LocationService
2405
2749
  class DescribeTrackerResponse < Struct.new(
2406
2750
  :create_time,
2407
2751
  :description,
2752
+ :event_bridge_enabled,
2753
+ :kms_key_enable_geospatial_queries,
2408
2754
  :kms_key_id,
2409
2755
  :position_filtering,
2410
2756
  :pricing_plan,
@@ -2419,6 +2765,10 @@ module Aws::LocationService
2419
2765
 
2420
2766
  # Contains the device position details.
2421
2767
  #
2768
+ # @!attribute [rw] accuracy
2769
+ # The accuracy of the device position.
2770
+ # @return [Types::PositionalAccuracy]
2771
+ #
2422
2772
  # @!attribute [rw] device_id
2423
2773
  # The device whose position you retrieved.
2424
2774
  # @return [String]
@@ -2427,6 +2777,10 @@ module Aws::LocationService
2427
2777
  # The last known device position.
2428
2778
  # @return [Array<Float>]
2429
2779
  #
2780
+ # @!attribute [rw] position_properties
2781
+ # The properties associated with the position.
2782
+ # @return [Hash<String,String>]
2783
+ #
2430
2784
  # @!attribute [rw] received_time
2431
2785
  # The timestamp for when the tracker resource received the device
2432
2786
  # position in [ ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
@@ -2448,24 +2802,21 @@ module Aws::LocationService
2448
2802
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/DevicePosition AWS API Documentation
2449
2803
  #
2450
2804
  class DevicePosition < Struct.new(
2805
+ :accuracy,
2451
2806
  :device_id,
2452
2807
  :position,
2808
+ :position_properties,
2453
2809
  :received_time,
2454
2810
  :sample_time)
2455
- SENSITIVE = [:position]
2811
+ SENSITIVE = [:position, :position_properties]
2456
2812
  include Aws::Structure
2457
2813
  end
2458
2814
 
2459
2815
  # Contains the position update details for a device.
2460
2816
  #
2461
- # @note When making an API call, you may pass DevicePositionUpdate
2462
- # data as a hash:
2463
- #
2464
- # {
2465
- # device_id: "Id", # required
2466
- # position: [1.0], # required
2467
- # sample_time: Time.now, # required
2468
- # }
2817
+ # @!attribute [rw] accuracy
2818
+ # The accuracy of the device position.
2819
+ # @return [Types::PositionalAccuracy]
2469
2820
  #
2470
2821
  # @!attribute [rw] device_id
2471
2822
  # The device associated to the position update.
@@ -2477,9 +2828,17 @@ module Aws::LocationService
2477
2828
  #
2478
2829
  #
2479
2830
  #
2480
- # [1]: https://earth-info.nga.mil/GandG/wgs84/index.html
2831
+ # [1]: https://earth-info.nga.mil/index.php?dir=wgs84&amp;action=wgs84
2481
2832
  # @return [Array<Float>]
2482
2833
  #
2834
+ # @!attribute [rw] position_properties
2835
+ # Associates one of more properties with the position update. A
2836
+ # property is a key-value pair stored with the position update and
2837
+ # added to any geofence event the update may trigger.
2838
+ #
2839
+ # Format: `"key" : "value"`
2840
+ # @return [Hash<String,String>]
2841
+ #
2483
2842
  # @!attribute [rw] sample_time
2484
2843
  # The timestamp at which the device's position was determined. Uses
2485
2844
  # [ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`
@@ -2492,25 +2851,19 @@ module Aws::LocationService
2492
2851
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/DevicePositionUpdate AWS API Documentation
2493
2852
  #
2494
2853
  class DevicePositionUpdate < Struct.new(
2854
+ :accuracy,
2495
2855
  :device_id,
2496
2856
  :position,
2857
+ :position_properties,
2497
2858
  :sample_time)
2498
- SENSITIVE = [:position]
2859
+ SENSITIVE = [:position, :position_properties]
2499
2860
  include Aws::Structure
2500
2861
  end
2501
2862
 
2502
- # @note When making an API call, you may pass DisassociateTrackerConsumerRequest
2503
- # data as a hash:
2504
- #
2505
- # {
2506
- # consumer_arn: "Arn", # required
2507
- # tracker_name: "ResourceName", # required
2508
- # }
2509
- #
2510
2863
  # @!attribute [rw] consumer_arn
2511
2864
  # The Amazon Resource Name (ARN) for the geofence collection to be
2512
2865
  # disassociated from the tracker resource. Used when you need to
2513
- # specify a resource across all AWS.
2866
+ # specify a resource across all Amazon Web Services.
2514
2867
  #
2515
2868
  # * Format example:
2516
2869
  # `arn:aws:geo:region:account-id:geofence-collection/ExampleGeofenceCollectionConsumer`
@@ -2538,57 +2891,53 @@ module Aws::LocationService
2538
2891
 
2539
2892
  # Contains the geofence geometry details.
2540
2893
  #
2894
+ # A geofence geometry is made up of either a polygon or a circle. Can be
2895
+ # either a polygon or a circle. Including both will return a validation
2896
+ # error.
2897
+ #
2541
2898
  # <note markdown="1"> Amazon Location doesn't currently support polygons with holes,
2542
2899
  # multipolygons, polygons that are wound clockwise, or that cross the
2543
2900
  # antimeridian.
2544
2901
  #
2545
2902
  # </note>
2546
2903
  #
2547
- # @note When making an API call, you may pass GeofenceGeometry
2548
- # data as a hash:
2549
- #
2550
- # {
2551
- # polygon: [
2552
- # [
2553
- # [1.0],
2554
- # ],
2555
- # ],
2556
- # }
2904
+ # @!attribute [rw] circle
2905
+ # A circle on the earth, as defined by a center point and a radius.
2906
+ # @return [Types::Circle]
2557
2907
  #
2558
2908
  # @!attribute [rw] polygon
2559
- # An array of 1 or more linear rings. A linear ring is an array of 4
2560
- # or more vertices, where the first and last vertex are the same to
2561
- # form a closed boundary. Each vertex is a 2-dimensional point of the
2562
- # form: `[longitude, latitude]`.
2563
- #
2564
- # The first linear ring is an outer ring, describing the polygon's
2565
- # boundary. Subsequent linear rings may be inner or outer rings to
2566
- # describe holes and islands. Outer rings must list their vertices in
2567
- # counter-clockwise order around the ring's center, where the left
2568
- # side is the polygon's exterior. Inner rings must list their
2569
- # vertices in clockwise order, where the left side is the polygon's
2570
- # interior.
2909
+ # A polygon is a list of linear rings which are each made up of a list
2910
+ # of vertices.
2911
+ #
2912
+ # Each vertex is a 2-dimensional point of the form: `[longitude,
2913
+ # latitude]`. This is represented as an array of doubles of length 2
2914
+ # (so `[double, double]`).
2915
+ #
2916
+ # An array of 4 or more vertices, where the first and last vertex are
2917
+ # the same (to form a closed boundary), is called a linear ring. The
2918
+ # linear ring vertices must be listed in counter-clockwise order
2919
+ # around the ring’s interior. The linear ring is represented as an
2920
+ # array of vertices, or an array of arrays of doubles (`[[double,
2921
+ # double], ...]`).
2922
+ #
2923
+ # A geofence consists of a single linear ring. To allow for future
2924
+ # expansion, the Polygon parameter takes an array of linear rings,
2925
+ # which is represented as an array of arrays of arrays of doubles
2926
+ # (`[[[double, double], ...], ...]`).
2927
+ #
2928
+ # A linear ring for use in geofences can consist of between 4 and
2929
+ # 1,000 vertices.
2571
2930
  # @return [Array<Array<Array<Float>>>]
2572
2931
  #
2573
2932
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/GeofenceGeometry AWS API Documentation
2574
2933
  #
2575
2934
  class GeofenceGeometry < Struct.new(
2935
+ :circle,
2576
2936
  :polygon)
2577
- SENSITIVE = []
2937
+ SENSITIVE = [:circle]
2578
2938
  include Aws::Structure
2579
2939
  end
2580
2940
 
2581
- # @note When making an API call, you may pass GetDevicePositionHistoryRequest
2582
- # data as a hash:
2583
- #
2584
- # {
2585
- # device_id: "Id", # required
2586
- # end_time_exclusive: Time.now,
2587
- # next_token: "Token",
2588
- # start_time_inclusive: Time.now,
2589
- # tracker_name: "ResourceName", # required
2590
- # }
2591
- #
2592
2941
  # @!attribute [rw] device_id
2593
2942
  # The device whose position history you want to retrieve.
2594
2943
  # @return [String]
@@ -2610,6 +2959,13 @@ module Aws::LocationService
2610
2959
  # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
2611
2960
  # @return [Time]
2612
2961
  #
2962
+ # @!attribute [rw] max_results
2963
+ # An optional limit for the number of device positions returned in a
2964
+ # single call.
2965
+ #
2966
+ # Default value: `100`
2967
+ # @return [Integer]
2968
+ #
2613
2969
  # @!attribute [rw] next_token
2614
2970
  # The pagination token specifying which page of results to return in
2615
2971
  # the response. If no token is provided, the default page is the first
@@ -2645,6 +3001,7 @@ module Aws::LocationService
2645
3001
  class GetDevicePositionHistoryRequest < Struct.new(
2646
3002
  :device_id,
2647
3003
  :end_time_exclusive,
3004
+ :max_results,
2648
3005
  :next_token,
2649
3006
  :start_time_inclusive,
2650
3007
  :tracker_name)
@@ -2671,14 +3028,6 @@ module Aws::LocationService
2671
3028
  include Aws::Structure
2672
3029
  end
2673
3030
 
2674
- # @note When making an API call, you may pass GetDevicePositionRequest
2675
- # data as a hash:
2676
- #
2677
- # {
2678
- # device_id: "Id", # required
2679
- # tracker_name: "ResourceName", # required
2680
- # }
2681
- #
2682
3031
  # @!attribute [rw] device_id
2683
3032
  # The device whose position you want to retrieve.
2684
3033
  # @return [String]
@@ -2696,6 +3045,10 @@ module Aws::LocationService
2696
3045
  include Aws::Structure
2697
3046
  end
2698
3047
 
3048
+ # @!attribute [rw] accuracy
3049
+ # The accuracy of the device position.
3050
+ # @return [Types::PositionalAccuracy]
3051
+ #
2699
3052
  # @!attribute [rw] device_id
2700
3053
  # The device whose position you retrieved.
2701
3054
  # @return [String]
@@ -2704,6 +3057,10 @@ module Aws::LocationService
2704
3057
  # The last known device position.
2705
3058
  # @return [Array<Float>]
2706
3059
  #
3060
+ # @!attribute [rw] position_properties
3061
+ # The properties associated with the position.
3062
+ # @return [Hash<String,String>]
3063
+ #
2707
3064
  # @!attribute [rw] received_time
2708
3065
  # The timestamp for when the tracker resource received the device
2709
3066
  # position in [ ISO 8601 ][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
@@ -2725,22 +3082,16 @@ module Aws::LocationService
2725
3082
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/GetDevicePositionResponse AWS API Documentation
2726
3083
  #
2727
3084
  class GetDevicePositionResponse < Struct.new(
3085
+ :accuracy,
2728
3086
  :device_id,
2729
3087
  :position,
3088
+ :position_properties,
2730
3089
  :received_time,
2731
3090
  :sample_time)
2732
- SENSITIVE = [:position]
3091
+ SENSITIVE = [:position, :position_properties]
2733
3092
  include Aws::Structure
2734
3093
  end
2735
3094
 
2736
- # @note When making an API call, you may pass GetGeofenceRequest
2737
- # data as a hash:
2738
- #
2739
- # {
2740
- # collection_name: "ResourceName", # required
2741
- # geofence_id: "Id", # required
2742
- # }
2743
- #
2744
3095
  # @!attribute [rw] collection_name
2745
3096
  # The geofence collection storing the target geofence.
2746
3097
  # @return [String]
@@ -2771,8 +3122,17 @@ module Aws::LocationService
2771
3122
  # The geofence identifier.
2772
3123
  # @return [String]
2773
3124
  #
3125
+ # @!attribute [rw] geofence_properties
3126
+ # User defined properties of the geofence. A property is a key-value
3127
+ # pair stored with the geofence and added to any geofence event
3128
+ # triggered with that geofence.
3129
+ #
3130
+ # Format: `"key" : "value"`
3131
+ # @return [Hash<String,String>]
3132
+ #
2774
3133
  # @!attribute [rw] geometry
2775
- # Contains the geofence geometry details describing a polygon.
3134
+ # Contains the geofence geometry details describing a polygon or a
3135
+ # circle.
2776
3136
  # @return [Types::GeofenceGeometry]
2777
3137
  #
2778
3138
  # @!attribute [rw] status
@@ -2804,27 +3164,19 @@ module Aws::LocationService
2804
3164
  class GetGeofenceResponse < Struct.new(
2805
3165
  :create_time,
2806
3166
  :geofence_id,
3167
+ :geofence_properties,
2807
3168
  :geometry,
2808
3169
  :status,
2809
3170
  :update_time)
2810
- SENSITIVE = []
3171
+ SENSITIVE = [:geofence_properties]
2811
3172
  include Aws::Structure
2812
3173
  end
2813
3174
 
2814
- # @note When making an API call, you may pass GetMapGlyphsRequest
2815
- # data as a hash:
2816
- #
2817
- # {
2818
- # font_stack: "String", # required
2819
- # font_unicode_range: "GetMapGlyphsRequestFontUnicodeRangeString", # required
2820
- # map_name: "ResourceName", # required
2821
- # }
2822
- #
2823
3175
  # @!attribute [rw] font_stack
2824
3176
  # A comma-separated list of fonts to load glyphs from in order of
2825
3177
  # preference. For example, `Noto Sans Regular, Arial Unicode`.
2826
3178
  #
2827
- # Valid fonts stacks for [Esri][1] styles:
3179
+ # Valid font stacks for [Esri][1] styles:
2828
3180
  #
2829
3181
  # * VectorEsriDarkGrayCanvas – `Ubuntu Medium Italic` \| `Ubuntu
2830
3182
  # Medium` \| `Ubuntu Italic` \| `Ubuntu Regular` \| `Ubuntu Bold`
@@ -2844,14 +3196,51 @@ module Aws::LocationService
2844
3196
  #
2845
3197
  # Valid font stacks for [HERE Technologies][2] styles:
2846
3198
  #
2847
- # * VectorHereBerlin – `Fira GO Regular` \| `Fira GO Bold`
3199
+ # * VectorHereContrast – `Fira GO Regular` \| `Fira GO Bold`
3200
+ #
3201
+ # * VectorHereExplore, VectorHereExploreTruck,
3202
+ # HybridHereExploreSatellite – `Fira GO Italic` \| `Fira GO Map` \|
3203
+ # `Fira GO Map Bold` \| `Noto Sans CJK JP Bold` \| `Noto Sans CJK JP
3204
+ # Light` \| `Noto Sans CJK JP Regular`
3205
+ #
3206
+ # Valid font stacks for [GrabMaps][3] styles:
3207
+ #
3208
+ # * VectorGrabStandardLight, VectorGrabStandardDark – `Noto Sans
3209
+ # Regular` \| `Noto Sans Medium` \| `Noto Sans Bold`
3210
+ #
3211
+ # ^
3212
+ #
3213
+ # Valid font stacks for [Open Data][4] styles:
3214
+ #
3215
+ # * VectorOpenDataStandardLight, VectorOpenDataStandardDark,
3216
+ # VectorOpenDataVisualizationLight, VectorOpenDataVisualizationDark
3217
+ # – `Amazon Ember Regular,Noto Sans Regular` \| `Amazon Ember
3218
+ # Bold,Noto Sans Bold` \| `Amazon Ember Medium,Noto Sans Medium` \|
3219
+ # `Amazon Ember Regular Italic,Noto Sans Italic` \| `Amazon Ember
3220
+ # Condensed RC Regular,Noto Sans Regular` \| `Amazon Ember Condensed
3221
+ # RC Bold,Noto Sans Bold` \| `Amazon Ember Regular,Noto Sans
3222
+ # Regular,Noto Sans Arabic Regular` \| `Amazon Ember Condensed RC
3223
+ # Bold,Noto Sans Bold,Noto Sans Arabic Condensed Bold` \| `Amazon
3224
+ # Ember Bold,Noto Sans Bold,Noto Sans Arabic Bold` \| `Amazon Ember
3225
+ # Regular Italic,Noto Sans Italic,Noto Sans Arabic Regular` \|
3226
+ # `Amazon Ember Condensed RC Regular,Noto Sans Regular,Noto Sans
3227
+ # Arabic Condensed Regular` \| `Amazon Ember Medium,Noto Sans
3228
+ # Medium,Noto Sans Arabic Medium`
2848
3229
  #
2849
3230
  # ^
2850
3231
  #
3232
+ # <note markdown="1"> The fonts used by the Open Data map styles are combined fonts that
3233
+ # use `Amazon Ember` for most glyphs but `Noto Sans` for glyphs
3234
+ # unsupported by `Amazon Ember`.
3235
+ #
3236
+ # </note>
3237
+ #
2851
3238
  #
2852
3239
  #
2853
3240
  # [1]: https://docs.aws.amazon.com/location/latest/developerguide/esri.html
2854
3241
  # [2]: https://docs.aws.amazon.com/location/latest/developerguide/HERE.html
3242
+ # [3]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html
3243
+ # [4]: https://docs.aws.amazon.com/location/latest/developerguide/open-data.html
2855
3244
  # @return [String]
2856
3245
  #
2857
3246
  # @!attribute [rw] font_unicode_range
@@ -2861,6 +3250,14 @@ module Aws::LocationService
2861
3250
  # multiples of 256.
2862
3251
  # @return [String]
2863
3252
  #
3253
+ # @!attribute [rw] key
3254
+ # The optional [API key][1] to authorize the request.
3255
+ #
3256
+ #
3257
+ #
3258
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
3259
+ # @return [String]
3260
+ #
2864
3261
  # @!attribute [rw] map_name
2865
3262
  # The map resource associated with the glyph file.
2866
3263
  # @return [String]
@@ -2870,13 +3267,18 @@ module Aws::LocationService
2870
3267
  class GetMapGlyphsRequest < Struct.new(
2871
3268
  :font_stack,
2872
3269
  :font_unicode_range,
3270
+ :key,
2873
3271
  :map_name)
2874
- SENSITIVE = []
3272
+ SENSITIVE = [:key]
2875
3273
  include Aws::Structure
2876
3274
  end
2877
3275
 
2878
3276
  # @!attribute [rw] blob
2879
- # The blob's content type.
3277
+ # The glyph, as binary blob.
3278
+ # @return [String]
3279
+ #
3280
+ # @!attribute [rw] cache_control
3281
+ # The HTTP Cache-Control directive for the value.
2880
3282
  # @return [String]
2881
3283
  #
2882
3284
  # @!attribute [rw] content_type
@@ -2887,19 +3289,12 @@ module Aws::LocationService
2887
3289
  #
2888
3290
  class GetMapGlyphsResponse < Struct.new(
2889
3291
  :blob,
3292
+ :cache_control,
2890
3293
  :content_type)
2891
3294
  SENSITIVE = []
2892
3295
  include Aws::Structure
2893
3296
  end
2894
3297
 
2895
- # @note When making an API call, you may pass GetMapSpritesRequest
2896
- # data as a hash:
2897
- #
2898
- # {
2899
- # file_name: "GetMapSpritesRequestFileNameString", # required
2900
- # map_name: "ResourceName", # required
2901
- # }
2902
- #
2903
3298
  # @!attribute [rw] file_name
2904
3299
  # The name of the sprite file. Use the following file names for the
2905
3300
  # sprite sheet:
@@ -2908,14 +3303,22 @@ module Aws::LocationService
2908
3303
  #
2909
3304
  # * `sprites@2x.png` for high pixel density displays
2910
3305
  #
2911
- # For the JSON document contain image offsets. Use the following file
2912
- # names:
3306
+ # For the JSON document containing image offsets. Use the following
3307
+ # file names:
2913
3308
  #
2914
3309
  # * `sprites.json`
2915
3310
  #
2916
3311
  # * `sprites@2x.json` for high pixel density displays
2917
3312
  # @return [String]
2918
3313
  #
3314
+ # @!attribute [rw] key
3315
+ # The optional [API key][1] to authorize the request.
3316
+ #
3317
+ #
3318
+ #
3319
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
3320
+ # @return [String]
3321
+ #
2919
3322
  # @!attribute [rw] map_name
2920
3323
  # The map resource associated with the sprite file.
2921
3324
  # @return [String]
@@ -2924,8 +3327,9 @@ module Aws::LocationService
2924
3327
  #
2925
3328
  class GetMapSpritesRequest < Struct.new(
2926
3329
  :file_name,
3330
+ :key,
2927
3331
  :map_name)
2928
- SENSITIVE = []
3332
+ SENSITIVE = [:key]
2929
3333
  include Aws::Structure
2930
3334
  end
2931
3335
 
@@ -2933,6 +3337,10 @@ module Aws::LocationService
2933
3337
  # Contains the body of the sprite sheet or JSON offset file.
2934
3338
  # @return [String]
2935
3339
  #
3340
+ # @!attribute [rw] cache_control
3341
+ # The HTTP Cache-Control directive for the value.
3342
+ # @return [String]
3343
+ #
2936
3344
  # @!attribute [rw] content_type
2937
3345
  # The content type of the sprite sheet and offsets. For example, the
2938
3346
  # sprite sheet content type is `image/png`, and the sprite offset JSON
@@ -2943,17 +3351,19 @@ module Aws::LocationService
2943
3351
  #
2944
3352
  class GetMapSpritesResponse < Struct.new(
2945
3353
  :blob,
3354
+ :cache_control,
2946
3355
  :content_type)
2947
3356
  SENSITIVE = []
2948
3357
  include Aws::Structure
2949
3358
  end
2950
3359
 
2951
- # @note When making an API call, you may pass GetMapStyleDescriptorRequest
2952
- # data as a hash:
3360
+ # @!attribute [rw] key
3361
+ # The optional [API key][1] to authorize the request.
3362
+ #
3363
+ #
2953
3364
  #
2954
- # {
2955
- # map_name: "ResourceName", # required
2956
- # }
3365
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
3366
+ # @return [String]
2957
3367
  #
2958
3368
  # @!attribute [rw] map_name
2959
3369
  # The map resource to retrieve the style descriptor from.
@@ -2962,8 +3372,9 @@ module Aws::LocationService
2962
3372
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/GetMapStyleDescriptorRequest AWS API Documentation
2963
3373
  #
2964
3374
  class GetMapStyleDescriptorRequest < Struct.new(
3375
+ :key,
2965
3376
  :map_name)
2966
- SENSITIVE = []
3377
+ SENSITIVE = [:key]
2967
3378
  include Aws::Structure
2968
3379
  end
2969
3380
 
@@ -2971,6 +3382,10 @@ module Aws::LocationService
2971
3382
  # Contains the body of the style descriptor.
2972
3383
  # @return [String]
2973
3384
  #
3385
+ # @!attribute [rw] cache_control
3386
+ # The HTTP Cache-Control directive for the value.
3387
+ # @return [String]
3388
+ #
2974
3389
  # @!attribute [rw] content_type
2975
3390
  # The style descriptor's content type. For example,
2976
3391
  # `application/json`.
@@ -2980,20 +3395,19 @@ module Aws::LocationService
2980
3395
  #
2981
3396
  class GetMapStyleDescriptorResponse < Struct.new(
2982
3397
  :blob,
3398
+ :cache_control,
2983
3399
  :content_type)
2984
3400
  SENSITIVE = []
2985
3401
  include Aws::Structure
2986
3402
  end
2987
3403
 
2988
- # @note When making an API call, you may pass GetMapTileRequest
2989
- # data as a hash:
3404
+ # @!attribute [rw] key
3405
+ # The optional [API key][1] to authorize the request.
2990
3406
  #
2991
- # {
2992
- # map_name: "ResourceName", # required
2993
- # x: "GetMapTileRequestXString", # required
2994
- # y: "GetMapTileRequestYString", # required
2995
- # z: "GetMapTileRequestZString", # required
2996
- # }
3407
+ #
3408
+ #
3409
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
3410
+ # @return [String]
2997
3411
  #
2998
3412
  # @!attribute [rw] map_name
2999
3413
  # The map resource to retrieve the map tiles from.
@@ -3014,11 +3428,12 @@ module Aws::LocationService
3014
3428
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/GetMapTileRequest AWS API Documentation
3015
3429
  #
3016
3430
  class GetMapTileRequest < Struct.new(
3431
+ :key,
3017
3432
  :map_name,
3018
3433
  :x,
3019
3434
  :y,
3020
3435
  :z)
3021
- SENSITIVE = []
3436
+ SENSITIVE = [:key]
3022
3437
  include Aws::Structure
3023
3438
  end
3024
3439
 
@@ -3026,6 +3441,10 @@ module Aws::LocationService
3026
3441
  # Contains Mapbox Vector Tile (MVT) data.
3027
3442
  # @return [String]
3028
3443
  #
3444
+ # @!attribute [rw] cache_control
3445
+ # The HTTP Cache-Control directive for the value.
3446
+ # @return [String]
3447
+ #
3029
3448
  # @!attribute [rw] content_type
3030
3449
  # The map tile's content type. For example,
3031
3450
  # `application/vnd.mapbox-vector-tile`.
@@ -3035,11 +3454,77 @@ module Aws::LocationService
3035
3454
  #
3036
3455
  class GetMapTileResponse < Struct.new(
3037
3456
  :blob,
3457
+ :cache_control,
3038
3458
  :content_type)
3039
3459
  SENSITIVE = []
3040
3460
  include Aws::Structure
3041
3461
  end
3042
3462
 
3463
+ # @!attribute [rw] index_name
3464
+ # The name of the place index resource that you want to use for the
3465
+ # search.
3466
+ # @return [String]
3467
+ #
3468
+ # @!attribute [rw] key
3469
+ # The optional [API key][1] to authorize the request.
3470
+ #
3471
+ #
3472
+ #
3473
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
3474
+ # @return [String]
3475
+ #
3476
+ # @!attribute [rw] language
3477
+ # The preferred language used to return results. The value must be a
3478
+ # valid [BCP 47][1] language tag, for example, `en` for English.
3479
+ #
3480
+ # This setting affects the languages used in the results, but not the
3481
+ # results themselves. If no language is specified, or not supported
3482
+ # for a particular result, the partner automatically chooses a
3483
+ # language for the result.
3484
+ #
3485
+ # For an example, we'll use the Greek language. You search for a
3486
+ # location around Athens, Greece, with the `language` parameter set to
3487
+ # `en`. The `city` in the results will most likely be returned as
3488
+ # `Athens`.
3489
+ #
3490
+ # If you set the `language` parameter to `el`, for Greek, then the
3491
+ # `city` in the results will more likely be returned as `Αθήνα`.
3492
+ #
3493
+ # If the data provider does not have a value for Greek, the result
3494
+ # will be in a language that the provider does support.
3495
+ #
3496
+ #
3497
+ #
3498
+ # [1]: https://tools.ietf.org/search/bcp47
3499
+ # @return [String]
3500
+ #
3501
+ # @!attribute [rw] place_id
3502
+ # The identifier of the place to find.
3503
+ # @return [String]
3504
+ #
3505
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/GetPlaceRequest AWS API Documentation
3506
+ #
3507
+ class GetPlaceRequest < Struct.new(
3508
+ :index_name,
3509
+ :key,
3510
+ :language,
3511
+ :place_id)
3512
+ SENSITIVE = [:key]
3513
+ include Aws::Structure
3514
+ end
3515
+
3516
+ # @!attribute [rw] place
3517
+ # Details about the result, such as its address and position.
3518
+ # @return [Types::Place]
3519
+ #
3520
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/GetPlaceResponse AWS API Documentation
3521
+ #
3522
+ class GetPlaceResponse < Struct.new(
3523
+ :place)
3524
+ SENSITIVE = []
3525
+ include Aws::Structure
3526
+ end
3527
+
3043
3528
  # The request has failed to process because of an unknown server error,
3044
3529
  # exception, or failure.
3045
3530
  #
@@ -3060,7 +3545,7 @@ module Aws::LocationService
3060
3545
  #
3061
3546
  # For example, a route with a departure position and destination
3062
3547
  # position returns one leg with the positions [snapped to a nearby
3063
- # road][1]\:
3548
+ # road][1]:
3064
3549
  #
3065
3550
  # * The `StartPosition` is the departure position.
3066
3551
  #
@@ -3077,7 +3562,7 @@ module Aws::LocationService
3077
3562
  #
3078
3563
  #
3079
3564
  #
3080
- # [1]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route.html#snap-to-nearby-road
3565
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
3081
3566
  #
3082
3567
  # @!attribute [rw] distance
3083
3568
  # The distance between the leg's `StartPosition` and `EndPosition`
@@ -3106,7 +3591,7 @@ module Aws::LocationService
3106
3591
  #
3107
3592
  #
3108
3593
  #
3109
- # [1]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route.html#snap-to-nearby-road
3594
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/nap-to-nearby-road.html
3110
3595
  # @return [Array<Float>]
3111
3596
  #
3112
3597
  # @!attribute [rw] geometry
@@ -3124,7 +3609,7 @@ module Aws::LocationService
3124
3609
  #
3125
3610
  #
3126
3611
  #
3127
- # [1]: https://docs.aws.amazon.com/location/latest/developerguide/calculate-route.html#snap-to-nearby-road
3612
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/snap-to-nearby-road.html
3128
3613
  # @return [Array<Float>]
3129
3614
  #
3130
3615
  # @!attribute [rw] steps
@@ -3170,14 +3655,9 @@ module Aws::LocationService
3170
3655
  include Aws::Structure
3171
3656
  end
3172
3657
 
3173
- # @note When making an API call, you may pass ListDevicePositionsRequest
3174
- # data as a hash:
3175
- #
3176
- # {
3177
- # max_results: 1,
3178
- # next_token: "Token",
3179
- # tracker_name: "ResourceName", # required
3180
- # }
3658
+ # @!attribute [rw] filter_geometry
3659
+ # The geomerty used to filter device positions.
3660
+ # @return [Types::TrackingFilterGeometry]
3181
3661
  #
3182
3662
  # @!attribute [rw] max_results
3183
3663
  # An optional limit for the number of entries returned in a single
@@ -3201,6 +3681,7 @@ module Aws::LocationService
3201
3681
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ListDevicePositionsRequest AWS API Documentation
3202
3682
  #
3203
3683
  class ListDevicePositionsRequest < Struct.new(
3684
+ :filter_geometry,
3204
3685
  :max_results,
3205
3686
  :next_token,
3206
3687
  :tracker_name)
@@ -3209,10 +3690,7 @@ module Aws::LocationService
3209
3690
  end
3210
3691
 
3211
3692
  # @!attribute [rw] entries
3212
- # Contains details about each device's last known position. These
3213
- # details includes the device ID, the time when the position was
3214
- # sampled on the device, the time that the service received the
3215
- # update, and the most recent coordinates.
3693
+ # Contains details about each device's last known position.
3216
3694
  # @return [Array<Types::ListDevicePositionsResponseEntry>]
3217
3695
  #
3218
3696
  # @!attribute [rw] next_token
@@ -3232,6 +3710,10 @@ module Aws::LocationService
3232
3710
 
3233
3711
  # Contains the tracker resource details.
3234
3712
  #
3713
+ # @!attribute [rw] accuracy
3714
+ # The accuracy of the device position.
3715
+ # @return [Types::PositionalAccuracy]
3716
+ #
3235
3717
  # @!attribute [rw] device_id
3236
3718
  # The ID of the device for this position.
3237
3719
  # @return [String]
@@ -3241,6 +3723,10 @@ module Aws::LocationService
3241
3723
  # stored.
3242
3724
  # @return [Array<Float>]
3243
3725
  #
3726
+ # @!attribute [rw] position_properties
3727
+ # The properties associated with the position.
3728
+ # @return [Hash<String,String>]
3729
+ #
3244
3730
  # @!attribute [rw] sample_time
3245
3731
  # The timestamp at which the device position was determined. Uses [
3246
3732
  # ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
@@ -3253,21 +3739,15 @@ module Aws::LocationService
3253
3739
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ListDevicePositionsResponseEntry AWS API Documentation
3254
3740
  #
3255
3741
  class ListDevicePositionsResponseEntry < Struct.new(
3742
+ :accuracy,
3256
3743
  :device_id,
3257
3744
  :position,
3745
+ :position_properties,
3258
3746
  :sample_time)
3259
- SENSITIVE = [:position]
3747
+ SENSITIVE = [:position, :position_properties]
3260
3748
  include Aws::Structure
3261
3749
  end
3262
3750
 
3263
- # @note When making an API call, you may pass ListGeofenceCollectionsRequest
3264
- # data as a hash:
3265
- #
3266
- # {
3267
- # max_results: 1,
3268
- # next_token: "Token",
3269
- # }
3270
- #
3271
3751
  # @!attribute [rw] max_results
3272
3752
  # An optional limit for the number of resources returned in a single
3273
3753
  # call.
@@ -3293,7 +3773,8 @@ module Aws::LocationService
3293
3773
  end
3294
3774
 
3295
3775
  # @!attribute [rw] entries
3296
- # Lists the geofence collections that exist in your AWS account.
3776
+ # Lists the geofence collections that exist in your Amazon Web
3777
+ # Services account.
3297
3778
  # @return [Array<Types::ListGeofenceCollectionsResponseEntry>]
3298
3779
  #
3299
3780
  # @!attribute [rw] next_token
@@ -3331,18 +3812,11 @@ module Aws::LocationService
3331
3812
  # @return [String]
3332
3813
  #
3333
3814
  # @!attribute [rw] pricing_plan
3334
- # The pricing plan for the specified geofence collection.
3335
- #
3336
- # For additional details and restrictions on each pricing plan option,
3337
- # see the [Amazon Location Service pricing page][1].
3338
- #
3339
- #
3340
- #
3341
- # [1]: https://aws.amazon.com/location/pricing/
3815
+ # No longer used. Always returns `RequestBasedUsage`.
3342
3816
  # @return [String]
3343
3817
  #
3344
3818
  # @!attribute [rw] pricing_plan_data_source
3345
- # The specified data provider for the geofence collection.
3819
+ # No longer used. Always returns an empty string.
3346
3820
  # @return [String]
3347
3821
  #
3348
3822
  # @!attribute [rw] update_time
@@ -3382,8 +3856,17 @@ module Aws::LocationService
3382
3856
  # The geofence identifier.
3383
3857
  # @return [String]
3384
3858
  #
3859
+ # @!attribute [rw] geofence_properties
3860
+ # User defined properties of the geofence. A property is a key-value
3861
+ # pair stored with the geofence and added to any geofence event
3862
+ # triggered with that geofence.
3863
+ #
3864
+ # Format: `"key" : "value"`
3865
+ # @return [Hash<String,String>]
3866
+ #
3385
3867
  # @!attribute [rw] geometry
3386
- # Contains the geofence geometry details describing a polygon.
3868
+ # Contains the geofence geometry details describing a polygon or a
3869
+ # circle.
3387
3870
  # @return [Types::GeofenceGeometry]
3388
3871
  #
3389
3872
  # @!attribute [rw] status
@@ -3415,25 +3898,25 @@ module Aws::LocationService
3415
3898
  class ListGeofenceResponseEntry < Struct.new(
3416
3899
  :create_time,
3417
3900
  :geofence_id,
3901
+ :geofence_properties,
3418
3902
  :geometry,
3419
3903
  :status,
3420
3904
  :update_time)
3421
- SENSITIVE = []
3905
+ SENSITIVE = [:geofence_properties]
3422
3906
  include Aws::Structure
3423
3907
  end
3424
3908
 
3425
- # @note When making an API call, you may pass ListGeofencesRequest
3426
- # data as a hash:
3427
- #
3428
- # {
3429
- # collection_name: "ResourceName", # required
3430
- # next_token: "Token",
3431
- # }
3432
- #
3433
3909
  # @!attribute [rw] collection_name
3434
3910
  # The name of the geofence collection storing the list of geofences.
3435
3911
  # @return [String]
3436
3912
  #
3913
+ # @!attribute [rw] max_results
3914
+ # An optional limit for the number of geofences returned in a single
3915
+ # call.
3916
+ #
3917
+ # Default value: `100`
3918
+ # @return [Integer]
3919
+ #
3437
3920
  # @!attribute [rw] next_token
3438
3921
  # The pagination token specifying which page of results to return in
3439
3922
  # the response. If no token is provided, the default page is the first
@@ -3446,6 +3929,7 @@ module Aws::LocationService
3446
3929
  #
3447
3930
  class ListGeofencesRequest < Struct.new(
3448
3931
  :collection_name,
3932
+ :max_results,
3449
3933
  :next_token)
3450
3934
  SENSITIVE = []
3451
3935
  include Aws::Structure
@@ -3470,14 +3954,111 @@ module Aws::LocationService
3470
3954
  include Aws::Structure
3471
3955
  end
3472
3956
 
3473
- # @note When making an API call, you may pass ListMapsRequest
3474
- # data as a hash:
3957
+ # @!attribute [rw] filter
3958
+ # Optionally filter the list to only `Active` or `Expired` API keys.
3959
+ # @return [Types::ApiKeyFilter]
3960
+ #
3961
+ # @!attribute [rw] max_results
3962
+ # An optional limit for the number of resources returned in a single
3963
+ # call.
3964
+ #
3965
+ # Default value: `100`
3966
+ # @return [Integer]
3967
+ #
3968
+ # @!attribute [rw] next_token
3969
+ # The pagination token specifying which page of results to return in
3970
+ # the response. If no token is provided, the default page is the first
3971
+ # page.
3972
+ #
3973
+ # Default value: `null`
3974
+ # @return [String]
3975
+ #
3976
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ListKeysRequest AWS API Documentation
3977
+ #
3978
+ class ListKeysRequest < Struct.new(
3979
+ :filter,
3980
+ :max_results,
3981
+ :next_token)
3982
+ SENSITIVE = []
3983
+ include Aws::Structure
3984
+ end
3985
+
3986
+ # @!attribute [rw] entries
3987
+ # Contains API key resources in your Amazon Web Services account.
3988
+ # Details include API key name, allowed referers and timestamp for
3989
+ # when the API key will expire.
3990
+ # @return [Array<Types::ListKeysResponseEntry>]
3991
+ #
3992
+ # @!attribute [rw] next_token
3993
+ # A pagination token indicating there are additional pages available.
3994
+ # You can use the token in a following request to fetch the next set
3995
+ # of results.
3996
+ # @return [String]
3997
+ #
3998
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ListKeysResponse AWS API Documentation
3999
+ #
4000
+ class ListKeysResponse < Struct.new(
4001
+ :entries,
4002
+ :next_token)
4003
+ SENSITIVE = []
4004
+ include Aws::Structure
4005
+ end
4006
+
4007
+ # An API key resource listed in your Amazon Web Services account.
4008
+ #
4009
+ # @!attribute [rw] create_time
4010
+ # The timestamp of when the API key was created, in [ ISO 8601][1]
4011
+ # format: `YYYY-MM-DDThh:mm:ss.sssZ`.
4012
+ #
4013
+ #
4014
+ #
4015
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
4016
+ # @return [Time]
4017
+ #
4018
+ # @!attribute [rw] description
4019
+ # The optional description for the API key resource.
4020
+ # @return [String]
4021
+ #
4022
+ # @!attribute [rw] expire_time
4023
+ # The timestamp for when the API key resource will expire, in [ ISO
4024
+ # 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
4025
+ #
4026
+ #
4027
+ #
4028
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
4029
+ # @return [Time]
4030
+ #
4031
+ # @!attribute [rw] key_name
4032
+ # The name of the API key resource.
4033
+ # @return [String]
4034
+ #
4035
+ # @!attribute [rw] restrictions
4036
+ # API Restrictions on the allowed actions, resources, and referers for
4037
+ # an API key resource.
4038
+ # @return [Types::ApiKeyRestrictions]
4039
+ #
4040
+ # @!attribute [rw] update_time
4041
+ # The timestamp of when the API key was last updated, in [ ISO
4042
+ # 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
4043
+ #
3475
4044
  #
3476
- # {
3477
- # max_results: 1,
3478
- # next_token: "Token",
3479
- # }
3480
4045
  #
4046
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
4047
+ # @return [Time]
4048
+ #
4049
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ListKeysResponseEntry AWS API Documentation
4050
+ #
4051
+ class ListKeysResponseEntry < Struct.new(
4052
+ :create_time,
4053
+ :description,
4054
+ :expire_time,
4055
+ :key_name,
4056
+ :restrictions,
4057
+ :update_time)
4058
+ SENSITIVE = []
4059
+ include Aws::Structure
4060
+ end
4061
+
3481
4062
  # @!attribute [rw] max_results
3482
4063
  # An optional limit for the number of resources returned in a single
3483
4064
  # call.
@@ -3503,7 +4084,7 @@ module Aws::LocationService
3503
4084
  end
3504
4085
 
3505
4086
  # @!attribute [rw] entries
3506
- # Contains a list of maps in your AWS account
4087
+ # Contains a list of maps in your Amazon Web Services account
3507
4088
  # @return [Array<Types::ListMapsResponseEntry>]
3508
4089
  #
3509
4090
  # @!attribute [rw] next_token
@@ -3521,7 +4102,8 @@ module Aws::LocationService
3521
4102
  include Aws::Structure
3522
4103
  end
3523
4104
 
3524
- # Contains details of an existing map resource in your AWS account.
4105
+ # Contains details of an existing map resource in your Amazon Web
4106
+ # Services account.
3525
4107
  #
3526
4108
  # @!attribute [rw] create_time
3527
4109
  # The timestamp for when the map resource was created in [ISO 8601][1]
@@ -3545,14 +4127,7 @@ module Aws::LocationService
3545
4127
  # @return [String]
3546
4128
  #
3547
4129
  # @!attribute [rw] pricing_plan
3548
- # The pricing plan for the specified map resource.
3549
- #
3550
- # For additional details and restrictions on each pricing plan option,
3551
- # see [Amazon Location Service pricing][1].
3552
- #
3553
- #
3554
- #
3555
- # [1]: https://aws.amazon.com/location/pricing/
4130
+ # No longer used. Always returns `RequestBasedUsage`.
3556
4131
  # @return [String]
3557
4132
  #
3558
4133
  # @!attribute [rw] update_time
@@ -3577,14 +4152,6 @@ module Aws::LocationService
3577
4152
  include Aws::Structure
3578
4153
  end
3579
4154
 
3580
- # @note When making an API call, you may pass ListPlaceIndexesRequest
3581
- # data as a hash:
3582
- #
3583
- # {
3584
- # max_results: 1,
3585
- # next_token: "Token",
3586
- # }
3587
- #
3588
4155
  # @!attribute [rw] max_results
3589
4156
  # An optional limit for the maximum number of results returned in a
3590
4157
  # single call.
@@ -3610,7 +4177,8 @@ module Aws::LocationService
3610
4177
  end
3611
4178
 
3612
4179
  # @!attribute [rw] entries
3613
- # Lists the place index resources that exist in your AWS account
4180
+ # Lists the place index resources that exist in your Amazon Web
4181
+ # Services account
3614
4182
  # @return [Array<Types::ListPlaceIndexesResponseEntry>]
3615
4183
  #
3616
4184
  # @!attribute [rw] next_token
@@ -3628,7 +4196,7 @@ module Aws::LocationService
3628
4196
  include Aws::Structure
3629
4197
  end
3630
4198
 
3631
- # A place index resource listed in your AWS account.
4199
+ # A place index resource listed in your Amazon Web Services account.
3632
4200
  #
3633
4201
  # @!attribute [rw] create_time
3634
4202
  # The timestamp for when the place index resource was created in [ISO
@@ -3645,6 +4213,8 @@ module Aws::LocationService
3645
4213
  #
3646
4214
  # * `Esri`
3647
4215
  #
4216
+ # * `Grab`
4217
+ #
3648
4218
  # * `Here`
3649
4219
  #
3650
4220
  # For more information about data providers, see [Amazon Location
@@ -3664,14 +4234,7 @@ module Aws::LocationService
3664
4234
  # @return [String]
3665
4235
  #
3666
4236
  # @!attribute [rw] pricing_plan
3667
- # The pricing plan for the specified place index resource.
3668
- #
3669
- # For additional details and restrictions on each pricing plan option,
3670
- # see [Amazon Location Service pricing][1].
3671
- #
3672
- #
3673
- #
3674
- # [1]: https://aws.amazon.com/location/pricing/
4237
+ # No longer used. Always returns `RequestBasedUsage`.
3675
4238
  # @return [String]
3676
4239
  #
3677
4240
  # @!attribute [rw] update_time
@@ -3696,14 +4259,6 @@ module Aws::LocationService
3696
4259
  include Aws::Structure
3697
4260
  end
3698
4261
 
3699
- # @note When making an API call, you may pass ListRouteCalculatorsRequest
3700
- # data as a hash:
3701
- #
3702
- # {
3703
- # max_results: 1,
3704
- # next_token: "Token",
3705
- # }
3706
- #
3707
4262
  # @!attribute [rw] max_results
3708
4263
  # An optional maximum number of results returned in a single call.
3709
4264
  #
@@ -3728,7 +4283,8 @@ module Aws::LocationService
3728
4283
  end
3729
4284
 
3730
4285
  # @!attribute [rw] entries
3731
- # Lists the route calculator resources that exist in your AWS account
4286
+ # Lists the route calculator resources that exist in your Amazon Web
4287
+ # Services account
3732
4288
  # @return [Array<Types::ListRouteCalculatorsResponseEntry>]
3733
4289
  #
3734
4290
  # @!attribute [rw] next_token
@@ -3746,7 +4302,8 @@ module Aws::LocationService
3746
4302
  include Aws::Structure
3747
4303
  end
3748
4304
 
3749
- # A route calculator resource listed in your AWS account.
4305
+ # A route calculator resource listed in your Amazon Web Services
4306
+ # account.
3750
4307
  #
3751
4308
  # @!attribute [rw] calculator_name
3752
4309
  # The name of the route calculator resource.
@@ -3771,6 +4328,8 @@ module Aws::LocationService
3771
4328
  #
3772
4329
  # * `Esri`
3773
4330
  #
4331
+ # * `Grab`
4332
+ #
3774
4333
  # * `Here`
3775
4334
  #
3776
4335
  # For more information about data providers, see [Amazon Location
@@ -3786,14 +4345,7 @@ module Aws::LocationService
3786
4345
  # @return [String]
3787
4346
  #
3788
4347
  # @!attribute [rw] pricing_plan
3789
- # The pricing plan for the specified route calculator resource.
3790
- #
3791
- # For additional details and restrictions on each pricing plan option,
3792
- # see [Amazon Location Service pricing][1].
3793
- #
3794
- #
3795
- #
3796
- # [1]: https://aws.amazon.com/location/pricing/
4348
+ # Always returns `RequestBasedUsage`.
3797
4349
  # @return [String]
3798
4350
  #
3799
4351
  # @!attribute [rw] update_time
@@ -3822,13 +4374,6 @@ module Aws::LocationService
3822
4374
  include Aws::Structure
3823
4375
  end
3824
4376
 
3825
- # @note When making an API call, you may pass ListTagsForResourceRequest
3826
- # data as a hash:
3827
- #
3828
- # {
3829
- # resource_arn: "Arn", # required
3830
- # }
3831
- #
3832
4377
  # @!attribute [rw] resource_arn
3833
4378
  # The Amazon Resource Name (ARN) of the resource whose tags you want
3834
4379
  # to retrieve.
@@ -3864,15 +4409,6 @@ module Aws::LocationService
3864
4409
  include Aws::Structure
3865
4410
  end
3866
4411
 
3867
- # @note When making an API call, you may pass ListTrackerConsumersRequest
3868
- # data as a hash:
3869
- #
3870
- # {
3871
- # max_results: 1,
3872
- # next_token: "Token",
3873
- # tracker_name: "ResourceName", # required
3874
- # }
3875
- #
3876
4412
  # @!attribute [rw] max_results
3877
4413
  # An optional limit for the number of resources returned in a single
3878
4414
  # call.
@@ -3923,14 +4459,6 @@ module Aws::LocationService
3923
4459
  include Aws::Structure
3924
4460
  end
3925
4461
 
3926
- # @note When making an API call, you may pass ListTrackersRequest
3927
- # data as a hash:
3928
- #
3929
- # {
3930
- # max_results: 1,
3931
- # next_token: "Token",
3932
- # }
3933
- #
3934
4462
  # @!attribute [rw] max_results
3935
4463
  # An optional limit for the number of resources returned in a single
3936
4464
  # call.
@@ -3956,9 +4484,9 @@ module Aws::LocationService
3956
4484
  end
3957
4485
 
3958
4486
  # @!attribute [rw] entries
3959
- # Contains tracker resources in your AWS account. Details include
3960
- # tracker name, description and timestamps for when the tracker was
3961
- # created and last updated.
4487
+ # Contains tracker resources in your Amazon Web Services account.
4488
+ # Details include tracker name, description and timestamps for when
4489
+ # the tracker was created and last updated.
3962
4490
  # @return [Array<Types::ListTrackersResponseEntry>]
3963
4491
  #
3964
4492
  # @!attribute [rw] next_token
@@ -3992,18 +4520,11 @@ module Aws::LocationService
3992
4520
  # @return [String]
3993
4521
  #
3994
4522
  # @!attribute [rw] pricing_plan
3995
- # The pricing plan for the specified tracker resource.
3996
- #
3997
- # For additional details and restrictions on each pricing plan option,
3998
- # see [Amazon Location Service pricing][1].
3999
- #
4000
- #
4001
- #
4002
- # [1]: https://aws.amazon.com/location/pricing/
4523
+ # Always returns `RequestBasedUsage`.
4003
4524
  # @return [String]
4004
4525
  #
4005
4526
  # @!attribute [rw] pricing_plan_data_source
4006
- # The specified data provider for the tracker resource.
4527
+ # No longer used. Always returns an empty string.
4007
4528
  # @return [String]
4008
4529
  #
4009
4530
  # @!attribute [rw] tracker_name
@@ -4034,17 +4555,27 @@ module Aws::LocationService
4034
4555
 
4035
4556
  # Specifies the map tile style selected from an available provider.
4036
4557
  #
4037
- # @note When making an API call, you may pass MapConfiguration
4038
- # data as a hash:
4558
+ # @!attribute [rw] political_view
4559
+ # Specifies the political view for the style. Leave unset to not use a
4560
+ # political view, or, for styles that support specific political
4561
+ # views, you can choose a view, such as `IND` for the Indian view.
4562
+ #
4563
+ # Default is unset.
4039
4564
  #
4040
- # {
4041
- # style: "MapStyle", # required
4042
- # }
4565
+ # <note markdown="1"> Not all map resources or styles support political view styles. See
4566
+ # [Political views][1] for more information.
4567
+ #
4568
+ # </note>
4569
+ #
4570
+ #
4571
+ #
4572
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/map-concepts.html#political-views
4573
+ # @return [String]
4043
4574
  #
4044
4575
  # @!attribute [rw] style
4045
4576
  # Specifies the map style selected from an available data provider.
4046
4577
  #
4047
- # Valid [Esri map styles][1]\:
4578
+ # Valid [Esri map styles][1]:
4048
4579
  #
4049
4580
  # * `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style.
4050
4581
  # A vector basemap with a dark gray, neutral background with minimal
@@ -4064,50 +4595,158 @@ module Aws::LocationService
4064
4595
  # * `VectorEsriTopographic` – The Esri Light map style, which provides
4065
4596
  # a detailed vector basemap with a classic Esri map style.
4066
4597
  #
4067
- # * `VectorEsriStreets` – The Esri World Streets map style, which
4068
- # provides a detailed vector basemap for the world symbolized with a
4069
- # classic Esri street map style. The vector tile layer is similar in
4070
- # content and style to the World Street Map raster map.
4598
+ # * `VectorEsriStreets` – The Esri Street Map style, which provides a
4599
+ # detailed vector basemap for the world symbolized with a classic
4600
+ # Esri street map style. The vector tile layer is similar in content
4601
+ # and style to the World Street Map raster map.
4602
+ #
4603
+ # * `VectorEsriNavigation` – The Esri Navigation map style, which
4604
+ # provides a detailed basemap for the world symbolized with a custom
4605
+ # navigation map style that's designed for use during the day in
4606
+ # mobile devices.
4607
+ #
4608
+ # Valid [HERE Technologies map styles][2]:
4071
4609
  #
4072
- # * `VectorEsriNavigation` – The Esri World Navigation map style,
4073
- # which provides a detailed basemap for the world symbolized with a
4074
- # custom navigation map style that's designed for use during the
4075
- # day in mobile devices.
4610
+ # * `VectorHereContrast` – The HERE Contrast (Berlin) map style is a
4611
+ # high contrast detailed base map of the world that blends 3D and 2D
4612
+ # rendering.
4076
4613
  #
4077
- # Valid [HERE Technologies map styles][2]\:
4614
+ # <note markdown="1"> The `VectorHereContrast` style has been renamed from
4615
+ # `VectorHereBerlin`. `VectorHereBerlin` has been deprecated, but
4616
+ # will continue to work in applications that use it.
4078
4617
  #
4079
- # * `VectorHereBerlin` – The HERE Berlin map style is a high contrast
4080
- # detailed base map of the world that blends 3D and 2D rendering.
4618
+ # </note>
4619
+ #
4620
+ # * `VectorHereExplore` – A default HERE map style containing a
4621
+ # neutral, global map and its features including roads, buildings,
4622
+ # landmarks, and water features. It also now includes a fully
4623
+ # designed map of Japan.
4624
+ #
4625
+ # * `VectorHereExploreTruck` – A global map containing truck
4626
+ # restrictions and attributes (e.g. width / height / HAZMAT)
4627
+ # symbolized with highlighted segments and icons on top of HERE
4628
+ # Explore to support use cases within transport and logistics.
4629
+ #
4630
+ # * `RasterHereExploreSatellite` – A global map containing high
4631
+ # resolution satellite imagery.
4081
4632
  #
4082
- # <note markdown="1"> When using HERE as your data provider, and selecting the Style
4083
- # `VectorHereBerlin`, you may not use HERE Technologies maps for
4084
- # Asset Management. See the [AWS Service Terms][3] for Amazon
4085
- # Location Service.
4633
+ # * `HybridHereExploreSatellite` A global map displaying the road
4634
+ # network, street names, and city labels over satellite imagery.
4635
+ # This style will automatically retrieve both raster and vector
4636
+ # tiles, and your charges will be based on total tiles retrieved.
4637
+ #
4638
+ # <note markdown="1"> Hybrid styles use both vector and raster tiles when rendering the
4639
+ # map that you see. This means that more tiles are retrieved than
4640
+ # when using either vector or raster tiles alone. Your charges will
4641
+ # include all tiles retrieved.
4086
4642
  #
4087
4643
  # </note>
4088
4644
  #
4645
+ # Valid [GrabMaps map styles][3]:
4646
+ #
4647
+ # * `VectorGrabStandardLight` – The Grab Standard Light map style
4648
+ # provides a basemap with detailed land use coloring, area names,
4649
+ # roads, landmarks, and points of interest covering Southeast Asia.
4650
+ #
4651
+ # * `VectorGrabStandardDark` – The Grab Standard Dark map style
4652
+ # provides a dark variation of the standard basemap covering
4653
+ # Southeast Asia.
4654
+ #
4655
+ # <note markdown="1"> Grab provides maps only for countries in Southeast Asia, and is only
4656
+ # available in the Asia Pacific (Singapore) Region (`ap-southeast-1`).
4657
+ # For more information, see [GrabMaps countries and area covered][4].
4658
+ #
4659
+ # </note>
4660
+ #
4661
+ # Valid [Open Data map styles][5]:
4662
+ #
4663
+ # * `VectorOpenDataStandardLight` – The Open Data Standard Light map
4664
+ # style provides a detailed basemap for the world suitable for
4665
+ # website and mobile application use. The map includes highways
4666
+ # major roads, minor roads, railways, water features, cities, parks,
4667
+ # landmarks, building footprints, and administrative boundaries.
4668
+ #
4669
+ # * `VectorOpenDataStandardDark` – Open Data Standard Dark is a
4670
+ # dark-themed map style that provides a detailed basemap for the
4671
+ # world suitable for website and mobile application use. The map
4672
+ # includes highways major roads, minor roads, railways, water
4673
+ # features, cities, parks, landmarks, building footprints, and
4674
+ # administrative boundaries.
4675
+ #
4676
+ # * `VectorOpenDataVisualizationLight` – The Open Data Visualization
4677
+ # Light map style is a light-themed style with muted colors and
4678
+ # fewer features that aids in understanding overlaid data.
4679
+ #
4680
+ # * `VectorOpenDataVisualizationDark` – The Open Data Visualization
4681
+ # Dark map style is a dark-themed style with muted colors and fewer
4682
+ # features that aids in understanding overlaid data.
4683
+ #
4089
4684
  #
4090
4685
  #
4091
4686
  # [1]: https://docs.aws.amazon.com/location/latest/developerguide/esri.html
4092
4687
  # [2]: https://docs.aws.amazon.com/location/latest/developerguide/HERE.html
4093
- # [3]: https://aws.amazon.com/service-terms/
4688
+ # [3]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html
4689
+ # [4]: https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area
4690
+ # [5]: https://docs.aws.amazon.com/location/latest/developerguide/open-data.html
4094
4691
  # @return [String]
4095
4692
  #
4096
4693
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/MapConfiguration AWS API Documentation
4097
4694
  #
4098
4695
  class MapConfiguration < Struct.new(
4696
+ :political_view,
4099
4697
  :style)
4100
4698
  SENSITIVE = []
4101
4699
  include Aws::Structure
4102
4700
  end
4103
4701
 
4702
+ # Specifies the political view for the style.
4703
+ #
4704
+ # @!attribute [rw] political_view
4705
+ # Specifies the political view for the style. Set to an empty string
4706
+ # to not use a political view, or, for styles that support specific
4707
+ # political views, you can choose a view, such as `IND` for the Indian
4708
+ # view.
4709
+ #
4710
+ # <note markdown="1"> Not all map resources or styles support political view styles. See
4711
+ # [Political views][1] for more information.
4712
+ #
4713
+ # </note>
4714
+ #
4715
+ #
4716
+ #
4717
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/map-concepts.html#political-views
4718
+ # @return [String]
4719
+ #
4720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/MapConfigurationUpdate AWS API Documentation
4721
+ #
4722
+ class MapConfigurationUpdate < Struct.new(
4723
+ :political_view)
4724
+ SENSITIVE = []
4725
+ include Aws::Structure
4726
+ end
4727
+
4104
4728
  # Contains details about addresses or points of interest that match the
4105
4729
  # search criteria.
4106
4730
  #
4731
+ # Not all details are included with all responses. Some details may only
4732
+ # be returned by specific data partners.
4733
+ #
4107
4734
  # @!attribute [rw] address_number
4108
4735
  # The numerical portion of an address, such as a building number.
4109
4736
  # @return [String]
4110
4737
  #
4738
+ # @!attribute [rw] categories
4739
+ # The Amazon Location categories that describe this Place.
4740
+ #
4741
+ # For more information about using categories, including a list of
4742
+ # Amazon Location categories, see [Categories and filtering][1], in
4743
+ # the *Amazon Location Service Developer Guide*.
4744
+ #
4745
+ #
4746
+ #
4747
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/category-filtering.html
4748
+ # @return [Array<String>]
4749
+ #
4111
4750
  # @!attribute [rw] country
4112
4751
  # A country/region specified using [ISO 3166][1] 3-digit
4113
4752
  # country/region code. For example, `CAN`.
@@ -4164,19 +4803,44 @@ module Aws::LocationService
4164
4803
  # @return [String]
4165
4804
  #
4166
4805
  # @!attribute [rw] sub_region
4167
- # A country, or an area that's part of a larger region. For example,
4806
+ # A county, or an area that's part of a larger region. For example,
4168
4807
  # `Metro Vancouver`.
4169
4808
  # @return [String]
4170
4809
  #
4810
+ # @!attribute [rw] supplemental_categories
4811
+ # Categories from the data provider that describe the Place that are
4812
+ # not mapped to any Amazon Location categories.
4813
+ # @return [Array<String>]
4814
+ #
4171
4815
  # @!attribute [rw] time_zone
4172
4816
  # The time zone in which the `Place` is located. Returned only when
4173
- # using Here as the selected partner.
4817
+ # using HERE or Grab as the selected partner.
4174
4818
  # @return [Types::TimeZone]
4175
4819
  #
4820
+ # @!attribute [rw] unit_number
4821
+ # For addresses with multiple units, the unit identifier. Can include
4822
+ # numbers and letters, for example `3B` or `Unit 123`.
4823
+ #
4824
+ # <note markdown="1"> Returned only for a place index that uses Esri or Grab as a data
4825
+ # provider. Is not returned for `SearchPlaceIndexForPosition`.
4826
+ #
4827
+ # </note>
4828
+ # @return [String]
4829
+ #
4830
+ # @!attribute [rw] unit_type
4831
+ # For addresses with a `UnitNumber`, the type of unit. For example,
4832
+ # `Apartment`.
4833
+ #
4834
+ # <note markdown="1"> Returned only for a place index that uses Esri as a data provider.
4835
+ #
4836
+ # </note>
4837
+ # @return [String]
4838
+ #
4176
4839
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/Place AWS API Documentation
4177
4840
  #
4178
4841
  class Place < Struct.new(
4179
4842
  :address_number,
4843
+ :categories,
4180
4844
  :country,
4181
4845
  :geometry,
4182
4846
  :interpolated,
@@ -4187,7 +4851,10 @@ module Aws::LocationService
4187
4851
  :region,
4188
4852
  :street,
4189
4853
  :sub_region,
4190
- :time_zone)
4854
+ :supplemental_categories,
4855
+ :time_zone,
4856
+ :unit_number,
4857
+ :unit_type)
4191
4858
  SENSITIVE = []
4192
4859
  include Aws::Structure
4193
4860
  end
@@ -4215,21 +4882,21 @@ module Aws::LocationService
4215
4882
  include Aws::Structure
4216
4883
  end
4217
4884
 
4218
- # @note When making an API call, you may pass PutGeofenceRequest
4219
- # data as a hash:
4885
+ # Defines the level of certainty of the position.
4886
+ #
4887
+ # @!attribute [rw] horizontal
4888
+ # Estimated maximum distance, in meters, between the measured position
4889
+ # and the true position of a device, along the Earth's surface.
4890
+ # @return [Float]
4220
4891
  #
4221
- # {
4222
- # collection_name: "ResourceName", # required
4223
- # geofence_id: "Id", # required
4224
- # geometry: { # required
4225
- # polygon: [
4226
- # [
4227
- # [1.0],
4228
- # ],
4229
- # ],
4230
- # },
4231
- # }
4892
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/PositionalAccuracy AWS API Documentation
4232
4893
  #
4894
+ class PositionalAccuracy < Struct.new(
4895
+ :horizontal)
4896
+ SENSITIVE = []
4897
+ include Aws::Structure
4898
+ end
4899
+
4233
4900
  # @!attribute [rw] collection_name
4234
4901
  # The geofence collection to store the geofence in.
4235
4902
  # @return [String]
@@ -4238,11 +4905,20 @@ module Aws::LocationService
4238
4905
  # An identifier for the geofence. For example, `ExampleGeofence-1`.
4239
4906
  # @return [String]
4240
4907
  #
4908
+ # @!attribute [rw] geofence_properties
4909
+ # Associates one of more properties with the geofence. A property is a
4910
+ # key-value pair stored with the geofence and added to any geofence
4911
+ # event triggered with that geofence.
4912
+ #
4913
+ # Format: `"key" : "value"`
4914
+ # @return [Hash<String,String>]
4915
+ #
4241
4916
  # @!attribute [rw] geometry
4242
- # Contains the polygon details to specify the position of the
4243
- # geofence.
4917
+ # Contains the details to specify the position of the geofence. Can be
4918
+ # either a polygon or a circle. Including both will return a
4919
+ # validation error.
4244
4920
  #
4245
- # <note markdown="1"> Each [geofence polygon][1] can have a maximum of 1,000 vertices.
4921
+ # <note markdown="1"> Each [ geofence polygon][1] can have a maximum of 1,000 vertices.
4246
4922
  #
4247
4923
  # </note>
4248
4924
  #
@@ -4256,8 +4932,9 @@ module Aws::LocationService
4256
4932
  class PutGeofenceRequest < Struct.new(
4257
4933
  :collection_name,
4258
4934
  :geofence_id,
4935
+ :geofence_properties,
4259
4936
  :geometry)
4260
- SENSITIVE = []
4937
+ SENSITIVE = [:geofence_properties]
4261
4938
  include Aws::Structure
4262
4939
  end
4263
4940
 
@@ -4306,6 +4983,89 @@ module Aws::LocationService
4306
4983
  include Aws::Structure
4307
4984
  end
4308
4985
 
4986
+ # The result for the calculated route of one `DeparturePosition`
4987
+ # `DestinationPosition` pair.
4988
+ #
4989
+ # @!attribute [rw] distance
4990
+ # The total distance of travel for the route.
4991
+ # @return [Float]
4992
+ #
4993
+ # @!attribute [rw] duration_seconds
4994
+ # The expected duration of travel for the route.
4995
+ # @return [Float]
4996
+ #
4997
+ # @!attribute [rw] error
4998
+ # An error corresponding to the calculation of a route between the
4999
+ # `DeparturePosition` and `DestinationPosition`.
5000
+ # @return [Types::RouteMatrixEntryError]
5001
+ #
5002
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/RouteMatrixEntry AWS API Documentation
5003
+ #
5004
+ class RouteMatrixEntry < Struct.new(
5005
+ :distance,
5006
+ :duration_seconds,
5007
+ :error)
5008
+ SENSITIVE = []
5009
+ include Aws::Structure
5010
+ end
5011
+
5012
+ # An error corresponding to the calculation of a route between the
5013
+ # `DeparturePosition` and `DestinationPosition`.
5014
+ #
5015
+ # The error code can be one of the following:
5016
+ #
5017
+ # * `RouteNotFound` - Unable to find a valid route with the given
5018
+ # parameters.
5019
+ #
5020
+ # ^
5021
+ # ^
5022
+ #
5023
+ # * `RouteTooLong` - Route calculation went beyond the maximum size of a
5024
+ # route and was terminated before completion.
5025
+ #
5026
+ # ^
5027
+ # ^
5028
+ #
5029
+ # * `PositionsNotFound` - One or more of the input positions were not
5030
+ # found on the route network.
5031
+ #
5032
+ # ^
5033
+ # ^
5034
+ #
5035
+ # * `DestinationPositionNotFound` - The destination position was not
5036
+ # found on the route network.
5037
+ #
5038
+ # ^
5039
+ # ^
5040
+ #
5041
+ # * `DeparturePositionNotFound` - The departure position was not found
5042
+ # on the route network.
5043
+ #
5044
+ # ^
5045
+ # ^
5046
+ #
5047
+ # * `OtherValidationError` - The given inputs were not valid or a route
5048
+ # was not found. More information is given in the error `Message`
5049
+ #
5050
+ # ^
5051
+ #
5052
+ # @!attribute [rw] code
5053
+ # The type of error which occurred for the route calculation.
5054
+ # @return [String]
5055
+ #
5056
+ # @!attribute [rw] message
5057
+ # A message about the error that occurred for the route calculation.
5058
+ # @return [String]
5059
+ #
5060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/RouteMatrixEntryError AWS API Documentation
5061
+ #
5062
+ class RouteMatrixEntryError < Struct.new(
5063
+ :code,
5064
+ :message)
5065
+ SENSITIVE = []
5066
+ include Aws::Structure
5067
+ end
5068
+
4309
5069
  # Contains a search result from a position search query that is run on a
4310
5070
  # place index resource.
4311
5071
  #
@@ -4323,11 +5083,74 @@ module Aws::LocationService
4323
5083
  # Details about the search result, such as its address and position.
4324
5084
  # @return [Types::Place]
4325
5085
  #
5086
+ # @!attribute [rw] place_id
5087
+ # The unique identifier of the place. You can use this with the
5088
+ # `GetPlace` operation to find the place again later.
5089
+ #
5090
+ # <note markdown="1"> For `SearchPlaceIndexForPosition` operations, the `PlaceId` is
5091
+ # returned only by place indexes that use HERE or Grab as a data
5092
+ # provider.
5093
+ #
5094
+ # </note>
5095
+ # @return [String]
5096
+ #
4326
5097
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/SearchForPositionResult AWS API Documentation
4327
5098
  #
4328
5099
  class SearchForPositionResult < Struct.new(
4329
5100
  :distance,
4330
- :place)
5101
+ :place,
5102
+ :place_id)
5103
+ SENSITIVE = []
5104
+ include Aws::Structure
5105
+ end
5106
+
5107
+ # Contains a place suggestion resulting from a place suggestion query
5108
+ # that is run on a place index resource.
5109
+ #
5110
+ # @!attribute [rw] categories
5111
+ # The Amazon Location categories that describe the Place.
5112
+ #
5113
+ # For more information about using categories, including a list of
5114
+ # Amazon Location categories, see [Categories and filtering][1], in
5115
+ # the *Amazon Location Service Developer Guide*.
5116
+ #
5117
+ #
5118
+ #
5119
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/category-filtering.html
5120
+ # @return [Array<String>]
5121
+ #
5122
+ # @!attribute [rw] place_id
5123
+ # The unique identifier of the Place. You can use this with the
5124
+ # `GetPlace` operation to find the place again later, or to get full
5125
+ # information for the Place.
5126
+ #
5127
+ # The `GetPlace` request must use the same `PlaceIndex` resource as
5128
+ # the `SearchPlaceIndexForSuggestions` that generated the Place ID.
5129
+ #
5130
+ # <note markdown="1"> For `SearchPlaceIndexForSuggestions` operations, the `PlaceId` is
5131
+ # returned by place indexes that use Esri, Grab, or HERE as data
5132
+ # providers.
5133
+ #
5134
+ # </note>
5135
+ # @return [String]
5136
+ #
5137
+ # @!attribute [rw] supplemental_categories
5138
+ # Categories from the data provider that describe the Place that are
5139
+ # not mapped to any Amazon Location categories.
5140
+ # @return [Array<String>]
5141
+ #
5142
+ # @!attribute [rw] text
5143
+ # The text of the place suggestion, typically formatted as an address
5144
+ # string.
5145
+ # @return [String]
5146
+ #
5147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/SearchForSuggestionsResult AWS API Documentation
5148
+ #
5149
+ class SearchForSuggestionsResult < Struct.new(
5150
+ :categories,
5151
+ :place_id,
5152
+ :supplemental_categories,
5153
+ :text)
4331
5154
  SENSITIVE = []
4332
5155
  include Aws::Structure
4333
5156
  end
@@ -4350,13 +5173,23 @@ module Aws::LocationService
4350
5173
  # Details about the search result, such as its address and position.
4351
5174
  # @return [Types::Place]
4352
5175
  #
5176
+ # @!attribute [rw] place_id
5177
+ # The unique identifier of the place. You can use this with the
5178
+ # `GetPlace` operation to find the place again later.
5179
+ #
5180
+ # <note markdown="1"> For `SearchPlaceIndexForText` operations, the `PlaceId` is returned
5181
+ # only by place indexes that use HERE or Grab as a data provider.
5182
+ #
5183
+ # </note>
5184
+ # @return [String]
5185
+ #
4353
5186
  # @!attribute [rw] relevance
4354
5187
  # The relative confidence in the match for a result among the results
4355
5188
  # returned. For example, if more fields for an address match
4356
5189
  # (including house number, street, city, country/region, and postal
4357
5190
  # code), the relevance score is closer to 1.
4358
5191
  #
4359
- # Returned only when the partner selected is Esri.
5192
+ # Returned only when the partner selected is Esri or Grab.
4360
5193
  # @return [Float]
4361
5194
  #
4362
5195
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/SearchForTextResult AWS API Documentation
@@ -4364,33 +5197,43 @@ module Aws::LocationService
4364
5197
  class SearchForTextResult < Struct.new(
4365
5198
  :distance,
4366
5199
  :place,
5200
+ :place_id,
4367
5201
  :relevance)
4368
5202
  SENSITIVE = []
4369
5203
  include Aws::Structure
4370
5204
  end
4371
5205
 
4372
- # @note When making an API call, you may pass SearchPlaceIndexForPositionRequest
4373
- # data as a hash:
4374
- #
4375
- # {
4376
- # index_name: "ResourceName", # required
4377
- # language: "LanguageTag",
4378
- # max_results: 1,
4379
- # position: [1.0], # required
4380
- # }
4381
- #
4382
5206
  # @!attribute [rw] index_name
4383
5207
  # The name of the place index resource you want to use for the search.
4384
5208
  # @return [String]
4385
5209
  #
5210
+ # @!attribute [rw] key
5211
+ # The optional [API key][1] to authorize the request.
5212
+ #
5213
+ #
5214
+ #
5215
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
5216
+ # @return [String]
5217
+ #
4386
5218
  # @!attribute [rw] language
4387
5219
  # The preferred language used to return results. The value must be a
4388
5220
  # valid [BCP 47][1] language tag, for example, `en` for English.
4389
5221
  #
4390
- # This setting affects the languages used in the results. It does not
4391
- # change which results are returned. If the language is not specified,
4392
- # or not supported for a particular result, the partner automatically
4393
- # chooses a language for the result.
5222
+ # This setting affects the languages used in the results, but not the
5223
+ # results themselves. If no language is specified, or not supported
5224
+ # for a particular result, the partner automatically chooses a
5225
+ # language for the result.
5226
+ #
5227
+ # For an example, we'll use the Greek language. You search for a
5228
+ # location around Athens, Greece, with the `language` parameter set to
5229
+ # `en`. The `city` in the results will most likely be returned as
5230
+ # `Athens`.
5231
+ #
5232
+ # If you set the `language` parameter to `el`, for Greek, then the
5233
+ # `city` in the results will more likely be returned as `Αθήνα`.
5234
+ #
5235
+ # If the data provider does not have a value for Greek, the result
5236
+ # will be in a language that the provider does support.
4394
5237
  #
4395
5238
  #
4396
5239
  #
@@ -4419,10 +5262,11 @@ module Aws::LocationService
4419
5262
  #
4420
5263
  class SearchPlaceIndexForPositionRequest < Struct.new(
4421
5264
  :index_name,
5265
+ :key,
4422
5266
  :language,
4423
5267
  :max_results,
4424
5268
  :position)
4425
- SENSITIVE = [:position]
5269
+ SENSITIVE = [:key, :position]
4426
5270
  include Aws::Structure
4427
5271
  end
4428
5272
 
@@ -4454,6 +5298,8 @@ module Aws::LocationService
4454
5298
  #
4455
5299
  # * Esri
4456
5300
  #
5301
+ # * Grab
5302
+ #
4457
5303
  # * Here
4458
5304
  #
4459
5305
  # For more information about data providers, see [Amazon Location
@@ -4496,19 +5342,236 @@ module Aws::LocationService
4496
5342
  include Aws::Structure
4497
5343
  end
4498
5344
 
4499
- # @note When making an API call, you may pass SearchPlaceIndexForTextRequest
4500
- # data as a hash:
5345
+ # @!attribute [rw] bias_position
5346
+ # An optional parameter that indicates a preference for place
5347
+ # suggestions that are closer to a specified position.
5348
+ #
5349
+ # If provided, this parameter must contain a pair of numbers. The
5350
+ # first number represents the X coordinate, or longitude; the second
5351
+ # number represents the Y coordinate, or latitude.
5352
+ #
5353
+ # For example, `[-123.1174, 49.2847]` represents the position with
5354
+ # longitude `-123.1174` and latitude `49.2847`.
5355
+ #
5356
+ # <note markdown="1"> `BiasPosition` and `FilterBBox` are mutually exclusive. Specifying
5357
+ # both options results in an error.
5358
+ #
5359
+ # </note>
5360
+ # @return [Array<Float>]
5361
+ #
5362
+ # @!attribute [rw] filter_b_box
5363
+ # An optional parameter that limits the search results by returning
5364
+ # only suggestions within a specified bounding box.
5365
+ #
5366
+ # If provided, this parameter must contain a total of four consecutive
5367
+ # numbers in two pairs. The first pair of numbers represents the X and
5368
+ # Y coordinates (longitude and latitude, respectively) of the
5369
+ # southwest corner of the bounding box; the second pair of numbers
5370
+ # represents the X and Y coordinates (longitude and latitude,
5371
+ # respectively) of the northeast corner of the bounding box.
5372
+ #
5373
+ # For example, `[-12.7935, -37.4835, -12.0684, -36.9542]` represents a
5374
+ # bounding box where the southwest corner has longitude `-12.7935` and
5375
+ # latitude `-37.4835`, and the northeast corner has longitude
5376
+ # `-12.0684` and latitude `-36.9542`.
5377
+ #
5378
+ # <note markdown="1"> `FilterBBox` and `BiasPosition` are mutually exclusive. Specifying
5379
+ # both options results in an error.
5380
+ #
5381
+ # </note>
5382
+ # @return [Array<Float>]
5383
+ #
5384
+ # @!attribute [rw] filter_categories
5385
+ # A list of one or more Amazon Location categories to filter the
5386
+ # returned places. If you include more than one category, the results
5387
+ # will include results that match *any* of the categories listed.
5388
+ #
5389
+ # For more information about using categories, including a list of
5390
+ # Amazon Location categories, see [Categories and filtering][1], in
5391
+ # the *Amazon Location Service Developer Guide*.
5392
+ #
5393
+ #
5394
+ #
5395
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/category-filtering.html
5396
+ # @return [Array<String>]
5397
+ #
5398
+ # @!attribute [rw] filter_countries
5399
+ # An optional parameter that limits the search results by returning
5400
+ # only suggestions within the provided list of countries.
5401
+ #
5402
+ # * Use the [ISO 3166][1] 3-digit country code. For example, Australia
5403
+ # uses three upper-case characters: `AUS`.
5404
+ #
5405
+ # ^
5406
+ #
5407
+ #
5408
+ #
5409
+ # [1]: https://www.iso.org/iso-3166-country-codes.html
5410
+ # @return [Array<String>]
5411
+ #
5412
+ # @!attribute [rw] index_name
5413
+ # The name of the place index resource you want to use for the search.
5414
+ # @return [String]
5415
+ #
5416
+ # @!attribute [rw] key
5417
+ # The optional [API key][1] to authorize the request.
5418
+ #
5419
+ #
5420
+ #
5421
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
5422
+ # @return [String]
5423
+ #
5424
+ # @!attribute [rw] language
5425
+ # The preferred language used to return results. The value must be a
5426
+ # valid [BCP 47][1] language tag, for example, `en` for English.
5427
+ #
5428
+ # This setting affects the languages used in the results. If no
5429
+ # language is specified, or not supported for a particular result, the
5430
+ # partner automatically chooses a language for the result.
5431
+ #
5432
+ # For an example, we'll use the Greek language. You search for
5433
+ # `Athens, Gr` to get suggestions with the `language` parameter set to
5434
+ # `en`. The results found will most likely be returned as `Athens,
5435
+ # Greece`.
5436
+ #
5437
+ # If you set the `language` parameter to `el`, for Greek, then the
5438
+ # result found will more likely be returned as `Αθήνα, Ελλάδα`.
5439
+ #
5440
+ # If the data provider does not have a value for Greek, the result
5441
+ # will be in a language that the provider does support.
5442
+ #
5443
+ #
5444
+ #
5445
+ # [1]: https://tools.ietf.org/search/bcp47
5446
+ # @return [String]
5447
+ #
5448
+ # @!attribute [rw] max_results
5449
+ # An optional parameter. The maximum number of results returned per
5450
+ # request.
5451
+ #
5452
+ # The default: `5`
5453
+ # @return [Integer]
5454
+ #
5455
+ # @!attribute [rw] text
5456
+ # The free-form partial text to use to generate place suggestions. For
5457
+ # example, `eiffel tow`.
5458
+ # @return [String]
5459
+ #
5460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/SearchPlaceIndexForSuggestionsRequest AWS API Documentation
5461
+ #
5462
+ class SearchPlaceIndexForSuggestionsRequest < Struct.new(
5463
+ :bias_position,
5464
+ :filter_b_box,
5465
+ :filter_categories,
5466
+ :filter_countries,
5467
+ :index_name,
5468
+ :key,
5469
+ :language,
5470
+ :max_results,
5471
+ :text)
5472
+ SENSITIVE = [:bias_position, :filter_b_box, :key, :text]
5473
+ include Aws::Structure
5474
+ end
5475
+
5476
+ # @!attribute [rw] results
5477
+ # A list of place suggestions that best match the search text.
5478
+ # @return [Array<Types::SearchForSuggestionsResult>]
5479
+ #
5480
+ # @!attribute [rw] summary
5481
+ # Contains a summary of the request. Echoes the input values for
5482
+ # `BiasPosition`, `FilterBBox`, `FilterCountries`, `Language`,
5483
+ # `MaxResults`, and `Text`. Also includes the `DataSource` of the
5484
+ # place index.
5485
+ # @return [Types::SearchPlaceIndexForSuggestionsSummary]
5486
+ #
5487
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/SearchPlaceIndexForSuggestionsResponse AWS API Documentation
5488
+ #
5489
+ class SearchPlaceIndexForSuggestionsResponse < Struct.new(
5490
+ :results,
5491
+ :summary)
5492
+ SENSITIVE = []
5493
+ include Aws::Structure
5494
+ end
5495
+
5496
+ # A summary of the request sent by using
5497
+ # `SearchPlaceIndexForSuggestions`.
5498
+ #
5499
+ # @!attribute [rw] bias_position
5500
+ # Contains the coordinates for the optional bias position specified in
5501
+ # the request.
5502
+ #
5503
+ # This parameter contains a pair of numbers. The first number
5504
+ # represents the X coordinate, or longitude; the second number
5505
+ # represents the Y coordinate, or latitude.
5506
+ #
5507
+ # For example, `[-123.1174, 49.2847]` represents the position with
5508
+ # longitude `-123.1174` and latitude `49.2847`.
5509
+ # @return [Array<Float>]
5510
+ #
5511
+ # @!attribute [rw] data_source
5512
+ # The geospatial data provider attached to the place index resource
5513
+ # specified in the request. Values can be one of the following:
5514
+ #
5515
+ # * Esri
5516
+ #
5517
+ # * Grab
5518
+ #
5519
+ # * Here
5520
+ #
5521
+ # For more information about data providers, see [Amazon Location
5522
+ # Service data providers][1].
5523
+ #
5524
+ #
5525
+ #
5526
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html
5527
+ # @return [String]
5528
+ #
5529
+ # @!attribute [rw] filter_b_box
5530
+ # Contains the coordinates for the optional bounding box specified in
5531
+ # the request.
5532
+ # @return [Array<Float>]
5533
+ #
5534
+ # @!attribute [rw] filter_categories
5535
+ # The optional category filter specified in the request.
5536
+ # @return [Array<String>]
5537
+ #
5538
+ # @!attribute [rw] filter_countries
5539
+ # Contains the optional country filter specified in the request.
5540
+ # @return [Array<String>]
5541
+ #
5542
+ # @!attribute [rw] language
5543
+ # The preferred language used to return results. Matches the language
5544
+ # in the request. The value is a valid [BCP 47][1] language tag, for
5545
+ # example, `en` for English.
5546
+ #
5547
+ #
5548
+ #
5549
+ # [1]: https://tools.ietf.org/search/bcp47
5550
+ # @return [String]
5551
+ #
5552
+ # @!attribute [rw] max_results
5553
+ # Contains the optional result count limit specified in the request.
5554
+ # @return [Integer]
4501
5555
  #
4502
- # {
4503
- # bias_position: [1.0],
4504
- # filter_b_box: [1.0],
4505
- # filter_countries: ["CountryCode"],
4506
- # index_name: "ResourceName", # required
4507
- # language: "LanguageTag",
4508
- # max_results: 1,
4509
- # text: "SyntheticSearchPlaceIndexForTextRequestString", # required
4510
- # }
5556
+ # @!attribute [rw] text
5557
+ # The free-form partial text input specified in the request.
5558
+ # @return [String]
4511
5559
  #
5560
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/SearchPlaceIndexForSuggestionsSummary AWS API Documentation
5561
+ #
5562
+ class SearchPlaceIndexForSuggestionsSummary < Struct.new(
5563
+ :bias_position,
5564
+ :data_source,
5565
+ :filter_b_box,
5566
+ :filter_categories,
5567
+ :filter_countries,
5568
+ :language,
5569
+ :max_results,
5570
+ :text)
5571
+ SENSITIVE = [:bias_position, :filter_b_box, :text]
5572
+ include Aws::Structure
5573
+ end
5574
+
4512
5575
  # @!attribute [rw] bias_position
4513
5576
  # An optional parameter that indicates a preference for places that
4514
5577
  # are closer to a specified position.
@@ -4548,6 +5611,20 @@ module Aws::LocationService
4548
5611
  # </note>
4549
5612
  # @return [Array<Float>]
4550
5613
  #
5614
+ # @!attribute [rw] filter_categories
5615
+ # A list of one or more Amazon Location categories to filter the
5616
+ # returned places. If you include more than one category, the results
5617
+ # will include results that match *any* of the categories listed.
5618
+ #
5619
+ # For more information about using categories, including a list of
5620
+ # Amazon Location categories, see [Categories and filtering][1], in
5621
+ # the *Amazon Location Service Developer Guide*.
5622
+ #
5623
+ #
5624
+ #
5625
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/category-filtering.html
5626
+ # @return [Array<String>]
5627
+ #
4551
5628
  # @!attribute [rw] filter_countries
4552
5629
  # An optional parameter that limits the search results by returning
4553
5630
  # only places that are in a specified list of countries.
@@ -4566,14 +5643,32 @@ module Aws::LocationService
4566
5643
  # The name of the place index resource you want to use for the search.
4567
5644
  # @return [String]
4568
5645
  #
5646
+ # @!attribute [rw] key
5647
+ # The optional [API key][1] to authorize the request.
5648
+ #
5649
+ #
5650
+ #
5651
+ # [1]: https://docs.aws.amazon.com/location/latest/developerguide/using-apikeys.html
5652
+ # @return [String]
5653
+ #
4569
5654
  # @!attribute [rw] language
4570
5655
  # The preferred language used to return results. The value must be a
4571
5656
  # valid [BCP 47][1] language tag, for example, `en` for English.
4572
5657
  #
4573
- # This setting affects the languages used in the results. It does not
4574
- # change which results are returned. If the language is not specified,
4575
- # or not supported for a particular result, the partner automatically
4576
- # chooses a language for the result.
5658
+ # This setting affects the languages used in the results, but not the
5659
+ # results themselves. If no language is specified, or not supported
5660
+ # for a particular result, the partner automatically chooses a
5661
+ # language for the result.
5662
+ #
5663
+ # For an example, we'll use the Greek language. You search for
5664
+ # `Athens, Greece`, with the `language` parameter set to `en`. The
5665
+ # result found will most likely be returned as `Athens`.
5666
+ #
5667
+ # If you set the `language` parameter to `el`, for Greek, then the
5668
+ # result found will more likely be returned as `Αθήνα`.
5669
+ #
5670
+ # If the data provider does not have a value for Greek, the result
5671
+ # will be in a language that the provider does support.
4577
5672
  #
4578
5673
  #
4579
5674
  #
@@ -4597,18 +5692,23 @@ module Aws::LocationService
4597
5692
  class SearchPlaceIndexForTextRequest < Struct.new(
4598
5693
  :bias_position,
4599
5694
  :filter_b_box,
5695
+ :filter_categories,
4600
5696
  :filter_countries,
4601
5697
  :index_name,
5698
+ :key,
4602
5699
  :language,
4603
5700
  :max_results,
4604
5701
  :text)
4605
- SENSITIVE = [:bias_position, :filter_b_box, :text]
5702
+ SENSITIVE = [:bias_position, :filter_b_box, :key, :text]
4606
5703
  include Aws::Structure
4607
5704
  end
4608
5705
 
4609
5706
  # @!attribute [rw] results
4610
5707
  # A list of Places matching the input text. Each result contains
4611
5708
  # additional information about the specific point of interest.
5709
+ #
5710
+ # Not all response properties are included with all responses. Some
5711
+ # properties may only be returned by specific data partners.
4612
5712
  # @return [Array<Types::SearchForTextResult>]
4613
5713
  #
4614
5714
  # @!attribute [rw] summary
@@ -4633,6 +5733,13 @@ module Aws::LocationService
4633
5733
  # @!attribute [rw] bias_position
4634
5734
  # Contains the coordinates for the optional bias position specified in
4635
5735
  # the request.
5736
+ #
5737
+ # This parameter contains a pair of numbers. The first number
5738
+ # represents the X coordinate, or longitude; the second number
5739
+ # represents the Y coordinate, or latitude.
5740
+ #
5741
+ # For example, `[-123.1174, 49.2847]` represents the position with
5742
+ # longitude `-123.1174` and latitude `49.2847`.
4636
5743
  # @return [Array<Float>]
4637
5744
  #
4638
5745
  # @!attribute [rw] data_source
@@ -4641,6 +5748,8 @@ module Aws::LocationService
4641
5748
  #
4642
5749
  # * Esri
4643
5750
  #
5751
+ # * Grab
5752
+ #
4644
5753
  # * Here
4645
5754
  #
4646
5755
  # For more information about data providers, see [Amazon Location
@@ -4656,6 +5765,10 @@ module Aws::LocationService
4656
5765
  # the request.
4657
5766
  # @return [Array<Float>]
4658
5767
  #
5768
+ # @!attribute [rw] filter_categories
5769
+ # The optional category filter specified in the request.
5770
+ # @return [Array<String>]
5771
+ #
4659
5772
  # @!attribute [rw] filter_countries
4660
5773
  # Contains the optional country filter specified in the request.
4661
5774
  # @return [Array<String>]
@@ -4693,6 +5806,7 @@ module Aws::LocationService
4693
5806
  :bias_position,
4694
5807
  :data_source,
4695
5808
  :filter_b_box,
5809
+ :filter_categories,
4696
5810
  :filter_countries,
4697
5811
  :language,
4698
5812
  :max_results,
@@ -4769,16 +5883,6 @@ module Aws::LocationService
4769
5883
  include Aws::Structure
4770
5884
  end
4771
5885
 
4772
- # @note When making an API call, you may pass TagResourceRequest
4773
- # data as a hash:
4774
- #
4775
- # {
4776
- # resource_arn: "Arn", # required
4777
- # tags: { # required
4778
- # "TagKey" => "TagValue",
4779
- # },
4780
- # }
4781
- #
4782
5886
  # @!attribute [rw] resource_arn
4783
5887
  # The Amazon Resource Name (ARN) of the resource whose tags you want
4784
5888
  # to update.
@@ -4864,27 +5968,37 @@ module Aws::LocationService
4864
5968
  include Aws::Structure
4865
5969
  end
4866
5970
 
5971
+ # The geomerty used to filter device positions.
5972
+ #
5973
+ # @!attribute [rw] polygon
5974
+ # The set of arrays which define the polygon. A polygon can have
5975
+ # between 4 and 1000 vertices.
5976
+ # @return [Array<Array<Array<Float>>>]
5977
+ #
5978
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/TrackingFilterGeometry AWS API Documentation
5979
+ #
5980
+ class TrackingFilterGeometry < Struct.new(
5981
+ :polygon)
5982
+ SENSITIVE = []
5983
+ include Aws::Structure
5984
+ end
5985
+
4867
5986
  # Contains details about the truck dimensions in the unit of measurement
4868
5987
  # that you specify. Used to filter out roads that can't support or
4869
5988
  # allow the specified dimensions for requests that specify `TravelMode`
4870
5989
  # as `Truck`.
4871
5990
  #
4872
- # @note When making an API call, you may pass TruckDimensions
4873
- # data as a hash:
4874
- #
4875
- # {
4876
- # height: 1.0,
4877
- # length: 1.0,
4878
- # unit: "Meters", # accepts Meters, Feet
4879
- # width: 1.0,
4880
- # }
4881
- #
4882
5991
  # @!attribute [rw] height
4883
5992
  # The height of the truck.
4884
5993
  #
4885
5994
  # * For example, `4.5`.
4886
5995
  #
4887
5996
  # ^
5997
+ #
5998
+ # <note markdown="1"> For routes calculated with a HERE resource, this value must be
5999
+ # between 0 and 50 meters.
6000
+ #
6001
+ # </note>
4888
6002
  # @return [Float]
4889
6003
  #
4890
6004
  # @!attribute [rw] length
@@ -4893,6 +6007,11 @@ module Aws::LocationService
4893
6007
  # * For example, `15.5`.
4894
6008
  #
4895
6009
  # ^
6010
+ #
6011
+ # <note markdown="1"> For routes calculated with a HERE resource, this value must be
6012
+ # between 0 and 300 meters.
6013
+ #
6014
+ # </note>
4896
6015
  # @return [Float]
4897
6016
  #
4898
6017
  # @!attribute [rw] unit
@@ -4907,6 +6026,11 @@ module Aws::LocationService
4907
6026
  # * For example, `4.5`.
4908
6027
  #
4909
6028
  # ^
6029
+ #
6030
+ # <note markdown="1"> For routes calculated with a HERE resource, this value must be
6031
+ # between 0 and 50 meters.
6032
+ #
6033
+ # </note>
4910
6034
  # @return [Float]
4911
6035
  #
4912
6036
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/TruckDimensions AWS API Documentation
@@ -4924,14 +6048,6 @@ module Aws::LocationService
4924
6048
  # avoid roads that can't support or allow the total weight for requests
4925
6049
  # that specify `TravelMode` as `Truck`.
4926
6050
  #
4927
- # @note When making an API call, you may pass TruckWeight
4928
- # data as a hash:
4929
- #
4930
- # {
4931
- # total: 1.0,
4932
- # unit: "Kilograms", # accepts Kilograms, Pounds
4933
- # }
4934
- #
4935
6051
  # @!attribute [rw] total
4936
6052
  # The total weight of the truck.
4937
6053
  #
@@ -4955,14 +6071,6 @@ module Aws::LocationService
4955
6071
  include Aws::Structure
4956
6072
  end
4957
6073
 
4958
- # @note When making an API call, you may pass UntagResourceRequest
4959
- # data as a hash:
4960
- #
4961
- # {
4962
- # resource_arn: "Arn", # required
4963
- # tag_keys: ["String"], # required
4964
- # }
4965
- #
4966
6074
  # @!attribute [rw] resource_arn
4967
6075
  # The Amazon Resource Name (ARN) of the resource from which you want
4968
6076
  # to remove tags.
@@ -4990,16 +6098,6 @@ module Aws::LocationService
4990
6098
  #
4991
6099
  class UntagResourceResponse < Aws::EmptyStructure; end
4992
6100
 
4993
- # @note When making an API call, you may pass UpdateGeofenceCollectionRequest
4994
- # data as a hash:
4995
- #
4996
- # {
4997
- # collection_name: "ResourceName", # required
4998
- # description: "ResourceDescription",
4999
- # pricing_plan: "RequestBasedUsage", # accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
5000
- # pricing_plan_data_source: "String",
5001
- # }
5002
- #
5003
6101
  # @!attribute [rw] collection_name
5004
6102
  # The name of the geofence collection to update.
5005
6103
  # @return [String]
@@ -5009,39 +6107,12 @@ module Aws::LocationService
5009
6107
  # @return [String]
5010
6108
  #
5011
6109
  # @!attribute [rw] pricing_plan
5012
- # Updates the pricing plan for the geofence collection.
5013
- #
5014
- # For more information about each pricing plan option restrictions,
5015
- # see [Amazon Location Service pricing][1].
5016
- #
5017
- #
5018
- #
5019
- # [1]: https://aws.amazon.com/location/pricing/
6110
+ # No longer used. If included, the only allowed value is
6111
+ # `RequestBasedUsage`.
5020
6112
  # @return [String]
5021
6113
  #
5022
6114
  # @!attribute [rw] pricing_plan_data_source
5023
- # Updates the data provider for the geofence collection.
5024
- #
5025
- # A required value for the following pricing plans:
5026
- # `MobileAssetTracking`\| `MobileAssetManagement`
5027
- #
5028
- # For more information about [data providers][1] and [pricing
5029
- # plans][2], see the Amazon Location Service product page.
5030
- #
5031
- # <note markdown="1"> This can only be updated when updating the `PricingPlan` in the same
5032
- # request.
5033
- #
5034
- # Amazon Location Service uses `PricingPlanDataSource` to calculate
5035
- # billing for your geofence collection. Your data won't be shared
5036
- # with the data provider, and will remain in your AWS account and
5037
- # Region unless you move it.
5038
- #
5039
- # </note>
5040
- #
5041
- #
5042
- #
5043
- # [1]: https://aws.amazon.com/location/data-providers/
5044
- # [2]: https://aws.amazon.com/location/pricing/
6115
+ # This parameter is no longer used.
5045
6116
  # @return [String]
5046
6117
  #
5047
6118
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/UpdateGeofenceCollectionRequest AWS API Documentation
@@ -5057,7 +6128,7 @@ module Aws::LocationService
5057
6128
 
5058
6129
  # @!attribute [rw] collection_arn
5059
6130
  # The Amazon Resource Name (ARN) of the updated geofence collection.
5060
- # Used to specify a resource across AWS.
6131
+ # Used to specify a resource across Amazon Web Services.
5061
6132
  #
5062
6133
  # * Format example:
5063
6134
  # `arn:aws:geo:region:account-id:geofence-collection/ExampleGeofenceCollection`
@@ -5088,14 +6159,93 @@ module Aws::LocationService
5088
6159
  include Aws::Structure
5089
6160
  end
5090
6161
 
5091
- # @note When making an API call, you may pass UpdateMapRequest
5092
- # data as a hash:
6162
+ # @!attribute [rw] description
6163
+ # Updates the description for the API key resource.
6164
+ # @return [String]
6165
+ #
6166
+ # @!attribute [rw] expire_time
6167
+ # Updates the timestamp for when the API key resource will expire in [
6168
+ # ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
6169
+ #
6170
+ #
6171
+ #
6172
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
6173
+ # @return [Time]
6174
+ #
6175
+ # @!attribute [rw] force_update
6176
+ # The boolean flag to be included for updating `ExpireTime` or
6177
+ # `Restrictions` details.
6178
+ #
6179
+ # Must be set to `true` to update an API key resource that has been
6180
+ # used in the past 7 days.
6181
+ #
6182
+ # `False` if force update is not preferred
6183
+ #
6184
+ # Default value: `False`
6185
+ # @return [Boolean]
6186
+ #
6187
+ # @!attribute [rw] key_name
6188
+ # The name of the API key resource to update.
6189
+ # @return [String]
6190
+ #
6191
+ # @!attribute [rw] no_expiry
6192
+ # Whether the API key should expire. Set to `true` to set the API key
6193
+ # to have no expiration time.
6194
+ # @return [Boolean]
6195
+ #
6196
+ # @!attribute [rw] restrictions
6197
+ # Updates the API key restrictions for the API key resource.
6198
+ # @return [Types::ApiKeyRestrictions]
6199
+ #
6200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/UpdateKeyRequest AWS API Documentation
6201
+ #
6202
+ class UpdateKeyRequest < Struct.new(
6203
+ :description,
6204
+ :expire_time,
6205
+ :force_update,
6206
+ :key_name,
6207
+ :no_expiry,
6208
+ :restrictions)
6209
+ SENSITIVE = []
6210
+ include Aws::Structure
6211
+ end
6212
+
6213
+ # @!attribute [rw] key_arn
6214
+ # The Amazon Resource Name (ARN) for the API key resource. Used when
6215
+ # you need to specify a resource across all Amazon Web Services.
6216
+ #
6217
+ # * Format example: `arn:aws:geo:region:account-id:key/ExampleKey`
6218
+ #
6219
+ # ^
6220
+ # @return [String]
6221
+ #
6222
+ # @!attribute [rw] key_name
6223
+ # The name of the API key resource.
6224
+ # @return [String]
6225
+ #
6226
+ # @!attribute [rw] update_time
6227
+ # The timestamp for when the API key resource was last updated in [
6228
+ # ISO 8601][1] format: `YYYY-MM-DDThh:mm:ss.sssZ`.
6229
+ #
5093
6230
  #
5094
- # {
5095
- # description: "ResourceDescription",
5096
- # map_name: "ResourceName", # required
5097
- # pricing_plan: "RequestBasedUsage", # accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
5098
- # }
6231
+ #
6232
+ # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
6233
+ # @return [Time]
6234
+ #
6235
+ # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/UpdateKeyResponse AWS API Documentation
6236
+ #
6237
+ class UpdateKeyResponse < Struct.new(
6238
+ :key_arn,
6239
+ :key_name,
6240
+ :update_time)
6241
+ SENSITIVE = []
6242
+ include Aws::Structure
6243
+ end
6244
+
6245
+ # @!attribute [rw] configuration_update
6246
+ # Updates the parts of the map configuration that can be updated,
6247
+ # including the political view.
6248
+ # @return [Types::MapConfigurationUpdate]
5099
6249
  #
5100
6250
  # @!attribute [rw] description
5101
6251
  # Updates the description for the map resource.
@@ -5106,19 +6256,14 @@ module Aws::LocationService
5106
6256
  # @return [String]
5107
6257
  #
5108
6258
  # @!attribute [rw] pricing_plan
5109
- # Updates the pricing plan for the map resource.
5110
- #
5111
- # For more information about each pricing plan option restrictions,
5112
- # see [Amazon Location Service pricing][1].
5113
- #
5114
- #
5115
- #
5116
- # [1]: https://aws.amazon.com/location/pricing/
6259
+ # No longer used. If included, the only allowed value is
6260
+ # `RequestBasedUsage`.
5117
6261
  # @return [String]
5118
6262
  #
5119
6263
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/UpdateMapRequest AWS API Documentation
5120
6264
  #
5121
6265
  class UpdateMapRequest < Struct.new(
6266
+ :configuration_update,
5122
6267
  :description,
5123
6268
  :map_name,
5124
6269
  :pricing_plan)
@@ -5130,7 +6275,7 @@ module Aws::LocationService
5130
6275
  # The Amazon Resource Name (ARN) of the updated map resource. Used to
5131
6276
  # specify a resource across AWS.
5132
6277
  #
5133
- # * Format example: `arn:aws:geo:region:account-id:maps/ExampleMap`
6278
+ # * Format example: `arn:aws:geo:region:account-id:map/ExampleMap`
5134
6279
  #
5135
6280
  # ^
5136
6281
  # @return [String]
@@ -5158,18 +6303,6 @@ module Aws::LocationService
5158
6303
  include Aws::Structure
5159
6304
  end
5160
6305
 
5161
- # @note When making an API call, you may pass UpdatePlaceIndexRequest
5162
- # data as a hash:
5163
- #
5164
- # {
5165
- # data_source_configuration: {
5166
- # intended_use: "SingleUse", # accepts SingleUse, Storage
5167
- # },
5168
- # description: "ResourceDescription",
5169
- # index_name: "ResourceName", # required
5170
- # pricing_plan: "RequestBasedUsage", # accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
5171
- # }
5172
- #
5173
6306
  # @!attribute [rw] data_source_configuration
5174
6307
  # Updates the data storage option for the place index resource.
5175
6308
  # @return [Types::DataSourceConfiguration]
@@ -5183,14 +6316,8 @@ module Aws::LocationService
5183
6316
  # @return [String]
5184
6317
  #
5185
6318
  # @!attribute [rw] pricing_plan
5186
- # Updates the pricing plan for the place index resource.
5187
- #
5188
- # For more information about each pricing plan option restrictions,
5189
- # see [Amazon Location Service pricing][1].
5190
- #
5191
- #
5192
- #
5193
- # [1]: https://aws.amazon.com/location/pricing/
6319
+ # No longer used. If included, the only allowed value is
6320
+ # `RequestBasedUsage`.
5194
6321
  # @return [String]
5195
6322
  #
5196
6323
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/UpdatePlaceIndexRequest AWS API Documentation
@@ -5206,7 +6333,7 @@ module Aws::LocationService
5206
6333
 
5207
6334
  # @!attribute [rw] index_arn
5208
6335
  # The Amazon Resource Name (ARN) of the upated place index resource.
5209
- # Used to specify a resource across AWS.
6336
+ # Used to specify a resource across Amazon Web Services.
5210
6337
  #
5211
6338
  # * Format example: `arn:aws:geo:region:account-id:place-
5212
6339
  # index/ExamplePlaceIndex`
@@ -5237,15 +6364,6 @@ module Aws::LocationService
5237
6364
  include Aws::Structure
5238
6365
  end
5239
6366
 
5240
- # @note When making an API call, you may pass UpdateRouteCalculatorRequest
5241
- # data as a hash:
5242
- #
5243
- # {
5244
- # calculator_name: "ResourceName", # required
5245
- # description: "ResourceDescription",
5246
- # pricing_plan: "RequestBasedUsage", # accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
5247
- # }
5248
- #
5249
6367
  # @!attribute [rw] calculator_name
5250
6368
  # The name of the route calculator resource to update.
5251
6369
  # @return [String]
@@ -5255,14 +6373,8 @@ module Aws::LocationService
5255
6373
  # @return [String]
5256
6374
  #
5257
6375
  # @!attribute [rw] pricing_plan
5258
- # Updates the pricing plan for the route calculator resource.
5259
- #
5260
- # For more information about each pricing plan option restrictions,
5261
- # see [Amazon Location Service pricing][1].
5262
- #
5263
- #
5264
- #
5265
- # [1]: https://aws.amazon.com/location/pricing/
6376
+ # No longer used. If included, the only allowed value is
6377
+ # `RequestBasedUsage`.
5266
6378
  # @return [String]
5267
6379
  #
5268
6380
  # @see http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/UpdateRouteCalculatorRequest AWS API Documentation
@@ -5308,21 +6420,33 @@ module Aws::LocationService
5308
6420
  include Aws::Structure
5309
6421
  end
5310
6422
 
5311
- # @note When making an API call, you may pass UpdateTrackerRequest
5312
- # data as a hash:
5313
- #
5314
- # {
5315
- # description: "ResourceDescription",
5316
- # position_filtering: "TimeBased", # accepts TimeBased, DistanceBased, AccuracyBased
5317
- # pricing_plan: "RequestBasedUsage", # accepts RequestBasedUsage, MobileAssetTracking, MobileAssetManagement
5318
- # pricing_plan_data_source: "String",
5319
- # tracker_name: "ResourceName", # required
5320
- # }
5321
- #
5322
6423
  # @!attribute [rw] description
5323
6424
  # Updates the description for the tracker resource.
5324
6425
  # @return [String]
5325
6426
  #
6427
+ # @!attribute [rw] event_bridge_enabled
6428
+ # Whether to enable position `UPDATE` events from this tracker to be
6429
+ # sent to EventBridge.
6430
+ #
6431
+ # <note markdown="1"> You do not need enable this feature to get `ENTER` and `EXIT` events
6432
+ # for geofences with this tracker. Those events are always sent to
6433
+ # EventBridge.
6434
+ #
6435
+ # </note>
6436
+ # @return [Boolean]
6437
+ #
6438
+ # @!attribute [rw] kms_key_enable_geospatial_queries
6439
+ # Enables `GeospatialQueries` for a tracker that uses a [Amazon Web
6440
+ # Services KMS customer managed key][1].
6441
+ #
6442
+ # This parameter is only used if you are using a KMS customer managed
6443
+ # key.
6444
+ #
6445
+ #
6446
+ #
6447
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html
6448
+ # @return [Boolean]
6449
+ #
5326
6450
  # @!attribute [rw] position_filtering
5327
6451
  # Updates the position filtering for the tracker resource.
5328
6452
  #
@@ -5337,45 +6461,28 @@ module Aws::LocationService
5337
6461
  # ft), location updates are ignored. Location updates within this
5338
6462
  # distance are neither evaluated against linked geofence
5339
6463
  # collections, nor stored. This helps control costs by reducing the
5340
- # number of geofence evaluations and device positions to retrieve.
5341
- # Distance-based filtering can also reduce the jitter effect when
5342
- # displaying device trajectory on a map.
6464
+ # number of geofence evaluations and historical device positions to
6465
+ # paginate through. Distance-based filtering can also reduce the
6466
+ # effects of GPS noise when displaying device trajectories on a map.
6467
+ #
6468
+ # * `AccuracyBased` - If the device has moved less than the measured
6469
+ # accuracy, location updates are ignored. For example, if two
6470
+ # consecutive updates from a device have a horizontal accuracy of 5
6471
+ # m and 10 m, the second update is ignored if the device has moved
6472
+ # less than 15 m. Ignored location updates are neither evaluated
6473
+ # against linked geofence collections, nor stored. This helps educe
6474
+ # the effects of GPS noise when displaying device trajectories on a
6475
+ # map, and can help control costs by reducing the number of geofence
6476
+ # evaluations.
5343
6477
  # @return [String]
5344
6478
  #
5345
6479
  # @!attribute [rw] pricing_plan
5346
- # Updates the pricing plan for the tracker resource.
5347
- #
5348
- # For more information about each pricing plan option restrictions,
5349
- # see [Amazon Location Service pricing][1].
5350
- #
5351
- #
5352
- #
5353
- # [1]: https://aws.amazon.com/location/pricing/
6480
+ # No longer used. If included, the only allowed value is
6481
+ # `RequestBasedUsage`.
5354
6482
  # @return [String]
5355
6483
  #
5356
6484
  # @!attribute [rw] pricing_plan_data_source
5357
- # Updates the data provider for the tracker resource.
5358
- #
5359
- # A required value for the following pricing plans:
5360
- # `MobileAssetTracking`\| `MobileAssetManagement`
5361
- #
5362
- # For more information about [data providers][1] and [pricing
5363
- # plans][2], see the Amazon Location Service product page
5364
- #
5365
- # <note markdown="1"> This can only be updated when updating the `PricingPlan` in the same
5366
- # request.
5367
- #
5368
- # Amazon Location Service uses `PricingPlanDataSource` to calculate
5369
- # billing for your tracker resource. Your data won't be shared with
5370
- # the data provider, and will remain in your AWS account and Region
5371
- # unless you move it.
5372
- #
5373
- # </note>
5374
- #
5375
- #
5376
- #
5377
- # [1]: https://aws.amazon.com/location/data-providers/
5378
- # [2]: https://aws.amazon.com/location/pricing/
6485
+ # This parameter is no longer used.
5379
6486
  # @return [String]
5380
6487
  #
5381
6488
  # @!attribute [rw] tracker_name
@@ -5386,6 +6493,8 @@ module Aws::LocationService
5386
6493
  #
5387
6494
  class UpdateTrackerRequest < Struct.new(
5388
6495
  :description,
6496
+ :event_bridge_enabled,
6497
+ :kms_key_enable_geospatial_queries,
5389
6498
  :position_filtering,
5390
6499
  :pricing_plan,
5391
6500
  :pricing_plan_data_source,