aws-sdk-iotevents 1.23.0 → 1.24.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.
@@ -10,6 +10,30 @@
10
10
  module Aws::IoTEvents
11
11
  module Types
12
12
 
13
+ # Specifies whether to get notified for alarm state changes.
14
+ #
15
+ # @note When making an API call, you may pass AcknowledgeFlow
16
+ # data as a hash:
17
+ #
18
+ # {
19
+ # enabled: false, # required
20
+ # }
21
+ #
22
+ # @!attribute [rw] enabled
23
+ # The value must be `TRUE` or `FALSE`. If `TRUE`, you receive a
24
+ # notification when the alarm state changes. You must choose to
25
+ # acknowledge the notification before the alarm state can return to
26
+ # `NORMAL`. If `FALSE`, you won't receive notifications. The alarm
27
+ # automatically changes to the `NORMAL` state when the input property
28
+ # value returns to the specified range.
29
+ # @return [Boolean]
30
+ #
31
+ class AcknowledgeFlow < Struct.new(
32
+ :enabled)
33
+ SENSITIVE = []
34
+ include Aws::Structure
35
+ end
36
+
13
37
  # An action to be performed when the `condition` is TRUE.
14
38
  #
15
39
  # @note When making an API call, you may pass Action
@@ -102,8 +126,8 @@ module Aws::IoTEvents
102
126
  # asset_id: "AssetId",
103
127
  # property_id: "AssetPropertyId",
104
128
  # property_alias: "AssetPropertyAlias",
105
- # property_value: { # required
106
- # value: { # required
129
+ # property_value: {
130
+ # value: {
107
131
  # string_value: "AssetPropertyStringValue",
108
132
  # integer_value: "AssetPropertyIntegerValue",
109
133
  # double_value: "AssetPropertyDoubleValue",
@@ -179,40 +203,651 @@ module Aws::IoTEvents
179
203
  # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-event-actions.html
180
204
  # @return [Types::DynamoDBAction]
181
205
  #
182
- # @!attribute [rw] dynamo_d_bv_2
183
- # Writes to the DynamoDB table that you created. The default action
184
- # payload contains all attribute-value pairs that have the information
185
- # about the detector model instance and the event that triggered the
186
- # action. You can customize the [payload][1]. A separate column of the
187
- # DynamoDB table receives one attribute-value pair in the payload that
188
- # you specify. For more information, see [Actions][2] in *AWS IoT
189
- # Events Developer Guide*.
206
+ # @!attribute [rw] dynamo_d_bv_2
207
+ # Writes to the DynamoDB table that you created. The default action
208
+ # payload contains all attribute-value pairs that have the information
209
+ # about the detector model instance and the event that triggered the
210
+ # action. You can customize the [payload][1]. A separate column of the
211
+ # DynamoDB table receives one attribute-value pair in the payload that
212
+ # you specify. For more information, see [Actions][2] in *AWS IoT
213
+ # Events Developer Guide*.
214
+ #
215
+ #
216
+ #
217
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
218
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-event-actions.html
219
+ # @return [Types::DynamoDBv2Action]
220
+ #
221
+ # @!attribute [rw] iot_site_wise
222
+ # Sends information about the detector model instance and the event
223
+ # that triggered the action to an asset property in AWS IoT SiteWise .
224
+ # @return [Types::IotSiteWiseAction]
225
+ #
226
+ class Action < Struct.new(
227
+ :set_variable,
228
+ :sns,
229
+ :iot_topic_publish,
230
+ :set_timer,
231
+ :clear_timer,
232
+ :reset_timer,
233
+ :lambda,
234
+ :iot_events,
235
+ :sqs,
236
+ :firehose,
237
+ :dynamo_db,
238
+ :dynamo_d_bv_2,
239
+ :iot_site_wise)
240
+ SENSITIVE = []
241
+ include Aws::Structure
242
+ end
243
+
244
+ # Specifies one of the following actions to receive notifications when
245
+ # the alarm state changes.
246
+ #
247
+ # @note When making an API call, you may pass AlarmAction
248
+ # data as a hash:
249
+ #
250
+ # {
251
+ # sns: {
252
+ # target_arn: "AmazonResourceName", # required
253
+ # payload: {
254
+ # content_expression: "ContentExpression", # required
255
+ # type: "STRING", # required, accepts STRING, JSON
256
+ # },
257
+ # },
258
+ # iot_topic_publish: {
259
+ # mqtt_topic: "MQTTTopic", # required
260
+ # payload: {
261
+ # content_expression: "ContentExpression", # required
262
+ # type: "STRING", # required, accepts STRING, JSON
263
+ # },
264
+ # },
265
+ # lambda: {
266
+ # function_arn: "AmazonResourceName", # required
267
+ # payload: {
268
+ # content_expression: "ContentExpression", # required
269
+ # type: "STRING", # required, accepts STRING, JSON
270
+ # },
271
+ # },
272
+ # iot_events: {
273
+ # input_name: "InputName", # required
274
+ # payload: {
275
+ # content_expression: "ContentExpression", # required
276
+ # type: "STRING", # required, accepts STRING, JSON
277
+ # },
278
+ # },
279
+ # sqs: {
280
+ # queue_url: "QueueUrl", # required
281
+ # use_base_64: false,
282
+ # payload: {
283
+ # content_expression: "ContentExpression", # required
284
+ # type: "STRING", # required, accepts STRING, JSON
285
+ # },
286
+ # },
287
+ # firehose: {
288
+ # delivery_stream_name: "DeliveryStreamName", # required
289
+ # separator: "FirehoseSeparator",
290
+ # payload: {
291
+ # content_expression: "ContentExpression", # required
292
+ # type: "STRING", # required, accepts STRING, JSON
293
+ # },
294
+ # },
295
+ # dynamo_db: {
296
+ # hash_key_type: "DynamoKeyType",
297
+ # hash_key_field: "DynamoKeyField", # required
298
+ # hash_key_value: "DynamoKeyValue", # required
299
+ # range_key_type: "DynamoKeyType",
300
+ # range_key_field: "DynamoKeyField",
301
+ # range_key_value: "DynamoKeyValue",
302
+ # operation: "DynamoOperation",
303
+ # payload_field: "DynamoKeyField",
304
+ # table_name: "DynamoTableName", # required
305
+ # payload: {
306
+ # content_expression: "ContentExpression", # required
307
+ # type: "STRING", # required, accepts STRING, JSON
308
+ # },
309
+ # },
310
+ # dynamo_d_bv_2: {
311
+ # table_name: "DynamoTableName", # required
312
+ # payload: {
313
+ # content_expression: "ContentExpression", # required
314
+ # type: "STRING", # required, accepts STRING, JSON
315
+ # },
316
+ # },
317
+ # iot_site_wise: {
318
+ # entry_id: "AssetPropertyEntryId",
319
+ # asset_id: "AssetId",
320
+ # property_id: "AssetPropertyId",
321
+ # property_alias: "AssetPropertyAlias",
322
+ # property_value: {
323
+ # value: {
324
+ # string_value: "AssetPropertyStringValue",
325
+ # integer_value: "AssetPropertyIntegerValue",
326
+ # double_value: "AssetPropertyDoubleValue",
327
+ # boolean_value: "AssetPropertyBooleanValue",
328
+ # },
329
+ # timestamp: {
330
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
331
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
332
+ # },
333
+ # quality: "AssetPropertyQuality",
334
+ # },
335
+ # },
336
+ # }
337
+ #
338
+ # @!attribute [rw] sns
339
+ # Information required to publish the Amazon SNS message.
340
+ # @return [Types::SNSTopicPublishAction]
341
+ #
342
+ # @!attribute [rw] iot_topic_publish
343
+ # Information required to publish the MQTT message through the AWS IoT
344
+ # message broker.
345
+ # @return [Types::IotTopicPublishAction]
346
+ #
347
+ # @!attribute [rw] lambda
348
+ # Calls a Lambda function, passing in information about the detector
349
+ # model instance and the event that triggered the action.
350
+ # @return [Types::LambdaAction]
351
+ #
352
+ # @!attribute [rw] iot_events
353
+ # Sends an AWS IoT Events input, passing in information about the
354
+ # detector model instance and the event that triggered the action.
355
+ # @return [Types::IotEventsAction]
356
+ #
357
+ # @!attribute [rw] sqs
358
+ # Sends information about the detector model instance and the event
359
+ # that triggered the action to an Amazon SQS queue.
360
+ # @return [Types::SqsAction]
361
+ #
362
+ # @!attribute [rw] firehose
363
+ # Sends information about the detector model instance and the event
364
+ # that triggered the action to an Amazon Kinesis Data Firehose
365
+ # delivery stream.
366
+ # @return [Types::FirehoseAction]
367
+ #
368
+ # @!attribute [rw] dynamo_db
369
+ # Defines an action to write to the Amazon DynamoDB table that you
370
+ # created. The standard action payload contains all the information
371
+ # about the detector model instance and the event that triggered the
372
+ # action. You can customize the [payload][1]. One column of the
373
+ # DynamoDB table receives all attribute-value pairs in the payload
374
+ # that you specify.
375
+ #
376
+ # You must use expressions for all parameters in `DynamoDBAction`. The
377
+ # expressions accept literals, operators, functions, references, and
378
+ # substitution templates.
379
+ #
380
+ # **Examples**
381
+ #
382
+ # * For literal values, the expressions must contain single quotes.
383
+ # For example, the value for the `hashKeyType` parameter can be
384
+ # `'STRING'`.
385
+ #
386
+ # * For references, you must specify either variables or input values.
387
+ # For example, the value for the `hashKeyField` parameter can be
388
+ # `$input.GreenhouseInput.name`.
389
+ #
390
+ # * For a substitution template, you must use `$\{\}`, and the
391
+ # template must be in single quotes. A substitution template can
392
+ # also contain a combination of literals, operators, functions,
393
+ # references, and substitution templates.
394
+ #
395
+ # In the following example, the value for the `hashKeyValue`
396
+ # parameter uses a substitution template.
397
+ #
398
+ # `'$\{$input.GreenhouseInput.temperature * 6 / 5 + 32\} in
399
+ # Fahrenheit'`
400
+ #
401
+ # * For a string concatenation, you must use `+`. A string
402
+ # concatenation can also contain a combination of literals,
403
+ # operators, functions, references, and substitution templates.
404
+ #
405
+ # In the following example, the value for the `tableName` parameter
406
+ # uses a string concatenation.
407
+ #
408
+ # `'GreenhouseTemperatureTable ' + $input.GreenhouseInput.date`
409
+ #
410
+ # For more information, see [Expressions][2] in the *AWS IoT Events
411
+ # Developer Guide*.
412
+ #
413
+ # If the defined payload type is a string, `DynamoDBAction` writes
414
+ # non-JSON data to the DynamoDB table as binary data. The DynamoDB
415
+ # console displays the data as Base64-encoded text. The value for the
416
+ # `payloadField` parameter is `<payload-field>_raw`.
417
+ #
418
+ #
419
+ #
420
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
421
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
422
+ # @return [Types::DynamoDBAction]
423
+ #
424
+ # @!attribute [rw] dynamo_d_bv_2
425
+ # Defines an action to write to the Amazon DynamoDB table that you
426
+ # created. The default action payload contains all the information
427
+ # about the detector model instance and the event that triggered the
428
+ # action. You can customize the [payload][1]. A separate column of the
429
+ # DynamoDB table receives one attribute-value pair in the payload that
430
+ # you specify.
431
+ #
432
+ # You must use expressions for all parameters in `DynamoDBv2Action`.
433
+ # The expressions accept literals, operators, functions, references,
434
+ # and substitution templates.
435
+ #
436
+ # **Examples**
437
+ #
438
+ # * For literal values, the expressions must contain single quotes.
439
+ # For example, the value for the `tableName` parameter can be
440
+ # `'GreenhouseTemperatureTable'`.
441
+ #
442
+ # * For references, you must specify either variables or input values.
443
+ # For example, the value for the `tableName` parameter can be
444
+ # `$variable.ddbtableName`.
445
+ #
446
+ # * For a substitution template, you must use `$\{\}`, and the
447
+ # template must be in single quotes. A substitution template can
448
+ # also contain a combination of literals, operators, functions,
449
+ # references, and substitution templates.
450
+ #
451
+ # In the following example, the value for the `contentExpression`
452
+ # parameter in `Payload` uses a substitution template.
453
+ #
454
+ # `'\{"sensorID": "$\{$input.GreenhouseInput.sensor_id\}",
455
+ # "temperature": "$\{$input.GreenhouseInput.temperature * 9 / 5 +
456
+ # 32\}"\}'`
457
+ #
458
+ # * For a string concatenation, you must use `+`. A string
459
+ # concatenation can also contain a combination of literals,
460
+ # operators, functions, references, and substitution templates.
461
+ #
462
+ # In the following example, the value for the `tableName` parameter
463
+ # uses a string concatenation.
464
+ #
465
+ # `'GreenhouseTemperatureTable ' + $input.GreenhouseInput.date`
466
+ #
467
+ # For more information, see [Expressions][2] in the *AWS IoT Events
468
+ # Developer Guide*.
469
+ #
470
+ # The value for the `type` parameter in `Payload` must be `JSON`.
471
+ #
472
+ #
473
+ #
474
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
475
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
476
+ # @return [Types::DynamoDBv2Action]
477
+ #
478
+ # @!attribute [rw] iot_site_wise
479
+ # Sends information about the detector model instance and the event
480
+ # that triggered the action to a specified asset property in AWS IoT
481
+ # SiteWise.
482
+ #
483
+ # You must use expressions for all parameters in `IotSiteWiseAction`.
484
+ # The expressions accept literals, operators, functions, references,
485
+ # and substitutions templates.
486
+ #
487
+ # **Examples**
488
+ #
489
+ # * For literal values, the expressions must contain single quotes.
490
+ # For example, the value for the `propertyAlias` parameter can be
491
+ # `'/company/windfarm/3/turbine/7/temperature'`.
492
+ #
493
+ # * For references, you must specify either variables or input values.
494
+ # For example, the value for the `assetId` parameter can be
495
+ # `$input.TurbineInput.assetId1`.
496
+ #
497
+ # * For a substitution template, you must use `$\{\}`, and the
498
+ # template must be in single quotes. A substitution template can
499
+ # also contain a combination of literals, operators, functions,
500
+ # references, and substitution templates.
501
+ #
502
+ # In the following example, the value for the `propertyAlias`
503
+ # parameter uses a substitution template.
504
+ #
505
+ # `'company/windfarm/$\{$input.TemperatureInput.sensorData.windfarmID\}/turbine/
506
+ # $\{$input.TemperatureInput.sensorData.turbineID\}/temperature'`
507
+ #
508
+ # You must specify either `propertyAlias` or both `assetId` and
509
+ # `propertyId` to identify the target asset property in AWS IoT
510
+ # SiteWise.
511
+ #
512
+ # For more information, see [Expressions][1] in the *AWS IoT Events
513
+ # Developer Guide*.
514
+ #
515
+ #
516
+ #
517
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
518
+ # @return [Types::IotSiteWiseAction]
519
+ #
520
+ class AlarmAction < Struct.new(
521
+ :sns,
522
+ :iot_topic_publish,
523
+ :lambda,
524
+ :iot_events,
525
+ :sqs,
526
+ :firehose,
527
+ :dynamo_db,
528
+ :dynamo_d_bv_2,
529
+ :iot_site_wise)
530
+ SENSITIVE = []
531
+ include Aws::Structure
532
+ end
533
+
534
+ # Contains the configuration information of alarm state changes.
535
+ #
536
+ # @note When making an API call, you may pass AlarmCapabilities
537
+ # data as a hash:
538
+ #
539
+ # {
540
+ # initialization_configuration: {
541
+ # disabled_on_initialization: false, # required
542
+ # },
543
+ # acknowledge_flow: {
544
+ # enabled: false, # required
545
+ # },
546
+ # }
547
+ #
548
+ # @!attribute [rw] initialization_configuration
549
+ # Specifies the default alarm state. The configuration applies to all
550
+ # alarms that were created based on this alarm model.
551
+ # @return [Types::InitializationConfiguration]
552
+ #
553
+ # @!attribute [rw] acknowledge_flow
554
+ # Specifies whether to get notified for alarm state changes.
555
+ # @return [Types::AcknowledgeFlow]
556
+ #
557
+ class AlarmCapabilities < Struct.new(
558
+ :initialization_configuration,
559
+ :acknowledge_flow)
560
+ SENSITIVE = []
561
+ include Aws::Structure
562
+ end
563
+
564
+ # Contains information about one or more alarm actions.
565
+ #
566
+ # @note When making an API call, you may pass AlarmEventActions
567
+ # data as a hash:
568
+ #
569
+ # {
570
+ # alarm_actions: [
571
+ # {
572
+ # sns: {
573
+ # target_arn: "AmazonResourceName", # required
574
+ # payload: {
575
+ # content_expression: "ContentExpression", # required
576
+ # type: "STRING", # required, accepts STRING, JSON
577
+ # },
578
+ # },
579
+ # iot_topic_publish: {
580
+ # mqtt_topic: "MQTTTopic", # required
581
+ # payload: {
582
+ # content_expression: "ContentExpression", # required
583
+ # type: "STRING", # required, accepts STRING, JSON
584
+ # },
585
+ # },
586
+ # lambda: {
587
+ # function_arn: "AmazonResourceName", # required
588
+ # payload: {
589
+ # content_expression: "ContentExpression", # required
590
+ # type: "STRING", # required, accepts STRING, JSON
591
+ # },
592
+ # },
593
+ # iot_events: {
594
+ # input_name: "InputName", # required
595
+ # payload: {
596
+ # content_expression: "ContentExpression", # required
597
+ # type: "STRING", # required, accepts STRING, JSON
598
+ # },
599
+ # },
600
+ # sqs: {
601
+ # queue_url: "QueueUrl", # required
602
+ # use_base_64: false,
603
+ # payload: {
604
+ # content_expression: "ContentExpression", # required
605
+ # type: "STRING", # required, accepts STRING, JSON
606
+ # },
607
+ # },
608
+ # firehose: {
609
+ # delivery_stream_name: "DeliveryStreamName", # required
610
+ # separator: "FirehoseSeparator",
611
+ # payload: {
612
+ # content_expression: "ContentExpression", # required
613
+ # type: "STRING", # required, accepts STRING, JSON
614
+ # },
615
+ # },
616
+ # dynamo_db: {
617
+ # hash_key_type: "DynamoKeyType",
618
+ # hash_key_field: "DynamoKeyField", # required
619
+ # hash_key_value: "DynamoKeyValue", # required
620
+ # range_key_type: "DynamoKeyType",
621
+ # range_key_field: "DynamoKeyField",
622
+ # range_key_value: "DynamoKeyValue",
623
+ # operation: "DynamoOperation",
624
+ # payload_field: "DynamoKeyField",
625
+ # table_name: "DynamoTableName", # required
626
+ # payload: {
627
+ # content_expression: "ContentExpression", # required
628
+ # type: "STRING", # required, accepts STRING, JSON
629
+ # },
630
+ # },
631
+ # dynamo_d_bv_2: {
632
+ # table_name: "DynamoTableName", # required
633
+ # payload: {
634
+ # content_expression: "ContentExpression", # required
635
+ # type: "STRING", # required, accepts STRING, JSON
636
+ # },
637
+ # },
638
+ # iot_site_wise: {
639
+ # entry_id: "AssetPropertyEntryId",
640
+ # asset_id: "AssetId",
641
+ # property_id: "AssetPropertyId",
642
+ # property_alias: "AssetPropertyAlias",
643
+ # property_value: {
644
+ # value: {
645
+ # string_value: "AssetPropertyStringValue",
646
+ # integer_value: "AssetPropertyIntegerValue",
647
+ # double_value: "AssetPropertyDoubleValue",
648
+ # boolean_value: "AssetPropertyBooleanValue",
649
+ # },
650
+ # timestamp: {
651
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
652
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
653
+ # },
654
+ # quality: "AssetPropertyQuality",
655
+ # },
656
+ # },
657
+ # },
658
+ # ],
659
+ # }
660
+ #
661
+ # @!attribute [rw] alarm_actions
662
+ # Specifies one or more supported actions to receive notifications
663
+ # when the alarm state changes.
664
+ # @return [Array<Types::AlarmAction>]
665
+ #
666
+ class AlarmEventActions < Struct.new(
667
+ :alarm_actions)
668
+ SENSITIVE = []
669
+ include Aws::Structure
670
+ end
671
+
672
+ # Contains a summary of an alarm model.
673
+ #
674
+ # @!attribute [rw] creation_time
675
+ # The time the alarm model was created, in the Unix epoch format.
676
+ # @return [Time]
677
+ #
678
+ # @!attribute [rw] alarm_model_description
679
+ # The description of the alarm model.
680
+ # @return [String]
681
+ #
682
+ # @!attribute [rw] alarm_model_name
683
+ # The name of the alarm model.
684
+ # @return [String]
685
+ #
686
+ class AlarmModelSummary < Struct.new(
687
+ :creation_time,
688
+ :alarm_model_description,
689
+ :alarm_model_name)
690
+ SENSITIVE = []
691
+ include Aws::Structure
692
+ end
693
+
694
+ # Contains a summary of an alarm model version.
695
+ #
696
+ # @!attribute [rw] alarm_model_name
697
+ # The name of the alarm model.
698
+ # @return [String]
699
+ #
700
+ # @!attribute [rw] alarm_model_arn
701
+ # The ARN of the alarm model. For more information, see [Amazon
702
+ # Resource Names (ARNs)][1] in the *AWS General Reference*.
703
+ #
704
+ #
705
+ #
706
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
707
+ # @return [String]
708
+ #
709
+ # @!attribute [rw] alarm_model_version
710
+ # The version of the alarm model.
711
+ # @return [String]
712
+ #
713
+ # @!attribute [rw] role_arn
714
+ # The ARN of the IAM role that allows the alarm to perform actions and
715
+ # access AWS resources. For more information, see [Amazon Resource
716
+ # Names (ARNs)][1] in the *AWS General Reference*.
717
+ #
718
+ #
719
+ #
720
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
721
+ # @return [String]
722
+ #
723
+ # @!attribute [rw] creation_time
724
+ # The time the alarm model was created, in the Unix epoch format.
725
+ # @return [Time]
726
+ #
727
+ # @!attribute [rw] last_update_time
728
+ # The time the alarm model was last updated, in the Unix epoch format.
729
+ # @return [Time]
730
+ #
731
+ # @!attribute [rw] status
732
+ # The status of the alarm model. The status can be one of the
733
+ # following values:
734
+ #
735
+ # * `ACTIVE` - The alarm model is active and it's ready to evaluate
736
+ # data.
737
+ #
738
+ # * `ACTIVATING` - AWS IoT Events is activating your alarm model.
739
+ # Activating an alarm model can take up to a few minutes.
740
+ #
741
+ # * `INACTIVE` - The alarm model is inactive, so it isn't ready to
742
+ # evaluate data. Check your alarm model information and update the
743
+ # alarm model.
744
+ #
745
+ # * `FAILED` - You couldn't create or update the alarm model. Check
746
+ # your alarm model information and try again.
747
+ # @return [String]
748
+ #
749
+ # @!attribute [rw] status_message
750
+ # Contains information about the status of the alarm model version.
751
+ # @return [String]
752
+ #
753
+ class AlarmModelVersionSummary < Struct.new(
754
+ :alarm_model_name,
755
+ :alarm_model_arn,
756
+ :alarm_model_version,
757
+ :role_arn,
758
+ :creation_time,
759
+ :last_update_time,
760
+ :status,
761
+ :status_message)
762
+ SENSITIVE = []
763
+ include Aws::Structure
764
+ end
765
+
766
+ # Contains information about one or more notification actions.
767
+ #
768
+ # @note When making an API call, you may pass AlarmNotification
769
+ # data as a hash:
770
+ #
771
+ # {
772
+ # notification_actions: [
773
+ # {
774
+ # action: { # required
775
+ # lambda_action: {
776
+ # function_arn: "AmazonResourceName", # required
777
+ # payload: {
778
+ # content_expression: "ContentExpression", # required
779
+ # type: "STRING", # required, accepts STRING, JSON
780
+ # },
781
+ # },
782
+ # },
783
+ # sms_configurations: [
784
+ # {
785
+ # sender_id: "SMSSenderId",
786
+ # additional_message: "NotificationAdditionalMessage",
787
+ # recipients: [ # required
788
+ # {
789
+ # sso_identity: {
790
+ # identity_store_id: "IdentityStoreId", # required
791
+ # user_id: "SSOReferenceId",
792
+ # },
793
+ # },
794
+ # ],
795
+ # },
796
+ # ],
797
+ # email_configurations: [
798
+ # {
799
+ # from: "FromEmail", # required
800
+ # content: {
801
+ # subject: "EmailSubject",
802
+ # additional_message: "NotificationAdditionalMessage",
803
+ # },
804
+ # recipients: { # required
805
+ # to: [
806
+ # {
807
+ # sso_identity: {
808
+ # identity_store_id: "IdentityStoreId", # required
809
+ # user_id: "SSOReferenceId",
810
+ # },
811
+ # },
812
+ # ],
813
+ # },
814
+ # },
815
+ # ],
816
+ # },
817
+ # ],
818
+ # }
819
+ #
820
+ # @!attribute [rw] notification_actions
821
+ # Contains the notification settings of an alarm model. The settings
822
+ # apply to all alarms that were created based on this alarm model.
823
+ # @return [Array<Types::NotificationAction>]
190
824
  #
825
+ class AlarmNotification < Struct.new(
826
+ :notification_actions)
827
+ SENSITIVE = []
828
+ include Aws::Structure
829
+ end
830
+
831
+ # Defines when your alarm is invoked.
191
832
  #
833
+ # @note When making an API call, you may pass AlarmRule
834
+ # data as a hash:
192
835
  #
193
- # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
194
- # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-event-actions.html
195
- # @return [Types::DynamoDBv2Action]
836
+ # {
837
+ # simple_rule: {
838
+ # input_property: "InputProperty", # required
839
+ # comparison_operator: "GREATER", # required, accepts GREATER, GREATER_OR_EQUAL, LESS, LESS_OR_EQUAL, EQUAL, NOT_EQUAL
840
+ # threshold: "Threshold", # required
841
+ # },
842
+ # }
196
843
  #
197
- # @!attribute [rw] iot_site_wise
198
- # Sends information about the detector model instance and the event
199
- # that triggered the action to an asset property in AWS IoT SiteWise .
200
- # @return [Types::IotSiteWiseAction]
844
+ # @!attribute [rw] simple_rule
845
+ # A rule that compares an input property value to a threshold value
846
+ # with a comparison operator.
847
+ # @return [Types::SimpleRule]
201
848
  #
202
- class Action < Struct.new(
203
- :set_variable,
204
- :sns,
205
- :iot_topic_publish,
206
- :set_timer,
207
- :clear_timer,
208
- :reset_timer,
209
- :lambda,
210
- :iot_events,
211
- :sqs,
212
- :firehose,
213
- :dynamo_db,
214
- :dynamo_d_bv_2,
215
- :iot_site_wise)
849
+ class AlarmRule < Struct.new(
850
+ :simple_rule)
216
851
  SENSITIVE = []
217
852
  include Aws::Structure
218
853
  end
@@ -227,8 +862,9 @@ module Aws::IoTEvents
227
862
  # actions that work with other AWS services in a supported AWS
228
863
  # Region.
229
864
  #
230
- # * `service-limits` - Resources or operations can't exceed service
231
- # limits. Update your detector model or request a limit adjust.
865
+ # * `service-limits` - Resources or API operations can't exceed
866
+ # service quotas (also known as limits). Update your detector model
867
+ # or request a quota increase.
232
868
  #
233
869
  # * `structure` - The detector model must follow a structure that AWS
234
870
  # IoT Events supports.
@@ -254,18 +890,18 @@ module Aws::IoTEvents
254
890
  # @return [String]
255
891
  #
256
892
  # @!attribute [rw] level
257
- # The severity level of the analysis result. Analysis results fall
258
- # into three general categories based on the severity level:
893
+ # The severity level of the analysis result. Based on the severity
894
+ # level, analysis results fall into three general categories:
259
895
  #
260
- # * `INFO` - An information result informs you about a significant
261
- # field in your detector model. This type of result usually doesn't
896
+ # * `INFO` - An information result tells you about a significant field
897
+ # in your detector model. This type of result usually doesn't
262
898
  # require immediate action.
263
899
  #
264
900
  # * `WARNING` - A warning result draws special attention to fields
265
- # that are potentially damaging to your detector model. We recommend
266
- # that you review warnings and take necessary actions before you use
267
- # your detetor model in production environments. Otherwise, the
268
- # detector model may not fully function as expected.
901
+ # that might cause issues for your detector model. We recommend that
902
+ # you review warnings and take necessary actions before you use your
903
+ # detector model in production environments. Otherwise, the detector
904
+ # model might not work as expected.
269
905
  #
270
906
  # * `ERROR` - An error result notifies you about a problem found in
271
907
  # your detector model. You must fix all errors before you can
@@ -396,7 +1032,7 @@ module Aws::IoTEvents
396
1032
  # data as a hash:
397
1033
  #
398
1034
  # {
399
- # value: { # required
1035
+ # value: {
400
1036
  # string_value: "AssetPropertyStringValue",
401
1037
  # integer_value: "AssetPropertyIntegerValue",
402
1038
  # double_value: "AssetPropertyDoubleValue",
@@ -560,6 +1196,303 @@ module Aws::IoTEvents
560
1196
  include Aws::Structure
561
1197
  end
562
1198
 
1199
+ # @note When making an API call, you may pass CreateAlarmModelRequest
1200
+ # data as a hash:
1201
+ #
1202
+ # {
1203
+ # alarm_model_name: "AlarmModelName", # required
1204
+ # alarm_model_description: "AlarmModelDescription",
1205
+ # role_arn: "AmazonResourceName", # required
1206
+ # tags: [
1207
+ # {
1208
+ # key: "TagKey", # required
1209
+ # value: "TagValue", # required
1210
+ # },
1211
+ # ],
1212
+ # key: "AttributeJsonPath",
1213
+ # severity: 1,
1214
+ # alarm_rule: { # required
1215
+ # simple_rule: {
1216
+ # input_property: "InputProperty", # required
1217
+ # comparison_operator: "GREATER", # required, accepts GREATER, GREATER_OR_EQUAL, LESS, LESS_OR_EQUAL, EQUAL, NOT_EQUAL
1218
+ # threshold: "Threshold", # required
1219
+ # },
1220
+ # },
1221
+ # alarm_notification: {
1222
+ # notification_actions: [
1223
+ # {
1224
+ # action: { # required
1225
+ # lambda_action: {
1226
+ # function_arn: "AmazonResourceName", # required
1227
+ # payload: {
1228
+ # content_expression: "ContentExpression", # required
1229
+ # type: "STRING", # required, accepts STRING, JSON
1230
+ # },
1231
+ # },
1232
+ # },
1233
+ # sms_configurations: [
1234
+ # {
1235
+ # sender_id: "SMSSenderId",
1236
+ # additional_message: "NotificationAdditionalMessage",
1237
+ # recipients: [ # required
1238
+ # {
1239
+ # sso_identity: {
1240
+ # identity_store_id: "IdentityStoreId", # required
1241
+ # user_id: "SSOReferenceId",
1242
+ # },
1243
+ # },
1244
+ # ],
1245
+ # },
1246
+ # ],
1247
+ # email_configurations: [
1248
+ # {
1249
+ # from: "FromEmail", # required
1250
+ # content: {
1251
+ # subject: "EmailSubject",
1252
+ # additional_message: "NotificationAdditionalMessage",
1253
+ # },
1254
+ # recipients: { # required
1255
+ # to: [
1256
+ # {
1257
+ # sso_identity: {
1258
+ # identity_store_id: "IdentityStoreId", # required
1259
+ # user_id: "SSOReferenceId",
1260
+ # },
1261
+ # },
1262
+ # ],
1263
+ # },
1264
+ # },
1265
+ # ],
1266
+ # },
1267
+ # ],
1268
+ # },
1269
+ # alarm_event_actions: {
1270
+ # alarm_actions: [
1271
+ # {
1272
+ # sns: {
1273
+ # target_arn: "AmazonResourceName", # required
1274
+ # payload: {
1275
+ # content_expression: "ContentExpression", # required
1276
+ # type: "STRING", # required, accepts STRING, JSON
1277
+ # },
1278
+ # },
1279
+ # iot_topic_publish: {
1280
+ # mqtt_topic: "MQTTTopic", # required
1281
+ # payload: {
1282
+ # content_expression: "ContentExpression", # required
1283
+ # type: "STRING", # required, accepts STRING, JSON
1284
+ # },
1285
+ # },
1286
+ # lambda: {
1287
+ # function_arn: "AmazonResourceName", # required
1288
+ # payload: {
1289
+ # content_expression: "ContentExpression", # required
1290
+ # type: "STRING", # required, accepts STRING, JSON
1291
+ # },
1292
+ # },
1293
+ # iot_events: {
1294
+ # input_name: "InputName", # required
1295
+ # payload: {
1296
+ # content_expression: "ContentExpression", # required
1297
+ # type: "STRING", # required, accepts STRING, JSON
1298
+ # },
1299
+ # },
1300
+ # sqs: {
1301
+ # queue_url: "QueueUrl", # required
1302
+ # use_base_64: false,
1303
+ # payload: {
1304
+ # content_expression: "ContentExpression", # required
1305
+ # type: "STRING", # required, accepts STRING, JSON
1306
+ # },
1307
+ # },
1308
+ # firehose: {
1309
+ # delivery_stream_name: "DeliveryStreamName", # required
1310
+ # separator: "FirehoseSeparator",
1311
+ # payload: {
1312
+ # content_expression: "ContentExpression", # required
1313
+ # type: "STRING", # required, accepts STRING, JSON
1314
+ # },
1315
+ # },
1316
+ # dynamo_db: {
1317
+ # hash_key_type: "DynamoKeyType",
1318
+ # hash_key_field: "DynamoKeyField", # required
1319
+ # hash_key_value: "DynamoKeyValue", # required
1320
+ # range_key_type: "DynamoKeyType",
1321
+ # range_key_field: "DynamoKeyField",
1322
+ # range_key_value: "DynamoKeyValue",
1323
+ # operation: "DynamoOperation",
1324
+ # payload_field: "DynamoKeyField",
1325
+ # table_name: "DynamoTableName", # required
1326
+ # payload: {
1327
+ # content_expression: "ContentExpression", # required
1328
+ # type: "STRING", # required, accepts STRING, JSON
1329
+ # },
1330
+ # },
1331
+ # dynamo_d_bv_2: {
1332
+ # table_name: "DynamoTableName", # required
1333
+ # payload: {
1334
+ # content_expression: "ContentExpression", # required
1335
+ # type: "STRING", # required, accepts STRING, JSON
1336
+ # },
1337
+ # },
1338
+ # iot_site_wise: {
1339
+ # entry_id: "AssetPropertyEntryId",
1340
+ # asset_id: "AssetId",
1341
+ # property_id: "AssetPropertyId",
1342
+ # property_alias: "AssetPropertyAlias",
1343
+ # property_value: {
1344
+ # value: {
1345
+ # string_value: "AssetPropertyStringValue",
1346
+ # integer_value: "AssetPropertyIntegerValue",
1347
+ # double_value: "AssetPropertyDoubleValue",
1348
+ # boolean_value: "AssetPropertyBooleanValue",
1349
+ # },
1350
+ # timestamp: {
1351
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
1352
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
1353
+ # },
1354
+ # quality: "AssetPropertyQuality",
1355
+ # },
1356
+ # },
1357
+ # },
1358
+ # ],
1359
+ # },
1360
+ # alarm_capabilities: {
1361
+ # initialization_configuration: {
1362
+ # disabled_on_initialization: false, # required
1363
+ # },
1364
+ # acknowledge_flow: {
1365
+ # enabled: false, # required
1366
+ # },
1367
+ # },
1368
+ # }
1369
+ #
1370
+ # @!attribute [rw] alarm_model_name
1371
+ # A unique name that helps you identify the alarm model. You can't
1372
+ # change this name after you create the alarm model.
1373
+ # @return [String]
1374
+ #
1375
+ # @!attribute [rw] alarm_model_description
1376
+ # A description that tells you what the alarm model detects.
1377
+ # @return [String]
1378
+ #
1379
+ # @!attribute [rw] role_arn
1380
+ # The ARN of the IAM role that allows the alarm to perform actions and
1381
+ # access AWS resources. For more information, see [Amazon Resource
1382
+ # Names (ARNs)][1] in the *AWS General Reference*.
1383
+ #
1384
+ #
1385
+ #
1386
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1387
+ # @return [String]
1388
+ #
1389
+ # @!attribute [rw] tags
1390
+ # A list of key-value pairs that contain metadata for the alarm model.
1391
+ # The tags help you manage the alarm model. For more information, see
1392
+ # [Tagging your AWS IoT Events resources][1] in the *AWS IoT Events
1393
+ # Developer Guide*.
1394
+ #
1395
+ # You can create up to 50 tags for one alarm model.
1396
+ #
1397
+ #
1398
+ #
1399
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/developerguide/tagging-iotevents.html
1400
+ # @return [Array<Types::Tag>]
1401
+ #
1402
+ # @!attribute [rw] key
1403
+ # An input attribute used as a key to create an alarm. AWS IoT Events
1404
+ # routes [inputs][1] associated with this key to the alarm.
1405
+ #
1406
+ #
1407
+ #
1408
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Input.html
1409
+ # @return [String]
1410
+ #
1411
+ # @!attribute [rw] severity
1412
+ # A non-negative integer that reflects the severity level of the
1413
+ # alarm.
1414
+ # @return [Integer]
1415
+ #
1416
+ # @!attribute [rw] alarm_rule
1417
+ # Defines when your alarm is invoked.
1418
+ # @return [Types::AlarmRule]
1419
+ #
1420
+ # @!attribute [rw] alarm_notification
1421
+ # Contains information about one or more notification actions.
1422
+ # @return [Types::AlarmNotification]
1423
+ #
1424
+ # @!attribute [rw] alarm_event_actions
1425
+ # Contains information about one or more alarm actions.
1426
+ # @return [Types::AlarmEventActions]
1427
+ #
1428
+ # @!attribute [rw] alarm_capabilities
1429
+ # Contains the configuration information of alarm state changes.
1430
+ # @return [Types::AlarmCapabilities]
1431
+ #
1432
+ class CreateAlarmModelRequest < Struct.new(
1433
+ :alarm_model_name,
1434
+ :alarm_model_description,
1435
+ :role_arn,
1436
+ :tags,
1437
+ :key,
1438
+ :severity,
1439
+ :alarm_rule,
1440
+ :alarm_notification,
1441
+ :alarm_event_actions,
1442
+ :alarm_capabilities)
1443
+ SENSITIVE = []
1444
+ include Aws::Structure
1445
+ end
1446
+
1447
+ # @!attribute [rw] creation_time
1448
+ # The time the alarm model was created, in the Unix epoch format.
1449
+ # @return [Time]
1450
+ #
1451
+ # @!attribute [rw] alarm_model_arn
1452
+ # The ARN of the alarm model. For more information, see [Amazon
1453
+ # Resource Names (ARNs)][1] in the *AWS General Reference*.
1454
+ #
1455
+ #
1456
+ #
1457
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1458
+ # @return [String]
1459
+ #
1460
+ # @!attribute [rw] alarm_model_version
1461
+ # The version of the alarm model.
1462
+ # @return [String]
1463
+ #
1464
+ # @!attribute [rw] last_update_time
1465
+ # The time the alarm model was last updated, in the Unix epoch format.
1466
+ # @return [Time]
1467
+ #
1468
+ # @!attribute [rw] status
1469
+ # The status of the alarm model. The status can be one of the
1470
+ # following values:
1471
+ #
1472
+ # * `ACTIVE` - The alarm model is active and it's ready to evaluate
1473
+ # data.
1474
+ #
1475
+ # * `ACTIVATING` - AWS IoT Events is activating your alarm model.
1476
+ # Activating an alarm model can take up to a few minutes.
1477
+ #
1478
+ # * `INACTIVE` - The alarm model is inactive, so it isn't ready to
1479
+ # evaluate data. Check your alarm model information and update the
1480
+ # alarm model.
1481
+ #
1482
+ # * `FAILED` - You couldn't create or update the alarm model. Check
1483
+ # your alarm model information and try again.
1484
+ # @return [String]
1485
+ #
1486
+ class CreateAlarmModelResponse < Struct.new(
1487
+ :creation_time,
1488
+ :alarm_model_arn,
1489
+ :alarm_model_version,
1490
+ :last_update_time,
1491
+ :status)
1492
+ SENSITIVE = []
1493
+ include Aws::Structure
1494
+ end
1495
+
563
1496
  # @note When making an API call, you may pass CreateDetectorModelRequest
564
1497
  # data as a hash:
565
1498
  #
@@ -662,8 +1595,8 @@ module Aws::IoTEvents
662
1595
  # asset_id: "AssetId",
663
1596
  # property_id: "AssetPropertyId",
664
1597
  # property_alias: "AssetPropertyAlias",
665
- # property_value: { # required
666
- # value: { # required
1598
+ # property_value: {
1599
+ # value: {
667
1600
  # string_value: "AssetPropertyStringValue",
668
1601
  # integer_value: "AssetPropertyIntegerValue",
669
1602
  # double_value: "AssetPropertyDoubleValue",
@@ -772,8 +1705,8 @@ module Aws::IoTEvents
772
1705
  # asset_id: "AssetId",
773
1706
  # property_id: "AssetPropertyId",
774
1707
  # property_alias: "AssetPropertyAlias",
775
- # property_value: { # required
776
- # value: { # required
1708
+ # property_value: {
1709
+ # value: {
777
1710
  # string_value: "AssetPropertyStringValue",
778
1711
  # integer_value: "AssetPropertyIntegerValue",
779
1712
  # double_value: "AssetPropertyDoubleValue",
@@ -885,8 +1818,8 @@ module Aws::IoTEvents
885
1818
  # asset_id: "AssetId",
886
1819
  # property_id: "AssetPropertyId",
887
1820
  # property_alias: "AssetPropertyAlias",
888
- # property_value: { # required
889
- # value: { # required
1821
+ # property_value: {
1822
+ # value: {
890
1823
  # string_value: "AssetPropertyStringValue",
891
1824
  # integer_value: "AssetPropertyIntegerValue",
892
1825
  # double_value: "AssetPropertyDoubleValue",
@@ -997,8 +1930,8 @@ module Aws::IoTEvents
997
1930
  # asset_id: "AssetId",
998
1931
  # property_id: "AssetPropertyId",
999
1932
  # property_alias: "AssetPropertyAlias",
1000
- # property_value: { # required
1001
- # value: { # required
1933
+ # property_value: {
1934
+ # value: {
1002
1935
  # string_value: "AssetPropertyStringValue",
1003
1936
  # integer_value: "AssetPropertyIntegerValue",
1004
1937
  # double_value: "AssetPropertyDoubleValue",
@@ -1145,6 +2078,25 @@ module Aws::IoTEvents
1145
2078
  include Aws::Structure
1146
2079
  end
1147
2080
 
2081
+ # @note When making an API call, you may pass DeleteAlarmModelRequest
2082
+ # data as a hash:
2083
+ #
2084
+ # {
2085
+ # alarm_model_name: "AlarmModelName", # required
2086
+ # }
2087
+ #
2088
+ # @!attribute [rw] alarm_model_name
2089
+ # The name of the alarm model.
2090
+ # @return [String]
2091
+ #
2092
+ class DeleteAlarmModelRequest < Struct.new(
2093
+ :alarm_model_name)
2094
+ SENSITIVE = []
2095
+ include Aws::Structure
2096
+ end
2097
+
2098
+ class DeleteAlarmModelResponse < Aws::EmptyStructure; end
2099
+
1148
2100
  # @note When making an API call, you may pass DeleteDetectorModelRequest
1149
2101
  # data as a hash:
1150
2102
  #
@@ -1171,18 +2123,152 @@ module Aws::IoTEvents
1171
2123
  # input_name: "InputName", # required
1172
2124
  # }
1173
2125
  #
1174
- # @!attribute [rw] input_name
1175
- # The name of the input to delete.
2126
+ # @!attribute [rw] input_name
2127
+ # The name of the input to delete.
2128
+ # @return [String]
2129
+ #
2130
+ class DeleteInputRequest < Struct.new(
2131
+ :input_name)
2132
+ SENSITIVE = []
2133
+ include Aws::Structure
2134
+ end
2135
+
2136
+ class DeleteInputResponse < Aws::EmptyStructure; end
2137
+
2138
+ # @note When making an API call, you may pass DescribeAlarmModelRequest
2139
+ # data as a hash:
2140
+ #
2141
+ # {
2142
+ # alarm_model_name: "AlarmModelName", # required
2143
+ # alarm_model_version: "AlarmModelVersion",
2144
+ # }
2145
+ #
2146
+ # @!attribute [rw] alarm_model_name
2147
+ # The name of the alarm model.
2148
+ # @return [String]
2149
+ #
2150
+ # @!attribute [rw] alarm_model_version
2151
+ # The version of the alarm model.
2152
+ # @return [String]
2153
+ #
2154
+ class DescribeAlarmModelRequest < Struct.new(
2155
+ :alarm_model_name,
2156
+ :alarm_model_version)
2157
+ SENSITIVE = []
2158
+ include Aws::Structure
2159
+ end
2160
+
2161
+ # @!attribute [rw] creation_time
2162
+ # The time the alarm model was created, in the Unix epoch format.
2163
+ # @return [Time]
2164
+ #
2165
+ # @!attribute [rw] alarm_model_arn
2166
+ # The ARN of the alarm model. For more information, see [Amazon
2167
+ # Resource Names (ARNs)][1] in the *AWS General Reference*.
2168
+ #
2169
+ #
2170
+ #
2171
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
2172
+ # @return [String]
2173
+ #
2174
+ # @!attribute [rw] alarm_model_version
2175
+ # The version of the alarm model.
2176
+ # @return [String]
2177
+ #
2178
+ # @!attribute [rw] last_update_time
2179
+ # The time the alarm model was last updated, in the Unix epoch format.
2180
+ # @return [Time]
2181
+ #
2182
+ # @!attribute [rw] status
2183
+ # The status of the alarm model. The status can be one of the
2184
+ # following values:
2185
+ #
2186
+ # * `ACTIVE` - The alarm model is active and it's ready to evaluate
2187
+ # data.
2188
+ #
2189
+ # * `ACTIVATING` - AWS IoT Events is activating your alarm model.
2190
+ # Activating an alarm model can take up to a few minutes.
2191
+ #
2192
+ # * `INACTIVE` - The alarm model is inactive, so it isn't ready to
2193
+ # evaluate data. Check your alarm model information and update the
2194
+ # alarm model.
2195
+ #
2196
+ # * `FAILED` - You couldn't create or update the alarm model. Check
2197
+ # your alarm model information and try again.
2198
+ # @return [String]
2199
+ #
2200
+ # @!attribute [rw] status_message
2201
+ # Contains information about the status of the alarm model.
2202
+ # @return [String]
2203
+ #
2204
+ # @!attribute [rw] alarm_model_name
2205
+ # The name of the alarm model.
2206
+ # @return [String]
2207
+ #
2208
+ # @!attribute [rw] alarm_model_description
2209
+ # The description of the alarm model.
2210
+ # @return [String]
2211
+ #
2212
+ # @!attribute [rw] role_arn
2213
+ # The ARN of the IAM role that allows the alarm to perform actions and
2214
+ # access AWS resources. For more information, see [Amazon Resource
2215
+ # Names (ARNs)][1] in the *AWS General Reference*.
2216
+ #
2217
+ #
2218
+ #
2219
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
2220
+ # @return [String]
2221
+ #
2222
+ # @!attribute [rw] key
2223
+ # An input attribute used as a key to create an alarm. AWS IoT Events
2224
+ # routes [inputs][1] associated with this key to the alarm.
2225
+ #
2226
+ #
2227
+ #
2228
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Input.html
1176
2229
  # @return [String]
1177
2230
  #
1178
- class DeleteInputRequest < Struct.new(
1179
- :input_name)
2231
+ # @!attribute [rw] severity
2232
+ # A non-negative integer that reflects the severity level of the
2233
+ # alarm.
2234
+ # @return [Integer]
2235
+ #
2236
+ # @!attribute [rw] alarm_rule
2237
+ # Defines when your alarm is invoked.
2238
+ # @return [Types::AlarmRule]
2239
+ #
2240
+ # @!attribute [rw] alarm_notification
2241
+ # Contains information about one or more notification actions.
2242
+ # @return [Types::AlarmNotification]
2243
+ #
2244
+ # @!attribute [rw] alarm_event_actions
2245
+ # Contains information about one or more alarm actions.
2246
+ # @return [Types::AlarmEventActions]
2247
+ #
2248
+ # @!attribute [rw] alarm_capabilities
2249
+ # Contains the configuration information of alarm state changes.
2250
+ # @return [Types::AlarmCapabilities]
2251
+ #
2252
+ class DescribeAlarmModelResponse < Struct.new(
2253
+ :creation_time,
2254
+ :alarm_model_arn,
2255
+ :alarm_model_version,
2256
+ :last_update_time,
2257
+ :status,
2258
+ :status_message,
2259
+ :alarm_model_name,
2260
+ :alarm_model_description,
2261
+ :role_arn,
2262
+ :key,
2263
+ :severity,
2264
+ :alarm_rule,
2265
+ :alarm_notification,
2266
+ :alarm_event_actions,
2267
+ :alarm_capabilities)
1180
2268
  SENSITIVE = []
1181
2269
  include Aws::Structure
1182
2270
  end
1183
2271
 
1184
- class DeleteInputResponse < Aws::EmptyStructure; end
1185
-
1186
2272
  # @note When making an API call, you may pass DescribeDetectorModelAnalysisRequest
1187
2273
  # data as a hash:
1188
2274
  #
@@ -1207,8 +2293,8 @@ module Aws::IoTEvents
1207
2293
  # * `RUNNING` - AWS IoT Events is analyzing your detector model. This
1208
2294
  # process can take several minutes to complete.
1209
2295
  #
1210
- # * `COMPLETE` - AWS IoT Events finished analyzing your detector model
1211
- # .
2296
+ # * `COMPLETE` - AWS IoT Events finished analyzing your detector
2297
+ # model.
1212
2298
  #
1213
2299
  # * `FAILED` - AWS IoT Events couldn't analyze your detector model.
1214
2300
  # Try again later.
@@ -1509,8 +2595,8 @@ module Aws::IoTEvents
1509
2595
  # asset_id: "AssetId",
1510
2596
  # property_id: "AssetPropertyId",
1511
2597
  # property_alias: "AssetPropertyAlias",
1512
- # property_value: { # required
1513
- # value: { # required
2598
+ # property_value: {
2599
+ # value: {
1514
2600
  # string_value: "AssetPropertyStringValue",
1515
2601
  # integer_value: "AssetPropertyIntegerValue",
1516
2602
  # double_value: "AssetPropertyDoubleValue",
@@ -1619,8 +2705,8 @@ module Aws::IoTEvents
1619
2705
  # asset_id: "AssetId",
1620
2706
  # property_id: "AssetPropertyId",
1621
2707
  # property_alias: "AssetPropertyAlias",
1622
- # property_value: { # required
1623
- # value: { # required
2708
+ # property_value: {
2709
+ # value: {
1624
2710
  # string_value: "AssetPropertyStringValue",
1625
2711
  # integer_value: "AssetPropertyIntegerValue",
1626
2712
  # double_value: "AssetPropertyDoubleValue",
@@ -1732,8 +2818,8 @@ module Aws::IoTEvents
1732
2818
  # asset_id: "AssetId",
1733
2819
  # property_id: "AssetPropertyId",
1734
2820
  # property_alias: "AssetPropertyAlias",
1735
- # property_value: { # required
1736
- # value: { # required
2821
+ # property_value: {
2822
+ # value: {
1737
2823
  # string_value: "AssetPropertyStringValue",
1738
2824
  # integer_value: "AssetPropertyIntegerValue",
1739
2825
  # double_value: "AssetPropertyDoubleValue",
@@ -1844,8 +2930,8 @@ module Aws::IoTEvents
1844
2930
  # asset_id: "AssetId",
1845
2931
  # property_id: "AssetPropertyId",
1846
2932
  # property_alias: "AssetPropertyAlias",
1847
- # property_value: { # required
1848
- # value: { # required
2933
+ # property_value: {
2934
+ # value: {
1849
2935
  # string_value: "AssetPropertyStringValue",
1850
2936
  # integer_value: "AssetPropertyIntegerValue",
1851
2937
  # double_value: "AssetPropertyDoubleValue",
@@ -2215,6 +3301,124 @@ module Aws::IoTEvents
2215
3301
  include Aws::Structure
2216
3302
  end
2217
3303
 
3304
+ # Contains the configuration information of email notifications.
3305
+ #
3306
+ # @note When making an API call, you may pass EmailConfiguration
3307
+ # data as a hash:
3308
+ #
3309
+ # {
3310
+ # from: "FromEmail", # required
3311
+ # content: {
3312
+ # subject: "EmailSubject",
3313
+ # additional_message: "NotificationAdditionalMessage",
3314
+ # },
3315
+ # recipients: { # required
3316
+ # to: [
3317
+ # {
3318
+ # sso_identity: {
3319
+ # identity_store_id: "IdentityStoreId", # required
3320
+ # user_id: "SSOReferenceId",
3321
+ # },
3322
+ # },
3323
+ # ],
3324
+ # },
3325
+ # }
3326
+ #
3327
+ # @!attribute [rw] from
3328
+ # The email address that sends emails.
3329
+ #
3330
+ # If you use the AWS IoT Events managed AWS Lambda function to manage
3331
+ # your emails, you must [verify the email address that sends emails in
3332
+ # Amazon SES][1].
3333
+ #
3334
+ #
3335
+ #
3336
+ # [1]: https://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html
3337
+ # @return [String]
3338
+ #
3339
+ # @!attribute [rw] content
3340
+ # Contains the subject and message of an email.
3341
+ # @return [Types::EmailContent]
3342
+ #
3343
+ # @!attribute [rw] recipients
3344
+ # Contains the information of one or more recipients who receive the
3345
+ # emails.
3346
+ #
3347
+ # You must [add the users that receive emails to your AWS SSO
3348
+ # store][1].
3349
+ #
3350
+ #
3351
+ #
3352
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/addusers.html
3353
+ # @return [Types::EmailRecipients]
3354
+ #
3355
+ class EmailConfiguration < Struct.new(
3356
+ :from,
3357
+ :content,
3358
+ :recipients)
3359
+ SENSITIVE = []
3360
+ include Aws::Structure
3361
+ end
3362
+
3363
+ # Contains the subject and message of an email.
3364
+ #
3365
+ # @note When making an API call, you may pass EmailContent
3366
+ # data as a hash:
3367
+ #
3368
+ # {
3369
+ # subject: "EmailSubject",
3370
+ # additional_message: "NotificationAdditionalMessage",
3371
+ # }
3372
+ #
3373
+ # @!attribute [rw] subject
3374
+ # The subject of the email.
3375
+ # @return [String]
3376
+ #
3377
+ # @!attribute [rw] additional_message
3378
+ # The message that you want to send. The message can be up to 200
3379
+ # characters.
3380
+ # @return [String]
3381
+ #
3382
+ class EmailContent < Struct.new(
3383
+ :subject,
3384
+ :additional_message)
3385
+ SENSITIVE = []
3386
+ include Aws::Structure
3387
+ end
3388
+
3389
+ # Contains the information of one or more recipients who receive the
3390
+ # emails.
3391
+ #
3392
+ # You must [add the users that receive emails to your AWS SSO store][1].
3393
+ #
3394
+ #
3395
+ #
3396
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/addusers.html
3397
+ #
3398
+ # @note When making an API call, you may pass EmailRecipients
3399
+ # data as a hash:
3400
+ #
3401
+ # {
3402
+ # to: [
3403
+ # {
3404
+ # sso_identity: {
3405
+ # identity_store_id: "IdentityStoreId", # required
3406
+ # user_id: "SSOReferenceId",
3407
+ # },
3408
+ # },
3409
+ # ],
3410
+ # }
3411
+ #
3412
+ # @!attribute [rw] to
3413
+ # Specifies one or more recipients who receive the email.
3414
+ # @return [Array<Types::RecipientDetail>]
3415
+ #
3416
+ class EmailRecipients < Struct.new(
3417
+ :to)
3418
+ SENSITIVE = []
3419
+ include Aws::Structure
3420
+ end
3421
+
2218
3422
  # Specifies the `actions` to be performed when the `condition` evaluates
2219
3423
  # to TRUE.
2220
3424
  #
@@ -2312,8 +3516,8 @@ module Aws::IoTEvents
2312
3516
  # asset_id: "AssetId",
2313
3517
  # property_id: "AssetPropertyId",
2314
3518
  # property_alias: "AssetPropertyAlias",
2315
- # property_value: { # required
2316
- # value: { # required
3519
+ # property_value: {
3520
+ # value: {
2317
3521
  # string_value: "AssetPropertyStringValue",
2318
3522
  # integer_value: "AssetPropertyIntegerValue",
2319
3523
  # double_value: "AssetPropertyDoubleValue",
@@ -2439,6 +3643,28 @@ module Aws::IoTEvents
2439
3643
  include Aws::Structure
2440
3644
  end
2441
3645
 
3646
+ # Specifies the default alarm state. The configuration applies to all
3647
+ # alarms that were created based on this alarm model.
3648
+ #
3649
+ # @note When making an API call, you may pass InitializationConfiguration
3650
+ # data as a hash:
3651
+ #
3652
+ # {
3653
+ # disabled_on_initialization: false, # required
3654
+ # }
3655
+ #
3656
+ # @!attribute [rw] disabled_on_initialization
3657
+ # The value must be `TRUE` or `FALSE`. If `FALSE`, all alarm instances
3658
+ # created based on the alarm model are activated. The default value is
3659
+ # `TRUE`.
3660
+ # @return [Boolean]
3661
+ #
3662
+ class InitializationConfiguration < Struct.new(
3663
+ :disabled_on_initialization)
3664
+ SENSITIVE = []
3665
+ include Aws::Structure
3666
+ end
3667
+
2442
3668
  # Information about the input.
2443
3669
  #
2444
3670
  # @!attribute [rw] input_configuration
@@ -2521,6 +3747,38 @@ module Aws::IoTEvents
2521
3747
  include Aws::Structure
2522
3748
  end
2523
3749
 
3750
+ # The identifer of the input.
3751
+ #
3752
+ # @note When making an API call, you may pass InputIdentifier
3753
+ # data as a hash:
3754
+ #
3755
+ # {
3756
+ # iot_events_input_identifier: {
3757
+ # input_name: "InputName", # required
3758
+ # },
3759
+ # iot_site_wise_input_identifier: {
3760
+ # iot_site_wise_asset_model_property_identifier: {
3761
+ # asset_model_id: "AssetModelId", # required
3762
+ # property_id: "AssetPropertyId", # required
3763
+ # },
3764
+ # },
3765
+ # }
3766
+ #
3767
+ # @!attribute [rw] iot_events_input_identifier
3768
+ # The identifier of the input routed to AWS IoT Events.
3769
+ # @return [Types::IotEventsInputIdentifier]
3770
+ #
3771
+ # @!attribute [rw] iot_site_wise_input_identifier
3772
+ # The identifer of the input routed from AWS IoT SiteWise.
3773
+ # @return [Types::IotSiteWiseInputIdentifier]
3774
+ #
3775
+ class InputIdentifier < Struct.new(
3776
+ :iot_events_input_identifier,
3777
+ :iot_site_wise_input_identifier)
3778
+ SENSITIVE = []
3779
+ include Aws::Structure
3780
+ end
3781
+
2524
3782
  # Information about the input.
2525
3783
  #
2526
3784
  # @!attribute [rw] input_name
@@ -2612,6 +3870,25 @@ module Aws::IoTEvents
2612
3870
  include Aws::Structure
2613
3871
  end
2614
3872
 
3873
+ # The identifier of the input routed to AWS IoT Events.
3874
+ #
3875
+ # @note When making an API call, you may pass IotEventsInputIdentifier
3876
+ # data as a hash:
3877
+ #
3878
+ # {
3879
+ # input_name: "InputName", # required
3880
+ # }
3881
+ #
3882
+ # @!attribute [rw] input_name
3883
+ # The name of the input routed to AWS IoT Events.
3884
+ # @return [String]
3885
+ #
3886
+ class IotEventsInputIdentifier < Struct.new(
3887
+ :input_name)
3888
+ SENSITIVE = []
3889
+ include Aws::Structure
3890
+ end
3891
+
2615
3892
  # Sends information about the detector model instance and the event that
2616
3893
  # triggered the action to a specified asset property in AWS IoT
2617
3894
  # SiteWise.
@@ -2660,8 +3937,8 @@ module Aws::IoTEvents
2660
3937
  # asset_id: "AssetId",
2661
3938
  # property_id: "AssetPropertyId",
2662
3939
  # property_alias: "AssetPropertyAlias",
2663
- # property_value: { # required
2664
- # value: { # required
3940
+ # property_value: {
3941
+ # value: {
2665
3942
  # string_value: "AssetPropertyStringValue",
2666
3943
  # integer_value: "AssetPropertyIntegerValue",
2667
3944
  # double_value: "AssetPropertyDoubleValue",
@@ -2708,6 +3985,54 @@ module Aws::IoTEvents
2708
3985
  include Aws::Structure
2709
3986
  end
2710
3987
 
3988
+ # The asset model property identifer of the input routed from AWS IoT
3989
+ # SiteWise.
3990
+ #
3991
+ # @note When making an API call, you may pass IotSiteWiseAssetModelPropertyIdentifier
3992
+ # data as a hash:
3993
+ #
3994
+ # {
3995
+ # asset_model_id: "AssetModelId", # required
3996
+ # property_id: "AssetPropertyId", # required
3997
+ # }
3998
+ #
3999
+ # @!attribute [rw] asset_model_id
4000
+ # The ID of the AWS IoT SiteWise asset model.
4001
+ # @return [String]
4002
+ #
4003
+ # @!attribute [rw] property_id
4004
+ # The ID of the AWS IoT SiteWise asset property.
4005
+ # @return [String]
4006
+ #
4007
+ class IotSiteWiseAssetModelPropertyIdentifier < Struct.new(
4008
+ :asset_model_id,
4009
+ :property_id)
4010
+ SENSITIVE = []
4011
+ include Aws::Structure
4012
+ end
4013
+
4014
+ # The identifer of the input routed from AWS IoT SiteWise.
4015
+ #
4016
+ # @note When making an API call, you may pass IotSiteWiseInputIdentifier
4017
+ # data as a hash:
4018
+ #
4019
+ # {
4020
+ # iot_site_wise_asset_model_property_identifier: {
4021
+ # asset_model_id: "AssetModelId", # required
4022
+ # property_id: "AssetPropertyId", # required
4023
+ # },
4024
+ # }
4025
+ #
4026
+ # @!attribute [rw] iot_site_wise_asset_model_property_identifier
4027
+ # The identifier of the AWS IoT SiteWise asset model property.
4028
+ # @return [Types::IotSiteWiseAssetModelPropertyIdentifier]
4029
+ #
4030
+ class IotSiteWiseInputIdentifier < Struct.new(
4031
+ :iot_site_wise_asset_model_property_identifier)
4032
+ SENSITIVE = []
4033
+ include Aws::Structure
4034
+ end
4035
+
2711
4036
  # Information required to publish the MQTT message through the AWS IoT
2712
4037
  # message broker.
2713
4038
  #
@@ -2782,6 +4107,90 @@ module Aws::IoTEvents
2782
4107
  include Aws::Structure
2783
4108
  end
2784
4109
 
4110
+ # @note When making an API call, you may pass ListAlarmModelVersionsRequest
4111
+ # data as a hash:
4112
+ #
4113
+ # {
4114
+ # alarm_model_name: "AlarmModelName", # required
4115
+ # next_token: "NextToken",
4116
+ # max_results: 1,
4117
+ # }
4118
+ #
4119
+ # @!attribute [rw] alarm_model_name
4120
+ # The name of the alarm model.
4121
+ # @return [String]
4122
+ #
4123
+ # @!attribute [rw] next_token
4124
+ # The token that you can use to return the next set of results.
4125
+ # @return [String]
4126
+ #
4127
+ # @!attribute [rw] max_results
4128
+ # The maximum number of results to be returned per request.
4129
+ # @return [Integer]
4130
+ #
4131
+ class ListAlarmModelVersionsRequest < Struct.new(
4132
+ :alarm_model_name,
4133
+ :next_token,
4134
+ :max_results)
4135
+ SENSITIVE = []
4136
+ include Aws::Structure
4137
+ end
4138
+
4139
+ # @!attribute [rw] alarm_model_version_summaries
4140
+ # A list that summarizes each alarm model version.
4141
+ # @return [Array<Types::AlarmModelVersionSummary>]
4142
+ #
4143
+ # @!attribute [rw] next_token
4144
+ # The token that you can use to return the next set of results, or
4145
+ # `null` if there are no more results.
4146
+ # @return [String]
4147
+ #
4148
+ class ListAlarmModelVersionsResponse < Struct.new(
4149
+ :alarm_model_version_summaries,
4150
+ :next_token)
4151
+ SENSITIVE = []
4152
+ include Aws::Structure
4153
+ end
4154
+
4155
+ # @note When making an API call, you may pass ListAlarmModelsRequest
4156
+ # data as a hash:
4157
+ #
4158
+ # {
4159
+ # next_token: "NextToken",
4160
+ # max_results: 1,
4161
+ # }
4162
+ #
4163
+ # @!attribute [rw] next_token
4164
+ # The token that you can use to return the next set of results.
4165
+ # @return [String]
4166
+ #
4167
+ # @!attribute [rw] max_results
4168
+ # The maximum number of results to be returned per request.
4169
+ # @return [Integer]
4170
+ #
4171
+ class ListAlarmModelsRequest < Struct.new(
4172
+ :next_token,
4173
+ :max_results)
4174
+ SENSITIVE = []
4175
+ include Aws::Structure
4176
+ end
4177
+
4178
+ # @!attribute [rw] alarm_model_summaries
4179
+ # A list that summarizes each alarm model.
4180
+ # @return [Array<Types::AlarmModelSummary>]
4181
+ #
4182
+ # @!attribute [rw] next_token
4183
+ # The token that you can use to return the next set of results, or
4184
+ # `null` if there are no more results.
4185
+ # @return [String]
4186
+ #
4187
+ class ListAlarmModelsResponse < Struct.new(
4188
+ :alarm_model_summaries,
4189
+ :next_token)
4190
+ SENSITIVE = []
4191
+ include Aws::Structure
4192
+ end
4193
+
2785
4194
  # @note When making an API call, you may pass ListDetectorModelVersionsRequest
2786
4195
  # data as a hash:
2787
4196
  #
@@ -2850,17 +4259,72 @@ module Aws::IoTEvents
2850
4259
  include Aws::Structure
2851
4260
  end
2852
4261
 
2853
- # @!attribute [rw] detector_model_summaries
2854
- # Summary information about the detector models.
2855
- # @return [Array<Types::DetectorModelSummary>]
4262
+ # @!attribute [rw] detector_model_summaries
4263
+ # Summary information about the detector models.
4264
+ # @return [Array<Types::DetectorModelSummary>]
4265
+ #
4266
+ # @!attribute [rw] next_token
4267
+ # The token that you can use to return the next set of results, or
4268
+ # `null` if there are no more results.
4269
+ # @return [String]
4270
+ #
4271
+ class ListDetectorModelsResponse < Struct.new(
4272
+ :detector_model_summaries,
4273
+ :next_token)
4274
+ SENSITIVE = []
4275
+ include Aws::Structure
4276
+ end
4277
+
4278
+ # @note When making an API call, you may pass ListInputRoutingsRequest
4279
+ # data as a hash:
4280
+ #
4281
+ # {
4282
+ # input_identifier: { # required
4283
+ # iot_events_input_identifier: {
4284
+ # input_name: "InputName", # required
4285
+ # },
4286
+ # iot_site_wise_input_identifier: {
4287
+ # iot_site_wise_asset_model_property_identifier: {
4288
+ # asset_model_id: "AssetModelId", # required
4289
+ # property_id: "AssetPropertyId", # required
4290
+ # },
4291
+ # },
4292
+ # },
4293
+ # max_results: 1,
4294
+ # next_token: "NextToken",
4295
+ # }
4296
+ #
4297
+ # @!attribute [rw] input_identifier
4298
+ # The identifer of the routed input.
4299
+ # @return [Types::InputIdentifier]
4300
+ #
4301
+ # @!attribute [rw] max_results
4302
+ # The maximum number of results to be returned per request.
4303
+ # @return [Integer]
4304
+ #
4305
+ # @!attribute [rw] next_token
4306
+ # The token that you can use to return the next set of results.
4307
+ # @return [String]
4308
+ #
4309
+ class ListInputRoutingsRequest < Struct.new(
4310
+ :input_identifier,
4311
+ :max_results,
4312
+ :next_token)
4313
+ SENSITIVE = []
4314
+ include Aws::Structure
4315
+ end
4316
+
4317
+ # @!attribute [rw] routed_resources
4318
+ # Summary information about the routed resources.
4319
+ # @return [Array<Types::RoutedResource>]
2856
4320
  #
2857
4321
  # @!attribute [rw] next_token
2858
4322
  # The token that you can use to return the next set of results, or
2859
4323
  # `null` if there are no more results.
2860
4324
  # @return [String]
2861
4325
  #
2862
- class ListDetectorModelsResponse < Struct.new(
2863
- :detector_model_summaries,
4326
+ class ListInputRoutingsResponse < Struct.new(
4327
+ :routed_resources,
2864
4328
  :next_token)
2865
4329
  SENSITIVE = []
2866
4330
  include Aws::Structure
@@ -2976,6 +4440,115 @@ module Aws::IoTEvents
2976
4440
  include Aws::Structure
2977
4441
  end
2978
4442
 
4443
+ # Contains the notification settings of an alarm model. The settings
4444
+ # apply to all alarms that were created based on this alarm model.
4445
+ #
4446
+ # @note When making an API call, you may pass NotificationAction
4447
+ # data as a hash:
4448
+ #
4449
+ # {
4450
+ # action: { # required
4451
+ # lambda_action: {
4452
+ # function_arn: "AmazonResourceName", # required
4453
+ # payload: {
4454
+ # content_expression: "ContentExpression", # required
4455
+ # type: "STRING", # required, accepts STRING, JSON
4456
+ # },
4457
+ # },
4458
+ # },
4459
+ # sms_configurations: [
4460
+ # {
4461
+ # sender_id: "SMSSenderId",
4462
+ # additional_message: "NotificationAdditionalMessage",
4463
+ # recipients: [ # required
4464
+ # {
4465
+ # sso_identity: {
4466
+ # identity_store_id: "IdentityStoreId", # required
4467
+ # user_id: "SSOReferenceId",
4468
+ # },
4469
+ # },
4470
+ # ],
4471
+ # },
4472
+ # ],
4473
+ # email_configurations: [
4474
+ # {
4475
+ # from: "FromEmail", # required
4476
+ # content: {
4477
+ # subject: "EmailSubject",
4478
+ # additional_message: "NotificationAdditionalMessage",
4479
+ # },
4480
+ # recipients: { # required
4481
+ # to: [
4482
+ # {
4483
+ # sso_identity: {
4484
+ # identity_store_id: "IdentityStoreId", # required
4485
+ # user_id: "SSOReferenceId",
4486
+ # },
4487
+ # },
4488
+ # ],
4489
+ # },
4490
+ # },
4491
+ # ],
4492
+ # }
4493
+ #
4494
+ # @!attribute [rw] action
4495
+ # Specifies an AWS Lambda function to manage alarm notifications. You
4496
+ # can create one or use the [AWS Lambda function provided by AWS IoT
4497
+ # Events][1].
4498
+ #
4499
+ #
4500
+ #
4501
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/developerguide/lambda-support.html
4502
+ # @return [Types::NotificationTargetActions]
4503
+ #
4504
+ # @!attribute [rw] sms_configurations
4505
+ # Contains the configuration information of SMS notifications.
4506
+ # @return [Array<Types::SMSConfiguration>]
4507
+ #
4508
+ # @!attribute [rw] email_configurations
4509
+ # Contains the configuration information of email notifications.
4510
+ # @return [Array<Types::EmailConfiguration>]
4511
+ #
4512
+ class NotificationAction < Struct.new(
4513
+ :action,
4514
+ :sms_configurations,
4515
+ :email_configurations)
4516
+ SENSITIVE = []
4517
+ include Aws::Structure
4518
+ end
4519
+
4520
+ # Specifies an AWS Lambda function to manage alarm notifications. You
4521
+ # can create one or use the [AWS Lambda function provided by AWS IoT
4522
+ # Events][1].
4523
+ #
4524
+ #
4525
+ #
4526
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/developerguide/lambda-support.html
4527
+ #
4528
+ # @note When making an API call, you may pass NotificationTargetActions
4529
+ # data as a hash:
4530
+ #
4531
+ # {
4532
+ # lambda_action: {
4533
+ # function_arn: "AmazonResourceName", # required
4534
+ # payload: {
4535
+ # content_expression: "ContentExpression", # required
4536
+ # type: "STRING", # required, accepts STRING, JSON
4537
+ # },
4538
+ # },
4539
+ # }
4540
+ #
4541
+ # @!attribute [rw] lambda_action
4542
+ # Calls a Lambda function, passing in information about the detector
4543
+ # model instance and the event that triggered the action.
4544
+ # @return [Types::LambdaAction]
4545
+ #
4546
+ class NotificationTargetActions < Struct.new(
4547
+ :lambda_action)
4548
+ SENSITIVE = []
4549
+ include Aws::Structure
4550
+ end
4551
+
2979
4552
  # When entering this state, perform these `actions` if the `condition`
2980
4553
  # is TRUE.
2981
4554
  #
@@ -3075,8 +4648,8 @@ module Aws::IoTEvents
3075
4648
  # asset_id: "AssetId",
3076
4649
  # property_id: "AssetPropertyId",
3077
4650
  # property_alias: "AssetPropertyAlias",
3078
- # property_value: { # required
3079
- # value: { # required
4651
+ # property_value: {
4652
+ # value: {
3080
4653
  # string_value: "AssetPropertyStringValue",
3081
4654
  # integer_value: "AssetPropertyIntegerValue",
3082
4655
  # double_value: "AssetPropertyDoubleValue",
@@ -3205,8 +4778,8 @@ module Aws::IoTEvents
3205
4778
  # asset_id: "AssetId",
3206
4779
  # property_id: "AssetPropertyId",
3207
4780
  # property_alias: "AssetPropertyAlias",
3208
- # property_value: { # required
3209
- # value: { # required
4781
+ # property_value: {
4782
+ # value: {
3210
4783
  # string_value: "AssetPropertyStringValue",
3211
4784
  # integer_value: "AssetPropertyIntegerValue",
3212
4785
  # double_value: "AssetPropertyDoubleValue",
@@ -3335,8 +4908,8 @@ module Aws::IoTEvents
3335
4908
  # asset_id: "AssetId",
3336
4909
  # property_id: "AssetPropertyId",
3337
4910
  # property_alias: "AssetPropertyAlias",
3338
- # property_value: { # required
3339
- # value: { # required
4911
+ # property_value: {
4912
+ # value: {
3340
4913
  # string_value: "AssetPropertyStringValue",
3341
4914
  # integer_value: "AssetPropertyIntegerValue",
3342
4915
  # double_value: "AssetPropertyDoubleValue",
@@ -3445,8 +5018,8 @@ module Aws::IoTEvents
3445
5018
  # asset_id: "AssetId",
3446
5019
  # property_id: "AssetPropertyId",
3447
5020
  # property_alias: "AssetPropertyAlias",
3448
- # property_value: { # required
3449
- # value: { # required
5021
+ # property_value: {
5022
+ # value: {
3450
5023
  # string_value: "AssetPropertyStringValue",
3451
5024
  # integer_value: "AssetPropertyIntegerValue",
3452
5025
  # double_value: "AssetPropertyDoubleValue",
@@ -3546,6 +5119,28 @@ module Aws::IoTEvents
3546
5119
  include Aws::Structure
3547
5120
  end
3548
5121
 
5122
+ # The information that identifies the recipient.
5123
+ #
5124
+ # @note When making an API call, you may pass RecipientDetail
5125
+ # data as a hash:
5126
+ #
5127
+ # {
5128
+ # sso_identity: {
5129
+ # identity_store_id: "IdentityStoreId", # required
5130
+ # user_id: "SSOReferenceId",
5131
+ # },
5132
+ # }
5133
+ #
5134
+ # @!attribute [rw] sso_identity
5135
+ # The AWS Single Sign-On (AWS SSO) authentication information.
5136
+ # @return [Types::SSOIdentity]
5137
+ #
5138
+ class RecipientDetail < Struct.new(
5139
+ :sso_identity)
5140
+ SENSITIVE = []
5141
+ include Aws::Structure
5142
+ end
5143
+
3549
5144
  # Information required to reset the timer. The timer is reset to the
3550
5145
  # previously evaluated result of the duration. The duration expression
3551
5146
  # isn't reevaluated when you reset the timer.
@@ -3613,6 +5208,74 @@ module Aws::IoTEvents
3613
5208
  include Aws::Structure
3614
5209
  end
3615
5210
 
5211
+ # Contains information about the routed resource.
5212
+ #
5213
+ # @!attribute [rw] name
5214
+ # The name of the routed resource.
5215
+ # @return [String]
5216
+ #
5217
+ # @!attribute [rw] arn
5218
+ # The ARN of the routed resource. For more information, see [Amazon
5219
+ # Resource Names (ARNs)][1] in the *AWS General Reference*.
5220
+ #
5221
+ #
5222
+ #
5223
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
5224
+ # @return [String]
5225
+ #
5226
+ class RoutedResource < Struct.new(
5227
+ :name,
5228
+ :arn)
5229
+ SENSITIVE = []
5230
+ include Aws::Structure
5231
+ end
5232
+
5233
+ # Contains the configuration information of SMS notifications.
5234
+ #
5235
+ # @note When making an API call, you may pass SMSConfiguration
5236
+ # data as a hash:
5237
+ #
5238
+ # {
5239
+ # sender_id: "SMSSenderId",
5240
+ # additional_message: "NotificationAdditionalMessage",
5241
+ # recipients: [ # required
5242
+ # {
5243
+ # sso_identity: {
5244
+ # identity_store_id: "IdentityStoreId", # required
5245
+ # user_id: "SSOReferenceId",
5246
+ # },
5247
+ # },
5248
+ # ],
5249
+ # }
5250
+ #
5251
+ # @!attribute [rw] sender_id
5252
+ # The sender ID.
5253
+ # @return [String]
5254
+ #
5255
+ # @!attribute [rw] additional_message
5256
+ # The message that you want to send. The message can be up to 200
5257
+ # characters.
5258
+ # @return [String]
5259
+ #
5260
+ # @!attribute [rw] recipients
5261
+ # Specifies one or more recipients who receive the message.
5262
+ #
5263
+ # You must [add the users that receive SMS messages to your AWS SSO
5264
+ # store][1].
5265
+ #
5266
+ #
5267
+ #
5268
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/addusers.html
5269
+ # @return [Array<Types::RecipientDetail>]
5270
+ #
5271
+ class SMSConfiguration < Struct.new(
5272
+ :sender_id,
5273
+ :additional_message,
5274
+ :recipients)
5275
+ SENSITIVE = []
5276
+ include Aws::Structure
5277
+ end
5278
+
3616
5279
  # Information required to publish the Amazon SNS message.
3617
5280
  #
3618
5281
  # @note When making an API call, you may pass SNSTopicPublishAction
@@ -3642,6 +5305,36 @@ module Aws::IoTEvents
3642
5305
  include Aws::Structure
3643
5306
  end
3644
5307
 
5308
+ # Contains information about your identity source in AWS Single Sign-On.
5309
+ # For more information, see the [AWS Single Sign-On User Guide][1].
5310
+ #
5311
+ #
5312
+ #
5313
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html
5314
+ #
5315
+ # @note When making an API call, you may pass SSOIdentity
5316
+ # data as a hash:
5317
+ #
5318
+ # {
5319
+ # identity_store_id: "IdentityStoreId", # required
5320
+ # user_id: "SSOReferenceId",
5321
+ # }
5322
+ #
5323
+ # @!attribute [rw] identity_store_id
5324
+ # The ID of the AWS SSO identity store.
5325
+ # @return [String]
5326
+ #
5327
+ # @!attribute [rw] user_id
5328
+ # The user ID.
5329
+ # @return [String]
5330
+ #
5331
+ class SSOIdentity < Struct.new(
5332
+ :identity_store_id,
5333
+ :user_id)
5334
+ SENSITIVE = []
5335
+ include Aws::Structure
5336
+ end
5337
+
3645
5338
  # The service is currently unavailable.
3646
5339
  #
3647
5340
  # @!attribute [rw] message
@@ -3718,6 +5411,40 @@ module Aws::IoTEvents
3718
5411
  include Aws::Structure
3719
5412
  end
3720
5413
 
5414
+ # A rule that compares an input property value to a threshold value with
5415
+ # a comparison operator.
5416
+ #
5417
+ # @note When making an API call, you may pass SimpleRule
5418
+ # data as a hash:
5419
+ #
5420
+ # {
5421
+ # input_property: "InputProperty", # required
5422
+ # comparison_operator: "GREATER", # required, accepts GREATER, GREATER_OR_EQUAL, LESS, LESS_OR_EQUAL, EQUAL, NOT_EQUAL
5423
+ # threshold: "Threshold", # required
5424
+ # }
5425
+ #
5426
+ # @!attribute [rw] input_property
5427
+ # The value on the left side of the comparison operator. You can
5428
+ # specify an AWS IoT Events input attribute as an input property.
5429
+ # @return [String]
5430
+ #
5431
+ # @!attribute [rw] comparison_operator
5432
+ # The comparison operator.
5433
+ # @return [String]
5434
+ #
5435
+ # @!attribute [rw] threshold
5436
+ # The value on the right side of the comparison operator. You can
5437
+ # enter a number or specify an AWS IoT Events input attribute.
5438
+ # @return [String]
5439
+ #
5440
+ class SimpleRule < Struct.new(
5441
+ :input_property,
5442
+ :comparison_operator,
5443
+ :threshold)
5444
+ SENSITIVE = []
5445
+ include Aws::Structure
5446
+ end
5447
+
3721
5448
  # Sends information about the detector model instance and the event that
3722
5449
  # triggered the action to an Amazon SQS queue.
3723
5450
  #
@@ -3856,8 +5583,8 @@ module Aws::IoTEvents
3856
5583
  # asset_id: "AssetId",
3857
5584
  # property_id: "AssetPropertyId",
3858
5585
  # property_alias: "AssetPropertyAlias",
3859
- # property_value: { # required
3860
- # value: { # required
5586
+ # property_value: {
5587
+ # value: {
3861
5588
  # string_value: "AssetPropertyStringValue",
3862
5589
  # integer_value: "AssetPropertyIntegerValue",
3863
5590
  # double_value: "AssetPropertyDoubleValue",
@@ -3966,8 +5693,8 @@ module Aws::IoTEvents
3966
5693
  # asset_id: "AssetId",
3967
5694
  # property_id: "AssetPropertyId",
3968
5695
  # property_alias: "AssetPropertyAlias",
3969
- # property_value: { # required
3970
- # value: { # required
5696
+ # property_value: {
5697
+ # value: {
3971
5698
  # string_value: "AssetPropertyStringValue",
3972
5699
  # integer_value: "AssetPropertyIntegerValue",
3973
5700
  # double_value: "AssetPropertyDoubleValue",
@@ -4079,8 +5806,8 @@ module Aws::IoTEvents
4079
5806
  # asset_id: "AssetId",
4080
5807
  # property_id: "AssetPropertyId",
4081
5808
  # property_alias: "AssetPropertyAlias",
4082
- # property_value: { # required
4083
- # value: { # required
5809
+ # property_value: {
5810
+ # value: {
4084
5811
  # string_value: "AssetPropertyStringValue",
4085
5812
  # integer_value: "AssetPropertyIntegerValue",
4086
5813
  # double_value: "AssetPropertyDoubleValue",
@@ -4191,8 +5918,8 @@ module Aws::IoTEvents
4191
5918
  # asset_id: "AssetId",
4192
5919
  # property_id: "AssetPropertyId",
4193
5920
  # property_alias: "AssetPropertyAlias",
4194
- # property_value: { # required
4195
- # value: { # required
5921
+ # property_value: {
5922
+ # value: {
4196
5923
  # string_value: "AssetPropertyStringValue",
4197
5924
  # integer_value: "AssetPropertyIntegerValue",
4198
5925
  # double_value: "AssetPropertyDoubleValue",
@@ -4336,8 +6063,8 @@ module Aws::IoTEvents
4336
6063
  # asset_id: "AssetId",
4337
6064
  # property_id: "AssetPropertyId",
4338
6065
  # property_alias: "AssetPropertyAlias",
4339
- # property_value: { # required
4340
- # value: { # required
6066
+ # property_value: {
6067
+ # value: {
4341
6068
  # string_value: "AssetPropertyStringValue",
4342
6069
  # integer_value: "AssetPropertyIntegerValue",
4343
6070
  # double_value: "AssetPropertyDoubleValue",
@@ -4446,8 +6173,8 @@ module Aws::IoTEvents
4446
6173
  # asset_id: "AssetId",
4447
6174
  # property_id: "AssetPropertyId",
4448
6175
  # property_alias: "AssetPropertyAlias",
4449
- # property_value: { # required
4450
- # value: { # required
6176
+ # property_value: {
6177
+ # value: {
4451
6178
  # string_value: "AssetPropertyStringValue",
4452
6179
  # integer_value: "AssetPropertyIntegerValue",
4453
6180
  # double_value: "AssetPropertyDoubleValue",
@@ -4559,8 +6286,8 @@ module Aws::IoTEvents
4559
6286
  # asset_id: "AssetId",
4560
6287
  # property_id: "AssetPropertyId",
4561
6288
  # property_alias: "AssetPropertyAlias",
4562
- # property_value: { # required
4563
- # value: { # required
6289
+ # property_value: {
6290
+ # value: {
4564
6291
  # string_value: "AssetPropertyStringValue",
4565
6292
  # integer_value: "AssetPropertyIntegerValue",
4566
6293
  # double_value: "AssetPropertyDoubleValue",
@@ -4671,8 +6398,8 @@ module Aws::IoTEvents
4671
6398
  # asset_id: "AssetId",
4672
6399
  # property_id: "AssetPropertyId",
4673
6400
  # property_alias: "AssetPropertyAlias",
4674
- # property_value: { # required
4675
- # value: { # required
6401
+ # property_value: {
6402
+ # value: {
4676
6403
  # string_value: "AssetPropertyStringValue",
4677
6404
  # integer_value: "AssetPropertyIntegerValue",
4678
6405
  # double_value: "AssetPropertyDoubleValue",
@@ -4884,8 +6611,8 @@ module Aws::IoTEvents
4884
6611
  # asset_id: "AssetId",
4885
6612
  # property_id: "AssetPropertyId",
4886
6613
  # property_alias: "AssetPropertyAlias",
4887
- # property_value: { # required
4888
- # value: { # required
6614
+ # property_value: {
6615
+ # value: {
4889
6616
  # string_value: "AssetPropertyStringValue",
4890
6617
  # integer_value: "AssetPropertyIntegerValue",
4891
6618
  # double_value: "AssetPropertyDoubleValue",
@@ -4966,6 +6693,271 @@ module Aws::IoTEvents
4966
6693
 
4967
6694
  class UntagResourceResponse < Aws::EmptyStructure; end
4968
6695
 
6696
+ # @note When making an API call, you may pass UpdateAlarmModelRequest
6697
+ # data as a hash:
6698
+ #
6699
+ # {
6700
+ # alarm_model_name: "AlarmModelName", # required
6701
+ # alarm_model_description: "AlarmModelDescription",
6702
+ # role_arn: "AmazonResourceName", # required
6703
+ # severity: 1,
6704
+ # alarm_rule: { # required
6705
+ # simple_rule: {
6706
+ # input_property: "InputProperty", # required
6707
+ # comparison_operator: "GREATER", # required, accepts GREATER, GREATER_OR_EQUAL, LESS, LESS_OR_EQUAL, EQUAL, NOT_EQUAL
6708
+ # threshold: "Threshold", # required
6709
+ # },
6710
+ # },
6711
+ # alarm_notification: {
6712
+ # notification_actions: [
6713
+ # {
6714
+ # action: { # required
6715
+ # lambda_action: {
6716
+ # function_arn: "AmazonResourceName", # required
6717
+ # payload: {
6718
+ # content_expression: "ContentExpression", # required
6719
+ # type: "STRING", # required, accepts STRING, JSON
6720
+ # },
6721
+ # },
6722
+ # },
6723
+ # sms_configurations: [
6724
+ # {
6725
+ # sender_id: "SMSSenderId",
6726
+ # additional_message: "NotificationAdditionalMessage",
6727
+ # recipients: [ # required
6728
+ # {
6729
+ # sso_identity: {
6730
+ # identity_store_id: "IdentityStoreId", # required
6731
+ # user_id: "SSOReferenceId",
6732
+ # },
6733
+ # },
6734
+ # ],
6735
+ # },
6736
+ # ],
6737
+ # email_configurations: [
6738
+ # {
6739
+ # from: "FromEmail", # required
6740
+ # content: {
6741
+ # subject: "EmailSubject",
6742
+ # additional_message: "NotificationAdditionalMessage",
6743
+ # },
6744
+ # recipients: { # required
6745
+ # to: [
6746
+ # {
6747
+ # sso_identity: {
6748
+ # identity_store_id: "IdentityStoreId", # required
6749
+ # user_id: "SSOReferenceId",
6750
+ # },
6751
+ # },
6752
+ # ],
6753
+ # },
6754
+ # },
6755
+ # ],
6756
+ # },
6757
+ # ],
6758
+ # },
6759
+ # alarm_event_actions: {
6760
+ # alarm_actions: [
6761
+ # {
6762
+ # sns: {
6763
+ # target_arn: "AmazonResourceName", # required
6764
+ # payload: {
6765
+ # content_expression: "ContentExpression", # required
6766
+ # type: "STRING", # required, accepts STRING, JSON
6767
+ # },
6768
+ # },
6769
+ # iot_topic_publish: {
6770
+ # mqtt_topic: "MQTTTopic", # required
6771
+ # payload: {
6772
+ # content_expression: "ContentExpression", # required
6773
+ # type: "STRING", # required, accepts STRING, JSON
6774
+ # },
6775
+ # },
6776
+ # lambda: {
6777
+ # function_arn: "AmazonResourceName", # required
6778
+ # payload: {
6779
+ # content_expression: "ContentExpression", # required
6780
+ # type: "STRING", # required, accepts STRING, JSON
6781
+ # },
6782
+ # },
6783
+ # iot_events: {
6784
+ # input_name: "InputName", # required
6785
+ # payload: {
6786
+ # content_expression: "ContentExpression", # required
6787
+ # type: "STRING", # required, accepts STRING, JSON
6788
+ # },
6789
+ # },
6790
+ # sqs: {
6791
+ # queue_url: "QueueUrl", # required
6792
+ # use_base_64: false,
6793
+ # payload: {
6794
+ # content_expression: "ContentExpression", # required
6795
+ # type: "STRING", # required, accepts STRING, JSON
6796
+ # },
6797
+ # },
6798
+ # firehose: {
6799
+ # delivery_stream_name: "DeliveryStreamName", # required
6800
+ # separator: "FirehoseSeparator",
6801
+ # payload: {
6802
+ # content_expression: "ContentExpression", # required
6803
+ # type: "STRING", # required, accepts STRING, JSON
6804
+ # },
6805
+ # },
6806
+ # dynamo_db: {
6807
+ # hash_key_type: "DynamoKeyType",
6808
+ # hash_key_field: "DynamoKeyField", # required
6809
+ # hash_key_value: "DynamoKeyValue", # required
6810
+ # range_key_type: "DynamoKeyType",
6811
+ # range_key_field: "DynamoKeyField",
6812
+ # range_key_value: "DynamoKeyValue",
6813
+ # operation: "DynamoOperation",
6814
+ # payload_field: "DynamoKeyField",
6815
+ # table_name: "DynamoTableName", # required
6816
+ # payload: {
6817
+ # content_expression: "ContentExpression", # required
6818
+ # type: "STRING", # required, accepts STRING, JSON
6819
+ # },
6820
+ # },
6821
+ # dynamo_d_bv_2: {
6822
+ # table_name: "DynamoTableName", # required
6823
+ # payload: {
6824
+ # content_expression: "ContentExpression", # required
6825
+ # type: "STRING", # required, accepts STRING, JSON
6826
+ # },
6827
+ # },
6828
+ # iot_site_wise: {
6829
+ # entry_id: "AssetPropertyEntryId",
6830
+ # asset_id: "AssetId",
6831
+ # property_id: "AssetPropertyId",
6832
+ # property_alias: "AssetPropertyAlias",
6833
+ # property_value: {
6834
+ # value: {
6835
+ # string_value: "AssetPropertyStringValue",
6836
+ # integer_value: "AssetPropertyIntegerValue",
6837
+ # double_value: "AssetPropertyDoubleValue",
6838
+ # boolean_value: "AssetPropertyBooleanValue",
6839
+ # },
6840
+ # timestamp: {
6841
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
6842
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
6843
+ # },
6844
+ # quality: "AssetPropertyQuality",
6845
+ # },
6846
+ # },
6847
+ # },
6848
+ # ],
6849
+ # },
6850
+ # alarm_capabilities: {
6851
+ # initialization_configuration: {
6852
+ # disabled_on_initialization: false, # required
6853
+ # },
6854
+ # acknowledge_flow: {
6855
+ # enabled: false, # required
6856
+ # },
6857
+ # },
6858
+ # }
6859
+ #
6860
+ # @!attribute [rw] alarm_model_name
6861
+ # The name of the alarm model.
6862
+ # @return [String]
6863
+ #
6864
+ # @!attribute [rw] alarm_model_description
6865
+ # The description of the alarm model.
6866
+ # @return [String]
6867
+ #
6868
+ # @!attribute [rw] role_arn
6869
+ # The ARN of the IAM role that allows the alarm to perform actions and
6870
+ # access AWS resources. For more information, see [Amazon Resource
6871
+ # Names (ARNs)][1] in the *AWS General Reference*.
6872
+ #
6873
+ #
6874
+ #
6875
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
6876
+ # @return [String]
6877
+ #
6878
+ # @!attribute [rw] severity
6879
+ # A non-negative integer that reflects the severity level of the
6880
+ # alarm.
6881
+ # @return [Integer]
6882
+ #
6883
+ # @!attribute [rw] alarm_rule
6884
+ # Defines when your alarm is invoked.
6885
+ # @return [Types::AlarmRule]
6886
+ #
6887
+ # @!attribute [rw] alarm_notification
6888
+ # Contains information about one or more notification actions.
6889
+ # @return [Types::AlarmNotification]
6890
+ #
6891
+ # @!attribute [rw] alarm_event_actions
6892
+ # Contains information about one or more alarm actions.
6893
+ # @return [Types::AlarmEventActions]
6894
+ #
6895
+ # @!attribute [rw] alarm_capabilities
6896
+ # Contains the configuration information of alarm state changes.
6897
+ # @return [Types::AlarmCapabilities]
6898
+ #
6899
+ class UpdateAlarmModelRequest < Struct.new(
6900
+ :alarm_model_name,
6901
+ :alarm_model_description,
6902
+ :role_arn,
6903
+ :severity,
6904
+ :alarm_rule,
6905
+ :alarm_notification,
6906
+ :alarm_event_actions,
6907
+ :alarm_capabilities)
6908
+ SENSITIVE = []
6909
+ include Aws::Structure
6910
+ end
6911
+
6912
+ # @!attribute [rw] creation_time
6913
+ # The time the alarm model was created, in the Unix epoch format.
6914
+ # @return [Time]
6915
+ #
6916
+ # @!attribute [rw] alarm_model_arn
6917
+ # The ARN of the alarm model. For more information, see [Amazon
6918
+ # Resource Names (ARNs)][1] in the *AWS General Reference*.
6919
+ #
6920
+ #
6921
+ #
6922
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
6923
+ # @return [String]
6924
+ #
6925
+ # @!attribute [rw] alarm_model_version
6926
+ # The version of the alarm model.
6927
+ # @return [String]
6928
+ #
6929
+ # @!attribute [rw] last_update_time
6930
+ # The time the alarm model was last updated, in the Unix epoch format.
6931
+ # @return [Time]
6932
+ #
6933
+ # @!attribute [rw] status
6934
+ # The status of the alarm model. The status can be one of the
6935
+ # following values:
6936
+ #
6937
+ # * `ACTIVE` - The alarm model is active and it's ready to evaluate
6938
+ # data.
6939
+ #
6940
+ # * `ACTIVATING` - AWS IoT Events is activating your alarm model.
6941
+ # Activating an alarm model can take up to a few minutes.
6942
+ #
6943
+ # * `INACTIVE` - The alarm model is inactive, so it isn't ready to
6944
+ # evaluate data. Check your alarm model information and update the
6945
+ # alarm model.
6946
+ #
6947
+ # * `FAILED` - You couldn't create or update the alarm model. Check
6948
+ # your alarm model information and try again.
6949
+ # @return [String]
6950
+ #
6951
+ class UpdateAlarmModelResponse < Struct.new(
6952
+ :creation_time,
6953
+ :alarm_model_arn,
6954
+ :alarm_model_version,
6955
+ :last_update_time,
6956
+ :status)
6957
+ SENSITIVE = []
6958
+ include Aws::Structure
6959
+ end
6960
+
4969
6961
  # @note When making an API call, you may pass UpdateDetectorModelRequest
4970
6962
  # data as a hash:
4971
6963
  #
@@ -5068,8 +7060,8 @@ module Aws::IoTEvents
5068
7060
  # asset_id: "AssetId",
5069
7061
  # property_id: "AssetPropertyId",
5070
7062
  # property_alias: "AssetPropertyAlias",
5071
- # property_value: { # required
5072
- # value: { # required
7063
+ # property_value: {
7064
+ # value: {
5073
7065
  # string_value: "AssetPropertyStringValue",
5074
7066
  # integer_value: "AssetPropertyIntegerValue",
5075
7067
  # double_value: "AssetPropertyDoubleValue",
@@ -5178,8 +7170,8 @@ module Aws::IoTEvents
5178
7170
  # asset_id: "AssetId",
5179
7171
  # property_id: "AssetPropertyId",
5180
7172
  # property_alias: "AssetPropertyAlias",
5181
- # property_value: { # required
5182
- # value: { # required
7173
+ # property_value: {
7174
+ # value: {
5183
7175
  # string_value: "AssetPropertyStringValue",
5184
7176
  # integer_value: "AssetPropertyIntegerValue",
5185
7177
  # double_value: "AssetPropertyDoubleValue",
@@ -5291,8 +7283,8 @@ module Aws::IoTEvents
5291
7283
  # asset_id: "AssetId",
5292
7284
  # property_id: "AssetPropertyId",
5293
7285
  # property_alias: "AssetPropertyAlias",
5294
- # property_value: { # required
5295
- # value: { # required
7286
+ # property_value: {
7287
+ # value: {
5296
7288
  # string_value: "AssetPropertyStringValue",
5297
7289
  # integer_value: "AssetPropertyIntegerValue",
5298
7290
  # double_value: "AssetPropertyDoubleValue",
@@ -5403,8 +7395,8 @@ module Aws::IoTEvents
5403
7395
  # asset_id: "AssetId",
5404
7396
  # property_id: "AssetPropertyId",
5405
7397
  # property_alias: "AssetPropertyAlias",
5406
- # property_value: { # required
5407
- # value: { # required
7398
+ # property_value: {
7399
+ # value: {
5408
7400
  # string_value: "AssetPropertyStringValue",
5409
7401
  # integer_value: "AssetPropertyIntegerValue",
5410
7402
  # double_value: "AssetPropertyDoubleValue",