aws-sdk-iot 1.111.0 → 1.113.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cdc5d391636eb0f1d6b0d3f7a4468b07307cbf6666ca43dc850f14a865c3dc68
4
- data.tar.gz: 6bd773712d0c5b31215103f45cb81ce7c8311559dc9d2ba833d2ca8e2941997a
3
+ metadata.gz: 75c5e544665ebf709542a0b688008548df7caff89e7383d513e23e33c274f645
4
+ data.tar.gz: e3a128a86ec79010b0049617676b1f2e3e5d69ad780f29f24308fa4ab8a39394
5
5
  SHA512:
6
- metadata.gz: c7c6f9c007320877cc142e5b2c284ed9cdda124b28e69c245af745596087091bb1437a4cba8c9c58c2282ace1cd6335b92a80d38f58380b26a9e0e1a378393ea
7
- data.tar.gz: e1a755e547ee6eb890a426b4c5e2763cac437818d218e097f8c3a5c9cfc4bb8efa1fd9f09491539fd2fc0c45ab584a2a6c9428cbfbb6a79710b45ef7c0c1167f
6
+ metadata.gz: 17734406715165bea7cf322702e6e076afb5ab7eb668f39d3e7776856b74a4dff123bbe2f19077b7348c392c98cd17552a569ac1c5993234aae35793ffde19e2
7
+ data.tar.gz: c0fef29affc1a33320fbae2afb9dda0891c1938fd1cdce76bf2873ef33e23a341f652ae77994e775f4aa827ed36a40c0c965bf5f72d45756323dc45ce50fa899
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.113.0 (2023-11-16)
5
+ ------------------
6
+
7
+ * Feature - GA release the ability to index and search devices based on their GeoLocation data. With GeoQueries you can narrow your search to retrieve devices located in the desired geographic boundary.
8
+
9
+ 1.112.0 (2023-11-14)
10
+ ------------------
11
+
12
+ * Feature - This release introduces new attributes in API CreateSecurityProfile, UpdateSecurityProfile and DescribeSecurityProfile to support management of Metrics Export for AWS IoT Device Defender Detect.
13
+
4
14
  1.111.0 (2023-09-27)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.111.0
1
+ 1.113.0
@@ -1828,8 +1828,8 @@ module Aws::IoT
1828
1828
  # The package version Amazon Resource Names (ARNs) that are installed on
1829
1829
  # the device when the job successfully completes.
1830
1830
  #
1831
- # **Note:**The following Length Constraints relates to a single string.
1832
- # Up to five strings are allowed.
1831
+ # **Note:**The following Length Constraints relates to a single ARN. Up
1832
+ # to 25 package version ARNs are allowed.
1833
1833
  #
1834
1834
  # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1835
1835
  #
@@ -1986,8 +1986,8 @@ module Aws::IoT
1986
1986
  # The package version Amazon Resource Names (ARNs) that are installed on
1987
1987
  # the device when the job successfully completes.
1988
1988
  #
1989
- # **Note:**The following Length Constraints relates to a single string.
1990
- # Up to five strings are allowed.
1989
+ # **Note:**The following Length Constraints relates to a single ARN. Up
1990
+ # to 25 package version ARNs are allowed.
1991
1991
  #
1992
1992
  # @return [Types::CreateJobTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1993
1993
  #
@@ -2998,6 +2998,9 @@ module Aws::IoT
2998
2998
  # @option params [Array<Types::Tag>] :tags
2999
2999
  # Metadata that can be used to manage the security profile.
3000
3000
  #
3001
+ # @option params [Types::MetricsExportConfig] :metrics_export_config
3002
+ # Specifies the MQTT topic and role ARN required for metric export.
3003
+ #
3001
3004
  # @return [Types::CreateSecurityProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3002
3005
  #
3003
3006
  # * {Types::CreateSecurityProfileResponse#security_profile_name #security_profile_name} => String
@@ -3037,6 +3040,7 @@ module Aws::IoT
3037
3040
  # },
3038
3041
  # },
3039
3042
  # suppress_alerts: false,
3043
+ # export_metric: false,
3040
3044
  # },
3041
3045
  # ],
3042
3046
  # alert_targets: {
@@ -3053,6 +3057,7 @@ module Aws::IoT
3053
3057
  # dimension_name: "DimensionName", # required
3054
3058
  # operator: "IN", # accepts IN, NOT_IN
3055
3059
  # },
3060
+ # export_metric: false,
3056
3061
  # },
3057
3062
  # ],
3058
3063
  # tags: [
@@ -3061,6 +3066,10 @@ module Aws::IoT
3061
3066
  # value: "TagValue",
3062
3067
  # },
3063
3068
  # ],
3069
+ # metrics_export_config: {
3070
+ # mqtt_topic: "MqttTopic", # required
3071
+ # role_arn: "RoleArn", # required
3072
+ # },
3064
3073
  # })
3065
3074
  #
3066
3075
  # @example Response structure
@@ -3221,6 +3230,9 @@ module Aws::IoT
3221
3230
  # <note markdown="1"> This is a control plane operation. See [Authorization][1] for
3222
3231
  # information about authorizing control plane actions.
3223
3232
  #
3233
+ # If the `ThingGroup` that you create has the exact same attributes as
3234
+ # an existing `ThingGroup`, you will get a 200 success response.
3235
+ #
3224
3236
  # </note>
3225
3237
  #
3226
3238
  # Requires permission to access the [CreateThingGroup][2] action.
@@ -6393,6 +6405,7 @@ module Aws::IoT
6393
6405
  # * {Types::DescribeSecurityProfileResponse#version #version} => Integer
6394
6406
  # * {Types::DescribeSecurityProfileResponse#creation_date #creation_date} => Time
6395
6407
  # * {Types::DescribeSecurityProfileResponse#last_modified_date #last_modified_date} => Time
6408
+ # * {Types::DescribeSecurityProfileResponse#metrics_export_config #metrics_export_config} => Types::MetricsExportConfig
6396
6409
  #
6397
6410
  # @example Request syntax with placeholder values
6398
6411
  #
@@ -6427,6 +6440,7 @@ module Aws::IoT
6427
6440
  # resp.behaviors[0].criteria.statistical_threshold.statistic #=> String
6428
6441
  # resp.behaviors[0].criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
6429
6442
  # resp.behaviors[0].suppress_alerts #=> Boolean
6443
+ # resp.behaviors[0].export_metric #=> Boolean
6430
6444
  # resp.alert_targets #=> Hash
6431
6445
  # resp.alert_targets["AlertTargetType"].alert_target_arn #=> String
6432
6446
  # resp.alert_targets["AlertTargetType"].role_arn #=> String
@@ -6436,9 +6450,12 @@ module Aws::IoT
6436
6450
  # resp.additional_metrics_to_retain_v2[0].metric #=> String
6437
6451
  # resp.additional_metrics_to_retain_v2[0].metric_dimension.dimension_name #=> String
6438
6452
  # resp.additional_metrics_to_retain_v2[0].metric_dimension.operator #=> String, one of "IN", "NOT_IN"
6453
+ # resp.additional_metrics_to_retain_v2[0].export_metric #=> Boolean
6439
6454
  # resp.version #=> Integer
6440
6455
  # resp.creation_date #=> Time
6441
6456
  # resp.last_modified_date #=> Time
6457
+ # resp.metrics_export_config.mqtt_topic #=> String
6458
+ # resp.metrics_export_config.role_arn #=> String
6442
6459
  #
6443
6460
  # @overload describe_security_profile(params = {})
6444
6461
  # @param [Hash] params ({})
@@ -7122,6 +7139,9 @@ module Aws::IoT
7122
7139
  # resp.thing_indexing_configuration.custom_fields[0].type #=> String, one of "Number", "String", "Boolean"
7123
7140
  # resp.thing_indexing_configuration.filter.named_shadow_names #=> Array
7124
7141
  # resp.thing_indexing_configuration.filter.named_shadow_names[0] #=> String
7142
+ # resp.thing_indexing_configuration.filter.geo_locations #=> Array
7143
+ # resp.thing_indexing_configuration.filter.geo_locations[0].name #=> String
7144
+ # resp.thing_indexing_configuration.filter.geo_locations[0].order #=> String, one of "LatLon", "LonLat"
7125
7145
  # resp.thing_group_indexing_configuration.thing_group_indexing_mode #=> String, one of "OFF", "ON"
7126
7146
  # resp.thing_group_indexing_configuration.managed_fields #=> Array
7127
7147
  # resp.thing_group_indexing_configuration.managed_fields[0].name #=> String
@@ -8061,6 +8081,7 @@ module Aws::IoT
8061
8081
  # resp.active_violations[0].behavior.criteria.statistical_threshold.statistic #=> String
8062
8082
  # resp.active_violations[0].behavior.criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
8063
8083
  # resp.active_violations[0].behavior.suppress_alerts #=> Boolean
8084
+ # resp.active_violations[0].behavior.export_metric #=> Boolean
8064
8085
  # resp.active_violations[0].last_violation_value.count #=> Integer
8065
8086
  # resp.active_violations[0].last_violation_value.cidrs #=> Array
8066
8087
  # resp.active_violations[0].last_violation_value.cidrs[0] #=> String
@@ -11394,6 +11415,7 @@ module Aws::IoT
11394
11415
  # resp.violation_events[0].behavior.criteria.statistical_threshold.statistic #=> String
11395
11416
  # resp.violation_events[0].behavior.criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
11396
11417
  # resp.violation_events[0].behavior.suppress_alerts #=> Boolean
11418
+ # resp.violation_events[0].behavior.export_metric #=> Boolean
11397
11419
  # resp.violation_events[0].metric_value.count #=> Integer
11398
11420
  # resp.violation_events[0].metric_value.cidrs #=> Array
11399
11421
  # resp.violation_events[0].metric_value.cidrs[0] #=> String
@@ -12300,7 +12322,8 @@ module Aws::IoT
12300
12322
  # no additional results.
12301
12323
  #
12302
12324
  # @option params [Integer] :max_results
12303
- # The maximum number of results to return at one time.
12325
+ # The maximum number of results to return per page at one time. The
12326
+ # response might contain fewer results but will never contain more.
12304
12327
  #
12305
12328
  # @option params [String] :query_version
12306
12329
  # The query version.
@@ -13726,6 +13749,12 @@ module Aws::IoT
13726
13749
  # ],
13727
13750
  # filter: {
13728
13751
  # named_shadow_names: ["ShadowName"],
13752
+ # geo_locations: [
13753
+ # {
13754
+ # name: "TargetFieldName",
13755
+ # order: "LatLon", # accepts LatLon, LonLat
13756
+ # },
13757
+ # ],
13729
13758
  # },
13730
13759
  # },
13731
13760
  # thing_group_indexing_configuration: {
@@ -14304,6 +14333,12 @@ module Aws::IoT
14304
14333
  # value that is different from the actual version, a
14305
14334
  # `VersionConflictException` is thrown.
14306
14335
  #
14336
+ # @option params [Types::MetricsExportConfig] :metrics_export_config
14337
+ # Specifies the MQTT topic and role ARN required for metric export.
14338
+ #
14339
+ # @option params [Boolean] :delete_metrics_export_config
14340
+ # Set the value as true to delete metrics export related configurations.
14341
+ #
14307
14342
  # @return [Types::UpdateSecurityProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
14308
14343
  #
14309
14344
  # * {Types::UpdateSecurityProfileResponse#security_profile_name #security_profile_name} => String
@@ -14316,6 +14351,7 @@ module Aws::IoT
14316
14351
  # * {Types::UpdateSecurityProfileResponse#version #version} => Integer
14317
14352
  # * {Types::UpdateSecurityProfileResponse#creation_date #creation_date} => Time
14318
14353
  # * {Types::UpdateSecurityProfileResponse#last_modified_date #last_modified_date} => Time
14354
+ # * {Types::UpdateSecurityProfileResponse#metrics_export_config #metrics_export_config} => Types::MetricsExportConfig
14319
14355
  #
14320
14356
  # @example Request syntax with placeholder values
14321
14357
  #
@@ -14351,6 +14387,7 @@ module Aws::IoT
14351
14387
  # },
14352
14388
  # },
14353
14389
  # suppress_alerts: false,
14390
+ # export_metric: false,
14354
14391
  # },
14355
14392
  # ],
14356
14393
  # alert_targets: {
@@ -14367,12 +14404,18 @@ module Aws::IoT
14367
14404
  # dimension_name: "DimensionName", # required
14368
14405
  # operator: "IN", # accepts IN, NOT_IN
14369
14406
  # },
14407
+ # export_metric: false,
14370
14408
  # },
14371
14409
  # ],
14372
14410
  # delete_behaviors: false,
14373
14411
  # delete_alert_targets: false,
14374
14412
  # delete_additional_metrics_to_retain: false,
14375
14413
  # expected_version: 1,
14414
+ # metrics_export_config: {
14415
+ # mqtt_topic: "MqttTopic", # required
14416
+ # role_arn: "RoleArn", # required
14417
+ # },
14418
+ # delete_metrics_export_config: false,
14376
14419
  # })
14377
14420
  #
14378
14421
  # @example Response structure
@@ -14402,6 +14445,7 @@ module Aws::IoT
14402
14445
  # resp.behaviors[0].criteria.statistical_threshold.statistic #=> String
14403
14446
  # resp.behaviors[0].criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
14404
14447
  # resp.behaviors[0].suppress_alerts #=> Boolean
14448
+ # resp.behaviors[0].export_metric #=> Boolean
14405
14449
  # resp.alert_targets #=> Hash
14406
14450
  # resp.alert_targets["AlertTargetType"].alert_target_arn #=> String
14407
14451
  # resp.alert_targets["AlertTargetType"].role_arn #=> String
@@ -14411,9 +14455,12 @@ module Aws::IoT
14411
14455
  # resp.additional_metrics_to_retain_v2[0].metric #=> String
14412
14456
  # resp.additional_metrics_to_retain_v2[0].metric_dimension.dimension_name #=> String
14413
14457
  # resp.additional_metrics_to_retain_v2[0].metric_dimension.operator #=> String, one of "IN", "NOT_IN"
14458
+ # resp.additional_metrics_to_retain_v2[0].export_metric #=> Boolean
14414
14459
  # resp.version #=> Integer
14415
14460
  # resp.creation_date #=> Time
14416
14461
  # resp.last_modified_date #=> Time
14462
+ # resp.metrics_export_config.mqtt_topic #=> String
14463
+ # resp.metrics_export_config.role_arn #=> String
14417
14464
  #
14418
14465
  # @overload update_security_profile(params = {})
14419
14466
  # @param [Hash] params ({})
@@ -14745,6 +14792,7 @@ module Aws::IoT
14745
14792
  # },
14746
14793
  # },
14747
14794
  # suppress_alerts: false,
14795
+ # export_metric: false,
14748
14796
  # },
14749
14797
  # ],
14750
14798
  # })
@@ -14775,7 +14823,7 @@ module Aws::IoT
14775
14823
  params: params,
14776
14824
  config: config)
14777
14825
  context[:gem_name] = 'aws-sdk-iot'
14778
- context[:gem_version] = '1.111.0'
14826
+ context[:gem_version] = '1.113.0'
14779
14827
  Seahorse::Client::Request.new(handlers, context)
14780
14828
  end
14781
14829
 
@@ -335,6 +335,7 @@ module Aws::IoT
335
335
  DeleteJobExecutionRequest = Shapes::StructureShape.new(name: 'DeleteJobExecutionRequest')
336
336
  DeleteJobRequest = Shapes::StructureShape.new(name: 'DeleteJobRequest')
337
337
  DeleteJobTemplateRequest = Shapes::StructureShape.new(name: 'DeleteJobTemplateRequest')
338
+ DeleteMetricsExportConfig = Shapes::BooleanShape.new(name: 'DeleteMetricsExportConfig')
338
339
  DeleteMitigationActionRequest = Shapes::StructureShape.new(name: 'DeleteMitigationActionRequest')
339
340
  DeleteMitigationActionResponse = Shapes::StructureShape.new(name: 'DeleteMitigationActionResponse')
340
341
  DeleteOTAUpdateRequest = Shapes::StructureShape.new(name: 'DeleteOTAUpdateRequest')
@@ -523,6 +524,7 @@ module Aws::IoT
523
524
  ExpiresInSeconds = Shapes::IntegerShape.new(name: 'ExpiresInSeconds')
524
525
  ExplicitDeny = Shapes::StructureShape.new(name: 'ExplicitDeny')
525
526
  ExponentialRolloutRate = Shapes::StructureShape.new(name: 'ExponentialRolloutRate')
527
+ ExportMetric = Shapes::BooleanShape.new(name: 'ExportMetric')
526
528
  FailedChecksCount = Shapes::IntegerShape.new(name: 'FailedChecksCount')
527
529
  FailedFindingsCount = Shapes::IntegerShape.new(name: 'FailedFindingsCount')
528
530
  FailedThings = Shapes::IntegerShape.new(name: 'FailedThings')
@@ -553,6 +555,8 @@ module Aws::IoT
553
555
  FunctionArn = Shapes::StringShape.new(name: 'FunctionArn')
554
556
  GenerationId = Shapes::StringShape.new(name: 'GenerationId')
555
557
  GenericLongValue = Shapes::IntegerShape.new(name: 'GenericLongValue')
558
+ GeoLocationTarget = Shapes::StructureShape.new(name: 'GeoLocationTarget')
559
+ GeoLocationsFilter = Shapes::ListShape.new(name: 'GeoLocationsFilter')
556
560
  GetBehaviorModelTrainingSummariesRequest = Shapes::StructureShape.new(name: 'GetBehaviorModelTrainingSummariesRequest')
557
561
  GetBehaviorModelTrainingSummariesResponse = Shapes::StructureShape.new(name: 'GetBehaviorModelTrainingSummariesResponse')
558
562
  GetBucketsAggregationRequest = Shapes::StructureShape.new(name: 'GetBucketsAggregationRequest')
@@ -839,6 +843,7 @@ module Aws::IoT
839
843
  MetricNames = Shapes::ListShape.new(name: 'MetricNames')
840
844
  MetricToRetain = Shapes::StructureShape.new(name: 'MetricToRetain')
841
845
  MetricValue = Shapes::StructureShape.new(name: 'MetricValue')
846
+ MetricsExportConfig = Shapes::StructureShape.new(name: 'MetricsExportConfig')
842
847
  Minimum = Shapes::FloatShape.new(name: 'Minimum')
843
848
  MinimumNumberOfExecutedThings = Shapes::IntegerShape.new(name: 'MinimumNumberOfExecutedThings')
844
849
  MissingContextValue = Shapes::StringShape.new(name: 'MissingContextValue')
@@ -859,6 +864,7 @@ module Aws::IoT
859
864
  MqttContext = Shapes::StructureShape.new(name: 'MqttContext')
860
865
  MqttHeaders = Shapes::StructureShape.new(name: 'MqttHeaders')
861
866
  MqttPassword = Shapes::BlobShape.new(name: 'MqttPassword')
867
+ MqttTopic = Shapes::StringShape.new(name: 'MqttTopic')
862
868
  MqttUsername = Shapes::StringShape.new(name: 'MqttUsername')
863
869
  NamedShadowIndexingMode = Shapes::StringShape.new(name: 'NamedShadowIndexingMode')
864
870
  NamedShadowNamesFilter = Shapes::ListShape.new(name: 'NamedShadowNamesFilter')
@@ -1158,6 +1164,8 @@ module Aws::IoT
1158
1164
  Target = Shapes::StringShape.new(name: 'Target')
1159
1165
  TargetArn = Shapes::StringShape.new(name: 'TargetArn')
1160
1166
  TargetAuditCheckNames = Shapes::ListShape.new(name: 'TargetAuditCheckNames')
1167
+ TargetFieldName = Shapes::StringShape.new(name: 'TargetFieldName')
1168
+ TargetFieldOrder = Shapes::StringShape.new(name: 'TargetFieldOrder')
1161
1169
  TargetSelection = Shapes::StringShape.new(name: 'TargetSelection')
1162
1170
  TargetViolationIdsForDetectMitigationActions = Shapes::ListShape.new(name: 'TargetViolationIdsForDetectMitigationActions')
1163
1171
  Targets = Shapes::ListShape.new(name: 'Targets')
@@ -1670,6 +1678,7 @@ module Aws::IoT
1670
1678
  Behavior.add_member(:metric_dimension, Shapes::ShapeRef.new(shape: MetricDimension, location_name: "metricDimension"))
1671
1679
  Behavior.add_member(:criteria, Shapes::ShapeRef.new(shape: BehaviorCriteria, location_name: "criteria"))
1672
1680
  Behavior.add_member(:suppress_alerts, Shapes::ShapeRef.new(shape: SuppressAlerts, location_name: "suppressAlerts"))
1681
+ Behavior.add_member(:export_metric, Shapes::ShapeRef.new(shape: ExportMetric, location_name: "exportMetric"))
1673
1682
  Behavior.struct_class = Types::Behavior
1674
1683
 
1675
1684
  BehaviorCriteria.add_member(:comparison_operator, Shapes::ShapeRef.new(shape: ComparisonOperator, location_name: "comparisonOperator"))
@@ -2169,6 +2178,7 @@ module Aws::IoT
2169
2178
  CreateSecurityProfileRequest.add_member(:additional_metrics_to_retain, Shapes::ShapeRef.new(shape: AdditionalMetricsToRetainList, deprecated: true, location_name: "additionalMetricsToRetain", metadata: {"deprecatedMessage"=>"Use additionalMetricsToRetainV2."}))
2170
2179
  CreateSecurityProfileRequest.add_member(:additional_metrics_to_retain_v2, Shapes::ShapeRef.new(shape: AdditionalMetricsToRetainV2List, location_name: "additionalMetricsToRetainV2"))
2171
2180
  CreateSecurityProfileRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
2181
+ CreateSecurityProfileRequest.add_member(:metrics_export_config, Shapes::ShapeRef.new(shape: MetricsExportConfig, location_name: "metricsExportConfig"))
2172
2182
  CreateSecurityProfileRequest.struct_class = Types::CreateSecurityProfileRequest
2173
2183
 
2174
2184
  CreateSecurityProfileResponse.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location_name: "securityProfileName"))
@@ -2699,6 +2709,7 @@ module Aws::IoT
2699
2709
  DescribeSecurityProfileResponse.add_member(:version, Shapes::ShapeRef.new(shape: Version, location_name: "version"))
2700
2710
  DescribeSecurityProfileResponse.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
2701
2711
  DescribeSecurityProfileResponse.add_member(:last_modified_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedDate"))
2712
+ DescribeSecurityProfileResponse.add_member(:metrics_export_config, Shapes::ShapeRef.new(shape: MetricsExportConfig, location_name: "metricsExportConfig"))
2702
2713
  DescribeSecurityProfileResponse.struct_class = Types::DescribeSecurityProfileResponse
2703
2714
 
2704
2715
  DescribeStreamRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: StreamId, required: true, location: "uri", location_name: "streamId"))
@@ -2930,6 +2941,12 @@ module Aws::IoT
2930
2941
 
2931
2942
  FleetMetricNameAndArnList.member = Shapes::ShapeRef.new(shape: FleetMetricNameAndArn)
2932
2943
 
2944
+ GeoLocationTarget.add_member(:name, Shapes::ShapeRef.new(shape: TargetFieldName, location_name: "name"))
2945
+ GeoLocationTarget.add_member(:order, Shapes::ShapeRef.new(shape: TargetFieldOrder, location_name: "order"))
2946
+ GeoLocationTarget.struct_class = Types::GeoLocationTarget
2947
+
2948
+ GeoLocationsFilter.member = Shapes::ShapeRef.new(shape: GeoLocationTarget)
2949
+
2933
2950
  GetBehaviorModelTrainingSummariesRequest.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location: "querystring", location_name: "securityProfileName"))
2934
2951
  GetBehaviorModelTrainingSummariesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: TinyMaxResults, location: "querystring", location_name: "maxResults"))
2935
2952
  GetBehaviorModelTrainingSummariesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
@@ -3136,6 +3153,7 @@ module Aws::IoT
3136
3153
  IndexNotReadyException.struct_class = Types::IndexNotReadyException
3137
3154
 
3138
3155
  IndexingFilter.add_member(:named_shadow_names, Shapes::ShapeRef.new(shape: NamedShadowNamesFilter, location_name: "namedShadowNames"))
3156
+ IndexingFilter.add_member(:geo_locations, Shapes::ShapeRef.new(shape: GeoLocationsFilter, location_name: "geoLocations"))
3139
3157
  IndexingFilter.struct_class = Types::IndexingFilter
3140
3158
 
3141
3159
  InternalException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -3957,6 +3975,7 @@ module Aws::IoT
3957
3975
 
3958
3976
  MetricToRetain.add_member(:metric, Shapes::ShapeRef.new(shape: BehaviorMetric, required: true, location_name: "metric"))
3959
3977
  MetricToRetain.add_member(:metric_dimension, Shapes::ShapeRef.new(shape: MetricDimension, location_name: "metricDimension"))
3978
+ MetricToRetain.add_member(:export_metric, Shapes::ShapeRef.new(shape: ExportMetric, location_name: "exportMetric"))
3960
3979
  MetricToRetain.struct_class = Types::MetricToRetain
3961
3980
 
3962
3981
  MetricValue.add_member(:count, Shapes::ShapeRef.new(shape: UnsignedLong, location_name: "count"))
@@ -3967,6 +3986,10 @@ module Aws::IoT
3967
3986
  MetricValue.add_member(:strings, Shapes::ShapeRef.new(shape: StringList, location_name: "strings"))
3968
3987
  MetricValue.struct_class = Types::MetricValue
3969
3988
 
3989
+ MetricsExportConfig.add_member(:mqtt_topic, Shapes::ShapeRef.new(shape: MqttTopic, required: true, location_name: "mqttTopic"))
3990
+ MetricsExportConfig.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
3991
+ MetricsExportConfig.struct_class = Types::MetricsExportConfig
3992
+
3970
3993
  MissingContextValues.member = Shapes::ShapeRef.new(shape: MissingContextValue)
3971
3994
 
3972
3995
  MitigationAction.add_member(:name, Shapes::ShapeRef.new(shape: MitigationActionName, location_name: "name"))
@@ -5037,6 +5060,8 @@ module Aws::IoT
5037
5060
  UpdateSecurityProfileRequest.add_member(:delete_alert_targets, Shapes::ShapeRef.new(shape: DeleteAlertTargets, location_name: "deleteAlertTargets"))
5038
5061
  UpdateSecurityProfileRequest.add_member(:delete_additional_metrics_to_retain, Shapes::ShapeRef.new(shape: DeleteAdditionalMetricsToRetain, location_name: "deleteAdditionalMetricsToRetain"))
5039
5062
  UpdateSecurityProfileRequest.add_member(:expected_version, Shapes::ShapeRef.new(shape: OptionalVersion, location: "querystring", location_name: "expectedVersion"))
5063
+ UpdateSecurityProfileRequest.add_member(:metrics_export_config, Shapes::ShapeRef.new(shape: MetricsExportConfig, location_name: "metricsExportConfig"))
5064
+ UpdateSecurityProfileRequest.add_member(:delete_metrics_export_config, Shapes::ShapeRef.new(shape: DeleteMetricsExportConfig, location_name: "deleteMetricsExportConfig"))
5040
5065
  UpdateSecurityProfileRequest.struct_class = Types::UpdateSecurityProfileRequest
5041
5066
 
5042
5067
  UpdateSecurityProfileResponse.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location_name: "securityProfileName"))
@@ -5049,6 +5074,7 @@ module Aws::IoT
5049
5074
  UpdateSecurityProfileResponse.add_member(:version, Shapes::ShapeRef.new(shape: Version, location_name: "version"))
5050
5075
  UpdateSecurityProfileResponse.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
5051
5076
  UpdateSecurityProfileResponse.add_member(:last_modified_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedDate"))
5077
+ UpdateSecurityProfileResponse.add_member(:metrics_export_config, Shapes::ShapeRef.new(shape: MetricsExportConfig, location_name: "metricsExportConfig"))
5052
5078
  UpdateSecurityProfileResponse.struct_class = Types::UpdateSecurityProfileResponse
5053
5079
 
5054
5080
  UpdateStreamRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: StreamId, required: true, location: "uri", location_name: "streamId"))
@@ -32,7 +32,7 @@ module Aws::IoT
32
32
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
33
  end
34
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
36
  return Aws::Endpoints::Endpoint.new(url: "https://iot-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
37
  end
38
38
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
@@ -1300,12 +1300,18 @@ module Aws::IoT
1300
1300
  # Suppresses alerts.
1301
1301
  # @return [Boolean]
1302
1302
  #
1303
+ # @!attribute [rw] export_metric
1304
+ # Value indicates exporting metrics related to the behavior when it is
1305
+ # true.
1306
+ # @return [Boolean]
1307
+ #
1303
1308
  class Behavior < Struct.new(
1304
1309
  :name,
1305
1310
  :metric,
1306
1311
  :metric_dimension,
1307
1312
  :criteria,
1308
- :suppress_alerts)
1313
+ :suppress_alerts,
1314
+ :export_metric)
1309
1315
  SENSITIVE = []
1310
1316
  include Aws::Structure
1311
1317
  end
@@ -2829,8 +2835,8 @@ module Aws::IoT
2829
2835
  # The package version Amazon Resource Names (ARNs) that are installed
2830
2836
  # on the device when the job successfully completes.
2831
2837
  #
2832
- # **Note:**The following Length Constraints relates to a single
2833
- # string. Up to five strings are allowed.
2838
+ # **Note:**The following Length Constraints relates to a single ARN.
2839
+ # Up to 25 package version ARNs are allowed.
2834
2840
  # @return [Array<String>]
2835
2841
  #
2836
2842
  class CreateJobRequest < Struct.new(
@@ -2946,8 +2952,8 @@ module Aws::IoT
2946
2952
  # The package version Amazon Resource Names (ARNs) that are installed
2947
2953
  # on the device when the job successfully completes.
2948
2954
  #
2949
- # **Note:**The following Length Constraints relates to a single
2950
- # string. Up to five strings are allowed.
2955
+ # **Note:**The following Length Constraints relates to a single ARN.
2956
+ # Up to 25 package version ARNs are allowed.
2951
2957
  # @return [Array<String>]
2952
2958
  #
2953
2959
  class CreateJobTemplateRequest < Struct.new(
@@ -3773,6 +3779,10 @@ module Aws::IoT
3773
3779
  # Metadata that can be used to manage the security profile.
3774
3780
  # @return [Array<Types::Tag>]
3775
3781
  #
3782
+ # @!attribute [rw] metrics_export_config
3783
+ # Specifies the MQTT topic and role ARN required for metric export.
3784
+ # @return [Types::MetricsExportConfig]
3785
+ #
3776
3786
  class CreateSecurityProfileRequest < Struct.new(
3777
3787
  :security_profile_name,
3778
3788
  :security_profile_description,
@@ -3780,7 +3790,8 @@ module Aws::IoT
3780
3790
  :alert_targets,
3781
3791
  :additional_metrics_to_retain,
3782
3792
  :additional_metrics_to_retain_v2,
3783
- :tags)
3793
+ :tags,
3794
+ :metrics_export_config)
3784
3795
  SENSITIVE = []
3785
3796
  include Aws::Structure
3786
3797
  end
@@ -5600,8 +5611,8 @@ module Aws::IoT
5600
5611
  # The package version Amazon Resource Names (ARNs) that are installed
5601
5612
  # on the device when the job successfully completes.
5602
5613
  #
5603
- # **Note:**The following Length Constraints relates to a single
5604
- # string. Up to five strings are allowed.
5614
+ # **Note:**The following Length Constraints relates to a single ARN.
5615
+ # Up to 25 package version ARNs are allowed.
5605
5616
  # @return [Array<String>]
5606
5617
  #
5607
5618
  class DescribeJobTemplateResponse < Struct.new(
@@ -5999,6 +6010,10 @@ module Aws::IoT
5999
6010
  # The time the security profile was last modified.
6000
6011
  # @return [Time]
6001
6012
  #
6013
+ # @!attribute [rw] metrics_export_config
6014
+ # Specifies the MQTT topic and role ARN required for metric export.
6015
+ # @return [Types::MetricsExportConfig]
6016
+ #
6002
6017
  class DescribeSecurityProfileResponse < Struct.new(
6003
6018
  :security_profile_name,
6004
6019
  :security_profile_arn,
@@ -6009,7 +6024,8 @@ module Aws::IoT
6009
6024
  :additional_metrics_to_retain_v2,
6010
6025
  :version,
6011
6026
  :creation_date,
6012
- :last_modified_date)
6027
+ :last_modified_date,
6028
+ :metrics_export_config)
6013
6029
  SENSITIVE = []
6014
6030
  include Aws::Structure
6015
6031
  end
@@ -6981,6 +6997,28 @@ module Aws::IoT
6981
6997
  include Aws::Structure
6982
6998
  end
6983
6999
 
7000
+ # A geolocation target that you select to index. Each geolocation target
7001
+ # contains a `name` and `order` key-value pair that specifies the
7002
+ # geolocation target fields.
7003
+ #
7004
+ # @!attribute [rw] name
7005
+ # The `name` of the geolocation target field. If the target field is
7006
+ # part of a named shadow, you must select the named shadow using the
7007
+ # `namedShadow` filter.
7008
+ # @return [String]
7009
+ #
7010
+ # @!attribute [rw] order
7011
+ # The `order` of the geolocation target field. This field is optional.
7012
+ # The default value is `LatLon`.
7013
+ # @return [String]
7014
+ #
7015
+ class GeoLocationTarget < Struct.new(
7016
+ :name,
7017
+ :order)
7018
+ SENSITIVE = []
7019
+ include Aws::Structure
7020
+ end
7021
+
6984
7022
  # @!attribute [rw] security_profile_name
6985
7023
  # The name of the security profile.
6986
7024
  # @return [String]
@@ -7810,11 +7848,27 @@ module Aws::IoT
7810
7848
  include Aws::Structure
7811
7849
  end
7812
7850
 
7813
- # Provides additional filters for specific data sources. Named shadow is
7814
- # the only data source that currently supports and requires a filter. To
7815
- # add named shadows to your fleet indexing configuration, set
7816
- # `namedShadowIndexingMode` to be `ON` and specify your shadow names in
7817
- # `filter`.
7851
+ # Provides additional selections for named shadows and geolocation data.
7852
+ #
7853
+ # To add named shadows to your fleet indexing configuration, set
7854
+ # `namedShadowIndexingMode` to be ON and specify your shadow names in
7855
+ # `namedShadowNames` filter.
7856
+ #
7857
+ # To add geolocation data to your fleet indexing configuration:
7858
+ #
7859
+ # * If you store geolocation data in a class/unnamed shadow, set
7860
+ # `thingIndexingMode` to be `REGISTRY_AND_SHADOW` and specify your
7861
+ # geolocation data in `geoLocations` filter.
7862
+ #
7863
+ # * If you store geolocation data in a named shadow, set
7864
+ # `namedShadowIndexingMode` to be `ON`, add the shadow name in
7865
+ # `namedShadowNames` filter, and specify your geolocation data in
7866
+ # `geoLocations` filter. For more information, see [Managing fleet
7867
+ # indexing][1].
7868
+ #
7869
+ #
7870
+ #
7871
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html
7818
7872
  #
7819
7873
  # @!attribute [rw] named_shadow_names
7820
7874
  # The shadow names that you select to index. The default maximum
@@ -7827,8 +7881,21 @@ module Aws::IoT
7827
7881
  # [1]: https://docs.aws.amazon.com/general/latest/gr/iot_device_management.html#fleet-indexing-limits
7828
7882
  # @return [Array<String>]
7829
7883
  #
7884
+ # @!attribute [rw] geo_locations
7885
+ # The list of geolocation targets that you select to index. The
7886
+ # default maximum number of geolocation targets for indexing is `1`.
7887
+ # To increase the limit, see [Amazon Web Services IoT Device
7888
+ # Management Quotas][1] in the *Amazon Web Services General
7889
+ # Reference*.
7890
+ #
7891
+ #
7892
+ #
7893
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/iot_device_management.html#fleet-indexing-limits
7894
+ # @return [Array<Types::GeoLocationTarget>]
7895
+ #
7830
7896
  class IndexingFilter < Struct.new(
7831
- :named_shadow_names)
7897
+ :named_shadow_names,
7898
+ :geo_locations)
7832
7899
  SENSITIVE = []
7833
7900
  include Aws::Structure
7834
7901
  end
@@ -8208,8 +8275,8 @@ module Aws::IoT
8208
8275
  # The package version Amazon Resource Names (ARNs) that are installed
8209
8276
  # on the device when the job successfully completes.
8210
8277
  #
8211
- # **Note:**The following Length Constraints relates to a single
8212
- # string. Up to five strings are allowed.
8278
+ # **Note:**The following Length Constraints relates to a single ARN.
8279
+ # Up to 25 package version ARNs are allowed.
8213
8280
  # @return [Array<String>]
8214
8281
  #
8215
8282
  class Job < Struct.new(
@@ -11537,9 +11604,16 @@ module Aws::IoT
11537
11604
  # The dimension of a metric. This can't be used with custom metrics.
11538
11605
  # @return [Types::MetricDimension]
11539
11606
  #
11607
+ # @!attribute [rw] export_metric
11608
+ # Value added in both Behavior and AdditionalMetricsToRetainV2 to
11609
+ # indicate if Device Defender Detect should export the corresponding
11610
+ # metrics.
11611
+ # @return [Boolean]
11612
+ #
11540
11613
  class MetricToRetain < Struct.new(
11541
11614
  :metric,
11542
- :metric_dimension)
11615
+ :metric_dimension,
11616
+ :export_metric)
11543
11617
  SENSITIVE = []
11544
11618
  include Aws::Structure
11545
11619
  end
@@ -11584,6 +11658,26 @@ module Aws::IoT
11584
11658
  include Aws::Structure
11585
11659
  end
11586
11660
 
11661
+ # Set configurations for metrics export.
11662
+ #
11663
+ # @!attribute [rw] mqtt_topic
11664
+ # The MQTT topic that Device Defender Detect should publish messages
11665
+ # to for metrics export.
11666
+ # @return [String]
11667
+ #
11668
+ # @!attribute [rw] role_arn
11669
+ # This role ARN has permission to publish MQTT messages, after which
11670
+ # Device Defender Detect can assume the role and publish messages on
11671
+ # your behalf.
11672
+ # @return [String]
11673
+ #
11674
+ class MetricsExportConfig < Struct.new(
11675
+ :mqtt_topic,
11676
+ :role_arn)
11677
+ SENSITIVE = []
11678
+ include Aws::Structure
11679
+ end
11680
+
11587
11681
  # Describes which changes should be applied as part of a mitigation
11588
11682
  # action.
11589
11683
  #
@@ -13239,7 +13333,8 @@ module Aws::IoT
13239
13333
  # @return [String]
13240
13334
  #
13241
13335
  # @!attribute [rw] max_results
13242
- # The maximum number of results to return at one time.
13336
+ # The maximum number of results to return per page at one time. The
13337
+ # response might contain fewer results but will never contain more.
13243
13338
  # @return [Integer]
13244
13339
  #
13245
13340
  # @!attribute [rw] query_version
@@ -14414,6 +14509,11 @@ module Aws::IoT
14414
14509
  # information, see [Managed fields][1] in the *Amazon Web Services IoT
14415
14510
  # Core Developer Guide*.
14416
14511
  #
14512
+ # <note markdown="1"> You can't modify managed fields by updating fleet indexing
14513
+ # configuration.
14514
+ #
14515
+ # </note>
14516
+ #
14417
14517
  #
14418
14518
  #
14419
14519
  # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html#managed-field
@@ -14537,7 +14637,18 @@ module Aws::IoT
14537
14637
  #
14538
14638
  # @!attribute [rw] managed_fields
14539
14639
  # Contains fields that are indexed and whose types are already known
14540
- # by the Fleet Indexing service.
14640
+ # by the Fleet Indexing service. This is an optional field. For more
14641
+ # information, see [Managed fields][1] in the *Amazon Web Services IoT
14642
+ # Core Developer Guide*.
14643
+ #
14644
+ # <note markdown="1"> You can't modify managed fields by updating fleet indexing
14645
+ # configuration.
14646
+ #
14647
+ # </note>
14648
+ #
14649
+ #
14650
+ #
14651
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html#managed-field
14541
14652
  # @return [Array<Types::Field>]
14542
14653
  #
14543
14654
  # @!attribute [rw] custom_fields
@@ -14545,11 +14656,28 @@ module Aws::IoT
14545
14656
  # @return [Array<Types::Field>]
14546
14657
  #
14547
14658
  # @!attribute [rw] filter
14548
- # Provides additional filters for specific data sources. Named shadow
14549
- # is the only data source that currently supports and requires a
14550
- # filter. To add named shadows to your fleet indexing configuration,
14551
- # set `namedShadowIndexingMode` to be `ON` and specify your shadow
14552
- # names in `filter`.
14659
+ # Provides additional selections for named shadows and geolocation
14660
+ # data.
14661
+ #
14662
+ # To add named shadows to your fleet indexing configuration, set
14663
+ # `namedShadowIndexingMode` to be ON and specify your shadow names in
14664
+ # `namedShadowNames` filter.
14665
+ #
14666
+ # To add geolocation data to your fleet indexing configuration:
14667
+ #
14668
+ # * If you store geolocation data in a class/unnamed shadow, set
14669
+ # `thingIndexingMode` to be `REGISTRY_AND_SHADOW` and specify your
14670
+ # geolocation data in `geoLocations` filter.
14671
+ #
14672
+ # * If you store geolocation data in a named shadow, set
14673
+ # `namedShadowIndexingMode` to be `ON`, add the shadow name in
14674
+ # `namedShadowNames` filter, and specify your geolocation data in
14675
+ # `geoLocations` filter. For more information, see [Managing fleet
14676
+ # indexing][1].
14677
+ #
14678
+ #
14679
+ #
14680
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/managing-fleet-index.html
14553
14681
  # @return [Types::IndexingFilter]
14554
14682
  #
14555
14683
  class ThingIndexingConfiguration < Struct.new(
@@ -16175,6 +16303,15 @@ module Aws::IoT
16175
16303
  # `VersionConflictException` is thrown.
16176
16304
  # @return [Integer]
16177
16305
  #
16306
+ # @!attribute [rw] metrics_export_config
16307
+ # Specifies the MQTT topic and role ARN required for metric export.
16308
+ # @return [Types::MetricsExportConfig]
16309
+ #
16310
+ # @!attribute [rw] delete_metrics_export_config
16311
+ # Set the value as true to delete metrics export related
16312
+ # configurations.
16313
+ # @return [Boolean]
16314
+ #
16178
16315
  class UpdateSecurityProfileRequest < Struct.new(
16179
16316
  :security_profile_name,
16180
16317
  :security_profile_description,
@@ -16185,7 +16322,9 @@ module Aws::IoT
16185
16322
  :delete_behaviors,
16186
16323
  :delete_alert_targets,
16187
16324
  :delete_additional_metrics_to_retain,
16188
- :expected_version)
16325
+ :expected_version,
16326
+ :metrics_export_config,
16327
+ :delete_metrics_export_config)
16189
16328
  SENSITIVE = []
16190
16329
  include Aws::Structure
16191
16330
  end
@@ -16239,6 +16378,10 @@ module Aws::IoT
16239
16378
  # The time the security profile was last modified.
16240
16379
  # @return [Time]
16241
16380
  #
16381
+ # @!attribute [rw] metrics_export_config
16382
+ # Specifies the MQTT topic and role ARN required for metric export.
16383
+ # @return [Types::MetricsExportConfig]
16384
+ #
16242
16385
  class UpdateSecurityProfileResponse < Struct.new(
16243
16386
  :security_profile_name,
16244
16387
  :security_profile_arn,
@@ -16249,7 +16392,8 @@ module Aws::IoT
16249
16392
  :additional_metrics_to_retain_v2,
16250
16393
  :version,
16251
16394
  :creation_date,
16252
- :last_modified_date)
16395
+ :last_modified_date,
16396
+ :metrics_export_config)
16253
16397
  SENSITIVE = []
16254
16398
  include Aws::Structure
16255
16399
  end
data/lib/aws-sdk-iot.rb CHANGED
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-iot/customizations'
52
52
  # @!group service
53
53
  module Aws::IoT
54
54
 
55
- GEM_VERSION = '1.111.0'
55
+ GEM_VERSION = '1.113.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.111.0
4
+ version: 1.113.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-27 00:00:00.000000000 Z
11
+ date: 2023-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core