aws-sdk-ssm 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
@@ -14,7 +14,7 @@ module Aws
14
14
  # using Run Command. A server or VM that has been registered with AWS is
15
15
  # called a managed instance.
16
16
  # @!attribute [rw] activation_id
17
- # The ID created by SSM when you submitted the activation.
17
+ # The ID created by Systems Manager when you submitted the activation.
18
18
  # @return [String]
19
19
  #
20
20
  # @!attribute [rw] description
@@ -69,7 +69,7 @@ module Aws
69
69
  # data as a hash:
70
70
  #
71
71
  # {
72
- # resource_type: "ManagedInstance", # required, accepts ManagedInstance
72
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance, MaintenanceWindow, Parameter
73
73
  # resource_id: "ResourceId", # required
74
74
  # tags: [ # required
75
75
  # {
@@ -108,9 +108,42 @@ module Aws
108
108
  # @!attribute [rw] instance_id
109
109
  # The ID of the instance.
110
110
  # @return [String]
111
+ #
112
+ # @!attribute [rw] association_id
113
+ # The ID created by the system when you create an association. An
114
+ # association is a binding between a document and a set of targets
115
+ # with a schedule.
116
+ # @return [String]
117
+ #
118
+ # @!attribute [rw] document_version
119
+ # The version of the document used in the association.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] targets
123
+ # The instances targeted by the request to create an association.
124
+ # @return [Array<Types::Target>]
125
+ #
126
+ # @!attribute [rw] last_execution_date
127
+ # The date on which the association was last run.
128
+ # @return [Time]
129
+ #
130
+ # @!attribute [rw] overview
131
+ # Information about the association.
132
+ # @return [Types::AssociationOverview]
133
+ #
134
+ # @!attribute [rw] schedule_expression
135
+ # A cron expression that specifies a schedule when the association
136
+ # runs.
137
+ # @return [String]
111
138
  class Association < Struct.new(
112
139
  :name,
113
- :instance_id)
140
+ :instance_id,
141
+ :association_id,
142
+ :document_version,
143
+ :targets,
144
+ :last_execution_date,
145
+ :overview,
146
+ :schedule_expression)
114
147
  include Aws::Structure
115
148
  end
116
149
 
@@ -127,19 +160,66 @@ module Aws
127
160
  # The date when the association was made.
128
161
  # @return [Time]
129
162
  #
163
+ # @!attribute [rw] last_update_association_date
164
+ # The date when the association was last updated.
165
+ # @return [Time]
166
+ #
130
167
  # @!attribute [rw] status
131
168
  # The association status.
132
169
  # @return [Types::AssociationStatus]
133
170
  #
171
+ # @!attribute [rw] overview
172
+ # Information about the association.
173
+ # @return [Types::AssociationOverview]
174
+ #
175
+ # @!attribute [rw] document_version
176
+ # The document version.
177
+ # @return [String]
178
+ #
134
179
  # @!attribute [rw] parameters
135
180
  # A description of the parameters for a document.
136
181
  # @return [Hash<String,Array<String>>]
182
+ #
183
+ # @!attribute [rw] association_id
184
+ # The association ID.
185
+ # @return [String]
186
+ #
187
+ # @!attribute [rw] targets
188
+ # The instances targeted by the request.
189
+ # @return [Array<Types::Target>]
190
+ #
191
+ # @!attribute [rw] schedule_expression
192
+ # A cron expression that specifies a schedule when the association
193
+ # runs.
194
+ # @return [String]
195
+ #
196
+ # @!attribute [rw] output_location
197
+ # An Amazon S3 bucket where you want to store the output details of
198
+ # the request.
199
+ # @return [Types::InstanceAssociationOutputLocation]
200
+ #
201
+ # @!attribute [rw] last_execution_date
202
+ # The date on which the association was last run.
203
+ # @return [Time]
204
+ #
205
+ # @!attribute [rw] last_successful_execution_date
206
+ # The last date on which the association was successfully run.
207
+ # @return [Time]
137
208
  class AssociationDescription < Struct.new(
138
209
  :name,
139
210
  :instance_id,
140
211
  :date,
212
+ :last_update_association_date,
141
213
  :status,
142
- :parameters)
214
+ :overview,
215
+ :document_version,
216
+ :parameters,
217
+ :association_id,
218
+ :targets,
219
+ :schedule_expression,
220
+ :output_location,
221
+ :last_execution_date,
222
+ :last_successful_execution_date)
143
223
  include Aws::Structure
144
224
  end
145
225
 
@@ -148,7 +228,7 @@ module Aws
148
228
  # data as a hash:
149
229
  #
150
230
  # {
151
- # key: "InstanceId", # required, accepts InstanceId, Name
231
+ # key: "InstanceId", # required, accepts InstanceId, Name, AssociationId, AssociationStatusName, LastExecutedBefore, LastExecutedAfter
152
232
  # value: "AssociationFilterValue", # required
153
233
  # }
154
234
  # @!attribute [rw] key
@@ -164,6 +244,29 @@ module Aws
164
244
  include Aws::Structure
165
245
  end
166
246
 
247
+ # Information about the association.
248
+ # @!attribute [rw] status
249
+ # The status of the association. Status can be: `Pending`, `Success`,
250
+ # or `Failed`.
251
+ # @return [String]
252
+ #
253
+ # @!attribute [rw] detailed_status
254
+ # A detailed status of the association.
255
+ # @return [String]
256
+ #
257
+ # @!attribute [rw] association_status_aggregated_count
258
+ # Returns the number of targets for the association status. For
259
+ # example, if you created an association with two instances, and one
260
+ # of them was successful, this would return the count of instances by
261
+ # status.
262
+ # @return [Hash<String,Integer>]
263
+ class AssociationOverview < Struct.new(
264
+ :status,
265
+ :detailed_status,
266
+ :association_status_aggregated_count)
267
+ include Aws::Structure
268
+ end
269
+
167
270
  # Describes an association status.
168
271
  # @note When making an API call, pass AssociationStatus
169
272
  # data as a hash:
@@ -197,6 +300,140 @@ module Aws
197
300
  include Aws::Structure
198
301
  end
199
302
 
303
+ # Detailed information about the current state of an individual
304
+ # Automation execution.
305
+ # @!attribute [rw] automation_execution_id
306
+ # The execution ID.
307
+ # @return [String]
308
+ #
309
+ # @!attribute [rw] document_name
310
+ # The name of the Automation document used during the execution.
311
+ # @return [String]
312
+ #
313
+ # @!attribute [rw] document_version
314
+ # The version of the document to use during execution.
315
+ # @return [String]
316
+ #
317
+ # @!attribute [rw] execution_start_time
318
+ # The time the execution started.
319
+ # @return [Time]
320
+ #
321
+ # @!attribute [rw] execution_end_time
322
+ # The time the execution finished.
323
+ # @return [Time]
324
+ #
325
+ # @!attribute [rw] automation_execution_status
326
+ # The execution status of the Automation.
327
+ # @return [String]
328
+ #
329
+ # @!attribute [rw] step_executions
330
+ # A list of details about the current state of all steps that comprise
331
+ # an execution. An Automation document contains a list of steps that
332
+ # are executed in order.
333
+ # @return [Array<Types::StepExecution>]
334
+ #
335
+ # @!attribute [rw] parameters
336
+ # The key-value map of execution parameters, which were supplied when
337
+ # calling `StartAutomationExecution`.
338
+ # @return [Hash<String,Array<String>>]
339
+ #
340
+ # @!attribute [rw] outputs
341
+ # The list of execution outputs as defined in the automation document.
342
+ # @return [Hash<String,Array<String>>]
343
+ #
344
+ # @!attribute [rw] failure_message
345
+ # A message describing why an execution has failed, if the status is
346
+ # set to Failed.
347
+ # @return [String]
348
+ class AutomationExecution < Struct.new(
349
+ :automation_execution_id,
350
+ :document_name,
351
+ :document_version,
352
+ :execution_start_time,
353
+ :execution_end_time,
354
+ :automation_execution_status,
355
+ :step_executions,
356
+ :parameters,
357
+ :outputs,
358
+ :failure_message)
359
+ include Aws::Structure
360
+ end
361
+
362
+ # A filter used to match specific automation executions. This is used to
363
+ # limit the scope of Automation execution information returned.
364
+ # @note When making an API call, pass AutomationExecutionFilter
365
+ # data as a hash:
366
+ #
367
+ # {
368
+ # key: "DocumentNamePrefix", # required, accepts DocumentNamePrefix, ExecutionStatus
369
+ # values: ["AutomationExecutionFilterValue"], # required
370
+ # }
371
+ # @!attribute [rw] key
372
+ # The aspect of the Automation execution information that should be
373
+ # limited.
374
+ # @return [String]
375
+ #
376
+ # @!attribute [rw] values
377
+ # The values used to limit the execution information associated with
378
+ # the filter's key.
379
+ # @return [Array<String>]
380
+ class AutomationExecutionFilter < Struct.new(
381
+ :key,
382
+ :values)
383
+ include Aws::Structure
384
+ end
385
+
386
+ # Details about a specific Automation execution.
387
+ # @!attribute [rw] automation_execution_id
388
+ # The execution ID.
389
+ # @return [String]
390
+ #
391
+ # @!attribute [rw] document_name
392
+ # The name of the Automation document used during execution.
393
+ # @return [String]
394
+ #
395
+ # @!attribute [rw] document_version
396
+ # The document version used during the execution.
397
+ # @return [String]
398
+ #
399
+ # @!attribute [rw] automation_execution_status
400
+ # The status of the execution. Valid values include: Running,
401
+ # Succeeded, Failed, Timed out, or Cancelled.
402
+ # @return [String]
403
+ #
404
+ # @!attribute [rw] execution_start_time
405
+ # The time the execution started.&gt;
406
+ # @return [Time]
407
+ #
408
+ # @!attribute [rw] execution_end_time
409
+ # The time the execution finished. This is not populated if the
410
+ # execution is still in progress.
411
+ # @return [Time]
412
+ #
413
+ # @!attribute [rw] executed_by
414
+ # The IAM role ARN of the user who executed the Automation.
415
+ # @return [String]
416
+ #
417
+ # @!attribute [rw] log_file
418
+ # An Amazon S3 bucket where execution information is stored.
419
+ # @return [String]
420
+ #
421
+ # @!attribute [rw] outputs
422
+ # The list of execution outputs as defined in the Automation document.
423
+ # @return [Hash<String,Array<String>>]
424
+ class AutomationExecutionMetadata < Struct.new(
425
+ :automation_execution_id,
426
+ :document_name,
427
+ :document_version,
428
+ :automation_execution_status,
429
+ :execution_start_time,
430
+ :execution_end_time,
431
+ :executed_by,
432
+ :log_file,
433
+ :outputs)
434
+ include Aws::Structure
435
+ end
436
+
200
437
  # @note When making an API call, pass CancelCommandRequest
201
438
  # data as a hash:
202
439
  #
@@ -252,6 +489,12 @@ module Aws
252
489
  # The instance IDs against which this command was requested.
253
490
  # @return [Array<String>]
254
491
  #
492
+ # @!attribute [rw] targets
493
+ # An array of search criteria that targets instances using a
494
+ # `Key`;`Value` combination that you specify. `Targets` is required if
495
+ # you don't provide one or more instance IDs in the call.
496
+ # @return [Array<Types::Target>]
497
+ #
255
498
  # @!attribute [rw] requested_date_time
256
499
  # The date and time the command was requested.
257
500
  # @return [Time]
@@ -260,6 +503,59 @@ module Aws
260
503
  # The status of the command.
261
504
  # @return [String]
262
505
  #
506
+ # @!attribute [rw] status_details
507
+ # A detailed status of the command execution. `StatusDetails` includes
508
+ # more information than `Status` because it includes states resulting
509
+ # from error and concurrency control parameters. `StatusDetails` can
510
+ # show different results than `Status`. For more information about
511
+ # these statuses, see [Monitor Commands][1] (Linux) or [Monitor
512
+ # Commands][2] (Windows). `StatusDetails` can be one of the following
513
+ # values:
514
+ #
515
+ # * Pending – The command has not been sent to any instances.
516
+ #
517
+ # * In Progress – The command has been sent to at least one instance
518
+ # but has not reached a final state on all instances.
519
+ #
520
+ # * Success – The command successfully executed on all invocations.
521
+ # This is a terminal state.
522
+ #
523
+ # * Delivery Timed Out – The value of `MaxErrors` or more command
524
+ # invocations shows a status of `Delivery Timed Out`. This is a
525
+ # terminal state.
526
+ #
527
+ # * Execution Timed Out – The value of `MaxErrors` or more command
528
+ # invocations shows a status of `Execution Timed Out`. This is a
529
+ # terminal state.
530
+ #
531
+ # * Failed – The value of `MaxErrors` or more command invocations
532
+ # shows a status of `Failed`. This is a terminal state.
533
+ #
534
+ # * Incomplete – The command was attempted on all instances and one or
535
+ # more invocations does not have a value of `Success` but not enough
536
+ # invocations failed for the status to be `Failed`. This is a
537
+ # terminal state.
538
+ #
539
+ # * Canceled – The command was terminated before it was completed.
540
+ # This is a terminal state.
541
+ #
542
+ # * Rate Exceeded – The number of instances targeted by the command
543
+ # exceeded the account limit for pending invocations. The system has
544
+ # canceled the command before executing it on any instance. This is
545
+ # a terminal state.
546
+ #
547
+ #
548
+ #
549
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html
550
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/monitor-commands.html
551
+ # @return [String]
552
+ #
553
+ # @!attribute [rw] output_s3_region
554
+ # The region where the Amazon Simple Storage Service (Amazon S3)
555
+ # output bucket is located. The default value is the region where Run
556
+ # Command is being called.
557
+ # @return [String]
558
+ #
263
559
  # @!attribute [rw] output_s3_bucket_name
264
560
  # The S3 bucket where the responses to the command executions should
265
561
  # be stored. This was requested when issuing the command.
@@ -271,9 +567,54 @@ module Aws
271
567
  # the command.
272
568
  # @return [String]
273
569
  #
570
+ # @!attribute [rw] max_concurrency
571
+ # The maximum number of instances that are allowed to execute the
572
+ # command at the same time. You can specify a number of instances,
573
+ # such as 10, or a percentage of instances, such as 10%. The default
574
+ # value is 50. For more information about how to use `MaxConcurrency`,
575
+ # see [Executing a Command Using Amazon EC2 Run Command][1] (Linux) or
576
+ # [Executing a Command Using Amazon EC2 Run Command][2] (Windows).
577
+ #
578
+ #
579
+ #
580
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
581
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
582
+ # @return [String]
583
+ #
584
+ # @!attribute [rw] max_errors
585
+ # The maximum number of errors allowed before the system stops sending
586
+ # the command to additional targets. You can specify a number of
587
+ # errors, such as 10, or a percentage or errors, such as 10%. The
588
+ # default value is 50. For more information about how to use
589
+ # `MaxErrors`, see [Executing a Command Using Amazon EC2 Run
590
+ # Command][1] (Linux) or [Executing a Command Using Amazon EC2 Run
591
+ # Command][2] (Windows).
592
+ #
593
+ #
594
+ #
595
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
596
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
597
+ # @return [String]
598
+ #
599
+ # @!attribute [rw] target_count
600
+ # The number of targets for the command.
601
+ # @return [Integer]
602
+ #
603
+ # @!attribute [rw] completed_count
604
+ # The number of targets for which the command invocation reached a
605
+ # terminal state. Terminal states include the following: `Success`,
606
+ # `Failed`, `Execution Timed Out`, `Delivery Timed Out`, `Canceled`,
607
+ # `Terminated`, or `Undeliverable`.
608
+ # @return [Integer]
609
+ #
610
+ # @!attribute [rw] error_count
611
+ # The number of targets for which the status is `Failed` or `Execution
612
+ # Timed Out`.
613
+ # @return [Integer]
614
+ #
274
615
  # @!attribute [rw] service_role
275
- # The IAM service role that SSM uses to act on your behalf when
276
- # sending notifications about command status changes.
616
+ # The IAM service role that Run Command uses to act on your behalf
617
+ # when sending notifications about command status changes.
277
618
  # @return [String]
278
619
  #
279
620
  # @!attribute [rw] notification_config
@@ -287,10 +628,18 @@ module Aws
287
628
  :expires_after,
288
629
  :parameters,
289
630
  :instance_ids,
631
+ :targets,
290
632
  :requested_date_time,
291
633
  :status,
634
+ :status_details,
635
+ :output_s3_region,
292
636
  :output_s3_bucket_name,
293
637
  :output_s3_key_prefix,
638
+ :max_concurrency,
639
+ :max_errors,
640
+ :target_count,
641
+ :completed_count,
642
+ :error_count,
294
643
  :service_role,
295
644
  :notification_config)
296
645
  include Aws::Structure
@@ -331,6 +680,12 @@ module Aws
331
680
  # The instance ID in which this invocation was requested.
332
681
  # @return [String]
333
682
  #
683
+ # @!attribute [rw] instance_name
684
+ # The name of the invocation target. For Amazon EC2 instances this is
685
+ # the value for the `aws:Name` tag. For on-premises instances, this is
686
+ # the name of the instance.
687
+ # @return [String]
688
+ #
334
689
  # @!attribute [rw] comment
335
690
  # User-specified information about the command, such as a brief
336
691
  # description of what the command should do.
@@ -348,17 +703,87 @@ module Aws
348
703
  # Whether or not the invocation succeeded, failed, or is pending.
349
704
  # @return [String]
350
705
  #
706
+ # @!attribute [rw] status_details
707
+ # A detailed status of the command execution for each invocation (each
708
+ # instance targeted by the command). `StatusDetails` includes more
709
+ # information than `Status` because it includes states resulting from
710
+ # error and concurrency control parameters. `StatusDetails` can show
711
+ # different results than `Status`. For more information about these
712
+ # statuses, see [Monitor Commands][1] (Linux) or [Monitor Commands][2]
713
+ # (Windows). `StatusDetails` can be one of the following values:
714
+ #
715
+ # * Pending – The command has not been sent to the instance.
716
+ #
717
+ # * In Progress – The command has been sent to the instance but has
718
+ # not reached a terminal state.
719
+ #
720
+ # * Success – The execution of the command or plugin was successfully
721
+ # completed. This is a terminal state.
722
+ #
723
+ # * Delivery Timed Out – The command was not delivered to the instance
724
+ # before the delivery timeout expired. Delivery timeouts do not
725
+ # count against the parent command’s `MaxErrors` limit, but they do
726
+ # contribute to whether the parent command status is `Success` or
727
+ # `Incomplete`. This is a terminal state.
728
+ #
729
+ # * Execution Timed Out – Command execution started on the instance,
730
+ # but the execution was not complete before the execution timeout
731
+ # expired. Execution timeouts count against the `MaxErrors` limit of
732
+ # the parent command. This is a terminal state.
733
+ #
734
+ # * Failed – The command was not successful on the instance. For a
735
+ # plugin, this indicates that the result code was not zero. For a
736
+ # command invocation, this indicates that the result code for one or
737
+ # more plugins was not zero. Invocation failures count against the
738
+ # `MaxErrors` limit of the parent command. This is a terminal state.
739
+ #
740
+ # * Canceled – The command was terminated before it was completed.
741
+ # This is a terminal state.
742
+ #
743
+ # * Undeliverable – The command can't be delivered to the instance.
744
+ # The instance might not exist or might not be responding.
745
+ # Undeliverable invocations don't count against the parent
746
+ # command’s `MaxErrors` limit and don't contribute to whether the
747
+ # parent command status is `Success` or `Incomplete`. This is a
748
+ # terminal state.
749
+ #
750
+ # * Terminated – The parent command exceeded its `MaxErrors` limit and
751
+ # subsequent command invocations were canceled by the system. This
752
+ # is a terminal state.
753
+ #
754
+ #
755
+ #
756
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html
757
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/monitor-commands.html
758
+ # @return [String]
759
+ #
351
760
  # @!attribute [rw] trace_output
352
761
  # Gets the trace output sent by the agent.
353
762
  # @return [String]
354
763
  #
764
+ # @!attribute [rw] standard_output_url
765
+ # The URL to the plugin’s StdOut file in Amazon S3, if the Amazon S3
766
+ # bucket was defined for the parent command. For an invocation,
767
+ # `StandardOutputUrl` is populated if there is just one plugin defined
768
+ # for the command, and the Amazon S3 bucket was defined for the
769
+ # command.
770
+ # @return [String]
771
+ #
772
+ # @!attribute [rw] standard_error_url
773
+ # The URL to the plugin’s StdErr file in Amazon S3, if the Amazon S3
774
+ # bucket was defined for the parent command. For an invocation,
775
+ # `StandardErrorUrl` is populated if there is just one plugin defined
776
+ # for the command, and the Amazon S3 bucket was defined for the
777
+ # command.
778
+ # @return [String]
779
+ #
355
780
  # @!attribute [rw] command_plugins
356
781
  # @return [Array<Types::CommandPlugin>]
357
782
  #
358
783
  # @!attribute [rw] service_role
359
- # The IAM service role that SSM uses to act on your behalf when
360
- # sending notifications about command status changes on a per instance
361
- # basis.
784
+ # The IAM service role that Run Command uses to act on your behalf
785
+ # when sending notifications about command status changes on a per
786
+ # instance basis.
362
787
  # @return [String]
363
788
  #
364
789
  # @!attribute [rw] notification_config
@@ -368,11 +793,15 @@ module Aws
368
793
  class CommandInvocation < Struct.new(
369
794
  :command_id,
370
795
  :instance_id,
796
+ :instance_name,
371
797
  :comment,
372
798
  :document_name,
373
799
  :requested_date_time,
374
800
  :status,
801
+ :status_details,
375
802
  :trace_output,
803
+ :standard_output_url,
804
+ :standard_error_url,
376
805
  :command_plugins,
377
806
  :service_role,
378
807
  :notification_config)
@@ -392,6 +821,60 @@ module Aws
392
821
  # plugins.
393
822
  # @return [String]
394
823
  #
824
+ # @!attribute [rw] status_details
825
+ # A detailed status of the plugin execution. `StatusDetails` includes
826
+ # more information than `Status` because it includes states resulting
827
+ # from error and concurrency control parameters. `StatusDetails` can
828
+ # show different results than `Status`. For more information about
829
+ # these statuses, see [Monitor Commands][1] (Linux) or [Monitor
830
+ # Commands][2] (Windows). `StatusDetails` can be one of the following
831
+ # values:
832
+ #
833
+ # * Pending – The command has not been sent to the instance.
834
+ #
835
+ # * In Progress – The command has been sent to the instance but has
836
+ # not reached a terminal state.
837
+ #
838
+ # * Success – The execution of the command or plugin was successfully
839
+ # completed. This is a terminal state.
840
+ #
841
+ # * Delivery Timed Out – The command was not delivered to the instance
842
+ # before the delivery timeout expired. Delivery timeouts do not
843
+ # count against the parent command’s `MaxErrors` limit, but they do
844
+ # contribute to whether the parent command status is `Success` or
845
+ # `Incomplete`. This is a terminal state.
846
+ #
847
+ # * Execution Timed Out – Command execution started on the instance,
848
+ # but the execution was not complete before the execution timeout
849
+ # expired. Execution timeouts count against the `MaxErrors` limit of
850
+ # the parent command. This is a terminal state.
851
+ #
852
+ # * Failed – The command was not successful on the instance. For a
853
+ # plugin, this indicates that the result code was not zero. For a
854
+ # command invocation, this indicates that the result code for one or
855
+ # more plugins was not zero. Invocation failures count against the
856
+ # `MaxErrors` limit of the parent command. This is a terminal state.
857
+ #
858
+ # * Canceled – The command was terminated before it was completed.
859
+ # This is a terminal state.
860
+ #
861
+ # * Undeliverable – The command can't be delivered to the instance.
862
+ # The instance might not exist, or it might not be responding.
863
+ # Undeliverable invocations don't count against the parent
864
+ # command’s `MaxErrors` limit, and they don't contribute to whether
865
+ # the parent command status is `Success` or `Incomplete`. This is a
866
+ # terminal state.
867
+ #
868
+ # * Terminated – The parent command exceeded its `MaxErrors` limit and
869
+ # subsequent command invocations were canceled by the system. This
870
+ # is a terminal state.
871
+ #
872
+ #
873
+ #
874
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html
875
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/monitor-commands.html
876
+ # @return [String]
877
+ #
395
878
  # @!attribute [rw] response_code
396
879
  # A numeric response code generated after executing the plugin.
397
880
  # @return [Integer]
@@ -409,23 +892,65 @@ module Aws
409
892
  # Output of the plugin execution.
410
893
  # @return [String]
411
894
  #
895
+ # @!attribute [rw] standard_output_url
896
+ # The URL for the complete text written by the plugin to stdout in
897
+ # Amazon S3. If the Amazon S3 bucket for the command was not
898
+ # specified, then this string is empty.
899
+ # @return [String]
900
+ #
901
+ # @!attribute [rw] standard_error_url
902
+ # The URL for the complete text written by the plugin to stderr. If
903
+ # execution is not yet complete, then this string is empty.
904
+ # @return [String]
905
+ #
906
+ # @!attribute [rw] output_s3_region
907
+ # The name of the region where the output is stored in Amazon S3.
908
+ # @return [String]
909
+ #
412
910
  # @!attribute [rw] output_s3_bucket_name
413
911
  # The S3 bucket where the responses to the command executions should
414
- # be stored. This was requested when issuing the command.
912
+ # be stored. This was requested when issuing the command. For example,
913
+ # in the following response:
914
+ #
915
+ # `test_folder/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-1234567876543/awsrunShellScript`
916
+ #
917
+ # `test_folder` is the name of the Amazon S3 bucket;
918
+ #
919
+ # `ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix` is the name of the S3
920
+ # prefix;
921
+ #
922
+ # `i-1234567876543` is the instance ID;
923
+ #
924
+ # `awsrunShellScript` is the name of the plugin.
415
925
  # @return [String]
416
926
  #
417
927
  # @!attribute [rw] output_s3_key_prefix
418
928
  # The S3 directory path inside the bucket where the responses to the
419
929
  # command executions should be stored. This was requested when issuing
420
- # the command.
930
+ # the command. For example, in the following response:
931
+ #
932
+ # `test_folder/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-1234567876543/awsrunShellScript`
933
+ #
934
+ # `test_folder` is the name of the Amazon S3 bucket;
935
+ #
936
+ # `ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix` is the name of the S3
937
+ # prefix;
938
+ #
939
+ # `i-1234567876543` is the instance ID;
940
+ #
941
+ # `awsrunShellScript` is the name of the plugin.
421
942
  # @return [String]
422
943
  class CommandPlugin < Struct.new(
423
944
  :name,
424
945
  :status,
946
+ :status_details,
425
947
  :response_code,
426
948
  :response_start_date_time,
427
949
  :response_finish_date_time,
428
950
  :output,
951
+ :standard_output_url,
952
+ :standard_error_url,
953
+ :output_s3_region,
429
954
  :output_s3_bucket_name,
430
955
  :output_s3_key_prefix)
431
956
  include Aws::Structure
@@ -497,11 +1022,26 @@ module Aws
497
1022
  # {
498
1023
  # entries: [ # required
499
1024
  # {
500
- # name: "DocumentName",
1025
+ # name: "DocumentName", # required
501
1026
  # instance_id: "InstanceId",
502
1027
  # parameters: {
503
1028
  # "ParameterName" => ["ParameterValue"],
504
1029
  # },
1030
+ # document_version: "DocumentVersion",
1031
+ # targets: [
1032
+ # {
1033
+ # key: "TargetKey",
1034
+ # values: ["TargetValue"],
1035
+ # },
1036
+ # ],
1037
+ # schedule_expression: "ScheduleExpression",
1038
+ # output_location: {
1039
+ # s3_location: {
1040
+ # output_s3_region: "S3Region",
1041
+ # output_s3_bucket_name: "S3BucketName",
1042
+ # output_s3_key_prefix: "S3KeyPrefix",
1043
+ # },
1044
+ # },
505
1045
  # },
506
1046
  # ],
507
1047
  # }
@@ -518,11 +1058,26 @@ module Aws
518
1058
  # data as a hash:
519
1059
  #
520
1060
  # {
521
- # name: "DocumentName",
1061
+ # name: "DocumentName", # required
522
1062
  # instance_id: "InstanceId",
523
1063
  # parameters: {
524
1064
  # "ParameterName" => ["ParameterValue"],
525
1065
  # },
1066
+ # document_version: "DocumentVersion",
1067
+ # targets: [
1068
+ # {
1069
+ # key: "TargetKey",
1070
+ # values: ["TargetValue"],
1071
+ # },
1072
+ # ],
1073
+ # schedule_expression: "ScheduleExpression",
1074
+ # output_location: {
1075
+ # s3_location: {
1076
+ # output_s3_region: "S3Region",
1077
+ # output_s3_bucket_name: "S3BucketName",
1078
+ # output_s3_key_prefix: "S3KeyPrefix",
1079
+ # },
1080
+ # },
526
1081
  # }
527
1082
  # @!attribute [rw] name
528
1083
  # The name of the configuration document.
@@ -535,10 +1090,32 @@ module Aws
535
1090
  # @!attribute [rw] parameters
536
1091
  # A description of the parameters for a document.
537
1092
  # @return [Hash<String,Array<String>>]
1093
+ #
1094
+ # @!attribute [rw] document_version
1095
+ # The document version.
1096
+ # @return [String]
1097
+ #
1098
+ # @!attribute [rw] targets
1099
+ # The instances targeted by the request.
1100
+ # @return [Array<Types::Target>]
1101
+ #
1102
+ # @!attribute [rw] schedule_expression
1103
+ # A cron expression that specifies a schedule when the association
1104
+ # runs.
1105
+ # @return [String]
1106
+ #
1107
+ # @!attribute [rw] output_location
1108
+ # An Amazon S3 bucket where you want to store the results of this
1109
+ # request.
1110
+ # @return [Types::InstanceAssociationOutputLocation]
538
1111
  class CreateAssociationBatchRequestEntry < Struct.new(
539
1112
  :name,
540
1113
  :instance_id,
541
- :parameters)
1114
+ :parameters,
1115
+ :document_version,
1116
+ :targets,
1117
+ :schedule_expression,
1118
+ :output_location)
542
1119
  include Aws::Structure
543
1120
  end
544
1121
 
@@ -560,15 +1137,35 @@ module Aws
560
1137
  #
561
1138
  # {
562
1139
  # name: "DocumentName", # required
563
- # instance_id: "InstanceId", # required
1140
+ # document_version: "DocumentVersion",
1141
+ # instance_id: "InstanceId",
564
1142
  # parameters: {
565
1143
  # "ParameterName" => ["ParameterValue"],
566
1144
  # },
1145
+ # targets: [
1146
+ # {
1147
+ # key: "TargetKey",
1148
+ # values: ["TargetValue"],
1149
+ # },
1150
+ # ],
1151
+ # schedule_expression: "ScheduleExpression",
1152
+ # output_location: {
1153
+ # s3_location: {
1154
+ # output_s3_region: "S3Region",
1155
+ # output_s3_bucket_name: "S3BucketName",
1156
+ # output_s3_key_prefix: "S3KeyPrefix",
1157
+ # },
1158
+ # },
567
1159
  # }
568
1160
  # @!attribute [rw] name
569
1161
  # The name of the SSM document.
570
1162
  # @return [String]
571
1163
  #
1164
+ # @!attribute [rw] document_version
1165
+ # The document version you want to associate with the target(s). Can
1166
+ # be a specific version or the default version.
1167
+ # @return [String]
1168
+ #
572
1169
  # @!attribute [rw] instance_id
573
1170
  # The instance ID.
574
1171
  # @return [String]
@@ -576,10 +1173,39 @@ module Aws
576
1173
  # @!attribute [rw] parameters
577
1174
  # The parameters for the documents runtime configuration.
578
1175
  # @return [Hash<String,Array<String>>]
1176
+ #
1177
+ # @!attribute [rw] targets
1178
+ # The targets (either instances or tags) for the association.
1179
+ # Instances are specified using
1180
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
1181
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
1182
+ # @return [Array<Types::Target>]
1183
+ #
1184
+ # @!attribute [rw] schedule_expression
1185
+ # A cron expression when the association will be applied to the
1186
+ # target(s). Supported expressions are every half, 1, 2, 4, 8 or 12
1187
+ # hour(s); every specified day and time of the week. For example:
1188
+ # cron(0 0/30 * 1/1 * ? *) to run every thirty minutes; cron(0 0
1189
+ # 0/4 1/1 * ? *) to run every four hours; and cron(0 0 10 ? * SUN
1190
+ # *) to run every Sunday at 10 a.m.
1191
+ # @return [String]
1192
+ #
1193
+ # @!attribute [rw] output_location
1194
+ # An Amazon S3 bucket where you want to store the output details of
1195
+ # the request. For example:
1196
+ #
1197
+ # `"\{ "S3Location": \{ "OutputS3Region": "<region>",
1198
+ # "OutputS3BucketName": "bucket name", "OutputS3KeyPrefix":
1199
+ # "folder name" \} \}"`
1200
+ # @return [Types::InstanceAssociationOutputLocation]
579
1201
  class CreateAssociationRequest < Struct.new(
580
1202
  :name,
1203
+ :document_version,
581
1204
  :instance_id,
582
- :parameters)
1205
+ :parameters,
1206
+ :targets,
1207
+ :schedule_expression,
1208
+ :output_location)
583
1209
  include Aws::Structure
584
1210
  end
585
1211
 
@@ -597,6 +1223,7 @@ module Aws
597
1223
  # {
598
1224
  # content: "DocumentContent", # required
599
1225
  # name: "DocumentName", # required
1226
+ # document_type: "Command", # accepts Command, Policy, Automation
600
1227
  # }
601
1228
  # @!attribute [rw] content
602
1229
  # A valid JSON string.
@@ -605,9 +1232,15 @@ module Aws
605
1232
  # @!attribute [rw] name
606
1233
  # A name for the SSM document.
607
1234
  # @return [String]
1235
+ #
1236
+ # @!attribute [rw] document_type
1237
+ # The type of document to create. Valid document types include:
1238
+ # Policy, Automation, and Command.
1239
+ # @return [String]
608
1240
  class CreateDocumentRequest < Struct.new(
609
1241
  :content,
610
- :name)
1242
+ :name,
1243
+ :document_type)
611
1244
  include Aws::Structure
612
1245
  end
613
1246
 
@@ -619,6 +1252,64 @@ module Aws
619
1252
  include Aws::Structure
620
1253
  end
621
1254
 
1255
+ # @note When making an API call, pass CreateMaintenanceWindowRequest
1256
+ # data as a hash:
1257
+ #
1258
+ # {
1259
+ # name: "MaintenanceWindowName", # required
1260
+ # schedule: "MaintenanceWindowSchedule", # required
1261
+ # duration: 1, # required
1262
+ # cutoff: 1, # required
1263
+ # allow_unassociated_targets: false, # required
1264
+ # client_token: "ClientToken",
1265
+ # }
1266
+ # @!attribute [rw] name
1267
+ # The name of the Maintenance Window.
1268
+ # @return [String]
1269
+ #
1270
+ # @!attribute [rw] schedule
1271
+ # The schedule of the Maintenance Window in the form of a cron or rate
1272
+ # expression.
1273
+ # @return [String]
1274
+ #
1275
+ # @!attribute [rw] duration
1276
+ # The duration of the Maintenance Window in hours.
1277
+ # @return [Integer]
1278
+ #
1279
+ # @!attribute [rw] cutoff
1280
+ # The number of hours before the end of the Maintenance Window that
1281
+ # Systems Manager stops scheduling new tasks for execution.
1282
+ # @return [Integer]
1283
+ #
1284
+ # @!attribute [rw] allow_unassociated_targets
1285
+ # Whether targets must be registered with the Maintenance Window
1286
+ # before tasks can be defined for those targets.
1287
+ # @return [Boolean]
1288
+ #
1289
+ # @!attribute [rw] client_token
1290
+ # User-provided idempotency token.
1291
+ #
1292
+ # **A suitable default value is auto-generated.** You should
1293
+ # normally not need to pass this option.
1294
+ # @return [String]
1295
+ class CreateMaintenanceWindowRequest < Struct.new(
1296
+ :name,
1297
+ :schedule,
1298
+ :duration,
1299
+ :cutoff,
1300
+ :allow_unassociated_targets,
1301
+ :client_token)
1302
+ include Aws::Structure
1303
+ end
1304
+
1305
+ # @!attribute [rw] window_id
1306
+ # The ID of the created Maintenance Window.
1307
+ # @return [String]
1308
+ class CreateMaintenanceWindowResult < Struct.new(
1309
+ :window_id)
1310
+ include Aws::Structure
1311
+ end
1312
+
622
1313
  # @note When making an API call, pass DeleteActivationRequest
623
1314
  # data as a hash:
624
1315
  #
@@ -639,8 +1330,9 @@ module Aws
639
1330
  # data as a hash:
640
1331
  #
641
1332
  # {
642
- # name: "DocumentName", # required
643
- # instance_id: "InstanceId", # required
1333
+ # name: "DocumentName",
1334
+ # instance_id: "InstanceId",
1335
+ # association_id: "AssociationId",
644
1336
  # }
645
1337
  # @!attribute [rw] name
646
1338
  # The name of the SSM document.
@@ -649,9 +1341,14 @@ module Aws
649
1341
  # @!attribute [rw] instance_id
650
1342
  # The ID of the instance.
651
1343
  # @return [String]
1344
+ #
1345
+ # @!attribute [rw] association_id
1346
+ # The association ID that you want to delete.
1347
+ # @return [String]
652
1348
  class DeleteAssociationRequest < Struct.new(
653
1349
  :name,
654
- :instance_id)
1350
+ :instance_id,
1351
+ :association_id)
655
1352
  include Aws::Structure
656
1353
  end
657
1354
 
@@ -673,14 +1370,52 @@ module Aws
673
1370
 
674
1371
  class DeleteDocumentResult < Aws::EmptyStructure; end
675
1372
 
676
- # @note When making an API call, pass DeregisterManagedInstanceRequest
1373
+ # @note When making an API call, pass DeleteMaintenanceWindowRequest
677
1374
  # data as a hash:
678
1375
  #
679
1376
  # {
680
- # instance_id: "ManagedInstanceId", # required
1377
+ # window_id: "MaintenanceWindowId", # required
681
1378
  # }
682
- # @!attribute [rw] instance_id
683
- # The ID assigned to the managed instance when you registered it using
1379
+ # @!attribute [rw] window_id
1380
+ # The ID of the Maintenance Window to delete.
1381
+ # @return [String]
1382
+ class DeleteMaintenanceWindowRequest < Struct.new(
1383
+ :window_id)
1384
+ include Aws::Structure
1385
+ end
1386
+
1387
+ # @!attribute [rw] window_id
1388
+ # The ID of the deleted Maintenance Window.
1389
+ # @return [String]
1390
+ class DeleteMaintenanceWindowResult < Struct.new(
1391
+ :window_id)
1392
+ include Aws::Structure
1393
+ end
1394
+
1395
+ # @note When making an API call, pass DeleteParameterRequest
1396
+ # data as a hash:
1397
+ #
1398
+ # {
1399
+ # name: "PSParameterName", # required
1400
+ # }
1401
+ # @!attribute [rw] name
1402
+ # The name of the parameter to delete.
1403
+ # @return [String]
1404
+ class DeleteParameterRequest < Struct.new(
1405
+ :name)
1406
+ include Aws::Structure
1407
+ end
1408
+
1409
+ class DeleteParameterResult < Aws::EmptyStructure; end
1410
+
1411
+ # @note When making an API call, pass DeregisterManagedInstanceRequest
1412
+ # data as a hash:
1413
+ #
1414
+ # {
1415
+ # instance_id: "ManagedInstanceId", # required
1416
+ # }
1417
+ # @!attribute [rw] instance_id
1418
+ # The ID assigned to the managed instance when you registered it using
684
1419
  # the activation process.
685
1420
  # @return [String]
686
1421
  class DeregisterManagedInstanceRequest < Struct.new(
@@ -690,6 +1425,72 @@ module Aws
690
1425
 
691
1426
  class DeregisterManagedInstanceResult < Aws::EmptyStructure; end
692
1427
 
1428
+ # @note When making an API call, pass DeregisterTargetFromMaintenanceWindowRequest
1429
+ # data as a hash:
1430
+ #
1431
+ # {
1432
+ # window_id: "MaintenanceWindowId", # required
1433
+ # window_target_id: "MaintenanceWindowTargetId", # required
1434
+ # }
1435
+ # @!attribute [rw] window_id
1436
+ # The ID of the Maintenance Window the target should be removed from.
1437
+ # @return [String]
1438
+ #
1439
+ # @!attribute [rw] window_target_id
1440
+ # The ID of the target definition to remove.
1441
+ # @return [String]
1442
+ class DeregisterTargetFromMaintenanceWindowRequest < Struct.new(
1443
+ :window_id,
1444
+ :window_target_id)
1445
+ include Aws::Structure
1446
+ end
1447
+
1448
+ # @!attribute [rw] window_id
1449
+ # The ID of the Maintenance Window the target was removed from.
1450
+ # @return [String]
1451
+ #
1452
+ # @!attribute [rw] window_target_id
1453
+ # The ID of the removed target definition.
1454
+ # @return [String]
1455
+ class DeregisterTargetFromMaintenanceWindowResult < Struct.new(
1456
+ :window_id,
1457
+ :window_target_id)
1458
+ include Aws::Structure
1459
+ end
1460
+
1461
+ # @note When making an API call, pass DeregisterTaskFromMaintenanceWindowRequest
1462
+ # data as a hash:
1463
+ #
1464
+ # {
1465
+ # window_id: "MaintenanceWindowId", # required
1466
+ # window_task_id: "MaintenanceWindowTaskId", # required
1467
+ # }
1468
+ # @!attribute [rw] window_id
1469
+ # The ID of the Maintenance Window the task should be removed from.
1470
+ # @return [String]
1471
+ #
1472
+ # @!attribute [rw] window_task_id
1473
+ # The ID of the task to remove from the Maintenance Window.
1474
+ # @return [String]
1475
+ class DeregisterTaskFromMaintenanceWindowRequest < Struct.new(
1476
+ :window_id,
1477
+ :window_task_id)
1478
+ include Aws::Structure
1479
+ end
1480
+
1481
+ # @!attribute [rw] window_id
1482
+ # The ID of the Maintenance Window the task was removed from.
1483
+ # @return [String]
1484
+ #
1485
+ # @!attribute [rw] window_task_id
1486
+ # The ID of the task removed from the Maintenance Window.
1487
+ # @return [String]
1488
+ class DeregisterTaskFromMaintenanceWindowResult < Struct.new(
1489
+ :window_id,
1490
+ :window_task_id)
1491
+ include Aws::Structure
1492
+ end
1493
+
693
1494
  # Filter for the DescribeActivation API.
694
1495
  # @note When making an API call, pass DescribeActivationsFilter
695
1496
  # data as a hash:
@@ -763,8 +1564,9 @@ module Aws
763
1564
  # data as a hash:
764
1565
  #
765
1566
  # {
766
- # name: "DocumentName", # required
767
- # instance_id: "InstanceId", # required
1567
+ # name: "DocumentName",
1568
+ # instance_id: "InstanceId",
1569
+ # association_id: "AssociationId",
768
1570
  # }
769
1571
  # @!attribute [rw] name
770
1572
  # The name of the SSM document.
@@ -773,9 +1575,14 @@ module Aws
773
1575
  # @!attribute [rw] instance_id
774
1576
  # The instance ID.
775
1577
  # @return [String]
1578
+ #
1579
+ # @!attribute [rw] association_id
1580
+ # The association ID for which you want information.
1581
+ # @return [String]
776
1582
  class DescribeAssociationRequest < Struct.new(
777
1583
  :name,
778
- :instance_id)
1584
+ :instance_id,
1585
+ :association_id)
779
1586
  include Aws::Structure
780
1587
  end
781
1588
 
@@ -787,6 +1594,55 @@ module Aws
787
1594
  include Aws::Structure
788
1595
  end
789
1596
 
1597
+ # @note When making an API call, pass DescribeAutomationExecutionsRequest
1598
+ # data as a hash:
1599
+ #
1600
+ # {
1601
+ # filters: [
1602
+ # {
1603
+ # key: "DocumentNamePrefix", # required, accepts DocumentNamePrefix, ExecutionStatus
1604
+ # values: ["AutomationExecutionFilterValue"], # required
1605
+ # },
1606
+ # ],
1607
+ # max_results: 1,
1608
+ # next_token: "NextToken",
1609
+ # }
1610
+ # @!attribute [rw] filters
1611
+ # Filters used to limit the scope of executions that are requested.
1612
+ # @return [Array<Types::AutomationExecutionFilter>]
1613
+ #
1614
+ # @!attribute [rw] max_results
1615
+ # The maximum number of items to return for this call. The call also
1616
+ # returns a token that you can specify in a subsequent call to get the
1617
+ # next set of results.
1618
+ # @return [Integer]
1619
+ #
1620
+ # @!attribute [rw] next_token
1621
+ # The token for the next set of items to return. (You received this
1622
+ # token from a previous call.)
1623
+ # @return [String]
1624
+ class DescribeAutomationExecutionsRequest < Struct.new(
1625
+ :filters,
1626
+ :max_results,
1627
+ :next_token)
1628
+ include Aws::Structure
1629
+ end
1630
+
1631
+ # @!attribute [rw] automation_execution_metadata_list
1632
+ # The list of details about each automation execution which has
1633
+ # occurred which matches the filter specification, if any.
1634
+ # @return [Array<Types::AutomationExecutionMetadata>]
1635
+ #
1636
+ # @!attribute [rw] next_token
1637
+ # The token to use when requesting the next set of items. If there are
1638
+ # no additional items to return, the string is empty.
1639
+ # @return [String]
1640
+ class DescribeAutomationExecutionsResult < Struct.new(
1641
+ :automation_execution_metadata_list,
1642
+ :next_token)
1643
+ include Aws::Structure
1644
+ end
1645
+
790
1646
  # @note When making an API call, pass DescribeDocumentPermissionRequest
791
1647
  # data as a hash:
792
1648
  #
@@ -822,12 +1678,19 @@ module Aws
822
1678
  #
823
1679
  # {
824
1680
  # name: "DocumentARN", # required
1681
+ # document_version: "DocumentVersion",
825
1682
  # }
826
1683
  # @!attribute [rw] name
827
1684
  # The name of the SSM document.
828
1685
  # @return [String]
1686
+ #
1687
+ # @!attribute [rw] document_version
1688
+ # The document version for which you want information. Can be a
1689
+ # specific version or the default version.
1690
+ # @return [String]
829
1691
  class DescribeDocumentRequest < Struct.new(
830
- :name)
1692
+ :name,
1693
+ :document_version)
831
1694
  include Aws::Structure
832
1695
  end
833
1696
 
@@ -839,16 +1702,108 @@ module Aws
839
1702
  include Aws::Structure
840
1703
  end
841
1704
 
1705
+ # @note When making an API call, pass DescribeEffectiveInstanceAssociationsRequest
1706
+ # data as a hash:
1707
+ #
1708
+ # {
1709
+ # instance_id: "InstanceId", # required
1710
+ # max_results: 1,
1711
+ # next_token: "NextToken",
1712
+ # }
1713
+ # @!attribute [rw] instance_id
1714
+ # The instance ID for which you want to view all associations.
1715
+ # @return [String]
1716
+ #
1717
+ # @!attribute [rw] max_results
1718
+ # The maximum number of items to return for this call. The call also
1719
+ # returns a token that you can specify in a subsequent call to get the
1720
+ # next set of results.
1721
+ # @return [Integer]
1722
+ #
1723
+ # @!attribute [rw] next_token
1724
+ # The token for the next set of items to return. (You received this
1725
+ # token from a previous call.)
1726
+ # @return [String]
1727
+ class DescribeEffectiveInstanceAssociationsRequest < Struct.new(
1728
+ :instance_id,
1729
+ :max_results,
1730
+ :next_token)
1731
+ include Aws::Structure
1732
+ end
1733
+
1734
+ # @!attribute [rw] associations
1735
+ # The associations for the requested instance.
1736
+ # @return [Array<Types::InstanceAssociation>]
1737
+ #
1738
+ # @!attribute [rw] next_token
1739
+ # The token to use when requesting the next set of items. If there are
1740
+ # no additional items to return, the string is empty.
1741
+ # @return [String]
1742
+ class DescribeEffectiveInstanceAssociationsResult < Struct.new(
1743
+ :associations,
1744
+ :next_token)
1745
+ include Aws::Structure
1746
+ end
1747
+
1748
+ # @note When making an API call, pass DescribeInstanceAssociationsStatusRequest
1749
+ # data as a hash:
1750
+ #
1751
+ # {
1752
+ # instance_id: "InstanceId", # required
1753
+ # max_results: 1,
1754
+ # next_token: "NextToken",
1755
+ # }
1756
+ # @!attribute [rw] instance_id
1757
+ # The instance IDs for which you want association status information.
1758
+ # @return [String]
1759
+ #
1760
+ # @!attribute [rw] max_results
1761
+ # The maximum number of items to return for this call. The call also
1762
+ # returns a token that you can specify in a subsequent call to get the
1763
+ # next set of results.
1764
+ # @return [Integer]
1765
+ #
1766
+ # @!attribute [rw] next_token
1767
+ # The token for the next set of items to return. (You received this
1768
+ # token from a previous call.)
1769
+ # @return [String]
1770
+ class DescribeInstanceAssociationsStatusRequest < Struct.new(
1771
+ :instance_id,
1772
+ :max_results,
1773
+ :next_token)
1774
+ include Aws::Structure
1775
+ end
1776
+
1777
+ # @!attribute [rw] instance_association_status_infos
1778
+ # Status information about the association.
1779
+ # @return [Array<Types::InstanceAssociationStatusInfo>]
1780
+ #
1781
+ # @!attribute [rw] next_token
1782
+ # The token to use when requesting the next set of items. If there are
1783
+ # no additional items to return, the string is empty.
1784
+ # @return [String]
1785
+ class DescribeInstanceAssociationsStatusResult < Struct.new(
1786
+ :instance_association_status_infos,
1787
+ :next_token)
1788
+ include Aws::Structure
1789
+ end
1790
+
842
1791
  # @note When making an API call, pass DescribeInstanceInformationRequest
843
1792
  # data as a hash:
844
1793
  #
845
1794
  # {
846
1795
  # instance_information_filter_list: [
847
1796
  # {
848
- # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType
1797
+ # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType, AssociationStatus
849
1798
  # value_set: ["InstanceInformationFilterValue"], # required
850
1799
  # },
851
1800
  # ],
1801
+ # filters: [
1802
+ # {
1803
+ # key: "InstanceInformationStringFilterKey", # required
1804
+ # values: ["InstanceInformationFilterValue"], # required
1805
+ # },
1806
+ # ],
852
1807
  # max_results: 1,
853
1808
  # next_token: "NextToken",
854
1809
  # }
@@ -857,6 +1812,11 @@ module Aws
857
1812
  # instances.
858
1813
  # @return [Array<Types::InstanceInformationFilter>]
859
1814
  #
1815
+ # @!attribute [rw] filters
1816
+ # One or more filters. Use a filter to return a more specific list of
1817
+ # instances.
1818
+ # @return [Array<Types::InstanceInformationStringFilter>]
1819
+ #
860
1820
  # @!attribute [rw] max_results
861
1821
  # The maximum number of items to return for this call. The call also
862
1822
  # returns a token that you can specify in a subsequent call to get the
@@ -869,6 +1829,7 @@ module Aws
869
1829
  # @return [String]
870
1830
  class DescribeInstanceInformationRequest < Struct.new(
871
1831
  :instance_information_filter_list,
1832
+ :filters,
872
1833
  :max_results,
873
1834
  :next_token)
874
1835
  include Aws::Structure
@@ -888,182 +1849,1399 @@ module Aws
888
1849
  include Aws::Structure
889
1850
  end
890
1851
 
891
- # Describes an SSM document.
892
- # @!attribute [rw] sha_1
893
- # The SHA1 hash of the document, which you can use for verification
894
- # purposes.
895
- # @return [String]
896
- #
897
- # @!attribute [rw] hash
898
- # The Sha256 or Sha1 hash created by the system when the document was
899
- # created.
1852
+ # @note When making an API call, pass DescribeMaintenanceWindowExecutionTaskInvocationsRequest
1853
+ # data as a hash:
900
1854
  #
901
- # <note markdown="1"> Sha1 hashes have been deprecated.
1855
+ # {
1856
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
1857
+ # task_id: "MaintenanceWindowExecutionTaskId", # required
1858
+ # filters: [
1859
+ # {
1860
+ # key: "MaintenanceWindowFilterKey",
1861
+ # values: ["MaintenanceWindowFilterValue"],
1862
+ # },
1863
+ # ],
1864
+ # max_results: 1,
1865
+ # next_token: "NextToken",
1866
+ # }
1867
+ # @!attribute [rw] window_execution_id
1868
+ # The ID of the Maintenance Window execution the task is part of.
1869
+ # @return [String]
902
1870
  #
903
- # </note>
1871
+ # @!attribute [rw] task_id
1872
+ # The ID of the specific task in the Maintenance Window task that
1873
+ # should be retrieved.
904
1874
  # @return [String]
905
1875
  #
906
- # @!attribute [rw] hash_type
907
- # Sha256 or Sha1.
1876
+ # @!attribute [rw] filters
1877
+ # Optional filters used to scope down the returned task invocations.
1878
+ # The supported filter key is STATUS with the corresponding values
1879
+ # PENDING, IN\_PROGRESS, SUCCESS, FAILED, TIMED\_OUT, CANCELLING, and
1880
+ # CANCELLED.
1881
+ # @return [Array<Types::MaintenanceWindowFilter>]
908
1882
  #
909
- # <note markdown="1"> Sha1 hashes have been deprecated.
1883
+ # @!attribute [rw] max_results
1884
+ # The maximum number of items to return for this call. The call also
1885
+ # returns a token that you can specify in a subsequent call to get the
1886
+ # next set of results.
1887
+ # @return [Integer]
910
1888
  #
911
- # </note>
1889
+ # @!attribute [rw] next_token
1890
+ # The token for the next set of items to return. (You received this
1891
+ # token from a previous call.)
912
1892
  # @return [String]
1893
+ class DescribeMaintenanceWindowExecutionTaskInvocationsRequest < Struct.new(
1894
+ :window_execution_id,
1895
+ :task_id,
1896
+ :filters,
1897
+ :max_results,
1898
+ :next_token)
1899
+ include Aws::Structure
1900
+ end
1901
+
1902
+ # @!attribute [rw] window_execution_task_invocation_identities
1903
+ # Information about the task invocation results per invocation.
1904
+ # @return [Array<Types::MaintenanceWindowExecutionTaskInvocationIdentity>]
913
1905
  #
914
- # @!attribute [rw] name
915
- # The name of the SSM document.
1906
+ # @!attribute [rw] next_token
1907
+ # The token to use when requesting the next set of items. If there are
1908
+ # no additional items to return, the string is empty.
916
1909
  # @return [String]
1910
+ class DescribeMaintenanceWindowExecutionTaskInvocationsResult < Struct.new(
1911
+ :window_execution_task_invocation_identities,
1912
+ :next_token)
1913
+ include Aws::Structure
1914
+ end
1915
+
1916
+ # @note When making an API call, pass DescribeMaintenanceWindowExecutionTasksRequest
1917
+ # data as a hash:
917
1918
  #
918
- # @!attribute [rw] owner
919
- # The AWS user account of the person who created the document.
1919
+ # {
1920
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
1921
+ # filters: [
1922
+ # {
1923
+ # key: "MaintenanceWindowFilterKey",
1924
+ # values: ["MaintenanceWindowFilterValue"],
1925
+ # },
1926
+ # ],
1927
+ # max_results: 1,
1928
+ # next_token: "NextToken",
1929
+ # }
1930
+ # @!attribute [rw] window_execution_id
1931
+ # The ID of the Maintenance Window execution whose task executions
1932
+ # should be retrieved.
920
1933
  # @return [String]
921
1934
  #
922
- # @!attribute [rw] created_date
923
- # The date when the SSM document was created.
924
- # @return [Time]
1935
+ # @!attribute [rw] filters
1936
+ # Optional filters used to scope down the returned tasks. The
1937
+ # supported filter key is STATUS with the corresponding values
1938
+ # PENDING, IN\_PROGRESS, SUCCESS, FAILED, TIMED\_OUT, CANCELLING, and
1939
+ # CANCELLED.
1940
+ # @return [Array<Types::MaintenanceWindowFilter>]
925
1941
  #
926
- # @!attribute [rw] status
927
- # The status of the SSM document.
928
- # @return [String]
1942
+ # @!attribute [rw] max_results
1943
+ # The maximum number of items to return for this call. The call also
1944
+ # returns a token that you can specify in a subsequent call to get the
1945
+ # next set of results.
1946
+ # @return [Integer]
929
1947
  #
930
- # @!attribute [rw] description
931
- # A description of the document.
1948
+ # @!attribute [rw] next_token
1949
+ # The token for the next set of items to return. (You received this
1950
+ # token from a previous call.)
1951
+ # @return [String]
1952
+ class DescribeMaintenanceWindowExecutionTasksRequest < Struct.new(
1953
+ :window_execution_id,
1954
+ :filters,
1955
+ :max_results,
1956
+ :next_token)
1957
+ include Aws::Structure
1958
+ end
1959
+
1960
+ # @!attribute [rw] window_execution_task_identities
1961
+ # Information about the task executions.
1962
+ # @return [Array<Types::MaintenanceWindowExecutionTaskIdentity>]
1963
+ #
1964
+ # @!attribute [rw] next_token
1965
+ # The token to use when requesting the next set of items. If there are
1966
+ # no additional items to return, the string is empty.
1967
+ # @return [String]
1968
+ class DescribeMaintenanceWindowExecutionTasksResult < Struct.new(
1969
+ :window_execution_task_identities,
1970
+ :next_token)
1971
+ include Aws::Structure
1972
+ end
1973
+
1974
+ # @note When making an API call, pass DescribeMaintenanceWindowExecutionsRequest
1975
+ # data as a hash:
1976
+ #
1977
+ # {
1978
+ # window_id: "MaintenanceWindowId", # required
1979
+ # filters: [
1980
+ # {
1981
+ # key: "MaintenanceWindowFilterKey",
1982
+ # values: ["MaintenanceWindowFilterValue"],
1983
+ # },
1984
+ # ],
1985
+ # max_results: 1,
1986
+ # next_token: "NextToken",
1987
+ # }
1988
+ # @!attribute [rw] window_id
1989
+ # The ID of the Maintenance Window whose executions should be
1990
+ # retrieved.
1991
+ # @return [String]
1992
+ #
1993
+ # @!attribute [rw] filters
1994
+ # Each entry in the array is a structure containing:
1995
+ #
1996
+ # Key (string, 1 ≤ length ≤ 128)
1997
+ #
1998
+ # Values (array of strings 1 ≤ length ≤ 256)
1999
+ #
2000
+ # The supported Keys are `ExecutedBefore` and `ExecutedAfter` with the
2001
+ # value being a date/time string such as 2016-11-04T05:00:00Z.
2002
+ # @return [Array<Types::MaintenanceWindowFilter>]
2003
+ #
2004
+ # @!attribute [rw] max_results
2005
+ # The maximum number of items to return for this call. The call also
2006
+ # returns a token that you can specify in a subsequent call to get the
2007
+ # next set of results.
2008
+ # @return [Integer]
2009
+ #
2010
+ # @!attribute [rw] next_token
2011
+ # The token for the next set of items to return. (You received this
2012
+ # token from a previous call.)
2013
+ # @return [String]
2014
+ class DescribeMaintenanceWindowExecutionsRequest < Struct.new(
2015
+ :window_id,
2016
+ :filters,
2017
+ :max_results,
2018
+ :next_token)
2019
+ include Aws::Structure
2020
+ end
2021
+
2022
+ # @!attribute [rw] window_executions
2023
+ # Information about the Maintenance Windows execution.
2024
+ # @return [Array<Types::MaintenanceWindowExecution>]
2025
+ #
2026
+ # @!attribute [rw] next_token
2027
+ # The token to use when requesting the next set of items. If there are
2028
+ # no additional items to return, the string is empty.
2029
+ # @return [String]
2030
+ class DescribeMaintenanceWindowExecutionsResult < Struct.new(
2031
+ :window_executions,
2032
+ :next_token)
2033
+ include Aws::Structure
2034
+ end
2035
+
2036
+ # @note When making an API call, pass DescribeMaintenanceWindowTargetsRequest
2037
+ # data as a hash:
2038
+ #
2039
+ # {
2040
+ # window_id: "MaintenanceWindowId", # required
2041
+ # filters: [
2042
+ # {
2043
+ # key: "MaintenanceWindowFilterKey",
2044
+ # values: ["MaintenanceWindowFilterValue"],
2045
+ # },
2046
+ # ],
2047
+ # max_results: 1,
2048
+ # next_token: "NextToken",
2049
+ # }
2050
+ # @!attribute [rw] window_id
2051
+ # The ID of the Maintenance Window whose targets should be retrieved.
2052
+ # @return [String]
2053
+ #
2054
+ # @!attribute [rw] filters
2055
+ # Optional filters that can be used to narrow down the scope of the
2056
+ # returned window targets. The supported filter keys are `Type`,
2057
+ # `WindowTargetId` and `OwnerInformation`.
2058
+ # @return [Array<Types::MaintenanceWindowFilter>]
2059
+ #
2060
+ # @!attribute [rw] max_results
2061
+ # The maximum number of items to return for this call. The call also
2062
+ # returns a token that you can specify in a subsequent call to get the
2063
+ # next set of results.
2064
+ # @return [Integer]
2065
+ #
2066
+ # @!attribute [rw] next_token
2067
+ # The token for the next set of items to return. (You received this
2068
+ # token from a previous call.)
2069
+ # @return [String]
2070
+ class DescribeMaintenanceWindowTargetsRequest < Struct.new(
2071
+ :window_id,
2072
+ :filters,
2073
+ :max_results,
2074
+ :next_token)
2075
+ include Aws::Structure
2076
+ end
2077
+
2078
+ # @!attribute [rw] targets
2079
+ # Information about the targets in the Maintenance Window.
2080
+ # @return [Array<Types::MaintenanceWindowTarget>]
2081
+ #
2082
+ # @!attribute [rw] next_token
2083
+ # The token to use when requesting the next set of items. If there are
2084
+ # no additional items to return, the string is empty.
2085
+ # @return [String]
2086
+ class DescribeMaintenanceWindowTargetsResult < Struct.new(
2087
+ :targets,
2088
+ :next_token)
2089
+ include Aws::Structure
2090
+ end
2091
+
2092
+ # @note When making an API call, pass DescribeMaintenanceWindowTasksRequest
2093
+ # data as a hash:
2094
+ #
2095
+ # {
2096
+ # window_id: "MaintenanceWindowId", # required
2097
+ # filters: [
2098
+ # {
2099
+ # key: "MaintenanceWindowFilterKey",
2100
+ # values: ["MaintenanceWindowFilterValue"],
2101
+ # },
2102
+ # ],
2103
+ # max_results: 1,
2104
+ # next_token: "NextToken",
2105
+ # }
2106
+ # @!attribute [rw] window_id
2107
+ # The ID of the Maintenance Window whose tasks should be retrieved.
2108
+ # @return [String]
2109
+ #
2110
+ # @!attribute [rw] filters
2111
+ # Optional filters used to narrow down the scope of the returned
2112
+ # tasks. The supported filter keys are `WindowTaskId`, `TaskArn`,
2113
+ # `Priority`, and `TaskType`.
2114
+ # @return [Array<Types::MaintenanceWindowFilter>]
2115
+ #
2116
+ # @!attribute [rw] max_results
2117
+ # The maximum number of items to return for this call. The call also
2118
+ # returns a token that you can specify in a subsequent call to get the
2119
+ # next set of results.
2120
+ # @return [Integer]
2121
+ #
2122
+ # @!attribute [rw] next_token
2123
+ # The token for the next set of items to return. (You received this
2124
+ # token from a previous call.)
2125
+ # @return [String]
2126
+ class DescribeMaintenanceWindowTasksRequest < Struct.new(
2127
+ :window_id,
2128
+ :filters,
2129
+ :max_results,
2130
+ :next_token)
2131
+ include Aws::Structure
2132
+ end
2133
+
2134
+ # @!attribute [rw] tasks
2135
+ # Information about the tasks in the Maintenance Window.
2136
+ # @return [Array<Types::MaintenanceWindowTask>]
2137
+ #
2138
+ # @!attribute [rw] next_token
2139
+ # The token to use when requesting the next set of items. If there are
2140
+ # no additional items to return, the string is empty.
2141
+ # @return [String]
2142
+ class DescribeMaintenanceWindowTasksResult < Struct.new(
2143
+ :tasks,
2144
+ :next_token)
2145
+ include Aws::Structure
2146
+ end
2147
+
2148
+ # @note When making an API call, pass DescribeMaintenanceWindowsRequest
2149
+ # data as a hash:
2150
+ #
2151
+ # {
2152
+ # filters: [
2153
+ # {
2154
+ # key: "MaintenanceWindowFilterKey",
2155
+ # values: ["MaintenanceWindowFilterValue"],
2156
+ # },
2157
+ # ],
2158
+ # max_results: 1,
2159
+ # next_token: "NextToken",
2160
+ # }
2161
+ # @!attribute [rw] filters
2162
+ # Optional filters used to narrow down the scope of the returned
2163
+ # Maintenance Windows. Supported filter keys are `Name` and `Enabled`.
2164
+ # @return [Array<Types::MaintenanceWindowFilter>]
2165
+ #
2166
+ # @!attribute [rw] max_results
2167
+ # The maximum number of items to return for this call. The call also
2168
+ # returns a token that you can specify in a subsequent call to get the
2169
+ # next set of results.
2170
+ # @return [Integer]
2171
+ #
2172
+ # @!attribute [rw] next_token
2173
+ # The token for the next set of items to return. (You received this
2174
+ # token from a previous call.)
2175
+ # @return [String]
2176
+ class DescribeMaintenanceWindowsRequest < Struct.new(
2177
+ :filters,
2178
+ :max_results,
2179
+ :next_token)
2180
+ include Aws::Structure
2181
+ end
2182
+
2183
+ # @!attribute [rw] window_identities
2184
+ # Information about the Maintenance Windows.
2185
+ # @return [Array<Types::MaintenanceWindowIdentity>]
2186
+ #
2187
+ # @!attribute [rw] next_token
2188
+ # The token to use when requesting the next set of items. If there are
2189
+ # no additional items to return, the string is empty.
932
2190
  # @return [String]
2191
+ class DescribeMaintenanceWindowsResult < Struct.new(
2192
+ :window_identities,
2193
+ :next_token)
2194
+ include Aws::Structure
2195
+ end
2196
+
2197
+ # @note When making an API call, pass DescribeParametersRequest
2198
+ # data as a hash:
2199
+ #
2200
+ # {
2201
+ # filters: [
2202
+ # {
2203
+ # key: "Name", # accepts Name, Type, KeyId
2204
+ # values: ["ParametersFilterValue"], # required
2205
+ # },
2206
+ # ],
2207
+ # max_results: 1,
2208
+ # next_token: "NextToken",
2209
+ # }
2210
+ # @!attribute [rw] filters
2211
+ # One or more filters. Use a filter to return a more specific list of
2212
+ # results.
2213
+ # @return [Array<Types::ParametersFilter>]
2214
+ #
2215
+ # @!attribute [rw] max_results
2216
+ # The maximum number of items to return for this call. The call also
2217
+ # returns a token that you can specify in a subsequent call to get the
2218
+ # next set of results.
2219
+ # @return [Integer]
933
2220
  #
2221
+ # @!attribute [rw] next_token
2222
+ # The token for the next set of items to return. (You received this
2223
+ # token from a previous call.)
2224
+ # @return [String]
2225
+ class DescribeParametersRequest < Struct.new(
2226
+ :filters,
2227
+ :max_results,
2228
+ :next_token)
2229
+ include Aws::Structure
2230
+ end
2231
+
934
2232
  # @!attribute [rw] parameters
935
- # A description of the parameters for a document.
936
- # @return [Array<Types::DocumentParameter>]
2233
+ # Parameters returned by the request.
2234
+ # @return [Array<Types::ParameterMetadata>]
2235
+ #
2236
+ # @!attribute [rw] next_token
2237
+ # The token to use when requesting the next set of items. If there are
2238
+ # no additional items to return, the string is empty.
2239
+ # @return [String]
2240
+ class DescribeParametersResult < Struct.new(
2241
+ :parameters,
2242
+ :next_token)
2243
+ include Aws::Structure
2244
+ end
2245
+
2246
+ # A default version of a document.
2247
+ # @!attribute [rw] name
2248
+ # The name of the document.
2249
+ # @return [String]
2250
+ #
2251
+ # @!attribute [rw] default_version
2252
+ # The default version of the document.
2253
+ # @return [String]
2254
+ class DocumentDefaultVersionDescription < Struct.new(
2255
+ :name,
2256
+ :default_version)
2257
+ include Aws::Structure
2258
+ end
2259
+
2260
+ # Describes an SSM document.
2261
+ # @!attribute [rw] sha_1
2262
+ # The SHA1 hash of the document, which you can use for verification
2263
+ # purposes.
2264
+ # @return [String]
2265
+ #
2266
+ # @!attribute [rw] hash
2267
+ # The Sha256 or Sha1 hash created by the system when the document was
2268
+ # created.
2269
+ #
2270
+ # <note markdown="1"> Sha1 hashes have been deprecated.
2271
+ #
2272
+ # </note>
2273
+ # @return [String]
2274
+ #
2275
+ # @!attribute [rw] hash_type
2276
+ # Sha256 or Sha1.
2277
+ #
2278
+ # <note markdown="1"> Sha1 hashes have been deprecated.
2279
+ #
2280
+ # </note>
2281
+ # @return [String]
2282
+ #
2283
+ # @!attribute [rw] name
2284
+ # The name of the SSM document.
2285
+ # @return [String]
2286
+ #
2287
+ # @!attribute [rw] owner
2288
+ # The AWS user account of the person who created the document.
2289
+ # @return [String]
2290
+ #
2291
+ # @!attribute [rw] created_date
2292
+ # The date when the SSM document was created.
2293
+ # @return [Time]
2294
+ #
2295
+ # @!attribute [rw] status
2296
+ # The status of the SSM document.
2297
+ # @return [String]
2298
+ #
2299
+ # @!attribute [rw] document_version
2300
+ # The document version.
2301
+ # @return [String]
2302
+ #
2303
+ # @!attribute [rw] description
2304
+ # A description of the document.
2305
+ # @return [String]
2306
+ #
2307
+ # @!attribute [rw] parameters
2308
+ # A description of the parameters for a document.
2309
+ # @return [Array<Types::DocumentParameter>]
2310
+ #
2311
+ # @!attribute [rw] platform_types
2312
+ # The list of OS platforms compatible with this SSM document.
2313
+ # @return [Array<String>]
2314
+ #
2315
+ # @!attribute [rw] document_type
2316
+ # The type of document.
2317
+ # @return [String]
2318
+ #
2319
+ # @!attribute [rw] schema_version
2320
+ # The schema version.
2321
+ # @return [String]
2322
+ #
2323
+ # @!attribute [rw] latest_version
2324
+ # The latest version of the document.
2325
+ # @return [String]
2326
+ #
2327
+ # @!attribute [rw] default_version
2328
+ # The default version.
2329
+ # @return [String]
2330
+ class DocumentDescription < Struct.new(
2331
+ :sha_1,
2332
+ :hash,
2333
+ :hash_type,
2334
+ :name,
2335
+ :owner,
2336
+ :created_date,
2337
+ :status,
2338
+ :document_version,
2339
+ :description,
2340
+ :parameters,
2341
+ :platform_types,
2342
+ :document_type,
2343
+ :schema_version,
2344
+ :latest_version,
2345
+ :default_version)
2346
+ include Aws::Structure
2347
+ end
2348
+
2349
+ # Describes a filter.
2350
+ # @note When making an API call, pass DocumentFilter
2351
+ # data as a hash:
2352
+ #
2353
+ # {
2354
+ # key: "Name", # required, accepts Name, Owner, PlatformTypes, DocumentType
2355
+ # value: "DocumentFilterValue", # required
2356
+ # }
2357
+ # @!attribute [rw] key
2358
+ # The name of the filter.
2359
+ # @return [String]
2360
+ #
2361
+ # @!attribute [rw] value
2362
+ # The value of the filter.
2363
+ # @return [String]
2364
+ class DocumentFilter < Struct.new(
2365
+ :key,
2366
+ :value)
2367
+ include Aws::Structure
2368
+ end
2369
+
2370
+ # Describes the name of an SSM document.
2371
+ # @!attribute [rw] name
2372
+ # The name of the SSM document.
2373
+ # @return [String]
2374
+ #
2375
+ # @!attribute [rw] owner
2376
+ # The AWS user account of the person who created the document.
2377
+ # @return [String]
2378
+ #
2379
+ # @!attribute [rw] platform_types
2380
+ # The operating system platform.
2381
+ # @return [Array<String>]
2382
+ #
2383
+ # @!attribute [rw] document_version
2384
+ # The document version.
2385
+ # @return [String]
2386
+ #
2387
+ # @!attribute [rw] document_type
2388
+ # The document type.
2389
+ # @return [String]
2390
+ #
2391
+ # @!attribute [rw] schema_version
2392
+ # The schema version.
2393
+ # @return [String]
2394
+ class DocumentIdentifier < Struct.new(
2395
+ :name,
2396
+ :owner,
2397
+ :platform_types,
2398
+ :document_version,
2399
+ :document_type,
2400
+ :schema_version)
2401
+ include Aws::Structure
2402
+ end
2403
+
2404
+ # Parameters specified in the SSM document that execute on the server
2405
+ # when the command is run.
2406
+ # @!attribute [rw] name
2407
+ # The name of the parameter.
2408
+ # @return [String]
2409
+ #
2410
+ # @!attribute [rw] type
2411
+ # The type of parameter. The type can be either “String” or
2412
+ # “StringList”.
2413
+ # @return [String]
2414
+ #
2415
+ # @!attribute [rw] description
2416
+ # A description of what the parameter does, how to use it, the default
2417
+ # value, and whether or not the parameter is optional.
2418
+ # @return [String]
2419
+ #
2420
+ # @!attribute [rw] default_value
2421
+ # If specified, the default values for the parameters. Parameters
2422
+ # without a default value are required. Parameters with a default
2423
+ # value are optional.
2424
+ # @return [String]
2425
+ class DocumentParameter < Struct.new(
2426
+ :name,
2427
+ :type,
2428
+ :description,
2429
+ :default_value)
2430
+ include Aws::Structure
2431
+ end
2432
+
2433
+ # Version information about the document.
2434
+ # @!attribute [rw] name
2435
+ # The document name.
2436
+ # @return [String]
2437
+ #
2438
+ # @!attribute [rw] document_version
2439
+ # The document version.
2440
+ # @return [String]
2441
+ #
2442
+ # @!attribute [rw] created_date
2443
+ # The date the document was created.
2444
+ # @return [Time]
2445
+ #
2446
+ # @!attribute [rw] is_default_version
2447
+ # An identifier for the default version of the document.
2448
+ # @return [Boolean]
2449
+ class DocumentVersionInfo < Struct.new(
2450
+ :name,
2451
+ :document_version,
2452
+ :created_date,
2453
+ :is_default_version)
2454
+ include Aws::Structure
2455
+ end
2456
+
2457
+ # Describes a failed association.
2458
+ # @!attribute [rw] entry
2459
+ # The association.
2460
+ # @return [Types::CreateAssociationBatchRequestEntry]
2461
+ #
2462
+ # @!attribute [rw] message
2463
+ # A description of the failure.
2464
+ # @return [String]
2465
+ #
2466
+ # @!attribute [rw] fault
2467
+ # The source of the failure.
2468
+ # @return [String]
2469
+ class FailedCreateAssociation < Struct.new(
2470
+ :entry,
2471
+ :message,
2472
+ :fault)
2473
+ include Aws::Structure
2474
+ end
2475
+
2476
+ # @note When making an API call, pass GetAutomationExecutionRequest
2477
+ # data as a hash:
2478
+ #
2479
+ # {
2480
+ # automation_execution_id: "AutomationExecutionId", # required
2481
+ # }
2482
+ # @!attribute [rw] automation_execution_id
2483
+ # The unique identifier for an existing automation execution to
2484
+ # examine. The execution ID is returned by `StartAutomationExecution`
2485
+ # when the execution of an Automation document is initiated.
2486
+ # @return [String]
2487
+ class GetAutomationExecutionRequest < Struct.new(
2488
+ :automation_execution_id)
2489
+ include Aws::Structure
2490
+ end
2491
+
2492
+ # @!attribute [rw] automation_execution
2493
+ # Detailed information about the current state of an automation
2494
+ # execution.
2495
+ # @return [Types::AutomationExecution]
2496
+ class GetAutomationExecutionResult < Struct.new(
2497
+ :automation_execution)
2498
+ include Aws::Structure
2499
+ end
2500
+
2501
+ # @note When making an API call, pass GetCommandInvocationRequest
2502
+ # data as a hash:
2503
+ #
2504
+ # {
2505
+ # command_id: "CommandId", # required
2506
+ # instance_id: "InstanceId", # required
2507
+ # plugin_name: "CommandPluginName",
2508
+ # }
2509
+ # @!attribute [rw] command_id
2510
+ # (Required) The parent command ID of the invocation plugin.
2511
+ # @return [String]
2512
+ #
2513
+ # @!attribute [rw] instance_id
2514
+ # (Required) The ID of the managed instance targeted by the command. A
2515
+ # managed instance can be an Amazon EC2 instance or an instance in
2516
+ # your hybrid environment that is configured for Systems Manager.
2517
+ # @return [String]
2518
+ #
2519
+ # @!attribute [rw] plugin_name
2520
+ # (Optional) The name of the plugin for which you want detailed
2521
+ # results. If the SSM document contains only one plugin, the name can
2522
+ # be omitted and the details will be returned.
2523
+ # @return [String]
2524
+ class GetCommandInvocationRequest < Struct.new(
2525
+ :command_id,
2526
+ :instance_id,
2527
+ :plugin_name)
2528
+ include Aws::Structure
2529
+ end
2530
+
2531
+ # @!attribute [rw] command_id
2532
+ # The parent command ID of the invocation plugin.
2533
+ # @return [String]
2534
+ #
2535
+ # @!attribute [rw] instance_id
2536
+ # The ID of the managed instance targeted by the command. A managed
2537
+ # instance can be an Amazon EC2 instance or an instance in your hybrid
2538
+ # environment that is configured for Systems Manager.
2539
+ # @return [String]
2540
+ #
2541
+ # @!attribute [rw] comment
2542
+ # The comment text for the command.
2543
+ # @return [String]
2544
+ #
2545
+ # @!attribute [rw] document_name
2546
+ # The name of the SSM document that was executed. For example,
2547
+ # AWS-RunShellScript is an SSM document.
2548
+ # @return [String]
2549
+ #
2550
+ # @!attribute [rw] plugin_name
2551
+ # The name of the plugin for which you want detailed results. For
2552
+ # example, aws:RunShellScript is a plugin.
2553
+ # @return [String]
2554
+ #
2555
+ # @!attribute [rw] response_code
2556
+ # The error level response code for the plugin script. If the response
2557
+ # code is `-1`, then the command has not started executing on the
2558
+ # instance, or it was not received by the instance.
2559
+ # @return [Integer]
2560
+ #
2561
+ # @!attribute [rw] execution_start_date_time
2562
+ # The date and time the plugin started executing. Date and time are
2563
+ # written in ISO 8601 format. For example, August 28, 2016 is
2564
+ # represented as 2016-08-28. If the plugin has not started to execute,
2565
+ # the string is empty.
2566
+ # @return [String]
2567
+ #
2568
+ # @!attribute [rw] execution_elapsed_time
2569
+ # Duration since `ExecutionStartDateTime`.
2570
+ # @return [String]
2571
+ #
2572
+ # @!attribute [rw] execution_end_date_time
2573
+ # The date and time the plugin was finished executing. Date and time
2574
+ # are written in ISO 8601 format. For example, August 28, 2016 is
2575
+ # represented as 2016-08-28. If the plugin has not started to execute,
2576
+ # the string is empty.
2577
+ # @return [String]
2578
+ #
2579
+ # @!attribute [rw] status
2580
+ # The status of the parent command for this invocation. This status
2581
+ # can be different than `StatusDetails`.
2582
+ # @return [String]
2583
+ #
2584
+ # @!attribute [rw] status_details
2585
+ # A detailed status of the command execution for an invocation.
2586
+ # `StatusDetails` includes more information than `Status` because it
2587
+ # includes states resulting from error and concurrency control
2588
+ # parameters. `StatusDetails` can show different results than
2589
+ # `Status`. For more information about these statuses, see [Monitor
2590
+ # Commands][1] (Linux) or [Monitor Commands][2] (Windows).
2591
+ # `StatusDetails` can be one of the following values:
2592
+ #
2593
+ # * Pending – The command has not been sent to the instance.
2594
+ #
2595
+ # * In Progress – The command has been sent to the instance but has
2596
+ # not reached a terminal state.
2597
+ #
2598
+ # * Delayed – The system attempted to send the command to the target,
2599
+ # but the target was not available. The instance might not be
2600
+ # available because of network issues, the instance was stopped,
2601
+ # etc. The system will try to deliver the command again.
2602
+ #
2603
+ # * Success – The command or plugin was executed successfully. This is
2604
+ # a terminal state.
2605
+ #
2606
+ # * Delivery Timed Out – The command was not delivered to the instance
2607
+ # before the delivery timeout expired. Delivery timeouts do not
2608
+ # count against the parent command’s `MaxErrors` limit, but they do
2609
+ # contribute to whether the parent command status is `Success` or
2610
+ # `Incomplete`. This is a terminal state.
2611
+ #
2612
+ # * Execution Timed Out – The command started to execute on the
2613
+ # instance, but the execution was not complete before the timeout
2614
+ # expired. Execution timeouts count against the `MaxErrors` limit of
2615
+ # the parent command. This is a terminal state.
2616
+ #
2617
+ # * Failed – The command wasn't executed successfully on the
2618
+ # instance. For a plugin, this indicates that the result code was
2619
+ # not zero. For a command invocation, this indicates that the result
2620
+ # code for one or more plugins was not zero. Invocation failures
2621
+ # count against the `MaxErrors` limit of the parent command. This is
2622
+ # a terminal state.
2623
+ #
2624
+ # * Canceled – The command was terminated before it was completed.
2625
+ # This is a terminal state.
2626
+ #
2627
+ # * Undeliverable – The command can't be delivered to the instance.
2628
+ # The instance might not exist or might not be responding.
2629
+ # Undeliverable invocations don't count against the parent
2630
+ # command’s `MaxErrors` limit and don't contribute to whether the
2631
+ # parent command status is `Success` or `Incomplete`. This is a
2632
+ # terminal state.
2633
+ #
2634
+ # * Terminated – The parent command exceeded its `MaxErrors` limit and
2635
+ # subsequent command invocations were canceled by the system. This
2636
+ # is a terminal state.
2637
+ #
2638
+ #
2639
+ #
2640
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html
2641
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/monitor-commands.html
2642
+ # @return [String]
2643
+ #
2644
+ # @!attribute [rw] standard_output_content
2645
+ # The first 24,000 characters written by the plugin to stdout. If the
2646
+ # command has not finished executing, if `ExecutionStatus` is neither
2647
+ # `Succeeded` nor `Failed`, then this string is empty.
2648
+ # @return [String]
2649
+ #
2650
+ # @!attribute [rw] standard_output_url
2651
+ # The URL for the complete text written by the plugin to stdout in
2652
+ # Amazon S3. If an Amazon S3 bucket was not specified, then this
2653
+ # string is empty.
2654
+ # @return [String]
2655
+ #
2656
+ # @!attribute [rw] standard_error_content
2657
+ # The first 8,000 characters written by the plugin to stderr. If the
2658
+ # command has not finished executing, then this string is empty.
2659
+ # @return [String]
2660
+ #
2661
+ # @!attribute [rw] standard_error_url
2662
+ # The URL for the complete text written by the plugin to stderr. If
2663
+ # the command has not finished executing, then this string is empty.
2664
+ # @return [String]
2665
+ class GetCommandInvocationResult < Struct.new(
2666
+ :command_id,
2667
+ :instance_id,
2668
+ :comment,
2669
+ :document_name,
2670
+ :plugin_name,
2671
+ :response_code,
2672
+ :execution_start_date_time,
2673
+ :execution_elapsed_time,
2674
+ :execution_end_date_time,
2675
+ :status,
2676
+ :status_details,
2677
+ :standard_output_content,
2678
+ :standard_output_url,
2679
+ :standard_error_content,
2680
+ :standard_error_url)
2681
+ include Aws::Structure
2682
+ end
2683
+
2684
+ # @note When making an API call, pass GetDocumentRequest
2685
+ # data as a hash:
2686
+ #
2687
+ # {
2688
+ # name: "DocumentARN", # required
2689
+ # document_version: "DocumentVersion",
2690
+ # }
2691
+ # @!attribute [rw] name
2692
+ # The name of the SSM document.
2693
+ # @return [String]
2694
+ #
2695
+ # @!attribute [rw] document_version
2696
+ # The document version for which you want information.
2697
+ # @return [String]
2698
+ class GetDocumentRequest < Struct.new(
2699
+ :name,
2700
+ :document_version)
2701
+ include Aws::Structure
2702
+ end
2703
+
2704
+ # @!attribute [rw] name
2705
+ # The name of the SSM document.
2706
+ # @return [String]
2707
+ #
2708
+ # @!attribute [rw] document_version
2709
+ # The document version.
2710
+ # @return [String]
2711
+ #
2712
+ # @!attribute [rw] content
2713
+ # The contents of the SSM document.
2714
+ # @return [String]
2715
+ #
2716
+ # @!attribute [rw] document_type
2717
+ # The document type.
2718
+ # @return [String]
2719
+ class GetDocumentResult < Struct.new(
2720
+ :name,
2721
+ :document_version,
2722
+ :content,
2723
+ :document_type)
2724
+ include Aws::Structure
2725
+ end
2726
+
2727
+ # @note When making an API call, pass GetInventoryRequest
2728
+ # data as a hash:
2729
+ #
2730
+ # {
2731
+ # filters: [
2732
+ # {
2733
+ # key: "InventoryFilterKey", # required
2734
+ # values: ["InventoryFilterValue"], # required
2735
+ # type: "Equal", # accepts Equal, NotEqual, BeginWith, LessThan, GreaterThan
2736
+ # },
2737
+ # ],
2738
+ # result_attributes: [
2739
+ # {
2740
+ # type_name: "InventoryItemTypeName", # required
2741
+ # },
2742
+ # ],
2743
+ # next_token: "NextToken",
2744
+ # max_results: 1,
2745
+ # }
2746
+ # @!attribute [rw] filters
2747
+ # One or more filters. Use a filter to return a more specific list of
2748
+ # results.
2749
+ # @return [Array<Types::InventoryFilter>]
2750
+ #
2751
+ # @!attribute [rw] result_attributes
2752
+ # The list of inventory item types to return.
2753
+ # @return [Array<Types::ResultAttribute>]
2754
+ #
2755
+ # @!attribute [rw] next_token
2756
+ # The token for the next set of items to return. (You received this
2757
+ # token from a previous call.)
2758
+ # @return [String]
2759
+ #
2760
+ # @!attribute [rw] max_results
2761
+ # The maximum number of items to return for this call. The call also
2762
+ # returns a token that you can specify in a subsequent call to get the
2763
+ # next set of results.
2764
+ # @return [Integer]
2765
+ class GetInventoryRequest < Struct.new(
2766
+ :filters,
2767
+ :result_attributes,
2768
+ :next_token,
2769
+ :max_results)
2770
+ include Aws::Structure
2771
+ end
2772
+
2773
+ # @!attribute [rw] entities
2774
+ # Collection of inventory entities such as a collection of instance
2775
+ # inventory.
2776
+ # @return [Array<Types::InventoryResultEntity>]
2777
+ #
2778
+ # @!attribute [rw] next_token
2779
+ # The token to use when requesting the next set of items. If there are
2780
+ # no additional items to return, the string is empty.
2781
+ # @return [String]
2782
+ class GetInventoryResult < Struct.new(
2783
+ :entities,
2784
+ :next_token)
2785
+ include Aws::Structure
2786
+ end
2787
+
2788
+ # @note When making an API call, pass GetInventorySchemaRequest
2789
+ # data as a hash:
2790
+ #
2791
+ # {
2792
+ # type_name: "InventoryItemTypeNameFilter",
2793
+ # next_token: "NextToken",
2794
+ # max_results: 1,
2795
+ # }
2796
+ # @!attribute [rw] type_name
2797
+ # The type of inventory item to return.
2798
+ # @return [String]
2799
+ #
2800
+ # @!attribute [rw] next_token
2801
+ # The token for the next set of items to return. (You received this
2802
+ # token from a previous call.)
2803
+ # @return [String]
2804
+ #
2805
+ # @!attribute [rw] max_results
2806
+ # The maximum number of items to return for this call. The call also
2807
+ # returns a token that you can specify in a subsequent call to get the
2808
+ # next set of results.
2809
+ # @return [Integer]
2810
+ class GetInventorySchemaRequest < Struct.new(
2811
+ :type_name,
2812
+ :next_token,
2813
+ :max_results)
2814
+ include Aws::Structure
2815
+ end
2816
+
2817
+ # @!attribute [rw] schemas
2818
+ # Inventory schemas returned by the request.
2819
+ # @return [Array<Types::InventoryItemSchema>]
2820
+ #
2821
+ # @!attribute [rw] next_token
2822
+ # The token to use when requesting the next set of items. If there are
2823
+ # no additional items to return, the string is empty.
2824
+ # @return [String]
2825
+ class GetInventorySchemaResult < Struct.new(
2826
+ :schemas,
2827
+ :next_token)
2828
+ include Aws::Structure
2829
+ end
2830
+
2831
+ # @note When making an API call, pass GetMaintenanceWindowExecutionRequest
2832
+ # data as a hash:
2833
+ #
2834
+ # {
2835
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
2836
+ # }
2837
+ # @!attribute [rw] window_execution_id
2838
+ # The ID of the Maintenance Window execution that includes the task.
2839
+ # @return [String]
2840
+ class GetMaintenanceWindowExecutionRequest < Struct.new(
2841
+ :window_execution_id)
2842
+ include Aws::Structure
2843
+ end
2844
+
2845
+ # @!attribute [rw] window_execution_id
2846
+ # The ID of the Maintenance Window execution.
2847
+ # @return [String]
2848
+ #
2849
+ # @!attribute [rw] task_ids
2850
+ # The ID of the task executions from the Maintenance Window execution.
2851
+ # @return [Array<String>]
2852
+ #
2853
+ # @!attribute [rw] status
2854
+ # The status of the Maintenance Window execution.
2855
+ # @return [String]
2856
+ #
2857
+ # @!attribute [rw] status_details
2858
+ # The details explaining the Status. Only available for certain status
2859
+ # values.
2860
+ # @return [String]
2861
+ #
2862
+ # @!attribute [rw] start_time
2863
+ # The time the Maintenance Window started executing.
2864
+ # @return [Time]
2865
+ #
2866
+ # @!attribute [rw] end_time
2867
+ # The time the Maintenance Window finished executing.
2868
+ # @return [Time]
2869
+ class GetMaintenanceWindowExecutionResult < Struct.new(
2870
+ :window_execution_id,
2871
+ :task_ids,
2872
+ :status,
2873
+ :status_details,
2874
+ :start_time,
2875
+ :end_time)
2876
+ include Aws::Structure
2877
+ end
2878
+
2879
+ # @note When making an API call, pass GetMaintenanceWindowExecutionTaskRequest
2880
+ # data as a hash:
2881
+ #
2882
+ # {
2883
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
2884
+ # task_id: "MaintenanceWindowExecutionTaskId", # required
2885
+ # }
2886
+ # @!attribute [rw] window_execution_id
2887
+ # The ID of the Maintenance Window execution that includes the task.
2888
+ # @return [String]
2889
+ #
2890
+ # @!attribute [rw] task_id
2891
+ # The ID of the specific task execution in the Maintenance Window task
2892
+ # that should be retrieved.
2893
+ # @return [String]
2894
+ class GetMaintenanceWindowExecutionTaskRequest < Struct.new(
2895
+ :window_execution_id,
2896
+ :task_id)
2897
+ include Aws::Structure
2898
+ end
2899
+
2900
+ # @!attribute [rw] window_execution_id
2901
+ # The ID of the Maintenance Window execution that includes the task.
2902
+ # @return [String]
2903
+ #
2904
+ # @!attribute [rw] task_execution_id
2905
+ # The ID of the specific task execution in the Maintenance Window task
2906
+ # that was retrieved.
2907
+ # @return [String]
2908
+ #
2909
+ # @!attribute [rw] task_arn
2910
+ # The ARN of the executed task.
2911
+ # @return [String]
2912
+ #
2913
+ # @!attribute [rw] service_role
2914
+ # The role that was assumed when executing the task.
2915
+ # @return [String]
2916
+ #
2917
+ # @!attribute [rw] type
2918
+ # The type of task executed.
2919
+ # @return [String]
2920
+ #
2921
+ # @!attribute [rw] task_parameters
2922
+ # The parameters passed to the task when it was executed. The map has
2923
+ # the following format:
2924
+ #
2925
+ # Key: string, 1 ≤ length ≤ 255
2926
+ #
2927
+ # Value: an array of strings where each string 1 ≤ length ≤ 255
2928
+ # @return [Array<Hash<String,Types::MaintenanceWindowTaskParameterValueExpression>>]
2929
+ #
2930
+ # @!attribute [rw] priority
2931
+ # The priority of the task.
2932
+ # @return [Integer]
2933
+ #
2934
+ # @!attribute [rw] max_concurrency
2935
+ # The defined maximum number of task executions that could be run in
2936
+ # parallel.
2937
+ # @return [String]
2938
+ #
2939
+ # @!attribute [rw] max_errors
2940
+ # The defined maximum number of task execution errors allowed before
2941
+ # scheduling of the task execution would have been stopped.
2942
+ # @return [String]
2943
+ #
2944
+ # @!attribute [rw] status
2945
+ # The status of the task.
2946
+ # @return [String]
2947
+ #
2948
+ # @!attribute [rw] status_details
2949
+ # The details explaining the Status. Only available for certain status
2950
+ # values.
2951
+ # @return [String]
2952
+ #
2953
+ # @!attribute [rw] start_time
2954
+ # The time the task execution started.
2955
+ # @return [Time]
937
2956
  #
938
- # @!attribute [rw] platform_types
939
- # The list of OS platforms compatible with this SSM document.
940
- # @return [Array<String>]
941
- class DocumentDescription < Struct.new(
942
- :sha_1,
943
- :hash,
944
- :hash_type,
945
- :name,
946
- :owner,
947
- :created_date,
2957
+ # @!attribute [rw] end_time
2958
+ # The time the task execution completed.
2959
+ # @return [Time]
2960
+ class GetMaintenanceWindowExecutionTaskResult < Struct.new(
2961
+ :window_execution_id,
2962
+ :task_execution_id,
2963
+ :task_arn,
2964
+ :service_role,
2965
+ :type,
2966
+ :task_parameters,
2967
+ :priority,
2968
+ :max_concurrency,
2969
+ :max_errors,
948
2970
  :status,
949
- :description,
950
- :parameters,
951
- :platform_types)
2971
+ :status_details,
2972
+ :start_time,
2973
+ :end_time)
952
2974
  include Aws::Structure
953
2975
  end
954
2976
 
955
- # Describes a filter.
956
- # @note When making an API call, pass DocumentFilter
2977
+ # @note When making an API call, pass GetMaintenanceWindowRequest
957
2978
  # data as a hash:
958
2979
  #
959
2980
  # {
960
- # key: "Name", # required, accepts Name, Owner, PlatformTypes
961
- # value: "DocumentFilterValue", # required
2981
+ # window_id: "MaintenanceWindowId", # required
962
2982
  # }
963
- # @!attribute [rw] key
964
- # The name of the filter.
965
- # @return [String]
966
- #
967
- # @!attribute [rw] value
968
- # The value of the filter.
2983
+ # @!attribute [rw] window_id
2984
+ # The ID of the desired Maintenance Window.
969
2985
  # @return [String]
970
- class DocumentFilter < Struct.new(
971
- :key,
972
- :value)
2986
+ class GetMaintenanceWindowRequest < Struct.new(
2987
+ :window_id)
973
2988
  include Aws::Structure
974
2989
  end
975
2990
 
976
- # Describes the name of an SSM document.
2991
+ # @!attribute [rw] window_id
2992
+ # The ID of the created Maintenance Window.
2993
+ # @return [String]
2994
+ #
977
2995
  # @!attribute [rw] name
978
- # The name of the SSM document.
2996
+ # The name of the Maintenance Window.
979
2997
  # @return [String]
980
2998
  #
981
- # @!attribute [rw] owner
982
- # The AWS user account of the person who created the document.
2999
+ # @!attribute [rw] schedule
3000
+ # The schedule of the Maintenance Window in the form of a cron or rate
3001
+ # expression.
983
3002
  # @return [String]
984
3003
  #
985
- # @!attribute [rw] platform_types
986
- # The operating system platform.
987
- # @return [Array<String>]
988
- class DocumentIdentifier < Struct.new(
3004
+ # @!attribute [rw] duration
3005
+ # The duration of the Maintenance Window in hours.
3006
+ # @return [Integer]
3007
+ #
3008
+ # @!attribute [rw] cutoff
3009
+ # The number of hours before the end of the Maintenance Window that
3010
+ # Systems Manager stops scheduling new tasks for execution.
3011
+ # @return [Integer]
3012
+ #
3013
+ # @!attribute [rw] allow_unassociated_targets
3014
+ # Whether targets must be registered with the Maintenance Window
3015
+ # before tasks can be defined for those targets.
3016
+ # @return [Boolean]
3017
+ #
3018
+ # @!attribute [rw] enabled
3019
+ # Whether the Maintenance Windows is enabled.
3020
+ # @return [Boolean]
3021
+ #
3022
+ # @!attribute [rw] created_date
3023
+ # The date the Maintenance Window was created.
3024
+ # @return [Time]
3025
+ #
3026
+ # @!attribute [rw] modified_date
3027
+ # The date the Maintenance Window was last modified.
3028
+ # @return [Time]
3029
+ class GetMaintenanceWindowResult < Struct.new(
3030
+ :window_id,
989
3031
  :name,
990
- :owner,
991
- :platform_types)
3032
+ :schedule,
3033
+ :duration,
3034
+ :cutoff,
3035
+ :allow_unassociated_targets,
3036
+ :enabled,
3037
+ :created_date,
3038
+ :modified_date)
992
3039
  include Aws::Structure
993
3040
  end
994
3041
 
995
- # Parameters specified in the SSM document that execute on the server
996
- # when the command is run.
3042
+ # @note When making an API call, pass GetParameterHistoryRequest
3043
+ # data as a hash:
3044
+ #
3045
+ # {
3046
+ # name: "PSParameterName", # required
3047
+ # with_decryption: false,
3048
+ # max_results: 1,
3049
+ # next_token: "NextToken",
3050
+ # }
997
3051
  # @!attribute [rw] name
998
- # The name of the parameter.
3052
+ # The name of a parameter you want to query.
999
3053
  # @return [String]
1000
3054
  #
1001
- # @!attribute [rw] type
1002
- # The type of parameter. The type can be either “String” or
1003
- # StringList”.
3055
+ # @!attribute [rw] with_decryption
3056
+ # Return decrypted values for secure string parameters. This flag is
3057
+ # ignored for String and StringList parameter types.
3058
+ # @return [Boolean]
3059
+ #
3060
+ # @!attribute [rw] max_results
3061
+ # The maximum number of items to return for this call. The call also
3062
+ # returns a token that you can specify in a subsequent call to get the
3063
+ # next set of results.
3064
+ # @return [Integer]
3065
+ #
3066
+ # @!attribute [rw] next_token
3067
+ # The token for the next set of items to return. (You received this
3068
+ # token from a previous call.)
1004
3069
  # @return [String]
3070
+ class GetParameterHistoryRequest < Struct.new(
3071
+ :name,
3072
+ :with_decryption,
3073
+ :max_results,
3074
+ :next_token)
3075
+ include Aws::Structure
3076
+ end
3077
+
3078
+ # @!attribute [rw] parameters
3079
+ # A list of parameters returned by the request.
3080
+ # @return [Array<Types::ParameterHistory>]
1005
3081
  #
1006
- # @!attribute [rw] description
1007
- # A description of what the parameter does, how to use it, the default
1008
- # value, and whether or not the parameter is optional.
3082
+ # @!attribute [rw] next_token
3083
+ # The token to use when requesting the next set of items. If there are
3084
+ # no additional items to return, the string is empty.
1009
3085
  # @return [String]
3086
+ class GetParameterHistoryResult < Struct.new(
3087
+ :parameters,
3088
+ :next_token)
3089
+ include Aws::Structure
3090
+ end
3091
+
3092
+ # @note When making an API call, pass GetParametersRequest
3093
+ # data as a hash:
1010
3094
  #
1011
- # @!attribute [rw] default_value
1012
- # If specified, the default values for the parameters. Parameters
1013
- # without a default value are required. Parameters with a default
1014
- # value are optional.
3095
+ # {
3096
+ # names: ["PSParameterName"], # required
3097
+ # with_decryption: false,
3098
+ # }
3099
+ # @!attribute [rw] names
3100
+ # Names of the parameters for which you want to query information.
3101
+ # @return [Array<String>]
3102
+ #
3103
+ # @!attribute [rw] with_decryption
3104
+ # Return decrypted secure string value. Return decrypted values for
3105
+ # secure string parameters. This flag is ignored for String and
3106
+ # StringList parameter types.
3107
+ # @return [Boolean]
3108
+ class GetParametersRequest < Struct.new(
3109
+ :names,
3110
+ :with_decryption)
3111
+ include Aws::Structure
3112
+ end
3113
+
3114
+ # @!attribute [rw] parameters
3115
+ # A list of parameters used by the AWS account.
3116
+ # @return [Array<Types::Parameter>]
3117
+ #
3118
+ # @!attribute [rw] invalid_parameters
3119
+ # A list of parameters that are not formatted correctly or do not run
3120
+ # when executed.
3121
+ # @return [Array<String>]
3122
+ class GetParametersResult < Struct.new(
3123
+ :parameters,
3124
+ :invalid_parameters)
3125
+ include Aws::Structure
3126
+ end
3127
+
3128
+ # Status information about the aggregated associations.
3129
+ # @!attribute [rw] detailed_status
3130
+ # Detailed status information about the aggregated associations.
1015
3131
  # @return [String]
1016
- class DocumentParameter < Struct.new(
1017
- :name,
1018
- :type,
1019
- :description,
1020
- :default_value)
3132
+ #
3133
+ # @!attribute [rw] instance_association_status_aggregated_count
3134
+ # The number of associations for the instance(s).
3135
+ # @return [Hash<String,Integer>]
3136
+ class InstanceAggregatedAssociationOverview < Struct.new(
3137
+ :detailed_status,
3138
+ :instance_association_status_aggregated_count)
1021
3139
  include Aws::Structure
1022
3140
  end
1023
3141
 
1024
- # Describes a failed association.
1025
- # @!attribute [rw] entry
1026
- # The association.
1027
- # @return [Types::CreateAssociationBatchRequestEntry]
3142
+ # One or more association documents on the instance.
3143
+ # @!attribute [rw] association_id
3144
+ # The association ID.
3145
+ # @return [String]
1028
3146
  #
1029
- # @!attribute [rw] message
1030
- # A description of the failure.
3147
+ # @!attribute [rw] instance_id
3148
+ # The instance ID.
1031
3149
  # @return [String]
1032
3150
  #
1033
- # @!attribute [rw] fault
1034
- # The source of the failure.
3151
+ # @!attribute [rw] content
3152
+ # The content of the association document for the instance(s).
1035
3153
  # @return [String]
1036
- class FailedCreateAssociation < Struct.new(
1037
- :entry,
1038
- :message,
1039
- :fault)
3154
+ class InstanceAssociation < Struct.new(
3155
+ :association_id,
3156
+ :instance_id,
3157
+ :content)
1040
3158
  include Aws::Structure
1041
3159
  end
1042
3160
 
1043
- # @note When making an API call, pass GetDocumentRequest
3161
+ # An Amazon S3 bucket where you want to store the results of this
3162
+ # request.
3163
+ # @note When making an API call, pass InstanceAssociationOutputLocation
1044
3164
  # data as a hash:
1045
3165
  #
1046
3166
  # {
1047
- # name: "DocumentARN", # required
3167
+ # s3_location: {
3168
+ # output_s3_region: "S3Region",
3169
+ # output_s3_bucket_name: "S3BucketName",
3170
+ # output_s3_key_prefix: "S3KeyPrefix",
3171
+ # },
1048
3172
  # }
1049
- # @!attribute [rw] name
1050
- # The name of the SSM document.
1051
- # @return [String]
1052
- class GetDocumentRequest < Struct.new(
1053
- :name)
3173
+ # @!attribute [rw] s3_location
3174
+ # An Amazon S3 bucket where you want to store the results of this
3175
+ # request.
3176
+ # @return [Types::S3OutputLocation]
3177
+ class InstanceAssociationOutputLocation < Struct.new(
3178
+ :s3_location)
1054
3179
  include Aws::Structure
1055
3180
  end
1056
3181
 
3182
+ # The URL of Amazon S3 bucket where you want to store the results of
3183
+ # this request.
3184
+ # @!attribute [rw] s3_output_url
3185
+ # The URL of Amazon S3 bucket where you want to store the results of
3186
+ # this request.
3187
+ # @return [Types::S3OutputUrl]
3188
+ class InstanceAssociationOutputUrl < Struct.new(
3189
+ :s3_output_url)
3190
+ include Aws::Structure
3191
+ end
3192
+
3193
+ # Status information about the instance association.
3194
+ # @!attribute [rw] association_id
3195
+ # The association ID.
3196
+ # @return [String]
3197
+ #
1057
3198
  # @!attribute [rw] name
1058
- # The name of the SSM document.
3199
+ # The name of the association.
1059
3200
  # @return [String]
1060
3201
  #
1061
- # @!attribute [rw] content
1062
- # The contents of the SSM document.
3202
+ # @!attribute [rw] document_version
3203
+ # The association document verions.
1063
3204
  # @return [String]
1064
- class GetDocumentResult < Struct.new(
3205
+ #
3206
+ # @!attribute [rw] instance_id
3207
+ # The instance ID where the association was created.
3208
+ # @return [String]
3209
+ #
3210
+ # @!attribute [rw] execution_date
3211
+ # The date the instance association executed.
3212
+ # @return [Time]
3213
+ #
3214
+ # @!attribute [rw] status
3215
+ # Status information about the instance association.
3216
+ # @return [String]
3217
+ #
3218
+ # @!attribute [rw] detailed_status
3219
+ # Detailed status information about the instance association.
3220
+ # @return [String]
3221
+ #
3222
+ # @!attribute [rw] execution_summary
3223
+ # Summary information about association execution.
3224
+ # @return [String]
3225
+ #
3226
+ # @!attribute [rw] error_code
3227
+ # An error code returned by the request to create the association.
3228
+ # @return [String]
3229
+ #
3230
+ # @!attribute [rw] output_url
3231
+ # A URL for an Amazon S3 bucket where you want to store the results of
3232
+ # this request.
3233
+ # @return [Types::InstanceAssociationOutputUrl]
3234
+ class InstanceAssociationStatusInfo < Struct.new(
3235
+ :association_id,
1065
3236
  :name,
1066
- :content)
3237
+ :document_version,
3238
+ :instance_id,
3239
+ :execution_date,
3240
+ :status,
3241
+ :detailed_status,
3242
+ :execution_summary,
3243
+ :error_code,
3244
+ :output_url)
1067
3245
  include Aws::Structure
1068
3246
  end
1069
3247
 
@@ -1077,7 +3255,7 @@ module Aws
1077
3255
  # @return [String]
1078
3256
  #
1079
3257
  # @!attribute [rw] last_ping_date_time
1080
- # The date and time when agent last pinged SSM service.
3258
+ # The date and time when agent last pinged Systems Manager service.
1081
3259
  # @return [Time]
1082
3260
  #
1083
3261
  # @!attribute [rw] agent_version
@@ -1102,8 +3280,8 @@ module Aws
1102
3280
  # @return [String]
1103
3281
  #
1104
3282
  # @!attribute [rw] activation_id
1105
- # The activation ID created by SSM when the server or VM was
1106
- # registered.
3283
+ # The activation ID created by Systems Manager when the server or VM
3284
+ # was registered.
1107
3285
  # @return [String]
1108
3286
  #
1109
3287
  # @!attribute [rw] iam_role
@@ -1132,6 +3310,22 @@ module Aws
1132
3310
  # @!attribute [rw] computer_name
1133
3311
  # The fully qualified host name of the managed instance.
1134
3312
  # @return [String]
3313
+ #
3314
+ # @!attribute [rw] association_status
3315
+ # The status of the association.
3316
+ # @return [String]
3317
+ #
3318
+ # @!attribute [rw] last_association_execution_date
3319
+ # The date the association was last executed.
3320
+ # @return [Time]
3321
+ #
3322
+ # @!attribute [rw] last_successful_association_execution_date
3323
+ # The last date the association was successfully run.
3324
+ # @return [Time]
3325
+ #
3326
+ # @!attribute [rw] association_overview
3327
+ # Information about the association.
3328
+ # @return [Types::InstanceAggregatedAssociationOverview]
1135
3329
  class InstanceInformation < Struct.new(
1136
3330
  :instance_id,
1137
3331
  :ping_status,
@@ -1147,7 +3341,11 @@ module Aws
1147
3341
  :resource_type,
1148
3342
  :name,
1149
3343
  :ip_address,
1150
- :computer_name)
3344
+ :computer_name,
3345
+ :association_status,
3346
+ :last_association_execution_date,
3347
+ :last_successful_association_execution_date,
3348
+ :association_overview)
1151
3349
  include Aws::Structure
1152
3350
  end
1153
3351
 
@@ -1156,19 +3354,216 @@ module Aws
1156
3354
  # data as a hash:
1157
3355
  #
1158
3356
  # {
1159
- # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType
3357
+ # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType, AssociationStatus
1160
3358
  # value_set: ["InstanceInformationFilterValue"], # required
1161
3359
  # }
1162
3360
  # @!attribute [rw] key
1163
3361
  # The name of the filter.
1164
3362
  # @return [String]
1165
3363
  #
1166
- # @!attribute [rw] value_set
1167
- # The filter values.
1168
- # @return [Array<String>]
1169
- class InstanceInformationFilter < Struct.new(
1170
- :key,
1171
- :value_set)
3364
+ # @!attribute [rw] value_set
3365
+ # The filter values.
3366
+ # @return [Array<String>]
3367
+ class InstanceInformationFilter < Struct.new(
3368
+ :key,
3369
+ :value_set)
3370
+ include Aws::Structure
3371
+ end
3372
+
3373
+ # The filters to describe or get information about your managed
3374
+ # instances.
3375
+ # @note When making an API call, pass InstanceInformationStringFilter
3376
+ # data as a hash:
3377
+ #
3378
+ # {
3379
+ # key: "InstanceInformationStringFilterKey", # required
3380
+ # values: ["InstanceInformationFilterValue"], # required
3381
+ # }
3382
+ # @!attribute [rw] key
3383
+ # The filter key name to describe your instances. For example:
3384
+ #
3385
+ # "InstanceIds"\|"AgentVersion"\|"PingStatus"\|"PlatformTypes"\|"ActivationIds"\|"IamRole"\|"ResourceType"\|”AssociationStatus”\|”Tag
3386
+ # Key”
3387
+ # @return [String]
3388
+ #
3389
+ # @!attribute [rw] values
3390
+ # The filter values.
3391
+ # @return [Array<String>]
3392
+ class InstanceInformationStringFilter < Struct.new(
3393
+ :key,
3394
+ :values)
3395
+ include Aws::Structure
3396
+ end
3397
+
3398
+ # One or more filters. Use a filter to return a more specific list of
3399
+ # results.
3400
+ # @note When making an API call, pass InventoryFilter
3401
+ # data as a hash:
3402
+ #
3403
+ # {
3404
+ # key: "InventoryFilterKey", # required
3405
+ # values: ["InventoryFilterValue"], # required
3406
+ # type: "Equal", # accepts Equal, NotEqual, BeginWith, LessThan, GreaterThan
3407
+ # }
3408
+ # @!attribute [rw] key
3409
+ # The name of the filter key.
3410
+ # @return [String]
3411
+ #
3412
+ # @!attribute [rw] values
3413
+ # Inventory filter values. Example: inventory filter where instance
3414
+ # IDs are specified as values
3415
+ # Key=AWS:InstanceInformation.InstanceId,Values= i-a12b3c4d5e6g,
3416
+ # i-1a2b3c4d5e6,Type=Equal
3417
+ # @return [Array<String>]
3418
+ #
3419
+ # @!attribute [rw] type
3420
+ # The type of filter. Valid values include the following:
3421
+ # "Equal"\|"NotEqual"\|"BeginWith"\|"LessThan"\|"GreaterThan"
3422
+ # @return [String]
3423
+ class InventoryFilter < Struct.new(
3424
+ :key,
3425
+ :values,
3426
+ :type)
3427
+ include Aws::Structure
3428
+ end
3429
+
3430
+ # Information collected from managed instances based on your inventory
3431
+ # policy document
3432
+ # @note When making an API call, pass InventoryItem
3433
+ # data as a hash:
3434
+ #
3435
+ # {
3436
+ # type_name: "InventoryItemTypeName", # required
3437
+ # schema_version: "InventoryItemSchemaVersion", # required
3438
+ # capture_time: "InventoryItemCaptureTime", # required
3439
+ # content_hash: "InventoryItemContentHash",
3440
+ # content: [
3441
+ # {
3442
+ # "AttributeName" => "AttributeValue",
3443
+ # },
3444
+ # ],
3445
+ # }
3446
+ # @!attribute [rw] type_name
3447
+ # The name of the inventory type. Default inventory item type names
3448
+ # start with `AWS`. Custom inventory type names will start with
3449
+ # `Custom`. Default inventory item types include the following:
3450
+ # `AWS:AWSComponent`, `AWS:Application`, `AWS:InstanceInformation`,
3451
+ # `AWS:Network`, and `AWS:WindowsUpdate`.
3452
+ # @return [String]
3453
+ #
3454
+ # @!attribute [rw] schema_version
3455
+ # The schema version for the inventory item.
3456
+ # @return [String]
3457
+ #
3458
+ # @!attribute [rw] capture_time
3459
+ # The time the inventory information was collected.
3460
+ # @return [String]
3461
+ #
3462
+ # @!attribute [rw] content_hash
3463
+ # MD5 hash of the inventory item type contents. The content hash is
3464
+ # used to determine whether to update inventory information. The
3465
+ # `PutInventory` API does not update the inventory item type contents
3466
+ # if the MD5 hash has not changed since last update.
3467
+ # @return [String]
3468
+ #
3469
+ # @!attribute [rw] content
3470
+ # The inventory data of the inventory type.
3471
+ # @return [Array<Hash<String,String>>]
3472
+ class InventoryItem < Struct.new(
3473
+ :type_name,
3474
+ :schema_version,
3475
+ :capture_time,
3476
+ :content_hash,
3477
+ :content)
3478
+ include Aws::Structure
3479
+ end
3480
+
3481
+ # Attributes are the entries within the inventory item content. It
3482
+ # contains name and value.
3483
+ # @!attribute [rw] name
3484
+ # Name of the inventory item attribute.
3485
+ # @return [String]
3486
+ #
3487
+ # @!attribute [rw] data_type
3488
+ # The data type of the inventory item attribute.
3489
+ # @return [String]
3490
+ class InventoryItemAttribute < Struct.new(
3491
+ :name,
3492
+ :data_type)
3493
+ include Aws::Structure
3494
+ end
3495
+
3496
+ # The inventory item schema definition. Users can use this to compose
3497
+ # inventory query filters.
3498
+ # @!attribute [rw] type_name
3499
+ # The name of the inventory type. Default inventory item type names
3500
+ # start with `AWS`. Custom inventory type names will start with
3501
+ # `Custom`. Default inventory item types include the following:
3502
+ # `AWS:AWSComponent`, `AWS:Application`, `AWS:InstanceInformation`,
3503
+ # `AWS:Network`, and `AWS:WindowsUpdate`.
3504
+ # @return [String]
3505
+ #
3506
+ # @!attribute [rw] version
3507
+ # The schema version for the inventory item.
3508
+ # @return [String]
3509
+ #
3510
+ # @!attribute [rw] attributes
3511
+ # The schema attributes for inventory. This contains data type and
3512
+ # attribute name.
3513
+ # @return [Array<Types::InventoryItemAttribute>]
3514
+ class InventoryItemSchema < Struct.new(
3515
+ :type_name,
3516
+ :version,
3517
+ :attributes)
3518
+ include Aws::Structure
3519
+ end
3520
+
3521
+ # Inventory query results.
3522
+ # @!attribute [rw] id
3523
+ # ID of the inventory result entity. For example, for managed instance
3524
+ # inventory the result will be the managed instance ID. For EC2
3525
+ # instance inventory, the result will be the instance ID.
3526
+ # @return [String]
3527
+ #
3528
+ # @!attribute [rw] data
3529
+ # The data section in the inventory result entity json.
3530
+ # @return [Hash<String,Types::InventoryResultItem>]
3531
+ class InventoryResultEntity < Struct.new(
3532
+ :id,
3533
+ :data)
3534
+ include Aws::Structure
3535
+ end
3536
+
3537
+ # The inventory result item.
3538
+ # @!attribute [rw] type_name
3539
+ # The name of the inventory result item type.
3540
+ # @return [String]
3541
+ #
3542
+ # @!attribute [rw] schema_version
3543
+ # The schema version for the inventory result item/
3544
+ # @return [String]
3545
+ #
3546
+ # @!attribute [rw] capture_time
3547
+ # The time inventory item data was captured.
3548
+ # @return [String]
3549
+ #
3550
+ # @!attribute [rw] content_hash
3551
+ # MD5 hash of the inventory item type contents. The content hash is
3552
+ # used to determine whether to update inventory information. The
3553
+ # `PutInventory` API does not update the inventory item type contents
3554
+ # if the MD5 hash has not changed since last update.
3555
+ # @return [String]
3556
+ #
3557
+ # @!attribute [rw] content
3558
+ # Contains all the inventory data of the item type. Results include
3559
+ # attribute names and values.
3560
+ # @return [Array<Hash<String,String>>]
3561
+ class InventoryResultItem < Struct.new(
3562
+ :type_name,
3563
+ :schema_version,
3564
+ :capture_time,
3565
+ :content_hash,
3566
+ :content)
1172
3567
  include Aws::Structure
1173
3568
  end
1174
3569
 
@@ -1176,9 +3571,9 @@ module Aws
1176
3571
  # data as a hash:
1177
3572
  #
1178
3573
  # {
1179
- # association_filter_list: [ # required
3574
+ # association_filter_list: [
1180
3575
  # {
1181
- # key: "InstanceId", # required, accepts InstanceId, Name
3576
+ # key: "InstanceId", # required, accepts InstanceId, Name, AssociationId, AssociationStatusName, LastExecutedBefore, LastExecutedAfter
1182
3577
  # value: "AssociationFilterValue", # required
1183
3578
  # },
1184
3579
  # ],
@@ -1350,13 +3745,56 @@ module Aws
1350
3745
  include Aws::Structure
1351
3746
  end
1352
3747
 
3748
+ # @note When making an API call, pass ListDocumentVersionsRequest
3749
+ # data as a hash:
3750
+ #
3751
+ # {
3752
+ # name: "DocumentName", # required
3753
+ # max_results: 1,
3754
+ # next_token: "NextToken",
3755
+ # }
3756
+ # @!attribute [rw] name
3757
+ # The name of the document about which you want version information.
3758
+ # @return [String]
3759
+ #
3760
+ # @!attribute [rw] max_results
3761
+ # The maximum number of items to return for this call. The call also
3762
+ # returns a token that you can specify in a subsequent call to get the
3763
+ # next set of results.
3764
+ # @return [Integer]
3765
+ #
3766
+ # @!attribute [rw] next_token
3767
+ # The token for the next set of items to return. (You received this
3768
+ # token from a previous call.)
3769
+ # @return [String]
3770
+ class ListDocumentVersionsRequest < Struct.new(
3771
+ :name,
3772
+ :max_results,
3773
+ :next_token)
3774
+ include Aws::Structure
3775
+ end
3776
+
3777
+ # @!attribute [rw] document_versions
3778
+ # The document versions.
3779
+ # @return [Array<Types::DocumentVersionInfo>]
3780
+ #
3781
+ # @!attribute [rw] next_token
3782
+ # The token to use when requesting the next set of items. If there are
3783
+ # no additional items to return, the string is empty.
3784
+ # @return [String]
3785
+ class ListDocumentVersionsResult < Struct.new(
3786
+ :document_versions,
3787
+ :next_token)
3788
+ include Aws::Structure
3789
+ end
3790
+
1353
3791
  # @note When making an API call, pass ListDocumentsRequest
1354
3792
  # data as a hash:
1355
3793
  #
1356
3794
  # {
1357
3795
  # document_filter_list: [
1358
3796
  # {
1359
- # key: "Name", # required, accepts Name, Owner, PlatformTypes
3797
+ # key: "Name", # required, accepts Name, Owner, PlatformTypes, DocumentType
1360
3798
  # value: "DocumentFilterValue", # required
1361
3799
  # },
1362
3800
  # ],
@@ -1368,62 +3806,492 @@ module Aws
1368
3806
  # results.
1369
3807
  # @return [Array<Types::DocumentFilter>]
1370
3808
  #
1371
- # @!attribute [rw] max_results
1372
- # The maximum number of items to return for this call. The call also
1373
- # returns a token that you can specify in a subsequent call to get the
1374
- # next set of results.
3809
+ # @!attribute [rw] max_results
3810
+ # The maximum number of items to return for this call. The call also
3811
+ # returns a token that you can specify in a subsequent call to get the
3812
+ # next set of results.
3813
+ # @return [Integer]
3814
+ #
3815
+ # @!attribute [rw] next_token
3816
+ # The token for the next set of items to return. (You received this
3817
+ # token from a previous call.)
3818
+ # @return [String]
3819
+ class ListDocumentsRequest < Struct.new(
3820
+ :document_filter_list,
3821
+ :max_results,
3822
+ :next_token)
3823
+ include Aws::Structure
3824
+ end
3825
+
3826
+ # @!attribute [rw] document_identifiers
3827
+ # The names of the SSM documents.
3828
+ # @return [Array<Types::DocumentIdentifier>]
3829
+ #
3830
+ # @!attribute [rw] next_token
3831
+ # The token to use when requesting the next set of items. If there are
3832
+ # no additional items to return, the string is empty.
3833
+ # @return [String]
3834
+ class ListDocumentsResult < Struct.new(
3835
+ :document_identifiers,
3836
+ :next_token)
3837
+ include Aws::Structure
3838
+ end
3839
+
3840
+ # @note When making an API call, pass ListInventoryEntriesRequest
3841
+ # data as a hash:
3842
+ #
3843
+ # {
3844
+ # instance_id: "InstanceId", # required
3845
+ # type_name: "InventoryItemTypeName", # required
3846
+ # filters: [
3847
+ # {
3848
+ # key: "InventoryFilterKey", # required
3849
+ # values: ["InventoryFilterValue"], # required
3850
+ # type: "Equal", # accepts Equal, NotEqual, BeginWith, LessThan, GreaterThan
3851
+ # },
3852
+ # ],
3853
+ # next_token: "NextToken",
3854
+ # max_results: 1,
3855
+ # }
3856
+ # @!attribute [rw] instance_id
3857
+ # The instance ID for which you want inventory information.
3858
+ # @return [String]
3859
+ #
3860
+ # @!attribute [rw] type_name
3861
+ # The type of inventory item for which you want information.
3862
+ # @return [String]
3863
+ #
3864
+ # @!attribute [rw] filters
3865
+ # One or more filters. Use a filter to return a more specific list of
3866
+ # results.
3867
+ # @return [Array<Types::InventoryFilter>]
3868
+ #
3869
+ # @!attribute [rw] next_token
3870
+ # The token for the next set of items to return. (You received this
3871
+ # token from a previous call.)
3872
+ # @return [String]
3873
+ #
3874
+ # @!attribute [rw] max_results
3875
+ # The maximum number of items to return for this call. The call also
3876
+ # returns a token that you can specify in a subsequent call to get the
3877
+ # next set of results.
3878
+ # @return [Integer]
3879
+ class ListInventoryEntriesRequest < Struct.new(
3880
+ :instance_id,
3881
+ :type_name,
3882
+ :filters,
3883
+ :next_token,
3884
+ :max_results)
3885
+ include Aws::Structure
3886
+ end
3887
+
3888
+ # @!attribute [rw] type_name
3889
+ # The type of inventory item returned by the request.
3890
+ # @return [String]
3891
+ #
3892
+ # @!attribute [rw] instance_id
3893
+ # The instance ID targeted by the request to query inventory
3894
+ # information.
3895
+ # @return [String]
3896
+ #
3897
+ # @!attribute [rw] schema_version
3898
+ # The inventory schema version used by the instance(s).
3899
+ # @return [String]
3900
+ #
3901
+ # @!attribute [rw] capture_time
3902
+ # The time that inventory information was collected for the
3903
+ # instance(s).
3904
+ # @return [String]
3905
+ #
3906
+ # @!attribute [rw] entries
3907
+ # A list of inventory items on the instance(s).
3908
+ # @return [Array<Hash<String,String>>]
3909
+ #
3910
+ # @!attribute [rw] next_token
3911
+ # The token to use when requesting the next set of items. If there are
3912
+ # no additional items to return, the string is empty.
3913
+ # @return [String]
3914
+ class ListInventoryEntriesResult < Struct.new(
3915
+ :type_name,
3916
+ :instance_id,
3917
+ :schema_version,
3918
+ :capture_time,
3919
+ :entries,
3920
+ :next_token)
3921
+ include Aws::Structure
3922
+ end
3923
+
3924
+ # @note When making an API call, pass ListTagsForResourceRequest
3925
+ # data as a hash:
3926
+ #
3927
+ # {
3928
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance, MaintenanceWindow, Parameter
3929
+ # resource_id: "ResourceId", # required
3930
+ # }
3931
+ # @!attribute [rw] resource_type
3932
+ # Returns a list of tags for a specific resource type.
3933
+ # @return [String]
3934
+ #
3935
+ # @!attribute [rw] resource_id
3936
+ # The resource ID for which you want to see a list of tags.
3937
+ # @return [String]
3938
+ class ListTagsForResourceRequest < Struct.new(
3939
+ :resource_type,
3940
+ :resource_id)
3941
+ include Aws::Structure
3942
+ end
3943
+
3944
+ # @!attribute [rw] tag_list
3945
+ # A list of tags.
3946
+ # @return [Array<Types::Tag>]
3947
+ class ListTagsForResourceResult < Struct.new(
3948
+ :tag_list)
3949
+ include Aws::Structure
3950
+ end
3951
+
3952
+ # Information about an Amazon S3 bucket to write instance-level logs to.
3953
+ # @note When making an API call, pass LoggingInfo
3954
+ # data as a hash:
3955
+ #
3956
+ # {
3957
+ # s3_bucket_name: "S3BucketName", # required
3958
+ # s3_key_prefix: "S3KeyPrefix",
3959
+ # s3_region: "S3Region", # required
3960
+ # }
3961
+ # @!attribute [rw] s3_bucket_name
3962
+ # The name of an Amazon S3 bucket where execution logs are stored .
3963
+ # @return [String]
3964
+ #
3965
+ # @!attribute [rw] s3_key_prefix
3966
+ # (Optional) The Amazon S3 bucket subfolder.
3967
+ # @return [String]
3968
+ #
3969
+ # @!attribute [rw] s3_region
3970
+ # The region where the Amazon S3 bucket is located.
3971
+ # @return [String]
3972
+ class LoggingInfo < Struct.new(
3973
+ :s3_bucket_name,
3974
+ :s3_key_prefix,
3975
+ :s3_region)
3976
+ include Aws::Structure
3977
+ end
3978
+
3979
+ # Describes the information about an execution of a Maintenance Window.
3980
+ # @!attribute [rw] window_id
3981
+ # The ID of the Maintenance Window.
3982
+ # @return [String]
3983
+ #
3984
+ # @!attribute [rw] window_execution_id
3985
+ # The ID of the Maintenance Window execution.
3986
+ # @return [String]
3987
+ #
3988
+ # @!attribute [rw] status
3989
+ # The status of the execution.
3990
+ # @return [String]
3991
+ #
3992
+ # @!attribute [rw] status_details
3993
+ # The details explaining the Status. Only available for certain status
3994
+ # values.
3995
+ # @return [String]
3996
+ #
3997
+ # @!attribute [rw] start_time
3998
+ # The time the execution started.
3999
+ # @return [Time]
4000
+ #
4001
+ # @!attribute [rw] end_time
4002
+ # The time the execution finished.
4003
+ # @return [Time]
4004
+ class MaintenanceWindowExecution < Struct.new(
4005
+ :window_id,
4006
+ :window_execution_id,
4007
+ :status,
4008
+ :status_details,
4009
+ :start_time,
4010
+ :end_time)
4011
+ include Aws::Structure
4012
+ end
4013
+
4014
+ # Information about a task execution performed as part of a Maintenance
4015
+ # Window execution.
4016
+ # @!attribute [rw] window_execution_id
4017
+ # The ID of the Maintenance Window execution that ran the task.
4018
+ # @return [String]
4019
+ #
4020
+ # @!attribute [rw] task_execution_id
4021
+ # The ID of the specific task execution in the Maintenance Window
4022
+ # execution.
4023
+ # @return [String]
4024
+ #
4025
+ # @!attribute [rw] status
4026
+ # The status of the task execution.
4027
+ # @return [String]
4028
+ #
4029
+ # @!attribute [rw] status_details
4030
+ # The details explaining the status of the task execution. Only
4031
+ # available for certain status values.
4032
+ # @return [String]
4033
+ #
4034
+ # @!attribute [rw] start_time
4035
+ # The time the task execution started.
4036
+ # @return [Time]
4037
+ #
4038
+ # @!attribute [rw] end_time
4039
+ # The time the task execution finished.
4040
+ # @return [Time]
4041
+ #
4042
+ # @!attribute [rw] task_arn
4043
+ # The ARN of the executed task.
4044
+ # @return [String]
4045
+ #
4046
+ # @!attribute [rw] task_type
4047
+ # The type of executed task.
4048
+ # @return [String]
4049
+ class MaintenanceWindowExecutionTaskIdentity < Struct.new(
4050
+ :window_execution_id,
4051
+ :task_execution_id,
4052
+ :status,
4053
+ :status_details,
4054
+ :start_time,
4055
+ :end_time,
4056
+ :task_arn,
4057
+ :task_type)
4058
+ include Aws::Structure
4059
+ end
4060
+
4061
+ # Describes the information about a task invocation for a particular
4062
+ # target as part of a task execution performed as part of a Maintenance
4063
+ # Window execution.
4064
+ # @!attribute [rw] window_execution_id
4065
+ # The ID of the Maintenance Window execution that ran the task.
4066
+ # @return [String]
4067
+ #
4068
+ # @!attribute [rw] task_execution_id
4069
+ # The ID of the specific task execution in the Maintenance Window
4070
+ # execution.
4071
+ # @return [String]
4072
+ #
4073
+ # @!attribute [rw] invocation_id
4074
+ # The ID of the task invocation.
4075
+ # @return [String]
4076
+ #
4077
+ # @!attribute [rw] execution_id
4078
+ # The ID of the action performed in the service that actually handled
4079
+ # the task invocation. If the task type is RUN\_COMMAND, this value is
4080
+ # the command ID.
4081
+ # @return [String]
4082
+ #
4083
+ # @!attribute [rw] parameters
4084
+ # The parameters that were provided for the invocation when it was
4085
+ # executed.
4086
+ # @return [String]
4087
+ #
4088
+ # @!attribute [rw] status
4089
+ # The status of the task invocation.
4090
+ # @return [String]
4091
+ #
4092
+ # @!attribute [rw] status_details
4093
+ # The details explaining the status of the task invocation. Only
4094
+ # available for certain Status values.
4095
+ # @return [String]
4096
+ #
4097
+ # @!attribute [rw] start_time
4098
+ # The time the invocation started.
4099
+ # @return [Time]
4100
+ #
4101
+ # @!attribute [rw] end_time
4102
+ # The time the invocation finished.
4103
+ # @return [Time]
4104
+ #
4105
+ # @!attribute [rw] owner_information
4106
+ # User-provided value that was specified when the target was
4107
+ # registered with the Maintenance Window. This was also included in
4108
+ # any CloudWatch events raised during the task invocation.
4109
+ # @return [String]
4110
+ #
4111
+ # @!attribute [rw] window_target_id
4112
+ # The ID of the target definition in this Maintenance Window the
4113
+ # invocation was performed for.
4114
+ # @return [String]
4115
+ class MaintenanceWindowExecutionTaskInvocationIdentity < Struct.new(
4116
+ :window_execution_id,
4117
+ :task_execution_id,
4118
+ :invocation_id,
4119
+ :execution_id,
4120
+ :parameters,
4121
+ :status,
4122
+ :status_details,
4123
+ :start_time,
4124
+ :end_time,
4125
+ :owner_information,
4126
+ :window_target_id)
4127
+ include Aws::Structure
4128
+ end
4129
+
4130
+ # Filter used in the request.
4131
+ # @note When making an API call, pass MaintenanceWindowFilter
4132
+ # data as a hash:
4133
+ #
4134
+ # {
4135
+ # key: "MaintenanceWindowFilterKey",
4136
+ # values: ["MaintenanceWindowFilterValue"],
4137
+ # }
4138
+ # @!attribute [rw] key
4139
+ # The name of the filter.
4140
+ # @return [String]
4141
+ #
4142
+ # @!attribute [rw] values
4143
+ # The filter values.
4144
+ # @return [Array<String>]
4145
+ class MaintenanceWindowFilter < Struct.new(
4146
+ :key,
4147
+ :values)
4148
+ include Aws::Structure
4149
+ end
4150
+
4151
+ # Information about the Maintenance Window.
4152
+ # @!attribute [rw] window_id
4153
+ # The ID of the Maintenance Window.
4154
+ # @return [String]
4155
+ #
4156
+ # @!attribute [rw] name
4157
+ # The name of the Maintenance Window.
4158
+ # @return [String]
4159
+ #
4160
+ # @!attribute [rw] enabled
4161
+ # Whether the Maintenance Window is enabled.
4162
+ # @return [Boolean]
4163
+ #
4164
+ # @!attribute [rw] duration
4165
+ # The duration of the Maintenance Window in hours.
1375
4166
  # @return [Integer]
1376
4167
  #
1377
- # @!attribute [rw] next_token
1378
- # The token for the next set of items to return. (You received this
1379
- # token from a previous call.)
1380
- # @return [String]
1381
- class ListDocumentsRequest < Struct.new(
1382
- :document_filter_list,
1383
- :max_results,
1384
- :next_token)
4168
+ # @!attribute [rw] cutoff
4169
+ # The number of hours before the end of the Maintenance Window that
4170
+ # Systems Manager stops scheduling new tasks for execution.
4171
+ # @return [Integer]
4172
+ class MaintenanceWindowIdentity < Struct.new(
4173
+ :window_id,
4174
+ :name,
4175
+ :enabled,
4176
+ :duration,
4177
+ :cutoff)
1385
4178
  include Aws::Structure
1386
4179
  end
1387
4180
 
1388
- # @!attribute [rw] document_identifiers
1389
- # The names of the SSM documents.
1390
- # @return [Array<Types::DocumentIdentifier>]
4181
+ # The target registered with the Maintenance Window.
4182
+ # @!attribute [rw] window_id
4183
+ # The Maintenance Window ID where the target is registered.
4184
+ # @return [String]
1391
4185
  #
1392
- # @!attribute [rw] next_token
1393
- # The token to use when requesting the next set of items. If there are
1394
- # no additional items to return, the string is empty.
4186
+ # @!attribute [rw] window_target_id
4187
+ # The ID of the target.
1395
4188
  # @return [String]
1396
- class ListDocumentsResult < Struct.new(
1397
- :document_identifiers,
1398
- :next_token)
4189
+ #
4190
+ # @!attribute [rw] resource_type
4191
+ # The type of target.
4192
+ # @return [String]
4193
+ #
4194
+ # @!attribute [rw] targets
4195
+ # The targets (either instances or tags). Instances are specified
4196
+ # using
4197
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
4198
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
4199
+ # @return [Array<Types::Target>]
4200
+ #
4201
+ # @!attribute [rw] owner_information
4202
+ # User-provided value that will be included in any CloudWatch events
4203
+ # raised while running tasks for these targets in this Maintenance
4204
+ # Window.
4205
+ # @return [String]
4206
+ class MaintenanceWindowTarget < Struct.new(
4207
+ :window_id,
4208
+ :window_target_id,
4209
+ :resource_type,
4210
+ :targets,
4211
+ :owner_information)
1399
4212
  include Aws::Structure
1400
4213
  end
1401
4214
 
1402
- # @note When making an API call, pass ListTagsForResourceRequest
1403
- # data as a hash:
4215
+ # Information about a task defined for a Maintenance Window.
4216
+ # @!attribute [rw] window_id
4217
+ # The Maintenance Window ID where the task is registered.
4218
+ # @return [String]
1404
4219
  #
1405
- # {
1406
- # resource_type: "ManagedInstance", # required, accepts ManagedInstance
1407
- # resource_id: "ResourceId", # required
1408
- # }
1409
- # @!attribute [rw] resource_type
1410
- # Returns a list of tags for a specific resource type.
4220
+ # @!attribute [rw] window_task_id
4221
+ # The task ID.
1411
4222
  # @return [String]
1412
4223
  #
1413
- # @!attribute [rw] resource_id
1414
- # The resource ID for which you want to see a list of tags.
4224
+ # @!attribute [rw] task_arn
4225
+ # The ARN of the task to execute.
1415
4226
  # @return [String]
1416
- class ListTagsForResourceRequest < Struct.new(
1417
- :resource_type,
1418
- :resource_id)
4227
+ #
4228
+ # @!attribute [rw] type
4229
+ # The type of task.
4230
+ # @return [String]
4231
+ #
4232
+ # @!attribute [rw] targets
4233
+ # The targets (either instances or tags). Instances are specified
4234
+ # using
4235
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
4236
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
4237
+ # @return [Array<Types::Target>]
4238
+ #
4239
+ # @!attribute [rw] task_parameters
4240
+ # The parameters that should be passed to the task when it is
4241
+ # executed.
4242
+ # @return [Hash<String,Types::MaintenanceWindowTaskParameterValueExpression>]
4243
+ #
4244
+ # @!attribute [rw] priority
4245
+ # The priority of the task in the Maintenance Window, the lower the
4246
+ # number the higher the priority. Tasks in a Maintenance Window are
4247
+ # scheduled in priority order with tasks that have the same priority
4248
+ # scheduled in parallel.
4249
+ # @return [Integer]
4250
+ #
4251
+ # @!attribute [rw] logging_info
4252
+ # Information about an Amazon S3 bucket to write task-level logs to.
4253
+ # @return [Types::LoggingInfo]
4254
+ #
4255
+ # @!attribute [rw] service_role_arn
4256
+ # The role that should be assumed when executing the task
4257
+ # @return [String]
4258
+ #
4259
+ # @!attribute [rw] max_concurrency
4260
+ # The maximum number of targets this task can be run for in parallel.
4261
+ # @return [String]
4262
+ #
4263
+ # @!attribute [rw] max_errors
4264
+ # The maximum number of errors allowed before this task stops being
4265
+ # scheduled.
4266
+ # @return [String]
4267
+ class MaintenanceWindowTask < Struct.new(
4268
+ :window_id,
4269
+ :window_task_id,
4270
+ :task_arn,
4271
+ :type,
4272
+ :targets,
4273
+ :task_parameters,
4274
+ :priority,
4275
+ :logging_info,
4276
+ :service_role_arn,
4277
+ :max_concurrency,
4278
+ :max_errors)
1419
4279
  include Aws::Structure
1420
4280
  end
1421
4281
 
1422
- # @!attribute [rw] tag_list
1423
- # A list of tags.
1424
- # @return [Array<Types::Tag>]
1425
- class ListTagsForResourceResult < Struct.new(
1426
- :tag_list)
4282
+ # Defines the values for a task parameter.
4283
+ # @note When making an API call, pass MaintenanceWindowTaskParameterValueExpression
4284
+ # data as a hash:
4285
+ #
4286
+ # {
4287
+ # values: ["MaintenanceWindowTaskParameterValue"],
4288
+ # }
4289
+ # @!attribute [rw] values
4290
+ # This field contains an array of 0 or more strings, each 1 to 255
4291
+ # characters in length.
4292
+ # @return [Array<String>]
4293
+ class MaintenanceWindowTaskParameterValueExpression < Struct.new(
4294
+ :values)
1427
4295
  include Aws::Structure
1428
4296
  end
1429
4297
 
@@ -1478,32 +4346,399 @@ module Aws
1478
4346
  # }
1479
4347
  # @!attribute [rw] notification_arn
1480
4348
  # An Amazon Resource Name (ARN) for a Simple Notification Service
1481
- # (SNS) topic. SSM pushes notifications about command status changes
1482
- # to this topic.
4349
+ # (SNS) topic. Run Command pushes notifications about command status
4350
+ # changes to this topic.
4351
+ # @return [String]
4352
+ #
4353
+ # @!attribute [rw] notification_events
4354
+ # The different events for which you can receive notifications. These
4355
+ # events include the following: All (events), InProgress, Success,
4356
+ # TimedOut, Cancelled, Failed. To learn more about these events, see
4357
+ # [Monitoring Commands][1] in the <i>Amazon Elastic Compute Cloud User
4358
+ # Guide </i>.
4359
+ #
4360
+ #
4361
+ #
4362
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html
4363
+ # @return [Array<String>]
4364
+ #
4365
+ # @!attribute [rw] notification_type
4366
+ # Command: Receive notification when the status of a command changes.
4367
+ # Invocation: For commands sent to multiple instances, receive
4368
+ # notification on a per-instance basis when the status of a command
4369
+ # changes.
4370
+ # @return [String]
4371
+ class NotificationConfig < Struct.new(
4372
+ :notification_arn,
4373
+ :notification_events,
4374
+ :notification_type)
4375
+ include Aws::Structure
4376
+ end
4377
+
4378
+ # An Amazon EC2 Systems Manager parameter in Parameter Store.
4379
+ # @!attribute [rw] name
4380
+ # The name of the parameter.
4381
+ # @return [String]
4382
+ #
4383
+ # @!attribute [rw] type
4384
+ # The type of parameter. Valid values include the following: String,
4385
+ # String list, Secure string.
4386
+ # @return [String]
4387
+ #
4388
+ # @!attribute [rw] value
4389
+ # The parameter value.
4390
+ # @return [String]
4391
+ class Parameter < Struct.new(
4392
+ :name,
4393
+ :type,
4394
+ :value)
4395
+ include Aws::Structure
4396
+ end
4397
+
4398
+ # Information about parameter usage.
4399
+ # @!attribute [rw] name
4400
+ # The name of the parameter.
4401
+ # @return [String]
4402
+ #
4403
+ # @!attribute [rw] type
4404
+ # The type of parameter used.
4405
+ # @return [String]
4406
+ #
4407
+ # @!attribute [rw] key_id
4408
+ # The ID of the query key used for this parameter.
4409
+ # @return [String]
4410
+ #
4411
+ # @!attribute [rw] last_modified_date
4412
+ # Date the parameter was last changed or updated.
4413
+ # @return [Time]
4414
+ #
4415
+ # @!attribute [rw] last_modified_user
4416
+ # Amazon Resource Name (ARN) of the AWS user who last changed the
4417
+ # parameter.
4418
+ # @return [String]
4419
+ #
4420
+ # @!attribute [rw] description
4421
+ # Information about the parameter.
4422
+ # @return [String]
4423
+ #
4424
+ # @!attribute [rw] value
4425
+ # The parameter value.
1483
4426
  # @return [String]
4427
+ class ParameterHistory < Struct.new(
4428
+ :name,
4429
+ :type,
4430
+ :key_id,
4431
+ :last_modified_date,
4432
+ :last_modified_user,
4433
+ :description,
4434
+ :value)
4435
+ include Aws::Structure
4436
+ end
4437
+
4438
+ # Metada includes information like the ARN of the last user and the
4439
+ # date/time the parameter was last used.
4440
+ # @!attribute [rw] name
4441
+ # The parameter name.
4442
+ # @return [String]
4443
+ #
4444
+ # @!attribute [rw] type
4445
+ # The type of parameter. Valid parameter types include the following:
4446
+ # String, String list, Secure string.
4447
+ # @return [String]
4448
+ #
4449
+ # @!attribute [rw] key_id
4450
+ # The ID of the query key used for this parameter.
4451
+ # @return [String]
4452
+ #
4453
+ # @!attribute [rw] last_modified_date
4454
+ # Date the parameter was last changed or updated.
4455
+ # @return [Time]
4456
+ #
4457
+ # @!attribute [rw] last_modified_user
4458
+ # Amazon Resource Name (ARN) of the AWS user who last changed the
4459
+ # parameter.
4460
+ # @return [String]
4461
+ #
4462
+ # @!attribute [rw] description
4463
+ # Description of the parameter actions.
4464
+ # @return [String]
4465
+ class ParameterMetadata < Struct.new(
4466
+ :name,
4467
+ :type,
4468
+ :key_id,
4469
+ :last_modified_date,
4470
+ :last_modified_user,
4471
+ :description)
4472
+ include Aws::Structure
4473
+ end
4474
+
4475
+ # One or more filters. Use a filter to return a more specific list of
4476
+ # results.
4477
+ # @note When making an API call, pass ParametersFilter
4478
+ # data as a hash:
4479
+ #
4480
+ # {
4481
+ # key: "Name", # accepts Name, Type, KeyId
4482
+ # values: ["ParametersFilterValue"], # required
4483
+ # }
4484
+ # @!attribute [rw] key
4485
+ # The name of the filter.
4486
+ # @return [String]
4487
+ #
4488
+ # @!attribute [rw] values
4489
+ # The filter values.
4490
+ # @return [Array<String>]
4491
+ class ParametersFilter < Struct.new(
4492
+ :key,
4493
+ :values)
4494
+ include Aws::Structure
4495
+ end
4496
+
4497
+ # @note When making an API call, pass PutInventoryRequest
4498
+ # data as a hash:
4499
+ #
4500
+ # {
4501
+ # instance_id: "InstanceId", # required
4502
+ # items: [ # required
4503
+ # {
4504
+ # type_name: "InventoryItemTypeName", # required
4505
+ # schema_version: "InventoryItemSchemaVersion", # required
4506
+ # capture_time: "InventoryItemCaptureTime", # required
4507
+ # content_hash: "InventoryItemContentHash",
4508
+ # content: [
4509
+ # {
4510
+ # "AttributeName" => "AttributeValue",
4511
+ # },
4512
+ # ],
4513
+ # },
4514
+ # ],
4515
+ # }
4516
+ # @!attribute [rw] instance_id
4517
+ # One or more instance IDs where you want to add or update inventory
4518
+ # items.
4519
+ # @return [String]
4520
+ #
4521
+ # @!attribute [rw] items
4522
+ # The inventory items that you want to add or update on instances.
4523
+ # @return [Array<Types::InventoryItem>]
4524
+ class PutInventoryRequest < Struct.new(
4525
+ :instance_id,
4526
+ :items)
4527
+ include Aws::Structure
4528
+ end
4529
+
4530
+ class PutInventoryResult < Aws::EmptyStructure; end
4531
+
4532
+ # @note When making an API call, pass PutParameterRequest
4533
+ # data as a hash:
4534
+ #
4535
+ # {
4536
+ # name: "PSParameterName", # required
4537
+ # description: "ParameterDescription",
4538
+ # value: "PSParameterValue", # required
4539
+ # type: "String", # required, accepts String, StringList, SecureString
4540
+ # key_id: "ParameterKeyId",
4541
+ # overwrite: false,
4542
+ # }
4543
+ # @!attribute [rw] name
4544
+ # The name of the parameter that you want to add to the system.
4545
+ # @return [String]
4546
+ #
4547
+ # @!attribute [rw] description
4548
+ # Information about the parameter that you want to add to the system
4549
+ # @return [String]
4550
+ #
4551
+ # @!attribute [rw] value
4552
+ # The parameter value that you want to add to the system.
4553
+ # @return [String]
4554
+ #
4555
+ # @!attribute [rw] type
4556
+ # The type of parameter that you want to add to the system.
4557
+ # @return [String]
4558
+ #
4559
+ # @!attribute [rw] key_id
4560
+ # The parameter key ID that you want to add to the system.
4561
+ # @return [String]
4562
+ #
4563
+ # @!attribute [rw] overwrite
4564
+ # Overwrite an existing parameter.
4565
+ # @return [Boolean]
4566
+ class PutParameterRequest < Struct.new(
4567
+ :name,
4568
+ :description,
4569
+ :value,
4570
+ :type,
4571
+ :key_id,
4572
+ :overwrite)
4573
+ include Aws::Structure
4574
+ end
4575
+
4576
+ class PutParameterResult < Aws::EmptyStructure; end
4577
+
4578
+ # @note When making an API call, pass RegisterTargetWithMaintenanceWindowRequest
4579
+ # data as a hash:
4580
+ #
4581
+ # {
4582
+ # window_id: "MaintenanceWindowId", # required
4583
+ # resource_type: "INSTANCE", # required, accepts INSTANCE
4584
+ # targets: [ # required
4585
+ # {
4586
+ # key: "TargetKey",
4587
+ # values: ["TargetValue"],
4588
+ # },
4589
+ # ],
4590
+ # owner_information: "OwnerInformation",
4591
+ # client_token: "ClientToken",
4592
+ # }
4593
+ # @!attribute [rw] window_id
4594
+ # The ID of the Maintenance Window the target should be registered
4595
+ # with.
4596
+ # @return [String]
4597
+ #
4598
+ # @!attribute [rw] resource_type
4599
+ # The type of target being registered with the Maintenance Window.
4600
+ # @return [String]
4601
+ #
4602
+ # @!attribute [rw] targets
4603
+ # The targets (either instances or tags). Instances are specified
4604
+ # using
4605
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
4606
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
4607
+ # @return [Array<Types::Target>]
4608
+ #
4609
+ # @!attribute [rw] owner_information
4610
+ # User-provided value that will be included in any CloudWatch events
4611
+ # raised while running tasks for these targets in this Maintenance
4612
+ # Window.
4613
+ # @return [String]
4614
+ #
4615
+ # @!attribute [rw] client_token
4616
+ # User-provided idempotency token.
4617
+ #
4618
+ # **A suitable default value is auto-generated.** You should
4619
+ # normally not need to pass this option.
4620
+ # @return [String]
4621
+ class RegisterTargetWithMaintenanceWindowRequest < Struct.new(
4622
+ :window_id,
4623
+ :resource_type,
4624
+ :targets,
4625
+ :owner_information,
4626
+ :client_token)
4627
+ include Aws::Structure
4628
+ end
4629
+
4630
+ # @!attribute [rw] window_target_id
4631
+ # The ID of the target definition in this Maintenance Window.
4632
+ # @return [String]
4633
+ class RegisterTargetWithMaintenanceWindowResult < Struct.new(
4634
+ :window_target_id)
4635
+ include Aws::Structure
4636
+ end
4637
+
4638
+ # @note When making an API call, pass RegisterTaskWithMaintenanceWindowRequest
4639
+ # data as a hash:
4640
+ #
4641
+ # {
4642
+ # window_id: "MaintenanceWindowId", # required
4643
+ # targets: [ # required
4644
+ # {
4645
+ # key: "TargetKey",
4646
+ # values: ["TargetValue"],
4647
+ # },
4648
+ # ],
4649
+ # task_arn: "MaintenanceWindowTaskArn", # required
4650
+ # service_role_arn: "ServiceRole", # required
4651
+ # task_type: "RUN_COMMAND", # required, accepts RUN_COMMAND
4652
+ # task_parameters: {
4653
+ # "MaintenanceWindowTaskParameterName" => {
4654
+ # values: ["MaintenanceWindowTaskParameterValue"],
4655
+ # },
4656
+ # },
4657
+ # priority: 1,
4658
+ # max_concurrency: "VelocityConstraint", # required
4659
+ # max_errors: "VelocityConstraint", # required
4660
+ # logging_info: {
4661
+ # s3_bucket_name: "S3BucketName", # required
4662
+ # s3_key_prefix: "S3KeyPrefix",
4663
+ # s3_region: "S3Region", # required
4664
+ # },
4665
+ # client_token: "ClientToken",
4666
+ # }
4667
+ # @!attribute [rw] window_id
4668
+ # The id of the Maintenance Window the task should be added to.
4669
+ # @return [String]
4670
+ #
4671
+ # @!attribute [rw] targets
4672
+ # The targets (either instances or tags). Instances are specified
4673
+ # using
4674
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
4675
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
4676
+ # @return [Array<Types::Target>]
4677
+ #
4678
+ # @!attribute [rw] task_arn
4679
+ # The ARN of the task to execute
4680
+ # @return [String]
4681
+ #
4682
+ # @!attribute [rw] service_role_arn
4683
+ # The role that should be assumed when executing the task.
4684
+ # @return [String]
4685
+ #
4686
+ # @!attribute [rw] task_type
4687
+ # The type of task being registered.
4688
+ # @return [String]
4689
+ #
4690
+ # @!attribute [rw] task_parameters
4691
+ # The parameters that should be passed to the task when it is
4692
+ # executed.
4693
+ # @return [Hash<String,Types::MaintenanceWindowTaskParameterValueExpression>]
4694
+ #
4695
+ # @!attribute [rw] priority
4696
+ # The priority of the task in the Maintenance Window, the lower the
4697
+ # number the higher the priority. Tasks in a Maintenance Window are
4698
+ # scheduled in priority order with tasks that have the same priority
4699
+ # scheduled in parallel.
4700
+ # @return [Integer]
1484
4701
  #
1485
- # @!attribute [rw] notification_events
1486
- # The different events for which you can receive notifications. These
1487
- # events include the following: All (events), InProgress, Success,
1488
- # TimedOut, Cancelled, Failed. To learn more about these events, see
1489
- # [Monitoring Commands][1] in the <i>Amazon Elastic Compute Cloud User
1490
- # Guide </i>.
4702
+ # @!attribute [rw] max_concurrency
4703
+ # The maximum number of targets this task can be run for in parallel.
4704
+ # @return [String]
1491
4705
  #
4706
+ # @!attribute [rw] max_errors
4707
+ # The maximum number of errors allowed before this task stops being
4708
+ # scheduled.
4709
+ # @return [String]
1492
4710
  #
4711
+ # @!attribute [rw] logging_info
4712
+ # A structure containing information about an Amazon S3 bucket to
4713
+ # write instance-level logs to.
4714
+ # @return [Types::LoggingInfo]
1493
4715
  #
1494
- # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html
1495
- # @return [Array<String>]
4716
+ # @!attribute [rw] client_token
4717
+ # User-provided idempotency token.
1496
4718
  #
1497
- # @!attribute [rw] notification_type
1498
- # Command: Receive notification when the status of a command changes.
1499
- # Invocation: For commands sent to multiple instances, receive
1500
- # notification on a per-instance basis when the status of a command
1501
- # changes.
4719
+ # **A suitable default value is auto-generated.** You should
4720
+ # normally not need to pass this option.
1502
4721
  # @return [String]
1503
- class NotificationConfig < Struct.new(
1504
- :notification_arn,
1505
- :notification_events,
1506
- :notification_type)
4722
+ class RegisterTaskWithMaintenanceWindowRequest < Struct.new(
4723
+ :window_id,
4724
+ :targets,
4725
+ :task_arn,
4726
+ :service_role_arn,
4727
+ :task_type,
4728
+ :task_parameters,
4729
+ :priority,
4730
+ :max_concurrency,
4731
+ :max_errors,
4732
+ :logging_info,
4733
+ :client_token)
4734
+ include Aws::Structure
4735
+ end
4736
+
4737
+ # @!attribute [rw] window_task_id
4738
+ # The id of the task in the Maintenance Window.
4739
+ # @return [String]
4740
+ class RegisterTaskWithMaintenanceWindowResult < Struct.new(
4741
+ :window_task_id)
1507
4742
  include Aws::Structure
1508
4743
  end
1509
4744
 
@@ -1511,7 +4746,7 @@ module Aws
1511
4746
  # data as a hash:
1512
4747
  #
1513
4748
  # {
1514
- # resource_type: "ManagedInstance", # required, accepts ManagedInstance
4749
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance, MaintenanceWindow, Parameter
1515
4750
  # resource_id: "ResourceId", # required
1516
4751
  # tag_keys: ["TagKey"], # required
1517
4752
  # }
@@ -1535,11 +4770,72 @@ module Aws
1535
4770
 
1536
4771
  class RemoveTagsFromResourceResult < Aws::EmptyStructure; end
1537
4772
 
4773
+ # The inventory item result attribute.
4774
+ # @note When making an API call, pass ResultAttribute
4775
+ # data as a hash:
4776
+ #
4777
+ # {
4778
+ # type_name: "InventoryItemTypeName", # required
4779
+ # }
4780
+ # @!attribute [rw] type_name
4781
+ # Name of the inventory item type. Valid value:
4782
+ # “AWS:InstanceInformation”. Default Value: “AWS:InstanceInformation”.
4783
+ # @return [String]
4784
+ class ResultAttribute < Struct.new(
4785
+ :type_name)
4786
+ include Aws::Structure
4787
+ end
4788
+
4789
+ # An Amazon S3 bucket where you want to store the results of this
4790
+ # request.
4791
+ # @note When making an API call, pass S3OutputLocation
4792
+ # data as a hash:
4793
+ #
4794
+ # {
4795
+ # output_s3_region: "S3Region",
4796
+ # output_s3_bucket_name: "S3BucketName",
4797
+ # output_s3_key_prefix: "S3KeyPrefix",
4798
+ # }
4799
+ # @!attribute [rw] output_s3_region
4800
+ # The Amazon S3 region where the association information is stored.
4801
+ # @return [String]
4802
+ #
4803
+ # @!attribute [rw] output_s3_bucket_name
4804
+ # The name of the Amazon S3 bucket.
4805
+ # @return [String]
4806
+ #
4807
+ # @!attribute [rw] output_s3_key_prefix
4808
+ # The Amazon S3 bucket subfolder.
4809
+ # @return [String]
4810
+ class S3OutputLocation < Struct.new(
4811
+ :output_s3_region,
4812
+ :output_s3_bucket_name,
4813
+ :output_s3_key_prefix)
4814
+ include Aws::Structure
4815
+ end
4816
+
4817
+ # A URL for the Amazon S3 bucket where you want to store the results of
4818
+ # this request.
4819
+ # @!attribute [rw] output_url
4820
+ # A URL for an Amazon S3 bucket where you want to store the results of
4821
+ # this request.
4822
+ # @return [String]
4823
+ class S3OutputUrl < Struct.new(
4824
+ :output_url)
4825
+ include Aws::Structure
4826
+ end
4827
+
1538
4828
  # @note When making an API call, pass SendCommandRequest
1539
4829
  # data as a hash:
1540
4830
  #
1541
4831
  # {
1542
- # instance_ids: ["InstanceId"], # required
4832
+ # instance_ids: ["InstanceId"],
4833
+ # targets: [
4834
+ # {
4835
+ # key: "TargetKey",
4836
+ # values: ["TargetValue"],
4837
+ # },
4838
+ # ],
1543
4839
  # document_name: "DocumentARN", # required
1544
4840
  # document_hash: "DocumentHash",
1545
4841
  # document_hash_type: "Sha256", # accepts Sha256, Sha1
@@ -1548,8 +4844,11 @@ module Aws
1548
4844
  # parameters: {
1549
4845
  # "ParameterName" => ["ParameterValue"],
1550
4846
  # },
4847
+ # output_s3_region: "S3Region",
1551
4848
  # output_s3_bucket_name: "S3BucketName",
1552
4849
  # output_s3_key_prefix: "S3KeyPrefix",
4850
+ # max_concurrency: "VelocityConstraint",
4851
+ # max_errors: "VelocityConstraint",
1553
4852
  # service_role_arn: "ServiceRole",
1554
4853
  # notification_config: {
1555
4854
  # notification_arn: "NotificationArn",
@@ -1562,6 +4861,20 @@ module Aws
1562
4861
  # specify a maximum of 50 IDs.
1563
4862
  # @return [Array<String>]
1564
4863
  #
4864
+ # @!attribute [rw] targets
4865
+ # (Optional) An array of search criteria that targets instances using
4866
+ # a `Key`;`Value` combination that you specify. `Targets` is required
4867
+ # if you don't provide one or more instance IDs in the call. For more
4868
+ # information about how to use `Targets`, see [Executing a Command
4869
+ # Using Amazon EC2 Run Command][1] (Linux) or [Executing a Command
4870
+ # Using Amazon EC2 Run Command][2] (Windows).
4871
+ #
4872
+ #
4873
+ #
4874
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
4875
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
4876
+ # @return [Array<Types::Target>]
4877
+ #
1565
4878
  # @!attribute [rw] document_name
1566
4879
  # Required. The name of the SSM document to execute. This can be an
1567
4880
  # SSM public document or a custom document.
@@ -1599,6 +4912,12 @@ module Aws
1599
4912
  # being executed.
1600
4913
  # @return [Hash<String,Array<String>>]
1601
4914
  #
4915
+ # @!attribute [rw] output_s3_region
4916
+ # (Optional) The region where the Amazon Simple Storage Service
4917
+ # (Amazon S3) output bucket is located. The default value is the
4918
+ # region where Run Command is being called.
4919
+ # @return [String]
4920
+ #
1602
4921
  # @!attribute [rw] output_s3_bucket_name
1603
4922
  # The name of the S3 bucket where command execution responses should
1604
4923
  # be stored.
@@ -1609,8 +4928,38 @@ module Aws
1609
4928
  # should be stored.
1610
4929
  # @return [String]
1611
4930
  #
4931
+ # @!attribute [rw] max_concurrency
4932
+ # (Optional) The maximum number of instances that are allowed to
4933
+ # execute the command at the same time. You can specify a number such
4934
+ # as “10” or a percentage such as “10%”. The default value is 50. For
4935
+ # more information about how to use `MaxConcurrency`, see [Executing a
4936
+ # Command Using Amazon EC2 Run Command][1] (Linux) or [Executing a
4937
+ # Command Using Amazon EC2 Run Command][2] (Windows).
4938
+ #
4939
+ #
4940
+ #
4941
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
4942
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
4943
+ # @return [String]
4944
+ #
4945
+ # @!attribute [rw] max_errors
4946
+ # The maximum number of errors allowed without the command failing.
4947
+ # When the command fails one more time beyond the value of
4948
+ # `MaxErrors`, the systems stops sending the command to additional
4949
+ # targets. You can specify a number like “10” or a percentage like
4950
+ # “10%”. The default value is 50. For more information about how to
4951
+ # use `MaxErrors`, see [Executing a Command Using Amazon EC2 Run
4952
+ # Command][1] (Linux) or [Executing a Command Using Amazon EC2 Run
4953
+ # Command][2] (Windows).
4954
+ #
4955
+ #
4956
+ #
4957
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
4958
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
4959
+ # @return [String]
4960
+ #
1612
4961
  # @!attribute [rw] service_role_arn
1613
- # The IAM role that SSM uses to send notifications.
4962
+ # The IAM role that Systems Manager uses to send notifications.
1614
4963
  # @return [String]
1615
4964
  #
1616
4965
  # @!attribute [rw] notification_config
@@ -1618,28 +4967,146 @@ module Aws
1618
4967
  # @return [Types::NotificationConfig]
1619
4968
  class SendCommandRequest < Struct.new(
1620
4969
  :instance_ids,
4970
+ :targets,
1621
4971
  :document_name,
1622
4972
  :document_hash,
1623
4973
  :document_hash_type,
1624
4974
  :timeout_seconds,
1625
4975
  :comment,
1626
4976
  :parameters,
4977
+ :output_s3_region,
1627
4978
  :output_s3_bucket_name,
1628
4979
  :output_s3_key_prefix,
4980
+ :max_concurrency,
4981
+ :max_errors,
1629
4982
  :service_role_arn,
1630
4983
  :notification_config)
1631
4984
  include Aws::Structure
1632
4985
  end
1633
4986
 
1634
4987
  # @!attribute [rw] command
1635
- # The request as it was received by SSM. Also provides the command ID
1636
- # which can be used future references to this request.
4988
+ # The request as it was received by Systems Manager. Also provides the
4989
+ # command ID which can be used future references to this request.
1637
4990
  # @return [Types::Command]
1638
4991
  class SendCommandResult < Struct.new(
1639
4992
  :command)
1640
4993
  include Aws::Structure
1641
4994
  end
1642
4995
 
4996
+ # @note When making an API call, pass StartAutomationExecutionRequest
4997
+ # data as a hash:
4998
+ #
4999
+ # {
5000
+ # document_name: "DocumentName", # required
5001
+ # document_version: "DocumentVersion",
5002
+ # parameters: {
5003
+ # "AutomationParameterKey" => ["AutomationParameterValue"],
5004
+ # },
5005
+ # }
5006
+ # @!attribute [rw] document_name
5007
+ # The name of the Automation document to use for this execution.
5008
+ # @return [String]
5009
+ #
5010
+ # @!attribute [rw] document_version
5011
+ # The version of the Automation document to use for this execution.
5012
+ # @return [String]
5013
+ #
5014
+ # @!attribute [rw] parameters
5015
+ # A key-value map of execution parameters, which match the declared
5016
+ # parameters in the Automation document.
5017
+ # @return [Hash<String,Array<String>>]
5018
+ class StartAutomationExecutionRequest < Struct.new(
5019
+ :document_name,
5020
+ :document_version,
5021
+ :parameters)
5022
+ include Aws::Structure
5023
+ end
5024
+
5025
+ # @!attribute [rw] automation_execution_id
5026
+ # The unique ID of a newly scheduled automation execution.
5027
+ # @return [String]
5028
+ class StartAutomationExecutionResult < Struct.new(
5029
+ :automation_execution_id)
5030
+ include Aws::Structure
5031
+ end
5032
+
5033
+ # Detailed information about an the execution state of an Automation
5034
+ # step.
5035
+ # @!attribute [rw] step_name
5036
+ # The name of this execution step.
5037
+ # @return [String]
5038
+ #
5039
+ # @!attribute [rw] action
5040
+ # The action this step performs. The action determines the behavior of
5041
+ # the step.
5042
+ # @return [String]
5043
+ #
5044
+ # @!attribute [rw] execution_start_time
5045
+ # If a step has begun execution, this contains the time the step
5046
+ # started. If the step is in `Pending` status, this field is not
5047
+ # populated.
5048
+ # @return [Time]
5049
+ #
5050
+ # @!attribute [rw] execution_end_time
5051
+ # If a step has finished execution, this contains the time the
5052
+ # execution ended. If the step has not yet concluded, this field is
5053
+ # not populated.
5054
+ # @return [Time]
5055
+ #
5056
+ # @!attribute [rw] step_status
5057
+ # The execution status for this step. Valid values include: `Pending`,
5058
+ # `InProgress`, `Success`, `Cancelled`, `Failed`, and `TimedOut`.
5059
+ # @return [String]
5060
+ #
5061
+ # @!attribute [rw] response_code
5062
+ # The response code returned by the execution of the step.
5063
+ # @return [String]
5064
+ #
5065
+ # @!attribute [rw] inputs
5066
+ # Fully-resolved values passed into the step before execution.
5067
+ # @return [Hash<String,String>]
5068
+ #
5069
+ # @!attribute [rw] outputs
5070
+ # Returned values from the execution of the step.
5071
+ # @return [Hash<String,Array<String>>]
5072
+ #
5073
+ # @!attribute [rw] response
5074
+ # A message associated with the response code for an execution.
5075
+ # @return [String]
5076
+ #
5077
+ # @!attribute [rw] failure_message
5078
+ # If a step failed, this message explains why the execution failed.
5079
+ # @return [String]
5080
+ class StepExecution < Struct.new(
5081
+ :step_name,
5082
+ :action,
5083
+ :execution_start_time,
5084
+ :execution_end_time,
5085
+ :step_status,
5086
+ :response_code,
5087
+ :inputs,
5088
+ :outputs,
5089
+ :response,
5090
+ :failure_message)
5091
+ include Aws::Structure
5092
+ end
5093
+
5094
+ # @note When making an API call, pass StopAutomationExecutionRequest
5095
+ # data as a hash:
5096
+ #
5097
+ # {
5098
+ # automation_execution_id: "AutomationExecutionId", # required
5099
+ # }
5100
+ # @!attribute [rw] automation_execution_id
5101
+ # The execution ID of the Automation to stop.
5102
+ # @return [String]
5103
+ class StopAutomationExecutionRequest < Struct.new(
5104
+ :automation_execution_id)
5105
+ include Aws::Structure
5106
+ end
5107
+
5108
+ class StopAutomationExecutionResult < Aws::EmptyStructure; end
5109
+
1643
5110
  # Metadata that you assign to your managed instances. Tags enable you to
1644
5111
  # categorize your managed instances in different ways, for example, by
1645
5112
  # purpose, owner, or environment.
@@ -1663,6 +5130,117 @@ module Aws
1663
5130
  include Aws::Structure
1664
5131
  end
1665
5132
 
5133
+ # An array of search criteria that targets instances using a
5134
+ # `Key`;`Value` combination that you specify. `Targets` is required if
5135
+ # you don't provide one or more instance IDs in the call.
5136
+ # @note When making an API call, pass Target
5137
+ # data as a hash:
5138
+ #
5139
+ # {
5140
+ # key: "TargetKey",
5141
+ # values: ["TargetValue"],
5142
+ # }
5143
+ # @!attribute [rw] key
5144
+ # User-defined criteria for sending commands that target instances
5145
+ # that meet the criteria. `Key` can be `tag:<Amazon EC2 tag>` or
5146
+ # `name:<Amazon EC2 instance ID>`. For example, `tag:ServerRole` or
5147
+ # `name:0123456789012345`. For more information about how to send
5148
+ # commands that target instances using `Key`;`Value` parameters, see
5149
+ # [Executing a Command Using Amazon EC2 Run Command][1] (Linux) or
5150
+ # [Executing a Command Using Amazon EC2 Run Command][2] (Windows).
5151
+ #
5152
+ #
5153
+ #
5154
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
5155
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
5156
+ # @return [String]
5157
+ #
5158
+ # @!attribute [rw] values
5159
+ # User-defined criteria that maps to `Key`. For example, if you
5160
+ # specified `tag:ServerRole`, you could specify `value:WebServer` to
5161
+ # execute a command on instances that include Amazon EC2 tags of
5162
+ # ServerRole;WebServer. For more information about how to send
5163
+ # commands that target instances using `Key`;`Value` parameters, see
5164
+ # [Executing a Command Using Amazon EC2 Run Command][1] (Linux) or
5165
+ # [Executing a Command Using Amazon EC2 Run Command][2] (Windows).
5166
+ #
5167
+ #
5168
+ #
5169
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
5170
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
5171
+ # @return [Array<String>]
5172
+ class Target < Struct.new(
5173
+ :key,
5174
+ :values)
5175
+ include Aws::Structure
5176
+ end
5177
+
5178
+ # @note When making an API call, pass UpdateAssociationRequest
5179
+ # data as a hash:
5180
+ #
5181
+ # {
5182
+ # association_id: "AssociationId", # required
5183
+ # parameters: {
5184
+ # "ParameterName" => ["ParameterValue"],
5185
+ # },
5186
+ # document_version: "DocumentVersion",
5187
+ # schedule_expression: "ScheduleExpression",
5188
+ # output_location: {
5189
+ # s3_location: {
5190
+ # output_s3_region: "S3Region",
5191
+ # output_s3_bucket_name: "S3BucketName",
5192
+ # output_s3_key_prefix: "S3KeyPrefix",
5193
+ # },
5194
+ # },
5195
+ # }
5196
+ # @!attribute [rw] association_id
5197
+ # The ID of the association you want to update.
5198
+ # @return [String]
5199
+ #
5200
+ # @!attribute [rw] parameters
5201
+ # The parameters you want to update for the association. If you create
5202
+ # a parameter using Parameter Store, you can reference the parameter
5203
+ # using \\\{\\\{ssm:parameter-name\\}\\}
5204
+ # @return [Hash<String,Array<String>>]
5205
+ #
5206
+ # @!attribute [rw] document_version
5207
+ # The document version you want update for the association.
5208
+ # @return [String]
5209
+ #
5210
+ # @!attribute [rw] schedule_expression
5211
+ # The cron expression used to schedule the association that you want
5212
+ # to update. Supported expressions are every half, 1, 2, 4, 8 or 12
5213
+ # hour(s); every specified day and time of the week. For example:
5214
+ # cron(0 0/30 * 1/1 * ? *) to run every thirty minutes; cron(0 0
5215
+ # 0/4 1/1 * ? *) to run every four hours; and cron(0 0 10 ? * SUN
5216
+ # *) to run every Sunday at 10 a.m.
5217
+ # @return [String]
5218
+ #
5219
+ # @!attribute [rw] output_location
5220
+ # An Amazon S3 bucket where you want to store the results of this
5221
+ # request.
5222
+ #
5223
+ # `"\{ "S3Location": \{ "OutputS3Region": "<region>",
5224
+ # "OutputS3BucketName": "bucket name", "OutputS3KeyPrefix":
5225
+ # "folder name" \} \}"`
5226
+ # @return [Types::InstanceAssociationOutputLocation]
5227
+ class UpdateAssociationRequest < Struct.new(
5228
+ :association_id,
5229
+ :parameters,
5230
+ :document_version,
5231
+ :schedule_expression,
5232
+ :output_location)
5233
+ include Aws::Structure
5234
+ end
5235
+
5236
+ # @!attribute [rw] association_description
5237
+ # The description of the association that was updated.
5238
+ # @return [Types::AssociationDescription]
5239
+ class UpdateAssociationResult < Struct.new(
5240
+ :association_description)
5241
+ include Aws::Structure
5242
+ end
5243
+
1666
5244
  # @note When making an API call, pass UpdateAssociationStatusRequest
1667
5245
  # data as a hash:
1668
5246
  #
@@ -1702,6 +5280,165 @@ module Aws
1702
5280
  include Aws::Structure
1703
5281
  end
1704
5282
 
5283
+ # @note When making an API call, pass UpdateDocumentDefaultVersionRequest
5284
+ # data as a hash:
5285
+ #
5286
+ # {
5287
+ # name: "DocumentName", # required
5288
+ # document_version: "DocumentVersionNumber", # required
5289
+ # }
5290
+ # @!attribute [rw] name
5291
+ # The name of a custom document that you want to set as the default
5292
+ # version.
5293
+ # @return [String]
5294
+ #
5295
+ # @!attribute [rw] document_version
5296
+ # The version of a custom document that you want to set as the default
5297
+ # version.
5298
+ # @return [String]
5299
+ class UpdateDocumentDefaultVersionRequest < Struct.new(
5300
+ :name,
5301
+ :document_version)
5302
+ include Aws::Structure
5303
+ end
5304
+
5305
+ # @!attribute [rw] description
5306
+ # The description of a custom document that you want to set as the
5307
+ # default version.
5308
+ # @return [Types::DocumentDefaultVersionDescription]
5309
+ class UpdateDocumentDefaultVersionResult < Struct.new(
5310
+ :description)
5311
+ include Aws::Structure
5312
+ end
5313
+
5314
+ # @note When making an API call, pass UpdateDocumentRequest
5315
+ # data as a hash:
5316
+ #
5317
+ # {
5318
+ # content: "DocumentContent", # required
5319
+ # name: "DocumentName", # required
5320
+ # document_version: "DocumentVersion",
5321
+ # }
5322
+ # @!attribute [rw] content
5323
+ # The content in a document that you want to update.
5324
+ # @return [String]
5325
+ #
5326
+ # @!attribute [rw] name
5327
+ # The name of the document that you want to update.
5328
+ # @return [String]
5329
+ #
5330
+ # @!attribute [rw] document_version
5331
+ # The version of the document that you want to update.
5332
+ # @return [String]
5333
+ class UpdateDocumentRequest < Struct.new(
5334
+ :content,
5335
+ :name,
5336
+ :document_version)
5337
+ include Aws::Structure
5338
+ end
5339
+
5340
+ # @!attribute [rw] document_description
5341
+ # A description of the document that was updated.
5342
+ # @return [Types::DocumentDescription]
5343
+ class UpdateDocumentResult < Struct.new(
5344
+ :document_description)
5345
+ include Aws::Structure
5346
+ end
5347
+
5348
+ # @note When making an API call, pass UpdateMaintenanceWindowRequest
5349
+ # data as a hash:
5350
+ #
5351
+ # {
5352
+ # window_id: "MaintenanceWindowId", # required
5353
+ # name: "MaintenanceWindowName",
5354
+ # schedule: "MaintenanceWindowSchedule",
5355
+ # duration: 1,
5356
+ # cutoff: 1,
5357
+ # allow_unassociated_targets: false,
5358
+ # enabled: false,
5359
+ # }
5360
+ # @!attribute [rw] window_id
5361
+ # The ID of the Maintenance Window to update.
5362
+ # @return [String]
5363
+ #
5364
+ # @!attribute [rw] name
5365
+ # The name of the Maintenance Window.
5366
+ # @return [String]
5367
+ #
5368
+ # @!attribute [rw] schedule
5369
+ # The schedule of the Maintenance Window in the form of a cron or rate
5370
+ # expression.
5371
+ # @return [String]
5372
+ #
5373
+ # @!attribute [rw] duration
5374
+ # The duration of the Maintenance Window in hours.
5375
+ # @return [Integer]
5376
+ #
5377
+ # @!attribute [rw] cutoff
5378
+ # The number of hours before the end of the Maintenance Window that
5379
+ # Systems Manager stops scheduling new tasks for execution.
5380
+ # @return [Integer]
5381
+ #
5382
+ # @!attribute [rw] allow_unassociated_targets
5383
+ # Whether targets must be registered with the Maintenance Window
5384
+ # before tasks can be defined for those targets.
5385
+ # @return [Boolean]
5386
+ #
5387
+ # @!attribute [rw] enabled
5388
+ # Whether the Maintenance Window is enabled.
5389
+ # @return [Boolean]
5390
+ class UpdateMaintenanceWindowRequest < Struct.new(
5391
+ :window_id,
5392
+ :name,
5393
+ :schedule,
5394
+ :duration,
5395
+ :cutoff,
5396
+ :allow_unassociated_targets,
5397
+ :enabled)
5398
+ include Aws::Structure
5399
+ end
5400
+
5401
+ # @!attribute [rw] window_id
5402
+ # The ID of the created Maintenance Window.
5403
+ # @return [String]
5404
+ #
5405
+ # @!attribute [rw] name
5406
+ # The name of the Maintenance Window.
5407
+ # @return [String]
5408
+ #
5409
+ # @!attribute [rw] schedule
5410
+ # The schedule of the Maintenance Window in the form of a cron or rate
5411
+ # expression.
5412
+ # @return [String]
5413
+ #
5414
+ # @!attribute [rw] duration
5415
+ # The duration of the Maintenance Window in hours.
5416
+ # @return [Integer]
5417
+ #
5418
+ # @!attribute [rw] cutoff
5419
+ # The number of hours before the end of the Maintenance Window that
5420
+ # Systems Manager stops scheduling new tasks for execution.
5421
+ # @return [Integer]
5422
+ #
5423
+ # @!attribute [rw] allow_unassociated_targets
5424
+ # Whether targets must be registered with the Maintenance Window
5425
+ # before tasks can be defined for those targets.
5426
+ # @return [Boolean]
5427
+ #
5428
+ # @!attribute [rw] enabled
5429
+ # Whether the Maintenance Window is enabled.
5430
+ # @return [Boolean]
5431
+ class UpdateMaintenanceWindowResult < Struct.new(
5432
+ :window_id,
5433
+ :name,
5434
+ :schedule,
5435
+ :duration,
5436
+ :cutoff,
5437
+ :allow_unassociated_targets,
5438
+ :enabled)
5439
+ include Aws::Structure
5440
+ end
5441
+
1705
5442
  # @note When making an API call, pass UpdateManagedInstanceRoleRequest
1706
5443
  # data as a hash:
1707
5444
  #