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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 30c454f523f5138e2833e462ca3893513afdf889
4
- data.tar.gz: 20620f093218aaaac5a303fdae6b39766c57befe
3
+ metadata.gz: 4f354bbe4050253a416aa965b73c6e642a31d9e2
4
+ data.tar.gz: ffb868f1c34586db90bf0ae50dd369c44f02204b
5
5
  SHA512:
6
- metadata.gz: 0272f8198abea52a77ea653577b1c3702d99fd77da00d26eba19147e5c17b859f77ece5b05dccb27b0d18b2d8174ad73cc417c49b58a6ab011e136e37616f612
7
- data.tar.gz: cb2caa1b902898f2957ffb0391f1d7dbc15d26bd3845719b1004e05434fd2206e0a04091bd9311c35fec27ac6698f0203dc34bb16c579d4cddf10335326c86cd
6
+ metadata.gz: e163c188ba679b8baeeaf4968c86a0aac0c3de0fb17bb86e45da105876be3b76feee6188fd5c37c24c88f5e376642b8073b4f02f05fa0b8e69ac7b06d03680ce
7
+ data.tar.gz: e6dd8a7770770a808a10516a78b17a85cf2f6645ed0be2f41afd2509646602750dac40a28e5e6c3935fb9b756f58a99285208765ad57a1e89217be63e77df857
data/lib/aws-sdk-ssm.rb CHANGED
@@ -15,7 +15,7 @@ require_relative 'aws-sdk-ssm/errors'
15
15
  require_relative 'aws-sdk-ssm/resource'
16
16
  require_relative 'aws-sdk-ssm/customizations'
17
17
 
18
- # This module provides support for Amazon Simple Systems Management Service. This module is available in the
18
+ # This module provides support for Amazon Simple Systems Manager (SSM). This module is available in the
19
19
  # `aws-sdk-ssm` gem.
20
20
  #
21
21
  # # Client
@@ -28,7 +28,7 @@ require_relative 'aws-sdk-ssm/customizations'
28
28
  #
29
29
  # # Errors
30
30
  #
31
- # Errors returned from Amazon Simple Systems Management Service all
31
+ # Errors returned from Amazon Simple Systems Manager (SSM) all
32
32
  # extend {Errors::ServiceError}.
33
33
  #
34
34
  # begin
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-ssm/customizations'
42
42
  # @service
43
43
  module Aws::SSM
44
44
 
45
- GEM_VERSION = '1.0.0.rc1'
45
+ GEM_VERSION = '1.0.0.rc2'
46
46
 
47
47
  end
@@ -175,7 +175,7 @@ module Aws
175
175
  #
176
176
  # @example Request syntax with placeholder values
177
177
  # resp = client.add_tags_to_resource({
178
- # resource_type: "ManagedInstance", # required, accepts ManagedInstance
178
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance, MaintenanceWindow, Parameter
179
179
  # resource_id: "ResourceId", # required
180
180
  # tags: [ # required
181
181
  # {
@@ -265,22 +265,44 @@ module Aws
265
265
  req.send_request(options)
266
266
  end
267
267
 
268
- # Associates the specified SSM document with the specified instance.
268
+ # Associates the specified SSM document with the specified instances or
269
+ # targets.
269
270
  #
270
- # When you associate an SSM document with an instance, the configuration
271
- # agent on the instance (SSM agent for Linux and EC2Config service for
272
- # Windows) processes the document and configures the instance as
273
- # specified.
271
+ # When you associate an SSM document with one or more instances using
272
+ # instance IDs or tags, the SSM agent running on the instance processes
273
+ # the document and configures the instance as specified.
274
274
  #
275
275
  # If you associate a document with an instance that already has an
276
276
  # associated document, the system throws the AssociationAlreadyExists
277
277
  # exception.
278
278
  # @option params [required, String] :name
279
279
  # The name of the SSM document.
280
- # @option params [required, String] :instance_id
280
+ # @option params [String] :document_version
281
+ # The document version you want to associate with the target(s). Can be
282
+ # a specific version or the default version.
283
+ # @option params [String] :instance_id
281
284
  # The instance ID.
282
285
  # @option params [Hash<String,Array>] :parameters
283
286
  # The parameters for the documents runtime configuration.
287
+ # @option params [Array<Types::Target>] :targets
288
+ # The targets (either instances or tags) for the association. Instances
289
+ # are specified using
290
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
291
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
292
+ # @option params [String] :schedule_expression
293
+ # A cron expression when the association will be applied to the
294
+ # target(s). Supported expressions are every half, 1, 2, 4, 8 or 12
295
+ # hour(s); every specified day and time of the week. For example: cron(0
296
+ # 0/30 * 1/1 * ? *) to run every thirty minutes; cron(0 0 0/4 1/1 *
297
+ # ? *) to run every four hours; and cron(0 0 10 ? * SUN *) to run
298
+ # every Sunday at 10 a.m.
299
+ # @option params [Types::InstanceAssociationOutputLocation] :output_location
300
+ # An Amazon S3 bucket where you want to store the output details of the
301
+ # request. For example:
302
+ #
303
+ # `"\{ "S3Location": \{ "OutputS3Region": "<region>",
304
+ # "OutputS3BucketName": "bucket name", "OutputS3KeyPrefix":
305
+ # "folder name" \} \}"`
284
306
  # @return [Types::CreateAssociationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
285
307
  #
286
308
  # * {Types::CreateAssociationResult#association_description #AssociationDescription} => Types::AssociationDescription
@@ -288,23 +310,55 @@ module Aws
288
310
  # @example Request syntax with placeholder values
289
311
  # resp = client.create_association({
290
312
  # name: "DocumentName", # required
291
- # instance_id: "InstanceId", # required
313
+ # document_version: "DocumentVersion",
314
+ # instance_id: "InstanceId",
292
315
  # parameters: {
293
316
  # "ParameterName" => ["ParameterValue"],
294
317
  # },
318
+ # targets: [
319
+ # {
320
+ # key: "TargetKey",
321
+ # values: ["TargetValue"],
322
+ # },
323
+ # ],
324
+ # schedule_expression: "ScheduleExpression",
325
+ # output_location: {
326
+ # s3_location: {
327
+ # output_s3_region: "S3Region",
328
+ # output_s3_bucket_name: "S3BucketName",
329
+ # output_s3_key_prefix: "S3KeyPrefix",
330
+ # },
331
+ # },
295
332
  # })
296
333
  #
297
334
  # @example Response structure
298
335
  # resp.association_description.name #=> String
299
336
  # resp.association_description.instance_id #=> String
300
337
  # resp.association_description.date #=> Time
338
+ # resp.association_description.last_update_association_date #=> Time
301
339
  # resp.association_description.status.date #=> Time
302
340
  # resp.association_description.status.name #=> String, one of "Pending", "Success", "Failed"
303
341
  # resp.association_description.status.message #=> String
304
342
  # resp.association_description.status.additional_info #=> String
343
+ # resp.association_description.overview.status #=> String
344
+ # resp.association_description.overview.detailed_status #=> String
345
+ # resp.association_description.overview.association_status_aggregated_count #=> Hash
346
+ # resp.association_description.overview.association_status_aggregated_count["StatusName"] #=> Integer
347
+ # resp.association_description.document_version #=> String
305
348
  # resp.association_description.parameters #=> Hash
306
349
  # resp.association_description.parameters["ParameterName"] #=> Array
307
350
  # resp.association_description.parameters["ParameterName"][0] #=> String
351
+ # resp.association_description.association_id #=> String
352
+ # resp.association_description.targets #=> Array
353
+ # resp.association_description.targets[0].key #=> String
354
+ # resp.association_description.targets[0].values #=> Array
355
+ # resp.association_description.targets[0].values[0] #=> String
356
+ # resp.association_description.schedule_expression #=> String
357
+ # resp.association_description.output_location.s3_location.output_s3_region #=> String
358
+ # resp.association_description.output_location.s3_location.output_s3_bucket_name #=> String
359
+ # resp.association_description.output_location.s3_location.output_s3_key_prefix #=> String
360
+ # resp.association_description.last_execution_date #=> Time
361
+ # resp.association_description.last_successful_execution_date #=> Time
308
362
  # @overload create_association(params = {})
309
363
  # @param [Hash] params ({})
310
364
  def create_association(params = {}, options = {})
@@ -312,12 +366,12 @@ module Aws
312
366
  req.send_request(options)
313
367
  end
314
368
 
315
- # Associates the specified SSM document with the specified instances.
369
+ # Associates the specified SSM document with the specified instances or
370
+ # targets.
316
371
  #
317
- # When you associate an SSM document with an instance, the configuration
318
- # agent on the instance (SSM agent for Linux and EC2Config service for
319
- # Windows) processes the document and configures the instance as
320
- # specified.
372
+ # When you associate an SSM document with one or more instances using
373
+ # instance IDs or tags, the SSM agent running on the instance processes
374
+ # the document and configures the instance as specified.
321
375
  #
322
376
  # If you associate a document with an instance that already has an
323
377
  # associated document, the system throws the AssociationAlreadyExists
@@ -333,11 +387,26 @@ module Aws
333
387
  # resp = client.create_association_batch({
334
388
  # entries: [ # required
335
389
  # {
336
- # name: "DocumentName",
390
+ # name: "DocumentName", # required
337
391
  # instance_id: "InstanceId",
338
392
  # parameters: {
339
393
  # "ParameterName" => ["ParameterValue"],
340
394
  # },
395
+ # document_version: "DocumentVersion",
396
+ # targets: [
397
+ # {
398
+ # key: "TargetKey",
399
+ # values: ["TargetValue"],
400
+ # },
401
+ # ],
402
+ # schedule_expression: "ScheduleExpression",
403
+ # output_location: {
404
+ # s3_location: {
405
+ # output_s3_region: "S3Region",
406
+ # output_s3_bucket_name: "S3BucketName",
407
+ # output_s3_key_prefix: "S3KeyPrefix",
408
+ # },
409
+ # },
341
410
  # },
342
411
  # ],
343
412
  # })
@@ -347,19 +416,45 @@ module Aws
347
416
  # resp.successful[0].name #=> String
348
417
  # resp.successful[0].instance_id #=> String
349
418
  # resp.successful[0].date #=> Time
419
+ # resp.successful[0].last_update_association_date #=> Time
350
420
  # resp.successful[0].status.date #=> Time
351
421
  # resp.successful[0].status.name #=> String, one of "Pending", "Success", "Failed"
352
422
  # resp.successful[0].status.message #=> String
353
423
  # resp.successful[0].status.additional_info #=> String
424
+ # resp.successful[0].overview.status #=> String
425
+ # resp.successful[0].overview.detailed_status #=> String
426
+ # resp.successful[0].overview.association_status_aggregated_count #=> Hash
427
+ # resp.successful[0].overview.association_status_aggregated_count["StatusName"] #=> Integer
428
+ # resp.successful[0].document_version #=> String
354
429
  # resp.successful[0].parameters #=> Hash
355
430
  # resp.successful[0].parameters["ParameterName"] #=> Array
356
431
  # resp.successful[0].parameters["ParameterName"][0] #=> String
432
+ # resp.successful[0].association_id #=> String
433
+ # resp.successful[0].targets #=> Array
434
+ # resp.successful[0].targets[0].key #=> String
435
+ # resp.successful[0].targets[0].values #=> Array
436
+ # resp.successful[0].targets[0].values[0] #=> String
437
+ # resp.successful[0].schedule_expression #=> String
438
+ # resp.successful[0].output_location.s3_location.output_s3_region #=> String
439
+ # resp.successful[0].output_location.s3_location.output_s3_bucket_name #=> String
440
+ # resp.successful[0].output_location.s3_location.output_s3_key_prefix #=> String
441
+ # resp.successful[0].last_execution_date #=> Time
442
+ # resp.successful[0].last_successful_execution_date #=> Time
357
443
  # resp.failed #=> Array
358
444
  # resp.failed[0].entry.name #=> String
359
445
  # resp.failed[0].entry.instance_id #=> String
360
446
  # resp.failed[0].entry.parameters #=> Hash
361
447
  # resp.failed[0].entry.parameters["ParameterName"] #=> Array
362
448
  # resp.failed[0].entry.parameters["ParameterName"][0] #=> String
449
+ # resp.failed[0].entry.document_version #=> String
450
+ # resp.failed[0].entry.targets #=> Array
451
+ # resp.failed[0].entry.targets[0].key #=> String
452
+ # resp.failed[0].entry.targets[0].values #=> Array
453
+ # resp.failed[0].entry.targets[0].values[0] #=> String
454
+ # resp.failed[0].entry.schedule_expression #=> String
455
+ # resp.failed[0].entry.output_location.s3_location.output_s3_region #=> String
456
+ # resp.failed[0].entry.output_location.s3_location.output_s3_bucket_name #=> String
457
+ # resp.failed[0].entry.output_location.s3_location.output_s3_key_prefix #=> String
363
458
  # resp.failed[0].message #=> String
364
459
  # resp.failed[0].fault #=> String, one of "Client", "Server", "Unknown"
365
460
  # @overload create_association_batch(params = {})
@@ -377,6 +472,9 @@ module Aws
377
472
  # A valid JSON string.
378
473
  # @option params [required, String] :name
379
474
  # A name for the SSM document.
475
+ # @option params [String] :document_type
476
+ # The type of document to create. Valid document types include: Policy,
477
+ # Automation, and Command.
380
478
  # @return [Types::CreateDocumentResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
381
479
  #
382
480
  # * {Types::CreateDocumentResult#document_description #DocumentDescription} => Types::DocumentDescription
@@ -385,6 +483,7 @@ module Aws
385
483
  # resp = client.create_document({
386
484
  # content: "DocumentContent", # required
387
485
  # name: "DocumentName", # required
486
+ # document_type: "Command", # accepts Command, Policy, Automation
388
487
  # })
389
488
  #
390
489
  # @example Response structure
@@ -394,7 +493,8 @@ module Aws
394
493
  # resp.document_description.name #=> String
395
494
  # resp.document_description.owner #=> String
396
495
  # resp.document_description.created_date #=> Time
397
- # resp.document_description.status #=> String, one of "Creating", "Active", "Deleting"
496
+ # resp.document_description.status #=> String, one of "Creating", "Active", "Updating", "Deleting"
497
+ # resp.document_description.document_version #=> String
398
498
  # resp.document_description.description #=> String
399
499
  # resp.document_description.parameters #=> Array
400
500
  # resp.document_description.parameters[0].name #=> String
@@ -403,6 +503,10 @@ module Aws
403
503
  # resp.document_description.parameters[0].default_value #=> String
404
504
  # resp.document_description.platform_types #=> Array
405
505
  # resp.document_description.platform_types[0] #=> String, one of "Windows", "Linux"
506
+ # resp.document_description.document_type #=> String, one of "Command", "Policy", "Automation"
507
+ # resp.document_description.schema_version #=> String
508
+ # resp.document_description.latest_version #=> String
509
+ # resp.document_description.default_version #=> String
406
510
  # @overload create_document(params = {})
407
511
  # @param [Hash] params ({})
408
512
  def create_document(params = {}, options = {})
@@ -410,6 +514,48 @@ module Aws
410
514
  req.send_request(options)
411
515
  end
412
516
 
517
+ # Creates a new Maintenance Window.
518
+ # @option params [required, String] :name
519
+ # The name of the Maintenance Window.
520
+ # @option params [required, String] :schedule
521
+ # The schedule of the Maintenance Window in the form of a cron or rate
522
+ # expression.
523
+ # @option params [required, Integer] :duration
524
+ # The duration of the Maintenance Window in hours.
525
+ # @option params [required, Integer] :cutoff
526
+ # The number of hours before the end of the Maintenance Window that
527
+ # Systems Manager stops scheduling new tasks for execution.
528
+ # @option params [required, Boolean] :allow_unassociated_targets
529
+ # Whether targets must be registered with the Maintenance Window before
530
+ # tasks can be defined for those targets.
531
+ # @option params [String] :client_token
532
+ # User-provided idempotency token.
533
+ #
534
+ # **A suitable default value is auto-generated.** You should
535
+ # normally not need to pass this option.
536
+ # @return [Types::CreateMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
537
+ #
538
+ # * {Types::CreateMaintenanceWindowResult#window_id #WindowId} => String
539
+ #
540
+ # @example Request syntax with placeholder values
541
+ # resp = client.create_maintenance_window({
542
+ # name: "MaintenanceWindowName", # required
543
+ # schedule: "MaintenanceWindowSchedule", # required
544
+ # duration: 1, # required
545
+ # cutoff: 1, # required
546
+ # allow_unassociated_targets: false, # required
547
+ # client_token: "ClientToken",
548
+ # })
549
+ #
550
+ # @example Response structure
551
+ # resp.window_id #=> String
552
+ # @overload create_maintenance_window(params = {})
553
+ # @param [Hash] params ({})
554
+ def create_maintenance_window(params = {}, options = {})
555
+ req = build_request(:create_maintenance_window, params)
556
+ req.send_request(options)
557
+ end
558
+
413
559
  # Deletes an activation. You are not required to delete an activation.
414
560
  # If you delete an activation, you can no longer use it to register
415
561
  # additional managed instances. Deleting an activation does not
@@ -437,16 +583,19 @@ module Aws
437
583
  # state of an instance after you disassociate a document, you must
438
584
  # create a new document with the desired configuration and associate it
439
585
  # with the instance.
440
- # @option params [required, String] :name
586
+ # @option params [String] :name
441
587
  # The name of the SSM document.
442
- # @option params [required, String] :instance_id
588
+ # @option params [String] :instance_id
443
589
  # The ID of the instance.
590
+ # @option params [String] :association_id
591
+ # The association ID that you want to delete.
444
592
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
445
593
  #
446
594
  # @example Request syntax with placeholder values
447
595
  # resp = client.delete_association({
448
- # name: "DocumentName", # required
449
- # instance_id: "InstanceId", # required
596
+ # name: "DocumentName",
597
+ # instance_id: "InstanceId",
598
+ # association_id: "AssociationId",
450
599
  # })
451
600
  # @overload delete_association(params = {})
452
601
  # @param [Hash] params ({})
@@ -476,6 +625,43 @@ module Aws
476
625
  req.send_request(options)
477
626
  end
478
627
 
628
+ # Deletes a Maintenance Window.
629
+ # @option params [required, String] :window_id
630
+ # The ID of the Maintenance Window to delete.
631
+ # @return [Types::DeleteMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
632
+ #
633
+ # * {Types::DeleteMaintenanceWindowResult#window_id #WindowId} => String
634
+ #
635
+ # @example Request syntax with placeholder values
636
+ # resp = client.delete_maintenance_window({
637
+ # window_id: "MaintenanceWindowId", # required
638
+ # })
639
+ #
640
+ # @example Response structure
641
+ # resp.window_id #=> String
642
+ # @overload delete_maintenance_window(params = {})
643
+ # @param [Hash] params ({})
644
+ def delete_maintenance_window(params = {}, options = {})
645
+ req = build_request(:delete_maintenance_window, params)
646
+ req.send_request(options)
647
+ end
648
+
649
+ # Delete a parameter from the system.
650
+ # @option params [required, String] :name
651
+ # The name of the parameter to delete.
652
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
653
+ #
654
+ # @example Request syntax with placeholder values
655
+ # resp = client.delete_parameter({
656
+ # name: "PSParameterName", # required
657
+ # })
658
+ # @overload delete_parameter(params = {})
659
+ # @param [Hash] params ({})
660
+ def delete_parameter(params = {}, options = {})
661
+ req = build_request(:delete_parameter, params)
662
+ req.send_request(options)
663
+ end
664
+
479
665
  # Removes the server or virtual machine from the list of registered
480
666
  # servers. You can reregister the instance again at any time. If you
481
667
  # don’t plan to use Run Command on the server, we suggest uninstalling
@@ -496,6 +682,58 @@ module Aws
496
682
  req.send_request(options)
497
683
  end
498
684
 
685
+ # Removes a target from a Maintenance Window.
686
+ # @option params [required, String] :window_id
687
+ # The ID of the Maintenance Window the target should be removed from.
688
+ # @option params [required, String] :window_target_id
689
+ # The ID of the target definition to remove.
690
+ # @return [Types::DeregisterTargetFromMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
691
+ #
692
+ # * {Types::DeregisterTargetFromMaintenanceWindowResult#window_id #WindowId} => String
693
+ # * {Types::DeregisterTargetFromMaintenanceWindowResult#window_target_id #WindowTargetId} => String
694
+ #
695
+ # @example Request syntax with placeholder values
696
+ # resp = client.deregister_target_from_maintenance_window({
697
+ # window_id: "MaintenanceWindowId", # required
698
+ # window_target_id: "MaintenanceWindowTargetId", # required
699
+ # })
700
+ #
701
+ # @example Response structure
702
+ # resp.window_id #=> String
703
+ # resp.window_target_id #=> String
704
+ # @overload deregister_target_from_maintenance_window(params = {})
705
+ # @param [Hash] params ({})
706
+ def deregister_target_from_maintenance_window(params = {}, options = {})
707
+ req = build_request(:deregister_target_from_maintenance_window, params)
708
+ req.send_request(options)
709
+ end
710
+
711
+ # Removes a task from a Maintenance Window.
712
+ # @option params [required, String] :window_id
713
+ # The ID of the Maintenance Window the task should be removed from.
714
+ # @option params [required, String] :window_task_id
715
+ # The ID of the task to remove from the Maintenance Window.
716
+ # @return [Types::DeregisterTaskFromMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
717
+ #
718
+ # * {Types::DeregisterTaskFromMaintenanceWindowResult#window_id #WindowId} => String
719
+ # * {Types::DeregisterTaskFromMaintenanceWindowResult#window_task_id #WindowTaskId} => String
720
+ #
721
+ # @example Request syntax with placeholder values
722
+ # resp = client.deregister_task_from_maintenance_window({
723
+ # window_id: "MaintenanceWindowId", # required
724
+ # window_task_id: "MaintenanceWindowTaskId", # required
725
+ # })
726
+ #
727
+ # @example Response structure
728
+ # resp.window_id #=> String
729
+ # resp.window_task_id #=> String
730
+ # @overload deregister_task_from_maintenance_window(params = {})
731
+ # @param [Hash] params ({})
732
+ def deregister_task_from_maintenance_window(params = {}, options = {})
733
+ req = build_request(:deregister_task_from_maintenance_window, params)
734
+ req.send_request(options)
735
+ end
736
+
499
737
  # Details about the activation, including: the date and time the
500
738
  # activation was created, the expiration date, the IAM role assigned to
501
739
  # the instances in the activation, and the number of instances activated
@@ -546,31 +784,51 @@ module Aws
546
784
  end
547
785
 
548
786
  # Describes the associations for the specified SSM document or instance.
549
- # @option params [required, String] :name
787
+ # @option params [String] :name
550
788
  # The name of the SSM document.
551
- # @option params [required, String] :instance_id
789
+ # @option params [String] :instance_id
552
790
  # The instance ID.
791
+ # @option params [String] :association_id
792
+ # The association ID for which you want information.
553
793
  # @return [Types::DescribeAssociationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
554
794
  #
555
795
  # * {Types::DescribeAssociationResult#association_description #AssociationDescription} => Types::AssociationDescription
556
796
  #
557
797
  # @example Request syntax with placeholder values
558
798
  # resp = client.describe_association({
559
- # name: "DocumentName", # required
560
- # instance_id: "InstanceId", # required
799
+ # name: "DocumentName",
800
+ # instance_id: "InstanceId",
801
+ # association_id: "AssociationId",
561
802
  # })
562
803
  #
563
804
  # @example Response structure
564
805
  # resp.association_description.name #=> String
565
806
  # resp.association_description.instance_id #=> String
566
807
  # resp.association_description.date #=> Time
808
+ # resp.association_description.last_update_association_date #=> Time
567
809
  # resp.association_description.status.date #=> Time
568
810
  # resp.association_description.status.name #=> String, one of "Pending", "Success", "Failed"
569
811
  # resp.association_description.status.message #=> String
570
812
  # resp.association_description.status.additional_info #=> String
813
+ # resp.association_description.overview.status #=> String
814
+ # resp.association_description.overview.detailed_status #=> String
815
+ # resp.association_description.overview.association_status_aggregated_count #=> Hash
816
+ # resp.association_description.overview.association_status_aggregated_count["StatusName"] #=> Integer
817
+ # resp.association_description.document_version #=> String
571
818
  # resp.association_description.parameters #=> Hash
572
819
  # resp.association_description.parameters["ParameterName"] #=> Array
573
820
  # resp.association_description.parameters["ParameterName"][0] #=> String
821
+ # resp.association_description.association_id #=> String
822
+ # resp.association_description.targets #=> Array
823
+ # resp.association_description.targets[0].key #=> String
824
+ # resp.association_description.targets[0].values #=> Array
825
+ # resp.association_description.targets[0].values[0] #=> String
826
+ # resp.association_description.schedule_expression #=> String
827
+ # resp.association_description.output_location.s3_location.output_s3_region #=> String
828
+ # resp.association_description.output_location.s3_location.output_s3_bucket_name #=> String
829
+ # resp.association_description.output_location.s3_location.output_s3_key_prefix #=> String
830
+ # resp.association_description.last_execution_date #=> Time
831
+ # resp.association_description.last_successful_execution_date #=> Time
574
832
  # @overload describe_association(params = {})
575
833
  # @param [Hash] params ({})
576
834
  def describe_association(params = {}, options = {})
@@ -578,9 +836,61 @@ module Aws
578
836
  req.send_request(options)
579
837
  end
580
838
 
839
+ # Provides details about all active and terminated Automation
840
+ # executions.
841
+ # @option params [Array<Types::AutomationExecutionFilter>] :filters
842
+ # Filters used to limit the scope of executions that are requested.
843
+ # @option params [Integer] :max_results
844
+ # The maximum number of items to return for this call. The call also
845
+ # returns a token that you can specify in a subsequent call to get the
846
+ # next set of results.
847
+ # @option params [String] :next_token
848
+ # The token for the next set of items to return. (You received this
849
+ # token from a previous call.)
850
+ # @return [Types::DescribeAutomationExecutionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
851
+ #
852
+ # * {Types::DescribeAutomationExecutionsResult#automation_execution_metadata_list #AutomationExecutionMetadataList} => Array&lt;Types::AutomationExecutionMetadata&gt;
853
+ # * {Types::DescribeAutomationExecutionsResult#next_token #NextToken} => String
854
+ #
855
+ # @example Request syntax with placeholder values
856
+ # resp = client.describe_automation_executions({
857
+ # filters: [
858
+ # {
859
+ # key: "DocumentNamePrefix", # required, accepts DocumentNamePrefix, ExecutionStatus
860
+ # values: ["AutomationExecutionFilterValue"], # required
861
+ # },
862
+ # ],
863
+ # max_results: 1,
864
+ # next_token: "NextToken",
865
+ # })
866
+ #
867
+ # @example Response structure
868
+ # resp.automation_execution_metadata_list #=> Array
869
+ # resp.automation_execution_metadata_list[0].automation_execution_id #=> String
870
+ # resp.automation_execution_metadata_list[0].document_name #=> String
871
+ # resp.automation_execution_metadata_list[0].document_version #=> String
872
+ # resp.automation_execution_metadata_list[0].automation_execution_status #=> String, one of "Pending", "InProgress", "Success", "TimedOut", "Cancelled", "Failed"
873
+ # resp.automation_execution_metadata_list[0].execution_start_time #=> Time
874
+ # resp.automation_execution_metadata_list[0].execution_end_time #=> Time
875
+ # resp.automation_execution_metadata_list[0].executed_by #=> String
876
+ # resp.automation_execution_metadata_list[0].log_file #=> String
877
+ # resp.automation_execution_metadata_list[0].outputs #=> Hash
878
+ # resp.automation_execution_metadata_list[0].outputs["AutomationParameterKey"] #=> Array
879
+ # resp.automation_execution_metadata_list[0].outputs["AutomationParameterKey"][0] #=> String
880
+ # resp.next_token #=> String
881
+ # @overload describe_automation_executions(params = {})
882
+ # @param [Hash] params ({})
883
+ def describe_automation_executions(params = {}, options = {})
884
+ req = build_request(:describe_automation_executions, params)
885
+ req.send_request(options)
886
+ end
887
+
581
888
  # Describes the specified SSM document.
582
889
  # @option params [required, String] :name
583
890
  # The name of the SSM document.
891
+ # @option params [String] :document_version
892
+ # The document version for which you want information. Can be a specific
893
+ # version or the default version.
584
894
  # @return [Types::DescribeDocumentResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
585
895
  #
586
896
  # * {Types::DescribeDocumentResult#document #Document} => Types::DocumentDescription
@@ -588,6 +898,7 @@ module Aws
588
898
  # @example Request syntax with placeholder values
589
899
  # resp = client.describe_document({
590
900
  # name: "DocumentARN", # required
901
+ # document_version: "DocumentVersion",
591
902
  # })
592
903
  #
593
904
  # @example Response structure
@@ -597,7 +908,8 @@ module Aws
597
908
  # resp.document.name #=> String
598
909
  # resp.document.owner #=> String
599
910
  # resp.document.created_date #=> Time
600
- # resp.document.status #=> String, one of "Creating", "Active", "Deleting"
911
+ # resp.document.status #=> String, one of "Creating", "Active", "Updating", "Deleting"
912
+ # resp.document.document_version #=> String
601
913
  # resp.document.description #=> String
602
914
  # resp.document.parameters #=> Array
603
915
  # resp.document.parameters[0].name #=> String
@@ -606,6 +918,10 @@ module Aws
606
918
  # resp.document.parameters[0].default_value #=> String
607
919
  # resp.document.platform_types #=> Array
608
920
  # resp.document.platform_types[0] #=> String, one of "Windows", "Linux"
921
+ # resp.document.document_type #=> String, one of "Command", "Policy", "Automation"
922
+ # resp.document.schema_version #=> String
923
+ # resp.document.latest_version #=> String
924
+ # resp.document.default_version #=> String
609
925
  # @overload describe_document(params = {})
610
926
  # @param [Hash] params ({})
611
927
  def describe_document(params = {}, options = {})
@@ -642,6 +958,83 @@ module Aws
642
958
  req.send_request(options)
643
959
  end
644
960
 
961
+ # All associations for the instance(s).
962
+ # @option params [required, String] :instance_id
963
+ # The instance ID for which you want to view all associations.
964
+ # @option params [Integer] :max_results
965
+ # The maximum number of items to return for this call. The call also
966
+ # returns a token that you can specify in a subsequent call to get the
967
+ # next set of results.
968
+ # @option params [String] :next_token
969
+ # The token for the next set of items to return. (You received this
970
+ # token from a previous call.)
971
+ # @return [Types::DescribeEffectiveInstanceAssociationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
972
+ #
973
+ # * {Types::DescribeEffectiveInstanceAssociationsResult#associations #Associations} => Array&lt;Types::InstanceAssociation&gt;
974
+ # * {Types::DescribeEffectiveInstanceAssociationsResult#next_token #NextToken} => String
975
+ #
976
+ # @example Request syntax with placeholder values
977
+ # resp = client.describe_effective_instance_associations({
978
+ # instance_id: "InstanceId", # required
979
+ # max_results: 1,
980
+ # next_token: "NextToken",
981
+ # })
982
+ #
983
+ # @example Response structure
984
+ # resp.associations #=> Array
985
+ # resp.associations[0].association_id #=> String
986
+ # resp.associations[0].instance_id #=> String
987
+ # resp.associations[0].content #=> String
988
+ # resp.next_token #=> String
989
+ # @overload describe_effective_instance_associations(params = {})
990
+ # @param [Hash] params ({})
991
+ def describe_effective_instance_associations(params = {}, options = {})
992
+ req = build_request(:describe_effective_instance_associations, params)
993
+ req.send_request(options)
994
+ end
995
+
996
+ # The status of the associations for the instance(s).
997
+ # @option params [required, String] :instance_id
998
+ # The instance IDs for which you want association status information.
999
+ # @option params [Integer] :max_results
1000
+ # The maximum number of items to return for this call. The call also
1001
+ # returns a token that you can specify in a subsequent call to get the
1002
+ # next set of results.
1003
+ # @option params [String] :next_token
1004
+ # The token for the next set of items to return. (You received this
1005
+ # token from a previous call.)
1006
+ # @return [Types::DescribeInstanceAssociationsStatusResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1007
+ #
1008
+ # * {Types::DescribeInstanceAssociationsStatusResult#instance_association_status_infos #InstanceAssociationStatusInfos} => Array&lt;Types::InstanceAssociationStatusInfo&gt;
1009
+ # * {Types::DescribeInstanceAssociationsStatusResult#next_token #NextToken} => String
1010
+ #
1011
+ # @example Request syntax with placeholder values
1012
+ # resp = client.describe_instance_associations_status({
1013
+ # instance_id: "InstanceId", # required
1014
+ # max_results: 1,
1015
+ # next_token: "NextToken",
1016
+ # })
1017
+ #
1018
+ # @example Response structure
1019
+ # resp.instance_association_status_infos #=> Array
1020
+ # resp.instance_association_status_infos[0].association_id #=> String
1021
+ # resp.instance_association_status_infos[0].name #=> String
1022
+ # resp.instance_association_status_infos[0].document_version #=> String
1023
+ # resp.instance_association_status_infos[0].instance_id #=> String
1024
+ # resp.instance_association_status_infos[0].execution_date #=> Time
1025
+ # resp.instance_association_status_infos[0].status #=> String
1026
+ # resp.instance_association_status_infos[0].detailed_status #=> String
1027
+ # resp.instance_association_status_infos[0].execution_summary #=> String
1028
+ # resp.instance_association_status_infos[0].error_code #=> String
1029
+ # resp.instance_association_status_infos[0].output_url.s3_output_url.output_url #=> String
1030
+ # resp.next_token #=> String
1031
+ # @overload describe_instance_associations_status(params = {})
1032
+ # @param [Hash] params ({})
1033
+ def describe_instance_associations_status(params = {}, options = {})
1034
+ req = build_request(:describe_instance_associations_status, params)
1035
+ req.send_request(options)
1036
+ end
1037
+
645
1038
  # Describes one or more of your instances. You can use this to get
646
1039
  # information about instances like the operating system platform, the
647
1040
  # SSM agent version (Linux), status etc. If you specify one or more
@@ -652,6 +1045,9 @@ module Aws
652
1045
  # @option params [Array<Types::InstanceInformationFilter>] :instance_information_filter_list
653
1046
  # One or more filters. Use a filter to return a more specific list of
654
1047
  # instances.
1048
+ # @option params [Array<Types::InstanceInformationStringFilter>] :filters
1049
+ # One or more filters. Use a filter to return a more specific list of
1050
+ # instances.
655
1051
  # @option params [Integer] :max_results
656
1052
  # The maximum number of items to return for this call. The call also
657
1053
  # returns a token that you can specify in a subsequent call to get the
@@ -668,10 +1064,16 @@ module Aws
668
1064
  # resp = client.describe_instance_information({
669
1065
  # instance_information_filter_list: [
670
1066
  # {
671
- # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType
1067
+ # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType, AssociationStatus
672
1068
  # value_set: ["InstanceInformationFilterValue"], # required
673
1069
  # },
674
1070
  # ],
1071
+ # filters: [
1072
+ # {
1073
+ # key: "InstanceInformationStringFilterKey", # required
1074
+ # values: ["InstanceInformationFilterValue"], # required
1075
+ # },
1076
+ # ],
675
1077
  # max_results: 1,
676
1078
  # next_token: "NextToken",
677
1079
  # })
@@ -693,6 +1095,12 @@ module Aws
693
1095
  # resp.instance_information_list[0].name #=> String
694
1096
  # resp.instance_information_list[0].ip_address #=> String
695
1097
  # resp.instance_information_list[0].computer_name #=> String
1098
+ # resp.instance_information_list[0].association_status #=> String
1099
+ # resp.instance_information_list[0].last_association_execution_date #=> Time
1100
+ # resp.instance_information_list[0].last_successful_association_execution_date #=> Time
1101
+ # resp.instance_information_list[0].association_overview.detailed_status #=> String
1102
+ # resp.instance_information_list[0].association_overview.instance_association_status_aggregated_count #=> Hash
1103
+ # resp.instance_information_list[0].association_overview.instance_association_status_aggregated_count["StatusName"] #=> Integer
696
1104
  # resp.next_token #=> String
697
1105
  # @overload describe_instance_information(params = {})
698
1106
  # @param [Hash] params ({})
@@ -701,33 +1109,73 @@ module Aws
701
1109
  req.send_request(options)
702
1110
  end
703
1111
 
704
- # Gets the contents of the specified SSM document.
705
- # @option params [required, String] :name
706
- # The name of the SSM document.
707
- # @return [Types::GetDocumentResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1112
+ # Retrieves the individual task executions (one per target) for a
1113
+ # particular task executed as part of a Maintenance Window execution.
1114
+ # @option params [required, String] :window_execution_id
1115
+ # The ID of the Maintenance Window execution the task is part of.
1116
+ # @option params [required, String] :task_id
1117
+ # The ID of the specific task in the Maintenance Window task that should
1118
+ # be retrieved.
1119
+ # @option params [Array<Types::MaintenanceWindowFilter>] :filters
1120
+ # Optional filters used to scope down the returned task invocations. The
1121
+ # supported filter key is STATUS with the corresponding values PENDING,
1122
+ # IN\_PROGRESS, SUCCESS, FAILED, TIMED\_OUT, CANCELLING, and CANCELLED.
1123
+ # @option params [Integer] :max_results
1124
+ # The maximum number of items to return for this call. The call also
1125
+ # returns a token that you can specify in a subsequent call to get the
1126
+ # next set of results.
1127
+ # @option params [String] :next_token
1128
+ # The token for the next set of items to return. (You received this
1129
+ # token from a previous call.)
1130
+ # @return [Types::DescribeMaintenanceWindowExecutionTaskInvocationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
708
1131
  #
709
- # * {Types::GetDocumentResult#name #Name} => String
710
- # * {Types::GetDocumentResult#content #Content} => String
1132
+ # * {Types::DescribeMaintenanceWindowExecutionTaskInvocationsResult#window_execution_task_invocation_identities #WindowExecutionTaskInvocationIdentities} => Array&lt;Types::MaintenanceWindowExecutionTaskInvocationIdentity&gt;
1133
+ # * {Types::DescribeMaintenanceWindowExecutionTaskInvocationsResult#next_token #NextToken} => String
711
1134
  #
712
1135
  # @example Request syntax with placeholder values
713
- # resp = client.get_document({
714
- # name: "DocumentARN", # required
1136
+ # resp = client.describe_maintenance_window_execution_task_invocations({
1137
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
1138
+ # task_id: "MaintenanceWindowExecutionTaskId", # required
1139
+ # filters: [
1140
+ # {
1141
+ # key: "MaintenanceWindowFilterKey",
1142
+ # values: ["MaintenanceWindowFilterValue"],
1143
+ # },
1144
+ # ],
1145
+ # max_results: 1,
1146
+ # next_token: "NextToken",
715
1147
  # })
716
1148
  #
717
1149
  # @example Response structure
718
- # resp.name #=> String
719
- # resp.content #=> String
720
- # @overload get_document(params = {})
1150
+ # resp.window_execution_task_invocation_identities #=> Array
1151
+ # resp.window_execution_task_invocation_identities[0].window_execution_id #=> String
1152
+ # resp.window_execution_task_invocation_identities[0].task_execution_id #=> String
1153
+ # resp.window_execution_task_invocation_identities[0].invocation_id #=> String
1154
+ # resp.window_execution_task_invocation_identities[0].execution_id #=> String
1155
+ # resp.window_execution_task_invocation_identities[0].parameters #=> String
1156
+ # resp.window_execution_task_invocation_identities[0].status #=> String, one of "PENDING", "IN_PROGRESS", "SUCCESS", "FAILED", "TIMED_OUT", "CANCELLING", "CANCELLED", "SKIPPED_OVERLAPPING"
1157
+ # resp.window_execution_task_invocation_identities[0].status_details #=> String
1158
+ # resp.window_execution_task_invocation_identities[0].start_time #=> Time
1159
+ # resp.window_execution_task_invocation_identities[0].end_time #=> Time
1160
+ # resp.window_execution_task_invocation_identities[0].owner_information #=> String
1161
+ # resp.window_execution_task_invocation_identities[0].window_target_id #=> String
1162
+ # resp.next_token #=> String
1163
+ # @overload describe_maintenance_window_execution_task_invocations(params = {})
721
1164
  # @param [Hash] params ({})
722
- def get_document(params = {}, options = {})
723
- req = build_request(:get_document, params)
1165
+ def describe_maintenance_window_execution_task_invocations(params = {}, options = {})
1166
+ req = build_request(:describe_maintenance_window_execution_task_invocations, params)
724
1167
  req.send_request(options)
725
1168
  end
726
1169
 
727
- # Lists the associations for the specified SSM document or instance.
728
- # @option params [required, Array<Types::AssociationFilter>] :association_filter_list
729
- # One or more filters. Use a filter to return a more specific list of
730
- # results.
1170
+ # For a given Maintenance Window execution, lists the tasks that were
1171
+ # executed.
1172
+ # @option params [required, String] :window_execution_id
1173
+ # The ID of the Maintenance Window execution whose task executions
1174
+ # should be retrieved.
1175
+ # @option params [Array<Types::MaintenanceWindowFilter>] :filters
1176
+ # Optional filters used to scope down the returned tasks. The supported
1177
+ # filter key is STATUS with the corresponding values PENDING,
1178
+ # IN\_PROGRESS, SUCCESS, FAILED, TIMED\_OUT, CANCELLING, and CANCELLED.
731
1179
  # @option params [Integer] :max_results
732
1180
  # The maximum number of items to return for this call. The call also
733
1181
  # returns a token that you can specify in a subsequent call to get the
@@ -735,17 +1183,18 @@ module Aws
735
1183
  # @option params [String] :next_token
736
1184
  # The token for the next set of items to return. (You received this
737
1185
  # token from a previous call.)
738
- # @return [Types::ListAssociationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1186
+ # @return [Types::DescribeMaintenanceWindowExecutionTasksResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
739
1187
  #
740
- # * {Types::ListAssociationsResult#associations #Associations} => Array&lt;Types::Association&gt;
741
- # * {Types::ListAssociationsResult#next_token #NextToken} => String
1188
+ # * {Types::DescribeMaintenanceWindowExecutionTasksResult#window_execution_task_identities #WindowExecutionTaskIdentities} => Array&lt;Types::MaintenanceWindowExecutionTaskIdentity&gt;
1189
+ # * {Types::DescribeMaintenanceWindowExecutionTasksResult#next_token #NextToken} => String
742
1190
  #
743
1191
  # @example Request syntax with placeholder values
744
- # resp = client.list_associations({
745
- # association_filter_list: [ # required
1192
+ # resp = client.describe_maintenance_window_execution_tasks({
1193
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
1194
+ # filters: [
746
1195
  # {
747
- # key: "InstanceId", # required, accepts InstanceId, Name
748
- # value: "AssociationFilterValue", # required
1196
+ # key: "MaintenanceWindowFilterKey",
1197
+ # values: ["MaintenanceWindowFilterValue"],
749
1198
  # },
750
1199
  # ],
751
1200
  # max_results: 1,
@@ -753,92 +1202,841 @@ module Aws
753
1202
  # })
754
1203
  #
755
1204
  # @example Response structure
756
- # resp.associations #=> Array
757
- # resp.associations[0].name #=> String
758
- # resp.associations[0].instance_id #=> String
1205
+ # resp.window_execution_task_identities #=> Array
1206
+ # resp.window_execution_task_identities[0].window_execution_id #=> String
1207
+ # resp.window_execution_task_identities[0].task_execution_id #=> String
1208
+ # resp.window_execution_task_identities[0].status #=> String, one of "PENDING", "IN_PROGRESS", "SUCCESS", "FAILED", "TIMED_OUT", "CANCELLING", "CANCELLED", "SKIPPED_OVERLAPPING"
1209
+ # resp.window_execution_task_identities[0].status_details #=> String
1210
+ # resp.window_execution_task_identities[0].start_time #=> Time
1211
+ # resp.window_execution_task_identities[0].end_time #=> Time
1212
+ # resp.window_execution_task_identities[0].task_arn #=> String
1213
+ # resp.window_execution_task_identities[0].task_type #=> String, one of "RUN_COMMAND"
759
1214
  # resp.next_token #=> String
760
- # @overload list_associations(params = {})
1215
+ # @overload describe_maintenance_window_execution_tasks(params = {})
761
1216
  # @param [Hash] params ({})
762
- def list_associations(params = {}, options = {})
763
- req = build_request(:list_associations, params)
1217
+ def describe_maintenance_window_execution_tasks(params = {}, options = {})
1218
+ req = build_request(:describe_maintenance_window_execution_tasks, params)
764
1219
  req.send_request(options)
765
1220
  end
766
1221
 
767
- # An invocation is copy of a command sent to a specific instance. A
768
- # command can apply to one or more instances. A command invocation
769
- # applies to one instance. For example, if a user executes SendCommand
770
- # against three instances, then a command invocation is created for each
771
- # requested instance ID. ListCommandInvocations provide status about
772
- # command execution.
773
- # @option params [String] :command_id
774
- # (Optional) The invocations for a specific command ID.
775
- # @option params [String] :instance_id
776
- # (Optional) The command execution details for a specific instance ID.
1222
+ # Lists the executions of a Maintenance Window (meaning, information
1223
+ # about when the Maintenance Window was scheduled to be active and
1224
+ # information about tasks registered and run with the Maintenance
1225
+ # Window).
1226
+ # @option params [required, String] :window_id
1227
+ # The ID of the Maintenance Window whose executions should be retrieved.
1228
+ # @option params [Array<Types::MaintenanceWindowFilter>] :filters
1229
+ # Each entry in the array is a structure containing:
1230
+ #
1231
+ # Key (string, 1 length 128)
1232
+ #
1233
+ # Values (array of strings 1 ≤ length ≤ 256)
1234
+ #
1235
+ # The supported Keys are `ExecutedBefore` and `ExecutedAfter` with the
1236
+ # value being a date/time string such as 2016-11-04T05:00:00Z.
777
1237
  # @option params [Integer] :max_results
778
- # (Optional) The maximum number of items to return for this call. The
779
- # call also returns a token that you can specify in a subsequent call to
780
- # get the next set of results.
1238
+ # The maximum number of items to return for this call. The call also
1239
+ # returns a token that you can specify in a subsequent call to get the
1240
+ # next set of results.
781
1241
  # @option params [String] :next_token
782
- # (Optional) The token for the next set of items to return. (You
783
- # received this token from a previous call.)
784
- # @option params [Array<Types::CommandFilter>] :filters
785
- # (Optional) One or more filters. Use a filter to return a more specific
786
- # list of results.
787
- # @option params [Boolean] :details
788
- # (Optional) If set this returns the response of the command executions
789
- # and any command output. By default this is set to False.
790
- # @return [Types::ListCommandInvocationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1242
+ # The token for the next set of items to return. (You received this
1243
+ # token from a previous call.)
1244
+ # @return [Types::DescribeMaintenanceWindowExecutionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
791
1245
  #
792
- # * {Types::ListCommandInvocationsResult#command_invocations #CommandInvocations} => Array&lt;Types::CommandInvocation&gt;
793
- # * {Types::ListCommandInvocationsResult#next_token #NextToken} => String
1246
+ # * {Types::DescribeMaintenanceWindowExecutionsResult#window_executions #WindowExecutions} => Array&lt;Types::MaintenanceWindowExecution&gt;
1247
+ # * {Types::DescribeMaintenanceWindowExecutionsResult#next_token #NextToken} => String
794
1248
  #
795
1249
  # @example Request syntax with placeholder values
796
- # resp = client.list_command_invocations({
797
- # command_id: "CommandId",
798
- # instance_id: "InstanceId",
799
- # max_results: 1,
800
- # next_token: "NextToken",
1250
+ # resp = client.describe_maintenance_window_executions({
1251
+ # window_id: "MaintenanceWindowId", # required
801
1252
  # filters: [
802
1253
  # {
803
- # key: "InvokedAfter", # required, accepts InvokedAfter, InvokedBefore, Status
804
- # value: "CommandFilterValue", # required
1254
+ # key: "MaintenanceWindowFilterKey",
1255
+ # values: ["MaintenanceWindowFilterValue"],
805
1256
  # },
806
1257
  # ],
807
- # details: false,
1258
+ # max_results: 1,
1259
+ # next_token: "NextToken",
808
1260
  # })
809
1261
  #
810
1262
  # @example Response structure
811
- # resp.command_invocations #=> Array
812
- # resp.command_invocations[0].command_id #=> String
813
- # resp.command_invocations[0].instance_id #=> String
814
- # resp.command_invocations[0].comment #=> String
815
- # resp.command_invocations[0].document_name #=> String
816
- # resp.command_invocations[0].requested_date_time #=> Time
817
- # resp.command_invocations[0].status #=> String, one of "Pending", "InProgress", "Cancelling", "Success", "TimedOut", "Cancelled", "Failed"
818
- # resp.command_invocations[0].trace_output #=> String
819
- # resp.command_invocations[0].command_plugins #=> Array
820
- # resp.command_invocations[0].command_plugins[0].name #=> String
821
- # resp.command_invocations[0].command_plugins[0].status #=> String, one of "Pending", "InProgress", "Success", "TimedOut", "Cancelled", "Failed"
822
- # resp.command_invocations[0].command_plugins[0].response_code #=> Integer
823
- # resp.command_invocations[0].command_plugins[0].response_start_date_time #=> Time
824
- # resp.command_invocations[0].command_plugins[0].response_finish_date_time #=> Time
825
- # resp.command_invocations[0].command_plugins[0].output #=> String
826
- # resp.command_invocations[0].command_plugins[0].output_s3_bucket_name #=> String
827
- # resp.command_invocations[0].command_plugins[0].output_s3_key_prefix #=> String
828
- # resp.command_invocations[0].service_role #=> String
829
- # resp.command_invocations[0].notification_config.notification_arn #=> String
830
- # resp.command_invocations[0].notification_config.notification_events #=> Array
831
- # resp.command_invocations[0].notification_config.notification_events[0] #=> String, one of "All", "InProgress", "Success", "TimedOut", "Cancelled", "Failed"
832
- # resp.command_invocations[0].notification_config.notification_type #=> String, one of "Command", "Invocation"
1263
+ # resp.window_executions #=> Array
1264
+ # resp.window_executions[0].window_id #=> String
1265
+ # resp.window_executions[0].window_execution_id #=> String
1266
+ # resp.window_executions[0].status #=> String, one of "PENDING", "IN_PROGRESS", "SUCCESS", "FAILED", "TIMED_OUT", "CANCELLING", "CANCELLED", "SKIPPED_OVERLAPPING"
1267
+ # resp.window_executions[0].status_details #=> String
1268
+ # resp.window_executions[0].start_time #=> Time
1269
+ # resp.window_executions[0].end_time #=> Time
833
1270
  # resp.next_token #=> String
834
- # @overload list_command_invocations(params = {})
1271
+ # @overload describe_maintenance_window_executions(params = {})
835
1272
  # @param [Hash] params ({})
836
- def list_command_invocations(params = {}, options = {})
837
- req = build_request(:list_command_invocations, params)
1273
+ def describe_maintenance_window_executions(params = {}, options = {})
1274
+ req = build_request(:describe_maintenance_window_executions, params)
838
1275
  req.send_request(options)
839
1276
  end
840
1277
 
841
- # Lists the commands requested by users of the AWS account.
1278
+ # Lists the targets registered with the Maintenance Window.
1279
+ # @option params [required, String] :window_id
1280
+ # The ID of the Maintenance Window whose targets should be retrieved.
1281
+ # @option params [Array<Types::MaintenanceWindowFilter>] :filters
1282
+ # Optional filters that can be used to narrow down the scope of the
1283
+ # returned window targets. The supported filter keys are `Type`,
1284
+ # `WindowTargetId` and `OwnerInformation`.
1285
+ # @option params [Integer] :max_results
1286
+ # The maximum number of items to return for this call. The call also
1287
+ # returns a token that you can specify in a subsequent call to get the
1288
+ # next set of results.
1289
+ # @option params [String] :next_token
1290
+ # The token for the next set of items to return. (You received this
1291
+ # token from a previous call.)
1292
+ # @return [Types::DescribeMaintenanceWindowTargetsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1293
+ #
1294
+ # * {Types::DescribeMaintenanceWindowTargetsResult#targets #Targets} => Array&lt;Types::MaintenanceWindowTarget&gt;
1295
+ # * {Types::DescribeMaintenanceWindowTargetsResult#next_token #NextToken} => String
1296
+ #
1297
+ # @example Request syntax with placeholder values
1298
+ # resp = client.describe_maintenance_window_targets({
1299
+ # window_id: "MaintenanceWindowId", # required
1300
+ # filters: [
1301
+ # {
1302
+ # key: "MaintenanceWindowFilterKey",
1303
+ # values: ["MaintenanceWindowFilterValue"],
1304
+ # },
1305
+ # ],
1306
+ # max_results: 1,
1307
+ # next_token: "NextToken",
1308
+ # })
1309
+ #
1310
+ # @example Response structure
1311
+ # resp.targets #=> Array
1312
+ # resp.targets[0].window_id #=> String
1313
+ # resp.targets[0].window_target_id #=> String
1314
+ # resp.targets[0].resource_type #=> String, one of "INSTANCE"
1315
+ # resp.targets[0].targets #=> Array
1316
+ # resp.targets[0].targets[0].key #=> String
1317
+ # resp.targets[0].targets[0].values #=> Array
1318
+ # resp.targets[0].targets[0].values[0] #=> String
1319
+ # resp.targets[0].owner_information #=> String
1320
+ # resp.next_token #=> String
1321
+ # @overload describe_maintenance_window_targets(params = {})
1322
+ # @param [Hash] params ({})
1323
+ def describe_maintenance_window_targets(params = {}, options = {})
1324
+ req = build_request(:describe_maintenance_window_targets, params)
1325
+ req.send_request(options)
1326
+ end
1327
+
1328
+ # Lists the tasks in a Maintenance Window.
1329
+ # @option params [required, String] :window_id
1330
+ # The ID of the Maintenance Window whose tasks should be retrieved.
1331
+ # @option params [Array<Types::MaintenanceWindowFilter>] :filters
1332
+ # Optional filters used to narrow down the scope of the returned tasks.
1333
+ # The supported filter keys are `WindowTaskId`, `TaskArn`, `Priority`,
1334
+ # and `TaskType`.
1335
+ # @option params [Integer] :max_results
1336
+ # The maximum number of items to return for this call. The call also
1337
+ # returns a token that you can specify in a subsequent call to get the
1338
+ # next set of results.
1339
+ # @option params [String] :next_token
1340
+ # The token for the next set of items to return. (You received this
1341
+ # token from a previous call.)
1342
+ # @return [Types::DescribeMaintenanceWindowTasksResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1343
+ #
1344
+ # * {Types::DescribeMaintenanceWindowTasksResult#tasks #Tasks} => Array&lt;Types::MaintenanceWindowTask&gt;
1345
+ # * {Types::DescribeMaintenanceWindowTasksResult#next_token #NextToken} => String
1346
+ #
1347
+ # @example Request syntax with placeholder values
1348
+ # resp = client.describe_maintenance_window_tasks({
1349
+ # window_id: "MaintenanceWindowId", # required
1350
+ # filters: [
1351
+ # {
1352
+ # key: "MaintenanceWindowFilterKey",
1353
+ # values: ["MaintenanceWindowFilterValue"],
1354
+ # },
1355
+ # ],
1356
+ # max_results: 1,
1357
+ # next_token: "NextToken",
1358
+ # })
1359
+ #
1360
+ # @example Response structure
1361
+ # resp.tasks #=> Array
1362
+ # resp.tasks[0].window_id #=> String
1363
+ # resp.tasks[0].window_task_id #=> String
1364
+ # resp.tasks[0].task_arn #=> String
1365
+ # resp.tasks[0].type #=> String, one of "RUN_COMMAND"
1366
+ # resp.tasks[0].targets #=> Array
1367
+ # resp.tasks[0].targets[0].key #=> String
1368
+ # resp.tasks[0].targets[0].values #=> Array
1369
+ # resp.tasks[0].targets[0].values[0] #=> String
1370
+ # resp.tasks[0].task_parameters #=> Hash
1371
+ # resp.tasks[0].task_parameters["MaintenanceWindowTaskParameterName"].values #=> Array
1372
+ # resp.tasks[0].task_parameters["MaintenanceWindowTaskParameterName"].values[0] #=> String
1373
+ # resp.tasks[0].priority #=> Integer
1374
+ # resp.tasks[0].logging_info.s3_bucket_name #=> String
1375
+ # resp.tasks[0].logging_info.s3_key_prefix #=> String
1376
+ # resp.tasks[0].logging_info.s3_region #=> String
1377
+ # resp.tasks[0].service_role_arn #=> String
1378
+ # resp.tasks[0].max_concurrency #=> String
1379
+ # resp.tasks[0].max_errors #=> String
1380
+ # resp.next_token #=> String
1381
+ # @overload describe_maintenance_window_tasks(params = {})
1382
+ # @param [Hash] params ({})
1383
+ def describe_maintenance_window_tasks(params = {}, options = {})
1384
+ req = build_request(:describe_maintenance_window_tasks, params)
1385
+ req.send_request(options)
1386
+ end
1387
+
1388
+ # Retrieves the Maintenance Windows in an AWS account.
1389
+ # @option params [Array<Types::MaintenanceWindowFilter>] :filters
1390
+ # Optional filters used to narrow down the scope of the returned
1391
+ # Maintenance Windows. Supported filter keys are `Name` and `Enabled`.
1392
+ # @option params [Integer] :max_results
1393
+ # The maximum number of items to return for this call. The call also
1394
+ # returns a token that you can specify in a subsequent call to get the
1395
+ # next set of results.
1396
+ # @option params [String] :next_token
1397
+ # The token for the next set of items to return. (You received this
1398
+ # token from a previous call.)
1399
+ # @return [Types::DescribeMaintenanceWindowsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1400
+ #
1401
+ # * {Types::DescribeMaintenanceWindowsResult#window_identities #WindowIdentities} => Array&lt;Types::MaintenanceWindowIdentity&gt;
1402
+ # * {Types::DescribeMaintenanceWindowsResult#next_token #NextToken} => String
1403
+ #
1404
+ # @example Request syntax with placeholder values
1405
+ # resp = client.describe_maintenance_windows({
1406
+ # filters: [
1407
+ # {
1408
+ # key: "MaintenanceWindowFilterKey",
1409
+ # values: ["MaintenanceWindowFilterValue"],
1410
+ # },
1411
+ # ],
1412
+ # max_results: 1,
1413
+ # next_token: "NextToken",
1414
+ # })
1415
+ #
1416
+ # @example Response structure
1417
+ # resp.window_identities #=> Array
1418
+ # resp.window_identities[0].window_id #=> String
1419
+ # resp.window_identities[0].name #=> String
1420
+ # resp.window_identities[0].enabled #=> Boolean
1421
+ # resp.window_identities[0].duration #=> Integer
1422
+ # resp.window_identities[0].cutoff #=> Integer
1423
+ # resp.next_token #=> String
1424
+ # @overload describe_maintenance_windows(params = {})
1425
+ # @param [Hash] params ({})
1426
+ def describe_maintenance_windows(params = {}, options = {})
1427
+ req = build_request(:describe_maintenance_windows, params)
1428
+ req.send_request(options)
1429
+ end
1430
+
1431
+ # Get information about a parameter.
1432
+ # @option params [Array<Types::ParametersFilter>] :filters
1433
+ # One or more filters. Use a filter to return a more specific list of
1434
+ # results.
1435
+ # @option params [Integer] :max_results
1436
+ # The maximum number of items to return for this call. The call also
1437
+ # returns a token that you can specify in a subsequent call to get the
1438
+ # next set of results.
1439
+ # @option params [String] :next_token
1440
+ # The token for the next set of items to return. (You received this
1441
+ # token from a previous call.)
1442
+ # @return [Types::DescribeParametersResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1443
+ #
1444
+ # * {Types::DescribeParametersResult#parameters #Parameters} => Array&lt;Types::ParameterMetadata&gt;
1445
+ # * {Types::DescribeParametersResult#next_token #NextToken} => String
1446
+ #
1447
+ # @example Request syntax with placeholder values
1448
+ # resp = client.describe_parameters({
1449
+ # filters: [
1450
+ # {
1451
+ # key: "Name", # accepts Name, Type, KeyId
1452
+ # values: ["ParametersFilterValue"], # required
1453
+ # },
1454
+ # ],
1455
+ # max_results: 1,
1456
+ # next_token: "NextToken",
1457
+ # })
1458
+ #
1459
+ # @example Response structure
1460
+ # resp.parameters #=> Array
1461
+ # resp.parameters[0].name #=> String
1462
+ # resp.parameters[0].type #=> String, one of "String", "StringList", "SecureString"
1463
+ # resp.parameters[0].key_id #=> String
1464
+ # resp.parameters[0].last_modified_date #=> Time
1465
+ # resp.parameters[0].last_modified_user #=> String
1466
+ # resp.parameters[0].description #=> String
1467
+ # resp.next_token #=> String
1468
+ # @overload describe_parameters(params = {})
1469
+ # @param [Hash] params ({})
1470
+ def describe_parameters(params = {}, options = {})
1471
+ req = build_request(:describe_parameters, params)
1472
+ req.send_request(options)
1473
+ end
1474
+
1475
+ # Get detailed information about a particular Automation execution.
1476
+ # @option params [required, String] :automation_execution_id
1477
+ # The unique identifier for an existing automation execution to examine.
1478
+ # The execution ID is returned by `StartAutomationExecution` when the
1479
+ # execution of an Automation document is initiated.
1480
+ # @return [Types::GetAutomationExecutionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1481
+ #
1482
+ # * {Types::GetAutomationExecutionResult#automation_execution #AutomationExecution} => Types::AutomationExecution
1483
+ #
1484
+ # @example Request syntax with placeholder values
1485
+ # resp = client.get_automation_execution({
1486
+ # automation_execution_id: "AutomationExecutionId", # required
1487
+ # })
1488
+ #
1489
+ # @example Response structure
1490
+ # resp.automation_execution.automation_execution_id #=> String
1491
+ # resp.automation_execution.document_name #=> String
1492
+ # resp.automation_execution.document_version #=> String
1493
+ # resp.automation_execution.execution_start_time #=> Time
1494
+ # resp.automation_execution.execution_end_time #=> Time
1495
+ # resp.automation_execution.automation_execution_status #=> String, one of "Pending", "InProgress", "Success", "TimedOut", "Cancelled", "Failed"
1496
+ # resp.automation_execution.step_executions #=> Array
1497
+ # resp.automation_execution.step_executions[0].step_name #=> String
1498
+ # resp.automation_execution.step_executions[0].action #=> String
1499
+ # resp.automation_execution.step_executions[0].execution_start_time #=> Time
1500
+ # resp.automation_execution.step_executions[0].execution_end_time #=> Time
1501
+ # resp.automation_execution.step_executions[0].step_status #=> String, one of "Pending", "InProgress", "Success", "TimedOut", "Cancelled", "Failed"
1502
+ # resp.automation_execution.step_executions[0].response_code #=> String
1503
+ # resp.automation_execution.step_executions[0].inputs #=> Hash
1504
+ # resp.automation_execution.step_executions[0].inputs["String"] #=> String
1505
+ # resp.automation_execution.step_executions[0].outputs #=> Hash
1506
+ # resp.automation_execution.step_executions[0].outputs["AutomationParameterKey"] #=> Array
1507
+ # resp.automation_execution.step_executions[0].outputs["AutomationParameterKey"][0] #=> String
1508
+ # resp.automation_execution.step_executions[0].response #=> String
1509
+ # resp.automation_execution.step_executions[0].failure_message #=> String
1510
+ # resp.automation_execution.parameters #=> Hash
1511
+ # resp.automation_execution.parameters["AutomationParameterKey"] #=> Array
1512
+ # resp.automation_execution.parameters["AutomationParameterKey"][0] #=> String
1513
+ # resp.automation_execution.outputs #=> Hash
1514
+ # resp.automation_execution.outputs["AutomationParameterKey"] #=> Array
1515
+ # resp.automation_execution.outputs["AutomationParameterKey"][0] #=> String
1516
+ # resp.automation_execution.failure_message #=> String
1517
+ # @overload get_automation_execution(params = {})
1518
+ # @param [Hash] params ({})
1519
+ def get_automation_execution(params = {}, options = {})
1520
+ req = build_request(:get_automation_execution, params)
1521
+ req.send_request(options)
1522
+ end
1523
+
1524
+ # Returns detailed information about command execution for an invocation
1525
+ # or plugin.
1526
+ # @option params [required, String] :command_id
1527
+ # (Required) The parent command ID of the invocation plugin.
1528
+ # @option params [required, String] :instance_id
1529
+ # (Required) The ID of the managed instance targeted by the command. A
1530
+ # managed instance can be an Amazon EC2 instance or an instance in your
1531
+ # hybrid environment that is configured for Systems Manager.
1532
+ # @option params [String] :plugin_name
1533
+ # (Optional) The name of the plugin for which you want detailed results.
1534
+ # If the SSM document contains only one plugin, the name can be omitted
1535
+ # and the details will be returned.
1536
+ # @return [Types::GetCommandInvocationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1537
+ #
1538
+ # * {Types::GetCommandInvocationResult#command_id #CommandId} => String
1539
+ # * {Types::GetCommandInvocationResult#instance_id #InstanceId} => String
1540
+ # * {Types::GetCommandInvocationResult#comment #Comment} => String
1541
+ # * {Types::GetCommandInvocationResult#document_name #DocumentName} => String
1542
+ # * {Types::GetCommandInvocationResult#plugin_name #PluginName} => String
1543
+ # * {Types::GetCommandInvocationResult#response_code #ResponseCode} => Integer
1544
+ # * {Types::GetCommandInvocationResult#execution_start_date_time #ExecutionStartDateTime} => String
1545
+ # * {Types::GetCommandInvocationResult#execution_elapsed_time #ExecutionElapsedTime} => String
1546
+ # * {Types::GetCommandInvocationResult#execution_end_date_time #ExecutionEndDateTime} => String
1547
+ # * {Types::GetCommandInvocationResult#status #Status} => String
1548
+ # * {Types::GetCommandInvocationResult#status_details #StatusDetails} => String
1549
+ # * {Types::GetCommandInvocationResult#standard_output_content #StandardOutputContent} => String
1550
+ # * {Types::GetCommandInvocationResult#standard_output_url #StandardOutputUrl} => String
1551
+ # * {Types::GetCommandInvocationResult#standard_error_content #StandardErrorContent} => String
1552
+ # * {Types::GetCommandInvocationResult#standard_error_url #StandardErrorUrl} => String
1553
+ #
1554
+ # @example Request syntax with placeholder values
1555
+ # resp = client.get_command_invocation({
1556
+ # command_id: "CommandId", # required
1557
+ # instance_id: "InstanceId", # required
1558
+ # plugin_name: "CommandPluginName",
1559
+ # })
1560
+ #
1561
+ # @example Response structure
1562
+ # resp.command_id #=> String
1563
+ # resp.instance_id #=> String
1564
+ # resp.comment #=> String
1565
+ # resp.document_name #=> String
1566
+ # resp.plugin_name #=> String
1567
+ # resp.response_code #=> Integer
1568
+ # resp.execution_start_date_time #=> String
1569
+ # resp.execution_elapsed_time #=> String
1570
+ # resp.execution_end_date_time #=> String
1571
+ # resp.status #=> String, one of "Pending", "InProgress", "Delayed", "Success", "Cancelled", "TimedOut", "Failed", "Cancelling"
1572
+ # resp.status_details #=> String
1573
+ # resp.standard_output_content #=> String
1574
+ # resp.standard_output_url #=> String
1575
+ # resp.standard_error_content #=> String
1576
+ # resp.standard_error_url #=> String
1577
+ # @overload get_command_invocation(params = {})
1578
+ # @param [Hash] params ({})
1579
+ def get_command_invocation(params = {}, options = {})
1580
+ req = build_request(:get_command_invocation, params)
1581
+ req.send_request(options)
1582
+ end
1583
+
1584
+ # Gets the contents of the specified SSM document.
1585
+ # @option params [required, String] :name
1586
+ # The name of the SSM document.
1587
+ # @option params [String] :document_version
1588
+ # The document version for which you want information.
1589
+ # @return [Types::GetDocumentResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1590
+ #
1591
+ # * {Types::GetDocumentResult#name #Name} => String
1592
+ # * {Types::GetDocumentResult#document_version #DocumentVersion} => String
1593
+ # * {Types::GetDocumentResult#content #Content} => String
1594
+ # * {Types::GetDocumentResult#document_type #DocumentType} => String
1595
+ #
1596
+ # @example Request syntax with placeholder values
1597
+ # resp = client.get_document({
1598
+ # name: "DocumentARN", # required
1599
+ # document_version: "DocumentVersion",
1600
+ # })
1601
+ #
1602
+ # @example Response structure
1603
+ # resp.name #=> String
1604
+ # resp.document_version #=> String
1605
+ # resp.content #=> String
1606
+ # resp.document_type #=> String, one of "Command", "Policy", "Automation"
1607
+ # @overload get_document(params = {})
1608
+ # @param [Hash] params ({})
1609
+ def get_document(params = {}, options = {})
1610
+ req = build_request(:get_document, params)
1611
+ req.send_request(options)
1612
+ end
1613
+
1614
+ # Query inventory information.
1615
+ # @option params [Array<Types::InventoryFilter>] :filters
1616
+ # One or more filters. Use a filter to return a more specific list of
1617
+ # results.
1618
+ # @option params [Array<Types::ResultAttribute>] :result_attributes
1619
+ # The list of inventory item types to return.
1620
+ # @option params [String] :next_token
1621
+ # The token for the next set of items to return. (You received this
1622
+ # token from a previous call.)
1623
+ # @option params [Integer] :max_results
1624
+ # The maximum number of items to return for this call. The call also
1625
+ # returns a token that you can specify in a subsequent call to get the
1626
+ # next set of results.
1627
+ # @return [Types::GetInventoryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1628
+ #
1629
+ # * {Types::GetInventoryResult#entities #Entities} => Array&lt;Types::InventoryResultEntity&gt;
1630
+ # * {Types::GetInventoryResult#next_token #NextToken} => String
1631
+ #
1632
+ # @example Request syntax with placeholder values
1633
+ # resp = client.get_inventory({
1634
+ # filters: [
1635
+ # {
1636
+ # key: "InventoryFilterKey", # required
1637
+ # values: ["InventoryFilterValue"], # required
1638
+ # type: "Equal", # accepts Equal, NotEqual, BeginWith, LessThan, GreaterThan
1639
+ # },
1640
+ # ],
1641
+ # result_attributes: [
1642
+ # {
1643
+ # type_name: "InventoryItemTypeName", # required
1644
+ # },
1645
+ # ],
1646
+ # next_token: "NextToken",
1647
+ # max_results: 1,
1648
+ # })
1649
+ #
1650
+ # @example Response structure
1651
+ # resp.entities #=> Array
1652
+ # resp.entities[0].id #=> String
1653
+ # resp.entities[0].data #=> Hash
1654
+ # resp.entities[0].data["InventoryResultItemKey"].type_name #=> String
1655
+ # resp.entities[0].data["InventoryResultItemKey"].schema_version #=> String
1656
+ # resp.entities[0].data["InventoryResultItemKey"].capture_time #=> String
1657
+ # resp.entities[0].data["InventoryResultItemKey"].content_hash #=> String
1658
+ # resp.entities[0].data["InventoryResultItemKey"].content #=> Array
1659
+ # resp.entities[0].data["InventoryResultItemKey"].content[0] #=> Hash
1660
+ # resp.entities[0].data["InventoryResultItemKey"].content[0]["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1661
+ # resp.next_token #=> String
1662
+ # @overload get_inventory(params = {})
1663
+ # @param [Hash] params ({})
1664
+ def get_inventory(params = {}, options = {})
1665
+ req = build_request(:get_inventory, params)
1666
+ req.send_request(options)
1667
+ end
1668
+
1669
+ # Return a list of inventory type names for the account, or return a
1670
+ # list of attribute names for a specific Inventory item type.
1671
+ # @option params [String] :type_name
1672
+ # The type of inventory item to return.
1673
+ # @option params [String] :next_token
1674
+ # The token for the next set of items to return. (You received this
1675
+ # token from a previous call.)
1676
+ # @option params [Integer] :max_results
1677
+ # The maximum number of items to return for this call. The call also
1678
+ # returns a token that you can specify in a subsequent call to get the
1679
+ # next set of results.
1680
+ # @return [Types::GetInventorySchemaResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1681
+ #
1682
+ # * {Types::GetInventorySchemaResult#schemas #Schemas} => Array&lt;Types::InventoryItemSchema&gt;
1683
+ # * {Types::GetInventorySchemaResult#next_token #NextToken} => String
1684
+ #
1685
+ # @example Request syntax with placeholder values
1686
+ # resp = client.get_inventory_schema({
1687
+ # type_name: "InventoryItemTypeNameFilter",
1688
+ # next_token: "NextToken",
1689
+ # max_results: 1,
1690
+ # })
1691
+ #
1692
+ # @example Response structure
1693
+ # resp.schemas #=> Array
1694
+ # resp.schemas[0].type_name #=> String
1695
+ # resp.schemas[0].version #=> String
1696
+ # resp.schemas[0].attributes #=> Array
1697
+ # resp.schemas[0].attributes[0].name #=> String
1698
+ # resp.schemas[0].attributes[0].data_type #=> String, one of "string", "number"
1699
+ # resp.next_token #=> String
1700
+ # @overload get_inventory_schema(params = {})
1701
+ # @param [Hash] params ({})
1702
+ def get_inventory_schema(params = {}, options = {})
1703
+ req = build_request(:get_inventory_schema, params)
1704
+ req.send_request(options)
1705
+ end
1706
+
1707
+ # Retrieves a Maintenance Window.
1708
+ # @option params [required, String] :window_id
1709
+ # The ID of the desired Maintenance Window.
1710
+ # @return [Types::GetMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1711
+ #
1712
+ # * {Types::GetMaintenanceWindowResult#window_id #WindowId} => String
1713
+ # * {Types::GetMaintenanceWindowResult#name #Name} => String
1714
+ # * {Types::GetMaintenanceWindowResult#schedule #Schedule} => String
1715
+ # * {Types::GetMaintenanceWindowResult#duration #Duration} => Integer
1716
+ # * {Types::GetMaintenanceWindowResult#cutoff #Cutoff} => Integer
1717
+ # * {Types::GetMaintenanceWindowResult#allow_unassociated_targets #AllowUnassociatedTargets} => Boolean
1718
+ # * {Types::GetMaintenanceWindowResult#enabled #Enabled} => Boolean
1719
+ # * {Types::GetMaintenanceWindowResult#created_date #CreatedDate} => Time
1720
+ # * {Types::GetMaintenanceWindowResult#modified_date #ModifiedDate} => Time
1721
+ #
1722
+ # @example Request syntax with placeholder values
1723
+ # resp = client.get_maintenance_window({
1724
+ # window_id: "MaintenanceWindowId", # required
1725
+ # })
1726
+ #
1727
+ # @example Response structure
1728
+ # resp.window_id #=> String
1729
+ # resp.name #=> String
1730
+ # resp.schedule #=> String
1731
+ # resp.duration #=> Integer
1732
+ # resp.cutoff #=> Integer
1733
+ # resp.allow_unassociated_targets #=> Boolean
1734
+ # resp.enabled #=> Boolean
1735
+ # resp.created_date #=> Time
1736
+ # resp.modified_date #=> Time
1737
+ # @overload get_maintenance_window(params = {})
1738
+ # @param [Hash] params ({})
1739
+ def get_maintenance_window(params = {}, options = {})
1740
+ req = build_request(:get_maintenance_window, params)
1741
+ req.send_request(options)
1742
+ end
1743
+
1744
+ # Retrieves details about a specific task executed as part of a
1745
+ # Maintenance Window execution.
1746
+ # @option params [required, String] :window_execution_id
1747
+ # The ID of the Maintenance Window execution that includes the task.
1748
+ # @return [Types::GetMaintenanceWindowExecutionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1749
+ #
1750
+ # * {Types::GetMaintenanceWindowExecutionResult#window_execution_id #WindowExecutionId} => String
1751
+ # * {Types::GetMaintenanceWindowExecutionResult#task_ids #TaskIds} => Array&lt;String&gt;
1752
+ # * {Types::GetMaintenanceWindowExecutionResult#status #Status} => String
1753
+ # * {Types::GetMaintenanceWindowExecutionResult#status_details #StatusDetails} => String
1754
+ # * {Types::GetMaintenanceWindowExecutionResult#start_time #StartTime} => Time
1755
+ # * {Types::GetMaintenanceWindowExecutionResult#end_time #EndTime} => Time
1756
+ #
1757
+ # @example Request syntax with placeholder values
1758
+ # resp = client.get_maintenance_window_execution({
1759
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
1760
+ # })
1761
+ #
1762
+ # @example Response structure
1763
+ # resp.window_execution_id #=> String
1764
+ # resp.task_ids #=> Array
1765
+ # resp.task_ids[0] #=> String
1766
+ # resp.status #=> String, one of "PENDING", "IN_PROGRESS", "SUCCESS", "FAILED", "TIMED_OUT", "CANCELLING", "CANCELLED", "SKIPPED_OVERLAPPING"
1767
+ # resp.status_details #=> String
1768
+ # resp.start_time #=> Time
1769
+ # resp.end_time #=> Time
1770
+ # @overload get_maintenance_window_execution(params = {})
1771
+ # @param [Hash] params ({})
1772
+ def get_maintenance_window_execution(params = {}, options = {})
1773
+ req = build_request(:get_maintenance_window_execution, params)
1774
+ req.send_request(options)
1775
+ end
1776
+
1777
+ # Retrieves the details about a specific task executed as part of a
1778
+ # Maintenance Window execution.
1779
+ # @option params [required, String] :window_execution_id
1780
+ # The ID of the Maintenance Window execution that includes the task.
1781
+ # @option params [required, String] :task_id
1782
+ # The ID of the specific task execution in the Maintenance Window task
1783
+ # that should be retrieved.
1784
+ # @return [Types::GetMaintenanceWindowExecutionTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1785
+ #
1786
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#window_execution_id #WindowExecutionId} => String
1787
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#task_execution_id #TaskExecutionId} => String
1788
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#task_arn #TaskArn} => String
1789
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#service_role #ServiceRole} => String
1790
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#type #Type} => String
1791
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#task_parameters #TaskParameters} => Array&lt;Hash&lt;String,Types::MaintenanceWindowTaskParameterValueExpression&gt;&gt;
1792
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#priority #Priority} => Integer
1793
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#max_concurrency #MaxConcurrency} => String
1794
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#max_errors #MaxErrors} => String
1795
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#status #Status} => String
1796
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#status_details #StatusDetails} => String
1797
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#start_time #StartTime} => Time
1798
+ # * {Types::GetMaintenanceWindowExecutionTaskResult#end_time #EndTime} => Time
1799
+ #
1800
+ # @example Request syntax with placeholder values
1801
+ # resp = client.get_maintenance_window_execution_task({
1802
+ # window_execution_id: "MaintenanceWindowExecutionId", # required
1803
+ # task_id: "MaintenanceWindowExecutionTaskId", # required
1804
+ # })
1805
+ #
1806
+ # @example Response structure
1807
+ # resp.window_execution_id #=> String
1808
+ # resp.task_execution_id #=> String
1809
+ # resp.task_arn #=> String
1810
+ # resp.service_role #=> String
1811
+ # resp.type #=> String, one of "RUN_COMMAND"
1812
+ # resp.task_parameters #=> Array
1813
+ # resp.task_parameters[0] #=> Hash
1814
+ # resp.task_parameters[0]["MaintenanceWindowTaskParameterName"].values #=> Array
1815
+ # resp.task_parameters[0]["MaintenanceWindowTaskParameterName"].values[0] #=> String
1816
+ # resp.priority #=> Integer
1817
+ # resp.max_concurrency #=> String
1818
+ # resp.max_errors #=> String
1819
+ # resp.status #=> String, one of "PENDING", "IN_PROGRESS", "SUCCESS", "FAILED", "TIMED_OUT", "CANCELLING", "CANCELLED", "SKIPPED_OVERLAPPING"
1820
+ # resp.status_details #=> String
1821
+ # resp.start_time #=> Time
1822
+ # resp.end_time #=> Time
1823
+ # @overload get_maintenance_window_execution_task(params = {})
1824
+ # @param [Hash] params ({})
1825
+ def get_maintenance_window_execution_task(params = {}, options = {})
1826
+ req = build_request(:get_maintenance_window_execution_task, params)
1827
+ req.send_request(options)
1828
+ end
1829
+
1830
+ # Query a list of all parameters used by the AWS account.
1831
+ # @option params [required, String] :name
1832
+ # The name of a parameter you want to query.
1833
+ # @option params [Boolean] :with_decryption
1834
+ # Return decrypted values for secure string parameters. This flag is
1835
+ # ignored for String and StringList parameter types.
1836
+ # @option params [Integer] :max_results
1837
+ # The maximum number of items to return for this call. The call also
1838
+ # returns a token that you can specify in a subsequent call to get the
1839
+ # next set of results.
1840
+ # @option params [String] :next_token
1841
+ # The token for the next set of items to return. (You received this
1842
+ # token from a previous call.)
1843
+ # @return [Types::GetParameterHistoryResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1844
+ #
1845
+ # * {Types::GetParameterHistoryResult#parameters #Parameters} => Array&lt;Types::ParameterHistory&gt;
1846
+ # * {Types::GetParameterHistoryResult#next_token #NextToken} => String
1847
+ #
1848
+ # @example Request syntax with placeholder values
1849
+ # resp = client.get_parameter_history({
1850
+ # name: "PSParameterName", # required
1851
+ # with_decryption: false,
1852
+ # max_results: 1,
1853
+ # next_token: "NextToken",
1854
+ # })
1855
+ #
1856
+ # @example Response structure
1857
+ # resp.parameters #=> Array
1858
+ # resp.parameters[0].name #=> String
1859
+ # resp.parameters[0].type #=> String, one of "String", "StringList", "SecureString"
1860
+ # resp.parameters[0].key_id #=> String
1861
+ # resp.parameters[0].last_modified_date #=> Time
1862
+ # resp.parameters[0].last_modified_user #=> String
1863
+ # resp.parameters[0].description #=> String
1864
+ # resp.parameters[0].value #=> String
1865
+ # resp.next_token #=> String
1866
+ # @overload get_parameter_history(params = {})
1867
+ # @param [Hash] params ({})
1868
+ def get_parameter_history(params = {}, options = {})
1869
+ req = build_request(:get_parameter_history, params)
1870
+ req.send_request(options)
1871
+ end
1872
+
1873
+ # Get a list of parameters used by the AWS account.&gt;
1874
+ # @option params [required, Array<String>] :names
1875
+ # Names of the parameters for which you want to query information.
1876
+ # @option params [Boolean] :with_decryption
1877
+ # Return decrypted secure string value. Return decrypted values for
1878
+ # secure string parameters. This flag is ignored for String and
1879
+ # StringList parameter types.
1880
+ # @return [Types::GetParametersResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1881
+ #
1882
+ # * {Types::GetParametersResult#parameters #Parameters} => Array&lt;Types::Parameter&gt;
1883
+ # * {Types::GetParametersResult#invalid_parameters #InvalidParameters} => Array&lt;String&gt;
1884
+ #
1885
+ # @example Request syntax with placeholder values
1886
+ # resp = client.get_parameters({
1887
+ # names: ["PSParameterName"], # required
1888
+ # with_decryption: false,
1889
+ # })
1890
+ #
1891
+ # @example Response structure
1892
+ # resp.parameters #=> Array
1893
+ # resp.parameters[0].name #=> String
1894
+ # resp.parameters[0].type #=> String, one of "String", "StringList", "SecureString"
1895
+ # resp.parameters[0].value #=> String
1896
+ # resp.invalid_parameters #=> Array
1897
+ # resp.invalid_parameters[0] #=> String
1898
+ # @overload get_parameters(params = {})
1899
+ # @param [Hash] params ({})
1900
+ def get_parameters(params = {}, options = {})
1901
+ req = build_request(:get_parameters, params)
1902
+ req.send_request(options)
1903
+ end
1904
+
1905
+ # Lists the associations for the specified SSM document or instance.
1906
+ # @option params [Array<Types::AssociationFilter>] :association_filter_list
1907
+ # One or more filters. Use a filter to return a more specific list of
1908
+ # results.
1909
+ # @option params [Integer] :max_results
1910
+ # The maximum number of items to return for this call. The call also
1911
+ # returns a token that you can specify in a subsequent call to get the
1912
+ # next set of results.
1913
+ # @option params [String] :next_token
1914
+ # The token for the next set of items to return. (You received this
1915
+ # token from a previous call.)
1916
+ # @return [Types::ListAssociationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1917
+ #
1918
+ # * {Types::ListAssociationsResult#associations #Associations} => Array&lt;Types::Association&gt;
1919
+ # * {Types::ListAssociationsResult#next_token #NextToken} => String
1920
+ #
1921
+ # @example Request syntax with placeholder values
1922
+ # resp = client.list_associations({
1923
+ # association_filter_list: [
1924
+ # {
1925
+ # key: "InstanceId", # required, accepts InstanceId, Name, AssociationId, AssociationStatusName, LastExecutedBefore, LastExecutedAfter
1926
+ # value: "AssociationFilterValue", # required
1927
+ # },
1928
+ # ],
1929
+ # max_results: 1,
1930
+ # next_token: "NextToken",
1931
+ # })
1932
+ #
1933
+ # @example Response structure
1934
+ # resp.associations #=> Array
1935
+ # resp.associations[0].name #=> String
1936
+ # resp.associations[0].instance_id #=> String
1937
+ # resp.associations[0].association_id #=> String
1938
+ # resp.associations[0].document_version #=> String
1939
+ # resp.associations[0].targets #=> Array
1940
+ # resp.associations[0].targets[0].key #=> String
1941
+ # resp.associations[0].targets[0].values #=> Array
1942
+ # resp.associations[0].targets[0].values[0] #=> String
1943
+ # resp.associations[0].last_execution_date #=> Time
1944
+ # resp.associations[0].overview.status #=> String
1945
+ # resp.associations[0].overview.detailed_status #=> String
1946
+ # resp.associations[0].overview.association_status_aggregated_count #=> Hash
1947
+ # resp.associations[0].overview.association_status_aggregated_count["StatusName"] #=> Integer
1948
+ # resp.associations[0].schedule_expression #=> String
1949
+ # resp.next_token #=> String
1950
+ # @overload list_associations(params = {})
1951
+ # @param [Hash] params ({})
1952
+ def list_associations(params = {}, options = {})
1953
+ req = build_request(:list_associations, params)
1954
+ req.send_request(options)
1955
+ end
1956
+
1957
+ # An invocation is copy of a command sent to a specific instance. A
1958
+ # command can apply to one or more instances. A command invocation
1959
+ # applies to one instance. For example, if a user executes SendCommand
1960
+ # against three instances, then a command invocation is created for each
1961
+ # requested instance ID. ListCommandInvocations provide status about
1962
+ # command execution.
1963
+ # @option params [String] :command_id
1964
+ # (Optional) The invocations for a specific command ID.
1965
+ # @option params [String] :instance_id
1966
+ # (Optional) The command execution details for a specific instance ID.
1967
+ # @option params [Integer] :max_results
1968
+ # (Optional) The maximum number of items to return for this call. The
1969
+ # call also returns a token that you can specify in a subsequent call to
1970
+ # get the next set of results.
1971
+ # @option params [String] :next_token
1972
+ # (Optional) The token for the next set of items to return. (You
1973
+ # received this token from a previous call.)
1974
+ # @option params [Array<Types::CommandFilter>] :filters
1975
+ # (Optional) One or more filters. Use a filter to return a more specific
1976
+ # list of results.
1977
+ # @option params [Boolean] :details
1978
+ # (Optional) If set this returns the response of the command executions
1979
+ # and any command output. By default this is set to False.
1980
+ # @return [Types::ListCommandInvocationsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1981
+ #
1982
+ # * {Types::ListCommandInvocationsResult#command_invocations #CommandInvocations} => Array&lt;Types::CommandInvocation&gt;
1983
+ # * {Types::ListCommandInvocationsResult#next_token #NextToken} => String
1984
+ #
1985
+ # @example Request syntax with placeholder values
1986
+ # resp = client.list_command_invocations({
1987
+ # command_id: "CommandId",
1988
+ # instance_id: "InstanceId",
1989
+ # max_results: 1,
1990
+ # next_token: "NextToken",
1991
+ # filters: [
1992
+ # {
1993
+ # key: "InvokedAfter", # required, accepts InvokedAfter, InvokedBefore, Status
1994
+ # value: "CommandFilterValue", # required
1995
+ # },
1996
+ # ],
1997
+ # details: false,
1998
+ # })
1999
+ #
2000
+ # @example Response structure
2001
+ # resp.command_invocations #=> Array
2002
+ # resp.command_invocations[0].command_id #=> String
2003
+ # resp.command_invocations[0].instance_id #=> String
2004
+ # resp.command_invocations[0].instance_name #=> String
2005
+ # resp.command_invocations[0].comment #=> String
2006
+ # resp.command_invocations[0].document_name #=> String
2007
+ # resp.command_invocations[0].requested_date_time #=> Time
2008
+ # resp.command_invocations[0].status #=> String, one of "Pending", "InProgress", "Delayed", "Success", "Cancelled", "TimedOut", "Failed", "Cancelling"
2009
+ # resp.command_invocations[0].status_details #=> String
2010
+ # resp.command_invocations[0].trace_output #=> String
2011
+ # resp.command_invocations[0].standard_output_url #=> String
2012
+ # resp.command_invocations[0].standard_error_url #=> String
2013
+ # resp.command_invocations[0].command_plugins #=> Array
2014
+ # resp.command_invocations[0].command_plugins[0].name #=> String
2015
+ # resp.command_invocations[0].command_plugins[0].status #=> String, one of "Pending", "InProgress", "Success", "TimedOut", "Cancelled", "Failed"
2016
+ # resp.command_invocations[0].command_plugins[0].status_details #=> String
2017
+ # resp.command_invocations[0].command_plugins[0].response_code #=> Integer
2018
+ # resp.command_invocations[0].command_plugins[0].response_start_date_time #=> Time
2019
+ # resp.command_invocations[0].command_plugins[0].response_finish_date_time #=> Time
2020
+ # resp.command_invocations[0].command_plugins[0].output #=> String
2021
+ # resp.command_invocations[0].command_plugins[0].standard_output_url #=> String
2022
+ # resp.command_invocations[0].command_plugins[0].standard_error_url #=> String
2023
+ # resp.command_invocations[0].command_plugins[0].output_s3_region #=> String
2024
+ # resp.command_invocations[0].command_plugins[0].output_s3_bucket_name #=> String
2025
+ # resp.command_invocations[0].command_plugins[0].output_s3_key_prefix #=> String
2026
+ # resp.command_invocations[0].service_role #=> String
2027
+ # resp.command_invocations[0].notification_config.notification_arn #=> String
2028
+ # resp.command_invocations[0].notification_config.notification_events #=> Array
2029
+ # resp.command_invocations[0].notification_config.notification_events[0] #=> String, one of "All", "InProgress", "Success", "TimedOut", "Cancelled", "Failed"
2030
+ # resp.command_invocations[0].notification_config.notification_type #=> String, one of "Command", "Invocation"
2031
+ # resp.next_token #=> String
2032
+ # @overload list_command_invocations(params = {})
2033
+ # @param [Hash] params ({})
2034
+ def list_command_invocations(params = {}, options = {})
2035
+ req = build_request(:list_command_invocations, params)
2036
+ req.send_request(options)
2037
+ end
2038
+
2039
+ # Lists the commands requested by users of the AWS account.
842
2040
  # @option params [String] :command_id
843
2041
  # (Optional) If provided, lists only the specified command.
844
2042
  # @option params [String] :instance_id
@@ -883,10 +2081,21 @@ module Aws
883
2081
  # resp.commands[0].parameters["ParameterName"][0] #=> String
884
2082
  # resp.commands[0].instance_ids #=> Array
885
2083
  # resp.commands[0].instance_ids[0] #=> String
2084
+ # resp.commands[0].targets #=> Array
2085
+ # resp.commands[0].targets[0].key #=> String
2086
+ # resp.commands[0].targets[0].values #=> Array
2087
+ # resp.commands[0].targets[0].values[0] #=> String
886
2088
  # resp.commands[0].requested_date_time #=> Time
887
- # resp.commands[0].status #=> String, one of "Pending", "InProgress", "Cancelling", "Success", "TimedOut", "Cancelled", "Failed"
2089
+ # resp.commands[0].status #=> String, one of "Pending", "InProgress", "Success", "Cancelled", "Failed", "TimedOut", "Cancelling"
2090
+ # resp.commands[0].status_details #=> String
2091
+ # resp.commands[0].output_s3_region #=> String
888
2092
  # resp.commands[0].output_s3_bucket_name #=> String
889
2093
  # resp.commands[0].output_s3_key_prefix #=> String
2094
+ # resp.commands[0].max_concurrency #=> String
2095
+ # resp.commands[0].max_errors #=> String
2096
+ # resp.commands[0].target_count #=> Integer
2097
+ # resp.commands[0].completed_count #=> Integer
2098
+ # resp.commands[0].error_count #=> Integer
890
2099
  # resp.commands[0].service_role #=> String
891
2100
  # resp.commands[0].notification_config.notification_arn #=> String
892
2101
  # resp.commands[0].notification_config.notification_events #=> Array
@@ -900,6 +2109,42 @@ module Aws
900
2109
  req.send_request(options)
901
2110
  end
902
2111
 
2112
+ # List all versions for a document.
2113
+ # @option params [required, String] :name
2114
+ # The name of the document about which you want version information.
2115
+ # @option params [Integer] :max_results
2116
+ # The maximum number of items to return for this call. The call also
2117
+ # returns a token that you can specify in a subsequent call to get the
2118
+ # next set of results.
2119
+ # @option params [String] :next_token
2120
+ # The token for the next set of items to return. (You received this
2121
+ # token from a previous call.)
2122
+ # @return [Types::ListDocumentVersionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2123
+ #
2124
+ # * {Types::ListDocumentVersionsResult#document_versions #DocumentVersions} => Array&lt;Types::DocumentVersionInfo&gt;
2125
+ # * {Types::ListDocumentVersionsResult#next_token #NextToken} => String
2126
+ #
2127
+ # @example Request syntax with placeholder values
2128
+ # resp = client.list_document_versions({
2129
+ # name: "DocumentName", # required
2130
+ # max_results: 1,
2131
+ # next_token: "NextToken",
2132
+ # })
2133
+ #
2134
+ # @example Response structure
2135
+ # resp.document_versions #=> Array
2136
+ # resp.document_versions[0].name #=> String
2137
+ # resp.document_versions[0].document_version #=> String
2138
+ # resp.document_versions[0].created_date #=> Time
2139
+ # resp.document_versions[0].is_default_version #=> Boolean
2140
+ # resp.next_token #=> String
2141
+ # @overload list_document_versions(params = {})
2142
+ # @param [Hash] params ({})
2143
+ def list_document_versions(params = {}, options = {})
2144
+ req = build_request(:list_document_versions, params)
2145
+ req.send_request(options)
2146
+ end
2147
+
903
2148
  # Describes one or more of your SSM documents.
904
2149
  # @option params [Array<Types::DocumentFilter>] :document_filter_list
905
2150
  # One or more filters. Use a filter to return a more specific list of
@@ -920,7 +2165,7 @@ module Aws
920
2165
  # resp = client.list_documents({
921
2166
  # document_filter_list: [
922
2167
  # {
923
- # key: "Name", # required, accepts Name, Owner, PlatformTypes
2168
+ # key: "Name", # required, accepts Name, Owner, PlatformTypes, DocumentType
924
2169
  # value: "DocumentFilterValue", # required
925
2170
  # },
926
2171
  # ],
@@ -934,6 +2179,9 @@ module Aws
934
2179
  # resp.document_identifiers[0].owner #=> String
935
2180
  # resp.document_identifiers[0].platform_types #=> Array
936
2181
  # resp.document_identifiers[0].platform_types[0] #=> String, one of "Windows", "Linux"
2182
+ # resp.document_identifiers[0].document_version #=> String
2183
+ # resp.document_identifiers[0].document_type #=> String, one of "Command", "Policy", "Automation"
2184
+ # resp.document_identifiers[0].schema_version #=> String
937
2185
  # resp.next_token #=> String
938
2186
  # @overload list_documents(params = {})
939
2187
  # @param [Hash] params ({})
@@ -942,6 +2190,61 @@ module Aws
942
2190
  req.send_request(options)
943
2191
  end
944
2192
 
2193
+ # A list of inventory items returned by the request.
2194
+ # @option params [required, String] :instance_id
2195
+ # The instance ID for which you want inventory information.
2196
+ # @option params [required, String] :type_name
2197
+ # The type of inventory item for which you want information.
2198
+ # @option params [Array<Types::InventoryFilter>] :filters
2199
+ # One or more filters. Use a filter to return a more specific list of
2200
+ # results.
2201
+ # @option params [String] :next_token
2202
+ # The token for the next set of items to return. (You received this
2203
+ # token from a previous call.)
2204
+ # @option params [Integer] :max_results
2205
+ # The maximum number of items to return for this call. The call also
2206
+ # returns a token that you can specify in a subsequent call to get the
2207
+ # next set of results.
2208
+ # @return [Types::ListInventoryEntriesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2209
+ #
2210
+ # * {Types::ListInventoryEntriesResult#type_name #TypeName} => String
2211
+ # * {Types::ListInventoryEntriesResult#instance_id #InstanceId} => String
2212
+ # * {Types::ListInventoryEntriesResult#schema_version #SchemaVersion} => String
2213
+ # * {Types::ListInventoryEntriesResult#capture_time #CaptureTime} => String
2214
+ # * {Types::ListInventoryEntriesResult#entries #Entries} => Array&lt;Hash&lt;String,String&gt;&gt;
2215
+ # * {Types::ListInventoryEntriesResult#next_token #NextToken} => String
2216
+ #
2217
+ # @example Request syntax with placeholder values
2218
+ # resp = client.list_inventory_entries({
2219
+ # instance_id: "InstanceId", # required
2220
+ # type_name: "InventoryItemTypeName", # required
2221
+ # filters: [
2222
+ # {
2223
+ # key: "InventoryFilterKey", # required
2224
+ # values: ["InventoryFilterValue"], # required
2225
+ # type: "Equal", # accepts Equal, NotEqual, BeginWith, LessThan, GreaterThan
2226
+ # },
2227
+ # ],
2228
+ # next_token: "NextToken",
2229
+ # max_results: 1,
2230
+ # })
2231
+ #
2232
+ # @example Response structure
2233
+ # resp.type_name #=> String
2234
+ # resp.instance_id #=> String
2235
+ # resp.schema_version #=> String
2236
+ # resp.capture_time #=> String
2237
+ # resp.entries #=> Array
2238
+ # resp.entries[0] #=> Hash
2239
+ # resp.entries[0]["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
2240
+ # resp.next_token #=> String
2241
+ # @overload list_inventory_entries(params = {})
2242
+ # @param [Hash] params ({})
2243
+ def list_inventory_entries(params = {}, options = {})
2244
+ req = build_request(:list_inventory_entries, params)
2245
+ req.send_request(options)
2246
+ end
2247
+
945
2248
  # Returns a list of the tags assigned to the specified resource.
946
2249
  # @option params [required, String] :resource_type
947
2250
  # Returns a list of tags for a specific resource type.
@@ -953,7 +2256,7 @@ module Aws
953
2256
  #
954
2257
  # @example Request syntax with placeholder values
955
2258
  # resp = client.list_tags_for_resource({
956
- # resource_type: "ManagedInstance", # required, accepts ManagedInstance
2259
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance, MaintenanceWindow, Parameter
957
2260
  # resource_id: "ResourceId", # required
958
2261
  # })
959
2262
  #
@@ -1002,6 +2305,190 @@ module Aws
1002
2305
  req.send_request(options)
1003
2306
  end
1004
2307
 
2308
+ # Bulk update custom inventory items on one more instance. The request
2309
+ # adds an inventory item, if it doesn't already exist, or updates an
2310
+ # inventory item, if it does exist.
2311
+ # @option params [required, String] :instance_id
2312
+ # One or more instance IDs where you want to add or update inventory
2313
+ # items.
2314
+ # @option params [required, Array<Types::InventoryItem>] :items
2315
+ # The inventory items that you want to add or update on instances.
2316
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2317
+ #
2318
+ # @example Request syntax with placeholder values
2319
+ # resp = client.put_inventory({
2320
+ # instance_id: "InstanceId", # required
2321
+ # items: [ # required
2322
+ # {
2323
+ # type_name: "InventoryItemTypeName", # required
2324
+ # schema_version: "InventoryItemSchemaVersion", # required
2325
+ # capture_time: "InventoryItemCaptureTime", # required
2326
+ # content_hash: "InventoryItemContentHash",
2327
+ # content: [
2328
+ # {
2329
+ # "AttributeName" => "AttributeValue",
2330
+ # },
2331
+ # ],
2332
+ # },
2333
+ # ],
2334
+ # })
2335
+ # @overload put_inventory(params = {})
2336
+ # @param [Hash] params ({})
2337
+ def put_inventory(params = {}, options = {})
2338
+ req = build_request(:put_inventory, params)
2339
+ req.send_request(options)
2340
+ end
2341
+
2342
+ # Add one or more paramaters to the system.
2343
+ # @option params [required, String] :name
2344
+ # The name of the parameter that you want to add to the system.
2345
+ # @option params [String] :description
2346
+ # Information about the parameter that you want to add to the system
2347
+ # @option params [required, String] :value
2348
+ # The parameter value that you want to add to the system.
2349
+ # @option params [required, String] :type
2350
+ # The type of parameter that you want to add to the system.
2351
+ # @option params [String] :key_id
2352
+ # The parameter key ID that you want to add to the system.
2353
+ # @option params [Boolean] :overwrite
2354
+ # Overwrite an existing parameter.
2355
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2356
+ #
2357
+ # @example Request syntax with placeholder values
2358
+ # resp = client.put_parameter({
2359
+ # name: "PSParameterName", # required
2360
+ # description: "ParameterDescription",
2361
+ # value: "PSParameterValue", # required
2362
+ # type: "String", # required, accepts String, StringList, SecureString
2363
+ # key_id: "ParameterKeyId",
2364
+ # overwrite: false,
2365
+ # })
2366
+ # @overload put_parameter(params = {})
2367
+ # @param [Hash] params ({})
2368
+ def put_parameter(params = {}, options = {})
2369
+ req = build_request(:put_parameter, params)
2370
+ req.send_request(options)
2371
+ end
2372
+
2373
+ # Registers a target with a Maintenance Window.
2374
+ # @option params [required, String] :window_id
2375
+ # The ID of the Maintenance Window the target should be registered with.
2376
+ # @option params [required, String] :resource_type
2377
+ # The type of target being registered with the Maintenance Window.
2378
+ # @option params [required, Array<Types::Target>] :targets
2379
+ # The targets (either instances or tags). Instances are specified using
2380
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
2381
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
2382
+ # @option params [String] :owner_information
2383
+ # User-provided value that will be included in any CloudWatch events
2384
+ # raised while running tasks for these targets in this Maintenance
2385
+ # Window.
2386
+ # @option params [String] :client_token
2387
+ # User-provided idempotency token.
2388
+ #
2389
+ # **A suitable default value is auto-generated.** You should
2390
+ # normally not need to pass this option.
2391
+ # @return [Types::RegisterTargetWithMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2392
+ #
2393
+ # * {Types::RegisterTargetWithMaintenanceWindowResult#window_target_id #WindowTargetId} => String
2394
+ #
2395
+ # @example Request syntax with placeholder values
2396
+ # resp = client.register_target_with_maintenance_window({
2397
+ # window_id: "MaintenanceWindowId", # required
2398
+ # resource_type: "INSTANCE", # required, accepts INSTANCE
2399
+ # targets: [ # required
2400
+ # {
2401
+ # key: "TargetKey",
2402
+ # values: ["TargetValue"],
2403
+ # },
2404
+ # ],
2405
+ # owner_information: "OwnerInformation",
2406
+ # client_token: "ClientToken",
2407
+ # })
2408
+ #
2409
+ # @example Response structure
2410
+ # resp.window_target_id #=> String
2411
+ # @overload register_target_with_maintenance_window(params = {})
2412
+ # @param [Hash] params ({})
2413
+ def register_target_with_maintenance_window(params = {}, options = {})
2414
+ req = build_request(:register_target_with_maintenance_window, params)
2415
+ req.send_request(options)
2416
+ end
2417
+
2418
+ # Adds a new task to a Maintenance Window.
2419
+ # @option params [required, String] :window_id
2420
+ # The id of the Maintenance Window the task should be added to.
2421
+ # @option params [required, Array<Types::Target>] :targets
2422
+ # The targets (either instances or tags). Instances are specified using
2423
+ # Key=instanceids,Values=&lt;instanceid1&gt;,&lt;instanceid2&gt;. Tags
2424
+ # are specified using Key=&lt;tag name&gt;,Values=&lt;tag value&gt;.
2425
+ # @option params [required, String] :task_arn
2426
+ # The ARN of the task to execute
2427
+ # @option params [required, String] :service_role_arn
2428
+ # The role that should be assumed when executing the task.
2429
+ # @option params [required, String] :task_type
2430
+ # The type of task being registered.
2431
+ # @option params [Hash<String,Types::MaintenanceWindowTaskParameterValueExpression>] :task_parameters
2432
+ # The parameters that should be passed to the task when it is executed.
2433
+ # @option params [Integer] :priority
2434
+ # The priority of the task in the Maintenance Window, the lower the
2435
+ # number the higher the priority. Tasks in a Maintenance Window are
2436
+ # scheduled in priority order with tasks that have the same priority
2437
+ # scheduled in parallel.
2438
+ # @option params [required, String] :max_concurrency
2439
+ # The maximum number of targets this task can be run for in parallel.
2440
+ # @option params [required, String] :max_errors
2441
+ # The maximum number of errors allowed before this task stops being
2442
+ # scheduled.
2443
+ # @option params [Types::LoggingInfo] :logging_info
2444
+ # A structure containing information about an Amazon S3 bucket to write
2445
+ # instance-level logs to.
2446
+ # @option params [String] :client_token
2447
+ # User-provided idempotency token.
2448
+ #
2449
+ # **A suitable default value is auto-generated.** You should
2450
+ # normally not need to pass this option.
2451
+ # @return [Types::RegisterTaskWithMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2452
+ #
2453
+ # * {Types::RegisterTaskWithMaintenanceWindowResult#window_task_id #WindowTaskId} => String
2454
+ #
2455
+ # @example Request syntax with placeholder values
2456
+ # resp = client.register_task_with_maintenance_window({
2457
+ # window_id: "MaintenanceWindowId", # required
2458
+ # targets: [ # required
2459
+ # {
2460
+ # key: "TargetKey",
2461
+ # values: ["TargetValue"],
2462
+ # },
2463
+ # ],
2464
+ # task_arn: "MaintenanceWindowTaskArn", # required
2465
+ # service_role_arn: "ServiceRole", # required
2466
+ # task_type: "RUN_COMMAND", # required, accepts RUN_COMMAND
2467
+ # task_parameters: {
2468
+ # "MaintenanceWindowTaskParameterName" => {
2469
+ # values: ["MaintenanceWindowTaskParameterValue"],
2470
+ # },
2471
+ # },
2472
+ # priority: 1,
2473
+ # max_concurrency: "VelocityConstraint", # required
2474
+ # max_errors: "VelocityConstraint", # required
2475
+ # logging_info: {
2476
+ # s3_bucket_name: "S3BucketName", # required
2477
+ # s3_key_prefix: "S3KeyPrefix",
2478
+ # s3_region: "S3Region", # required
2479
+ # },
2480
+ # client_token: "ClientToken",
2481
+ # })
2482
+ #
2483
+ # @example Response structure
2484
+ # resp.window_task_id #=> String
2485
+ # @overload register_task_with_maintenance_window(params = {})
2486
+ # @param [Hash] params ({})
2487
+ def register_task_with_maintenance_window(params = {}, options = {})
2488
+ req = build_request(:register_task_with_maintenance_window, params)
2489
+ req.send_request(options)
2490
+ end
2491
+
1005
2492
  # Removes all tags from the specified resource.
1006
2493
  # @option params [required, String] :resource_type
1007
2494
  # The type of resource of which you want to remove a tag.
@@ -1013,7 +2500,7 @@ module Aws
1013
2500
  #
1014
2501
  # @example Request syntax with placeholder values
1015
2502
  # resp = client.remove_tags_from_resource({
1016
- # resource_type: "ManagedInstance", # required, accepts ManagedInstance
2503
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance, MaintenanceWindow, Parameter
1017
2504
  # resource_id: "ResourceId", # required
1018
2505
  # tag_keys: ["TagKey"], # required
1019
2506
  # })
@@ -1025,9 +2512,21 @@ module Aws
1025
2512
  end
1026
2513
 
1027
2514
  # Executes commands on one or more remote instances.
1028
- # @option params [required, Array<String>] :instance_ids
2515
+ # @option params [Array<String>] :instance_ids
1029
2516
  # Required. The instance IDs where the command should execute. You can
1030
2517
  # specify a maximum of 50 IDs.
2518
+ # @option params [Array<Types::Target>] :targets
2519
+ # (Optional) An array of search criteria that targets instances using a
2520
+ # `Key`;`Value` combination that you specify. `Targets` is required if
2521
+ # you don't provide one or more instance IDs in the call. For more
2522
+ # information about how to use `Targets`, see [Executing a Command Using
2523
+ # Amazon EC2 Run Command][1] (Linux) or [Executing a Command Using
2524
+ # Amazon EC2 Run Command][2] (Windows).
2525
+ #
2526
+ #
2527
+ #
2528
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
2529
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
1031
2530
  # @option params [required, String] :document_name
1032
2531
  # Required. The name of the SSM document to execute. This can be an SSM
1033
2532
  # public document or a custom document.
@@ -1053,14 +2552,43 @@ module Aws
1053
2552
  # @option params [Hash<String,Array>] :parameters
1054
2553
  # The required and optional parameters specified in the SSM document
1055
2554
  # being executed.
2555
+ # @option params [String] :output_s3_region
2556
+ # (Optional) The region where the Amazon Simple Storage Service (Amazon
2557
+ # S3) output bucket is located. The default value is the region where
2558
+ # Run Command is being called.
1056
2559
  # @option params [String] :output_s3_bucket_name
1057
2560
  # The name of the S3 bucket where command execution responses should be
1058
2561
  # stored.
1059
2562
  # @option params [String] :output_s3_key_prefix
1060
2563
  # The directory structure within the S3 bucket where the responses
1061
2564
  # should be stored.
2565
+ # @option params [String] :max_concurrency
2566
+ # (Optional) The maximum number of instances that are allowed to execute
2567
+ # the command at the same time. You can specify a number such as “10” or
2568
+ # a percentage such as “10%”. The default value is 50. For more
2569
+ # information about how to use `MaxConcurrency`, see [Executing a
2570
+ # Command Using Amazon EC2 Run Command][1] (Linux) or [Executing a
2571
+ # Command Using Amazon EC2 Run Command][2] (Windows).
2572
+ #
2573
+ #
2574
+ #
2575
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
2576
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
2577
+ # @option params [String] :max_errors
2578
+ # The maximum number of errors allowed without the command failing. When
2579
+ # the command fails one more time beyond the value of `MaxErrors`, the
2580
+ # systems stops sending the command to additional targets. You can
2581
+ # specify a number like “10” or a percentage like “10%”. The default
2582
+ # value is 50. For more information about how to use `MaxErrors`, see
2583
+ # [Executing a Command Using Amazon EC2 Run Command][1] (Linux) or
2584
+ # [Executing a Command Using Amazon EC2 Run Command][2] (Windows).
2585
+ #
2586
+ #
2587
+ #
2588
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/run-command.html
2589
+ # [2]: http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/run-command.html
1062
2590
  # @option params [String] :service_role_arn
1063
- # The IAM role that SSM uses to send notifications.
2591
+ # The IAM role that Systems Manager uses to send notifications.
1064
2592
  # @option params [Types::NotificationConfig] :notification_config
1065
2593
  # Configurations for sending notifications.
1066
2594
  # @return [Types::SendCommandResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -1069,7 +2597,13 @@ module Aws
1069
2597
  #
1070
2598
  # @example Request syntax with placeholder values
1071
2599
  # resp = client.send_command({
1072
- # instance_ids: ["InstanceId"], # required
2600
+ # instance_ids: ["InstanceId"],
2601
+ # targets: [
2602
+ # {
2603
+ # key: "TargetKey",
2604
+ # values: ["TargetValue"],
2605
+ # },
2606
+ # ],
1073
2607
  # document_name: "DocumentARN", # required
1074
2608
  # document_hash: "DocumentHash",
1075
2609
  # document_hash_type: "Sha256", # accepts Sha256, Sha1
@@ -1078,8 +2612,11 @@ module Aws
1078
2612
  # parameters: {
1079
2613
  # "ParameterName" => ["ParameterValue"],
1080
2614
  # },
2615
+ # output_s3_region: "S3Region",
1081
2616
  # output_s3_bucket_name: "S3BucketName",
1082
2617
  # output_s3_key_prefix: "S3KeyPrefix",
2618
+ # max_concurrency: "VelocityConstraint",
2619
+ # max_errors: "VelocityConstraint",
1083
2620
  # service_role_arn: "ServiceRole",
1084
2621
  # notification_config: {
1085
2622
  # notification_arn: "NotificationArn",
@@ -1098,10 +2635,21 @@ module Aws
1098
2635
  # resp.command.parameters["ParameterName"][0] #=> String
1099
2636
  # resp.command.instance_ids #=> Array
1100
2637
  # resp.command.instance_ids[0] #=> String
2638
+ # resp.command.targets #=> Array
2639
+ # resp.command.targets[0].key #=> String
2640
+ # resp.command.targets[0].values #=> Array
2641
+ # resp.command.targets[0].values[0] #=> String
1101
2642
  # resp.command.requested_date_time #=> Time
1102
- # resp.command.status #=> String, one of "Pending", "InProgress", "Cancelling", "Success", "TimedOut", "Cancelled", "Failed"
2643
+ # resp.command.status #=> String, one of "Pending", "InProgress", "Success", "Cancelled", "Failed", "TimedOut", "Cancelling"
2644
+ # resp.command.status_details #=> String
2645
+ # resp.command.output_s3_region #=> String
1103
2646
  # resp.command.output_s3_bucket_name #=> String
1104
2647
  # resp.command.output_s3_key_prefix #=> String
2648
+ # resp.command.max_concurrency #=> String
2649
+ # resp.command.max_errors #=> String
2650
+ # resp.command.target_count #=> Integer
2651
+ # resp.command.completed_count #=> Integer
2652
+ # resp.command.error_count #=> Integer
1105
2653
  # resp.command.service_role #=> String
1106
2654
  # resp.command.notification_config.notification_arn #=> String
1107
2655
  # resp.command.notification_config.notification_events #=> Array
@@ -1114,6 +2662,132 @@ module Aws
1114
2662
  req.send_request(options)
1115
2663
  end
1116
2664
 
2665
+ # Initiates execution of an Automation document.
2666
+ # @option params [required, String] :document_name
2667
+ # The name of the Automation document to use for this execution.
2668
+ # @option params [String] :document_version
2669
+ # The version of the Automation document to use for this execution.
2670
+ # @option params [Hash<String,Array>] :parameters
2671
+ # A key-value map of execution parameters, which match the declared
2672
+ # parameters in the Automation document.
2673
+ # @return [Types::StartAutomationExecutionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2674
+ #
2675
+ # * {Types::StartAutomationExecutionResult#automation_execution_id #AutomationExecutionId} => String
2676
+ #
2677
+ # @example Request syntax with placeholder values
2678
+ # resp = client.start_automation_execution({
2679
+ # document_name: "DocumentName", # required
2680
+ # document_version: "DocumentVersion",
2681
+ # parameters: {
2682
+ # "AutomationParameterKey" => ["AutomationParameterValue"],
2683
+ # },
2684
+ # })
2685
+ #
2686
+ # @example Response structure
2687
+ # resp.automation_execution_id #=> String
2688
+ # @overload start_automation_execution(params = {})
2689
+ # @param [Hash] params ({})
2690
+ def start_automation_execution(params = {}, options = {})
2691
+ req = build_request(:start_automation_execution, params)
2692
+ req.send_request(options)
2693
+ end
2694
+
2695
+ # Stop an Automation that is currently executing.
2696
+ # @option params [required, String] :automation_execution_id
2697
+ # The execution ID of the Automation to stop.
2698
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2699
+ #
2700
+ # @example Request syntax with placeholder values
2701
+ # resp = client.stop_automation_execution({
2702
+ # automation_execution_id: "AutomationExecutionId", # required
2703
+ # })
2704
+ # @overload stop_automation_execution(params = {})
2705
+ # @param [Hash] params ({})
2706
+ def stop_automation_execution(params = {}, options = {})
2707
+ req = build_request(:stop_automation_execution, params)
2708
+ req.send_request(options)
2709
+ end
2710
+
2711
+ # Updates an association. You can only update the document version,
2712
+ # schedule, parameters, and Amazon S3 output of an association.
2713
+ # @option params [required, String] :association_id
2714
+ # The ID of the association you want to update.
2715
+ # @option params [Hash<String,Array>] :parameters
2716
+ # The parameters you want to update for the association. If you create a
2717
+ # parameter using Parameter Store, you can reference the parameter using
2718
+ # \\\{\\\{ssm:parameter-name\\}\\}
2719
+ # @option params [String] :document_version
2720
+ # The document version you want update for the association.
2721
+ # @option params [String] :schedule_expression
2722
+ # The cron expression used to schedule the association that you want to
2723
+ # update. Supported expressions are every half, 1, 2, 4, 8 or 12
2724
+ # hour(s); every specified day and time of the week. For example: cron(0
2725
+ # 0/30 * 1/1 * ? *) to run every thirty minutes; cron(0 0 0/4 1/1 *
2726
+ # ? *) to run every four hours; and cron(0 0 10 ? * SUN *) to run
2727
+ # every Sunday at 10 a.m.
2728
+ # @option params [Types::InstanceAssociationOutputLocation] :output_location
2729
+ # An Amazon S3 bucket where you want to store the results of this
2730
+ # request.
2731
+ #
2732
+ # `"\{ "S3Location": \{ "OutputS3Region": "<region>",
2733
+ # "OutputS3BucketName": "bucket name", "OutputS3KeyPrefix":
2734
+ # "folder name" \} \}"`
2735
+ # @return [Types::UpdateAssociationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2736
+ #
2737
+ # * {Types::UpdateAssociationResult#association_description #AssociationDescription} => Types::AssociationDescription
2738
+ #
2739
+ # @example Request syntax with placeholder values
2740
+ # resp = client.update_association({
2741
+ # association_id: "AssociationId", # required
2742
+ # parameters: {
2743
+ # "ParameterName" => ["ParameterValue"],
2744
+ # },
2745
+ # document_version: "DocumentVersion",
2746
+ # schedule_expression: "ScheduleExpression",
2747
+ # output_location: {
2748
+ # s3_location: {
2749
+ # output_s3_region: "S3Region",
2750
+ # output_s3_bucket_name: "S3BucketName",
2751
+ # output_s3_key_prefix: "S3KeyPrefix",
2752
+ # },
2753
+ # },
2754
+ # })
2755
+ #
2756
+ # @example Response structure
2757
+ # resp.association_description.name #=> String
2758
+ # resp.association_description.instance_id #=> String
2759
+ # resp.association_description.date #=> Time
2760
+ # resp.association_description.last_update_association_date #=> Time
2761
+ # resp.association_description.status.date #=> Time
2762
+ # resp.association_description.status.name #=> String, one of "Pending", "Success", "Failed"
2763
+ # resp.association_description.status.message #=> String
2764
+ # resp.association_description.status.additional_info #=> String
2765
+ # resp.association_description.overview.status #=> String
2766
+ # resp.association_description.overview.detailed_status #=> String
2767
+ # resp.association_description.overview.association_status_aggregated_count #=> Hash
2768
+ # resp.association_description.overview.association_status_aggregated_count["StatusName"] #=> Integer
2769
+ # resp.association_description.document_version #=> String
2770
+ # resp.association_description.parameters #=> Hash
2771
+ # resp.association_description.parameters["ParameterName"] #=> Array
2772
+ # resp.association_description.parameters["ParameterName"][0] #=> String
2773
+ # resp.association_description.association_id #=> String
2774
+ # resp.association_description.targets #=> Array
2775
+ # resp.association_description.targets[0].key #=> String
2776
+ # resp.association_description.targets[0].values #=> Array
2777
+ # resp.association_description.targets[0].values[0] #=> String
2778
+ # resp.association_description.schedule_expression #=> String
2779
+ # resp.association_description.output_location.s3_location.output_s3_region #=> String
2780
+ # resp.association_description.output_location.s3_location.output_s3_bucket_name #=> String
2781
+ # resp.association_description.output_location.s3_location.output_s3_key_prefix #=> String
2782
+ # resp.association_description.last_execution_date #=> Time
2783
+ # resp.association_description.last_successful_execution_date #=> Time
2784
+ # @overload update_association(params = {})
2785
+ # @param [Hash] params ({})
2786
+ def update_association(params = {}, options = {})
2787
+ req = build_request(:update_association, params)
2788
+ req.send_request(options)
2789
+ end
2790
+
1117
2791
  # Updates the status of the SSM document associated with the specified
1118
2792
  # instance.
1119
2793
  # @option params [required, String] :name
@@ -1142,13 +2816,30 @@ module Aws
1142
2816
  # resp.association_description.name #=> String
1143
2817
  # resp.association_description.instance_id #=> String
1144
2818
  # resp.association_description.date #=> Time
2819
+ # resp.association_description.last_update_association_date #=> Time
1145
2820
  # resp.association_description.status.date #=> Time
1146
2821
  # resp.association_description.status.name #=> String, one of "Pending", "Success", "Failed"
1147
2822
  # resp.association_description.status.message #=> String
1148
2823
  # resp.association_description.status.additional_info #=> String
2824
+ # resp.association_description.overview.status #=> String
2825
+ # resp.association_description.overview.detailed_status #=> String
2826
+ # resp.association_description.overview.association_status_aggregated_count #=> Hash
2827
+ # resp.association_description.overview.association_status_aggregated_count["StatusName"] #=> Integer
2828
+ # resp.association_description.document_version #=> String
1149
2829
  # resp.association_description.parameters #=> Hash
1150
2830
  # resp.association_description.parameters["ParameterName"] #=> Array
1151
2831
  # resp.association_description.parameters["ParameterName"][0] #=> String
2832
+ # resp.association_description.association_id #=> String
2833
+ # resp.association_description.targets #=> Array
2834
+ # resp.association_description.targets[0].key #=> String
2835
+ # resp.association_description.targets[0].values #=> Array
2836
+ # resp.association_description.targets[0].values[0] #=> String
2837
+ # resp.association_description.schedule_expression #=> String
2838
+ # resp.association_description.output_location.s3_location.output_s3_region #=> String
2839
+ # resp.association_description.output_location.s3_location.output_s3_bucket_name #=> String
2840
+ # resp.association_description.output_location.s3_location.output_s3_key_prefix #=> String
2841
+ # resp.association_description.last_execution_date #=> Time
2842
+ # resp.association_description.last_successful_execution_date #=> Time
1152
2843
  # @overload update_association_status(params = {})
1153
2844
  # @param [Hash] params ({})
1154
2845
  def update_association_status(params = {}, options = {})
@@ -1156,6 +2847,134 @@ module Aws
1156
2847
  req.send_request(options)
1157
2848
  end
1158
2849
 
2850
+ # The document you want to update.
2851
+ # @option params [required, String] :content
2852
+ # The content in a document that you want to update.
2853
+ # @option params [required, String] :name
2854
+ # The name of the document that you want to update.
2855
+ # @option params [String] :document_version
2856
+ # The version of the document that you want to update.
2857
+ # @return [Types::UpdateDocumentResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2858
+ #
2859
+ # * {Types::UpdateDocumentResult#document_description #DocumentDescription} => Types::DocumentDescription
2860
+ #
2861
+ # @example Request syntax with placeholder values
2862
+ # resp = client.update_document({
2863
+ # content: "DocumentContent", # required
2864
+ # name: "DocumentName", # required
2865
+ # document_version: "DocumentVersion",
2866
+ # })
2867
+ #
2868
+ # @example Response structure
2869
+ # resp.document_description.sha_1 #=> String
2870
+ # resp.document_description.hash #=> String
2871
+ # resp.document_description.hash_type #=> String, one of "Sha256", "Sha1"
2872
+ # resp.document_description.name #=> String
2873
+ # resp.document_description.owner #=> String
2874
+ # resp.document_description.created_date #=> Time
2875
+ # resp.document_description.status #=> String, one of "Creating", "Active", "Updating", "Deleting"
2876
+ # resp.document_description.document_version #=> String
2877
+ # resp.document_description.description #=> String
2878
+ # resp.document_description.parameters #=> Array
2879
+ # resp.document_description.parameters[0].name #=> String
2880
+ # resp.document_description.parameters[0].type #=> String, one of "String", "StringList"
2881
+ # resp.document_description.parameters[0].description #=> String
2882
+ # resp.document_description.parameters[0].default_value #=> String
2883
+ # resp.document_description.platform_types #=> Array
2884
+ # resp.document_description.platform_types[0] #=> String, one of "Windows", "Linux"
2885
+ # resp.document_description.document_type #=> String, one of "Command", "Policy", "Automation"
2886
+ # resp.document_description.schema_version #=> String
2887
+ # resp.document_description.latest_version #=> String
2888
+ # resp.document_description.default_version #=> String
2889
+ # @overload update_document(params = {})
2890
+ # @param [Hash] params ({})
2891
+ def update_document(params = {}, options = {})
2892
+ req = build_request(:update_document, params)
2893
+ req.send_request(options)
2894
+ end
2895
+
2896
+ # Set the default version of a document.
2897
+ # @option params [required, String] :name
2898
+ # The name of a custom document that you want to set as the default
2899
+ # version.
2900
+ # @option params [required, String] :document_version
2901
+ # The version of a custom document that you want to set as the default
2902
+ # version.
2903
+ # @return [Types::UpdateDocumentDefaultVersionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2904
+ #
2905
+ # * {Types::UpdateDocumentDefaultVersionResult#description #Description} => Types::DocumentDefaultVersionDescription
2906
+ #
2907
+ # @example Request syntax with placeholder values
2908
+ # resp = client.update_document_default_version({
2909
+ # name: "DocumentName", # required
2910
+ # document_version: "DocumentVersionNumber", # required
2911
+ # })
2912
+ #
2913
+ # @example Response structure
2914
+ # resp.description.name #=> String
2915
+ # resp.description.default_version #=> String
2916
+ # @overload update_document_default_version(params = {})
2917
+ # @param [Hash] params ({})
2918
+ def update_document_default_version(params = {}, options = {})
2919
+ req = build_request(:update_document_default_version, params)
2920
+ req.send_request(options)
2921
+ end
2922
+
2923
+ # Updates an existing Maintenance Window. Only specified parameters are
2924
+ # modified.
2925
+ # @option params [required, String] :window_id
2926
+ # The ID of the Maintenance Window to update.
2927
+ # @option params [String] :name
2928
+ # The name of the Maintenance Window.
2929
+ # @option params [String] :schedule
2930
+ # The schedule of the Maintenance Window in the form of a cron or rate
2931
+ # expression.
2932
+ # @option params [Integer] :duration
2933
+ # The duration of the Maintenance Window in hours.
2934
+ # @option params [Integer] :cutoff
2935
+ # The number of hours before the end of the Maintenance Window that
2936
+ # Systems Manager stops scheduling new tasks for execution.
2937
+ # @option params [Boolean] :allow_unassociated_targets
2938
+ # Whether targets must be registered with the Maintenance Window before
2939
+ # tasks can be defined for those targets.
2940
+ # @option params [Boolean] :enabled
2941
+ # Whether the Maintenance Window is enabled.
2942
+ # @return [Types::UpdateMaintenanceWindowResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2943
+ #
2944
+ # * {Types::UpdateMaintenanceWindowResult#window_id #WindowId} => String
2945
+ # * {Types::UpdateMaintenanceWindowResult#name #Name} => String
2946
+ # * {Types::UpdateMaintenanceWindowResult#schedule #Schedule} => String
2947
+ # * {Types::UpdateMaintenanceWindowResult#duration #Duration} => Integer
2948
+ # * {Types::UpdateMaintenanceWindowResult#cutoff #Cutoff} => Integer
2949
+ # * {Types::UpdateMaintenanceWindowResult#allow_unassociated_targets #AllowUnassociatedTargets} => Boolean
2950
+ # * {Types::UpdateMaintenanceWindowResult#enabled #Enabled} => Boolean
2951
+ #
2952
+ # @example Request syntax with placeholder values
2953
+ # resp = client.update_maintenance_window({
2954
+ # window_id: "MaintenanceWindowId", # required
2955
+ # name: "MaintenanceWindowName",
2956
+ # schedule: "MaintenanceWindowSchedule",
2957
+ # duration: 1,
2958
+ # cutoff: 1,
2959
+ # allow_unassociated_targets: false,
2960
+ # enabled: false,
2961
+ # })
2962
+ #
2963
+ # @example Response structure
2964
+ # resp.window_id #=> String
2965
+ # resp.name #=> String
2966
+ # resp.schedule #=> String
2967
+ # resp.duration #=> Integer
2968
+ # resp.cutoff #=> Integer
2969
+ # resp.allow_unassociated_targets #=> Boolean
2970
+ # resp.enabled #=> Boolean
2971
+ # @overload update_maintenance_window(params = {})
2972
+ # @param [Hash] params ({})
2973
+ def update_maintenance_window(params = {}, options = {})
2974
+ req = build_request(:update_maintenance_window, params)
2975
+ req.send_request(options)
2976
+ end
2977
+
1159
2978
  # Assigns or changes an Amazon Identity and Access Management (IAM) role
1160
2979
  # to the managed instance.
1161
2980
  # @option params [required, String] :instance_id
@@ -1189,7 +3008,7 @@ module Aws
1189
3008
  params: params,
1190
3009
  config: config)
1191
3010
  context[:gem_name] = 'aws-sdk-ssm'
1192
- context[:gem_version] = '1.0.0.rc1'
3011
+ context[:gem_version] = '1.0.0.rc2'
1193
3012
  Seahorse::Client::Request.new(handlers, context)
1194
3013
  end
1195
3014