aws-sdk-ssm 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module SSM
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module SSM
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,1729 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module SSM
10
+ module Types
11
+
12
+ # An activation registers one or more on-premises servers or virtual
13
+ # machines (VMs) with AWS so that you can configure those servers or VMs
14
+ # using Run Command. A server or VM that has been registered with AWS is
15
+ # called a managed instance.
16
+ # @!attribute [rw] activation_id
17
+ # The ID created by SSM when you submitted the activation.
18
+ # @return [String]
19
+ #
20
+ # @!attribute [rw] description
21
+ # A user defined description of the activation.
22
+ # @return [String]
23
+ #
24
+ # @!attribute [rw] default_instance_name
25
+ # A name for the managed instance when it is created.
26
+ # @return [String]
27
+ #
28
+ # @!attribute [rw] iam_role
29
+ # The Amazon Identity and Access Management (IAM) role to assign to
30
+ # the managed instance.
31
+ # @return [String]
32
+ #
33
+ # @!attribute [rw] registration_limit
34
+ # The maximum number of managed instances that can be registered using
35
+ # this activation.
36
+ # @return [Integer]
37
+ #
38
+ # @!attribute [rw] registrations_count
39
+ # The number of managed instances already registered with this
40
+ # activation.
41
+ # @return [Integer]
42
+ #
43
+ # @!attribute [rw] expiration_date
44
+ # The date when this activation can no longer be used to register
45
+ # managed instances.
46
+ # @return [Time]
47
+ #
48
+ # @!attribute [rw] expired
49
+ # Whether or not the activation is expired.
50
+ # @return [Boolean]
51
+ #
52
+ # @!attribute [rw] created_date
53
+ # The date the activation was created.
54
+ # @return [Time]
55
+ class Activation < Struct.new(
56
+ :activation_id,
57
+ :description,
58
+ :default_instance_name,
59
+ :iam_role,
60
+ :registration_limit,
61
+ :registrations_count,
62
+ :expiration_date,
63
+ :expired,
64
+ :created_date)
65
+ include Aws::Structure
66
+ end
67
+
68
+ # @note When making an API call, pass AddTagsToResourceRequest
69
+ # data as a hash:
70
+ #
71
+ # {
72
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance
73
+ # resource_id: "ResourceId", # required
74
+ # tags: [ # required
75
+ # {
76
+ # key: "TagKey", # required
77
+ # value: "TagValue", # required
78
+ # },
79
+ # ],
80
+ # }
81
+ # @!attribute [rw] resource_type
82
+ # Specifies the type of resource you are tagging.
83
+ # @return [String]
84
+ #
85
+ # @!attribute [rw] resource_id
86
+ # The resource ID you want to tag.
87
+ # @return [String]
88
+ #
89
+ # @!attribute [rw] tags
90
+ # One or more tags. The value parameter is required, but if you don't
91
+ # want the tag to have a value, specify the parameter with no value,
92
+ # and we set the value to an empty string.
93
+ # @return [Array<Types::Tag>]
94
+ class AddTagsToResourceRequest < Struct.new(
95
+ :resource_type,
96
+ :resource_id,
97
+ :tags)
98
+ include Aws::Structure
99
+ end
100
+
101
+ class AddTagsToResourceResult < Aws::EmptyStructure; end
102
+
103
+ # Describes an association of an SSM document and an instance.
104
+ # @!attribute [rw] name
105
+ # The name of the SSM document.
106
+ # @return [String]
107
+ #
108
+ # @!attribute [rw] instance_id
109
+ # The ID of the instance.
110
+ # @return [String]
111
+ class Association < Struct.new(
112
+ :name,
113
+ :instance_id)
114
+ include Aws::Structure
115
+ end
116
+
117
+ # Describes the parameters for a document.
118
+ # @!attribute [rw] name
119
+ # The name of the SSM document.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] instance_id
123
+ # The ID of the instance.
124
+ # @return [String]
125
+ #
126
+ # @!attribute [rw] date
127
+ # The date when the association was made.
128
+ # @return [Time]
129
+ #
130
+ # @!attribute [rw] status
131
+ # The association status.
132
+ # @return [Types::AssociationStatus]
133
+ #
134
+ # @!attribute [rw] parameters
135
+ # A description of the parameters for a document.
136
+ # @return [Hash<String,Array<String>>]
137
+ class AssociationDescription < Struct.new(
138
+ :name,
139
+ :instance_id,
140
+ :date,
141
+ :status,
142
+ :parameters)
143
+ include Aws::Structure
144
+ end
145
+
146
+ # Describes a filter.
147
+ # @note When making an API call, pass AssociationFilter
148
+ # data as a hash:
149
+ #
150
+ # {
151
+ # key: "InstanceId", # required, accepts InstanceId, Name
152
+ # value: "AssociationFilterValue", # required
153
+ # }
154
+ # @!attribute [rw] key
155
+ # The name of the filter.
156
+ # @return [String]
157
+ #
158
+ # @!attribute [rw] value
159
+ # The filter value.
160
+ # @return [String]
161
+ class AssociationFilter < Struct.new(
162
+ :key,
163
+ :value)
164
+ include Aws::Structure
165
+ end
166
+
167
+ # Describes an association status.
168
+ # @note When making an API call, pass AssociationStatus
169
+ # data as a hash:
170
+ #
171
+ # {
172
+ # date: Time.now, # required
173
+ # name: "Pending", # required, accepts Pending, Success, Failed
174
+ # message: "StatusMessage", # required
175
+ # additional_info: "StatusAdditionalInfo",
176
+ # }
177
+ # @!attribute [rw] date
178
+ # The date when the status changed.
179
+ # @return [Time]
180
+ #
181
+ # @!attribute [rw] name
182
+ # The status.
183
+ # @return [String]
184
+ #
185
+ # @!attribute [rw] message
186
+ # The reason for the status.
187
+ # @return [String]
188
+ #
189
+ # @!attribute [rw] additional_info
190
+ # A user-defined string.
191
+ # @return [String]
192
+ class AssociationStatus < Struct.new(
193
+ :date,
194
+ :name,
195
+ :message,
196
+ :additional_info)
197
+ include Aws::Structure
198
+ end
199
+
200
+ # @note When making an API call, pass CancelCommandRequest
201
+ # data as a hash:
202
+ #
203
+ # {
204
+ # command_id: "CommandId", # required
205
+ # instance_ids: ["InstanceId"],
206
+ # }
207
+ # @!attribute [rw] command_id
208
+ # The ID of the command you want to cancel.
209
+ # @return [String]
210
+ #
211
+ # @!attribute [rw] instance_ids
212
+ # (Optional) A list of instance IDs on which you want to cancel the
213
+ # command. If not provided, the command is canceled on every instance
214
+ # on which it was requested.
215
+ # @return [Array<String>]
216
+ class CancelCommandRequest < Struct.new(
217
+ :command_id,
218
+ :instance_ids)
219
+ include Aws::Structure
220
+ end
221
+
222
+ # Whether or not the command was successfully canceled. There is no
223
+ # guarantee that a request can be canceled.
224
+ class CancelCommandResult < Aws::EmptyStructure; end
225
+
226
+ # Describes a command request.
227
+ # @!attribute [rw] command_id
228
+ # A unique identifier for this command.
229
+ # @return [String]
230
+ #
231
+ # @!attribute [rw] document_name
232
+ # The name of the SSM document requested for execution.
233
+ # @return [String]
234
+ #
235
+ # @!attribute [rw] comment
236
+ # User-specified information about the command, such as a brief
237
+ # description of what the command should do.
238
+ # @return [String]
239
+ #
240
+ # @!attribute [rw] expires_after
241
+ # If this time is reached and the command has not already started
242
+ # executing, it will not execute. Calculated based on the ExpiresAfter
243
+ # user input provided as part of the SendCommand API.
244
+ # @return [Time]
245
+ #
246
+ # @!attribute [rw] parameters
247
+ # The parameter values to be inserted in the SSM document when
248
+ # executing the command.
249
+ # @return [Hash<String,Array<String>>]
250
+ #
251
+ # @!attribute [rw] instance_ids
252
+ # The instance IDs against which this command was requested.
253
+ # @return [Array<String>]
254
+ #
255
+ # @!attribute [rw] requested_date_time
256
+ # The date and time the command was requested.
257
+ # @return [Time]
258
+ #
259
+ # @!attribute [rw] status
260
+ # The status of the command.
261
+ # @return [String]
262
+ #
263
+ # @!attribute [rw] output_s3_bucket_name
264
+ # The S3 bucket where the responses to the command executions should
265
+ # be stored. This was requested when issuing the command.
266
+ # @return [String]
267
+ #
268
+ # @!attribute [rw] output_s3_key_prefix
269
+ # The S3 directory path inside the bucket where the responses to the
270
+ # command executions should be stored. This was requested when issuing
271
+ # the command.
272
+ # @return [String]
273
+ #
274
+ # @!attribute [rw] service_role
275
+ # The IAM service role that SSM uses to act on your behalf when
276
+ # sending notifications about command status changes.
277
+ # @return [String]
278
+ #
279
+ # @!attribute [rw] notification_config
280
+ # Configurations for sending notifications about command status
281
+ # changes.
282
+ # @return [Types::NotificationConfig]
283
+ class Command < Struct.new(
284
+ :command_id,
285
+ :document_name,
286
+ :comment,
287
+ :expires_after,
288
+ :parameters,
289
+ :instance_ids,
290
+ :requested_date_time,
291
+ :status,
292
+ :output_s3_bucket_name,
293
+ :output_s3_key_prefix,
294
+ :service_role,
295
+ :notification_config)
296
+ include Aws::Structure
297
+ end
298
+
299
+ # Describes a command filter.
300
+ # @note When making an API call, pass CommandFilter
301
+ # data as a hash:
302
+ #
303
+ # {
304
+ # key: "InvokedAfter", # required, accepts InvokedAfter, InvokedBefore, Status
305
+ # value: "CommandFilterValue", # required
306
+ # }
307
+ # @!attribute [rw] key
308
+ # The name of the filter. For example, requested date and time.
309
+ # @return [String]
310
+ #
311
+ # @!attribute [rw] value
312
+ # The filter value. For example: June 30, 2015.
313
+ # @return [String]
314
+ class CommandFilter < Struct.new(
315
+ :key,
316
+ :value)
317
+ include Aws::Structure
318
+ end
319
+
320
+ # An invocation is copy of a command sent to a specific instance. A
321
+ # command can apply to one or more instances. A command invocation
322
+ # applies to one instance. For example, if a user executes SendCommand
323
+ # against three instances, then a command invocation is created for each
324
+ # requested instance ID. A command invocation returns status and detail
325
+ # information about a command you executed.
326
+ # @!attribute [rw] command_id
327
+ # The command against which this invocation was requested.
328
+ # @return [String]
329
+ #
330
+ # @!attribute [rw] instance_id
331
+ # The instance ID in which this invocation was requested.
332
+ # @return [String]
333
+ #
334
+ # @!attribute [rw] comment
335
+ # User-specified information about the command, such as a brief
336
+ # description of what the command should do.
337
+ # @return [String]
338
+ #
339
+ # @!attribute [rw] document_name
340
+ # The document name that was requested for execution.
341
+ # @return [String]
342
+ #
343
+ # @!attribute [rw] requested_date_time
344
+ # The time and date the request was sent to this instance.
345
+ # @return [Time]
346
+ #
347
+ # @!attribute [rw] status
348
+ # Whether or not the invocation succeeded, failed, or is pending.
349
+ # @return [String]
350
+ #
351
+ # @!attribute [rw] trace_output
352
+ # Gets the trace output sent by the agent.
353
+ # @return [String]
354
+ #
355
+ # @!attribute [rw] command_plugins
356
+ # @return [Array<Types::CommandPlugin>]
357
+ #
358
+ # @!attribute [rw] service_role
359
+ # The IAM service role that SSM uses to act on your behalf when
360
+ # sending notifications about command status changes on a per instance
361
+ # basis.
362
+ # @return [String]
363
+ #
364
+ # @!attribute [rw] notification_config
365
+ # Configurations for sending notifications about command status
366
+ # changes on a per instance basis.
367
+ # @return [Types::NotificationConfig]
368
+ class CommandInvocation < Struct.new(
369
+ :command_id,
370
+ :instance_id,
371
+ :comment,
372
+ :document_name,
373
+ :requested_date_time,
374
+ :status,
375
+ :trace_output,
376
+ :command_plugins,
377
+ :service_role,
378
+ :notification_config)
379
+ include Aws::Structure
380
+ end
381
+
382
+ # Describes plugin details.
383
+ # @!attribute [rw] name
384
+ # The name of the plugin. Must be one of the following:
385
+ # aws:updateAgent, aws:domainjoin, aws:applications,
386
+ # aws:runPowerShellScript, aws:psmodule, aws:cloudWatch,
387
+ # aws:runShellScript, or aws:updateSSMAgent.
388
+ # @return [String]
389
+ #
390
+ # @!attribute [rw] status
391
+ # The status of this plugin. You can execute a document with multiple
392
+ # plugins.
393
+ # @return [String]
394
+ #
395
+ # @!attribute [rw] response_code
396
+ # A numeric response code generated after executing the plugin.
397
+ # @return [Integer]
398
+ #
399
+ # @!attribute [rw] response_start_date_time
400
+ # The time the plugin started executing.
401
+ # @return [Time]
402
+ #
403
+ # @!attribute [rw] response_finish_date_time
404
+ # The time the plugin stopped executing. Could stop prematurely if,
405
+ # for example, a cancel command was sent.
406
+ # @return [Time]
407
+ #
408
+ # @!attribute [rw] output
409
+ # Output of the plugin execution.
410
+ # @return [String]
411
+ #
412
+ # @!attribute [rw] output_s3_bucket_name
413
+ # The S3 bucket where the responses to the command executions should
414
+ # be stored. This was requested when issuing the command.
415
+ # @return [String]
416
+ #
417
+ # @!attribute [rw] output_s3_key_prefix
418
+ # The S3 directory path inside the bucket where the responses to the
419
+ # command executions should be stored. This was requested when issuing
420
+ # the command.
421
+ # @return [String]
422
+ class CommandPlugin < Struct.new(
423
+ :name,
424
+ :status,
425
+ :response_code,
426
+ :response_start_date_time,
427
+ :response_finish_date_time,
428
+ :output,
429
+ :output_s3_bucket_name,
430
+ :output_s3_key_prefix)
431
+ include Aws::Structure
432
+ end
433
+
434
+ # @note When making an API call, pass CreateActivationRequest
435
+ # data as a hash:
436
+ #
437
+ # {
438
+ # description: "ActivationDescription",
439
+ # default_instance_name: "DefaultInstanceName",
440
+ # iam_role: "IamRole", # required
441
+ # registration_limit: 1,
442
+ # expiration_date: Time.now,
443
+ # }
444
+ # @!attribute [rw] description
445
+ # A user-defined description of the resource that you want to register
446
+ # with Amazon EC2.
447
+ # @return [String]
448
+ #
449
+ # @!attribute [rw] default_instance_name
450
+ # The name of the registered, managed instance as it will appear in
451
+ # the Amazon EC2 console or when you use the AWS command line tools to
452
+ # list EC2 resources.
453
+ # @return [String]
454
+ #
455
+ # @!attribute [rw] iam_role
456
+ # The Amazon Identity and Access Management (IAM) role that you want
457
+ # to assign to the managed instance.
458
+ # @return [String]
459
+ #
460
+ # @!attribute [rw] registration_limit
461
+ # Specify the maximum number of managed instances you want to
462
+ # register. The default value is 1 instance.
463
+ # @return [Integer]
464
+ #
465
+ # @!attribute [rw] expiration_date
466
+ # The date by which this activation request should expire. The default
467
+ # value is 24 hours.
468
+ # @return [Time]
469
+ class CreateActivationRequest < Struct.new(
470
+ :description,
471
+ :default_instance_name,
472
+ :iam_role,
473
+ :registration_limit,
474
+ :expiration_date)
475
+ include Aws::Structure
476
+ end
477
+
478
+ # @!attribute [rw] activation_id
479
+ # The ID number generated by the system when it processed the
480
+ # activation. The activation ID functions like a user name.
481
+ # @return [String]
482
+ #
483
+ # @!attribute [rw] activation_code
484
+ # The code the system generates when it processes the activation. The
485
+ # activation code functions like a password to validate the activation
486
+ # ID.
487
+ # @return [String]
488
+ class CreateActivationResult < Struct.new(
489
+ :activation_id,
490
+ :activation_code)
491
+ include Aws::Structure
492
+ end
493
+
494
+ # @note When making an API call, pass CreateAssociationBatchRequest
495
+ # data as a hash:
496
+ #
497
+ # {
498
+ # entries: [ # required
499
+ # {
500
+ # name: "DocumentName",
501
+ # instance_id: "InstanceId",
502
+ # parameters: {
503
+ # "ParameterName" => ["ParameterValue"],
504
+ # },
505
+ # },
506
+ # ],
507
+ # }
508
+ # @!attribute [rw] entries
509
+ # One or more associations.
510
+ # @return [Array<Types::CreateAssociationBatchRequestEntry>]
511
+ class CreateAssociationBatchRequest < Struct.new(
512
+ :entries)
513
+ include Aws::Structure
514
+ end
515
+
516
+ # Describes the association of an SSM document and an instance.
517
+ # @note When making an API call, pass CreateAssociationBatchRequestEntry
518
+ # data as a hash:
519
+ #
520
+ # {
521
+ # name: "DocumentName",
522
+ # instance_id: "InstanceId",
523
+ # parameters: {
524
+ # "ParameterName" => ["ParameterValue"],
525
+ # },
526
+ # }
527
+ # @!attribute [rw] name
528
+ # The name of the configuration document.
529
+ # @return [String]
530
+ #
531
+ # @!attribute [rw] instance_id
532
+ # The ID of the instance.
533
+ # @return [String]
534
+ #
535
+ # @!attribute [rw] parameters
536
+ # A description of the parameters for a document.
537
+ # @return [Hash<String,Array<String>>]
538
+ class CreateAssociationBatchRequestEntry < Struct.new(
539
+ :name,
540
+ :instance_id,
541
+ :parameters)
542
+ include Aws::Structure
543
+ end
544
+
545
+ # @!attribute [rw] successful
546
+ # Information about the associations that succeeded.
547
+ # @return [Array<Types::AssociationDescription>]
548
+ #
549
+ # @!attribute [rw] failed
550
+ # Information about the associations that failed.
551
+ # @return [Array<Types::FailedCreateAssociation>]
552
+ class CreateAssociationBatchResult < Struct.new(
553
+ :successful,
554
+ :failed)
555
+ include Aws::Structure
556
+ end
557
+
558
+ # @note When making an API call, pass CreateAssociationRequest
559
+ # data as a hash:
560
+ #
561
+ # {
562
+ # name: "DocumentName", # required
563
+ # instance_id: "InstanceId", # required
564
+ # parameters: {
565
+ # "ParameterName" => ["ParameterValue"],
566
+ # },
567
+ # }
568
+ # @!attribute [rw] name
569
+ # The name of the SSM document.
570
+ # @return [String]
571
+ #
572
+ # @!attribute [rw] instance_id
573
+ # The instance ID.
574
+ # @return [String]
575
+ #
576
+ # @!attribute [rw] parameters
577
+ # The parameters for the documents runtime configuration.
578
+ # @return [Hash<String,Array<String>>]
579
+ class CreateAssociationRequest < Struct.new(
580
+ :name,
581
+ :instance_id,
582
+ :parameters)
583
+ include Aws::Structure
584
+ end
585
+
586
+ # @!attribute [rw] association_description
587
+ # Information about the association.
588
+ # @return [Types::AssociationDescription]
589
+ class CreateAssociationResult < Struct.new(
590
+ :association_description)
591
+ include Aws::Structure
592
+ end
593
+
594
+ # @note When making an API call, pass CreateDocumentRequest
595
+ # data as a hash:
596
+ #
597
+ # {
598
+ # content: "DocumentContent", # required
599
+ # name: "DocumentName", # required
600
+ # }
601
+ # @!attribute [rw] content
602
+ # A valid JSON string.
603
+ # @return [String]
604
+ #
605
+ # @!attribute [rw] name
606
+ # A name for the SSM document.
607
+ # @return [String]
608
+ class CreateDocumentRequest < Struct.new(
609
+ :content,
610
+ :name)
611
+ include Aws::Structure
612
+ end
613
+
614
+ # @!attribute [rw] document_description
615
+ # Information about the SSM document.
616
+ # @return [Types::DocumentDescription]
617
+ class CreateDocumentResult < Struct.new(
618
+ :document_description)
619
+ include Aws::Structure
620
+ end
621
+
622
+ # @note When making an API call, pass DeleteActivationRequest
623
+ # data as a hash:
624
+ #
625
+ # {
626
+ # activation_id: "ActivationId", # required
627
+ # }
628
+ # @!attribute [rw] activation_id
629
+ # The ID of the activation that you want to delete.
630
+ # @return [String]
631
+ class DeleteActivationRequest < Struct.new(
632
+ :activation_id)
633
+ include Aws::Structure
634
+ end
635
+
636
+ class DeleteActivationResult < Aws::EmptyStructure; end
637
+
638
+ # @note When making an API call, pass DeleteAssociationRequest
639
+ # data as a hash:
640
+ #
641
+ # {
642
+ # name: "DocumentName", # required
643
+ # instance_id: "InstanceId", # required
644
+ # }
645
+ # @!attribute [rw] name
646
+ # The name of the SSM document.
647
+ # @return [String]
648
+ #
649
+ # @!attribute [rw] instance_id
650
+ # The ID of the instance.
651
+ # @return [String]
652
+ class DeleteAssociationRequest < Struct.new(
653
+ :name,
654
+ :instance_id)
655
+ include Aws::Structure
656
+ end
657
+
658
+ class DeleteAssociationResult < Aws::EmptyStructure; end
659
+
660
+ # @note When making an API call, pass DeleteDocumentRequest
661
+ # data as a hash:
662
+ #
663
+ # {
664
+ # name: "DocumentName", # required
665
+ # }
666
+ # @!attribute [rw] name
667
+ # The name of the SSM document.
668
+ # @return [String]
669
+ class DeleteDocumentRequest < Struct.new(
670
+ :name)
671
+ include Aws::Structure
672
+ end
673
+
674
+ class DeleteDocumentResult < Aws::EmptyStructure; end
675
+
676
+ # @note When making an API call, pass DeregisterManagedInstanceRequest
677
+ # data as a hash:
678
+ #
679
+ # {
680
+ # instance_id: "ManagedInstanceId", # required
681
+ # }
682
+ # @!attribute [rw] instance_id
683
+ # The ID assigned to the managed instance when you registered it using
684
+ # the activation process.
685
+ # @return [String]
686
+ class DeregisterManagedInstanceRequest < Struct.new(
687
+ :instance_id)
688
+ include Aws::Structure
689
+ end
690
+
691
+ class DeregisterManagedInstanceResult < Aws::EmptyStructure; end
692
+
693
+ # Filter for the DescribeActivation API.
694
+ # @note When making an API call, pass DescribeActivationsFilter
695
+ # data as a hash:
696
+ #
697
+ # {
698
+ # filter_key: "ActivationIds", # accepts ActivationIds, DefaultInstanceName, IamRole
699
+ # filter_values: ["String"],
700
+ # }
701
+ # @!attribute [rw] filter_key
702
+ # The name of the filter.
703
+ # @return [String]
704
+ #
705
+ # @!attribute [rw] filter_values
706
+ # The filter values.
707
+ # @return [Array<String>]
708
+ class DescribeActivationsFilter < Struct.new(
709
+ :filter_key,
710
+ :filter_values)
711
+ include Aws::Structure
712
+ end
713
+
714
+ # @note When making an API call, pass DescribeActivationsRequest
715
+ # data as a hash:
716
+ #
717
+ # {
718
+ # filters: [
719
+ # {
720
+ # filter_key: "ActivationIds", # accepts ActivationIds, DefaultInstanceName, IamRole
721
+ # filter_values: ["String"],
722
+ # },
723
+ # ],
724
+ # max_results: 1,
725
+ # next_token: "NextToken",
726
+ # }
727
+ # @!attribute [rw] filters
728
+ # A filter to view information about your activations.
729
+ # @return [Array<Types::DescribeActivationsFilter>]
730
+ #
731
+ # @!attribute [rw] max_results
732
+ # The maximum number of items to return for this call. The call also
733
+ # returns a token that you can specify in a subsequent call to get the
734
+ # next set of results.
735
+ # @return [Integer]
736
+ #
737
+ # @!attribute [rw] next_token
738
+ # A token to start the list. Use this token to get the next set of
739
+ # results.
740
+ # @return [String]
741
+ class DescribeActivationsRequest < Struct.new(
742
+ :filters,
743
+ :max_results,
744
+ :next_token)
745
+ include Aws::Structure
746
+ end
747
+
748
+ # @!attribute [rw] activation_list
749
+ # A list of activations for your AWS account.
750
+ # @return [Array<Types::Activation>]
751
+ #
752
+ # @!attribute [rw] next_token
753
+ # The token for the next set of items to return. Use this token to get
754
+ # the next set of results.
755
+ # @return [String]
756
+ class DescribeActivationsResult < Struct.new(
757
+ :activation_list,
758
+ :next_token)
759
+ include Aws::Structure
760
+ end
761
+
762
+ # @note When making an API call, pass DescribeAssociationRequest
763
+ # data as a hash:
764
+ #
765
+ # {
766
+ # name: "DocumentName", # required
767
+ # instance_id: "InstanceId", # required
768
+ # }
769
+ # @!attribute [rw] name
770
+ # The name of the SSM document.
771
+ # @return [String]
772
+ #
773
+ # @!attribute [rw] instance_id
774
+ # The instance ID.
775
+ # @return [String]
776
+ class DescribeAssociationRequest < Struct.new(
777
+ :name,
778
+ :instance_id)
779
+ include Aws::Structure
780
+ end
781
+
782
+ # @!attribute [rw] association_description
783
+ # Information about the association.
784
+ # @return [Types::AssociationDescription]
785
+ class DescribeAssociationResult < Struct.new(
786
+ :association_description)
787
+ include Aws::Structure
788
+ end
789
+
790
+ # @note When making an API call, pass DescribeDocumentPermissionRequest
791
+ # data as a hash:
792
+ #
793
+ # {
794
+ # name: "DocumentName", # required
795
+ # permission_type: "Share", # required, accepts Share
796
+ # }
797
+ # @!attribute [rw] name
798
+ # The name of the document for which you are the owner.
799
+ # @return [String]
800
+ #
801
+ # @!attribute [rw] permission_type
802
+ # The permission type for the document. The permission type can be
803
+ # *Share*.
804
+ # @return [String]
805
+ class DescribeDocumentPermissionRequest < Struct.new(
806
+ :name,
807
+ :permission_type)
808
+ include Aws::Structure
809
+ end
810
+
811
+ # @!attribute [rw] account_ids
812
+ # The account IDs that have permission to use this document. The ID
813
+ # can be either an AWS account or *All*.
814
+ # @return [Array<String>]
815
+ class DescribeDocumentPermissionResponse < Struct.new(
816
+ :account_ids)
817
+ include Aws::Structure
818
+ end
819
+
820
+ # @note When making an API call, pass DescribeDocumentRequest
821
+ # data as a hash:
822
+ #
823
+ # {
824
+ # name: "DocumentARN", # required
825
+ # }
826
+ # @!attribute [rw] name
827
+ # The name of the SSM document.
828
+ # @return [String]
829
+ class DescribeDocumentRequest < Struct.new(
830
+ :name)
831
+ include Aws::Structure
832
+ end
833
+
834
+ # @!attribute [rw] document
835
+ # Information about the SSM document.
836
+ # @return [Types::DocumentDescription]
837
+ class DescribeDocumentResult < Struct.new(
838
+ :document)
839
+ include Aws::Structure
840
+ end
841
+
842
+ # @note When making an API call, pass DescribeInstanceInformationRequest
843
+ # data as a hash:
844
+ #
845
+ # {
846
+ # instance_information_filter_list: [
847
+ # {
848
+ # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType
849
+ # value_set: ["InstanceInformationFilterValue"], # required
850
+ # },
851
+ # ],
852
+ # max_results: 1,
853
+ # next_token: "NextToken",
854
+ # }
855
+ # @!attribute [rw] instance_information_filter_list
856
+ # One or more filters. Use a filter to return a more specific list of
857
+ # instances.
858
+ # @return [Array<Types::InstanceInformationFilter>]
859
+ #
860
+ # @!attribute [rw] max_results
861
+ # The maximum number of items to return for this call. The call also
862
+ # returns a token that you can specify in a subsequent call to get the
863
+ # next set of results.
864
+ # @return [Integer]
865
+ #
866
+ # @!attribute [rw] next_token
867
+ # The token for the next set of items to return. (You received this
868
+ # token from a previous call.)
869
+ # @return [String]
870
+ class DescribeInstanceInformationRequest < Struct.new(
871
+ :instance_information_filter_list,
872
+ :max_results,
873
+ :next_token)
874
+ include Aws::Structure
875
+ end
876
+
877
+ # @!attribute [rw] instance_information_list
878
+ # The instance information list.
879
+ # @return [Array<Types::InstanceInformation>]
880
+ #
881
+ # @!attribute [rw] next_token
882
+ # The token to use when requesting the next set of items. If there are
883
+ # no additional items to return, the string is empty.
884
+ # @return [String]
885
+ class DescribeInstanceInformationResult < Struct.new(
886
+ :instance_information_list,
887
+ :next_token)
888
+ include Aws::Structure
889
+ end
890
+
891
+ # Describes an SSM document.
892
+ # @!attribute [rw] sha_1
893
+ # The SHA1 hash of the document, which you can use for verification
894
+ # purposes.
895
+ # @return [String]
896
+ #
897
+ # @!attribute [rw] hash
898
+ # The Sha256 or Sha1 hash created by the system when the document was
899
+ # created.
900
+ #
901
+ # <note markdown="1"> Sha1 hashes have been deprecated.
902
+ #
903
+ # </note>
904
+ # @return [String]
905
+ #
906
+ # @!attribute [rw] hash_type
907
+ # Sha256 or Sha1.
908
+ #
909
+ # <note markdown="1"> Sha1 hashes have been deprecated.
910
+ #
911
+ # </note>
912
+ # @return [String]
913
+ #
914
+ # @!attribute [rw] name
915
+ # The name of the SSM document.
916
+ # @return [String]
917
+ #
918
+ # @!attribute [rw] owner
919
+ # The AWS user account of the person who created the document.
920
+ # @return [String]
921
+ #
922
+ # @!attribute [rw] created_date
923
+ # The date when the SSM document was created.
924
+ # @return [Time]
925
+ #
926
+ # @!attribute [rw] status
927
+ # The status of the SSM document.
928
+ # @return [String]
929
+ #
930
+ # @!attribute [rw] description
931
+ # A description of the document.
932
+ # @return [String]
933
+ #
934
+ # @!attribute [rw] parameters
935
+ # A description of the parameters for a document.
936
+ # @return [Array<Types::DocumentParameter>]
937
+ #
938
+ # @!attribute [rw] platform_types
939
+ # The list of OS platforms compatible with this SSM document.
940
+ # @return [Array<String>]
941
+ class DocumentDescription < Struct.new(
942
+ :sha_1,
943
+ :hash,
944
+ :hash_type,
945
+ :name,
946
+ :owner,
947
+ :created_date,
948
+ :status,
949
+ :description,
950
+ :parameters,
951
+ :platform_types)
952
+ include Aws::Structure
953
+ end
954
+
955
+ # Describes a filter.
956
+ # @note When making an API call, pass DocumentFilter
957
+ # data as a hash:
958
+ #
959
+ # {
960
+ # key: "Name", # required, accepts Name, Owner, PlatformTypes
961
+ # value: "DocumentFilterValue", # required
962
+ # }
963
+ # @!attribute [rw] key
964
+ # The name of the filter.
965
+ # @return [String]
966
+ #
967
+ # @!attribute [rw] value
968
+ # The value of the filter.
969
+ # @return [String]
970
+ class DocumentFilter < Struct.new(
971
+ :key,
972
+ :value)
973
+ include Aws::Structure
974
+ end
975
+
976
+ # Describes the name of an SSM document.
977
+ # @!attribute [rw] name
978
+ # The name of the SSM document.
979
+ # @return [String]
980
+ #
981
+ # @!attribute [rw] owner
982
+ # The AWS user account of the person who created the document.
983
+ # @return [String]
984
+ #
985
+ # @!attribute [rw] platform_types
986
+ # The operating system platform.
987
+ # @return [Array<String>]
988
+ class DocumentIdentifier < Struct.new(
989
+ :name,
990
+ :owner,
991
+ :platform_types)
992
+ include Aws::Structure
993
+ end
994
+
995
+ # Parameters specified in the SSM document that execute on the server
996
+ # when the command is run.
997
+ # @!attribute [rw] name
998
+ # The name of the parameter.
999
+ # @return [String]
1000
+ #
1001
+ # @!attribute [rw] type
1002
+ # The type of parameter. The type can be either “String” or
1003
+ # “StringList”.
1004
+ # @return [String]
1005
+ #
1006
+ # @!attribute [rw] description
1007
+ # A description of what the parameter does, how to use it, the default
1008
+ # value, and whether or not the parameter is optional.
1009
+ # @return [String]
1010
+ #
1011
+ # @!attribute [rw] default_value
1012
+ # If specified, the default values for the parameters. Parameters
1013
+ # without a default value are required. Parameters with a default
1014
+ # value are optional.
1015
+ # @return [String]
1016
+ class DocumentParameter < Struct.new(
1017
+ :name,
1018
+ :type,
1019
+ :description,
1020
+ :default_value)
1021
+ include Aws::Structure
1022
+ end
1023
+
1024
+ # Describes a failed association.
1025
+ # @!attribute [rw] entry
1026
+ # The association.
1027
+ # @return [Types::CreateAssociationBatchRequestEntry]
1028
+ #
1029
+ # @!attribute [rw] message
1030
+ # A description of the failure.
1031
+ # @return [String]
1032
+ #
1033
+ # @!attribute [rw] fault
1034
+ # The source of the failure.
1035
+ # @return [String]
1036
+ class FailedCreateAssociation < Struct.new(
1037
+ :entry,
1038
+ :message,
1039
+ :fault)
1040
+ include Aws::Structure
1041
+ end
1042
+
1043
+ # @note When making an API call, pass GetDocumentRequest
1044
+ # data as a hash:
1045
+ #
1046
+ # {
1047
+ # name: "DocumentARN", # required
1048
+ # }
1049
+ # @!attribute [rw] name
1050
+ # The name of the SSM document.
1051
+ # @return [String]
1052
+ class GetDocumentRequest < Struct.new(
1053
+ :name)
1054
+ include Aws::Structure
1055
+ end
1056
+
1057
+ # @!attribute [rw] name
1058
+ # The name of the SSM document.
1059
+ # @return [String]
1060
+ #
1061
+ # @!attribute [rw] content
1062
+ # The contents of the SSM document.
1063
+ # @return [String]
1064
+ class GetDocumentResult < Struct.new(
1065
+ :name,
1066
+ :content)
1067
+ include Aws::Structure
1068
+ end
1069
+
1070
+ # Describes a filter for a specific list of instances.
1071
+ # @!attribute [rw] instance_id
1072
+ # The instance ID.
1073
+ # @return [String]
1074
+ #
1075
+ # @!attribute [rw] ping_status
1076
+ # Connection status of the SSM agent.
1077
+ # @return [String]
1078
+ #
1079
+ # @!attribute [rw] last_ping_date_time
1080
+ # The date and time when agent last pinged SSM service.
1081
+ # @return [Time]
1082
+ #
1083
+ # @!attribute [rw] agent_version
1084
+ # The version of the SSM agent running on your Linux instance.
1085
+ # @return [String]
1086
+ #
1087
+ # @!attribute [rw] is_latest_version
1088
+ # Indicates whether latest version of the SSM agent is running on your
1089
+ # instance.
1090
+ # @return [Boolean]
1091
+ #
1092
+ # @!attribute [rw] platform_type
1093
+ # The operating system platform type.
1094
+ # @return [String]
1095
+ #
1096
+ # @!attribute [rw] platform_name
1097
+ # The name of the operating system platform running on your instance.
1098
+ # @return [String]
1099
+ #
1100
+ # @!attribute [rw] platform_version
1101
+ # The version of the OS platform running on your instance.
1102
+ # @return [String]
1103
+ #
1104
+ # @!attribute [rw] activation_id
1105
+ # The activation ID created by SSM when the server or VM was
1106
+ # registered.
1107
+ # @return [String]
1108
+ #
1109
+ # @!attribute [rw] iam_role
1110
+ # The Amazon Identity and Access Management (IAM) role assigned to EC2
1111
+ # instances or managed instances.
1112
+ # @return [String]
1113
+ #
1114
+ # @!attribute [rw] registration_date
1115
+ # The date the server or VM was registered with AWS as a managed
1116
+ # instance.
1117
+ # @return [Time]
1118
+ #
1119
+ # @!attribute [rw] resource_type
1120
+ # The type of instance. Instances are either EC2 instances or managed
1121
+ # instances.
1122
+ # @return [String]
1123
+ #
1124
+ # @!attribute [rw] name
1125
+ # The name of the managed instance.
1126
+ # @return [String]
1127
+ #
1128
+ # @!attribute [rw] ip_address
1129
+ # The IP address of the managed instance.
1130
+ # @return [String]
1131
+ #
1132
+ # @!attribute [rw] computer_name
1133
+ # The fully qualified host name of the managed instance.
1134
+ # @return [String]
1135
+ class InstanceInformation < Struct.new(
1136
+ :instance_id,
1137
+ :ping_status,
1138
+ :last_ping_date_time,
1139
+ :agent_version,
1140
+ :is_latest_version,
1141
+ :platform_type,
1142
+ :platform_name,
1143
+ :platform_version,
1144
+ :activation_id,
1145
+ :iam_role,
1146
+ :registration_date,
1147
+ :resource_type,
1148
+ :name,
1149
+ :ip_address,
1150
+ :computer_name)
1151
+ include Aws::Structure
1152
+ end
1153
+
1154
+ # Describes a filter for a specific list of instances.
1155
+ # @note When making an API call, pass InstanceInformationFilter
1156
+ # data as a hash:
1157
+ #
1158
+ # {
1159
+ # key: "InstanceIds", # required, accepts InstanceIds, AgentVersion, PingStatus, PlatformTypes, ActivationIds, IamRole, ResourceType
1160
+ # value_set: ["InstanceInformationFilterValue"], # required
1161
+ # }
1162
+ # @!attribute [rw] key
1163
+ # The name of the filter.
1164
+ # @return [String]
1165
+ #
1166
+ # @!attribute [rw] value_set
1167
+ # The filter values.
1168
+ # @return [Array<String>]
1169
+ class InstanceInformationFilter < Struct.new(
1170
+ :key,
1171
+ :value_set)
1172
+ include Aws::Structure
1173
+ end
1174
+
1175
+ # @note When making an API call, pass ListAssociationsRequest
1176
+ # data as a hash:
1177
+ #
1178
+ # {
1179
+ # association_filter_list: [ # required
1180
+ # {
1181
+ # key: "InstanceId", # required, accepts InstanceId, Name
1182
+ # value: "AssociationFilterValue", # required
1183
+ # },
1184
+ # ],
1185
+ # max_results: 1,
1186
+ # next_token: "NextToken",
1187
+ # }
1188
+ # @!attribute [rw] association_filter_list
1189
+ # One or more filters. Use a filter to return a more specific list of
1190
+ # results.
1191
+ # @return [Array<Types::AssociationFilter>]
1192
+ #
1193
+ # @!attribute [rw] max_results
1194
+ # The maximum number of items to return for this call. The call also
1195
+ # returns a token that you can specify in a subsequent call to get the
1196
+ # next set of results.
1197
+ # @return [Integer]
1198
+ #
1199
+ # @!attribute [rw] next_token
1200
+ # The token for the next set of items to return. (You received this
1201
+ # token from a previous call.)
1202
+ # @return [String]
1203
+ class ListAssociationsRequest < Struct.new(
1204
+ :association_filter_list,
1205
+ :max_results,
1206
+ :next_token)
1207
+ include Aws::Structure
1208
+ end
1209
+
1210
+ # @!attribute [rw] associations
1211
+ # The associations.
1212
+ # @return [Array<Types::Association>]
1213
+ #
1214
+ # @!attribute [rw] next_token
1215
+ # The token to use when requesting the next set of items. If there are
1216
+ # no additional items to return, the string is empty.
1217
+ # @return [String]
1218
+ class ListAssociationsResult < Struct.new(
1219
+ :associations,
1220
+ :next_token)
1221
+ include Aws::Structure
1222
+ end
1223
+
1224
+ # @note When making an API call, pass ListCommandInvocationsRequest
1225
+ # data as a hash:
1226
+ #
1227
+ # {
1228
+ # command_id: "CommandId",
1229
+ # instance_id: "InstanceId",
1230
+ # max_results: 1,
1231
+ # next_token: "NextToken",
1232
+ # filters: [
1233
+ # {
1234
+ # key: "InvokedAfter", # required, accepts InvokedAfter, InvokedBefore, Status
1235
+ # value: "CommandFilterValue", # required
1236
+ # },
1237
+ # ],
1238
+ # details: false,
1239
+ # }
1240
+ # @!attribute [rw] command_id
1241
+ # (Optional) The invocations for a specific command ID.
1242
+ # @return [String]
1243
+ #
1244
+ # @!attribute [rw] instance_id
1245
+ # (Optional) The command execution details for a specific instance ID.
1246
+ # @return [String]
1247
+ #
1248
+ # @!attribute [rw] max_results
1249
+ # (Optional) The maximum number of items to return for this call. The
1250
+ # call also returns a token that you can specify in a subsequent call
1251
+ # to get the next set of results.
1252
+ # @return [Integer]
1253
+ #
1254
+ # @!attribute [rw] next_token
1255
+ # (Optional) The token for the next set of items to return. (You
1256
+ # received this token from a previous call.)
1257
+ # @return [String]
1258
+ #
1259
+ # @!attribute [rw] filters
1260
+ # (Optional) One or more filters. Use a filter to return a more
1261
+ # specific list of results.
1262
+ # @return [Array<Types::CommandFilter>]
1263
+ #
1264
+ # @!attribute [rw] details
1265
+ # (Optional) If set this returns the response of the command
1266
+ # executions and any command output. By default this is set to False.
1267
+ # @return [Boolean]
1268
+ class ListCommandInvocationsRequest < Struct.new(
1269
+ :command_id,
1270
+ :instance_id,
1271
+ :max_results,
1272
+ :next_token,
1273
+ :filters,
1274
+ :details)
1275
+ include Aws::Structure
1276
+ end
1277
+
1278
+ # @!attribute [rw] command_invocations
1279
+ # (Optional) A list of all invocations.
1280
+ # @return [Array<Types::CommandInvocation>]
1281
+ #
1282
+ # @!attribute [rw] next_token
1283
+ # (Optional) The token for the next set of items to return. (You
1284
+ # received this token from a previous call.)
1285
+ # @return [String]
1286
+ class ListCommandInvocationsResult < Struct.new(
1287
+ :command_invocations,
1288
+ :next_token)
1289
+ include Aws::Structure
1290
+ end
1291
+
1292
+ # @note When making an API call, pass ListCommandsRequest
1293
+ # data as a hash:
1294
+ #
1295
+ # {
1296
+ # command_id: "CommandId",
1297
+ # instance_id: "InstanceId",
1298
+ # max_results: 1,
1299
+ # next_token: "NextToken",
1300
+ # filters: [
1301
+ # {
1302
+ # key: "InvokedAfter", # required, accepts InvokedAfter, InvokedBefore, Status
1303
+ # value: "CommandFilterValue", # required
1304
+ # },
1305
+ # ],
1306
+ # }
1307
+ # @!attribute [rw] command_id
1308
+ # (Optional) If provided, lists only the specified command.
1309
+ # @return [String]
1310
+ #
1311
+ # @!attribute [rw] instance_id
1312
+ # (Optional) Lists commands issued against this instance ID.
1313
+ # @return [String]
1314
+ #
1315
+ # @!attribute [rw] max_results
1316
+ # (Optional) The maximum number of items to return for this call. The
1317
+ # call also returns a token that you can specify in a subsequent call
1318
+ # to get the next set of results.
1319
+ # @return [Integer]
1320
+ #
1321
+ # @!attribute [rw] next_token
1322
+ # (Optional) The token for the next set of items to return. (You
1323
+ # received this token from a previous call.)
1324
+ # @return [String]
1325
+ #
1326
+ # @!attribute [rw] filters
1327
+ # (Optional) One or more filters. Use a filter to return a more
1328
+ # specific list of results.
1329
+ # @return [Array<Types::CommandFilter>]
1330
+ class ListCommandsRequest < Struct.new(
1331
+ :command_id,
1332
+ :instance_id,
1333
+ :max_results,
1334
+ :next_token,
1335
+ :filters)
1336
+ include Aws::Structure
1337
+ end
1338
+
1339
+ # @!attribute [rw] commands
1340
+ # (Optional) The list of commands requested by the user.
1341
+ # @return [Array<Types::Command>]
1342
+ #
1343
+ # @!attribute [rw] next_token
1344
+ # (Optional) The token for the next set of items to return. (You
1345
+ # received this token from a previous call.)
1346
+ # @return [String]
1347
+ class ListCommandsResult < Struct.new(
1348
+ :commands,
1349
+ :next_token)
1350
+ include Aws::Structure
1351
+ end
1352
+
1353
+ # @note When making an API call, pass ListDocumentsRequest
1354
+ # data as a hash:
1355
+ #
1356
+ # {
1357
+ # document_filter_list: [
1358
+ # {
1359
+ # key: "Name", # required, accepts Name, Owner, PlatformTypes
1360
+ # value: "DocumentFilterValue", # required
1361
+ # },
1362
+ # ],
1363
+ # max_results: 1,
1364
+ # next_token: "NextToken",
1365
+ # }
1366
+ # @!attribute [rw] document_filter_list
1367
+ # One or more filters. Use a filter to return a more specific list of
1368
+ # results.
1369
+ # @return [Array<Types::DocumentFilter>]
1370
+ #
1371
+ # @!attribute [rw] max_results
1372
+ # The maximum number of items to return for this call. The call also
1373
+ # returns a token that you can specify in a subsequent call to get the
1374
+ # next set of results.
1375
+ # @return [Integer]
1376
+ #
1377
+ # @!attribute [rw] next_token
1378
+ # The token for the next set of items to return. (You received this
1379
+ # token from a previous call.)
1380
+ # @return [String]
1381
+ class ListDocumentsRequest < Struct.new(
1382
+ :document_filter_list,
1383
+ :max_results,
1384
+ :next_token)
1385
+ include Aws::Structure
1386
+ end
1387
+
1388
+ # @!attribute [rw] document_identifiers
1389
+ # The names of the SSM documents.
1390
+ # @return [Array<Types::DocumentIdentifier>]
1391
+ #
1392
+ # @!attribute [rw] next_token
1393
+ # The token to use when requesting the next set of items. If there are
1394
+ # no additional items to return, the string is empty.
1395
+ # @return [String]
1396
+ class ListDocumentsResult < Struct.new(
1397
+ :document_identifiers,
1398
+ :next_token)
1399
+ include Aws::Structure
1400
+ end
1401
+
1402
+ # @note When making an API call, pass ListTagsForResourceRequest
1403
+ # data as a hash:
1404
+ #
1405
+ # {
1406
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance
1407
+ # resource_id: "ResourceId", # required
1408
+ # }
1409
+ # @!attribute [rw] resource_type
1410
+ # Returns a list of tags for a specific resource type.
1411
+ # @return [String]
1412
+ #
1413
+ # @!attribute [rw] resource_id
1414
+ # The resource ID for which you want to see a list of tags.
1415
+ # @return [String]
1416
+ class ListTagsForResourceRequest < Struct.new(
1417
+ :resource_type,
1418
+ :resource_id)
1419
+ include Aws::Structure
1420
+ end
1421
+
1422
+ # @!attribute [rw] tag_list
1423
+ # A list of tags.
1424
+ # @return [Array<Types::Tag>]
1425
+ class ListTagsForResourceResult < Struct.new(
1426
+ :tag_list)
1427
+ include Aws::Structure
1428
+ end
1429
+
1430
+ # @note When making an API call, pass ModifyDocumentPermissionRequest
1431
+ # data as a hash:
1432
+ #
1433
+ # {
1434
+ # name: "DocumentName", # required
1435
+ # permission_type: "Share", # required, accepts Share
1436
+ # account_ids_to_add: ["AccountId"],
1437
+ # account_ids_to_remove: ["AccountId"],
1438
+ # }
1439
+ # @!attribute [rw] name
1440
+ # The name of the document that you want to share.
1441
+ # @return [String]
1442
+ #
1443
+ # @!attribute [rw] permission_type
1444
+ # The permission type for the document. The permission type can be
1445
+ # *Share*.
1446
+ # @return [String]
1447
+ #
1448
+ # @!attribute [rw] account_ids_to_add
1449
+ # The AWS user accounts that should have access to the document. The
1450
+ # account IDs can either be a group of account IDs or *All*.
1451
+ # @return [Array<String>]
1452
+ #
1453
+ # @!attribute [rw] account_ids_to_remove
1454
+ # The AWS user accounts that should no longer have access to the
1455
+ # document. The AWS user account can either be a group of account IDs
1456
+ # or *All*. This action has a higher priority than *AccountIdsToAdd*.
1457
+ # If you specify an account ID to add and the same ID to remove, the
1458
+ # system removes access to the document.
1459
+ # @return [Array<String>]
1460
+ class ModifyDocumentPermissionRequest < Struct.new(
1461
+ :name,
1462
+ :permission_type,
1463
+ :account_ids_to_add,
1464
+ :account_ids_to_remove)
1465
+ include Aws::Structure
1466
+ end
1467
+
1468
+ class ModifyDocumentPermissionResponse < Aws::EmptyStructure; end
1469
+
1470
+ # Configurations for sending notifications.
1471
+ # @note When making an API call, pass NotificationConfig
1472
+ # data as a hash:
1473
+ #
1474
+ # {
1475
+ # notification_arn: "NotificationArn",
1476
+ # notification_events: ["All"], # accepts All, InProgress, Success, TimedOut, Cancelled, Failed
1477
+ # notification_type: "Command", # accepts Command, Invocation
1478
+ # }
1479
+ # @!attribute [rw] notification_arn
1480
+ # An Amazon Resource Name (ARN) for a Simple Notification Service
1481
+ # (SNS) topic. SSM pushes notifications about command status changes
1482
+ # to this topic.
1483
+ # @return [String]
1484
+ #
1485
+ # @!attribute [rw] notification_events
1486
+ # The different events for which you can receive notifications. These
1487
+ # events include the following: All (events), InProgress, Success,
1488
+ # TimedOut, Cancelled, Failed. To learn more about these events, see
1489
+ # [Monitoring Commands][1] in the <i>Amazon Elastic Compute Cloud User
1490
+ # Guide </i>.
1491
+ #
1492
+ #
1493
+ #
1494
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-commands.html
1495
+ # @return [Array<String>]
1496
+ #
1497
+ # @!attribute [rw] notification_type
1498
+ # Command: Receive notification when the status of a command changes.
1499
+ # Invocation: For commands sent to multiple instances, receive
1500
+ # notification on a per-instance basis when the status of a command
1501
+ # changes.
1502
+ # @return [String]
1503
+ class NotificationConfig < Struct.new(
1504
+ :notification_arn,
1505
+ :notification_events,
1506
+ :notification_type)
1507
+ include Aws::Structure
1508
+ end
1509
+
1510
+ # @note When making an API call, pass RemoveTagsFromResourceRequest
1511
+ # data as a hash:
1512
+ #
1513
+ # {
1514
+ # resource_type: "ManagedInstance", # required, accepts ManagedInstance
1515
+ # resource_id: "ResourceId", # required
1516
+ # tag_keys: ["TagKey"], # required
1517
+ # }
1518
+ # @!attribute [rw] resource_type
1519
+ # The type of resource of which you want to remove a tag.
1520
+ # @return [String]
1521
+ #
1522
+ # @!attribute [rw] resource_id
1523
+ # The resource ID for which you want to remove tags.
1524
+ # @return [String]
1525
+ #
1526
+ # @!attribute [rw] tag_keys
1527
+ # Tag keys that you want to remove from the specified resource.
1528
+ # @return [Array<String>]
1529
+ class RemoveTagsFromResourceRequest < Struct.new(
1530
+ :resource_type,
1531
+ :resource_id,
1532
+ :tag_keys)
1533
+ include Aws::Structure
1534
+ end
1535
+
1536
+ class RemoveTagsFromResourceResult < Aws::EmptyStructure; end
1537
+
1538
+ # @note When making an API call, pass SendCommandRequest
1539
+ # data as a hash:
1540
+ #
1541
+ # {
1542
+ # instance_ids: ["InstanceId"], # required
1543
+ # document_name: "DocumentARN", # required
1544
+ # document_hash: "DocumentHash",
1545
+ # document_hash_type: "Sha256", # accepts Sha256, Sha1
1546
+ # timeout_seconds: 1,
1547
+ # comment: "Comment",
1548
+ # parameters: {
1549
+ # "ParameterName" => ["ParameterValue"],
1550
+ # },
1551
+ # output_s3_bucket_name: "S3BucketName",
1552
+ # output_s3_key_prefix: "S3KeyPrefix",
1553
+ # service_role_arn: "ServiceRole",
1554
+ # notification_config: {
1555
+ # notification_arn: "NotificationArn",
1556
+ # notification_events: ["All"], # accepts All, InProgress, Success, TimedOut, Cancelled, Failed
1557
+ # notification_type: "Command", # accepts Command, Invocation
1558
+ # },
1559
+ # }
1560
+ # @!attribute [rw] instance_ids
1561
+ # Required. The instance IDs where the command should execute. You can
1562
+ # specify a maximum of 50 IDs.
1563
+ # @return [Array<String>]
1564
+ #
1565
+ # @!attribute [rw] document_name
1566
+ # Required. The name of the SSM document to execute. This can be an
1567
+ # SSM public document or a custom document.
1568
+ # @return [String]
1569
+ #
1570
+ # @!attribute [rw] document_hash
1571
+ # The Sha256 or Sha1 hash created by the system when the document was
1572
+ # created.
1573
+ #
1574
+ # <note markdown="1"> Sha1 hashes have been deprecated.
1575
+ #
1576
+ # </note>
1577
+ # @return [String]
1578
+ #
1579
+ # @!attribute [rw] document_hash_type
1580
+ # Sha256 or Sha1.
1581
+ #
1582
+ # <note markdown="1"> Sha1 hashes have been deprecated.
1583
+ #
1584
+ # </note>
1585
+ # @return [String]
1586
+ #
1587
+ # @!attribute [rw] timeout_seconds
1588
+ # If this time is reached and the command has not already started
1589
+ # executing, it will not execute.
1590
+ # @return [Integer]
1591
+ #
1592
+ # @!attribute [rw] comment
1593
+ # User-specified information about the command, such as a brief
1594
+ # description of what the command should do.
1595
+ # @return [String]
1596
+ #
1597
+ # @!attribute [rw] parameters
1598
+ # The required and optional parameters specified in the SSM document
1599
+ # being executed.
1600
+ # @return [Hash<String,Array<String>>]
1601
+ #
1602
+ # @!attribute [rw] output_s3_bucket_name
1603
+ # The name of the S3 bucket where command execution responses should
1604
+ # be stored.
1605
+ # @return [String]
1606
+ #
1607
+ # @!attribute [rw] output_s3_key_prefix
1608
+ # The directory structure within the S3 bucket where the responses
1609
+ # should be stored.
1610
+ # @return [String]
1611
+ #
1612
+ # @!attribute [rw] service_role_arn
1613
+ # The IAM role that SSM uses to send notifications.
1614
+ # @return [String]
1615
+ #
1616
+ # @!attribute [rw] notification_config
1617
+ # Configurations for sending notifications.
1618
+ # @return [Types::NotificationConfig]
1619
+ class SendCommandRequest < Struct.new(
1620
+ :instance_ids,
1621
+ :document_name,
1622
+ :document_hash,
1623
+ :document_hash_type,
1624
+ :timeout_seconds,
1625
+ :comment,
1626
+ :parameters,
1627
+ :output_s3_bucket_name,
1628
+ :output_s3_key_prefix,
1629
+ :service_role_arn,
1630
+ :notification_config)
1631
+ include Aws::Structure
1632
+ end
1633
+
1634
+ # @!attribute [rw] command
1635
+ # The request as it was received by SSM. Also provides the command ID
1636
+ # which can be used future references to this request.
1637
+ # @return [Types::Command]
1638
+ class SendCommandResult < Struct.new(
1639
+ :command)
1640
+ include Aws::Structure
1641
+ end
1642
+
1643
+ # Metadata that you assign to your managed instances. Tags enable you to
1644
+ # categorize your managed instances in different ways, for example, by
1645
+ # purpose, owner, or environment.
1646
+ # @note When making an API call, pass Tag
1647
+ # data as a hash:
1648
+ #
1649
+ # {
1650
+ # key: "TagKey", # required
1651
+ # value: "TagValue", # required
1652
+ # }
1653
+ # @!attribute [rw] key
1654
+ # The name of the tag.
1655
+ # @return [String]
1656
+ #
1657
+ # @!attribute [rw] value
1658
+ # The value of the tag.
1659
+ # @return [String]
1660
+ class Tag < Struct.new(
1661
+ :key,
1662
+ :value)
1663
+ include Aws::Structure
1664
+ end
1665
+
1666
+ # @note When making an API call, pass UpdateAssociationStatusRequest
1667
+ # data as a hash:
1668
+ #
1669
+ # {
1670
+ # name: "DocumentName", # required
1671
+ # instance_id: "InstanceId", # required
1672
+ # association_status: { # required
1673
+ # date: Time.now, # required
1674
+ # name: "Pending", # required, accepts Pending, Success, Failed
1675
+ # message: "StatusMessage", # required
1676
+ # additional_info: "StatusAdditionalInfo",
1677
+ # },
1678
+ # }
1679
+ # @!attribute [rw] name
1680
+ # The name of the SSM document.
1681
+ # @return [String]
1682
+ #
1683
+ # @!attribute [rw] instance_id
1684
+ # The ID of the instance.
1685
+ # @return [String]
1686
+ #
1687
+ # @!attribute [rw] association_status
1688
+ # The association status.
1689
+ # @return [Types::AssociationStatus]
1690
+ class UpdateAssociationStatusRequest < Struct.new(
1691
+ :name,
1692
+ :instance_id,
1693
+ :association_status)
1694
+ include Aws::Structure
1695
+ end
1696
+
1697
+ # @!attribute [rw] association_description
1698
+ # Information about the association.
1699
+ # @return [Types::AssociationDescription]
1700
+ class UpdateAssociationStatusResult < Struct.new(
1701
+ :association_description)
1702
+ include Aws::Structure
1703
+ end
1704
+
1705
+ # @note When making an API call, pass UpdateManagedInstanceRoleRequest
1706
+ # data as a hash:
1707
+ #
1708
+ # {
1709
+ # instance_id: "ManagedInstanceId", # required
1710
+ # iam_role: "IamRole", # required
1711
+ # }
1712
+ # @!attribute [rw] instance_id
1713
+ # The ID of the managed instance where you want to update the role.
1714
+ # @return [String]
1715
+ #
1716
+ # @!attribute [rw] iam_role
1717
+ # The IAM role you want to assign or change.
1718
+ # @return [String]
1719
+ class UpdateManagedInstanceRoleRequest < Struct.new(
1720
+ :instance_id,
1721
+ :iam_role)
1722
+ include Aws::Structure
1723
+ end
1724
+
1725
+ class UpdateManagedInstanceRoleResult < Aws::EmptyStructure; end
1726
+
1727
+ end
1728
+ end
1729
+ end