aws-sdk-iotevents 1.10.0 → 1.15.0

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