aws-sdk-iotevents 1.23.0 → 1.24.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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",