aws-sdk-iotevents 1.10.0 → 1.15.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.
@@ -14,11 +14,26 @@ module Aws::IoTEvents
14
14
  Action = Shapes::StructureShape.new(name: 'Action')
15
15
  Actions = Shapes::ListShape.new(name: 'Actions')
16
16
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
17
+ AssetId = Shapes::StringShape.new(name: 'AssetId')
18
+ AssetPropertyAlias = Shapes::StringShape.new(name: 'AssetPropertyAlias')
19
+ AssetPropertyBooleanValue = Shapes::StringShape.new(name: 'AssetPropertyBooleanValue')
20
+ AssetPropertyDoubleValue = Shapes::StringShape.new(name: 'AssetPropertyDoubleValue')
21
+ AssetPropertyEntryId = Shapes::StringShape.new(name: 'AssetPropertyEntryId')
22
+ AssetPropertyId = Shapes::StringShape.new(name: 'AssetPropertyId')
23
+ AssetPropertyIntegerValue = Shapes::StringShape.new(name: 'AssetPropertyIntegerValue')
24
+ AssetPropertyOffsetInNanos = Shapes::StringShape.new(name: 'AssetPropertyOffsetInNanos')
25
+ AssetPropertyQuality = Shapes::StringShape.new(name: 'AssetPropertyQuality')
26
+ AssetPropertyStringValue = Shapes::StringShape.new(name: 'AssetPropertyStringValue')
27
+ AssetPropertyTimeInSeconds = Shapes::StringShape.new(name: 'AssetPropertyTimeInSeconds')
28
+ AssetPropertyTimestamp = Shapes::StructureShape.new(name: 'AssetPropertyTimestamp')
29
+ AssetPropertyValue = Shapes::StructureShape.new(name: 'AssetPropertyValue')
30
+ AssetPropertyVariant = Shapes::StructureShape.new(name: 'AssetPropertyVariant')
17
31
  Attribute = Shapes::StructureShape.new(name: 'Attribute')
18
32
  AttributeJsonPath = Shapes::StringShape.new(name: 'AttributeJsonPath')
19
33
  Attributes = Shapes::ListShape.new(name: 'Attributes')
20
34
  ClearTimerAction = Shapes::StructureShape.new(name: 'ClearTimerAction')
21
35
  Condition = Shapes::StringShape.new(name: 'Condition')
36
+ ContentExpression = Shapes::StringShape.new(name: 'ContentExpression')
22
37
  CreateDetectorModelRequest = Shapes::StructureShape.new(name: 'CreateDetectorModelRequest')
23
38
  CreateDetectorModelResponse = Shapes::StructureShape.new(name: 'CreateDetectorModelResponse')
24
39
  CreateInputRequest = Shapes::StructureShape.new(name: 'CreateInputRequest')
@@ -48,6 +63,13 @@ module Aws::IoTEvents
48
63
  DetectorModelVersionStatus = Shapes::StringShape.new(name: 'DetectorModelVersionStatus')
49
64
  DetectorModelVersionSummaries = Shapes::ListShape.new(name: 'DetectorModelVersionSummaries')
50
65
  DetectorModelVersionSummary = Shapes::StructureShape.new(name: 'DetectorModelVersionSummary')
66
+ DynamoDBAction = Shapes::StructureShape.new(name: 'DynamoDBAction')
67
+ DynamoDBv2Action = Shapes::StructureShape.new(name: 'DynamoDBv2Action')
68
+ DynamoKeyField = Shapes::StringShape.new(name: 'DynamoKeyField')
69
+ DynamoKeyType = Shapes::StringShape.new(name: 'DynamoKeyType')
70
+ DynamoKeyValue = Shapes::StringShape.new(name: 'DynamoKeyValue')
71
+ DynamoOperation = Shapes::StringShape.new(name: 'DynamoOperation')
72
+ DynamoTableName = Shapes::StringShape.new(name: 'DynamoTableName')
51
73
  EvaluationMethod = Shapes::StringShape.new(name: 'EvaluationMethod')
52
74
  Event = Shapes::StructureShape.new(name: 'Event')
53
75
  EventName = Shapes::StringShape.new(name: 'EventName')
@@ -66,6 +88,7 @@ module Aws::IoTEvents
66
88
  InternalFailureException = Shapes::StructureShape.new(name: 'InternalFailureException')
67
89
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
68
90
  IotEventsAction = Shapes::StructureShape.new(name: 'IotEventsAction')
91
+ IotSiteWiseAction = Shapes::StructureShape.new(name: 'IotSiteWiseAction')
69
92
  IotTopicPublishAction = Shapes::StructureShape.new(name: 'IotTopicPublishAction')
70
93
  KeyValue = Shapes::StringShape.new(name: 'KeyValue')
71
94
  LambdaAction = Shapes::StructureShape.new(name: 'LambdaAction')
@@ -87,6 +110,8 @@ module Aws::IoTEvents
87
110
  OnEnterLifecycle = Shapes::StructureShape.new(name: 'OnEnterLifecycle')
88
111
  OnExitLifecycle = Shapes::StructureShape.new(name: 'OnExitLifecycle')
89
112
  OnInputLifecycle = Shapes::StructureShape.new(name: 'OnInputLifecycle')
113
+ Payload = Shapes::StructureShape.new(name: 'Payload')
114
+ PayloadType = Shapes::StringShape.new(name: 'PayloadType')
90
115
  PutLoggingOptionsRequest = Shapes::StructureShape.new(name: 'PutLoggingOptionsRequest')
91
116
  QueueUrl = Shapes::StringShape.new(name: 'QueueUrl')
92
117
  ResetTimerAction = Shapes::StructureShape.new(name: 'ResetTimerAction')
@@ -138,10 +163,28 @@ module Aws::IoTEvents
138
163
  Action.add_member(:iot_events, Shapes::ShapeRef.new(shape: IotEventsAction, location_name: "iotEvents"))
139
164
  Action.add_member(:sqs, Shapes::ShapeRef.new(shape: SqsAction, location_name: "sqs"))
140
165
  Action.add_member(:firehose, Shapes::ShapeRef.new(shape: FirehoseAction, location_name: "firehose"))
166
+ Action.add_member(:dynamo_db, Shapes::ShapeRef.new(shape: DynamoDBAction, location_name: "dynamoDB"))
167
+ Action.add_member(:dynamo_d_bv_2, Shapes::ShapeRef.new(shape: DynamoDBv2Action, location_name: "dynamoDBv2"))
168
+ Action.add_member(:iot_site_wise, Shapes::ShapeRef.new(shape: IotSiteWiseAction, location_name: "iotSiteWise"))
141
169
  Action.struct_class = Types::Action
142
170
 
143
171
  Actions.member = Shapes::ShapeRef.new(shape: Action)
144
172
 
173
+ AssetPropertyTimestamp.add_member(:time_in_seconds, Shapes::ShapeRef.new(shape: AssetPropertyTimeInSeconds, required: true, location_name: "timeInSeconds"))
174
+ AssetPropertyTimestamp.add_member(:offset_in_nanos, Shapes::ShapeRef.new(shape: AssetPropertyOffsetInNanos, location_name: "offsetInNanos"))
175
+ AssetPropertyTimestamp.struct_class = Types::AssetPropertyTimestamp
176
+
177
+ AssetPropertyValue.add_member(:value, Shapes::ShapeRef.new(shape: AssetPropertyVariant, required: true, location_name: "value"))
178
+ AssetPropertyValue.add_member(:timestamp, Shapes::ShapeRef.new(shape: AssetPropertyTimestamp, location_name: "timestamp"))
179
+ AssetPropertyValue.add_member(:quality, Shapes::ShapeRef.new(shape: AssetPropertyQuality, location_name: "quality"))
180
+ AssetPropertyValue.struct_class = Types::AssetPropertyValue
181
+
182
+ AssetPropertyVariant.add_member(:string_value, Shapes::ShapeRef.new(shape: AssetPropertyStringValue, location_name: "stringValue"))
183
+ AssetPropertyVariant.add_member(:integer_value, Shapes::ShapeRef.new(shape: AssetPropertyIntegerValue, location_name: "integerValue"))
184
+ AssetPropertyVariant.add_member(:double_value, Shapes::ShapeRef.new(shape: AssetPropertyDoubleValue, location_name: "doubleValue"))
185
+ AssetPropertyVariant.add_member(:boolean_value, Shapes::ShapeRef.new(shape: AssetPropertyBooleanValue, location_name: "booleanValue"))
186
+ AssetPropertyVariant.struct_class = Types::AssetPropertyVariant
187
+
145
188
  Attribute.add_member(:json_path, Shapes::ShapeRef.new(shape: AttributeJsonPath, required: true, location_name: "jsonPath"))
146
189
  Attribute.struct_class = Types::Attribute
147
190
 
@@ -244,6 +287,22 @@ module Aws::IoTEvents
244
287
  DetectorModelVersionSummary.add_member(:evaluation_method, Shapes::ShapeRef.new(shape: EvaluationMethod, location_name: "evaluationMethod"))
245
288
  DetectorModelVersionSummary.struct_class = Types::DetectorModelVersionSummary
246
289
 
290
+ DynamoDBAction.add_member(:hash_key_type, Shapes::ShapeRef.new(shape: DynamoKeyType, location_name: "hashKeyType"))
291
+ DynamoDBAction.add_member(:hash_key_field, Shapes::ShapeRef.new(shape: DynamoKeyField, required: true, location_name: "hashKeyField"))
292
+ DynamoDBAction.add_member(:hash_key_value, Shapes::ShapeRef.new(shape: DynamoKeyValue, required: true, location_name: "hashKeyValue"))
293
+ DynamoDBAction.add_member(:range_key_type, Shapes::ShapeRef.new(shape: DynamoKeyType, location_name: "rangeKeyType"))
294
+ DynamoDBAction.add_member(:range_key_field, Shapes::ShapeRef.new(shape: DynamoKeyField, location_name: "rangeKeyField"))
295
+ DynamoDBAction.add_member(:range_key_value, Shapes::ShapeRef.new(shape: DynamoKeyValue, location_name: "rangeKeyValue"))
296
+ DynamoDBAction.add_member(:operation, Shapes::ShapeRef.new(shape: DynamoOperation, location_name: "operation"))
297
+ DynamoDBAction.add_member(:payload_field, Shapes::ShapeRef.new(shape: DynamoKeyField, location_name: "payloadField"))
298
+ DynamoDBAction.add_member(:table_name, Shapes::ShapeRef.new(shape: DynamoTableName, required: true, location_name: "tableName"))
299
+ DynamoDBAction.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
300
+ DynamoDBAction.struct_class = Types::DynamoDBAction
301
+
302
+ DynamoDBv2Action.add_member(:table_name, Shapes::ShapeRef.new(shape: DynamoTableName, required: true, location_name: "tableName"))
303
+ DynamoDBv2Action.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
304
+ DynamoDBv2Action.struct_class = Types::DynamoDBv2Action
305
+
247
306
  Event.add_member(:event_name, Shapes::ShapeRef.new(shape: EventName, required: true, location_name: "eventName"))
248
307
  Event.add_member(:condition, Shapes::ShapeRef.new(shape: Condition, location_name: "condition"))
249
308
  Event.add_member(:actions, Shapes::ShapeRef.new(shape: Actions, location_name: "actions"))
@@ -253,6 +312,7 @@ module Aws::IoTEvents
253
312
 
254
313
  FirehoseAction.add_member(:delivery_stream_name, Shapes::ShapeRef.new(shape: DeliveryStreamName, required: true, location_name: "deliveryStreamName"))
255
314
  FirehoseAction.add_member(:separator, Shapes::ShapeRef.new(shape: FirehoseSeparator, location_name: "separator"))
315
+ FirehoseAction.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
256
316
  FirehoseAction.struct_class = Types::FirehoseAction
257
317
 
258
318
  Input.add_member(:input_configuration, Shapes::ShapeRef.new(shape: InputConfiguration, location_name: "inputConfiguration"))
@@ -287,12 +347,22 @@ module Aws::IoTEvents
287
347
  InvalidRequestException.struct_class = Types::InvalidRequestException
288
348
 
289
349
  IotEventsAction.add_member(:input_name, Shapes::ShapeRef.new(shape: InputName, required: true, location_name: "inputName"))
350
+ IotEventsAction.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
290
351
  IotEventsAction.struct_class = Types::IotEventsAction
291
352
 
353
+ IotSiteWiseAction.add_member(:entry_id, Shapes::ShapeRef.new(shape: AssetPropertyEntryId, location_name: "entryId"))
354
+ IotSiteWiseAction.add_member(:asset_id, Shapes::ShapeRef.new(shape: AssetId, location_name: "assetId"))
355
+ IotSiteWiseAction.add_member(:property_id, Shapes::ShapeRef.new(shape: AssetPropertyId, location_name: "propertyId"))
356
+ IotSiteWiseAction.add_member(:property_alias, Shapes::ShapeRef.new(shape: AssetPropertyAlias, location_name: "propertyAlias"))
357
+ IotSiteWiseAction.add_member(:property_value, Shapes::ShapeRef.new(shape: AssetPropertyValue, required: true, location_name: "propertyValue"))
358
+ IotSiteWiseAction.struct_class = Types::IotSiteWiseAction
359
+
292
360
  IotTopicPublishAction.add_member(:mqtt_topic, Shapes::ShapeRef.new(shape: MQTTTopic, required: true, location_name: "mqttTopic"))
361
+ IotTopicPublishAction.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
293
362
  IotTopicPublishAction.struct_class = Types::IotTopicPublishAction
294
363
 
295
364
  LambdaAction.add_member(:function_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "functionArn"))
365
+ LambdaAction.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
296
366
  LambdaAction.struct_class = Types::LambdaAction
297
367
 
298
368
  LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -345,6 +415,10 @@ module Aws::IoTEvents
345
415
  OnInputLifecycle.add_member(:transition_events, Shapes::ShapeRef.new(shape: TransitionEvents, location_name: "transitionEvents"))
346
416
  OnInputLifecycle.struct_class = Types::OnInputLifecycle
347
417
 
418
+ Payload.add_member(:content_expression, Shapes::ShapeRef.new(shape: ContentExpression, required: true, location_name: "contentExpression"))
419
+ Payload.add_member(:type, Shapes::ShapeRef.new(shape: PayloadType, required: true, location_name: "type"))
420
+ Payload.struct_class = Types::Payload
421
+
348
422
  PutLoggingOptionsRequest.add_member(:logging_options, Shapes::ShapeRef.new(shape: LoggingOptions, required: true, location_name: "loggingOptions"))
349
423
  PutLoggingOptionsRequest.struct_class = Types::PutLoggingOptionsRequest
350
424
 
@@ -363,6 +437,7 @@ module Aws::IoTEvents
363
437
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
364
438
 
365
439
  SNSTopicPublishAction.add_member(:target_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "targetArn"))
440
+ SNSTopicPublishAction.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
366
441
  SNSTopicPublishAction.struct_class = Types::SNSTopicPublishAction
367
442
 
368
443
  ServiceUnavailableException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -379,6 +454,7 @@ module Aws::IoTEvents
379
454
 
380
455
  SqsAction.add_member(:queue_url, Shapes::ShapeRef.new(shape: QueueUrl, required: true, location_name: "queueUrl"))
381
456
  SqsAction.add_member(:use_base_64, Shapes::ShapeRef.new(shape: UseBase64, location_name: "useBase64"))
457
+ SqsAction.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
382
458
  SqsAction.struct_class = Types::SqsAction
383
459
 
384
460
  State.add_member(:state_name, Shapes::ShapeRef.new(shape: StateName, required: true, location_name: "stateName"))
@@ -6,13 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::IoTEvents
9
- # This class provides a resource oriented interface for IoTEvents.
10
- # To create a resource object:
11
- # resource = Aws::IoTEvents::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::IoTEvents::Client.new(region: 'us-west-2')
15
- # resource = Aws::IoTEvents::Resource.new(client: client)
9
+
16
10
  class Resource
17
11
 
18
12
  # @param options ({})
@@ -20,9 +20,17 @@ module Aws::IoTEvents
20
20
  # },
21
21
  # sns: {
22
22
  # target_arn: "AmazonResourceName", # required
23
+ # payload: {
24
+ # content_expression: "ContentExpression", # required
25
+ # type: "STRING", # required, accepts STRING, JSON
26
+ # },
23
27
  # },
24
28
  # iot_topic_publish: {
25
29
  # mqtt_topic: "MQTTTopic", # required
30
+ # payload: {
31
+ # content_expression: "ContentExpression", # required
32
+ # type: "STRING", # required, accepts STRING, JSON
33
+ # },
26
34
  # },
27
35
  # set_timer: {
28
36
  # timer_name: "TimerName", # required
@@ -37,17 +45,74 @@ module Aws::IoTEvents
37
45
  # },
38
46
  # lambda: {
39
47
  # function_arn: "AmazonResourceName", # required
48
+ # payload: {
49
+ # content_expression: "ContentExpression", # required
50
+ # type: "STRING", # required, accepts STRING, JSON
51
+ # },
40
52
  # },
41
53
  # iot_events: {
42
54
  # input_name: "InputName", # required
55
+ # payload: {
56
+ # content_expression: "ContentExpression", # required
57
+ # type: "STRING", # required, accepts STRING, JSON
58
+ # },
43
59
  # },
44
60
  # sqs: {
45
61
  # queue_url: "QueueUrl", # required
46
62
  # use_base_64: false,
63
+ # payload: {
64
+ # content_expression: "ContentExpression", # required
65
+ # type: "STRING", # required, accepts STRING, JSON
66
+ # },
47
67
  # },
48
68
  # firehose: {
49
69
  # delivery_stream_name: "DeliveryStreamName", # required
50
70
  # separator: "FirehoseSeparator",
71
+ # payload: {
72
+ # content_expression: "ContentExpression", # required
73
+ # type: "STRING", # required, accepts STRING, JSON
74
+ # },
75
+ # },
76
+ # dynamo_db: {
77
+ # hash_key_type: "DynamoKeyType",
78
+ # hash_key_field: "DynamoKeyField", # required
79
+ # hash_key_value: "DynamoKeyValue", # required
80
+ # range_key_type: "DynamoKeyType",
81
+ # range_key_field: "DynamoKeyField",
82
+ # range_key_value: "DynamoKeyValue",
83
+ # operation: "DynamoOperation",
84
+ # payload_field: "DynamoKeyField",
85
+ # table_name: "DynamoTableName", # required
86
+ # payload: {
87
+ # content_expression: "ContentExpression", # required
88
+ # type: "STRING", # required, accepts STRING, JSON
89
+ # },
90
+ # },
91
+ # dynamo_d_bv_2: {
92
+ # table_name: "DynamoTableName", # required
93
+ # payload: {
94
+ # content_expression: "ContentExpression", # required
95
+ # type: "STRING", # required, accepts STRING, JSON
96
+ # },
97
+ # },
98
+ # iot_site_wise: {
99
+ # entry_id: "AssetPropertyEntryId",
100
+ # asset_id: "AssetId",
101
+ # property_id: "AssetPropertyId",
102
+ # property_alias: "AssetPropertyAlias",
103
+ # property_value: { # required
104
+ # value: { # required
105
+ # string_value: "AssetPropertyStringValue",
106
+ # integer_value: "AssetPropertyIntegerValue",
107
+ # double_value: "AssetPropertyDoubleValue",
108
+ # boolean_value: "AssetPropertyBooleanValue",
109
+ # },
110
+ # timestamp: {
111
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
112
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
113
+ # },
114
+ # quality: "AssetPropertyQuality",
115
+ # },
51
116
  # },
52
117
  # }
53
118
  #
@@ -82,7 +147,7 @@ module Aws::IoTEvents
82
147
  # @return [Types::LambdaAction]
83
148
  #
84
149
  # @!attribute [rw] iot_events
85
- # Sends an AWS IoT Events input, passing in information about the
150
+ # Sends AWS IoT Events input, which passes information about the
86
151
  # detector model instance and the event that triggered the action.
87
152
  # @return [Types::IotEventsAction]
88
153
  #
@@ -97,6 +162,41 @@ module Aws::IoTEvents
97
162
  # delivery stream.
98
163
  # @return [Types::FirehoseAction]
99
164
  #
165
+ # @!attribute [rw] dynamo_db
166
+ # Writes to the DynamoDB table that you created. The default action
167
+ # payload contains all attribute-value pairs that have the information
168
+ # about the detector model instance and the event that triggered the
169
+ # action. You can also customize the [payload][1]. One column of the
170
+ # DynamoDB table receives all attribute-value pairs in the payload
171
+ # that you specify. For more information, see [Actions][2] in *AWS IoT
172
+ # Events Developer Guide*.
173
+ #
174
+ #
175
+ #
176
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
177
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-event-actions.html
178
+ # @return [Types::DynamoDBAction]
179
+ #
180
+ # @!attribute [rw] dynamo_d_bv_2
181
+ # Writes to the DynamoDB table that you created. The default action
182
+ # payload contains all attribute-value pairs that have the information
183
+ # about the detector model instance and the event that triggered the
184
+ # action. You can also customize the [payload][1]. A separate column
185
+ # of the DynamoDB table receives one attribute-value pair in the
186
+ # payload that you specify. For more information, see [Actions][2] in
187
+ # *AWS IoT Events Developer Guide*.
188
+ #
189
+ #
190
+ #
191
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
192
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-event-actions.html
193
+ # @return [Types::DynamoDBv2Action]
194
+ #
195
+ # @!attribute [rw] iot_site_wise
196
+ # Sends information about the detector model instance and the event
197
+ # that triggered the action to an asset property in AWS IoT SiteWise .
198
+ # @return [Types::IotSiteWiseAction]
199
+ #
100
200
  class Action < Struct.new(
101
201
  :set_variable,
102
202
  :sns,
@@ -107,7 +207,177 @@ module Aws::IoTEvents
107
207
  :lambda,
108
208
  :iot_events,
109
209
  :sqs,
110
- :firehose)
210
+ :firehose,
211
+ :dynamo_db,
212
+ :dynamo_d_bv_2,
213
+ :iot_site_wise)
214
+ include Aws::Structure
215
+ end
216
+
217
+ # A structure that contains timestamp information. For more information,
218
+ # see [TimeInNanos][1] in the *AWS IoT SiteWise API Reference*.
219
+ #
220
+ # For parameters that are string data type, you can specify the
221
+ # following options:
222
+ #
223
+ # * Use a string. For example, the `timeInSeconds` value can be
224
+ # `'1586400675'`.
225
+ #
226
+ # * Use an expression. For example, the `timeInSeconds` value can be
227
+ # `'$\{$input.TemperatureInput.sensorData.timestamp/1000\}'`.
228
+ #
229
+ # For more information, see [Expressions][2] in the *AWS IoT Events
230
+ # Developer Guide*.
231
+ #
232
+ #
233
+ #
234
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_TimeInNanos.html
235
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
236
+ #
237
+ # @note When making an API call, you may pass AssetPropertyTimestamp
238
+ # data as a hash:
239
+ #
240
+ # {
241
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
242
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
243
+ # }
244
+ #
245
+ # @!attribute [rw] time_in_seconds
246
+ # The timestamp, in seconds, in the Unix epoch format. The valid range
247
+ # is between 1-31556889864403199. You can also specify an expression.
248
+ # @return [String]
249
+ #
250
+ # @!attribute [rw] offset_in_nanos
251
+ # The nanosecond offset converted from `timeInSeconds`. The valid
252
+ # range is between 0-999999999. You can also specify an expression.
253
+ # @return [String]
254
+ #
255
+ class AssetPropertyTimestamp < Struct.new(
256
+ :time_in_seconds,
257
+ :offset_in_nanos)
258
+ include Aws::Structure
259
+ end
260
+
261
+ # A structure that contains value information. For more information, see
262
+ # [AssetPropertyValue][1] in the *AWS IoT SiteWise API Reference*.
263
+ #
264
+ # For parameters that are string data type, you can specify the
265
+ # following options:
266
+ #
267
+ # * Use a string. For example, the `quality` value can be `'GOOD'`.
268
+ #
269
+ # * Use an expression. For example, the `quality` value can be
270
+ # `$input.TemperatureInput.sensorData.quality` .
271
+ #
272
+ # For more information, see [Expressions][2] in the *AWS IoT Events
273
+ # Developer Guide*.
274
+ #
275
+ #
276
+ #
277
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_AssetPropertyValue.html
278
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
279
+ #
280
+ # @note When making an API call, you may pass AssetPropertyValue
281
+ # data as a hash:
282
+ #
283
+ # {
284
+ # value: { # required
285
+ # string_value: "AssetPropertyStringValue",
286
+ # integer_value: "AssetPropertyIntegerValue",
287
+ # double_value: "AssetPropertyDoubleValue",
288
+ # boolean_value: "AssetPropertyBooleanValue",
289
+ # },
290
+ # timestamp: {
291
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
292
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
293
+ # },
294
+ # quality: "AssetPropertyQuality",
295
+ # }
296
+ #
297
+ # @!attribute [rw] value
298
+ # The value to send to an asset property.
299
+ # @return [Types::AssetPropertyVariant]
300
+ #
301
+ # @!attribute [rw] timestamp
302
+ # The timestamp associated with the asset property value. The default
303
+ # is the current event time.
304
+ # @return [Types::AssetPropertyTimestamp]
305
+ #
306
+ # @!attribute [rw] quality
307
+ # The quality of the asset property value. The value must be `GOOD`,
308
+ # `BAD`, or `UNCERTAIN`. You can also specify an expression.
309
+ # @return [String]
310
+ #
311
+ class AssetPropertyValue < Struct.new(
312
+ :value,
313
+ :timestamp,
314
+ :quality)
315
+ include Aws::Structure
316
+ end
317
+
318
+ # A structure that contains an asset property value. For more
319
+ # information, see [Variant][1] in the *AWS IoT SiteWise API Reference*.
320
+ #
321
+ # You must specify one of the following value types, depending on the
322
+ # `dataType` of the specified asset property. For more information, see
323
+ # [AssetProperty][2] in the *AWS IoT SiteWise API Reference*.
324
+ #
325
+ # For parameters that are string data type, you can specify the
326
+ # following options:
327
+ #
328
+ # * Use a string. For example, the `doubleValue` value can be `'47.9'`.
329
+ #
330
+ # * Use an expression. For example, the `doubleValue` value can be
331
+ # `$input.TemperatureInput.sensorData.temperature`.
332
+ #
333
+ # For more information, see [Expressions][3] in the *AWS IoT Events
334
+ # Developer Guide*.
335
+ #
336
+ #
337
+ #
338
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_Variant.html
339
+ # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_AssetProperty.html
340
+ # [3]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
341
+ #
342
+ # @note When making an API call, you may pass AssetPropertyVariant
343
+ # data as a hash:
344
+ #
345
+ # {
346
+ # string_value: "AssetPropertyStringValue",
347
+ # integer_value: "AssetPropertyIntegerValue",
348
+ # double_value: "AssetPropertyDoubleValue",
349
+ # boolean_value: "AssetPropertyBooleanValue",
350
+ # }
351
+ #
352
+ # @!attribute [rw] string_value
353
+ # The asset property value is a string. You can also specify an
354
+ # expression. If you use an expression, the evaluated result should be
355
+ # a string.
356
+ # @return [String]
357
+ #
358
+ # @!attribute [rw] integer_value
359
+ # The asset property value is an integer. You can also specify an
360
+ # expression. If you use an expression, the evaluated result should be
361
+ # an integer.
362
+ # @return [String]
363
+ #
364
+ # @!attribute [rw] double_value
365
+ # The asset property value is a double. You can also specify an
366
+ # expression. If you use an expression, the evaluated result should be
367
+ # a double.
368
+ # @return [String]
369
+ #
370
+ # @!attribute [rw] boolean_value
371
+ # The asset property value is a Boolean value that must be `TRUE` or
372
+ # `FALSE`. You can also specify an expression. If you use an
373
+ # expression, the evaluated result should be a Boolean value.
374
+ # @return [String]
375
+ #
376
+ class AssetPropertyVariant < Struct.new(
377
+ :string_value,
378
+ :integer_value,
379
+ :double_value,
380
+ :boolean_value)
111
381
  include Aws::Structure
112
382
  end
113
383
 
@@ -181,9 +451,17 @@ module Aws::IoTEvents
181
451
  # },
182
452
  # sns: {
183
453
  # target_arn: "AmazonResourceName", # required
454
+ # payload: {
455
+ # content_expression: "ContentExpression", # required
456
+ # type: "STRING", # required, accepts STRING, JSON
457
+ # },
184
458
  # },
185
459
  # iot_topic_publish: {
186
460
  # mqtt_topic: "MQTTTopic", # required
461
+ # payload: {
462
+ # content_expression: "ContentExpression", # required
463
+ # type: "STRING", # required, accepts STRING, JSON
464
+ # },
187
465
  # },
188
466
  # set_timer: {
189
467
  # timer_name: "TimerName", # required
@@ -198,17 +476,74 @@ module Aws::IoTEvents
198
476
  # },
199
477
  # lambda: {
200
478
  # function_arn: "AmazonResourceName", # required
479
+ # payload: {
480
+ # content_expression: "ContentExpression", # required
481
+ # type: "STRING", # required, accepts STRING, JSON
482
+ # },
201
483
  # },
202
484
  # iot_events: {
203
485
  # input_name: "InputName", # required
486
+ # payload: {
487
+ # content_expression: "ContentExpression", # required
488
+ # type: "STRING", # required, accepts STRING, JSON
489
+ # },
204
490
  # },
205
491
  # sqs: {
206
492
  # queue_url: "QueueUrl", # required
207
493
  # use_base_64: false,
494
+ # payload: {
495
+ # content_expression: "ContentExpression", # required
496
+ # type: "STRING", # required, accepts STRING, JSON
497
+ # },
208
498
  # },
209
499
  # firehose: {
210
500
  # delivery_stream_name: "DeliveryStreamName", # required
211
501
  # separator: "FirehoseSeparator",
502
+ # payload: {
503
+ # content_expression: "ContentExpression", # required
504
+ # type: "STRING", # required, accepts STRING, JSON
505
+ # },
506
+ # },
507
+ # dynamo_db: {
508
+ # hash_key_type: "DynamoKeyType",
509
+ # hash_key_field: "DynamoKeyField", # required
510
+ # hash_key_value: "DynamoKeyValue", # required
511
+ # range_key_type: "DynamoKeyType",
512
+ # range_key_field: "DynamoKeyField",
513
+ # range_key_value: "DynamoKeyValue",
514
+ # operation: "DynamoOperation",
515
+ # payload_field: "DynamoKeyField",
516
+ # table_name: "DynamoTableName", # required
517
+ # payload: {
518
+ # content_expression: "ContentExpression", # required
519
+ # type: "STRING", # required, accepts STRING, JSON
520
+ # },
521
+ # },
522
+ # dynamo_d_bv_2: {
523
+ # table_name: "DynamoTableName", # required
524
+ # payload: {
525
+ # content_expression: "ContentExpression", # required
526
+ # type: "STRING", # required, accepts STRING, JSON
527
+ # },
528
+ # },
529
+ # iot_site_wise: {
530
+ # entry_id: "AssetPropertyEntryId",
531
+ # asset_id: "AssetId",
532
+ # property_id: "AssetPropertyId",
533
+ # property_alias: "AssetPropertyAlias",
534
+ # property_value: { # required
535
+ # value: { # required
536
+ # string_value: "AssetPropertyStringValue",
537
+ # integer_value: "AssetPropertyIntegerValue",
538
+ # double_value: "AssetPropertyDoubleValue",
539
+ # boolean_value: "AssetPropertyBooleanValue",
540
+ # },
541
+ # timestamp: {
542
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
543
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
544
+ # },
545
+ # quality: "AssetPropertyQuality",
546
+ # },
212
547
  # },
213
548
  # },
214
549
  # ],
@@ -226,9 +561,17 @@ module Aws::IoTEvents
226
561
  # },
227
562
  # sns: {
228
563
  # target_arn: "AmazonResourceName", # required
564
+ # payload: {
565
+ # content_expression: "ContentExpression", # required
566
+ # type: "STRING", # required, accepts STRING, JSON
567
+ # },
229
568
  # },
230
569
  # iot_topic_publish: {
231
570
  # mqtt_topic: "MQTTTopic", # required
571
+ # payload: {
572
+ # content_expression: "ContentExpression", # required
573
+ # type: "STRING", # required, accepts STRING, JSON
574
+ # },
232
575
  # },
233
576
  # set_timer: {
234
577
  # timer_name: "TimerName", # required
@@ -243,17 +586,74 @@ module Aws::IoTEvents
243
586
  # },
244
587
  # lambda: {
245
588
  # function_arn: "AmazonResourceName", # required
589
+ # payload: {
590
+ # content_expression: "ContentExpression", # required
591
+ # type: "STRING", # required, accepts STRING, JSON
592
+ # },
246
593
  # },
247
594
  # iot_events: {
248
595
  # input_name: "InputName", # required
596
+ # payload: {
597
+ # content_expression: "ContentExpression", # required
598
+ # type: "STRING", # required, accepts STRING, JSON
599
+ # },
249
600
  # },
250
601
  # sqs: {
251
602
  # queue_url: "QueueUrl", # required
252
603
  # use_base_64: false,
604
+ # payload: {
605
+ # content_expression: "ContentExpression", # required
606
+ # type: "STRING", # required, accepts STRING, JSON
607
+ # },
253
608
  # },
254
609
  # firehose: {
255
610
  # delivery_stream_name: "DeliveryStreamName", # required
256
611
  # separator: "FirehoseSeparator",
612
+ # payload: {
613
+ # content_expression: "ContentExpression", # required
614
+ # type: "STRING", # required, accepts STRING, JSON
615
+ # },
616
+ # },
617
+ # dynamo_db: {
618
+ # hash_key_type: "DynamoKeyType",
619
+ # hash_key_field: "DynamoKeyField", # required
620
+ # hash_key_value: "DynamoKeyValue", # required
621
+ # range_key_type: "DynamoKeyType",
622
+ # range_key_field: "DynamoKeyField",
623
+ # range_key_value: "DynamoKeyValue",
624
+ # operation: "DynamoOperation",
625
+ # payload_field: "DynamoKeyField",
626
+ # table_name: "DynamoTableName", # required
627
+ # payload: {
628
+ # content_expression: "ContentExpression", # required
629
+ # type: "STRING", # required, accepts STRING, JSON
630
+ # },
631
+ # },
632
+ # dynamo_d_bv_2: {
633
+ # table_name: "DynamoTableName", # required
634
+ # payload: {
635
+ # content_expression: "ContentExpression", # required
636
+ # type: "STRING", # required, accepts STRING, JSON
637
+ # },
638
+ # },
639
+ # iot_site_wise: {
640
+ # entry_id: "AssetPropertyEntryId",
641
+ # asset_id: "AssetId",
642
+ # property_id: "AssetPropertyId",
643
+ # property_alias: "AssetPropertyAlias",
644
+ # property_value: { # required
645
+ # value: { # required
646
+ # string_value: "AssetPropertyStringValue",
647
+ # integer_value: "AssetPropertyIntegerValue",
648
+ # double_value: "AssetPropertyDoubleValue",
649
+ # boolean_value: "AssetPropertyBooleanValue",
650
+ # },
651
+ # timestamp: {
652
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
653
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
654
+ # },
655
+ # quality: "AssetPropertyQuality",
656
+ # },
257
657
  # },
258
658
  # },
259
659
  # ],
@@ -274,9 +674,17 @@ module Aws::IoTEvents
274
674
  # },
275
675
  # sns: {
276
676
  # target_arn: "AmazonResourceName", # required
677
+ # payload: {
678
+ # content_expression: "ContentExpression", # required
679
+ # type: "STRING", # required, accepts STRING, JSON
680
+ # },
277
681
  # },
278
682
  # iot_topic_publish: {
279
683
  # mqtt_topic: "MQTTTopic", # required
684
+ # payload: {
685
+ # content_expression: "ContentExpression", # required
686
+ # type: "STRING", # required, accepts STRING, JSON
687
+ # },
280
688
  # },
281
689
  # set_timer: {
282
690
  # timer_name: "TimerName", # required
@@ -291,17 +699,74 @@ module Aws::IoTEvents
291
699
  # },
292
700
  # lambda: {
293
701
  # function_arn: "AmazonResourceName", # required
702
+ # payload: {
703
+ # content_expression: "ContentExpression", # required
704
+ # type: "STRING", # required, accepts STRING, JSON
705
+ # },
294
706
  # },
295
707
  # iot_events: {
296
708
  # input_name: "InputName", # required
709
+ # payload: {
710
+ # content_expression: "ContentExpression", # required
711
+ # type: "STRING", # required, accepts STRING, JSON
712
+ # },
297
713
  # },
298
714
  # sqs: {
299
715
  # queue_url: "QueueUrl", # required
300
716
  # use_base_64: false,
717
+ # payload: {
718
+ # content_expression: "ContentExpression", # required
719
+ # type: "STRING", # required, accepts STRING, JSON
720
+ # },
301
721
  # },
302
722
  # firehose: {
303
723
  # delivery_stream_name: "DeliveryStreamName", # required
304
724
  # separator: "FirehoseSeparator",
725
+ # payload: {
726
+ # content_expression: "ContentExpression", # required
727
+ # type: "STRING", # required, accepts STRING, JSON
728
+ # },
729
+ # },
730
+ # dynamo_db: {
731
+ # hash_key_type: "DynamoKeyType",
732
+ # hash_key_field: "DynamoKeyField", # required
733
+ # hash_key_value: "DynamoKeyValue", # required
734
+ # range_key_type: "DynamoKeyType",
735
+ # range_key_field: "DynamoKeyField",
736
+ # range_key_value: "DynamoKeyValue",
737
+ # operation: "DynamoOperation",
738
+ # payload_field: "DynamoKeyField",
739
+ # table_name: "DynamoTableName", # required
740
+ # payload: {
741
+ # content_expression: "ContentExpression", # required
742
+ # type: "STRING", # required, accepts STRING, JSON
743
+ # },
744
+ # },
745
+ # dynamo_d_bv_2: {
746
+ # table_name: "DynamoTableName", # required
747
+ # payload: {
748
+ # content_expression: "ContentExpression", # required
749
+ # type: "STRING", # required, accepts STRING, JSON
750
+ # },
751
+ # },
752
+ # iot_site_wise: {
753
+ # entry_id: "AssetPropertyEntryId",
754
+ # asset_id: "AssetId",
755
+ # property_id: "AssetPropertyId",
756
+ # property_alias: "AssetPropertyAlias",
757
+ # property_value: { # required
758
+ # value: { # required
759
+ # string_value: "AssetPropertyStringValue",
760
+ # integer_value: "AssetPropertyIntegerValue",
761
+ # double_value: "AssetPropertyDoubleValue",
762
+ # boolean_value: "AssetPropertyBooleanValue",
763
+ # },
764
+ # timestamp: {
765
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
766
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
767
+ # },
768
+ # quality: "AssetPropertyQuality",
769
+ # },
305
770
  # },
306
771
  # },
307
772
  # ],
@@ -321,9 +786,17 @@ module Aws::IoTEvents
321
786
  # },
322
787
  # sns: {
323
788
  # target_arn: "AmazonResourceName", # required
789
+ # payload: {
790
+ # content_expression: "ContentExpression", # required
791
+ # type: "STRING", # required, accepts STRING, JSON
792
+ # },
324
793
  # },
325
794
  # iot_topic_publish: {
326
795
  # mqtt_topic: "MQTTTopic", # required
796
+ # payload: {
797
+ # content_expression: "ContentExpression", # required
798
+ # type: "STRING", # required, accepts STRING, JSON
799
+ # },
327
800
  # },
328
801
  # set_timer: {
329
802
  # timer_name: "TimerName", # required
@@ -338,17 +811,74 @@ module Aws::IoTEvents
338
811
  # },
339
812
  # lambda: {
340
813
  # function_arn: "AmazonResourceName", # required
814
+ # payload: {
815
+ # content_expression: "ContentExpression", # required
816
+ # type: "STRING", # required, accepts STRING, JSON
817
+ # },
341
818
  # },
342
819
  # iot_events: {
343
820
  # input_name: "InputName", # required
821
+ # payload: {
822
+ # content_expression: "ContentExpression", # required
823
+ # type: "STRING", # required, accepts STRING, JSON
824
+ # },
344
825
  # },
345
826
  # sqs: {
346
827
  # queue_url: "QueueUrl", # required
347
828
  # use_base_64: false,
829
+ # payload: {
830
+ # content_expression: "ContentExpression", # required
831
+ # type: "STRING", # required, accepts STRING, JSON
832
+ # },
348
833
  # },
349
834
  # firehose: {
350
835
  # delivery_stream_name: "DeliveryStreamName", # required
351
836
  # separator: "FirehoseSeparator",
837
+ # payload: {
838
+ # content_expression: "ContentExpression", # required
839
+ # type: "STRING", # required, accepts STRING, JSON
840
+ # },
841
+ # },
842
+ # dynamo_db: {
843
+ # hash_key_type: "DynamoKeyType",
844
+ # hash_key_field: "DynamoKeyField", # required
845
+ # hash_key_value: "DynamoKeyValue", # required
846
+ # range_key_type: "DynamoKeyType",
847
+ # range_key_field: "DynamoKeyField",
848
+ # range_key_value: "DynamoKeyValue",
849
+ # operation: "DynamoOperation",
850
+ # payload_field: "DynamoKeyField",
851
+ # table_name: "DynamoTableName", # required
852
+ # payload: {
853
+ # content_expression: "ContentExpression", # required
854
+ # type: "STRING", # required, accepts STRING, JSON
855
+ # },
856
+ # },
857
+ # dynamo_d_bv_2: {
858
+ # table_name: "DynamoTableName", # required
859
+ # payload: {
860
+ # content_expression: "ContentExpression", # required
861
+ # type: "STRING", # required, accepts STRING, JSON
862
+ # },
863
+ # },
864
+ # iot_site_wise: {
865
+ # entry_id: "AssetPropertyEntryId",
866
+ # asset_id: "AssetId",
867
+ # property_id: "AssetPropertyId",
868
+ # property_alias: "AssetPropertyAlias",
869
+ # property_value: { # required
870
+ # value: { # required
871
+ # string_value: "AssetPropertyStringValue",
872
+ # integer_value: "AssetPropertyIntegerValue",
873
+ # double_value: "AssetPropertyDoubleValue",
874
+ # boolean_value: "AssetPropertyBooleanValue",
875
+ # },
876
+ # timestamp: {
877
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
878
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
879
+ # },
880
+ # quality: "AssetPropertyQuality",
881
+ # },
352
882
  # },
353
883
  # },
354
884
  # ],
@@ -663,12 +1193,17 @@ module Aws::IoTEvents
663
1193
  # @return [String]
664
1194
  #
665
1195
  # @!attribute [rw] key
666
- # The input attribute key used to identify a device or system to
667
- # create a detector (an instance of the detector model) and then to
668
- # route each input received to the appropriate detector (instance).
669
- # This parameter uses a JSON-path expression in the message payload of
670
- # each input to specify the attribute-value pair that is used to
671
- # identify the device associated with the input.
1196
+ # The value used to identify a detector instance. When a device or
1197
+ # system sends input, a new detector instance with a unique key value
1198
+ # is created. AWS IoT Events can continue to route input to its
1199
+ # corresponding detector instance based on this identifying
1200
+ # information.
1201
+ #
1202
+ # This parameter uses a JSON-path expression to select the
1203
+ # attribute-value pair in the message payload that is used for
1204
+ # identification. To route the message to the correct detector
1205
+ # instance, the device must send a message payload that contains the
1206
+ # same attribute-value.
672
1207
  # @return [String]
673
1208
  #
674
1209
  # @!attribute [rw] evaluation_method
@@ -712,9 +1247,17 @@ module Aws::IoTEvents
712
1247
  # },
713
1248
  # sns: {
714
1249
  # target_arn: "AmazonResourceName", # required
1250
+ # payload: {
1251
+ # content_expression: "ContentExpression", # required
1252
+ # type: "STRING", # required, accepts STRING, JSON
1253
+ # },
715
1254
  # },
716
1255
  # iot_topic_publish: {
717
1256
  # mqtt_topic: "MQTTTopic", # required
1257
+ # payload: {
1258
+ # content_expression: "ContentExpression", # required
1259
+ # type: "STRING", # required, accepts STRING, JSON
1260
+ # },
718
1261
  # },
719
1262
  # set_timer: {
720
1263
  # timer_name: "TimerName", # required
@@ -729,17 +1272,74 @@ module Aws::IoTEvents
729
1272
  # },
730
1273
  # lambda: {
731
1274
  # function_arn: "AmazonResourceName", # required
1275
+ # payload: {
1276
+ # content_expression: "ContentExpression", # required
1277
+ # type: "STRING", # required, accepts STRING, JSON
1278
+ # },
732
1279
  # },
733
1280
  # iot_events: {
734
1281
  # input_name: "InputName", # required
1282
+ # payload: {
1283
+ # content_expression: "ContentExpression", # required
1284
+ # type: "STRING", # required, accepts STRING, JSON
1285
+ # },
735
1286
  # },
736
1287
  # sqs: {
737
1288
  # queue_url: "QueueUrl", # required
738
1289
  # use_base_64: false,
1290
+ # payload: {
1291
+ # content_expression: "ContentExpression", # required
1292
+ # type: "STRING", # required, accepts STRING, JSON
1293
+ # },
739
1294
  # },
740
1295
  # firehose: {
741
1296
  # delivery_stream_name: "DeliveryStreamName", # required
742
1297
  # separator: "FirehoseSeparator",
1298
+ # payload: {
1299
+ # content_expression: "ContentExpression", # required
1300
+ # type: "STRING", # required, accepts STRING, JSON
1301
+ # },
1302
+ # },
1303
+ # dynamo_db: {
1304
+ # hash_key_type: "DynamoKeyType",
1305
+ # hash_key_field: "DynamoKeyField", # required
1306
+ # hash_key_value: "DynamoKeyValue", # required
1307
+ # range_key_type: "DynamoKeyType",
1308
+ # range_key_field: "DynamoKeyField",
1309
+ # range_key_value: "DynamoKeyValue",
1310
+ # operation: "DynamoOperation",
1311
+ # payload_field: "DynamoKeyField",
1312
+ # table_name: "DynamoTableName", # required
1313
+ # payload: {
1314
+ # content_expression: "ContentExpression", # required
1315
+ # type: "STRING", # required, accepts STRING, JSON
1316
+ # },
1317
+ # },
1318
+ # dynamo_d_bv_2: {
1319
+ # table_name: "DynamoTableName", # required
1320
+ # payload: {
1321
+ # content_expression: "ContentExpression", # required
1322
+ # type: "STRING", # required, accepts STRING, JSON
1323
+ # },
1324
+ # },
1325
+ # iot_site_wise: {
1326
+ # entry_id: "AssetPropertyEntryId",
1327
+ # asset_id: "AssetId",
1328
+ # property_id: "AssetPropertyId",
1329
+ # property_alias: "AssetPropertyAlias",
1330
+ # property_value: { # required
1331
+ # value: { # required
1332
+ # string_value: "AssetPropertyStringValue",
1333
+ # integer_value: "AssetPropertyIntegerValue",
1334
+ # double_value: "AssetPropertyDoubleValue",
1335
+ # boolean_value: "AssetPropertyBooleanValue",
1336
+ # },
1337
+ # timestamp: {
1338
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
1339
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
1340
+ # },
1341
+ # quality: "AssetPropertyQuality",
1342
+ # },
743
1343
  # },
744
1344
  # },
745
1345
  # ],
@@ -757,9 +1357,17 @@ module Aws::IoTEvents
757
1357
  # },
758
1358
  # sns: {
759
1359
  # target_arn: "AmazonResourceName", # required
1360
+ # payload: {
1361
+ # content_expression: "ContentExpression", # required
1362
+ # type: "STRING", # required, accepts STRING, JSON
1363
+ # },
760
1364
  # },
761
1365
  # iot_topic_publish: {
762
1366
  # mqtt_topic: "MQTTTopic", # required
1367
+ # payload: {
1368
+ # content_expression: "ContentExpression", # required
1369
+ # type: "STRING", # required, accepts STRING, JSON
1370
+ # },
763
1371
  # },
764
1372
  # set_timer: {
765
1373
  # timer_name: "TimerName", # required
@@ -774,17 +1382,74 @@ module Aws::IoTEvents
774
1382
  # },
775
1383
  # lambda: {
776
1384
  # function_arn: "AmazonResourceName", # required
1385
+ # payload: {
1386
+ # content_expression: "ContentExpression", # required
1387
+ # type: "STRING", # required, accepts STRING, JSON
1388
+ # },
777
1389
  # },
778
1390
  # iot_events: {
779
1391
  # input_name: "InputName", # required
1392
+ # payload: {
1393
+ # content_expression: "ContentExpression", # required
1394
+ # type: "STRING", # required, accepts STRING, JSON
1395
+ # },
780
1396
  # },
781
1397
  # sqs: {
782
1398
  # queue_url: "QueueUrl", # required
783
1399
  # use_base_64: false,
1400
+ # payload: {
1401
+ # content_expression: "ContentExpression", # required
1402
+ # type: "STRING", # required, accepts STRING, JSON
1403
+ # },
784
1404
  # },
785
1405
  # firehose: {
786
1406
  # delivery_stream_name: "DeliveryStreamName", # required
787
1407
  # separator: "FirehoseSeparator",
1408
+ # payload: {
1409
+ # content_expression: "ContentExpression", # required
1410
+ # type: "STRING", # required, accepts STRING, JSON
1411
+ # },
1412
+ # },
1413
+ # dynamo_db: {
1414
+ # hash_key_type: "DynamoKeyType",
1415
+ # hash_key_field: "DynamoKeyField", # required
1416
+ # hash_key_value: "DynamoKeyValue", # required
1417
+ # range_key_type: "DynamoKeyType",
1418
+ # range_key_field: "DynamoKeyField",
1419
+ # range_key_value: "DynamoKeyValue",
1420
+ # operation: "DynamoOperation",
1421
+ # payload_field: "DynamoKeyField",
1422
+ # table_name: "DynamoTableName", # required
1423
+ # payload: {
1424
+ # content_expression: "ContentExpression", # required
1425
+ # type: "STRING", # required, accepts STRING, JSON
1426
+ # },
1427
+ # },
1428
+ # dynamo_d_bv_2: {
1429
+ # table_name: "DynamoTableName", # required
1430
+ # payload: {
1431
+ # content_expression: "ContentExpression", # required
1432
+ # type: "STRING", # required, accepts STRING, JSON
1433
+ # },
1434
+ # },
1435
+ # iot_site_wise: {
1436
+ # entry_id: "AssetPropertyEntryId",
1437
+ # asset_id: "AssetId",
1438
+ # property_id: "AssetPropertyId",
1439
+ # property_alias: "AssetPropertyAlias",
1440
+ # property_value: { # required
1441
+ # value: { # required
1442
+ # string_value: "AssetPropertyStringValue",
1443
+ # integer_value: "AssetPropertyIntegerValue",
1444
+ # double_value: "AssetPropertyDoubleValue",
1445
+ # boolean_value: "AssetPropertyBooleanValue",
1446
+ # },
1447
+ # timestamp: {
1448
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
1449
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
1450
+ # },
1451
+ # quality: "AssetPropertyQuality",
1452
+ # },
788
1453
  # },
789
1454
  # },
790
1455
  # ],
@@ -805,9 +1470,17 @@ module Aws::IoTEvents
805
1470
  # },
806
1471
  # sns: {
807
1472
  # target_arn: "AmazonResourceName", # required
1473
+ # payload: {
1474
+ # content_expression: "ContentExpression", # required
1475
+ # type: "STRING", # required, accepts STRING, JSON
1476
+ # },
808
1477
  # },
809
1478
  # iot_topic_publish: {
810
1479
  # mqtt_topic: "MQTTTopic", # required
1480
+ # payload: {
1481
+ # content_expression: "ContentExpression", # required
1482
+ # type: "STRING", # required, accepts STRING, JSON
1483
+ # },
811
1484
  # },
812
1485
  # set_timer: {
813
1486
  # timer_name: "TimerName", # required
@@ -822,17 +1495,74 @@ module Aws::IoTEvents
822
1495
  # },
823
1496
  # lambda: {
824
1497
  # function_arn: "AmazonResourceName", # required
1498
+ # payload: {
1499
+ # content_expression: "ContentExpression", # required
1500
+ # type: "STRING", # required, accepts STRING, JSON
1501
+ # },
825
1502
  # },
826
1503
  # iot_events: {
827
1504
  # input_name: "InputName", # required
1505
+ # payload: {
1506
+ # content_expression: "ContentExpression", # required
1507
+ # type: "STRING", # required, accepts STRING, JSON
1508
+ # },
828
1509
  # },
829
1510
  # sqs: {
830
1511
  # queue_url: "QueueUrl", # required
831
1512
  # use_base_64: false,
1513
+ # payload: {
1514
+ # content_expression: "ContentExpression", # required
1515
+ # type: "STRING", # required, accepts STRING, JSON
1516
+ # },
832
1517
  # },
833
1518
  # firehose: {
834
1519
  # delivery_stream_name: "DeliveryStreamName", # required
835
1520
  # separator: "FirehoseSeparator",
1521
+ # payload: {
1522
+ # content_expression: "ContentExpression", # required
1523
+ # type: "STRING", # required, accepts STRING, JSON
1524
+ # },
1525
+ # },
1526
+ # dynamo_db: {
1527
+ # hash_key_type: "DynamoKeyType",
1528
+ # hash_key_field: "DynamoKeyField", # required
1529
+ # hash_key_value: "DynamoKeyValue", # required
1530
+ # range_key_type: "DynamoKeyType",
1531
+ # range_key_field: "DynamoKeyField",
1532
+ # range_key_value: "DynamoKeyValue",
1533
+ # operation: "DynamoOperation",
1534
+ # payload_field: "DynamoKeyField",
1535
+ # table_name: "DynamoTableName", # required
1536
+ # payload: {
1537
+ # content_expression: "ContentExpression", # required
1538
+ # type: "STRING", # required, accepts STRING, JSON
1539
+ # },
1540
+ # },
1541
+ # dynamo_d_bv_2: {
1542
+ # table_name: "DynamoTableName", # required
1543
+ # payload: {
1544
+ # content_expression: "ContentExpression", # required
1545
+ # type: "STRING", # required, accepts STRING, JSON
1546
+ # },
1547
+ # },
1548
+ # iot_site_wise: {
1549
+ # entry_id: "AssetPropertyEntryId",
1550
+ # asset_id: "AssetId",
1551
+ # property_id: "AssetPropertyId",
1552
+ # property_alias: "AssetPropertyAlias",
1553
+ # property_value: { # required
1554
+ # value: { # required
1555
+ # string_value: "AssetPropertyStringValue",
1556
+ # integer_value: "AssetPropertyIntegerValue",
1557
+ # double_value: "AssetPropertyDoubleValue",
1558
+ # boolean_value: "AssetPropertyBooleanValue",
1559
+ # },
1560
+ # timestamp: {
1561
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
1562
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
1563
+ # },
1564
+ # quality: "AssetPropertyQuality",
1565
+ # },
836
1566
  # },
837
1567
  # },
838
1568
  # ],
@@ -852,9 +1582,17 @@ module Aws::IoTEvents
852
1582
  # },
853
1583
  # sns: {
854
1584
  # target_arn: "AmazonResourceName", # required
1585
+ # payload: {
1586
+ # content_expression: "ContentExpression", # required
1587
+ # type: "STRING", # required, accepts STRING, JSON
1588
+ # },
855
1589
  # },
856
1590
  # iot_topic_publish: {
857
1591
  # mqtt_topic: "MQTTTopic", # required
1592
+ # payload: {
1593
+ # content_expression: "ContentExpression", # required
1594
+ # type: "STRING", # required, accepts STRING, JSON
1595
+ # },
858
1596
  # },
859
1597
  # set_timer: {
860
1598
  # timer_name: "TimerName", # required
@@ -869,17 +1607,74 @@ module Aws::IoTEvents
869
1607
  # },
870
1608
  # lambda: {
871
1609
  # function_arn: "AmazonResourceName", # required
1610
+ # payload: {
1611
+ # content_expression: "ContentExpression", # required
1612
+ # type: "STRING", # required, accepts STRING, JSON
1613
+ # },
872
1614
  # },
873
1615
  # iot_events: {
874
1616
  # input_name: "InputName", # required
1617
+ # payload: {
1618
+ # content_expression: "ContentExpression", # required
1619
+ # type: "STRING", # required, accepts STRING, JSON
1620
+ # },
875
1621
  # },
876
1622
  # sqs: {
877
1623
  # queue_url: "QueueUrl", # required
878
1624
  # use_base_64: false,
1625
+ # payload: {
1626
+ # content_expression: "ContentExpression", # required
1627
+ # type: "STRING", # required, accepts STRING, JSON
1628
+ # },
879
1629
  # },
880
1630
  # firehose: {
881
1631
  # delivery_stream_name: "DeliveryStreamName", # required
882
1632
  # separator: "FirehoseSeparator",
1633
+ # payload: {
1634
+ # content_expression: "ContentExpression", # required
1635
+ # type: "STRING", # required, accepts STRING, JSON
1636
+ # },
1637
+ # },
1638
+ # dynamo_db: {
1639
+ # hash_key_type: "DynamoKeyType",
1640
+ # hash_key_field: "DynamoKeyField", # required
1641
+ # hash_key_value: "DynamoKeyValue", # required
1642
+ # range_key_type: "DynamoKeyType",
1643
+ # range_key_field: "DynamoKeyField",
1644
+ # range_key_value: "DynamoKeyValue",
1645
+ # operation: "DynamoOperation",
1646
+ # payload_field: "DynamoKeyField",
1647
+ # table_name: "DynamoTableName", # required
1648
+ # payload: {
1649
+ # content_expression: "ContentExpression", # required
1650
+ # type: "STRING", # required, accepts STRING, JSON
1651
+ # },
1652
+ # },
1653
+ # dynamo_d_bv_2: {
1654
+ # table_name: "DynamoTableName", # required
1655
+ # payload: {
1656
+ # content_expression: "ContentExpression", # required
1657
+ # type: "STRING", # required, accepts STRING, JSON
1658
+ # },
1659
+ # },
1660
+ # iot_site_wise: {
1661
+ # entry_id: "AssetPropertyEntryId",
1662
+ # asset_id: "AssetId",
1663
+ # property_id: "AssetPropertyId",
1664
+ # property_alias: "AssetPropertyAlias",
1665
+ # property_value: { # required
1666
+ # value: { # required
1667
+ # string_value: "AssetPropertyStringValue",
1668
+ # integer_value: "AssetPropertyIntegerValue",
1669
+ # double_value: "AssetPropertyDoubleValue",
1670
+ # boolean_value: "AssetPropertyBooleanValue",
1671
+ # },
1672
+ # timestamp: {
1673
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
1674
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
1675
+ # },
1676
+ # quality: "AssetPropertyQuality",
1677
+ # },
883
1678
  # },
884
1679
  # },
885
1680
  # ],
@@ -975,6 +1770,207 @@ module Aws::IoTEvents
975
1770
  include Aws::Structure
976
1771
  end
977
1772
 
1773
+ # Defines an action to write to the Amazon DynamoDB table that you
1774
+ # created. The standard action payload contains all attribute-value
1775
+ # pairs that have the information about the detector model instance and
1776
+ # the event that triggered the action. You can also customize the
1777
+ # [payload][1]. One column of the DynamoDB table receives all
1778
+ # attribute-value pairs in the payload that you specify.
1779
+ #
1780
+ # The `tableName` and `hashKeyField` values must match the table name
1781
+ # and the partition key of the DynamoDB table.
1782
+ #
1783
+ # <note markdown="1"> If the DynamoDB table also has a sort key, you must specify
1784
+ # `rangeKeyField`. The `rangeKeyField` value must match the sort key.
1785
+ #
1786
+ # </note>
1787
+ #
1788
+ #
1789
+ #
1790
+ # The `hashKeyValue` and `rangeKeyValue` use substitution templates.
1791
+ # These templates provide data at runtime. The syntax is
1792
+ # `$\{sql-expression\}`.
1793
+ #
1794
+ # You can use expressions for parameters that are string data type. For
1795
+ # more information, see [Expressions][2] in the *AWS IoT Events
1796
+ # Developer Guide*.
1797
+ #
1798
+ # <note markdown="1"> If the defined payload type is a string, `DynamoDBAction` writes
1799
+ # non-JSON data to the DynamoDB table as binary data. The DynamoDB
1800
+ # console displays the data as Base64-encoded text. The `payloadField`
1801
+ # is `<payload-field>_raw`.
1802
+ #
1803
+ # </note>
1804
+ #
1805
+ #
1806
+ #
1807
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
1808
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
1809
+ #
1810
+ # @note When making an API call, you may pass DynamoDBAction
1811
+ # data as a hash:
1812
+ #
1813
+ # {
1814
+ # hash_key_type: "DynamoKeyType",
1815
+ # hash_key_field: "DynamoKeyField", # required
1816
+ # hash_key_value: "DynamoKeyValue", # required
1817
+ # range_key_type: "DynamoKeyType",
1818
+ # range_key_field: "DynamoKeyField",
1819
+ # range_key_value: "DynamoKeyValue",
1820
+ # operation: "DynamoOperation",
1821
+ # payload_field: "DynamoKeyField",
1822
+ # table_name: "DynamoTableName", # required
1823
+ # payload: {
1824
+ # content_expression: "ContentExpression", # required
1825
+ # type: "STRING", # required, accepts STRING, JSON
1826
+ # },
1827
+ # }
1828
+ #
1829
+ # @!attribute [rw] hash_key_type
1830
+ # The data type for the hash key (also called the partition key). You
1831
+ # can specify the following values:
1832
+ #
1833
+ # * `STRING` - The hash key is a string.
1834
+ #
1835
+ # * `NUMBER` - The hash key is a number.
1836
+ #
1837
+ # If you don't specify `hashKeyType`, the default value is `STRING`.
1838
+ # @return [String]
1839
+ #
1840
+ # @!attribute [rw] hash_key_field
1841
+ # The name of the hash key (also called the partition key).
1842
+ # @return [String]
1843
+ #
1844
+ # @!attribute [rw] hash_key_value
1845
+ # The value of the hash key (also called the partition key).
1846
+ # @return [String]
1847
+ #
1848
+ # @!attribute [rw] range_key_type
1849
+ # The data type for the range key (also called the sort key), You can
1850
+ # specify the following values:
1851
+ #
1852
+ # * `STRING` - The range key is a string.
1853
+ #
1854
+ # * `NUMBER` - The range key is number.
1855
+ #
1856
+ # If you don't specify `rangeKeyField`, the default value is
1857
+ # `STRING`.
1858
+ # @return [String]
1859
+ #
1860
+ # @!attribute [rw] range_key_field
1861
+ # The name of the range key (also called the sort key).
1862
+ # @return [String]
1863
+ #
1864
+ # @!attribute [rw] range_key_value
1865
+ # The value of the range key (also called the sort key).
1866
+ # @return [String]
1867
+ #
1868
+ # @!attribute [rw] operation
1869
+ # The type of operation to perform. You can specify the following
1870
+ # values:
1871
+ #
1872
+ # * `INSERT` - Insert data as a new item into the DynamoDB table. This
1873
+ # item uses the specified hash key as a partition key. If you
1874
+ # specified a range key, the item uses the range key as a sort key.
1875
+ #
1876
+ # * `UPDATE` - Update an existing item of the DynamoDB table with new
1877
+ # data. This item's partition key must match the specified hash
1878
+ # key. If you specified a range key, the range key must match the
1879
+ # item's sort key.
1880
+ #
1881
+ # * `DELETE` - Delete an existing item of the DynamoDB table. This
1882
+ # item's partition key must match the specified hash key. If you
1883
+ # specified a range key, the range key must match the item's sort
1884
+ # key.
1885
+ #
1886
+ # If you don't specify this parameter, AWS IoT Events triggers the
1887
+ # `INSERT` operation.
1888
+ # @return [String]
1889
+ #
1890
+ # @!attribute [rw] payload_field
1891
+ # The name of the DynamoDB column that receives the action payload.
1892
+ #
1893
+ # If you don't specify this parameter, the name of the DynamoDB
1894
+ # column is `payload`.
1895
+ # @return [String]
1896
+ #
1897
+ # @!attribute [rw] table_name
1898
+ # The name of the DynamoDB table.
1899
+ # @return [String]
1900
+ #
1901
+ # @!attribute [rw] payload
1902
+ # Information needed to configure the payload.
1903
+ #
1904
+ # By default, AWS IoT Events generates a standard payload in JSON for
1905
+ # any action. This action payload contains all attribute-value pairs
1906
+ # that have the information about the detector model instance and the
1907
+ # event triggered the action. To configure the action payload, you can
1908
+ # use `contentExpression`.
1909
+ # @return [Types::Payload]
1910
+ #
1911
+ class DynamoDBAction < Struct.new(
1912
+ :hash_key_type,
1913
+ :hash_key_field,
1914
+ :hash_key_value,
1915
+ :range_key_type,
1916
+ :range_key_field,
1917
+ :range_key_value,
1918
+ :operation,
1919
+ :payload_field,
1920
+ :table_name,
1921
+ :payload)
1922
+ include Aws::Structure
1923
+ end
1924
+
1925
+ # Defines an action to write to the Amazon DynamoDB table that you
1926
+ # created. The default action payload contains all attribute-value pairs
1927
+ # that have the information about the detector model instance and the
1928
+ # event that triggered the action. You can also customize the
1929
+ # [payload][1]. A separate column of the DynamoDB table receives one
1930
+ # attribute-value pair in the payload that you specify.
1931
+ #
1932
+ # The `type` value for `Payload` must be `JSON`.
1933
+ #
1934
+ # You can use expressions for parameters that are strings. For more
1935
+ # information, see [Expressions][2] in the *AWS IoT Events Developer
1936
+ # Guide*.
1937
+ #
1938
+ #
1939
+ #
1940
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/apireference/API_Payload.html
1941
+ # [2]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
1942
+ #
1943
+ # @note When making an API call, you may pass DynamoDBv2Action
1944
+ # data as a hash:
1945
+ #
1946
+ # {
1947
+ # table_name: "DynamoTableName", # required
1948
+ # payload: {
1949
+ # content_expression: "ContentExpression", # required
1950
+ # type: "STRING", # required, accepts STRING, JSON
1951
+ # },
1952
+ # }
1953
+ #
1954
+ # @!attribute [rw] table_name
1955
+ # The name of the DynamoDB table.
1956
+ # @return [String]
1957
+ #
1958
+ # @!attribute [rw] payload
1959
+ # Information needed to configure the payload.
1960
+ #
1961
+ # By default, AWS IoT Events generates a standard payload in JSON for
1962
+ # any action. This action payload contains all attribute-value pairs
1963
+ # that have the information about the detector model instance and the
1964
+ # event triggered the action. To configure the action payload, you can
1965
+ # use `contentExpression`.
1966
+ # @return [Types::Payload]
1967
+ #
1968
+ class DynamoDBv2Action < Struct.new(
1969
+ :table_name,
1970
+ :payload)
1971
+ include Aws::Structure
1972
+ end
1973
+
978
1974
  # Specifies the `actions` to be performed when the `condition` evaluates
979
1975
  # to TRUE.
980
1976
  #
@@ -992,9 +1988,17 @@ module Aws::IoTEvents
992
1988
  # },
993
1989
  # sns: {
994
1990
  # target_arn: "AmazonResourceName", # required
1991
+ # payload: {
1992
+ # content_expression: "ContentExpression", # required
1993
+ # type: "STRING", # required, accepts STRING, JSON
1994
+ # },
995
1995
  # },
996
1996
  # iot_topic_publish: {
997
1997
  # mqtt_topic: "MQTTTopic", # required
1998
+ # payload: {
1999
+ # content_expression: "ContentExpression", # required
2000
+ # type: "STRING", # required, accepts STRING, JSON
2001
+ # },
998
2002
  # },
999
2003
  # set_timer: {
1000
2004
  # timer_name: "TimerName", # required
@@ -1009,17 +2013,74 @@ module Aws::IoTEvents
1009
2013
  # },
1010
2014
  # lambda: {
1011
2015
  # function_arn: "AmazonResourceName", # required
2016
+ # payload: {
2017
+ # content_expression: "ContentExpression", # required
2018
+ # type: "STRING", # required, accepts STRING, JSON
2019
+ # },
1012
2020
  # },
1013
2021
  # iot_events: {
1014
2022
  # input_name: "InputName", # required
2023
+ # payload: {
2024
+ # content_expression: "ContentExpression", # required
2025
+ # type: "STRING", # required, accepts STRING, JSON
2026
+ # },
1015
2027
  # },
1016
2028
  # sqs: {
1017
2029
  # queue_url: "QueueUrl", # required
1018
2030
  # use_base_64: false,
2031
+ # payload: {
2032
+ # content_expression: "ContentExpression", # required
2033
+ # type: "STRING", # required, accepts STRING, JSON
2034
+ # },
1019
2035
  # },
1020
2036
  # firehose: {
1021
2037
  # delivery_stream_name: "DeliveryStreamName", # required
1022
2038
  # separator: "FirehoseSeparator",
2039
+ # payload: {
2040
+ # content_expression: "ContentExpression", # required
2041
+ # type: "STRING", # required, accepts STRING, JSON
2042
+ # },
2043
+ # },
2044
+ # dynamo_db: {
2045
+ # hash_key_type: "DynamoKeyType",
2046
+ # hash_key_field: "DynamoKeyField", # required
2047
+ # hash_key_value: "DynamoKeyValue", # required
2048
+ # range_key_type: "DynamoKeyType",
2049
+ # range_key_field: "DynamoKeyField",
2050
+ # range_key_value: "DynamoKeyValue",
2051
+ # operation: "DynamoOperation",
2052
+ # payload_field: "DynamoKeyField",
2053
+ # table_name: "DynamoTableName", # required
2054
+ # payload: {
2055
+ # content_expression: "ContentExpression", # required
2056
+ # type: "STRING", # required, accepts STRING, JSON
2057
+ # },
2058
+ # },
2059
+ # dynamo_d_bv_2: {
2060
+ # table_name: "DynamoTableName", # required
2061
+ # payload: {
2062
+ # content_expression: "ContentExpression", # required
2063
+ # type: "STRING", # required, accepts STRING, JSON
2064
+ # },
2065
+ # },
2066
+ # iot_site_wise: {
2067
+ # entry_id: "AssetPropertyEntryId",
2068
+ # asset_id: "AssetId",
2069
+ # property_id: "AssetPropertyId",
2070
+ # property_alias: "AssetPropertyAlias",
2071
+ # property_value: { # required
2072
+ # value: { # required
2073
+ # string_value: "AssetPropertyStringValue",
2074
+ # integer_value: "AssetPropertyIntegerValue",
2075
+ # double_value: "AssetPropertyDoubleValue",
2076
+ # boolean_value: "AssetPropertyBooleanValue",
2077
+ # },
2078
+ # timestamp: {
2079
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
2080
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
2081
+ # },
2082
+ # quality: "AssetPropertyQuality",
2083
+ # },
1023
2084
  # },
1024
2085
  # },
1025
2086
  # ],
@@ -1057,6 +2118,10 @@ module Aws::IoTEvents
1057
2118
  # {
1058
2119
  # delivery_stream_name: "DeliveryStreamName", # required
1059
2120
  # separator: "FirehoseSeparator",
2121
+ # payload: {
2122
+ # content_expression: "ContentExpression", # required
2123
+ # type: "STRING", # required, accepts STRING, JSON
2124
+ # },
1060
2125
  # }
1061
2126
  #
1062
2127
  # @!attribute [rw] delivery_stream_name
@@ -1071,9 +2136,15 @@ module Aws::IoTEvents
1071
2136
  # (comma).
1072
2137
  # @return [String]
1073
2138
  #
2139
+ # @!attribute [rw] payload
2140
+ # You can configure the action payload when you send a message to an
2141
+ # Amazon Kinesis Data Firehose delivery stream.
2142
+ # @return [Types::Payload]
2143
+ #
1074
2144
  class FirehoseAction < Struct.new(
1075
2145
  :delivery_stream_name,
1076
- :separator)
2146
+ :separator,
2147
+ :payload)
1077
2148
  include Aws::Structure
1078
2149
  end
1079
2150
 
@@ -1222,14 +2293,105 @@ module Aws::IoTEvents
1222
2293
  #
1223
2294
  # {
1224
2295
  # input_name: "InputName", # required
2296
+ # payload: {
2297
+ # content_expression: "ContentExpression", # required
2298
+ # type: "STRING", # required, accepts STRING, JSON
2299
+ # },
1225
2300
  # }
1226
2301
  #
1227
2302
  # @!attribute [rw] input_name
1228
2303
  # The name of the AWS IoT Events input where the data is sent.
1229
2304
  # @return [String]
1230
2305
  #
2306
+ # @!attribute [rw] payload
2307
+ # You can configure the action payload when you send a message to an
2308
+ # AWS IoT Events input.
2309
+ # @return [Types::Payload]
2310
+ #
1231
2311
  class IotEventsAction < Struct.new(
1232
- :input_name)
2312
+ :input_name,
2313
+ :payload)
2314
+ include Aws::Structure
2315
+ end
2316
+
2317
+ # Sends information about the detector model instance and the event that
2318
+ # triggered the action to a specified asset property in AWS IoT
2319
+ # SiteWise.
2320
+ #
2321
+ # You must specify either `propertyAlias` or both `assetId` and
2322
+ # `propertyId` to identify the target asset property in AWS IoT
2323
+ # SiteWise.
2324
+ #
2325
+ # For parameters that are string data type, you can specify the
2326
+ # following options:
2327
+ #
2328
+ # * Use a string. For example, the `propertyAlias` value can be
2329
+ # `'/company/windfarm/3/turbine/7/temperature'`.
2330
+ #
2331
+ # * Use an expression. For example, the `propertyAlias` value can be
2332
+ # `'company/windfarm/$\{$input.TemperatureInput.sensorData.windfarmID\}/turbine/$\{$input.TemperatureInput.sensorData.turbineID\}/temperature'`.
2333
+ #
2334
+ # For more information, see [Expressions][1] in the *AWS IoT Events
2335
+ # Developer Guide*.
2336
+ #
2337
+ #
2338
+ #
2339
+ # [1]: https://docs.aws.amazon.com/iotevents/latest/developerguide/iotevents-expressions.html
2340
+ #
2341
+ # @note When making an API call, you may pass IotSiteWiseAction
2342
+ # data as a hash:
2343
+ #
2344
+ # {
2345
+ # entry_id: "AssetPropertyEntryId",
2346
+ # asset_id: "AssetId",
2347
+ # property_id: "AssetPropertyId",
2348
+ # property_alias: "AssetPropertyAlias",
2349
+ # property_value: { # required
2350
+ # value: { # required
2351
+ # string_value: "AssetPropertyStringValue",
2352
+ # integer_value: "AssetPropertyIntegerValue",
2353
+ # double_value: "AssetPropertyDoubleValue",
2354
+ # boolean_value: "AssetPropertyBooleanValue",
2355
+ # },
2356
+ # timestamp: {
2357
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
2358
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
2359
+ # },
2360
+ # quality: "AssetPropertyQuality",
2361
+ # },
2362
+ # }
2363
+ #
2364
+ # @!attribute [rw] entry_id
2365
+ # A unique identifier for this entry. You can use the entry ID to
2366
+ # track which data entry causes an error in case of failure. The
2367
+ # default is a new unique identifier. You can also specify an
2368
+ # expression.
2369
+ # @return [String]
2370
+ #
2371
+ # @!attribute [rw] asset_id
2372
+ # The ID of the asset that has the specified property. You can specify
2373
+ # an expression.
2374
+ # @return [String]
2375
+ #
2376
+ # @!attribute [rw] property_id
2377
+ # The ID of the asset property. You can specify an expression.
2378
+ # @return [String]
2379
+ #
2380
+ # @!attribute [rw] property_alias
2381
+ # The alias of the asset property. You can also specify an expression.
2382
+ # @return [String]
2383
+ #
2384
+ # @!attribute [rw] property_value
2385
+ # The value to send to the asset property. This value contains
2386
+ # timestamp, quality, and value (TQV) information.
2387
+ # @return [Types::AssetPropertyValue]
2388
+ #
2389
+ class IotSiteWiseAction < Struct.new(
2390
+ :entry_id,
2391
+ :asset_id,
2392
+ :property_id,
2393
+ :property_alias,
2394
+ :property_value)
1233
2395
  include Aws::Structure
1234
2396
  end
1235
2397
 
@@ -1241,6 +2403,10 @@ module Aws::IoTEvents
1241
2403
  #
1242
2404
  # {
1243
2405
  # mqtt_topic: "MQTTTopic", # required
2406
+ # payload: {
2407
+ # content_expression: "ContentExpression", # required
2408
+ # type: "STRING", # required, accepts STRING, JSON
2409
+ # },
1244
2410
  # }
1245
2411
  #
1246
2412
  # @!attribute [rw] mqtt_topic
@@ -1249,8 +2415,14 @@ module Aws::IoTEvents
1249
2415
  # (`$input.<input-name>.<path-to-datum>`) as the topic string.
1250
2416
  # @return [String]
1251
2417
  #
2418
+ # @!attribute [rw] payload
2419
+ # You can configure the action payload when you publish a message to
2420
+ # an AWS IoT Core topic.
2421
+ # @return [Types::Payload]
2422
+ #
1252
2423
  class IotTopicPublishAction < Struct.new(
1253
- :mqtt_topic)
2424
+ :mqtt_topic,
2425
+ :payload)
1254
2426
  include Aws::Structure
1255
2427
  end
1256
2428
 
@@ -1262,14 +2434,24 @@ module Aws::IoTEvents
1262
2434
  #
1263
2435
  # {
1264
2436
  # function_arn: "AmazonResourceName", # required
2437
+ # payload: {
2438
+ # content_expression: "ContentExpression", # required
2439
+ # type: "STRING", # required, accepts STRING, JSON
2440
+ # },
1265
2441
  # }
1266
2442
  #
1267
2443
  # @!attribute [rw] function_arn
1268
2444
  # The ARN of the Lambda function that is executed.
1269
2445
  # @return [String]
1270
2446
  #
2447
+ # @!attribute [rw] payload
2448
+ # You can configure the action payload when you send a message to a
2449
+ # Lambda function.
2450
+ # @return [Types::Payload]
2451
+ #
1271
2452
  class LambdaAction < Struct.new(
1272
- :function_arn)
2453
+ :function_arn,
2454
+ :payload)
1273
2455
  include Aws::Structure
1274
2456
  end
1275
2457
 
@@ -1488,9 +2670,17 @@ module Aws::IoTEvents
1488
2670
  # },
1489
2671
  # sns: {
1490
2672
  # target_arn: "AmazonResourceName", # required
2673
+ # payload: {
2674
+ # content_expression: "ContentExpression", # required
2675
+ # type: "STRING", # required, accepts STRING, JSON
2676
+ # },
1491
2677
  # },
1492
2678
  # iot_topic_publish: {
1493
2679
  # mqtt_topic: "MQTTTopic", # required
2680
+ # payload: {
2681
+ # content_expression: "ContentExpression", # required
2682
+ # type: "STRING", # required, accepts STRING, JSON
2683
+ # },
1494
2684
  # },
1495
2685
  # set_timer: {
1496
2686
  # timer_name: "TimerName", # required
@@ -1505,17 +2695,74 @@ module Aws::IoTEvents
1505
2695
  # },
1506
2696
  # lambda: {
1507
2697
  # function_arn: "AmazonResourceName", # required
2698
+ # payload: {
2699
+ # content_expression: "ContentExpression", # required
2700
+ # type: "STRING", # required, accepts STRING, JSON
2701
+ # },
1508
2702
  # },
1509
2703
  # iot_events: {
1510
2704
  # input_name: "InputName", # required
2705
+ # payload: {
2706
+ # content_expression: "ContentExpression", # required
2707
+ # type: "STRING", # required, accepts STRING, JSON
2708
+ # },
1511
2709
  # },
1512
2710
  # sqs: {
1513
2711
  # queue_url: "QueueUrl", # required
1514
2712
  # use_base_64: false,
2713
+ # payload: {
2714
+ # content_expression: "ContentExpression", # required
2715
+ # type: "STRING", # required, accepts STRING, JSON
2716
+ # },
1515
2717
  # },
1516
2718
  # firehose: {
1517
2719
  # delivery_stream_name: "DeliveryStreamName", # required
1518
2720
  # separator: "FirehoseSeparator",
2721
+ # payload: {
2722
+ # content_expression: "ContentExpression", # required
2723
+ # type: "STRING", # required, accepts STRING, JSON
2724
+ # },
2725
+ # },
2726
+ # dynamo_db: {
2727
+ # hash_key_type: "DynamoKeyType",
2728
+ # hash_key_field: "DynamoKeyField", # required
2729
+ # hash_key_value: "DynamoKeyValue", # required
2730
+ # range_key_type: "DynamoKeyType",
2731
+ # range_key_field: "DynamoKeyField",
2732
+ # range_key_value: "DynamoKeyValue",
2733
+ # operation: "DynamoOperation",
2734
+ # payload_field: "DynamoKeyField",
2735
+ # table_name: "DynamoTableName", # required
2736
+ # payload: {
2737
+ # content_expression: "ContentExpression", # required
2738
+ # type: "STRING", # required, accepts STRING, JSON
2739
+ # },
2740
+ # },
2741
+ # dynamo_d_bv_2: {
2742
+ # table_name: "DynamoTableName", # required
2743
+ # payload: {
2744
+ # content_expression: "ContentExpression", # required
2745
+ # type: "STRING", # required, accepts STRING, JSON
2746
+ # },
2747
+ # },
2748
+ # iot_site_wise: {
2749
+ # entry_id: "AssetPropertyEntryId",
2750
+ # asset_id: "AssetId",
2751
+ # property_id: "AssetPropertyId",
2752
+ # property_alias: "AssetPropertyAlias",
2753
+ # property_value: { # required
2754
+ # value: { # required
2755
+ # string_value: "AssetPropertyStringValue",
2756
+ # integer_value: "AssetPropertyIntegerValue",
2757
+ # double_value: "AssetPropertyDoubleValue",
2758
+ # boolean_value: "AssetPropertyBooleanValue",
2759
+ # },
2760
+ # timestamp: {
2761
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
2762
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
2763
+ # },
2764
+ # quality: "AssetPropertyQuality",
2765
+ # },
1519
2766
  # },
1520
2767
  # },
1521
2768
  # ],
@@ -1525,7 +2772,7 @@ module Aws::IoTEvents
1525
2772
  #
1526
2773
  # @!attribute [rw] events
1527
2774
  # Specifies the actions that are performed when the state is entered
1528
- # and the `condition` is TRUE.
2775
+ # and the `condition` is `TRUE`.
1529
2776
  # @return [Array<Types::Event>]
1530
2777
  #
1531
2778
  class OnEnterLifecycle < Struct.new(
@@ -1534,7 +2781,7 @@ module Aws::IoTEvents
1534
2781
  end
1535
2782
 
1536
2783
  # When exiting this state, perform these `actions` if the specified
1537
- # `condition` is TRUE.
2784
+ # `condition` is `TRUE`.
1538
2785
  #
1539
2786
  # @note When making an API call, you may pass OnExitLifecycle
1540
2787
  # data as a hash:
@@ -1552,9 +2799,17 @@ module Aws::IoTEvents
1552
2799
  # },
1553
2800
  # sns: {
1554
2801
  # target_arn: "AmazonResourceName", # required
2802
+ # payload: {
2803
+ # content_expression: "ContentExpression", # required
2804
+ # type: "STRING", # required, accepts STRING, JSON
2805
+ # },
1555
2806
  # },
1556
2807
  # iot_topic_publish: {
1557
2808
  # mqtt_topic: "MQTTTopic", # required
2809
+ # payload: {
2810
+ # content_expression: "ContentExpression", # required
2811
+ # type: "STRING", # required, accepts STRING, JSON
2812
+ # },
1558
2813
  # },
1559
2814
  # set_timer: {
1560
2815
  # timer_name: "TimerName", # required
@@ -1569,17 +2824,74 @@ module Aws::IoTEvents
1569
2824
  # },
1570
2825
  # lambda: {
1571
2826
  # function_arn: "AmazonResourceName", # required
2827
+ # payload: {
2828
+ # content_expression: "ContentExpression", # required
2829
+ # type: "STRING", # required, accepts STRING, JSON
2830
+ # },
1572
2831
  # },
1573
2832
  # iot_events: {
1574
2833
  # input_name: "InputName", # required
2834
+ # payload: {
2835
+ # content_expression: "ContentExpression", # required
2836
+ # type: "STRING", # required, accepts STRING, JSON
2837
+ # },
1575
2838
  # },
1576
2839
  # sqs: {
1577
2840
  # queue_url: "QueueUrl", # required
1578
2841
  # use_base_64: false,
2842
+ # payload: {
2843
+ # content_expression: "ContentExpression", # required
2844
+ # type: "STRING", # required, accepts STRING, JSON
2845
+ # },
1579
2846
  # },
1580
2847
  # firehose: {
1581
2848
  # delivery_stream_name: "DeliveryStreamName", # required
1582
2849
  # separator: "FirehoseSeparator",
2850
+ # payload: {
2851
+ # content_expression: "ContentExpression", # required
2852
+ # type: "STRING", # required, accepts STRING, JSON
2853
+ # },
2854
+ # },
2855
+ # dynamo_db: {
2856
+ # hash_key_type: "DynamoKeyType",
2857
+ # hash_key_field: "DynamoKeyField", # required
2858
+ # hash_key_value: "DynamoKeyValue", # required
2859
+ # range_key_type: "DynamoKeyType",
2860
+ # range_key_field: "DynamoKeyField",
2861
+ # range_key_value: "DynamoKeyValue",
2862
+ # operation: "DynamoOperation",
2863
+ # payload_field: "DynamoKeyField",
2864
+ # table_name: "DynamoTableName", # required
2865
+ # payload: {
2866
+ # content_expression: "ContentExpression", # required
2867
+ # type: "STRING", # required, accepts STRING, JSON
2868
+ # },
2869
+ # },
2870
+ # dynamo_d_bv_2: {
2871
+ # table_name: "DynamoTableName", # required
2872
+ # payload: {
2873
+ # content_expression: "ContentExpression", # required
2874
+ # type: "STRING", # required, accepts STRING, JSON
2875
+ # },
2876
+ # },
2877
+ # iot_site_wise: {
2878
+ # entry_id: "AssetPropertyEntryId",
2879
+ # asset_id: "AssetId",
2880
+ # property_id: "AssetPropertyId",
2881
+ # property_alias: "AssetPropertyAlias",
2882
+ # property_value: { # required
2883
+ # value: { # required
2884
+ # string_value: "AssetPropertyStringValue",
2885
+ # integer_value: "AssetPropertyIntegerValue",
2886
+ # double_value: "AssetPropertyDoubleValue",
2887
+ # boolean_value: "AssetPropertyBooleanValue",
2888
+ # },
2889
+ # timestamp: {
2890
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
2891
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
2892
+ # },
2893
+ # quality: "AssetPropertyQuality",
2894
+ # },
1583
2895
  # },
1584
2896
  # },
1585
2897
  # ],
@@ -1589,7 +2901,7 @@ module Aws::IoTEvents
1589
2901
  #
1590
2902
  # @!attribute [rw] events
1591
2903
  # Specifies the `actions` that are performed when the state is exited
1592
- # and the `condition` is TRUE.
2904
+ # and the `condition` is `TRUE`.
1593
2905
  # @return [Array<Types::Event>]
1594
2906
  #
1595
2907
  class OnExitLifecycle < Struct.new(
@@ -1616,9 +2928,17 @@ module Aws::IoTEvents
1616
2928
  # },
1617
2929
  # sns: {
1618
2930
  # target_arn: "AmazonResourceName", # required
2931
+ # payload: {
2932
+ # content_expression: "ContentExpression", # required
2933
+ # type: "STRING", # required, accepts STRING, JSON
2934
+ # },
1619
2935
  # },
1620
2936
  # iot_topic_publish: {
1621
2937
  # mqtt_topic: "MQTTTopic", # required
2938
+ # payload: {
2939
+ # content_expression: "ContentExpression", # required
2940
+ # type: "STRING", # required, accepts STRING, JSON
2941
+ # },
1622
2942
  # },
1623
2943
  # set_timer: {
1624
2944
  # timer_name: "TimerName", # required
@@ -1633,17 +2953,74 @@ module Aws::IoTEvents
1633
2953
  # },
1634
2954
  # lambda: {
1635
2955
  # function_arn: "AmazonResourceName", # required
2956
+ # payload: {
2957
+ # content_expression: "ContentExpression", # required
2958
+ # type: "STRING", # required, accepts STRING, JSON
2959
+ # },
1636
2960
  # },
1637
2961
  # iot_events: {
1638
2962
  # input_name: "InputName", # required
2963
+ # payload: {
2964
+ # content_expression: "ContentExpression", # required
2965
+ # type: "STRING", # required, accepts STRING, JSON
2966
+ # },
1639
2967
  # },
1640
2968
  # sqs: {
1641
2969
  # queue_url: "QueueUrl", # required
1642
2970
  # use_base_64: false,
2971
+ # payload: {
2972
+ # content_expression: "ContentExpression", # required
2973
+ # type: "STRING", # required, accepts STRING, JSON
2974
+ # },
1643
2975
  # },
1644
2976
  # firehose: {
1645
2977
  # delivery_stream_name: "DeliveryStreamName", # required
1646
2978
  # separator: "FirehoseSeparator",
2979
+ # payload: {
2980
+ # content_expression: "ContentExpression", # required
2981
+ # type: "STRING", # required, accepts STRING, JSON
2982
+ # },
2983
+ # },
2984
+ # dynamo_db: {
2985
+ # hash_key_type: "DynamoKeyType",
2986
+ # hash_key_field: "DynamoKeyField", # required
2987
+ # hash_key_value: "DynamoKeyValue", # required
2988
+ # range_key_type: "DynamoKeyType",
2989
+ # range_key_field: "DynamoKeyField",
2990
+ # range_key_value: "DynamoKeyValue",
2991
+ # operation: "DynamoOperation",
2992
+ # payload_field: "DynamoKeyField",
2993
+ # table_name: "DynamoTableName", # required
2994
+ # payload: {
2995
+ # content_expression: "ContentExpression", # required
2996
+ # type: "STRING", # required, accepts STRING, JSON
2997
+ # },
2998
+ # },
2999
+ # dynamo_d_bv_2: {
3000
+ # table_name: "DynamoTableName", # required
3001
+ # payload: {
3002
+ # content_expression: "ContentExpression", # required
3003
+ # type: "STRING", # required, accepts STRING, JSON
3004
+ # },
3005
+ # },
3006
+ # iot_site_wise: {
3007
+ # entry_id: "AssetPropertyEntryId",
3008
+ # asset_id: "AssetId",
3009
+ # property_id: "AssetPropertyId",
3010
+ # property_alias: "AssetPropertyAlias",
3011
+ # property_value: { # required
3012
+ # value: { # required
3013
+ # string_value: "AssetPropertyStringValue",
3014
+ # integer_value: "AssetPropertyIntegerValue",
3015
+ # double_value: "AssetPropertyDoubleValue",
3016
+ # boolean_value: "AssetPropertyBooleanValue",
3017
+ # },
3018
+ # timestamp: {
3019
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3020
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3021
+ # },
3022
+ # quality: "AssetPropertyQuality",
3023
+ # },
1647
3024
  # },
1648
3025
  # },
1649
3026
  # ],
@@ -1661,9 +3038,17 @@ module Aws::IoTEvents
1661
3038
  # },
1662
3039
  # sns: {
1663
3040
  # target_arn: "AmazonResourceName", # required
3041
+ # payload: {
3042
+ # content_expression: "ContentExpression", # required
3043
+ # type: "STRING", # required, accepts STRING, JSON
3044
+ # },
1664
3045
  # },
1665
3046
  # iot_topic_publish: {
1666
3047
  # mqtt_topic: "MQTTTopic", # required
3048
+ # payload: {
3049
+ # content_expression: "ContentExpression", # required
3050
+ # type: "STRING", # required, accepts STRING, JSON
3051
+ # },
1667
3052
  # },
1668
3053
  # set_timer: {
1669
3054
  # timer_name: "TimerName", # required
@@ -1678,17 +3063,74 @@ module Aws::IoTEvents
1678
3063
  # },
1679
3064
  # lambda: {
1680
3065
  # function_arn: "AmazonResourceName", # required
3066
+ # payload: {
3067
+ # content_expression: "ContentExpression", # required
3068
+ # type: "STRING", # required, accepts STRING, JSON
3069
+ # },
1681
3070
  # },
1682
3071
  # iot_events: {
1683
3072
  # input_name: "InputName", # required
3073
+ # payload: {
3074
+ # content_expression: "ContentExpression", # required
3075
+ # type: "STRING", # required, accepts STRING, JSON
3076
+ # },
1684
3077
  # },
1685
3078
  # sqs: {
1686
3079
  # queue_url: "QueueUrl", # required
1687
3080
  # use_base_64: false,
3081
+ # payload: {
3082
+ # content_expression: "ContentExpression", # required
3083
+ # type: "STRING", # required, accepts STRING, JSON
3084
+ # },
1688
3085
  # },
1689
3086
  # firehose: {
1690
3087
  # delivery_stream_name: "DeliveryStreamName", # required
1691
3088
  # separator: "FirehoseSeparator",
3089
+ # payload: {
3090
+ # content_expression: "ContentExpression", # required
3091
+ # type: "STRING", # required, accepts STRING, JSON
3092
+ # },
3093
+ # },
3094
+ # dynamo_db: {
3095
+ # hash_key_type: "DynamoKeyType",
3096
+ # hash_key_field: "DynamoKeyField", # required
3097
+ # hash_key_value: "DynamoKeyValue", # required
3098
+ # range_key_type: "DynamoKeyType",
3099
+ # range_key_field: "DynamoKeyField",
3100
+ # range_key_value: "DynamoKeyValue",
3101
+ # operation: "DynamoOperation",
3102
+ # payload_field: "DynamoKeyField",
3103
+ # table_name: "DynamoTableName", # required
3104
+ # payload: {
3105
+ # content_expression: "ContentExpression", # required
3106
+ # type: "STRING", # required, accepts STRING, JSON
3107
+ # },
3108
+ # },
3109
+ # dynamo_d_bv_2: {
3110
+ # table_name: "DynamoTableName", # required
3111
+ # payload: {
3112
+ # content_expression: "ContentExpression", # required
3113
+ # type: "STRING", # required, accepts STRING, JSON
3114
+ # },
3115
+ # },
3116
+ # iot_site_wise: {
3117
+ # entry_id: "AssetPropertyEntryId",
3118
+ # asset_id: "AssetId",
3119
+ # property_id: "AssetPropertyId",
3120
+ # property_alias: "AssetPropertyAlias",
3121
+ # property_value: { # required
3122
+ # value: { # required
3123
+ # string_value: "AssetPropertyStringValue",
3124
+ # integer_value: "AssetPropertyIntegerValue",
3125
+ # double_value: "AssetPropertyDoubleValue",
3126
+ # boolean_value: "AssetPropertyBooleanValue",
3127
+ # },
3128
+ # timestamp: {
3129
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3130
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3131
+ # },
3132
+ # quality: "AssetPropertyQuality",
3133
+ # },
1692
3134
  # },
1693
3135
  # },
1694
3136
  # ],
@@ -1713,6 +3155,41 @@ module Aws::IoTEvents
1713
3155
  include Aws::Structure
1714
3156
  end
1715
3157
 
3158
+ # Information needed to configure the payload.
3159
+ #
3160
+ # By default, AWS IoT Events generates a standard payload in JSON for
3161
+ # any action. This action payload contains all attribute-value pairs
3162
+ # that have the information about the detector model instance and the
3163
+ # event triggered the action. To configure the action payload, you can
3164
+ # use `contentExpression`.
3165
+ #
3166
+ # @note When making an API call, you may pass Payload
3167
+ # data as a hash:
3168
+ #
3169
+ # {
3170
+ # content_expression: "ContentExpression", # required
3171
+ # type: "STRING", # required, accepts STRING, JSON
3172
+ # }
3173
+ #
3174
+ # @!attribute [rw] content_expression
3175
+ # The content of the payload. You can use a string expression that
3176
+ # includes quoted strings (`'<string>'`), variables
3177
+ # (`$variable.<variable-name>`), input values
3178
+ # (`$input.<input-name>.<path-to-datum>`), string concatenations, and
3179
+ # quoted strings that contain `$\{\}` as the content. The recommended
3180
+ # maximum size of a content expression is 1 KB.
3181
+ # @return [String]
3182
+ #
3183
+ # @!attribute [rw] type
3184
+ # The value of the payload type can be either `STRING` or `JSON`.
3185
+ # @return [String]
3186
+ #
3187
+ class Payload < Struct.new(
3188
+ :content_expression,
3189
+ :type)
3190
+ include Aws::Structure
3191
+ end
3192
+
1716
3193
  # @note When making an API call, you may pass PutLoggingOptionsRequest
1717
3194
  # data as a hash:
1718
3195
  #
@@ -1740,7 +3217,8 @@ module Aws::IoTEvents
1740
3217
  end
1741
3218
 
1742
3219
  # Information required to reset the timer. The timer is reset to the
1743
- # previously evaluated result of the duration.
3220
+ # previously evaluated result of the duration. The duration expression
3221
+ # isn't reevaluated when you reset the timer.
1744
3222
  #
1745
3223
  # @note When making an API call, you may pass ResetTimerAction
1746
3224
  # data as a hash:
@@ -1808,14 +3286,24 @@ module Aws::IoTEvents
1808
3286
  #
1809
3287
  # {
1810
3288
  # target_arn: "AmazonResourceName", # required
3289
+ # payload: {
3290
+ # content_expression: "ContentExpression", # required
3291
+ # type: "STRING", # required, accepts STRING, JSON
3292
+ # },
1811
3293
  # }
1812
3294
  #
1813
3295
  # @!attribute [rw] target_arn
1814
3296
  # The ARN of the Amazon SNS target where the message is sent.
1815
3297
  # @return [String]
1816
3298
  #
3299
+ # @!attribute [rw] payload
3300
+ # You can configure the action payload when you send a message as an
3301
+ # Amazon SNS push notification.
3302
+ # @return [Types::Payload]
3303
+ #
1817
3304
  class SNSTopicPublishAction < Struct.new(
1818
- :target_arn)
3305
+ :target_arn,
3306
+ :payload)
1819
3307
  include Aws::Structure
1820
3308
  end
1821
3309
 
@@ -1847,7 +3335,8 @@ module Aws::IoTEvents
1847
3335
  #
1848
3336
  # @!attribute [rw] seconds
1849
3337
  # The number of seconds until the timer expires. The minimum value is
1850
- # 60 seconds to ensure accuracy.
3338
+ # 60 seconds to ensure accuracy. The maximum value is 31622400
3339
+ # seconds.
1851
3340
  # @return [Integer]
1852
3341
  #
1853
3342
  # @!attribute [rw] duration_expression
@@ -1900,6 +3389,10 @@ module Aws::IoTEvents
1900
3389
  # {
1901
3390
  # queue_url: "QueueUrl", # required
1902
3391
  # use_base_64: false,
3392
+ # payload: {
3393
+ # content_expression: "ContentExpression", # required
3394
+ # type: "STRING", # required, accepts STRING, JSON
3395
+ # },
1903
3396
  # }
1904
3397
  #
1905
3398
  # @!attribute [rw] queue_url
@@ -1908,12 +3401,18 @@ module Aws::IoTEvents
1908
3401
  #
1909
3402
  # @!attribute [rw] use_base_64
1910
3403
  # Set this to TRUE if you want the data to be base-64 encoded before
1911
- # it is written to the queue.
3404
+ # it is written to the queue. Otherwise, set this to FALSE.
1912
3405
  # @return [Boolean]
1913
3406
  #
3407
+ # @!attribute [rw] payload
3408
+ # You can configure the action payload when you send a message to an
3409
+ # Amazon SQS queue.
3410
+ # @return [Types::Payload]
3411
+ #
1914
3412
  class SqsAction < Struct.new(
1915
3413
  :queue_url,
1916
- :use_base_64)
3414
+ :use_base_64,
3415
+ :payload)
1917
3416
  include Aws::Structure
1918
3417
  end
1919
3418
 
@@ -1937,9 +3436,17 @@ module Aws::IoTEvents
1937
3436
  # },
1938
3437
  # sns: {
1939
3438
  # target_arn: "AmazonResourceName", # required
3439
+ # payload: {
3440
+ # content_expression: "ContentExpression", # required
3441
+ # type: "STRING", # required, accepts STRING, JSON
3442
+ # },
1940
3443
  # },
1941
3444
  # iot_topic_publish: {
1942
3445
  # mqtt_topic: "MQTTTopic", # required
3446
+ # payload: {
3447
+ # content_expression: "ContentExpression", # required
3448
+ # type: "STRING", # required, accepts STRING, JSON
3449
+ # },
1943
3450
  # },
1944
3451
  # set_timer: {
1945
3452
  # timer_name: "TimerName", # required
@@ -1954,17 +3461,74 @@ module Aws::IoTEvents
1954
3461
  # },
1955
3462
  # lambda: {
1956
3463
  # function_arn: "AmazonResourceName", # required
3464
+ # payload: {
3465
+ # content_expression: "ContentExpression", # required
3466
+ # type: "STRING", # required, accepts STRING, JSON
3467
+ # },
1957
3468
  # },
1958
3469
  # iot_events: {
1959
3470
  # input_name: "InputName", # required
3471
+ # payload: {
3472
+ # content_expression: "ContentExpression", # required
3473
+ # type: "STRING", # required, accepts STRING, JSON
3474
+ # },
1960
3475
  # },
1961
3476
  # sqs: {
1962
3477
  # queue_url: "QueueUrl", # required
1963
3478
  # use_base_64: false,
3479
+ # payload: {
3480
+ # content_expression: "ContentExpression", # required
3481
+ # type: "STRING", # required, accepts STRING, JSON
3482
+ # },
1964
3483
  # },
1965
3484
  # firehose: {
1966
3485
  # delivery_stream_name: "DeliveryStreamName", # required
1967
3486
  # separator: "FirehoseSeparator",
3487
+ # payload: {
3488
+ # content_expression: "ContentExpression", # required
3489
+ # type: "STRING", # required, accepts STRING, JSON
3490
+ # },
3491
+ # },
3492
+ # dynamo_db: {
3493
+ # hash_key_type: "DynamoKeyType",
3494
+ # hash_key_field: "DynamoKeyField", # required
3495
+ # hash_key_value: "DynamoKeyValue", # required
3496
+ # range_key_type: "DynamoKeyType",
3497
+ # range_key_field: "DynamoKeyField",
3498
+ # range_key_value: "DynamoKeyValue",
3499
+ # operation: "DynamoOperation",
3500
+ # payload_field: "DynamoKeyField",
3501
+ # table_name: "DynamoTableName", # required
3502
+ # payload: {
3503
+ # content_expression: "ContentExpression", # required
3504
+ # type: "STRING", # required, accepts STRING, JSON
3505
+ # },
3506
+ # },
3507
+ # dynamo_d_bv_2: {
3508
+ # table_name: "DynamoTableName", # required
3509
+ # payload: {
3510
+ # content_expression: "ContentExpression", # required
3511
+ # type: "STRING", # required, accepts STRING, JSON
3512
+ # },
3513
+ # },
3514
+ # iot_site_wise: {
3515
+ # entry_id: "AssetPropertyEntryId",
3516
+ # asset_id: "AssetId",
3517
+ # property_id: "AssetPropertyId",
3518
+ # property_alias: "AssetPropertyAlias",
3519
+ # property_value: { # required
3520
+ # value: { # required
3521
+ # string_value: "AssetPropertyStringValue",
3522
+ # integer_value: "AssetPropertyIntegerValue",
3523
+ # double_value: "AssetPropertyDoubleValue",
3524
+ # boolean_value: "AssetPropertyBooleanValue",
3525
+ # },
3526
+ # timestamp: {
3527
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3528
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3529
+ # },
3530
+ # quality: "AssetPropertyQuality",
3531
+ # },
1968
3532
  # },
1969
3533
  # },
1970
3534
  # ],
@@ -1982,9 +3546,17 @@ module Aws::IoTEvents
1982
3546
  # },
1983
3547
  # sns: {
1984
3548
  # target_arn: "AmazonResourceName", # required
3549
+ # payload: {
3550
+ # content_expression: "ContentExpression", # required
3551
+ # type: "STRING", # required, accepts STRING, JSON
3552
+ # },
1985
3553
  # },
1986
3554
  # iot_topic_publish: {
1987
3555
  # mqtt_topic: "MQTTTopic", # required
3556
+ # payload: {
3557
+ # content_expression: "ContentExpression", # required
3558
+ # type: "STRING", # required, accepts STRING, JSON
3559
+ # },
1988
3560
  # },
1989
3561
  # set_timer: {
1990
3562
  # timer_name: "TimerName", # required
@@ -1999,17 +3571,74 @@ module Aws::IoTEvents
1999
3571
  # },
2000
3572
  # lambda: {
2001
3573
  # function_arn: "AmazonResourceName", # required
3574
+ # payload: {
3575
+ # content_expression: "ContentExpression", # required
3576
+ # type: "STRING", # required, accepts STRING, JSON
3577
+ # },
2002
3578
  # },
2003
3579
  # iot_events: {
2004
3580
  # input_name: "InputName", # required
3581
+ # payload: {
3582
+ # content_expression: "ContentExpression", # required
3583
+ # type: "STRING", # required, accepts STRING, JSON
3584
+ # },
2005
3585
  # },
2006
3586
  # sqs: {
2007
3587
  # queue_url: "QueueUrl", # required
2008
3588
  # use_base_64: false,
3589
+ # payload: {
3590
+ # content_expression: "ContentExpression", # required
3591
+ # type: "STRING", # required, accepts STRING, JSON
3592
+ # },
2009
3593
  # },
2010
3594
  # firehose: {
2011
3595
  # delivery_stream_name: "DeliveryStreamName", # required
2012
3596
  # separator: "FirehoseSeparator",
3597
+ # payload: {
3598
+ # content_expression: "ContentExpression", # required
3599
+ # type: "STRING", # required, accepts STRING, JSON
3600
+ # },
3601
+ # },
3602
+ # dynamo_db: {
3603
+ # hash_key_type: "DynamoKeyType",
3604
+ # hash_key_field: "DynamoKeyField", # required
3605
+ # hash_key_value: "DynamoKeyValue", # required
3606
+ # range_key_type: "DynamoKeyType",
3607
+ # range_key_field: "DynamoKeyField",
3608
+ # range_key_value: "DynamoKeyValue",
3609
+ # operation: "DynamoOperation",
3610
+ # payload_field: "DynamoKeyField",
3611
+ # table_name: "DynamoTableName", # required
3612
+ # payload: {
3613
+ # content_expression: "ContentExpression", # required
3614
+ # type: "STRING", # required, accepts STRING, JSON
3615
+ # },
3616
+ # },
3617
+ # dynamo_d_bv_2: {
3618
+ # table_name: "DynamoTableName", # required
3619
+ # payload: {
3620
+ # content_expression: "ContentExpression", # required
3621
+ # type: "STRING", # required, accepts STRING, JSON
3622
+ # },
3623
+ # },
3624
+ # iot_site_wise: {
3625
+ # entry_id: "AssetPropertyEntryId",
3626
+ # asset_id: "AssetId",
3627
+ # property_id: "AssetPropertyId",
3628
+ # property_alias: "AssetPropertyAlias",
3629
+ # property_value: { # required
3630
+ # value: { # required
3631
+ # string_value: "AssetPropertyStringValue",
3632
+ # integer_value: "AssetPropertyIntegerValue",
3633
+ # double_value: "AssetPropertyDoubleValue",
3634
+ # boolean_value: "AssetPropertyBooleanValue",
3635
+ # },
3636
+ # timestamp: {
3637
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3638
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3639
+ # },
3640
+ # quality: "AssetPropertyQuality",
3641
+ # },
2013
3642
  # },
2014
3643
  # },
2015
3644
  # ],
@@ -2030,9 +3659,17 @@ module Aws::IoTEvents
2030
3659
  # },
2031
3660
  # sns: {
2032
3661
  # target_arn: "AmazonResourceName", # required
3662
+ # payload: {
3663
+ # content_expression: "ContentExpression", # required
3664
+ # type: "STRING", # required, accepts STRING, JSON
3665
+ # },
2033
3666
  # },
2034
3667
  # iot_topic_publish: {
2035
3668
  # mqtt_topic: "MQTTTopic", # required
3669
+ # payload: {
3670
+ # content_expression: "ContentExpression", # required
3671
+ # type: "STRING", # required, accepts STRING, JSON
3672
+ # },
2036
3673
  # },
2037
3674
  # set_timer: {
2038
3675
  # timer_name: "TimerName", # required
@@ -2047,17 +3684,74 @@ module Aws::IoTEvents
2047
3684
  # },
2048
3685
  # lambda: {
2049
3686
  # function_arn: "AmazonResourceName", # required
3687
+ # payload: {
3688
+ # content_expression: "ContentExpression", # required
3689
+ # type: "STRING", # required, accepts STRING, JSON
3690
+ # },
2050
3691
  # },
2051
3692
  # iot_events: {
2052
3693
  # input_name: "InputName", # required
3694
+ # payload: {
3695
+ # content_expression: "ContentExpression", # required
3696
+ # type: "STRING", # required, accepts STRING, JSON
3697
+ # },
2053
3698
  # },
2054
3699
  # sqs: {
2055
3700
  # queue_url: "QueueUrl", # required
2056
3701
  # use_base_64: false,
3702
+ # payload: {
3703
+ # content_expression: "ContentExpression", # required
3704
+ # type: "STRING", # required, accepts STRING, JSON
3705
+ # },
2057
3706
  # },
2058
3707
  # firehose: {
2059
3708
  # delivery_stream_name: "DeliveryStreamName", # required
2060
3709
  # separator: "FirehoseSeparator",
3710
+ # payload: {
3711
+ # content_expression: "ContentExpression", # required
3712
+ # type: "STRING", # required, accepts STRING, JSON
3713
+ # },
3714
+ # },
3715
+ # dynamo_db: {
3716
+ # hash_key_type: "DynamoKeyType",
3717
+ # hash_key_field: "DynamoKeyField", # required
3718
+ # hash_key_value: "DynamoKeyValue", # required
3719
+ # range_key_type: "DynamoKeyType",
3720
+ # range_key_field: "DynamoKeyField",
3721
+ # range_key_value: "DynamoKeyValue",
3722
+ # operation: "DynamoOperation",
3723
+ # payload_field: "DynamoKeyField",
3724
+ # table_name: "DynamoTableName", # required
3725
+ # payload: {
3726
+ # content_expression: "ContentExpression", # required
3727
+ # type: "STRING", # required, accepts STRING, JSON
3728
+ # },
3729
+ # },
3730
+ # dynamo_d_bv_2: {
3731
+ # table_name: "DynamoTableName", # required
3732
+ # payload: {
3733
+ # content_expression: "ContentExpression", # required
3734
+ # type: "STRING", # required, accepts STRING, JSON
3735
+ # },
3736
+ # },
3737
+ # iot_site_wise: {
3738
+ # entry_id: "AssetPropertyEntryId",
3739
+ # asset_id: "AssetId",
3740
+ # property_id: "AssetPropertyId",
3741
+ # property_alias: "AssetPropertyAlias",
3742
+ # property_value: { # required
3743
+ # value: { # required
3744
+ # string_value: "AssetPropertyStringValue",
3745
+ # integer_value: "AssetPropertyIntegerValue",
3746
+ # double_value: "AssetPropertyDoubleValue",
3747
+ # boolean_value: "AssetPropertyBooleanValue",
3748
+ # },
3749
+ # timestamp: {
3750
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3751
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3752
+ # },
3753
+ # quality: "AssetPropertyQuality",
3754
+ # },
2061
3755
  # },
2062
3756
  # },
2063
3757
  # ],
@@ -2077,9 +3771,17 @@ module Aws::IoTEvents
2077
3771
  # },
2078
3772
  # sns: {
2079
3773
  # target_arn: "AmazonResourceName", # required
3774
+ # payload: {
3775
+ # content_expression: "ContentExpression", # required
3776
+ # type: "STRING", # required, accepts STRING, JSON
3777
+ # },
2080
3778
  # },
2081
3779
  # iot_topic_publish: {
2082
3780
  # mqtt_topic: "MQTTTopic", # required
3781
+ # payload: {
3782
+ # content_expression: "ContentExpression", # required
3783
+ # type: "STRING", # required, accepts STRING, JSON
3784
+ # },
2083
3785
  # },
2084
3786
  # set_timer: {
2085
3787
  # timer_name: "TimerName", # required
@@ -2094,17 +3796,74 @@ module Aws::IoTEvents
2094
3796
  # },
2095
3797
  # lambda: {
2096
3798
  # function_arn: "AmazonResourceName", # required
3799
+ # payload: {
3800
+ # content_expression: "ContentExpression", # required
3801
+ # type: "STRING", # required, accepts STRING, JSON
3802
+ # },
2097
3803
  # },
2098
3804
  # iot_events: {
2099
3805
  # input_name: "InputName", # required
3806
+ # payload: {
3807
+ # content_expression: "ContentExpression", # required
3808
+ # type: "STRING", # required, accepts STRING, JSON
3809
+ # },
2100
3810
  # },
2101
3811
  # sqs: {
2102
3812
  # queue_url: "QueueUrl", # required
2103
3813
  # use_base_64: false,
3814
+ # payload: {
3815
+ # content_expression: "ContentExpression", # required
3816
+ # type: "STRING", # required, accepts STRING, JSON
3817
+ # },
2104
3818
  # },
2105
3819
  # firehose: {
2106
3820
  # delivery_stream_name: "DeliveryStreamName", # required
2107
3821
  # separator: "FirehoseSeparator",
3822
+ # payload: {
3823
+ # content_expression: "ContentExpression", # required
3824
+ # type: "STRING", # required, accepts STRING, JSON
3825
+ # },
3826
+ # },
3827
+ # dynamo_db: {
3828
+ # hash_key_type: "DynamoKeyType",
3829
+ # hash_key_field: "DynamoKeyField", # required
3830
+ # hash_key_value: "DynamoKeyValue", # required
3831
+ # range_key_type: "DynamoKeyType",
3832
+ # range_key_field: "DynamoKeyField",
3833
+ # range_key_value: "DynamoKeyValue",
3834
+ # operation: "DynamoOperation",
3835
+ # payload_field: "DynamoKeyField",
3836
+ # table_name: "DynamoTableName", # required
3837
+ # payload: {
3838
+ # content_expression: "ContentExpression", # required
3839
+ # type: "STRING", # required, accepts STRING, JSON
3840
+ # },
3841
+ # },
3842
+ # dynamo_d_bv_2: {
3843
+ # table_name: "DynamoTableName", # required
3844
+ # payload: {
3845
+ # content_expression: "ContentExpression", # required
3846
+ # type: "STRING", # required, accepts STRING, JSON
3847
+ # },
3848
+ # },
3849
+ # iot_site_wise: {
3850
+ # entry_id: "AssetPropertyEntryId",
3851
+ # asset_id: "AssetId",
3852
+ # property_id: "AssetPropertyId",
3853
+ # property_alias: "AssetPropertyAlias",
3854
+ # property_value: { # required
3855
+ # value: { # required
3856
+ # string_value: "AssetPropertyStringValue",
3857
+ # integer_value: "AssetPropertyIntegerValue",
3858
+ # double_value: "AssetPropertyDoubleValue",
3859
+ # boolean_value: "AssetPropertyBooleanValue",
3860
+ # },
3861
+ # timestamp: {
3862
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3863
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3864
+ # },
3865
+ # quality: "AssetPropertyQuality",
3866
+ # },
2108
3867
  # },
2109
3868
  # },
2110
3869
  # ],
@@ -2129,7 +3888,7 @@ module Aws::IoTEvents
2129
3888
  #
2130
3889
  # @!attribute [rw] on_exit
2131
3890
  # When exiting this state, perform these `actions` if the specified
2132
- # `condition` is TRUE.
3891
+ # `condition` is `TRUE`.
2133
3892
  # @return [Types::OnExitLifecycle]
2134
3893
  #
2135
3894
  class State < Struct.new(
@@ -2221,9 +3980,17 @@ module Aws::IoTEvents
2221
3980
  # },
2222
3981
  # sns: {
2223
3982
  # target_arn: "AmazonResourceName", # required
3983
+ # payload: {
3984
+ # content_expression: "ContentExpression", # required
3985
+ # type: "STRING", # required, accepts STRING, JSON
3986
+ # },
2224
3987
  # },
2225
3988
  # iot_topic_publish: {
2226
3989
  # mqtt_topic: "MQTTTopic", # required
3990
+ # payload: {
3991
+ # content_expression: "ContentExpression", # required
3992
+ # type: "STRING", # required, accepts STRING, JSON
3993
+ # },
2227
3994
  # },
2228
3995
  # set_timer: {
2229
3996
  # timer_name: "TimerName", # required
@@ -2238,17 +4005,74 @@ module Aws::IoTEvents
2238
4005
  # },
2239
4006
  # lambda: {
2240
4007
  # function_arn: "AmazonResourceName", # required
4008
+ # payload: {
4009
+ # content_expression: "ContentExpression", # required
4010
+ # type: "STRING", # required, accepts STRING, JSON
4011
+ # },
2241
4012
  # },
2242
4013
  # iot_events: {
2243
4014
  # input_name: "InputName", # required
4015
+ # payload: {
4016
+ # content_expression: "ContentExpression", # required
4017
+ # type: "STRING", # required, accepts STRING, JSON
4018
+ # },
2244
4019
  # },
2245
4020
  # sqs: {
2246
4021
  # queue_url: "QueueUrl", # required
2247
4022
  # use_base_64: false,
4023
+ # payload: {
4024
+ # content_expression: "ContentExpression", # required
4025
+ # type: "STRING", # required, accepts STRING, JSON
4026
+ # },
2248
4027
  # },
2249
4028
  # firehose: {
2250
4029
  # delivery_stream_name: "DeliveryStreamName", # required
2251
4030
  # separator: "FirehoseSeparator",
4031
+ # payload: {
4032
+ # content_expression: "ContentExpression", # required
4033
+ # type: "STRING", # required, accepts STRING, JSON
4034
+ # },
4035
+ # },
4036
+ # dynamo_db: {
4037
+ # hash_key_type: "DynamoKeyType",
4038
+ # hash_key_field: "DynamoKeyField", # required
4039
+ # hash_key_value: "DynamoKeyValue", # required
4040
+ # range_key_type: "DynamoKeyType",
4041
+ # range_key_field: "DynamoKeyField",
4042
+ # range_key_value: "DynamoKeyValue",
4043
+ # operation: "DynamoOperation",
4044
+ # payload_field: "DynamoKeyField",
4045
+ # table_name: "DynamoTableName", # required
4046
+ # payload: {
4047
+ # content_expression: "ContentExpression", # required
4048
+ # type: "STRING", # required, accepts STRING, JSON
4049
+ # },
4050
+ # },
4051
+ # dynamo_d_bv_2: {
4052
+ # table_name: "DynamoTableName", # required
4053
+ # payload: {
4054
+ # content_expression: "ContentExpression", # required
4055
+ # type: "STRING", # required, accepts STRING, JSON
4056
+ # },
4057
+ # },
4058
+ # iot_site_wise: {
4059
+ # entry_id: "AssetPropertyEntryId",
4060
+ # asset_id: "AssetId",
4061
+ # property_id: "AssetPropertyId",
4062
+ # property_alias: "AssetPropertyAlias",
4063
+ # property_value: { # required
4064
+ # value: { # required
4065
+ # string_value: "AssetPropertyStringValue",
4066
+ # integer_value: "AssetPropertyIntegerValue",
4067
+ # double_value: "AssetPropertyDoubleValue",
4068
+ # boolean_value: "AssetPropertyBooleanValue",
4069
+ # },
4070
+ # timestamp: {
4071
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
4072
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
4073
+ # },
4074
+ # quality: "AssetPropertyQuality",
4075
+ # },
2252
4076
  # },
2253
4077
  # },
2254
4078
  # ],
@@ -2337,9 +4161,17 @@ module Aws::IoTEvents
2337
4161
  # },
2338
4162
  # sns: {
2339
4163
  # target_arn: "AmazonResourceName", # required
4164
+ # payload: {
4165
+ # content_expression: "ContentExpression", # required
4166
+ # type: "STRING", # required, accepts STRING, JSON
4167
+ # },
2340
4168
  # },
2341
4169
  # iot_topic_publish: {
2342
4170
  # mqtt_topic: "MQTTTopic", # required
4171
+ # payload: {
4172
+ # content_expression: "ContentExpression", # required
4173
+ # type: "STRING", # required, accepts STRING, JSON
4174
+ # },
2343
4175
  # },
2344
4176
  # set_timer: {
2345
4177
  # timer_name: "TimerName", # required
@@ -2354,17 +4186,74 @@ module Aws::IoTEvents
2354
4186
  # },
2355
4187
  # lambda: {
2356
4188
  # function_arn: "AmazonResourceName", # required
4189
+ # payload: {
4190
+ # content_expression: "ContentExpression", # required
4191
+ # type: "STRING", # required, accepts STRING, JSON
4192
+ # },
2357
4193
  # },
2358
4194
  # iot_events: {
2359
4195
  # input_name: "InputName", # required
4196
+ # payload: {
4197
+ # content_expression: "ContentExpression", # required
4198
+ # type: "STRING", # required, accepts STRING, JSON
4199
+ # },
2360
4200
  # },
2361
4201
  # sqs: {
2362
4202
  # queue_url: "QueueUrl", # required
2363
4203
  # use_base_64: false,
4204
+ # payload: {
4205
+ # content_expression: "ContentExpression", # required
4206
+ # type: "STRING", # required, accepts STRING, JSON
4207
+ # },
2364
4208
  # },
2365
4209
  # firehose: {
2366
4210
  # delivery_stream_name: "DeliveryStreamName", # required
2367
4211
  # separator: "FirehoseSeparator",
4212
+ # payload: {
4213
+ # content_expression: "ContentExpression", # required
4214
+ # type: "STRING", # required, accepts STRING, JSON
4215
+ # },
4216
+ # },
4217
+ # dynamo_db: {
4218
+ # hash_key_type: "DynamoKeyType",
4219
+ # hash_key_field: "DynamoKeyField", # required
4220
+ # hash_key_value: "DynamoKeyValue", # required
4221
+ # range_key_type: "DynamoKeyType",
4222
+ # range_key_field: "DynamoKeyField",
4223
+ # range_key_value: "DynamoKeyValue",
4224
+ # operation: "DynamoOperation",
4225
+ # payload_field: "DynamoKeyField",
4226
+ # table_name: "DynamoTableName", # required
4227
+ # payload: {
4228
+ # content_expression: "ContentExpression", # required
4229
+ # type: "STRING", # required, accepts STRING, JSON
4230
+ # },
4231
+ # },
4232
+ # dynamo_d_bv_2: {
4233
+ # table_name: "DynamoTableName", # required
4234
+ # payload: {
4235
+ # content_expression: "ContentExpression", # required
4236
+ # type: "STRING", # required, accepts STRING, JSON
4237
+ # },
4238
+ # },
4239
+ # iot_site_wise: {
4240
+ # entry_id: "AssetPropertyEntryId",
4241
+ # asset_id: "AssetId",
4242
+ # property_id: "AssetPropertyId",
4243
+ # property_alias: "AssetPropertyAlias",
4244
+ # property_value: { # required
4245
+ # value: { # required
4246
+ # string_value: "AssetPropertyStringValue",
4247
+ # integer_value: "AssetPropertyIntegerValue",
4248
+ # double_value: "AssetPropertyDoubleValue",
4249
+ # boolean_value: "AssetPropertyBooleanValue",
4250
+ # },
4251
+ # timestamp: {
4252
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
4253
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
4254
+ # },
4255
+ # quality: "AssetPropertyQuality",
4256
+ # },
2368
4257
  # },
2369
4258
  # },
2370
4259
  # ],
@@ -2382,9 +4271,17 @@ module Aws::IoTEvents
2382
4271
  # },
2383
4272
  # sns: {
2384
4273
  # target_arn: "AmazonResourceName", # required
4274
+ # payload: {
4275
+ # content_expression: "ContentExpression", # required
4276
+ # type: "STRING", # required, accepts STRING, JSON
4277
+ # },
2385
4278
  # },
2386
4279
  # iot_topic_publish: {
2387
4280
  # mqtt_topic: "MQTTTopic", # required
4281
+ # payload: {
4282
+ # content_expression: "ContentExpression", # required
4283
+ # type: "STRING", # required, accepts STRING, JSON
4284
+ # },
2388
4285
  # },
2389
4286
  # set_timer: {
2390
4287
  # timer_name: "TimerName", # required
@@ -2399,17 +4296,74 @@ module Aws::IoTEvents
2399
4296
  # },
2400
4297
  # lambda: {
2401
4298
  # function_arn: "AmazonResourceName", # required
4299
+ # payload: {
4300
+ # content_expression: "ContentExpression", # required
4301
+ # type: "STRING", # required, accepts STRING, JSON
4302
+ # },
2402
4303
  # },
2403
4304
  # iot_events: {
2404
4305
  # input_name: "InputName", # required
4306
+ # payload: {
4307
+ # content_expression: "ContentExpression", # required
4308
+ # type: "STRING", # required, accepts STRING, JSON
4309
+ # },
2405
4310
  # },
2406
4311
  # sqs: {
2407
4312
  # queue_url: "QueueUrl", # required
2408
4313
  # use_base_64: false,
4314
+ # payload: {
4315
+ # content_expression: "ContentExpression", # required
4316
+ # type: "STRING", # required, accepts STRING, JSON
4317
+ # },
2409
4318
  # },
2410
4319
  # firehose: {
2411
4320
  # delivery_stream_name: "DeliveryStreamName", # required
2412
4321
  # separator: "FirehoseSeparator",
4322
+ # payload: {
4323
+ # content_expression: "ContentExpression", # required
4324
+ # type: "STRING", # required, accepts STRING, JSON
4325
+ # },
4326
+ # },
4327
+ # dynamo_db: {
4328
+ # hash_key_type: "DynamoKeyType",
4329
+ # hash_key_field: "DynamoKeyField", # required
4330
+ # hash_key_value: "DynamoKeyValue", # required
4331
+ # range_key_type: "DynamoKeyType",
4332
+ # range_key_field: "DynamoKeyField",
4333
+ # range_key_value: "DynamoKeyValue",
4334
+ # operation: "DynamoOperation",
4335
+ # payload_field: "DynamoKeyField",
4336
+ # table_name: "DynamoTableName", # required
4337
+ # payload: {
4338
+ # content_expression: "ContentExpression", # required
4339
+ # type: "STRING", # required, accepts STRING, JSON
4340
+ # },
4341
+ # },
4342
+ # dynamo_d_bv_2: {
4343
+ # table_name: "DynamoTableName", # required
4344
+ # payload: {
4345
+ # content_expression: "ContentExpression", # required
4346
+ # type: "STRING", # required, accepts STRING, JSON
4347
+ # },
4348
+ # },
4349
+ # iot_site_wise: {
4350
+ # entry_id: "AssetPropertyEntryId",
4351
+ # asset_id: "AssetId",
4352
+ # property_id: "AssetPropertyId",
4353
+ # property_alias: "AssetPropertyAlias",
4354
+ # property_value: { # required
4355
+ # value: { # required
4356
+ # string_value: "AssetPropertyStringValue",
4357
+ # integer_value: "AssetPropertyIntegerValue",
4358
+ # double_value: "AssetPropertyDoubleValue",
4359
+ # boolean_value: "AssetPropertyBooleanValue",
4360
+ # },
4361
+ # timestamp: {
4362
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
4363
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
4364
+ # },
4365
+ # quality: "AssetPropertyQuality",
4366
+ # },
2413
4367
  # },
2414
4368
  # },
2415
4369
  # ],
@@ -2430,9 +4384,17 @@ module Aws::IoTEvents
2430
4384
  # },
2431
4385
  # sns: {
2432
4386
  # target_arn: "AmazonResourceName", # required
4387
+ # payload: {
4388
+ # content_expression: "ContentExpression", # required
4389
+ # type: "STRING", # required, accepts STRING, JSON
4390
+ # },
2433
4391
  # },
2434
4392
  # iot_topic_publish: {
2435
4393
  # mqtt_topic: "MQTTTopic", # required
4394
+ # payload: {
4395
+ # content_expression: "ContentExpression", # required
4396
+ # type: "STRING", # required, accepts STRING, JSON
4397
+ # },
2436
4398
  # },
2437
4399
  # set_timer: {
2438
4400
  # timer_name: "TimerName", # required
@@ -2447,17 +4409,74 @@ module Aws::IoTEvents
2447
4409
  # },
2448
4410
  # lambda: {
2449
4411
  # function_arn: "AmazonResourceName", # required
4412
+ # payload: {
4413
+ # content_expression: "ContentExpression", # required
4414
+ # type: "STRING", # required, accepts STRING, JSON
4415
+ # },
2450
4416
  # },
2451
4417
  # iot_events: {
2452
4418
  # input_name: "InputName", # required
4419
+ # payload: {
4420
+ # content_expression: "ContentExpression", # required
4421
+ # type: "STRING", # required, accepts STRING, JSON
4422
+ # },
2453
4423
  # },
2454
4424
  # sqs: {
2455
4425
  # queue_url: "QueueUrl", # required
2456
4426
  # use_base_64: false,
4427
+ # payload: {
4428
+ # content_expression: "ContentExpression", # required
4429
+ # type: "STRING", # required, accepts STRING, JSON
4430
+ # },
2457
4431
  # },
2458
4432
  # firehose: {
2459
4433
  # delivery_stream_name: "DeliveryStreamName", # required
2460
4434
  # separator: "FirehoseSeparator",
4435
+ # payload: {
4436
+ # content_expression: "ContentExpression", # required
4437
+ # type: "STRING", # required, accepts STRING, JSON
4438
+ # },
4439
+ # },
4440
+ # dynamo_db: {
4441
+ # hash_key_type: "DynamoKeyType",
4442
+ # hash_key_field: "DynamoKeyField", # required
4443
+ # hash_key_value: "DynamoKeyValue", # required
4444
+ # range_key_type: "DynamoKeyType",
4445
+ # range_key_field: "DynamoKeyField",
4446
+ # range_key_value: "DynamoKeyValue",
4447
+ # operation: "DynamoOperation",
4448
+ # payload_field: "DynamoKeyField",
4449
+ # table_name: "DynamoTableName", # required
4450
+ # payload: {
4451
+ # content_expression: "ContentExpression", # required
4452
+ # type: "STRING", # required, accepts STRING, JSON
4453
+ # },
4454
+ # },
4455
+ # dynamo_d_bv_2: {
4456
+ # table_name: "DynamoTableName", # required
4457
+ # payload: {
4458
+ # content_expression: "ContentExpression", # required
4459
+ # type: "STRING", # required, accepts STRING, JSON
4460
+ # },
4461
+ # },
4462
+ # iot_site_wise: {
4463
+ # entry_id: "AssetPropertyEntryId",
4464
+ # asset_id: "AssetId",
4465
+ # property_id: "AssetPropertyId",
4466
+ # property_alias: "AssetPropertyAlias",
4467
+ # property_value: { # required
4468
+ # value: { # required
4469
+ # string_value: "AssetPropertyStringValue",
4470
+ # integer_value: "AssetPropertyIntegerValue",
4471
+ # double_value: "AssetPropertyDoubleValue",
4472
+ # boolean_value: "AssetPropertyBooleanValue",
4473
+ # },
4474
+ # timestamp: {
4475
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
4476
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
4477
+ # },
4478
+ # quality: "AssetPropertyQuality",
4479
+ # },
2461
4480
  # },
2462
4481
  # },
2463
4482
  # ],
@@ -2477,9 +4496,17 @@ module Aws::IoTEvents
2477
4496
  # },
2478
4497
  # sns: {
2479
4498
  # target_arn: "AmazonResourceName", # required
4499
+ # payload: {
4500
+ # content_expression: "ContentExpression", # required
4501
+ # type: "STRING", # required, accepts STRING, JSON
4502
+ # },
2480
4503
  # },
2481
4504
  # iot_topic_publish: {
2482
4505
  # mqtt_topic: "MQTTTopic", # required
4506
+ # payload: {
4507
+ # content_expression: "ContentExpression", # required
4508
+ # type: "STRING", # required, accepts STRING, JSON
4509
+ # },
2483
4510
  # },
2484
4511
  # set_timer: {
2485
4512
  # timer_name: "TimerName", # required
@@ -2494,17 +4521,74 @@ module Aws::IoTEvents
2494
4521
  # },
2495
4522
  # lambda: {
2496
4523
  # function_arn: "AmazonResourceName", # required
4524
+ # payload: {
4525
+ # content_expression: "ContentExpression", # required
4526
+ # type: "STRING", # required, accepts STRING, JSON
4527
+ # },
2497
4528
  # },
2498
4529
  # iot_events: {
2499
4530
  # input_name: "InputName", # required
4531
+ # payload: {
4532
+ # content_expression: "ContentExpression", # required
4533
+ # type: "STRING", # required, accepts STRING, JSON
4534
+ # },
2500
4535
  # },
2501
4536
  # sqs: {
2502
4537
  # queue_url: "QueueUrl", # required
2503
4538
  # use_base_64: false,
4539
+ # payload: {
4540
+ # content_expression: "ContentExpression", # required
4541
+ # type: "STRING", # required, accepts STRING, JSON
4542
+ # },
2504
4543
  # },
2505
4544
  # firehose: {
2506
4545
  # delivery_stream_name: "DeliveryStreamName", # required
2507
4546
  # separator: "FirehoseSeparator",
4547
+ # payload: {
4548
+ # content_expression: "ContentExpression", # required
4549
+ # type: "STRING", # required, accepts STRING, JSON
4550
+ # },
4551
+ # },
4552
+ # dynamo_db: {
4553
+ # hash_key_type: "DynamoKeyType",
4554
+ # hash_key_field: "DynamoKeyField", # required
4555
+ # hash_key_value: "DynamoKeyValue", # required
4556
+ # range_key_type: "DynamoKeyType",
4557
+ # range_key_field: "DynamoKeyField",
4558
+ # range_key_value: "DynamoKeyValue",
4559
+ # operation: "DynamoOperation",
4560
+ # payload_field: "DynamoKeyField",
4561
+ # table_name: "DynamoTableName", # required
4562
+ # payload: {
4563
+ # content_expression: "ContentExpression", # required
4564
+ # type: "STRING", # required, accepts STRING, JSON
4565
+ # },
4566
+ # },
4567
+ # dynamo_d_bv_2: {
4568
+ # table_name: "DynamoTableName", # required
4569
+ # payload: {
4570
+ # content_expression: "ContentExpression", # required
4571
+ # type: "STRING", # required, accepts STRING, JSON
4572
+ # },
4573
+ # },
4574
+ # iot_site_wise: {
4575
+ # entry_id: "AssetPropertyEntryId",
4576
+ # asset_id: "AssetId",
4577
+ # property_id: "AssetPropertyId",
4578
+ # property_alias: "AssetPropertyAlias",
4579
+ # property_value: { # required
4580
+ # value: { # required
4581
+ # string_value: "AssetPropertyStringValue",
4582
+ # integer_value: "AssetPropertyIntegerValue",
4583
+ # double_value: "AssetPropertyDoubleValue",
4584
+ # boolean_value: "AssetPropertyBooleanValue",
4585
+ # },
4586
+ # timestamp: {
4587
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
4588
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
4589
+ # },
4590
+ # quality: "AssetPropertyQuality",
4591
+ # },
2508
4592
  # },
2509
4593
  # },
2510
4594
  # ],