aws-sdk-lookoutequipment 1.8.0 → 1.11.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7f33bc650b25be849647e5cd000d72f5cb0415769a76c08e0c3f0faf0f7e1fe7
4
- data.tar.gz: b6d3eb3a922fb9dc5705e56154165108c9da83303e4f834147d04363089ba0da
3
+ metadata.gz: cc182835e28c205da9454e54f9314253a030b4b5288632ad1af77c8560d85987
4
+ data.tar.gz: 352422b517ecb6360b0a11ae988b153ea0dcd39ddae8fe48471c0f8d49f004cc
5
5
  SHA512:
6
- metadata.gz: 9e91184a96e190b6d6b7b58947ad1661244e2f5d822e078e7e3dea9e010c7195191f3f076d303dd5ccf6bc3499dec31fb75bb0b44faee84a03b5acfaad9f919f
7
- data.tar.gz: 9135338232e41e2e76de9e50d69af2f91470532707475a5aab680515fa986b6fe4badc51f658b263d95fcb409046fafa014684cd79aae13a2e1c23e0d460364f
6
+ metadata.gz: 6f4e339025f9906e13379a033da2c44c55d01f55c8f92c5fce378e9e6b5645be4747073d23138e9869c4fcced257947e7c2f6ff173b740ec6375c9902961e750
7
+ data.tar.gz: 73c90cd03ec85c83b5a243f17de47bfb943e4d1b1fb8986db8622002e19432007977a1c4b90d3200ed4d8dfeb16f0623bd4b2f647c4fd209749ebc7e4d0f772b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.11.0 (2022-04-27)
5
+ ------------------
6
+
7
+ * Feature - This release adds the following new features: 1) Introduces an option for automatic schema creation 2) Now allows for Ingestion of data containing most common errors and allows automatic data cleaning 3) Introduces new API ListSensorStatistics that gives further information about the ingested data
8
+
9
+ 1.10.0 (2022-02-24)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.9.0 (2022-02-03)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
4
19
  1.8.0 (2021-12-21)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.8.0
1
+ 1.11.0
@@ -27,7 +27,9 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
30
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
31
33
  require 'aws-sdk-core/plugins/signature_v4.rb'
32
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
33
35
 
@@ -74,7 +76,9 @@ module Aws::LookoutEquipment
74
76
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
75
77
  add_plugin(Aws::Plugins::TransferEncoding)
76
78
  add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
77
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
+ add_plugin(Aws::Plugins::RecursionDetection)
78
82
  add_plugin(Aws::Plugins::SignatureV4)
79
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
80
84
 
@@ -367,7 +371,7 @@ module Aws::LookoutEquipment
367
371
  # @option params [required, String] :dataset_name
368
372
  # The name of the dataset being created.
369
373
  #
370
- # @option params [required, Types::DatasetSchema] :dataset_schema
374
+ # @option params [Types::DatasetSchema] :dataset_schema
371
375
  # A JSON description of the data that is in each time series dataset,
372
376
  # including names, column names, and data types.
373
377
  #
@@ -395,7 +399,7 @@ module Aws::LookoutEquipment
395
399
  #
396
400
  # resp = client.create_dataset({
397
401
  # dataset_name: "DatasetName", # required
398
- # dataset_schema: { # required
402
+ # dataset_schema: {
399
403
  # inline_data_schema: "InlineDataSchema",
400
404
  # },
401
405
  # server_side_kms_key_id: "NameOrArn",
@@ -747,7 +751,7 @@ module Aws::LookoutEquipment
747
751
  end
748
752
 
749
753
  # Provides information on a specific data ingestion job such as creation
750
- # time, dataset ARN, status, and so on.
754
+ # time, dataset ARN, and status.
751
755
  #
752
756
  # @option params [required, String] :job_id
753
757
  # The job ID of the data ingestion job.
@@ -761,6 +765,12 @@ module Aws::LookoutEquipment
761
765
  # * {Types::DescribeDataIngestionJobResponse#created_at #created_at} => Time
762
766
  # * {Types::DescribeDataIngestionJobResponse#status #status} => String
763
767
  # * {Types::DescribeDataIngestionJobResponse#failed_reason #failed_reason} => String
768
+ # * {Types::DescribeDataIngestionJobResponse#data_quality_summary #data_quality_summary} => Types::DataQualitySummary
769
+ # * {Types::DescribeDataIngestionJobResponse#ingested_files_summary #ingested_files_summary} => Types::IngestedFilesSummary
770
+ # * {Types::DescribeDataIngestionJobResponse#status_detail #status_detail} => String
771
+ # * {Types::DescribeDataIngestionJobResponse#ingested_data_size #ingested_data_size} => Integer
772
+ # * {Types::DescribeDataIngestionJobResponse#data_start_time #data_start_time} => Time
773
+ # * {Types::DescribeDataIngestionJobResponse#data_end_time #data_end_time} => Time
764
774
  #
765
775
  # @example Request syntax with placeholder values
766
776
  #
@@ -774,10 +784,28 @@ module Aws::LookoutEquipment
774
784
  # resp.dataset_arn #=> String
775
785
  # resp.ingestion_input_configuration.s3_input_configuration.bucket #=> String
776
786
  # resp.ingestion_input_configuration.s3_input_configuration.prefix #=> String
787
+ # resp.ingestion_input_configuration.s3_input_configuration.key_pattern #=> String
777
788
  # resp.role_arn #=> String
778
789
  # resp.created_at #=> Time
779
790
  # resp.status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED"
780
791
  # resp.failed_reason #=> String
792
+ # resp.data_quality_summary.insufficient_sensor_data.missing_complete_sensor_data.affected_sensor_count #=> Integer
793
+ # resp.data_quality_summary.insufficient_sensor_data.sensors_with_short_date_range.affected_sensor_count #=> Integer
794
+ # resp.data_quality_summary.missing_sensor_data.affected_sensor_count #=> Integer
795
+ # resp.data_quality_summary.missing_sensor_data.total_number_of_missing_values #=> Integer
796
+ # resp.data_quality_summary.invalid_sensor_data.affected_sensor_count #=> Integer
797
+ # resp.data_quality_summary.invalid_sensor_data.total_number_of_invalid_values #=> Integer
798
+ # resp.data_quality_summary.unsupported_timestamps.total_number_of_unsupported_timestamps #=> Integer
799
+ # resp.data_quality_summary.duplicate_timestamps.total_number_of_duplicate_timestamps #=> Integer
800
+ # resp.ingested_files_summary.total_number_of_files #=> Integer
801
+ # resp.ingested_files_summary.ingested_number_of_files #=> Integer
802
+ # resp.ingested_files_summary.discarded_files #=> Array
803
+ # resp.ingested_files_summary.discarded_files[0].bucket #=> String
804
+ # resp.ingested_files_summary.discarded_files[0].key #=> String
805
+ # resp.status_detail #=> String
806
+ # resp.ingested_data_size #=> Integer
807
+ # resp.data_start_time #=> Time
808
+ # resp.data_end_time #=> Time
781
809
  #
782
810
  # @see http://docs.aws.amazon.com/goto/WebAPI/lookoutequipment-2020-12-15/DescribeDataIngestionJob AWS API Documentation
783
811
  #
@@ -788,8 +816,8 @@ module Aws::LookoutEquipment
788
816
  req.send_request(options)
789
817
  end
790
818
 
791
- # Provides a JSON description of the data that is in each time series
792
- # dataset, including names, column names, and data types.
819
+ # Provides a JSON description of the data in each time series dataset,
820
+ # including names, column names, and data types.
793
821
  #
794
822
  # @option params [required, String] :dataset_name
795
823
  # The name of the dataset to be described.
@@ -804,6 +832,11 @@ module Aws::LookoutEquipment
804
832
  # * {Types::DescribeDatasetResponse#schema #schema} => String
805
833
  # * {Types::DescribeDatasetResponse#server_side_kms_key_id #server_side_kms_key_id} => String
806
834
  # * {Types::DescribeDatasetResponse#ingestion_input_configuration #ingestion_input_configuration} => Types::IngestionInputConfiguration
835
+ # * {Types::DescribeDatasetResponse#data_quality_summary #data_quality_summary} => Types::DataQualitySummary
836
+ # * {Types::DescribeDatasetResponse#ingested_files_summary #ingested_files_summary} => Types::IngestedFilesSummary
837
+ # * {Types::DescribeDatasetResponse#role_arn #role_arn} => String
838
+ # * {Types::DescribeDatasetResponse#data_start_time #data_start_time} => Time
839
+ # * {Types::DescribeDatasetResponse#data_end_time #data_end_time} => Time
807
840
  #
808
841
  # @example Request syntax with placeholder values
809
842
  #
@@ -822,6 +855,23 @@ module Aws::LookoutEquipment
822
855
  # resp.server_side_kms_key_id #=> String
823
856
  # resp.ingestion_input_configuration.s3_input_configuration.bucket #=> String
824
857
  # resp.ingestion_input_configuration.s3_input_configuration.prefix #=> String
858
+ # resp.ingestion_input_configuration.s3_input_configuration.key_pattern #=> String
859
+ # resp.data_quality_summary.insufficient_sensor_data.missing_complete_sensor_data.affected_sensor_count #=> Integer
860
+ # resp.data_quality_summary.insufficient_sensor_data.sensors_with_short_date_range.affected_sensor_count #=> Integer
861
+ # resp.data_quality_summary.missing_sensor_data.affected_sensor_count #=> Integer
862
+ # resp.data_quality_summary.missing_sensor_data.total_number_of_missing_values #=> Integer
863
+ # resp.data_quality_summary.invalid_sensor_data.affected_sensor_count #=> Integer
864
+ # resp.data_quality_summary.invalid_sensor_data.total_number_of_invalid_values #=> Integer
865
+ # resp.data_quality_summary.unsupported_timestamps.total_number_of_unsupported_timestamps #=> Integer
866
+ # resp.data_quality_summary.duplicate_timestamps.total_number_of_duplicate_timestamps #=> Integer
867
+ # resp.ingested_files_summary.total_number_of_files #=> Integer
868
+ # resp.ingested_files_summary.ingested_number_of_files #=> Integer
869
+ # resp.ingested_files_summary.discarded_files #=> Array
870
+ # resp.ingested_files_summary.discarded_files[0].bucket #=> String
871
+ # resp.ingested_files_summary.discarded_files[0].key #=> String
872
+ # resp.role_arn #=> String
873
+ # resp.data_start_time #=> Time
874
+ # resp.data_end_time #=> Time
825
875
  #
826
876
  # @see http://docs.aws.amazon.com/goto/WebAPI/lookoutequipment-2020-12-15/DescribeDataset AWS API Documentation
827
877
  #
@@ -1003,6 +1053,7 @@ module Aws::LookoutEquipment
1003
1053
  # resp.data_ingestion_job_summaries[0].dataset_arn #=> String
1004
1054
  # resp.data_ingestion_job_summaries[0].ingestion_input_configuration.s3_input_configuration.bucket #=> String
1005
1055
  # resp.data_ingestion_job_summaries[0].ingestion_input_configuration.s3_input_configuration.prefix #=> String
1056
+ # resp.data_ingestion_job_summaries[0].ingestion_input_configuration.s3_input_configuration.key_pattern #=> String
1006
1057
  # resp.data_ingestion_job_summaries[0].status #=> String, one of "IN_PROGRESS", "SUCCESS", "FAILED"
1007
1058
  #
1008
1059
  # @see http://docs.aws.amazon.com/goto/WebAPI/lookoutequipment-2020-12-15/ListDataIngestionJobs AWS API Documentation
@@ -1246,6 +1297,77 @@ module Aws::LookoutEquipment
1246
1297
  req.send_request(options)
1247
1298
  end
1248
1299
 
1300
+ # Lists statistics about the data collected for each of the sensors that
1301
+ # have been successfully ingested in the particular dataset. Can also be
1302
+ # used to retreive Sensor Statistics for a previous ingestion job.
1303
+ #
1304
+ # @option params [required, String] :dataset_name
1305
+ # The name of the dataset associated with the list of Sensor Statistics.
1306
+ #
1307
+ # @option params [String] :ingestion_job_id
1308
+ # The ingestion job id associated with the list of Sensor Statistics. To
1309
+ # get sensor statistics for a particular ingestion job id, both dataset
1310
+ # name and ingestion job id must be submitted as inputs.
1311
+ #
1312
+ # @option params [Integer] :max_results
1313
+ # Specifies the maximum number of sensors for which to retrieve
1314
+ # statistics.
1315
+ #
1316
+ # @option params [String] :next_token
1317
+ # An opaque pagination token indicating where to continue the listing of
1318
+ # sensor statistics.
1319
+ #
1320
+ # @return [Types::ListSensorStatisticsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1321
+ #
1322
+ # * {Types::ListSensorStatisticsResponse#sensor_statistics_summaries #sensor_statistics_summaries} => Array<Types::SensorStatisticsSummary>
1323
+ # * {Types::ListSensorStatisticsResponse#next_token #next_token} => String
1324
+ #
1325
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1326
+ #
1327
+ # @example Request syntax with placeholder values
1328
+ #
1329
+ # resp = client.list_sensor_statistics({
1330
+ # dataset_name: "DatasetName", # required
1331
+ # ingestion_job_id: "IngestionJobId",
1332
+ # max_results: 1,
1333
+ # next_token: "NextToken",
1334
+ # })
1335
+ #
1336
+ # @example Response structure
1337
+ #
1338
+ # resp.sensor_statistics_summaries #=> Array
1339
+ # resp.sensor_statistics_summaries[0].component_name #=> String
1340
+ # resp.sensor_statistics_summaries[0].sensor_name #=> String
1341
+ # resp.sensor_statistics_summaries[0].data_exists #=> Boolean
1342
+ # resp.sensor_statistics_summaries[0].missing_values.count #=> Integer
1343
+ # resp.sensor_statistics_summaries[0].missing_values.percentage #=> Float
1344
+ # resp.sensor_statistics_summaries[0].invalid_values.count #=> Integer
1345
+ # resp.sensor_statistics_summaries[0].invalid_values.percentage #=> Float
1346
+ # resp.sensor_statistics_summaries[0].invalid_date_entries.count #=> Integer
1347
+ # resp.sensor_statistics_summaries[0].invalid_date_entries.percentage #=> Float
1348
+ # resp.sensor_statistics_summaries[0].duplicate_timestamps.count #=> Integer
1349
+ # resp.sensor_statistics_summaries[0].duplicate_timestamps.percentage #=> Float
1350
+ # resp.sensor_statistics_summaries[0].categorical_values.status #=> String, one of "POTENTIAL_ISSUE_DETECTED", "NO_ISSUE_DETECTED"
1351
+ # resp.sensor_statistics_summaries[0].categorical_values.number_of_category #=> Integer
1352
+ # resp.sensor_statistics_summaries[0].multiple_operating_modes.status #=> String, one of "POTENTIAL_ISSUE_DETECTED", "NO_ISSUE_DETECTED"
1353
+ # resp.sensor_statistics_summaries[0].large_timestamp_gaps.status #=> String, one of "POTENTIAL_ISSUE_DETECTED", "NO_ISSUE_DETECTED"
1354
+ # resp.sensor_statistics_summaries[0].large_timestamp_gaps.number_of_large_timestamp_gaps #=> Integer
1355
+ # resp.sensor_statistics_summaries[0].large_timestamp_gaps.max_timestamp_gap_in_days #=> Integer
1356
+ # resp.sensor_statistics_summaries[0].monotonic_values.status #=> String, one of "POTENTIAL_ISSUE_DETECTED", "NO_ISSUE_DETECTED"
1357
+ # resp.sensor_statistics_summaries[0].monotonic_values.monotonicity #=> String, one of "DECREASING", "INCREASING", "STATIC"
1358
+ # resp.sensor_statistics_summaries[0].data_start_time #=> Time
1359
+ # resp.sensor_statistics_summaries[0].data_end_time #=> Time
1360
+ # resp.next_token #=> String
1361
+ #
1362
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lookoutequipment-2020-12-15/ListSensorStatistics AWS API Documentation
1363
+ #
1364
+ # @overload list_sensor_statistics(params = {})
1365
+ # @param [Hash] params ({})
1366
+ def list_sensor_statistics(params = {}, options = {})
1367
+ req = build_request(:list_sensor_statistics, params)
1368
+ req.send_request(options)
1369
+ end
1370
+
1249
1371
  # Lists all the tags for a specified resource, including key and value.
1250
1372
  #
1251
1373
  # @option params [required, String] :resource_arn
@@ -1311,6 +1433,7 @@ module Aws::LookoutEquipment
1311
1433
  # s3_input_configuration: { # required
1312
1434
  # bucket: "S3Bucket", # required
1313
1435
  # prefix: "S3Prefix",
1436
+ # key_pattern: "KeyPattern",
1314
1437
  # },
1315
1438
  # },
1316
1439
  # role_arn: "IamRoleArn", # required
@@ -1557,7 +1680,7 @@ module Aws::LookoutEquipment
1557
1680
  params: params,
1558
1681
  config: config)
1559
1682
  context[:gem_name] = 'aws-sdk-lookoutequipment'
1560
- context[:gem_version] = '1.8.0'
1683
+ context[:gem_version] = '1.11.0'
1561
1684
  Seahorse::Client::Request.new(handlers, context)
1562
1685
  end
1563
1686
 
@@ -15,9 +15,13 @@ module Aws::LookoutEquipment
15
15
 
16
16
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
17
  AmazonResourceArn = Shapes::StringShape.new(name: 'AmazonResourceArn')
18
+ Boolean = Shapes::BooleanShape.new(name: 'Boolean')
18
19
  BoundedLengthString = Shapes::StringShape.new(name: 'BoundedLengthString')
20
+ CategoricalValues = Shapes::StructureShape.new(name: 'CategoricalValues')
21
+ ComponentName = Shapes::StringShape.new(name: 'ComponentName')
19
22
  ComponentTimestampDelimiter = Shapes::StringShape.new(name: 'ComponentTimestampDelimiter')
20
23
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
24
+ CountPercent = Shapes::StructureShape.new(name: 'CountPercent')
21
25
  CreateDatasetRequest = Shapes::StructureShape.new(name: 'CreateDatasetRequest')
22
26
  CreateDatasetResponse = Shapes::StructureShape.new(name: 'CreateDatasetResponse')
23
27
  CreateInferenceSchedulerRequest = Shapes::StructureShape.new(name: 'CreateInferenceSchedulerRequest')
@@ -28,6 +32,8 @@ module Aws::LookoutEquipment
28
32
  DataIngestionJobSummaries = Shapes::ListShape.new(name: 'DataIngestionJobSummaries')
29
33
  DataIngestionJobSummary = Shapes::StructureShape.new(name: 'DataIngestionJobSummary')
30
34
  DataPreProcessingConfiguration = Shapes::StructureShape.new(name: 'DataPreProcessingConfiguration')
35
+ DataQualitySummary = Shapes::StructureShape.new(name: 'DataQualitySummary')
36
+ DataSizeInBytes = Shapes::IntegerShape.new(name: 'DataSizeInBytes')
31
37
  DataUploadFrequency = Shapes::StringShape.new(name: 'DataUploadFrequency')
32
38
  DatasetArn = Shapes::StringShape.new(name: 'DatasetArn')
33
39
  DatasetIdentifier = Shapes::StringShape.new(name: 'DatasetIdentifier')
@@ -47,7 +53,9 @@ module Aws::LookoutEquipment
47
53
  DescribeInferenceSchedulerResponse = Shapes::StructureShape.new(name: 'DescribeInferenceSchedulerResponse')
48
54
  DescribeModelRequest = Shapes::StructureShape.new(name: 'DescribeModelRequest')
49
55
  DescribeModelResponse = Shapes::StructureShape.new(name: 'DescribeModelResponse')
56
+ DuplicateTimestamps = Shapes::StructureShape.new(name: 'DuplicateTimestamps')
50
57
  FileNameTimestampFormat = Shapes::StringShape.new(name: 'FileNameTimestampFormat')
58
+ Float = Shapes::FloatShape.new(name: 'Float')
51
59
  IamRoleArn = Shapes::StringShape.new(name: 'IamRoleArn')
52
60
  IdempotenceToken = Shapes::StringShape.new(name: 'IdempotenceToken')
53
61
  InferenceExecutionStatus = Shapes::StringShape.new(name: 'InferenceExecutionStatus')
@@ -64,15 +72,21 @@ module Aws::LookoutEquipment
64
72
  InferenceSchedulerStatus = Shapes::StringShape.new(name: 'InferenceSchedulerStatus')
65
73
  InferenceSchedulerSummaries = Shapes::ListShape.new(name: 'InferenceSchedulerSummaries')
66
74
  InferenceSchedulerSummary = Shapes::StructureShape.new(name: 'InferenceSchedulerSummary')
75
+ IngestedFilesSummary = Shapes::StructureShape.new(name: 'IngestedFilesSummary')
67
76
  IngestionInputConfiguration = Shapes::StructureShape.new(name: 'IngestionInputConfiguration')
68
77
  IngestionJobId = Shapes::StringShape.new(name: 'IngestionJobId')
69
78
  IngestionJobStatus = Shapes::StringShape.new(name: 'IngestionJobStatus')
70
79
  IngestionS3InputConfiguration = Shapes::StructureShape.new(name: 'IngestionS3InputConfiguration')
71
80
  InlineDataSchema = Shapes::StringShape.new(name: 'InlineDataSchema')
81
+ InsufficientSensorData = Shapes::StructureShape.new(name: 'InsufficientSensorData')
82
+ Integer = Shapes::IntegerShape.new(name: 'Integer')
72
83
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
84
+ InvalidSensorData = Shapes::StructureShape.new(name: 'InvalidSensorData')
85
+ KeyPattern = Shapes::StringShape.new(name: 'KeyPattern')
73
86
  KmsKeyArn = Shapes::StringShape.new(name: 'KmsKeyArn')
74
87
  LabelsInputConfiguration = Shapes::StructureShape.new(name: 'LabelsInputConfiguration')
75
88
  LabelsS3InputConfiguration = Shapes::StructureShape.new(name: 'LabelsS3InputConfiguration')
89
+ LargeTimestampGaps = Shapes::StructureShape.new(name: 'LargeTimestampGaps')
76
90
  ListDataIngestionJobsRequest = Shapes::StructureShape.new(name: 'ListDataIngestionJobsRequest')
77
91
  ListDataIngestionJobsResponse = Shapes::StructureShape.new(name: 'ListDataIngestionJobsResponse')
78
92
  ListDatasetsRequest = Shapes::StructureShape.new(name: 'ListDatasetsRequest')
@@ -83,15 +97,23 @@ module Aws::LookoutEquipment
83
97
  ListInferenceSchedulersResponse = Shapes::StructureShape.new(name: 'ListInferenceSchedulersResponse')
84
98
  ListModelsRequest = Shapes::StructureShape.new(name: 'ListModelsRequest')
85
99
  ListModelsResponse = Shapes::StructureShape.new(name: 'ListModelsResponse')
100
+ ListOfDiscardedFiles = Shapes::ListShape.new(name: 'ListOfDiscardedFiles')
101
+ ListSensorStatisticsRequest = Shapes::StructureShape.new(name: 'ListSensorStatisticsRequest')
102
+ ListSensorStatisticsResponse = Shapes::StructureShape.new(name: 'ListSensorStatisticsResponse')
86
103
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
87
104
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
88
105
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
106
+ MissingCompleteSensorData = Shapes::StructureShape.new(name: 'MissingCompleteSensorData')
107
+ MissingSensorData = Shapes::StructureShape.new(name: 'MissingSensorData')
89
108
  ModelArn = Shapes::StringShape.new(name: 'ModelArn')
90
109
  ModelMetrics = Shapes::StringShape.new(name: 'ModelMetrics')
91
110
  ModelName = Shapes::StringShape.new(name: 'ModelName')
92
111
  ModelStatus = Shapes::StringShape.new(name: 'ModelStatus')
93
112
  ModelSummaries = Shapes::ListShape.new(name: 'ModelSummaries')
94
113
  ModelSummary = Shapes::StructureShape.new(name: 'ModelSummary')
114
+ MonotonicValues = Shapes::StructureShape.new(name: 'MonotonicValues')
115
+ Monotonicity = Shapes::StringShape.new(name: 'Monotonicity')
116
+ MultipleOperatingModes = Shapes::StructureShape.new(name: 'MultipleOperatingModes')
95
117
  NameOrArn = Shapes::StringShape.new(name: 'NameOrArn')
96
118
  NextToken = Shapes::StringShape.new(name: 'NextToken')
97
119
  OffCondition = Shapes::StringShape.new(name: 'OffCondition')
@@ -100,11 +122,16 @@ module Aws::LookoutEquipment
100
122
  S3Key = Shapes::StringShape.new(name: 'S3Key')
101
123
  S3Object = Shapes::StructureShape.new(name: 'S3Object')
102
124
  S3Prefix = Shapes::StringShape.new(name: 'S3Prefix')
125
+ SensorName = Shapes::StringShape.new(name: 'SensorName')
126
+ SensorStatisticsSummaries = Shapes::ListShape.new(name: 'SensorStatisticsSummaries')
127
+ SensorStatisticsSummary = Shapes::StructureShape.new(name: 'SensorStatisticsSummary')
128
+ SensorsWithShortDateRange = Shapes::StructureShape.new(name: 'SensorsWithShortDateRange')
103
129
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
104
130
  StartDataIngestionJobRequest = Shapes::StructureShape.new(name: 'StartDataIngestionJobRequest')
105
131
  StartDataIngestionJobResponse = Shapes::StructureShape.new(name: 'StartDataIngestionJobResponse')
106
132
  StartInferenceSchedulerRequest = Shapes::StructureShape.new(name: 'StartInferenceSchedulerRequest')
107
133
  StartInferenceSchedulerResponse = Shapes::StructureShape.new(name: 'StartInferenceSchedulerResponse')
134
+ StatisticalIssueStatus = Shapes::StringShape.new(name: 'StatisticalIssueStatus')
108
135
  StopInferenceSchedulerRequest = Shapes::StructureShape.new(name: 'StopInferenceSchedulerRequest')
109
136
  StopInferenceSchedulerResponse = Shapes::StructureShape.new(name: 'StopInferenceSchedulerResponse')
110
137
  Tag = Shapes::StructureShape.new(name: 'Tag')
@@ -118,6 +145,7 @@ module Aws::LookoutEquipment
118
145
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
119
146
  TimeZoneOffset = Shapes::StringShape.new(name: 'TimeZoneOffset')
120
147
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
148
+ UnsupportedTimestamps = Shapes::StructureShape.new(name: 'UnsupportedTimestamps')
121
149
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
122
150
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
123
151
  UpdateInferenceSchedulerRequest = Shapes::StructureShape.new(name: 'UpdateInferenceSchedulerRequest')
@@ -126,11 +154,19 @@ module Aws::LookoutEquipment
126
154
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: BoundedLengthString, required: true, location_name: "Message"))
127
155
  AccessDeniedException.struct_class = Types::AccessDeniedException
128
156
 
157
+ CategoricalValues.add_member(:status, Shapes::ShapeRef.new(shape: StatisticalIssueStatus, required: true, location_name: "Status"))
158
+ CategoricalValues.add_member(:number_of_category, Shapes::ShapeRef.new(shape: Integer, location_name: "NumberOfCategory"))
159
+ CategoricalValues.struct_class = Types::CategoricalValues
160
+
129
161
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: BoundedLengthString, required: true, location_name: "Message"))
130
162
  ConflictException.struct_class = Types::ConflictException
131
163
 
164
+ CountPercent.add_member(:count, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "Count"))
165
+ CountPercent.add_member(:percentage, Shapes::ShapeRef.new(shape: Float, required: true, location_name: "Percentage"))
166
+ CountPercent.struct_class = Types::CountPercent
167
+
132
168
  CreateDatasetRequest.add_member(:dataset_name, Shapes::ShapeRef.new(shape: DatasetName, required: true, location_name: "DatasetName"))
133
- CreateDatasetRequest.add_member(:dataset_schema, Shapes::ShapeRef.new(shape: DatasetSchema, required: true, location_name: "DatasetSchema"))
169
+ CreateDatasetRequest.add_member(:dataset_schema, Shapes::ShapeRef.new(shape: DatasetSchema, location_name: "DatasetSchema"))
134
170
  CreateDatasetRequest.add_member(:server_side_kms_key_id, Shapes::ShapeRef.new(shape: NameOrArn, location_name: "ServerSideKmsKeyId"))
135
171
  CreateDatasetRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: IdempotenceToken, required: true, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
136
172
  CreateDatasetRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
@@ -190,6 +226,13 @@ module Aws::LookoutEquipment
190
226
  DataPreProcessingConfiguration.add_member(:target_sampling_rate, Shapes::ShapeRef.new(shape: TargetSamplingRate, location_name: "TargetSamplingRate"))
191
227
  DataPreProcessingConfiguration.struct_class = Types::DataPreProcessingConfiguration
192
228
 
229
+ DataQualitySummary.add_member(:insufficient_sensor_data, Shapes::ShapeRef.new(shape: InsufficientSensorData, required: true, location_name: "InsufficientSensorData"))
230
+ DataQualitySummary.add_member(:missing_sensor_data, Shapes::ShapeRef.new(shape: MissingSensorData, required: true, location_name: "MissingSensorData"))
231
+ DataQualitySummary.add_member(:invalid_sensor_data, Shapes::ShapeRef.new(shape: InvalidSensorData, required: true, location_name: "InvalidSensorData"))
232
+ DataQualitySummary.add_member(:unsupported_timestamps, Shapes::ShapeRef.new(shape: UnsupportedTimestamps, required: true, location_name: "UnsupportedTimestamps"))
233
+ DataQualitySummary.add_member(:duplicate_timestamps, Shapes::ShapeRef.new(shape: DuplicateTimestamps, required: true, location_name: "DuplicateTimestamps"))
234
+ DataQualitySummary.struct_class = Types::DataQualitySummary
235
+
193
236
  DatasetSchema.add_member(:inline_data_schema, Shapes::ShapeRef.new(shape: InlineDataSchema, location_name: "InlineDataSchema", metadata: {"jsonvalue"=>true}))
194
237
  DatasetSchema.struct_class = Types::DatasetSchema
195
238
 
@@ -220,6 +263,12 @@ module Aws::LookoutEquipment
220
263
  DescribeDataIngestionJobResponse.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedAt"))
221
264
  DescribeDataIngestionJobResponse.add_member(:status, Shapes::ShapeRef.new(shape: IngestionJobStatus, location_name: "Status"))
222
265
  DescribeDataIngestionJobResponse.add_member(:failed_reason, Shapes::ShapeRef.new(shape: BoundedLengthString, location_name: "FailedReason"))
266
+ DescribeDataIngestionJobResponse.add_member(:data_quality_summary, Shapes::ShapeRef.new(shape: DataQualitySummary, location_name: "DataQualitySummary"))
267
+ DescribeDataIngestionJobResponse.add_member(:ingested_files_summary, Shapes::ShapeRef.new(shape: IngestedFilesSummary, location_name: "IngestedFilesSummary"))
268
+ DescribeDataIngestionJobResponse.add_member(:status_detail, Shapes::ShapeRef.new(shape: BoundedLengthString, location_name: "StatusDetail"))
269
+ DescribeDataIngestionJobResponse.add_member(:ingested_data_size, Shapes::ShapeRef.new(shape: DataSizeInBytes, location_name: "IngestedDataSize"))
270
+ DescribeDataIngestionJobResponse.add_member(:data_start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DataStartTime"))
271
+ DescribeDataIngestionJobResponse.add_member(:data_end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DataEndTime"))
223
272
  DescribeDataIngestionJobResponse.struct_class = Types::DescribeDataIngestionJobResponse
224
273
 
225
274
  DescribeDatasetRequest.add_member(:dataset_name, Shapes::ShapeRef.new(shape: DatasetIdentifier, required: true, location_name: "DatasetName"))
@@ -233,6 +282,11 @@ module Aws::LookoutEquipment
233
282
  DescribeDatasetResponse.add_member(:schema, Shapes::ShapeRef.new(shape: InlineDataSchema, location_name: "Schema", metadata: {"jsonvalue"=>true}))
234
283
  DescribeDatasetResponse.add_member(:server_side_kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyArn, location_name: "ServerSideKmsKeyId"))
235
284
  DescribeDatasetResponse.add_member(:ingestion_input_configuration, Shapes::ShapeRef.new(shape: IngestionInputConfiguration, location_name: "IngestionInputConfiguration"))
285
+ DescribeDatasetResponse.add_member(:data_quality_summary, Shapes::ShapeRef.new(shape: DataQualitySummary, location_name: "DataQualitySummary"))
286
+ DescribeDatasetResponse.add_member(:ingested_files_summary, Shapes::ShapeRef.new(shape: IngestedFilesSummary, location_name: "IngestedFilesSummary"))
287
+ DescribeDatasetResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "RoleArn"))
288
+ DescribeDatasetResponse.add_member(:data_start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DataStartTime"))
289
+ DescribeDatasetResponse.add_member(:data_end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DataEndTime"))
236
290
  DescribeDatasetResponse.struct_class = Types::DescribeDatasetResponse
237
291
 
238
292
  DescribeInferenceSchedulerRequest.add_member(:inference_scheduler_name, Shapes::ShapeRef.new(shape: InferenceSchedulerIdentifier, required: true, location_name: "InferenceSchedulerName"))
@@ -279,6 +333,9 @@ module Aws::LookoutEquipment
279
333
  DescribeModelResponse.add_member(:off_condition, Shapes::ShapeRef.new(shape: OffCondition, location_name: "OffCondition"))
280
334
  DescribeModelResponse.struct_class = Types::DescribeModelResponse
281
335
 
336
+ DuplicateTimestamps.add_member(:total_number_of_duplicate_timestamps, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "TotalNumberOfDuplicateTimestamps"))
337
+ DuplicateTimestamps.struct_class = Types::DuplicateTimestamps
338
+
282
339
  InferenceExecutionSummaries.member = Shapes::ShapeRef.new(shape: InferenceExecutionSummary)
283
340
 
284
341
  InferenceExecutionSummary.add_member(:model_name, Shapes::ShapeRef.new(shape: ModelName, location_name: "ModelName"))
@@ -327,16 +384,30 @@ module Aws::LookoutEquipment
327
384
  InferenceSchedulerSummary.add_member(:data_upload_frequency, Shapes::ShapeRef.new(shape: DataUploadFrequency, location_name: "DataUploadFrequency"))
328
385
  InferenceSchedulerSummary.struct_class = Types::InferenceSchedulerSummary
329
386
 
387
+ IngestedFilesSummary.add_member(:total_number_of_files, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "TotalNumberOfFiles"))
388
+ IngestedFilesSummary.add_member(:ingested_number_of_files, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "IngestedNumberOfFiles"))
389
+ IngestedFilesSummary.add_member(:discarded_files, Shapes::ShapeRef.new(shape: ListOfDiscardedFiles, location_name: "DiscardedFiles"))
390
+ IngestedFilesSummary.struct_class = Types::IngestedFilesSummary
391
+
330
392
  IngestionInputConfiguration.add_member(:s3_input_configuration, Shapes::ShapeRef.new(shape: IngestionS3InputConfiguration, required: true, location_name: "S3InputConfiguration"))
331
393
  IngestionInputConfiguration.struct_class = Types::IngestionInputConfiguration
332
394
 
333
395
  IngestionS3InputConfiguration.add_member(:bucket, Shapes::ShapeRef.new(shape: S3Bucket, required: true, location_name: "Bucket"))
334
396
  IngestionS3InputConfiguration.add_member(:prefix, Shapes::ShapeRef.new(shape: S3Prefix, location_name: "Prefix"))
397
+ IngestionS3InputConfiguration.add_member(:key_pattern, Shapes::ShapeRef.new(shape: KeyPattern, location_name: "KeyPattern"))
335
398
  IngestionS3InputConfiguration.struct_class = Types::IngestionS3InputConfiguration
336
399
 
400
+ InsufficientSensorData.add_member(:missing_complete_sensor_data, Shapes::ShapeRef.new(shape: MissingCompleteSensorData, required: true, location_name: "MissingCompleteSensorData"))
401
+ InsufficientSensorData.add_member(:sensors_with_short_date_range, Shapes::ShapeRef.new(shape: SensorsWithShortDateRange, required: true, location_name: "SensorsWithShortDateRange"))
402
+ InsufficientSensorData.struct_class = Types::InsufficientSensorData
403
+
337
404
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: BoundedLengthString, required: true, location_name: "Message"))
338
405
  InternalServerException.struct_class = Types::InternalServerException
339
406
 
407
+ InvalidSensorData.add_member(:affected_sensor_count, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "AffectedSensorCount"))
408
+ InvalidSensorData.add_member(:total_number_of_invalid_values, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "TotalNumberOfInvalidValues"))
409
+ InvalidSensorData.struct_class = Types::InvalidSensorData
410
+
340
411
  LabelsInputConfiguration.add_member(:s3_input_configuration, Shapes::ShapeRef.new(shape: LabelsS3InputConfiguration, required: true, location_name: "S3InputConfiguration"))
341
412
  LabelsInputConfiguration.struct_class = Types::LabelsInputConfiguration
342
413
 
@@ -344,6 +415,11 @@ module Aws::LookoutEquipment
344
415
  LabelsS3InputConfiguration.add_member(:prefix, Shapes::ShapeRef.new(shape: S3Prefix, location_name: "Prefix"))
345
416
  LabelsS3InputConfiguration.struct_class = Types::LabelsS3InputConfiguration
346
417
 
418
+ LargeTimestampGaps.add_member(:status, Shapes::ShapeRef.new(shape: StatisticalIssueStatus, required: true, location_name: "Status"))
419
+ LargeTimestampGaps.add_member(:number_of_large_timestamp_gaps, Shapes::ShapeRef.new(shape: Integer, location_name: "NumberOfLargeTimestampGaps"))
420
+ LargeTimestampGaps.add_member(:max_timestamp_gap_in_days, Shapes::ShapeRef.new(shape: Integer, location_name: "MaxTimestampGapInDays"))
421
+ LargeTimestampGaps.struct_class = Types::LargeTimestampGaps
422
+
347
423
  ListDataIngestionJobsRequest.add_member(:dataset_name, Shapes::ShapeRef.new(shape: DatasetName, location_name: "DatasetName"))
348
424
  ListDataIngestionJobsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
349
425
  ListDataIngestionJobsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
@@ -396,12 +472,31 @@ module Aws::LookoutEquipment
396
472
  ListModelsResponse.add_member(:model_summaries, Shapes::ShapeRef.new(shape: ModelSummaries, location_name: "ModelSummaries"))
397
473
  ListModelsResponse.struct_class = Types::ListModelsResponse
398
474
 
475
+ ListOfDiscardedFiles.member = Shapes::ShapeRef.new(shape: S3Object)
476
+
477
+ ListSensorStatisticsRequest.add_member(:dataset_name, Shapes::ShapeRef.new(shape: DatasetName, required: true, location_name: "DatasetName"))
478
+ ListSensorStatisticsRequest.add_member(:ingestion_job_id, Shapes::ShapeRef.new(shape: IngestionJobId, location_name: "IngestionJobId"))
479
+ ListSensorStatisticsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
480
+ ListSensorStatisticsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
481
+ ListSensorStatisticsRequest.struct_class = Types::ListSensorStatisticsRequest
482
+
483
+ ListSensorStatisticsResponse.add_member(:sensor_statistics_summaries, Shapes::ShapeRef.new(shape: SensorStatisticsSummaries, location_name: "SensorStatisticsSummaries"))
484
+ ListSensorStatisticsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
485
+ ListSensorStatisticsResponse.struct_class = Types::ListSensorStatisticsResponse
486
+
399
487
  ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceArn, required: true, location_name: "ResourceArn"))
400
488
  ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
401
489
 
402
490
  ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
403
491
  ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
404
492
 
493
+ MissingCompleteSensorData.add_member(:affected_sensor_count, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "AffectedSensorCount"))
494
+ MissingCompleteSensorData.struct_class = Types::MissingCompleteSensorData
495
+
496
+ MissingSensorData.add_member(:affected_sensor_count, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "AffectedSensorCount"))
497
+ MissingSensorData.add_member(:total_number_of_missing_values, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "TotalNumberOfMissingValues"))
498
+ MissingSensorData.struct_class = Types::MissingSensorData
499
+
405
500
  ModelSummaries.member = Shapes::ShapeRef.new(shape: ModelSummary)
406
501
 
407
502
  ModelSummary.add_member(:model_name, Shapes::ShapeRef.new(shape: ModelName, location_name: "ModelName"))
@@ -412,6 +507,13 @@ module Aws::LookoutEquipment
412
507
  ModelSummary.add_member(:created_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreatedAt"))
413
508
  ModelSummary.struct_class = Types::ModelSummary
414
509
 
510
+ MonotonicValues.add_member(:status, Shapes::ShapeRef.new(shape: StatisticalIssueStatus, required: true, location_name: "Status"))
511
+ MonotonicValues.add_member(:monotonicity, Shapes::ShapeRef.new(shape: Monotonicity, location_name: "Monotonicity"))
512
+ MonotonicValues.struct_class = Types::MonotonicValues
513
+
514
+ MultipleOperatingModes.add_member(:status, Shapes::ShapeRef.new(shape: StatisticalIssueStatus, required: true, location_name: "Status"))
515
+ MultipleOperatingModes.struct_class = Types::MultipleOperatingModes
516
+
415
517
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: BoundedLengthString, required: true, location_name: "Message"))
416
518
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
417
519
 
@@ -419,6 +521,26 @@ module Aws::LookoutEquipment
419
521
  S3Object.add_member(:key, Shapes::ShapeRef.new(shape: S3Key, required: true, location_name: "Key"))
420
522
  S3Object.struct_class = Types::S3Object
421
523
 
524
+ SensorStatisticsSummaries.member = Shapes::ShapeRef.new(shape: SensorStatisticsSummary)
525
+
526
+ SensorStatisticsSummary.add_member(:component_name, Shapes::ShapeRef.new(shape: ComponentName, location_name: "ComponentName"))
527
+ SensorStatisticsSummary.add_member(:sensor_name, Shapes::ShapeRef.new(shape: SensorName, location_name: "SensorName"))
528
+ SensorStatisticsSummary.add_member(:data_exists, Shapes::ShapeRef.new(shape: Boolean, location_name: "DataExists"))
529
+ SensorStatisticsSummary.add_member(:missing_values, Shapes::ShapeRef.new(shape: CountPercent, location_name: "MissingValues"))
530
+ SensorStatisticsSummary.add_member(:invalid_values, Shapes::ShapeRef.new(shape: CountPercent, location_name: "InvalidValues"))
531
+ SensorStatisticsSummary.add_member(:invalid_date_entries, Shapes::ShapeRef.new(shape: CountPercent, location_name: "InvalidDateEntries"))
532
+ SensorStatisticsSummary.add_member(:duplicate_timestamps, Shapes::ShapeRef.new(shape: CountPercent, location_name: "DuplicateTimestamps"))
533
+ SensorStatisticsSummary.add_member(:categorical_values, Shapes::ShapeRef.new(shape: CategoricalValues, location_name: "CategoricalValues"))
534
+ SensorStatisticsSummary.add_member(:multiple_operating_modes, Shapes::ShapeRef.new(shape: MultipleOperatingModes, location_name: "MultipleOperatingModes"))
535
+ SensorStatisticsSummary.add_member(:large_timestamp_gaps, Shapes::ShapeRef.new(shape: LargeTimestampGaps, location_name: "LargeTimestampGaps"))
536
+ SensorStatisticsSummary.add_member(:monotonic_values, Shapes::ShapeRef.new(shape: MonotonicValues, location_name: "MonotonicValues"))
537
+ SensorStatisticsSummary.add_member(:data_start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DataStartTime"))
538
+ SensorStatisticsSummary.add_member(:data_end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "DataEndTime"))
539
+ SensorStatisticsSummary.struct_class = Types::SensorStatisticsSummary
540
+
541
+ SensorsWithShortDateRange.add_member(:affected_sensor_count, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "AffectedSensorCount"))
542
+ SensorsWithShortDateRange.struct_class = Types::SensorsWithShortDateRange
543
+
422
544
  ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: BoundedLengthString, required: true, location_name: "Message"))
423
545
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
424
546
 
@@ -469,6 +591,9 @@ module Aws::LookoutEquipment
469
591
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: BoundedLengthString, required: true, location_name: "Message"))
470
592
  ThrottlingException.struct_class = Types::ThrottlingException
471
593
 
594
+ UnsupportedTimestamps.add_member(:total_number_of_unsupported_timestamps, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "TotalNumberOfUnsupportedTimestamps"))
595
+ UnsupportedTimestamps.struct_class = Types::UnsupportedTimestamps
596
+
472
597
  UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceArn, required: true, location_name: "ResourceArn"))
473
598
  UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "TagKeys"))
474
599
  UntagResourceRequest.struct_class = Types::UntagResourceRequest
@@ -732,6 +857,25 @@ module Aws::LookoutEquipment
732
857
  )
733
858
  end)
734
859
 
860
+ api.add_operation(:list_sensor_statistics, Seahorse::Model::Operation.new.tap do |o|
861
+ o.name = "ListSensorStatistics"
862
+ o.http_method = "POST"
863
+ o.http_request_uri = "/"
864
+ o.input = Shapes::ShapeRef.new(shape: ListSensorStatisticsRequest)
865
+ o.output = Shapes::ShapeRef.new(shape: ListSensorStatisticsResponse)
866
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
867
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
868
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
869
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
870
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
871
+ o[:pager] = Aws::Pager.new(
872
+ limit_key: "max_results",
873
+ tokens: {
874
+ "next_token" => "next_token"
875
+ }
876
+ )
877
+ end)
878
+
735
879
  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
736
880
  o.name = "ListTagsForResource"
737
881
  o.http_method = "POST"