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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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