1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package ssm
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
14)
15
16const opAddTagsToResource = "AddTagsToResource"
17
18// AddTagsToResourceRequest generates a "aws/request.Request" representing the
19// client's request for the AddTagsToResource operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See AddTagsToResource for more information on using the AddTagsToResource
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the AddTagsToResourceRequest method.
34//    req, resp := client.AddTagsToResourceRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AddTagsToResource
42func (c *SSM) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *request.Request, output *AddTagsToResourceOutput) {
43	op := &request.Operation{
44		Name:       opAddTagsToResource,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &AddTagsToResourceInput{}
51	}
52
53	output = &AddTagsToResourceOutput{}
54	req = c.newRequest(op, input, output)
55	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
56	return
57}
58
59// AddTagsToResource API operation for Amazon Simple Systems Manager (SSM).
60//
61// Adds or overwrites one or more tags for the specified resource. Tags are
62// metadata that you can assign to your documents, managed instances, maintenance
63// windows, Parameter Store parameters, and patch baselines. Tags enable you
64// to categorize your resources in different ways, for example, by purpose,
65// owner, or environment. Each tag consists of a key and an optional value,
66// both of which you define. For example, you could define a set of tags for
67// your account's managed instances that helps you track each instance's owner
68// and stack level. For example:
69//
70//    * Key=Owner,Value=DbAdmin
71//
72//    * Key=Owner,Value=SysAdmin
73//
74//    * Key=Owner,Value=Dev
75//
76//    * Key=Stack,Value=Production
77//
78//    * Key=Stack,Value=Pre-Production
79//
80//    * Key=Stack,Value=Test
81//
82// Each resource can have a maximum of 50 tags.
83//
84// We recommend that you devise a set of tag keys that meets your needs for
85// each resource type. Using a consistent set of tag keys makes it easier for
86// you to manage your resources. You can search and filter the resources based
87// on the tags you add. Tags don't have any semantic meaning to and are interpreted
88// strictly as a string of characters.
89//
90// For more information about using tags with Amazon Elastic Compute Cloud (Amazon
91// EC2) instances, see Tagging your Amazon EC2 resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html)
92// in the Amazon EC2 User Guide.
93//
94// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
95// with awserr.Error's Code and Message methods to get detailed information about
96// the error.
97//
98// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
99// API operation AddTagsToResource for usage and error information.
100//
101// Returned Error Types:
102//   * InvalidResourceType
103//   The resource type isn't valid. For example, if you are attempting to tag
104//   an instance, the instance must be a registered, managed instance.
105//
106//   * InvalidResourceId
107//   The resource ID isn't valid. Verify that you entered the correct ID and try
108//   again.
109//
110//   * InternalServerError
111//   An error occurred on the server side.
112//
113//   * TooManyTagsError
114//   The Targets parameter includes too many tags. Remove one or more tags and
115//   try the command again.
116//
117//   * TooManyUpdates
118//   There are concurrent updates for a resource that supports one update at a
119//   time.
120//
121// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AddTagsToResource
122func (c *SSM) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) {
123	req, out := c.AddTagsToResourceRequest(input)
124	return out, req.Send()
125}
126
127// AddTagsToResourceWithContext is the same as AddTagsToResource with the addition of
128// the ability to pass a context and additional request options.
129//
130// See AddTagsToResource for details on how to use this API operation.
131//
132// The context must be non-nil and will be used for request cancellation. If
133// the context is nil a panic will occur. In the future the SDK may create
134// sub-contexts for http.Requests. See https://golang.org/pkg/context/
135// for more information on using Contexts.
136func (c *SSM) AddTagsToResourceWithContext(ctx aws.Context, input *AddTagsToResourceInput, opts ...request.Option) (*AddTagsToResourceOutput, error) {
137	req, out := c.AddTagsToResourceRequest(input)
138	req.SetContext(ctx)
139	req.ApplyOptions(opts...)
140	return out, req.Send()
141}
142
143const opAssociateOpsItemRelatedItem = "AssociateOpsItemRelatedItem"
144
145// AssociateOpsItemRelatedItemRequest generates a "aws/request.Request" representing the
146// client's request for the AssociateOpsItemRelatedItem operation. The "output" return
147// value will be populated with the request's response once the request completes
148// successfully.
149//
150// Use "Send" method on the returned Request to send the API call to the service.
151// the "output" return value is not valid until after Send returns without error.
152//
153// See AssociateOpsItemRelatedItem for more information on using the AssociateOpsItemRelatedItem
154// API call, and error handling.
155//
156// This method is useful when you want to inject custom logic or configuration
157// into the SDK's request lifecycle. Such as custom headers, or retry logic.
158//
159//
160//    // Example sending a request using the AssociateOpsItemRelatedItemRequest method.
161//    req, resp := client.AssociateOpsItemRelatedItemRequest(params)
162//
163//    err := req.Send()
164//    if err == nil { // resp is now filled
165//        fmt.Println(resp)
166//    }
167//
168// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AssociateOpsItemRelatedItem
169func (c *SSM) AssociateOpsItemRelatedItemRequest(input *AssociateOpsItemRelatedItemInput) (req *request.Request, output *AssociateOpsItemRelatedItemOutput) {
170	op := &request.Operation{
171		Name:       opAssociateOpsItemRelatedItem,
172		HTTPMethod: "POST",
173		HTTPPath:   "/",
174	}
175
176	if input == nil {
177		input = &AssociateOpsItemRelatedItemInput{}
178	}
179
180	output = &AssociateOpsItemRelatedItemOutput{}
181	req = c.newRequest(op, input, output)
182	return
183}
184
185// AssociateOpsItemRelatedItem API operation for Amazon Simple Systems Manager (SSM).
186//
187// Associates a related resource to a Systems Manager OpsCenter OpsItem. For
188// example, you can associate an Incident Manager incident or analysis with
189// an OpsItem. Incident Manager is a capability of Amazon Web Services Systems
190// Manager.
191//
192// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
193// with awserr.Error's Code and Message methods to get detailed information about
194// the error.
195//
196// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
197// API operation AssociateOpsItemRelatedItem for usage and error information.
198//
199// Returned Error Types:
200//   * InternalServerError
201//   An error occurred on the server side.
202//
203//   * OpsItemNotFoundException
204//   The specified OpsItem ID doesn't exist. Verify the ID and try again.
205//
206//   * OpsItemLimitExceededException
207//   The request caused OpsItems to exceed one or more quotas. For information
208//   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
209//
210//   * OpsItemInvalidParameterException
211//   A specified parameter argument isn't valid. Verify the available arguments
212//   and try again.
213//
214//   * OpsItemRelatedItemAlreadyExistsException
215//   The Amazon Resource Name (ARN) is already associated with the OpsItem.
216//
217// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/AssociateOpsItemRelatedItem
218func (c *SSM) AssociateOpsItemRelatedItem(input *AssociateOpsItemRelatedItemInput) (*AssociateOpsItemRelatedItemOutput, error) {
219	req, out := c.AssociateOpsItemRelatedItemRequest(input)
220	return out, req.Send()
221}
222
223// AssociateOpsItemRelatedItemWithContext is the same as AssociateOpsItemRelatedItem with the addition of
224// the ability to pass a context and additional request options.
225//
226// See AssociateOpsItemRelatedItem for details on how to use this API operation.
227//
228// The context must be non-nil and will be used for request cancellation. If
229// the context is nil a panic will occur. In the future the SDK may create
230// sub-contexts for http.Requests. See https://golang.org/pkg/context/
231// for more information on using Contexts.
232func (c *SSM) AssociateOpsItemRelatedItemWithContext(ctx aws.Context, input *AssociateOpsItemRelatedItemInput, opts ...request.Option) (*AssociateOpsItemRelatedItemOutput, error) {
233	req, out := c.AssociateOpsItemRelatedItemRequest(input)
234	req.SetContext(ctx)
235	req.ApplyOptions(opts...)
236	return out, req.Send()
237}
238
239const opCancelCommand = "CancelCommand"
240
241// CancelCommandRequest generates a "aws/request.Request" representing the
242// client's request for the CancelCommand operation. The "output" return
243// value will be populated with the request's response once the request completes
244// successfully.
245//
246// Use "Send" method on the returned Request to send the API call to the service.
247// the "output" return value is not valid until after Send returns without error.
248//
249// See CancelCommand for more information on using the CancelCommand
250// API call, and error handling.
251//
252// This method is useful when you want to inject custom logic or configuration
253// into the SDK's request lifecycle. Such as custom headers, or retry logic.
254//
255//
256//    // Example sending a request using the CancelCommandRequest method.
257//    req, resp := client.CancelCommandRequest(params)
258//
259//    err := req.Send()
260//    if err == nil { // resp is now filled
261//        fmt.Println(resp)
262//    }
263//
264// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelCommand
265func (c *SSM) CancelCommandRequest(input *CancelCommandInput) (req *request.Request, output *CancelCommandOutput) {
266	op := &request.Operation{
267		Name:       opCancelCommand,
268		HTTPMethod: "POST",
269		HTTPPath:   "/",
270	}
271
272	if input == nil {
273		input = &CancelCommandInput{}
274	}
275
276	output = &CancelCommandOutput{}
277	req = c.newRequest(op, input, output)
278	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
279	return
280}
281
282// CancelCommand API operation for Amazon Simple Systems Manager (SSM).
283//
284// Attempts to cancel the command specified by the Command ID. There is no guarantee
285// that the command will be terminated and the underlying process stopped.
286//
287// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
288// with awserr.Error's Code and Message methods to get detailed information about
289// the error.
290//
291// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
292// API operation CancelCommand for usage and error information.
293//
294// Returned Error Types:
295//   * InternalServerError
296//   An error occurred on the server side.
297//
298//   * InvalidCommandId
299//   The specified command ID isn't valid. Verify the ID and try again.
300//
301//   * InvalidInstanceId
302//   The following problems can cause this exception:
303//
304//      * You don't have permission to access the instance.
305//
306//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
307//      Verify that SSM Agent is running.
308//
309//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
310//      Agent.
311//
312//      * The instance isn't in valid state. Valid states are: Running, Pending,
313//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
314//
315//   * DuplicateInstanceId
316//   You can't specify an instance ID in more than one association.
317//
318// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelCommand
319func (c *SSM) CancelCommand(input *CancelCommandInput) (*CancelCommandOutput, error) {
320	req, out := c.CancelCommandRequest(input)
321	return out, req.Send()
322}
323
324// CancelCommandWithContext is the same as CancelCommand with the addition of
325// the ability to pass a context and additional request options.
326//
327// See CancelCommand for details on how to use this API operation.
328//
329// The context must be non-nil and will be used for request cancellation. If
330// the context is nil a panic will occur. In the future the SDK may create
331// sub-contexts for http.Requests. See https://golang.org/pkg/context/
332// for more information on using Contexts.
333func (c *SSM) CancelCommandWithContext(ctx aws.Context, input *CancelCommandInput, opts ...request.Option) (*CancelCommandOutput, error) {
334	req, out := c.CancelCommandRequest(input)
335	req.SetContext(ctx)
336	req.ApplyOptions(opts...)
337	return out, req.Send()
338}
339
340const opCancelMaintenanceWindowExecution = "CancelMaintenanceWindowExecution"
341
342// CancelMaintenanceWindowExecutionRequest generates a "aws/request.Request" representing the
343// client's request for the CancelMaintenanceWindowExecution operation. The "output" return
344// value will be populated with the request's response once the request completes
345// successfully.
346//
347// Use "Send" method on the returned Request to send the API call to the service.
348// the "output" return value is not valid until after Send returns without error.
349//
350// See CancelMaintenanceWindowExecution for more information on using the CancelMaintenanceWindowExecution
351// API call, and error handling.
352//
353// This method is useful when you want to inject custom logic or configuration
354// into the SDK's request lifecycle. Such as custom headers, or retry logic.
355//
356//
357//    // Example sending a request using the CancelMaintenanceWindowExecutionRequest method.
358//    req, resp := client.CancelMaintenanceWindowExecutionRequest(params)
359//
360//    err := req.Send()
361//    if err == nil { // resp is now filled
362//        fmt.Println(resp)
363//    }
364//
365// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelMaintenanceWindowExecution
366func (c *SSM) CancelMaintenanceWindowExecutionRequest(input *CancelMaintenanceWindowExecutionInput) (req *request.Request, output *CancelMaintenanceWindowExecutionOutput) {
367	op := &request.Operation{
368		Name:       opCancelMaintenanceWindowExecution,
369		HTTPMethod: "POST",
370		HTTPPath:   "/",
371	}
372
373	if input == nil {
374		input = &CancelMaintenanceWindowExecutionInput{}
375	}
376
377	output = &CancelMaintenanceWindowExecutionOutput{}
378	req = c.newRequest(op, input, output)
379	return
380}
381
382// CancelMaintenanceWindowExecution API operation for Amazon Simple Systems Manager (SSM).
383//
384// Stops a maintenance window execution that is already in progress and cancels
385// any tasks in the window that haven't already starting running. Tasks already
386// in progress will continue to completion.
387//
388// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
389// with awserr.Error's Code and Message methods to get detailed information about
390// the error.
391//
392// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
393// API operation CancelMaintenanceWindowExecution for usage and error information.
394//
395// Returned Error Types:
396//   * InternalServerError
397//   An error occurred on the server side.
398//
399//   * DoesNotExistException
400//   Error returned when the ID specified for a resource, such as a maintenance
401//   window or patch baseline, doesn't exist.
402//
403//   For information about resource quotas in Amazon Web Services Systems Manager,
404//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
405//   in the Amazon Web Services General Reference.
406//
407// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CancelMaintenanceWindowExecution
408func (c *SSM) CancelMaintenanceWindowExecution(input *CancelMaintenanceWindowExecutionInput) (*CancelMaintenanceWindowExecutionOutput, error) {
409	req, out := c.CancelMaintenanceWindowExecutionRequest(input)
410	return out, req.Send()
411}
412
413// CancelMaintenanceWindowExecutionWithContext is the same as CancelMaintenanceWindowExecution with the addition of
414// the ability to pass a context and additional request options.
415//
416// See CancelMaintenanceWindowExecution for details on how to use this API operation.
417//
418// The context must be non-nil and will be used for request cancellation. If
419// the context is nil a panic will occur. In the future the SDK may create
420// sub-contexts for http.Requests. See https://golang.org/pkg/context/
421// for more information on using Contexts.
422func (c *SSM) CancelMaintenanceWindowExecutionWithContext(ctx aws.Context, input *CancelMaintenanceWindowExecutionInput, opts ...request.Option) (*CancelMaintenanceWindowExecutionOutput, error) {
423	req, out := c.CancelMaintenanceWindowExecutionRequest(input)
424	req.SetContext(ctx)
425	req.ApplyOptions(opts...)
426	return out, req.Send()
427}
428
429const opCreateActivation = "CreateActivation"
430
431// CreateActivationRequest generates a "aws/request.Request" representing the
432// client's request for the CreateActivation operation. The "output" return
433// value will be populated with the request's response once the request completes
434// successfully.
435//
436// Use "Send" method on the returned Request to send the API call to the service.
437// the "output" return value is not valid until after Send returns without error.
438//
439// See CreateActivation for more information on using the CreateActivation
440// API call, and error handling.
441//
442// This method is useful when you want to inject custom logic or configuration
443// into the SDK's request lifecycle. Such as custom headers, or retry logic.
444//
445//
446//    // Example sending a request using the CreateActivationRequest method.
447//    req, resp := client.CreateActivationRequest(params)
448//
449//    err := req.Send()
450//    if err == nil { // resp is now filled
451//        fmt.Println(resp)
452//    }
453//
454// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateActivation
455func (c *SSM) CreateActivationRequest(input *CreateActivationInput) (req *request.Request, output *CreateActivationOutput) {
456	op := &request.Operation{
457		Name:       opCreateActivation,
458		HTTPMethod: "POST",
459		HTTPPath:   "/",
460	}
461
462	if input == nil {
463		input = &CreateActivationInput{}
464	}
465
466	output = &CreateActivationOutput{}
467	req = c.newRequest(op, input, output)
468	return
469}
470
471// CreateActivation API operation for Amazon Simple Systems Manager (SSM).
472//
473// Generates an activation code and activation ID you can use to register your
474// on-premises server or virtual machine (VM) with Amazon Web Services Systems
475// Manager. Registering these machines with Systems Manager makes it possible
476// to manage them using Systems Manager capabilities. You use the activation
477// code and ID when installing SSM Agent on machines in your hybrid environment.
478// For more information about requirements for managing on-premises instances
479// and VMs using Systems Manager, see Setting up Amazon Web Services Systems
480// Manager for hybrid environments (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html)
481// in the Amazon Web Services Systems Manager User Guide.
482//
483// On-premises servers or VMs that are registered with Systems Manager and Amazon
484// Elastic Compute Cloud (Amazon EC2) instances that you manage with Systems
485// Manager are all called managed instances.
486//
487// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
488// with awserr.Error's Code and Message methods to get detailed information about
489// the error.
490//
491// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
492// API operation CreateActivation for usage and error information.
493//
494// Returned Error Types:
495//   * InternalServerError
496//   An error occurred on the server side.
497//
498// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateActivation
499func (c *SSM) CreateActivation(input *CreateActivationInput) (*CreateActivationOutput, error) {
500	req, out := c.CreateActivationRequest(input)
501	return out, req.Send()
502}
503
504// CreateActivationWithContext is the same as CreateActivation with the addition of
505// the ability to pass a context and additional request options.
506//
507// See CreateActivation for details on how to use this API operation.
508//
509// The context must be non-nil and will be used for request cancellation. If
510// the context is nil a panic will occur. In the future the SDK may create
511// sub-contexts for http.Requests. See https://golang.org/pkg/context/
512// for more information on using Contexts.
513func (c *SSM) CreateActivationWithContext(ctx aws.Context, input *CreateActivationInput, opts ...request.Option) (*CreateActivationOutput, error) {
514	req, out := c.CreateActivationRequest(input)
515	req.SetContext(ctx)
516	req.ApplyOptions(opts...)
517	return out, req.Send()
518}
519
520const opCreateAssociation = "CreateAssociation"
521
522// CreateAssociationRequest generates a "aws/request.Request" representing the
523// client's request for the CreateAssociation operation. The "output" return
524// value will be populated with the request's response once the request completes
525// successfully.
526//
527// Use "Send" method on the returned Request to send the API call to the service.
528// the "output" return value is not valid until after Send returns without error.
529//
530// See CreateAssociation for more information on using the CreateAssociation
531// API call, and error handling.
532//
533// This method is useful when you want to inject custom logic or configuration
534// into the SDK's request lifecycle. Such as custom headers, or retry logic.
535//
536//
537//    // Example sending a request using the CreateAssociationRequest method.
538//    req, resp := client.CreateAssociationRequest(params)
539//
540//    err := req.Send()
541//    if err == nil { // resp is now filled
542//        fmt.Println(resp)
543//    }
544//
545// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociation
546func (c *SSM) CreateAssociationRequest(input *CreateAssociationInput) (req *request.Request, output *CreateAssociationOutput) {
547	op := &request.Operation{
548		Name:       opCreateAssociation,
549		HTTPMethod: "POST",
550		HTTPPath:   "/",
551	}
552
553	if input == nil {
554		input = &CreateAssociationInput{}
555	}
556
557	output = &CreateAssociationOutput{}
558	req = c.newRequest(op, input, output)
559	return
560}
561
562// CreateAssociation API operation for Amazon Simple Systems Manager (SSM).
563//
564// A State Manager association defines the state that you want to maintain on
565// your instances. For example, an association can specify that anti-virus software
566// must be installed and running on your instances, or that certain ports must
567// be closed. For static targets, the association specifies a schedule for when
568// the configuration is reapplied. For dynamic targets, such as an Amazon Web
569// Services resource group or an Amazon Web Services autoscaling group, State
570// Manager, a capability of Amazon Web Services Systems Manager applies the
571// configuration when new instances are added to the group. The association
572// also specifies actions to take when applying the configuration. For example,
573// an association for anti-virus software might run once a day. If the software
574// isn't installed, then State Manager installs it. If the software is installed,
575// but the service isn't running, then the association might instruct State
576// Manager to start the service.
577//
578// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
579// with awserr.Error's Code and Message methods to get detailed information about
580// the error.
581//
582// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
583// API operation CreateAssociation for usage and error information.
584//
585// Returned Error Types:
586//   * AssociationAlreadyExists
587//   The specified association already exists.
588//
589//   * AssociationLimitExceeded
590//   You can have at most 2,000 active associations.
591//
592//   * InternalServerError
593//   An error occurred on the server side.
594//
595//   * InvalidDocument
596//   The specified SSM document doesn't exist.
597//
598//   * InvalidDocumentVersion
599//   The document version isn't valid or doesn't exist.
600//
601//   * InvalidInstanceId
602//   The following problems can cause this exception:
603//
604//      * You don't have permission to access the instance.
605//
606//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
607//      Verify that SSM Agent is running.
608//
609//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
610//      Agent.
611//
612//      * The instance isn't in valid state. Valid states are: Running, Pending,
613//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
614//
615//   * UnsupportedPlatformType
616//   The document doesn't support the platform type of the given instance ID(s).
617//   For example, you sent an document for a Windows instance to a Linux instance.
618//
619//   * InvalidOutputLocation
620//   The output location isn't valid or doesn't exist.
621//
622//   * InvalidParameters
623//   You must specify values for all required parameters in the Amazon Web Services
624//   Systems Manager document (SSM document). You can only supply values to parameters
625//   defined in the SSM document.
626//
627//   * InvalidTarget
628//   The target isn't valid or doesn't exist. It might not be configured for Systems
629//   Manager or you might not have permission to perform the operation.
630//
631//   * InvalidSchedule
632//   The schedule is invalid. Verify your cron or rate expression and try again.
633//
634// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociation
635func (c *SSM) CreateAssociation(input *CreateAssociationInput) (*CreateAssociationOutput, error) {
636	req, out := c.CreateAssociationRequest(input)
637	return out, req.Send()
638}
639
640// CreateAssociationWithContext is the same as CreateAssociation with the addition of
641// the ability to pass a context and additional request options.
642//
643// See CreateAssociation for details on how to use this API operation.
644//
645// The context must be non-nil and will be used for request cancellation. If
646// the context is nil a panic will occur. In the future the SDK may create
647// sub-contexts for http.Requests. See https://golang.org/pkg/context/
648// for more information on using Contexts.
649func (c *SSM) CreateAssociationWithContext(ctx aws.Context, input *CreateAssociationInput, opts ...request.Option) (*CreateAssociationOutput, error) {
650	req, out := c.CreateAssociationRequest(input)
651	req.SetContext(ctx)
652	req.ApplyOptions(opts...)
653	return out, req.Send()
654}
655
656const opCreateAssociationBatch = "CreateAssociationBatch"
657
658// CreateAssociationBatchRequest generates a "aws/request.Request" representing the
659// client's request for the CreateAssociationBatch operation. The "output" return
660// value will be populated with the request's response once the request completes
661// successfully.
662//
663// Use "Send" method on the returned Request to send the API call to the service.
664// the "output" return value is not valid until after Send returns without error.
665//
666// See CreateAssociationBatch for more information on using the CreateAssociationBatch
667// API call, and error handling.
668//
669// This method is useful when you want to inject custom logic or configuration
670// into the SDK's request lifecycle. Such as custom headers, or retry logic.
671//
672//
673//    // Example sending a request using the CreateAssociationBatchRequest method.
674//    req, resp := client.CreateAssociationBatchRequest(params)
675//
676//    err := req.Send()
677//    if err == nil { // resp is now filled
678//        fmt.Println(resp)
679//    }
680//
681// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociationBatch
682func (c *SSM) CreateAssociationBatchRequest(input *CreateAssociationBatchInput) (req *request.Request, output *CreateAssociationBatchOutput) {
683	op := &request.Operation{
684		Name:       opCreateAssociationBatch,
685		HTTPMethod: "POST",
686		HTTPPath:   "/",
687	}
688
689	if input == nil {
690		input = &CreateAssociationBatchInput{}
691	}
692
693	output = &CreateAssociationBatchOutput{}
694	req = c.newRequest(op, input, output)
695	return
696}
697
698// CreateAssociationBatch API operation for Amazon Simple Systems Manager (SSM).
699//
700// Associates the specified Amazon Web Services Systems Manager document (SSM
701// document) with the specified instances or targets.
702//
703// When you associate a document with one or more instances using instance IDs
704// or tags, Amazon Web Services Systems Manager Agent (SSM Agent) running on
705// the instance processes the document and configures the instance as specified.
706//
707// If you associate a document with an instance that already has an associated
708// document, the system returns the AssociationAlreadyExists exception.
709//
710// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
711// with awserr.Error's Code and Message methods to get detailed information about
712// the error.
713//
714// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
715// API operation CreateAssociationBatch for usage and error information.
716//
717// Returned Error Types:
718//   * InternalServerError
719//   An error occurred on the server side.
720//
721//   * InvalidDocument
722//   The specified SSM document doesn't exist.
723//
724//   * InvalidDocumentVersion
725//   The document version isn't valid or doesn't exist.
726//
727//   * InvalidInstanceId
728//   The following problems can cause this exception:
729//
730//      * You don't have permission to access the instance.
731//
732//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
733//      Verify that SSM Agent is running.
734//
735//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
736//      Agent.
737//
738//      * The instance isn't in valid state. Valid states are: Running, Pending,
739//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
740//
741//   * InvalidParameters
742//   You must specify values for all required parameters in the Amazon Web Services
743//   Systems Manager document (SSM document). You can only supply values to parameters
744//   defined in the SSM document.
745//
746//   * DuplicateInstanceId
747//   You can't specify an instance ID in more than one association.
748//
749//   * AssociationLimitExceeded
750//   You can have at most 2,000 active associations.
751//
752//   * UnsupportedPlatformType
753//   The document doesn't support the platform type of the given instance ID(s).
754//   For example, you sent an document for a Windows instance to a Linux instance.
755//
756//   * InvalidOutputLocation
757//   The output location isn't valid or doesn't exist.
758//
759//   * InvalidTarget
760//   The target isn't valid or doesn't exist. It might not be configured for Systems
761//   Manager or you might not have permission to perform the operation.
762//
763//   * InvalidSchedule
764//   The schedule is invalid. Verify your cron or rate expression and try again.
765//
766// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociationBatch
767func (c *SSM) CreateAssociationBatch(input *CreateAssociationBatchInput) (*CreateAssociationBatchOutput, error) {
768	req, out := c.CreateAssociationBatchRequest(input)
769	return out, req.Send()
770}
771
772// CreateAssociationBatchWithContext is the same as CreateAssociationBatch with the addition of
773// the ability to pass a context and additional request options.
774//
775// See CreateAssociationBatch for details on how to use this API operation.
776//
777// The context must be non-nil and will be used for request cancellation. If
778// the context is nil a panic will occur. In the future the SDK may create
779// sub-contexts for http.Requests. See https://golang.org/pkg/context/
780// for more information on using Contexts.
781func (c *SSM) CreateAssociationBatchWithContext(ctx aws.Context, input *CreateAssociationBatchInput, opts ...request.Option) (*CreateAssociationBatchOutput, error) {
782	req, out := c.CreateAssociationBatchRequest(input)
783	req.SetContext(ctx)
784	req.ApplyOptions(opts...)
785	return out, req.Send()
786}
787
788const opCreateDocument = "CreateDocument"
789
790// CreateDocumentRequest generates a "aws/request.Request" representing the
791// client's request for the CreateDocument operation. The "output" return
792// value will be populated with the request's response once the request completes
793// successfully.
794//
795// Use "Send" method on the returned Request to send the API call to the service.
796// the "output" return value is not valid until after Send returns without error.
797//
798// See CreateDocument for more information on using the CreateDocument
799// API call, and error handling.
800//
801// This method is useful when you want to inject custom logic or configuration
802// into the SDK's request lifecycle. Such as custom headers, or retry logic.
803//
804//
805//    // Example sending a request using the CreateDocumentRequest method.
806//    req, resp := client.CreateDocumentRequest(params)
807//
808//    err := req.Send()
809//    if err == nil { // resp is now filled
810//        fmt.Println(resp)
811//    }
812//
813// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateDocument
814func (c *SSM) CreateDocumentRequest(input *CreateDocumentInput) (req *request.Request, output *CreateDocumentOutput) {
815	op := &request.Operation{
816		Name:       opCreateDocument,
817		HTTPMethod: "POST",
818		HTTPPath:   "/",
819	}
820
821	if input == nil {
822		input = &CreateDocumentInput{}
823	}
824
825	output = &CreateDocumentOutput{}
826	req = c.newRequest(op, input, output)
827	return
828}
829
830// CreateDocument API operation for Amazon Simple Systems Manager (SSM).
831//
832// Creates a Amazon Web Services Systems Manager (SSM document). An SSM document
833// defines the actions that Systems Manager performs on your managed instances.
834// For more information about SSM documents, including information about supported
835// schemas, features, and syntax, see Amazon Web Services Systems Manager Documents
836// (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html)
837// in the Amazon Web Services Systems Manager User Guide.
838//
839// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
840// with awserr.Error's Code and Message methods to get detailed information about
841// the error.
842//
843// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
844// API operation CreateDocument for usage and error information.
845//
846// Returned Error Types:
847//   * DocumentAlreadyExists
848//   The specified document already exists.
849//
850//   * MaxDocumentSizeExceeded
851//   The size limit of a document is 64 KB.
852//
853//   * InternalServerError
854//   An error occurred on the server side.
855//
856//   * InvalidDocumentContent
857//   The content for the document isn't valid.
858//
859//   * DocumentLimitExceeded
860//   You can have at most 500 active SSM documents.
861//
862//   * InvalidDocumentSchemaVersion
863//   The version of the document schema isn't supported.
864//
865// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateDocument
866func (c *SSM) CreateDocument(input *CreateDocumentInput) (*CreateDocumentOutput, error) {
867	req, out := c.CreateDocumentRequest(input)
868	return out, req.Send()
869}
870
871// CreateDocumentWithContext is the same as CreateDocument with the addition of
872// the ability to pass a context and additional request options.
873//
874// See CreateDocument for details on how to use this API operation.
875//
876// The context must be non-nil and will be used for request cancellation. If
877// the context is nil a panic will occur. In the future the SDK may create
878// sub-contexts for http.Requests. See https://golang.org/pkg/context/
879// for more information on using Contexts.
880func (c *SSM) CreateDocumentWithContext(ctx aws.Context, input *CreateDocumentInput, opts ...request.Option) (*CreateDocumentOutput, error) {
881	req, out := c.CreateDocumentRequest(input)
882	req.SetContext(ctx)
883	req.ApplyOptions(opts...)
884	return out, req.Send()
885}
886
887const opCreateMaintenanceWindow = "CreateMaintenanceWindow"
888
889// CreateMaintenanceWindowRequest generates a "aws/request.Request" representing the
890// client's request for the CreateMaintenanceWindow operation. The "output" return
891// value will be populated with the request's response once the request completes
892// successfully.
893//
894// Use "Send" method on the returned Request to send the API call to the service.
895// the "output" return value is not valid until after Send returns without error.
896//
897// See CreateMaintenanceWindow for more information on using the CreateMaintenanceWindow
898// API call, and error handling.
899//
900// This method is useful when you want to inject custom logic or configuration
901// into the SDK's request lifecycle. Such as custom headers, or retry logic.
902//
903//
904//    // Example sending a request using the CreateMaintenanceWindowRequest method.
905//    req, resp := client.CreateMaintenanceWindowRequest(params)
906//
907//    err := req.Send()
908//    if err == nil { // resp is now filled
909//        fmt.Println(resp)
910//    }
911//
912// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateMaintenanceWindow
913func (c *SSM) CreateMaintenanceWindowRequest(input *CreateMaintenanceWindowInput) (req *request.Request, output *CreateMaintenanceWindowOutput) {
914	op := &request.Operation{
915		Name:       opCreateMaintenanceWindow,
916		HTTPMethod: "POST",
917		HTTPPath:   "/",
918	}
919
920	if input == nil {
921		input = &CreateMaintenanceWindowInput{}
922	}
923
924	output = &CreateMaintenanceWindowOutput{}
925	req = c.newRequest(op, input, output)
926	return
927}
928
929// CreateMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
930//
931// Creates a new maintenance window.
932//
933// The value you specify for Duration determines the specific end time for the
934// maintenance window based on the time it begins. No maintenance window tasks
935// are permitted to start after the resulting endtime minus the number of hours
936// you specify for Cutoff. For example, if the maintenance window starts at
937// 3 PM, the duration is three hours, and the value you specify for Cutoff is
938// one hour, no maintenance window tasks can start after 5 PM.
939//
940// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
941// with awserr.Error's Code and Message methods to get detailed information about
942// the error.
943//
944// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
945// API operation CreateMaintenanceWindow for usage and error information.
946//
947// Returned Error Types:
948//   * IdempotentParameterMismatch
949//   Error returned when an idempotent operation is retried and the parameters
950//   don't match the original call to the API with the same idempotency token.
951//
952//   * ResourceLimitExceededException
953//   Error returned when the caller has exceeded the default resource quotas.
954//   For example, too many maintenance windows or patch baselines have been created.
955//
956//   For information about resource quotas in Systems Manager, see Systems Manager
957//   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
958//   in the Amazon Web Services General Reference.
959//
960//   * InternalServerError
961//   An error occurred on the server side.
962//
963// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateMaintenanceWindow
964func (c *SSM) CreateMaintenanceWindow(input *CreateMaintenanceWindowInput) (*CreateMaintenanceWindowOutput, error) {
965	req, out := c.CreateMaintenanceWindowRequest(input)
966	return out, req.Send()
967}
968
969// CreateMaintenanceWindowWithContext is the same as CreateMaintenanceWindow with the addition of
970// the ability to pass a context and additional request options.
971//
972// See CreateMaintenanceWindow for details on how to use this API operation.
973//
974// The context must be non-nil and will be used for request cancellation. If
975// the context is nil a panic will occur. In the future the SDK may create
976// sub-contexts for http.Requests. See https://golang.org/pkg/context/
977// for more information on using Contexts.
978func (c *SSM) CreateMaintenanceWindowWithContext(ctx aws.Context, input *CreateMaintenanceWindowInput, opts ...request.Option) (*CreateMaintenanceWindowOutput, error) {
979	req, out := c.CreateMaintenanceWindowRequest(input)
980	req.SetContext(ctx)
981	req.ApplyOptions(opts...)
982	return out, req.Send()
983}
984
985const opCreateOpsItem = "CreateOpsItem"
986
987// CreateOpsItemRequest generates a "aws/request.Request" representing the
988// client's request for the CreateOpsItem operation. The "output" return
989// value will be populated with the request's response once the request completes
990// successfully.
991//
992// Use "Send" method on the returned Request to send the API call to the service.
993// the "output" return value is not valid until after Send returns without error.
994//
995// See CreateOpsItem for more information on using the CreateOpsItem
996// API call, and error handling.
997//
998// This method is useful when you want to inject custom logic or configuration
999// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1000//
1001//
1002//    // Example sending a request using the CreateOpsItemRequest method.
1003//    req, resp := client.CreateOpsItemRequest(params)
1004//
1005//    err := req.Send()
1006//    if err == nil { // resp is now filled
1007//        fmt.Println(resp)
1008//    }
1009//
1010// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsItem
1011func (c *SSM) CreateOpsItemRequest(input *CreateOpsItemInput) (req *request.Request, output *CreateOpsItemOutput) {
1012	op := &request.Operation{
1013		Name:       opCreateOpsItem,
1014		HTTPMethod: "POST",
1015		HTTPPath:   "/",
1016	}
1017
1018	if input == nil {
1019		input = &CreateOpsItemInput{}
1020	}
1021
1022	output = &CreateOpsItemOutput{}
1023	req = c.newRequest(op, input, output)
1024	return
1025}
1026
1027// CreateOpsItem API operation for Amazon Simple Systems Manager (SSM).
1028//
1029// Creates a new OpsItem. You must have permission in Identity and Access Management
1030// (IAM) to create a new OpsItem. For more information, see Getting started
1031// with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
1032// in the Amazon Web Services Systems Manager User Guide.
1033//
1034// Operations engineers and IT professionals use Amazon Web Services Systems
1035// Manager OpsCenter to view, investigate, and remediate operational issues
1036// impacting the performance and health of their Amazon Web Services resources.
1037// For more information, see Amazon Web Services Systems Manager OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
1038// in the Amazon Web Services Systems Manager User Guide.
1039//
1040// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1041// with awserr.Error's Code and Message methods to get detailed information about
1042// the error.
1043//
1044// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1045// API operation CreateOpsItem for usage and error information.
1046//
1047// Returned Error Types:
1048//   * InternalServerError
1049//   An error occurred on the server side.
1050//
1051//   * OpsItemAlreadyExistsException
1052//   The OpsItem already exists.
1053//
1054//   * OpsItemLimitExceededException
1055//   The request caused OpsItems to exceed one or more quotas. For information
1056//   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
1057//
1058//   * OpsItemInvalidParameterException
1059//   A specified parameter argument isn't valid. Verify the available arguments
1060//   and try again.
1061//
1062// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsItem
1063func (c *SSM) CreateOpsItem(input *CreateOpsItemInput) (*CreateOpsItemOutput, error) {
1064	req, out := c.CreateOpsItemRequest(input)
1065	return out, req.Send()
1066}
1067
1068// CreateOpsItemWithContext is the same as CreateOpsItem with the addition of
1069// the ability to pass a context and additional request options.
1070//
1071// See CreateOpsItem for details on how to use this API operation.
1072//
1073// The context must be non-nil and will be used for request cancellation. If
1074// the context is nil a panic will occur. In the future the SDK may create
1075// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1076// for more information on using Contexts.
1077func (c *SSM) CreateOpsItemWithContext(ctx aws.Context, input *CreateOpsItemInput, opts ...request.Option) (*CreateOpsItemOutput, error) {
1078	req, out := c.CreateOpsItemRequest(input)
1079	req.SetContext(ctx)
1080	req.ApplyOptions(opts...)
1081	return out, req.Send()
1082}
1083
1084const opCreateOpsMetadata = "CreateOpsMetadata"
1085
1086// CreateOpsMetadataRequest generates a "aws/request.Request" representing the
1087// client's request for the CreateOpsMetadata operation. The "output" return
1088// value will be populated with the request's response once the request completes
1089// successfully.
1090//
1091// Use "Send" method on the returned Request to send the API call to the service.
1092// the "output" return value is not valid until after Send returns without error.
1093//
1094// See CreateOpsMetadata for more information on using the CreateOpsMetadata
1095// API call, and error handling.
1096//
1097// This method is useful when you want to inject custom logic or configuration
1098// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1099//
1100//
1101//    // Example sending a request using the CreateOpsMetadataRequest method.
1102//    req, resp := client.CreateOpsMetadataRequest(params)
1103//
1104//    err := req.Send()
1105//    if err == nil { // resp is now filled
1106//        fmt.Println(resp)
1107//    }
1108//
1109// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsMetadata
1110func (c *SSM) CreateOpsMetadataRequest(input *CreateOpsMetadataInput) (req *request.Request, output *CreateOpsMetadataOutput) {
1111	op := &request.Operation{
1112		Name:       opCreateOpsMetadata,
1113		HTTPMethod: "POST",
1114		HTTPPath:   "/",
1115	}
1116
1117	if input == nil {
1118		input = &CreateOpsMetadataInput{}
1119	}
1120
1121	output = &CreateOpsMetadataOutput{}
1122	req = c.newRequest(op, input, output)
1123	return
1124}
1125
1126// CreateOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
1127//
1128// If you create a new application in Application Manager, Amazon Web Services
1129// Systems Manager calls this API operation to specify information about the
1130// new application, including the application type.
1131//
1132// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1133// with awserr.Error's Code and Message methods to get detailed information about
1134// the error.
1135//
1136// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1137// API operation CreateOpsMetadata for usage and error information.
1138//
1139// Returned Error Types:
1140//   * OpsMetadataAlreadyExistsException
1141//   An OpsMetadata object already exists for the selected resource.
1142//
1143//   * OpsMetadataTooManyUpdatesException
1144//   The system is processing too many concurrent updates. Wait a few moments
1145//   and try again.
1146//
1147//   * OpsMetadataInvalidArgumentException
1148//   One of the arguments passed is invalid.
1149//
1150//   * OpsMetadataLimitExceededException
1151//   Your account reached the maximum number of OpsMetadata objects allowed by
1152//   Application Manager. The maximum is 200 OpsMetadata objects. Delete one or
1153//   more OpsMetadata object and try again.
1154//
1155//   * InternalServerError
1156//   An error occurred on the server side.
1157//
1158// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsMetadata
1159func (c *SSM) CreateOpsMetadata(input *CreateOpsMetadataInput) (*CreateOpsMetadataOutput, error) {
1160	req, out := c.CreateOpsMetadataRequest(input)
1161	return out, req.Send()
1162}
1163
1164// CreateOpsMetadataWithContext is the same as CreateOpsMetadata with the addition of
1165// the ability to pass a context and additional request options.
1166//
1167// See CreateOpsMetadata for details on how to use this API operation.
1168//
1169// The context must be non-nil and will be used for request cancellation. If
1170// the context is nil a panic will occur. In the future the SDK may create
1171// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1172// for more information on using Contexts.
1173func (c *SSM) CreateOpsMetadataWithContext(ctx aws.Context, input *CreateOpsMetadataInput, opts ...request.Option) (*CreateOpsMetadataOutput, error) {
1174	req, out := c.CreateOpsMetadataRequest(input)
1175	req.SetContext(ctx)
1176	req.ApplyOptions(opts...)
1177	return out, req.Send()
1178}
1179
1180const opCreatePatchBaseline = "CreatePatchBaseline"
1181
1182// CreatePatchBaselineRequest generates a "aws/request.Request" representing the
1183// client's request for the CreatePatchBaseline operation. The "output" return
1184// value will be populated with the request's response once the request completes
1185// successfully.
1186//
1187// Use "Send" method on the returned Request to send the API call to the service.
1188// the "output" return value is not valid until after Send returns without error.
1189//
1190// See CreatePatchBaseline for more information on using the CreatePatchBaseline
1191// API call, and error handling.
1192//
1193// This method is useful when you want to inject custom logic or configuration
1194// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1195//
1196//
1197//    // Example sending a request using the CreatePatchBaselineRequest method.
1198//    req, resp := client.CreatePatchBaselineRequest(params)
1199//
1200//    err := req.Send()
1201//    if err == nil { // resp is now filled
1202//        fmt.Println(resp)
1203//    }
1204//
1205// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreatePatchBaseline
1206func (c *SSM) CreatePatchBaselineRequest(input *CreatePatchBaselineInput) (req *request.Request, output *CreatePatchBaselineOutput) {
1207	op := &request.Operation{
1208		Name:       opCreatePatchBaseline,
1209		HTTPMethod: "POST",
1210		HTTPPath:   "/",
1211	}
1212
1213	if input == nil {
1214		input = &CreatePatchBaselineInput{}
1215	}
1216
1217	output = &CreatePatchBaselineOutput{}
1218	req = c.newRequest(op, input, output)
1219	return
1220}
1221
1222// CreatePatchBaseline API operation for Amazon Simple Systems Manager (SSM).
1223//
1224// Creates a patch baseline.
1225//
1226// For information about valid key-value pairs in PatchFilters for each supported
1227// operating system type, see PatchFilter.
1228//
1229// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1230// with awserr.Error's Code and Message methods to get detailed information about
1231// the error.
1232//
1233// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1234// API operation CreatePatchBaseline for usage and error information.
1235//
1236// Returned Error Types:
1237//   * IdempotentParameterMismatch
1238//   Error returned when an idempotent operation is retried and the parameters
1239//   don't match the original call to the API with the same idempotency token.
1240//
1241//   * ResourceLimitExceededException
1242//   Error returned when the caller has exceeded the default resource quotas.
1243//   For example, too many maintenance windows or patch baselines have been created.
1244//
1245//   For information about resource quotas in Systems Manager, see Systems Manager
1246//   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
1247//   in the Amazon Web Services General Reference.
1248//
1249//   * InternalServerError
1250//   An error occurred on the server side.
1251//
1252// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreatePatchBaseline
1253func (c *SSM) CreatePatchBaseline(input *CreatePatchBaselineInput) (*CreatePatchBaselineOutput, error) {
1254	req, out := c.CreatePatchBaselineRequest(input)
1255	return out, req.Send()
1256}
1257
1258// CreatePatchBaselineWithContext is the same as CreatePatchBaseline with the addition of
1259// the ability to pass a context and additional request options.
1260//
1261// See CreatePatchBaseline for details on how to use this API operation.
1262//
1263// The context must be non-nil and will be used for request cancellation. If
1264// the context is nil a panic will occur. In the future the SDK may create
1265// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1266// for more information on using Contexts.
1267func (c *SSM) CreatePatchBaselineWithContext(ctx aws.Context, input *CreatePatchBaselineInput, opts ...request.Option) (*CreatePatchBaselineOutput, error) {
1268	req, out := c.CreatePatchBaselineRequest(input)
1269	req.SetContext(ctx)
1270	req.ApplyOptions(opts...)
1271	return out, req.Send()
1272}
1273
1274const opCreateResourceDataSync = "CreateResourceDataSync"
1275
1276// CreateResourceDataSyncRequest generates a "aws/request.Request" representing the
1277// client's request for the CreateResourceDataSync operation. The "output" return
1278// value will be populated with the request's response once the request completes
1279// successfully.
1280//
1281// Use "Send" method on the returned Request to send the API call to the service.
1282// the "output" return value is not valid until after Send returns without error.
1283//
1284// See CreateResourceDataSync for more information on using the CreateResourceDataSync
1285// API call, and error handling.
1286//
1287// This method is useful when you want to inject custom logic or configuration
1288// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1289//
1290//
1291//    // Example sending a request using the CreateResourceDataSyncRequest method.
1292//    req, resp := client.CreateResourceDataSyncRequest(params)
1293//
1294//    err := req.Send()
1295//    if err == nil { // resp is now filled
1296//        fmt.Println(resp)
1297//    }
1298//
1299// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateResourceDataSync
1300func (c *SSM) CreateResourceDataSyncRequest(input *CreateResourceDataSyncInput) (req *request.Request, output *CreateResourceDataSyncOutput) {
1301	op := &request.Operation{
1302		Name:       opCreateResourceDataSync,
1303		HTTPMethod: "POST",
1304		HTTPPath:   "/",
1305	}
1306
1307	if input == nil {
1308		input = &CreateResourceDataSyncInput{}
1309	}
1310
1311	output = &CreateResourceDataSyncOutput{}
1312	req = c.newRequest(op, input, output)
1313	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1314	return
1315}
1316
1317// CreateResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
1318//
1319// A resource data sync helps you view data from multiple sources in a single
1320// location. Amazon Web Services Systems Manager offers two types of resource
1321// data sync: SyncToDestination and SyncFromSource.
1322//
1323// You can configure Systems Manager Inventory to use the SyncToDestination
1324// type to synchronize Inventory data from multiple Amazon Web Services Regions
1325// to a single Amazon Simple Storage Service (Amazon S3) bucket. For more information,
1326// see Configuring resource data sync for Inventory (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-datasync.html)
1327// in the Amazon Web Services Systems Manager User Guide.
1328//
1329// You can configure Systems Manager Explorer to use the SyncFromSource type
1330// to synchronize operational work items (OpsItems) and operational data (OpsData)
1331// from multiple Amazon Web Services Regions to a single Amazon S3 bucket. This
1332// type can synchronize OpsItems and OpsData from multiple Amazon Web Services
1333// accounts and Amazon Web Services Regions or EntireOrganization by using Organizations.
1334// For more information, see Setting up Systems Manager Explorer to display
1335// data from multiple accounts and Regions (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resource-data-sync.html)
1336// in the Amazon Web Services Systems Manager User Guide.
1337//
1338// A resource data sync is an asynchronous operation that returns immediately.
1339// After a successful initial sync is completed, the system continuously syncs
1340// data. To check the status of a sync, use the ListResourceDataSync.
1341//
1342// By default, data isn't encrypted in Amazon S3. We strongly recommend that
1343// you enable encryption in Amazon S3 to ensure secure data storage. We also
1344// recommend that you secure access to the Amazon S3 bucket by creating a restrictive
1345// bucket policy.
1346//
1347// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1348// with awserr.Error's Code and Message methods to get detailed information about
1349// the error.
1350//
1351// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1352// API operation CreateResourceDataSync for usage and error information.
1353//
1354// Returned Error Types:
1355//   * InternalServerError
1356//   An error occurred on the server side.
1357//
1358//   * ResourceDataSyncCountExceededException
1359//   You have exceeded the allowed maximum sync configurations.
1360//
1361//   * ResourceDataSyncAlreadyExistsException
1362//   A sync configuration with the same name already exists.
1363//
1364//   * ResourceDataSyncInvalidConfigurationException
1365//   The specified sync configuration is invalid.
1366//
1367// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateResourceDataSync
1368func (c *SSM) CreateResourceDataSync(input *CreateResourceDataSyncInput) (*CreateResourceDataSyncOutput, error) {
1369	req, out := c.CreateResourceDataSyncRequest(input)
1370	return out, req.Send()
1371}
1372
1373// CreateResourceDataSyncWithContext is the same as CreateResourceDataSync with the addition of
1374// the ability to pass a context and additional request options.
1375//
1376// See CreateResourceDataSync for details on how to use this API operation.
1377//
1378// The context must be non-nil and will be used for request cancellation. If
1379// the context is nil a panic will occur. In the future the SDK may create
1380// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1381// for more information on using Contexts.
1382func (c *SSM) CreateResourceDataSyncWithContext(ctx aws.Context, input *CreateResourceDataSyncInput, opts ...request.Option) (*CreateResourceDataSyncOutput, error) {
1383	req, out := c.CreateResourceDataSyncRequest(input)
1384	req.SetContext(ctx)
1385	req.ApplyOptions(opts...)
1386	return out, req.Send()
1387}
1388
1389const opDeleteActivation = "DeleteActivation"
1390
1391// DeleteActivationRequest generates a "aws/request.Request" representing the
1392// client's request for the DeleteActivation operation. The "output" return
1393// value will be populated with the request's response once the request completes
1394// successfully.
1395//
1396// Use "Send" method on the returned Request to send the API call to the service.
1397// the "output" return value is not valid until after Send returns without error.
1398//
1399// See DeleteActivation for more information on using the DeleteActivation
1400// API call, and error handling.
1401//
1402// This method is useful when you want to inject custom logic or configuration
1403// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1404//
1405//
1406//    // Example sending a request using the DeleteActivationRequest method.
1407//    req, resp := client.DeleteActivationRequest(params)
1408//
1409//    err := req.Send()
1410//    if err == nil { // resp is now filled
1411//        fmt.Println(resp)
1412//    }
1413//
1414// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteActivation
1415func (c *SSM) DeleteActivationRequest(input *DeleteActivationInput) (req *request.Request, output *DeleteActivationOutput) {
1416	op := &request.Operation{
1417		Name:       opDeleteActivation,
1418		HTTPMethod: "POST",
1419		HTTPPath:   "/",
1420	}
1421
1422	if input == nil {
1423		input = &DeleteActivationInput{}
1424	}
1425
1426	output = &DeleteActivationOutput{}
1427	req = c.newRequest(op, input, output)
1428	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1429	return
1430}
1431
1432// DeleteActivation API operation for Amazon Simple Systems Manager (SSM).
1433//
1434// Deletes an activation. You aren't required to delete an activation. If you
1435// delete an activation, you can no longer use it to register additional managed
1436// instances. Deleting an activation doesn't de-register managed instances.
1437// You must manually de-register managed instances.
1438//
1439// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1440// with awserr.Error's Code and Message methods to get detailed information about
1441// the error.
1442//
1443// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1444// API operation DeleteActivation for usage and error information.
1445//
1446// Returned Error Types:
1447//   * InvalidActivationId
1448//   The activation ID isn't valid. Verify the you entered the correct ActivationId
1449//   or ActivationCode and try again.
1450//
1451//   * InvalidActivation
1452//   The activation isn't valid. The activation might have been deleted, or the
1453//   ActivationId and the ActivationCode don't match.
1454//
1455//   * InternalServerError
1456//   An error occurred on the server side.
1457//
1458//   * TooManyUpdates
1459//   There are concurrent updates for a resource that supports one update at a
1460//   time.
1461//
1462// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteActivation
1463func (c *SSM) DeleteActivation(input *DeleteActivationInput) (*DeleteActivationOutput, error) {
1464	req, out := c.DeleteActivationRequest(input)
1465	return out, req.Send()
1466}
1467
1468// DeleteActivationWithContext is the same as DeleteActivation with the addition of
1469// the ability to pass a context and additional request options.
1470//
1471// See DeleteActivation for details on how to use this API operation.
1472//
1473// The context must be non-nil and will be used for request cancellation. If
1474// the context is nil a panic will occur. In the future the SDK may create
1475// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1476// for more information on using Contexts.
1477func (c *SSM) DeleteActivationWithContext(ctx aws.Context, input *DeleteActivationInput, opts ...request.Option) (*DeleteActivationOutput, error) {
1478	req, out := c.DeleteActivationRequest(input)
1479	req.SetContext(ctx)
1480	req.ApplyOptions(opts...)
1481	return out, req.Send()
1482}
1483
1484const opDeleteAssociation = "DeleteAssociation"
1485
1486// DeleteAssociationRequest generates a "aws/request.Request" representing the
1487// client's request for the DeleteAssociation operation. The "output" return
1488// value will be populated with the request's response once the request completes
1489// successfully.
1490//
1491// Use "Send" method on the returned Request to send the API call to the service.
1492// the "output" return value is not valid until after Send returns without error.
1493//
1494// See DeleteAssociation for more information on using the DeleteAssociation
1495// API call, and error handling.
1496//
1497// This method is useful when you want to inject custom logic or configuration
1498// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1499//
1500//
1501//    // Example sending a request using the DeleteAssociationRequest method.
1502//    req, resp := client.DeleteAssociationRequest(params)
1503//
1504//    err := req.Send()
1505//    if err == nil { // resp is now filled
1506//        fmt.Println(resp)
1507//    }
1508//
1509// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteAssociation
1510func (c *SSM) DeleteAssociationRequest(input *DeleteAssociationInput) (req *request.Request, output *DeleteAssociationOutput) {
1511	op := &request.Operation{
1512		Name:       opDeleteAssociation,
1513		HTTPMethod: "POST",
1514		HTTPPath:   "/",
1515	}
1516
1517	if input == nil {
1518		input = &DeleteAssociationInput{}
1519	}
1520
1521	output = &DeleteAssociationOutput{}
1522	req = c.newRequest(op, input, output)
1523	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1524	return
1525}
1526
1527// DeleteAssociation API operation for Amazon Simple Systems Manager (SSM).
1528//
1529// Disassociates the specified Amazon Web Services Systems Manager document
1530// (SSM document) from the specified instance. If you created the association
1531// by using the Targets parameter, then you must delete the association by using
1532// the association ID.
1533//
1534// When you disassociate a document from an instance, it doesn't change the
1535// configuration of the instance. To change the configuration state of an instance
1536// after you disassociate a document, you must create a new document with the
1537// desired configuration and associate it with the instance.
1538//
1539// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1540// with awserr.Error's Code and Message methods to get detailed information about
1541// the error.
1542//
1543// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1544// API operation DeleteAssociation for usage and error information.
1545//
1546// Returned Error Types:
1547//   * AssociationDoesNotExist
1548//   The specified association doesn't exist.
1549//
1550//   * InternalServerError
1551//   An error occurred on the server side.
1552//
1553//   * InvalidDocument
1554//   The specified SSM document doesn't exist.
1555//
1556//   * InvalidInstanceId
1557//   The following problems can cause this exception:
1558//
1559//      * You don't have permission to access the instance.
1560//
1561//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
1562//      Verify that SSM Agent is running.
1563//
1564//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
1565//      Agent.
1566//
1567//      * The instance isn't in valid state. Valid states are: Running, Pending,
1568//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
1569//
1570//   * TooManyUpdates
1571//   There are concurrent updates for a resource that supports one update at a
1572//   time.
1573//
1574// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteAssociation
1575func (c *SSM) DeleteAssociation(input *DeleteAssociationInput) (*DeleteAssociationOutput, error) {
1576	req, out := c.DeleteAssociationRequest(input)
1577	return out, req.Send()
1578}
1579
1580// DeleteAssociationWithContext is the same as DeleteAssociation with the addition of
1581// the ability to pass a context and additional request options.
1582//
1583// See DeleteAssociation for details on how to use this API operation.
1584//
1585// The context must be non-nil and will be used for request cancellation. If
1586// the context is nil a panic will occur. In the future the SDK may create
1587// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1588// for more information on using Contexts.
1589func (c *SSM) DeleteAssociationWithContext(ctx aws.Context, input *DeleteAssociationInput, opts ...request.Option) (*DeleteAssociationOutput, error) {
1590	req, out := c.DeleteAssociationRequest(input)
1591	req.SetContext(ctx)
1592	req.ApplyOptions(opts...)
1593	return out, req.Send()
1594}
1595
1596const opDeleteDocument = "DeleteDocument"
1597
1598// DeleteDocumentRequest generates a "aws/request.Request" representing the
1599// client's request for the DeleteDocument operation. The "output" return
1600// value will be populated with the request's response once the request completes
1601// successfully.
1602//
1603// Use "Send" method on the returned Request to send the API call to the service.
1604// the "output" return value is not valid until after Send returns without error.
1605//
1606// See DeleteDocument for more information on using the DeleteDocument
1607// API call, and error handling.
1608//
1609// This method is useful when you want to inject custom logic or configuration
1610// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1611//
1612//
1613//    // Example sending a request using the DeleteDocumentRequest method.
1614//    req, resp := client.DeleteDocumentRequest(params)
1615//
1616//    err := req.Send()
1617//    if err == nil { // resp is now filled
1618//        fmt.Println(resp)
1619//    }
1620//
1621// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteDocument
1622func (c *SSM) DeleteDocumentRequest(input *DeleteDocumentInput) (req *request.Request, output *DeleteDocumentOutput) {
1623	op := &request.Operation{
1624		Name:       opDeleteDocument,
1625		HTTPMethod: "POST",
1626		HTTPPath:   "/",
1627	}
1628
1629	if input == nil {
1630		input = &DeleteDocumentInput{}
1631	}
1632
1633	output = &DeleteDocumentOutput{}
1634	req = c.newRequest(op, input, output)
1635	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1636	return
1637}
1638
1639// DeleteDocument API operation for Amazon Simple Systems Manager (SSM).
1640//
1641// Deletes the Amazon Web Services Systems Manager document (SSM document) and
1642// all instance associations to the document.
1643//
1644// Before you delete the document, we recommend that you use DeleteAssociation
1645// to disassociate all instances that are associated with the document.
1646//
1647// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1648// with awserr.Error's Code and Message methods to get detailed information about
1649// the error.
1650//
1651// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1652// API operation DeleteDocument for usage and error information.
1653//
1654// Returned Error Types:
1655//   * InternalServerError
1656//   An error occurred on the server side.
1657//
1658//   * InvalidDocument
1659//   The specified SSM document doesn't exist.
1660//
1661//   * InvalidDocumentOperation
1662//   You attempted to delete a document while it is still shared. You must stop
1663//   sharing the document before you can delete it.
1664//
1665//   * AssociatedInstances
1666//   You must disassociate a document from all instances before you can delete
1667//   it.
1668//
1669// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteDocument
1670func (c *SSM) DeleteDocument(input *DeleteDocumentInput) (*DeleteDocumentOutput, error) {
1671	req, out := c.DeleteDocumentRequest(input)
1672	return out, req.Send()
1673}
1674
1675// DeleteDocumentWithContext is the same as DeleteDocument with the addition of
1676// the ability to pass a context and additional request options.
1677//
1678// See DeleteDocument for details on how to use this API operation.
1679//
1680// The context must be non-nil and will be used for request cancellation. If
1681// the context is nil a panic will occur. In the future the SDK may create
1682// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1683// for more information on using Contexts.
1684func (c *SSM) DeleteDocumentWithContext(ctx aws.Context, input *DeleteDocumentInput, opts ...request.Option) (*DeleteDocumentOutput, error) {
1685	req, out := c.DeleteDocumentRequest(input)
1686	req.SetContext(ctx)
1687	req.ApplyOptions(opts...)
1688	return out, req.Send()
1689}
1690
1691const opDeleteInventory = "DeleteInventory"
1692
1693// DeleteInventoryRequest generates a "aws/request.Request" representing the
1694// client's request for the DeleteInventory operation. The "output" return
1695// value will be populated with the request's response once the request completes
1696// successfully.
1697//
1698// Use "Send" method on the returned Request to send the API call to the service.
1699// the "output" return value is not valid until after Send returns without error.
1700//
1701// See DeleteInventory for more information on using the DeleteInventory
1702// API call, and error handling.
1703//
1704// This method is useful when you want to inject custom logic or configuration
1705// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1706//
1707//
1708//    // Example sending a request using the DeleteInventoryRequest method.
1709//    req, resp := client.DeleteInventoryRequest(params)
1710//
1711//    err := req.Send()
1712//    if err == nil { // resp is now filled
1713//        fmt.Println(resp)
1714//    }
1715//
1716// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteInventory
1717func (c *SSM) DeleteInventoryRequest(input *DeleteInventoryInput) (req *request.Request, output *DeleteInventoryOutput) {
1718	op := &request.Operation{
1719		Name:       opDeleteInventory,
1720		HTTPMethod: "POST",
1721		HTTPPath:   "/",
1722	}
1723
1724	if input == nil {
1725		input = &DeleteInventoryInput{}
1726	}
1727
1728	output = &DeleteInventoryOutput{}
1729	req = c.newRequest(op, input, output)
1730	return
1731}
1732
1733// DeleteInventory API operation for Amazon Simple Systems Manager (SSM).
1734//
1735// Delete a custom inventory type or the data associated with a custom Inventory
1736// type. Deleting a custom inventory type is also referred to as deleting a
1737// custom inventory schema.
1738//
1739// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1740// with awserr.Error's Code and Message methods to get detailed information about
1741// the error.
1742//
1743// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1744// API operation DeleteInventory for usage and error information.
1745//
1746// Returned Error Types:
1747//   * InternalServerError
1748//   An error occurred on the server side.
1749//
1750//   * InvalidTypeNameException
1751//   The parameter type name isn't valid.
1752//
1753//   * InvalidOptionException
1754//   The delete inventory option specified isn't valid. Verify the option and
1755//   try again.
1756//
1757//   * InvalidDeleteInventoryParametersException
1758//   One or more of the parameters specified for the delete operation isn't valid.
1759//   Verify all parameters and try again.
1760//
1761//   * InvalidInventoryRequestException
1762//   The request isn't valid.
1763//
1764// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteInventory
1765func (c *SSM) DeleteInventory(input *DeleteInventoryInput) (*DeleteInventoryOutput, error) {
1766	req, out := c.DeleteInventoryRequest(input)
1767	return out, req.Send()
1768}
1769
1770// DeleteInventoryWithContext is the same as DeleteInventory with the addition of
1771// the ability to pass a context and additional request options.
1772//
1773// See DeleteInventory for details on how to use this API operation.
1774//
1775// The context must be non-nil and will be used for request cancellation. If
1776// the context is nil a panic will occur. In the future the SDK may create
1777// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1778// for more information on using Contexts.
1779func (c *SSM) DeleteInventoryWithContext(ctx aws.Context, input *DeleteInventoryInput, opts ...request.Option) (*DeleteInventoryOutput, error) {
1780	req, out := c.DeleteInventoryRequest(input)
1781	req.SetContext(ctx)
1782	req.ApplyOptions(opts...)
1783	return out, req.Send()
1784}
1785
1786const opDeleteMaintenanceWindow = "DeleteMaintenanceWindow"
1787
1788// DeleteMaintenanceWindowRequest generates a "aws/request.Request" representing the
1789// client's request for the DeleteMaintenanceWindow operation. The "output" return
1790// value will be populated with the request's response once the request completes
1791// successfully.
1792//
1793// Use "Send" method on the returned Request to send the API call to the service.
1794// the "output" return value is not valid until after Send returns without error.
1795//
1796// See DeleteMaintenanceWindow for more information on using the DeleteMaintenanceWindow
1797// API call, and error handling.
1798//
1799// This method is useful when you want to inject custom logic or configuration
1800// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1801//
1802//
1803//    // Example sending a request using the DeleteMaintenanceWindowRequest method.
1804//    req, resp := client.DeleteMaintenanceWindowRequest(params)
1805//
1806//    err := req.Send()
1807//    if err == nil { // resp is now filled
1808//        fmt.Println(resp)
1809//    }
1810//
1811// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteMaintenanceWindow
1812func (c *SSM) DeleteMaintenanceWindowRequest(input *DeleteMaintenanceWindowInput) (req *request.Request, output *DeleteMaintenanceWindowOutput) {
1813	op := &request.Operation{
1814		Name:       opDeleteMaintenanceWindow,
1815		HTTPMethod: "POST",
1816		HTTPPath:   "/",
1817	}
1818
1819	if input == nil {
1820		input = &DeleteMaintenanceWindowInput{}
1821	}
1822
1823	output = &DeleteMaintenanceWindowOutput{}
1824	req = c.newRequest(op, input, output)
1825	return
1826}
1827
1828// DeleteMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
1829//
1830// Deletes a maintenance window.
1831//
1832// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1833// with awserr.Error's Code and Message methods to get detailed information about
1834// the error.
1835//
1836// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1837// API operation DeleteMaintenanceWindow for usage and error information.
1838//
1839// Returned Error Types:
1840//   * InternalServerError
1841//   An error occurred on the server side.
1842//
1843// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteMaintenanceWindow
1844func (c *SSM) DeleteMaintenanceWindow(input *DeleteMaintenanceWindowInput) (*DeleteMaintenanceWindowOutput, error) {
1845	req, out := c.DeleteMaintenanceWindowRequest(input)
1846	return out, req.Send()
1847}
1848
1849// DeleteMaintenanceWindowWithContext is the same as DeleteMaintenanceWindow with the addition of
1850// the ability to pass a context and additional request options.
1851//
1852// See DeleteMaintenanceWindow for details on how to use this API operation.
1853//
1854// The context must be non-nil and will be used for request cancellation. If
1855// the context is nil a panic will occur. In the future the SDK may create
1856// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1857// for more information on using Contexts.
1858func (c *SSM) DeleteMaintenanceWindowWithContext(ctx aws.Context, input *DeleteMaintenanceWindowInput, opts ...request.Option) (*DeleteMaintenanceWindowOutput, error) {
1859	req, out := c.DeleteMaintenanceWindowRequest(input)
1860	req.SetContext(ctx)
1861	req.ApplyOptions(opts...)
1862	return out, req.Send()
1863}
1864
1865const opDeleteOpsMetadata = "DeleteOpsMetadata"
1866
1867// DeleteOpsMetadataRequest generates a "aws/request.Request" representing the
1868// client's request for the DeleteOpsMetadata operation. The "output" return
1869// value will be populated with the request's response once the request completes
1870// successfully.
1871//
1872// Use "Send" method on the returned Request to send the API call to the service.
1873// the "output" return value is not valid until after Send returns without error.
1874//
1875// See DeleteOpsMetadata for more information on using the DeleteOpsMetadata
1876// API call, and error handling.
1877//
1878// This method is useful when you want to inject custom logic or configuration
1879// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1880//
1881//
1882//    // Example sending a request using the DeleteOpsMetadataRequest method.
1883//    req, resp := client.DeleteOpsMetadataRequest(params)
1884//
1885//    err := req.Send()
1886//    if err == nil { // resp is now filled
1887//        fmt.Println(resp)
1888//    }
1889//
1890// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsMetadata
1891func (c *SSM) DeleteOpsMetadataRequest(input *DeleteOpsMetadataInput) (req *request.Request, output *DeleteOpsMetadataOutput) {
1892	op := &request.Operation{
1893		Name:       opDeleteOpsMetadata,
1894		HTTPMethod: "POST",
1895		HTTPPath:   "/",
1896	}
1897
1898	if input == nil {
1899		input = &DeleteOpsMetadataInput{}
1900	}
1901
1902	output = &DeleteOpsMetadataOutput{}
1903	req = c.newRequest(op, input, output)
1904	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1905	return
1906}
1907
1908// DeleteOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
1909//
1910// Delete OpsMetadata related to an application.
1911//
1912// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1913// with awserr.Error's Code and Message methods to get detailed information about
1914// the error.
1915//
1916// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
1917// API operation DeleteOpsMetadata for usage and error information.
1918//
1919// Returned Error Types:
1920//   * OpsMetadataNotFoundException
1921//   The OpsMetadata object doesn't exist.
1922//
1923//   * OpsMetadataInvalidArgumentException
1924//   One of the arguments passed is invalid.
1925//
1926//   * InternalServerError
1927//   An error occurred on the server side.
1928//
1929// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsMetadata
1930func (c *SSM) DeleteOpsMetadata(input *DeleteOpsMetadataInput) (*DeleteOpsMetadataOutput, error) {
1931	req, out := c.DeleteOpsMetadataRequest(input)
1932	return out, req.Send()
1933}
1934
1935// DeleteOpsMetadataWithContext is the same as DeleteOpsMetadata with the addition of
1936// the ability to pass a context and additional request options.
1937//
1938// See DeleteOpsMetadata for details on how to use this API operation.
1939//
1940// The context must be non-nil and will be used for request cancellation. If
1941// the context is nil a panic will occur. In the future the SDK may create
1942// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1943// for more information on using Contexts.
1944func (c *SSM) DeleteOpsMetadataWithContext(ctx aws.Context, input *DeleteOpsMetadataInput, opts ...request.Option) (*DeleteOpsMetadataOutput, error) {
1945	req, out := c.DeleteOpsMetadataRequest(input)
1946	req.SetContext(ctx)
1947	req.ApplyOptions(opts...)
1948	return out, req.Send()
1949}
1950
1951const opDeleteParameter = "DeleteParameter"
1952
1953// DeleteParameterRequest generates a "aws/request.Request" representing the
1954// client's request for the DeleteParameter operation. The "output" return
1955// value will be populated with the request's response once the request completes
1956// successfully.
1957//
1958// Use "Send" method on the returned Request to send the API call to the service.
1959// the "output" return value is not valid until after Send returns without error.
1960//
1961// See DeleteParameter for more information on using the DeleteParameter
1962// API call, and error handling.
1963//
1964// This method is useful when you want to inject custom logic or configuration
1965// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1966//
1967//
1968//    // Example sending a request using the DeleteParameterRequest method.
1969//    req, resp := client.DeleteParameterRequest(params)
1970//
1971//    err := req.Send()
1972//    if err == nil { // resp is now filled
1973//        fmt.Println(resp)
1974//    }
1975//
1976// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameter
1977func (c *SSM) DeleteParameterRequest(input *DeleteParameterInput) (req *request.Request, output *DeleteParameterOutput) {
1978	op := &request.Operation{
1979		Name:       opDeleteParameter,
1980		HTTPMethod: "POST",
1981		HTTPPath:   "/",
1982	}
1983
1984	if input == nil {
1985		input = &DeleteParameterInput{}
1986	}
1987
1988	output = &DeleteParameterOutput{}
1989	req = c.newRequest(op, input, output)
1990	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1991	return
1992}
1993
1994// DeleteParameter API operation for Amazon Simple Systems Manager (SSM).
1995//
1996// Delete a parameter from the system. After deleting a parameter, wait for
1997// at least 30 seconds to create a parameter with the same name.
1998//
1999// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2000// with awserr.Error's Code and Message methods to get detailed information about
2001// the error.
2002//
2003// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2004// API operation DeleteParameter for usage and error information.
2005//
2006// Returned Error Types:
2007//   * InternalServerError
2008//   An error occurred on the server side.
2009//
2010//   * ParameterNotFound
2011//   The parameter couldn't be found. Verify the name and try again.
2012//
2013// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameter
2014func (c *SSM) DeleteParameter(input *DeleteParameterInput) (*DeleteParameterOutput, error) {
2015	req, out := c.DeleteParameterRequest(input)
2016	return out, req.Send()
2017}
2018
2019// DeleteParameterWithContext is the same as DeleteParameter with the addition of
2020// the ability to pass a context and additional request options.
2021//
2022// See DeleteParameter for details on how to use this API operation.
2023//
2024// The context must be non-nil and will be used for request cancellation. If
2025// the context is nil a panic will occur. In the future the SDK may create
2026// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2027// for more information on using Contexts.
2028func (c *SSM) DeleteParameterWithContext(ctx aws.Context, input *DeleteParameterInput, opts ...request.Option) (*DeleteParameterOutput, error) {
2029	req, out := c.DeleteParameterRequest(input)
2030	req.SetContext(ctx)
2031	req.ApplyOptions(opts...)
2032	return out, req.Send()
2033}
2034
2035const opDeleteParameters = "DeleteParameters"
2036
2037// DeleteParametersRequest generates a "aws/request.Request" representing the
2038// client's request for the DeleteParameters operation. The "output" return
2039// value will be populated with the request's response once the request completes
2040// successfully.
2041//
2042// Use "Send" method on the returned Request to send the API call to the service.
2043// the "output" return value is not valid until after Send returns without error.
2044//
2045// See DeleteParameters for more information on using the DeleteParameters
2046// API call, and error handling.
2047//
2048// This method is useful when you want to inject custom logic or configuration
2049// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2050//
2051//
2052//    // Example sending a request using the DeleteParametersRequest method.
2053//    req, resp := client.DeleteParametersRequest(params)
2054//
2055//    err := req.Send()
2056//    if err == nil { // resp is now filled
2057//        fmt.Println(resp)
2058//    }
2059//
2060// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameters
2061func (c *SSM) DeleteParametersRequest(input *DeleteParametersInput) (req *request.Request, output *DeleteParametersOutput) {
2062	op := &request.Operation{
2063		Name:       opDeleteParameters,
2064		HTTPMethod: "POST",
2065		HTTPPath:   "/",
2066	}
2067
2068	if input == nil {
2069		input = &DeleteParametersInput{}
2070	}
2071
2072	output = &DeleteParametersOutput{}
2073	req = c.newRequest(op, input, output)
2074	return
2075}
2076
2077// DeleteParameters API operation for Amazon Simple Systems Manager (SSM).
2078//
2079// Delete a list of parameters. After deleting a parameter, wait for at least
2080// 30 seconds to create a parameter with the same name.
2081//
2082// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2083// with awserr.Error's Code and Message methods to get detailed information about
2084// the error.
2085//
2086// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2087// API operation DeleteParameters for usage and error information.
2088//
2089// Returned Error Types:
2090//   * InternalServerError
2091//   An error occurred on the server side.
2092//
2093// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteParameters
2094func (c *SSM) DeleteParameters(input *DeleteParametersInput) (*DeleteParametersOutput, error) {
2095	req, out := c.DeleteParametersRequest(input)
2096	return out, req.Send()
2097}
2098
2099// DeleteParametersWithContext is the same as DeleteParameters with the addition of
2100// the ability to pass a context and additional request options.
2101//
2102// See DeleteParameters for details on how to use this API operation.
2103//
2104// The context must be non-nil and will be used for request cancellation. If
2105// the context is nil a panic will occur. In the future the SDK may create
2106// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2107// for more information on using Contexts.
2108func (c *SSM) DeleteParametersWithContext(ctx aws.Context, input *DeleteParametersInput, opts ...request.Option) (*DeleteParametersOutput, error) {
2109	req, out := c.DeleteParametersRequest(input)
2110	req.SetContext(ctx)
2111	req.ApplyOptions(opts...)
2112	return out, req.Send()
2113}
2114
2115const opDeletePatchBaseline = "DeletePatchBaseline"
2116
2117// DeletePatchBaselineRequest generates a "aws/request.Request" representing the
2118// client's request for the DeletePatchBaseline operation. The "output" return
2119// value will be populated with the request's response once the request completes
2120// successfully.
2121//
2122// Use "Send" method on the returned Request to send the API call to the service.
2123// the "output" return value is not valid until after Send returns without error.
2124//
2125// See DeletePatchBaseline for more information on using the DeletePatchBaseline
2126// API call, and error handling.
2127//
2128// This method is useful when you want to inject custom logic or configuration
2129// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2130//
2131//
2132//    // Example sending a request using the DeletePatchBaselineRequest method.
2133//    req, resp := client.DeletePatchBaselineRequest(params)
2134//
2135//    err := req.Send()
2136//    if err == nil { // resp is now filled
2137//        fmt.Println(resp)
2138//    }
2139//
2140// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeletePatchBaseline
2141func (c *SSM) DeletePatchBaselineRequest(input *DeletePatchBaselineInput) (req *request.Request, output *DeletePatchBaselineOutput) {
2142	op := &request.Operation{
2143		Name:       opDeletePatchBaseline,
2144		HTTPMethod: "POST",
2145		HTTPPath:   "/",
2146	}
2147
2148	if input == nil {
2149		input = &DeletePatchBaselineInput{}
2150	}
2151
2152	output = &DeletePatchBaselineOutput{}
2153	req = c.newRequest(op, input, output)
2154	return
2155}
2156
2157// DeletePatchBaseline API operation for Amazon Simple Systems Manager (SSM).
2158//
2159// Deletes a patch baseline.
2160//
2161// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2162// with awserr.Error's Code and Message methods to get detailed information about
2163// the error.
2164//
2165// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2166// API operation DeletePatchBaseline for usage and error information.
2167//
2168// Returned Error Types:
2169//   * ResourceInUseException
2170//   Error returned if an attempt is made to delete a patch baseline that is registered
2171//   for a patch group.
2172//
2173//   * InternalServerError
2174//   An error occurred on the server side.
2175//
2176// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeletePatchBaseline
2177func (c *SSM) DeletePatchBaseline(input *DeletePatchBaselineInput) (*DeletePatchBaselineOutput, error) {
2178	req, out := c.DeletePatchBaselineRequest(input)
2179	return out, req.Send()
2180}
2181
2182// DeletePatchBaselineWithContext is the same as DeletePatchBaseline with the addition of
2183// the ability to pass a context and additional request options.
2184//
2185// See DeletePatchBaseline for details on how to use this API operation.
2186//
2187// The context must be non-nil and will be used for request cancellation. If
2188// the context is nil a panic will occur. In the future the SDK may create
2189// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2190// for more information on using Contexts.
2191func (c *SSM) DeletePatchBaselineWithContext(ctx aws.Context, input *DeletePatchBaselineInput, opts ...request.Option) (*DeletePatchBaselineOutput, error) {
2192	req, out := c.DeletePatchBaselineRequest(input)
2193	req.SetContext(ctx)
2194	req.ApplyOptions(opts...)
2195	return out, req.Send()
2196}
2197
2198const opDeleteResourceDataSync = "DeleteResourceDataSync"
2199
2200// DeleteResourceDataSyncRequest generates a "aws/request.Request" representing the
2201// client's request for the DeleteResourceDataSync operation. The "output" return
2202// value will be populated with the request's response once the request completes
2203// successfully.
2204//
2205// Use "Send" method on the returned Request to send the API call to the service.
2206// the "output" return value is not valid until after Send returns without error.
2207//
2208// See DeleteResourceDataSync for more information on using the DeleteResourceDataSync
2209// API call, and error handling.
2210//
2211// This method is useful when you want to inject custom logic or configuration
2212// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2213//
2214//
2215//    // Example sending a request using the DeleteResourceDataSyncRequest method.
2216//    req, resp := client.DeleteResourceDataSyncRequest(params)
2217//
2218//    err := req.Send()
2219//    if err == nil { // resp is now filled
2220//        fmt.Println(resp)
2221//    }
2222//
2223// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteResourceDataSync
2224func (c *SSM) DeleteResourceDataSyncRequest(input *DeleteResourceDataSyncInput) (req *request.Request, output *DeleteResourceDataSyncOutput) {
2225	op := &request.Operation{
2226		Name:       opDeleteResourceDataSync,
2227		HTTPMethod: "POST",
2228		HTTPPath:   "/",
2229	}
2230
2231	if input == nil {
2232		input = &DeleteResourceDataSyncInput{}
2233	}
2234
2235	output = &DeleteResourceDataSyncOutput{}
2236	req = c.newRequest(op, input, output)
2237	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2238	return
2239}
2240
2241// DeleteResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
2242//
2243// Deletes a resource data sync configuration. After the configuration is deleted,
2244// changes to data on managed instances are no longer synced to or from the
2245// target. Deleting a sync configuration doesn't delete data.
2246//
2247// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2248// with awserr.Error's Code and Message methods to get detailed information about
2249// the error.
2250//
2251// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2252// API operation DeleteResourceDataSync for usage and error information.
2253//
2254// Returned Error Types:
2255//   * InternalServerError
2256//   An error occurred on the server side.
2257//
2258//   * ResourceDataSyncNotFoundException
2259//   The specified sync name wasn't found.
2260//
2261//   * ResourceDataSyncInvalidConfigurationException
2262//   The specified sync configuration is invalid.
2263//
2264// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteResourceDataSync
2265func (c *SSM) DeleteResourceDataSync(input *DeleteResourceDataSyncInput) (*DeleteResourceDataSyncOutput, error) {
2266	req, out := c.DeleteResourceDataSyncRequest(input)
2267	return out, req.Send()
2268}
2269
2270// DeleteResourceDataSyncWithContext is the same as DeleteResourceDataSync with the addition of
2271// the ability to pass a context and additional request options.
2272//
2273// See DeleteResourceDataSync for details on how to use this API operation.
2274//
2275// The context must be non-nil and will be used for request cancellation. If
2276// the context is nil a panic will occur. In the future the SDK may create
2277// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2278// for more information on using Contexts.
2279func (c *SSM) DeleteResourceDataSyncWithContext(ctx aws.Context, input *DeleteResourceDataSyncInput, opts ...request.Option) (*DeleteResourceDataSyncOutput, error) {
2280	req, out := c.DeleteResourceDataSyncRequest(input)
2281	req.SetContext(ctx)
2282	req.ApplyOptions(opts...)
2283	return out, req.Send()
2284}
2285
2286const opDeregisterManagedInstance = "DeregisterManagedInstance"
2287
2288// DeregisterManagedInstanceRequest generates a "aws/request.Request" representing the
2289// client's request for the DeregisterManagedInstance operation. The "output" return
2290// value will be populated with the request's response once the request completes
2291// successfully.
2292//
2293// Use "Send" method on the returned Request to send the API call to the service.
2294// the "output" return value is not valid until after Send returns without error.
2295//
2296// See DeregisterManagedInstance for more information on using the DeregisterManagedInstance
2297// API call, and error handling.
2298//
2299// This method is useful when you want to inject custom logic or configuration
2300// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2301//
2302//
2303//    // Example sending a request using the DeregisterManagedInstanceRequest method.
2304//    req, resp := client.DeregisterManagedInstanceRequest(params)
2305//
2306//    err := req.Send()
2307//    if err == nil { // resp is now filled
2308//        fmt.Println(resp)
2309//    }
2310//
2311// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterManagedInstance
2312func (c *SSM) DeregisterManagedInstanceRequest(input *DeregisterManagedInstanceInput) (req *request.Request, output *DeregisterManagedInstanceOutput) {
2313	op := &request.Operation{
2314		Name:       opDeregisterManagedInstance,
2315		HTTPMethod: "POST",
2316		HTTPPath:   "/",
2317	}
2318
2319	if input == nil {
2320		input = &DeregisterManagedInstanceInput{}
2321	}
2322
2323	output = &DeregisterManagedInstanceOutput{}
2324	req = c.newRequest(op, input, output)
2325	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2326	return
2327}
2328
2329// DeregisterManagedInstance API operation for Amazon Simple Systems Manager (SSM).
2330//
2331// Removes the server or virtual machine from the list of registered servers.
2332// You can reregister the instance again at any time. If you don't plan to use
2333// Run Command on the server, we suggest uninstalling SSM Agent first.
2334//
2335// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2336// with awserr.Error's Code and Message methods to get detailed information about
2337// the error.
2338//
2339// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2340// API operation DeregisterManagedInstance for usage and error information.
2341//
2342// Returned Error Types:
2343//   * InvalidInstanceId
2344//   The following problems can cause this exception:
2345//
2346//      * You don't have permission to access the instance.
2347//
2348//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
2349//      Verify that SSM Agent is running.
2350//
2351//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
2352//      Agent.
2353//
2354//      * The instance isn't in valid state. Valid states are: Running, Pending,
2355//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
2356//
2357//   * InternalServerError
2358//   An error occurred on the server side.
2359//
2360// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterManagedInstance
2361func (c *SSM) DeregisterManagedInstance(input *DeregisterManagedInstanceInput) (*DeregisterManagedInstanceOutput, error) {
2362	req, out := c.DeregisterManagedInstanceRequest(input)
2363	return out, req.Send()
2364}
2365
2366// DeregisterManagedInstanceWithContext is the same as DeregisterManagedInstance with the addition of
2367// the ability to pass a context and additional request options.
2368//
2369// See DeregisterManagedInstance for details on how to use this API operation.
2370//
2371// The context must be non-nil and will be used for request cancellation. If
2372// the context is nil a panic will occur. In the future the SDK may create
2373// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2374// for more information on using Contexts.
2375func (c *SSM) DeregisterManagedInstanceWithContext(ctx aws.Context, input *DeregisterManagedInstanceInput, opts ...request.Option) (*DeregisterManagedInstanceOutput, error) {
2376	req, out := c.DeregisterManagedInstanceRequest(input)
2377	req.SetContext(ctx)
2378	req.ApplyOptions(opts...)
2379	return out, req.Send()
2380}
2381
2382const opDeregisterPatchBaselineForPatchGroup = "DeregisterPatchBaselineForPatchGroup"
2383
2384// DeregisterPatchBaselineForPatchGroupRequest generates a "aws/request.Request" representing the
2385// client's request for the DeregisterPatchBaselineForPatchGroup operation. The "output" return
2386// value will be populated with the request's response once the request completes
2387// successfully.
2388//
2389// Use "Send" method on the returned Request to send the API call to the service.
2390// the "output" return value is not valid until after Send returns without error.
2391//
2392// See DeregisterPatchBaselineForPatchGroup for more information on using the DeregisterPatchBaselineForPatchGroup
2393// API call, and error handling.
2394//
2395// This method is useful when you want to inject custom logic or configuration
2396// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2397//
2398//
2399//    // Example sending a request using the DeregisterPatchBaselineForPatchGroupRequest method.
2400//    req, resp := client.DeregisterPatchBaselineForPatchGroupRequest(params)
2401//
2402//    err := req.Send()
2403//    if err == nil { // resp is now filled
2404//        fmt.Println(resp)
2405//    }
2406//
2407// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterPatchBaselineForPatchGroup
2408func (c *SSM) DeregisterPatchBaselineForPatchGroupRequest(input *DeregisterPatchBaselineForPatchGroupInput) (req *request.Request, output *DeregisterPatchBaselineForPatchGroupOutput) {
2409	op := &request.Operation{
2410		Name:       opDeregisterPatchBaselineForPatchGroup,
2411		HTTPMethod: "POST",
2412		HTTPPath:   "/",
2413	}
2414
2415	if input == nil {
2416		input = &DeregisterPatchBaselineForPatchGroupInput{}
2417	}
2418
2419	output = &DeregisterPatchBaselineForPatchGroupOutput{}
2420	req = c.newRequest(op, input, output)
2421	return
2422}
2423
2424// DeregisterPatchBaselineForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
2425//
2426// Removes a patch group from a patch baseline.
2427//
2428// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2429// with awserr.Error's Code and Message methods to get detailed information about
2430// the error.
2431//
2432// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2433// API operation DeregisterPatchBaselineForPatchGroup for usage and error information.
2434//
2435// Returned Error Types:
2436//   * InvalidResourceId
2437//   The resource ID isn't valid. Verify that you entered the correct ID and try
2438//   again.
2439//
2440//   * InternalServerError
2441//   An error occurred on the server side.
2442//
2443// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterPatchBaselineForPatchGroup
2444func (c *SSM) DeregisterPatchBaselineForPatchGroup(input *DeregisterPatchBaselineForPatchGroupInput) (*DeregisterPatchBaselineForPatchGroupOutput, error) {
2445	req, out := c.DeregisterPatchBaselineForPatchGroupRequest(input)
2446	return out, req.Send()
2447}
2448
2449// DeregisterPatchBaselineForPatchGroupWithContext is the same as DeregisterPatchBaselineForPatchGroup with the addition of
2450// the ability to pass a context and additional request options.
2451//
2452// See DeregisterPatchBaselineForPatchGroup for details on how to use this API operation.
2453//
2454// The context must be non-nil and will be used for request cancellation. If
2455// the context is nil a panic will occur. In the future the SDK may create
2456// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2457// for more information on using Contexts.
2458func (c *SSM) DeregisterPatchBaselineForPatchGroupWithContext(ctx aws.Context, input *DeregisterPatchBaselineForPatchGroupInput, opts ...request.Option) (*DeregisterPatchBaselineForPatchGroupOutput, error) {
2459	req, out := c.DeregisterPatchBaselineForPatchGroupRequest(input)
2460	req.SetContext(ctx)
2461	req.ApplyOptions(opts...)
2462	return out, req.Send()
2463}
2464
2465const opDeregisterTargetFromMaintenanceWindow = "DeregisterTargetFromMaintenanceWindow"
2466
2467// DeregisterTargetFromMaintenanceWindowRequest generates a "aws/request.Request" representing the
2468// client's request for the DeregisterTargetFromMaintenanceWindow operation. The "output" return
2469// value will be populated with the request's response once the request completes
2470// successfully.
2471//
2472// Use "Send" method on the returned Request to send the API call to the service.
2473// the "output" return value is not valid until after Send returns without error.
2474//
2475// See DeregisterTargetFromMaintenanceWindow for more information on using the DeregisterTargetFromMaintenanceWindow
2476// API call, and error handling.
2477//
2478// This method is useful when you want to inject custom logic or configuration
2479// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2480//
2481//
2482//    // Example sending a request using the DeregisterTargetFromMaintenanceWindowRequest method.
2483//    req, resp := client.DeregisterTargetFromMaintenanceWindowRequest(params)
2484//
2485//    err := req.Send()
2486//    if err == nil { // resp is now filled
2487//        fmt.Println(resp)
2488//    }
2489//
2490// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTargetFromMaintenanceWindow
2491func (c *SSM) DeregisterTargetFromMaintenanceWindowRequest(input *DeregisterTargetFromMaintenanceWindowInput) (req *request.Request, output *DeregisterTargetFromMaintenanceWindowOutput) {
2492	op := &request.Operation{
2493		Name:       opDeregisterTargetFromMaintenanceWindow,
2494		HTTPMethod: "POST",
2495		HTTPPath:   "/",
2496	}
2497
2498	if input == nil {
2499		input = &DeregisterTargetFromMaintenanceWindowInput{}
2500	}
2501
2502	output = &DeregisterTargetFromMaintenanceWindowOutput{}
2503	req = c.newRequest(op, input, output)
2504	return
2505}
2506
2507// DeregisterTargetFromMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
2508//
2509// Removes a target from a maintenance window.
2510//
2511// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2512// with awserr.Error's Code and Message methods to get detailed information about
2513// the error.
2514//
2515// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2516// API operation DeregisterTargetFromMaintenanceWindow for usage and error information.
2517//
2518// Returned Error Types:
2519//   * DoesNotExistException
2520//   Error returned when the ID specified for a resource, such as a maintenance
2521//   window or patch baseline, doesn't exist.
2522//
2523//   For information about resource quotas in Amazon Web Services Systems Manager,
2524//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
2525//   in the Amazon Web Services General Reference.
2526//
2527//   * InternalServerError
2528//   An error occurred on the server side.
2529//
2530//   * TargetInUseException
2531//   You specified the Safe option for the DeregisterTargetFromMaintenanceWindow
2532//   operation, but the target is still referenced in a task.
2533//
2534// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTargetFromMaintenanceWindow
2535func (c *SSM) DeregisterTargetFromMaintenanceWindow(input *DeregisterTargetFromMaintenanceWindowInput) (*DeregisterTargetFromMaintenanceWindowOutput, error) {
2536	req, out := c.DeregisterTargetFromMaintenanceWindowRequest(input)
2537	return out, req.Send()
2538}
2539
2540// DeregisterTargetFromMaintenanceWindowWithContext is the same as DeregisterTargetFromMaintenanceWindow with the addition of
2541// the ability to pass a context and additional request options.
2542//
2543// See DeregisterTargetFromMaintenanceWindow for details on how to use this API operation.
2544//
2545// The context must be non-nil and will be used for request cancellation. If
2546// the context is nil a panic will occur. In the future the SDK may create
2547// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2548// for more information on using Contexts.
2549func (c *SSM) DeregisterTargetFromMaintenanceWindowWithContext(ctx aws.Context, input *DeregisterTargetFromMaintenanceWindowInput, opts ...request.Option) (*DeregisterTargetFromMaintenanceWindowOutput, error) {
2550	req, out := c.DeregisterTargetFromMaintenanceWindowRequest(input)
2551	req.SetContext(ctx)
2552	req.ApplyOptions(opts...)
2553	return out, req.Send()
2554}
2555
2556const opDeregisterTaskFromMaintenanceWindow = "DeregisterTaskFromMaintenanceWindow"
2557
2558// DeregisterTaskFromMaintenanceWindowRequest generates a "aws/request.Request" representing the
2559// client's request for the DeregisterTaskFromMaintenanceWindow operation. The "output" return
2560// value will be populated with the request's response once the request completes
2561// successfully.
2562//
2563// Use "Send" method on the returned Request to send the API call to the service.
2564// the "output" return value is not valid until after Send returns without error.
2565//
2566// See DeregisterTaskFromMaintenanceWindow for more information on using the DeregisterTaskFromMaintenanceWindow
2567// API call, and error handling.
2568//
2569// This method is useful when you want to inject custom logic or configuration
2570// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2571//
2572//
2573//    // Example sending a request using the DeregisterTaskFromMaintenanceWindowRequest method.
2574//    req, resp := client.DeregisterTaskFromMaintenanceWindowRequest(params)
2575//
2576//    err := req.Send()
2577//    if err == nil { // resp is now filled
2578//        fmt.Println(resp)
2579//    }
2580//
2581// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTaskFromMaintenanceWindow
2582func (c *SSM) DeregisterTaskFromMaintenanceWindowRequest(input *DeregisterTaskFromMaintenanceWindowInput) (req *request.Request, output *DeregisterTaskFromMaintenanceWindowOutput) {
2583	op := &request.Operation{
2584		Name:       opDeregisterTaskFromMaintenanceWindow,
2585		HTTPMethod: "POST",
2586		HTTPPath:   "/",
2587	}
2588
2589	if input == nil {
2590		input = &DeregisterTaskFromMaintenanceWindowInput{}
2591	}
2592
2593	output = &DeregisterTaskFromMaintenanceWindowOutput{}
2594	req = c.newRequest(op, input, output)
2595	return
2596}
2597
2598// DeregisterTaskFromMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
2599//
2600// Removes a task from a maintenance window.
2601//
2602// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2603// with awserr.Error's Code and Message methods to get detailed information about
2604// the error.
2605//
2606// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2607// API operation DeregisterTaskFromMaintenanceWindow for usage and error information.
2608//
2609// Returned Error Types:
2610//   * DoesNotExistException
2611//   Error returned when the ID specified for a resource, such as a maintenance
2612//   window or patch baseline, doesn't exist.
2613//
2614//   For information about resource quotas in Amazon Web Services Systems Manager,
2615//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
2616//   in the Amazon Web Services General Reference.
2617//
2618//   * InternalServerError
2619//   An error occurred on the server side.
2620//
2621// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeregisterTaskFromMaintenanceWindow
2622func (c *SSM) DeregisterTaskFromMaintenanceWindow(input *DeregisterTaskFromMaintenanceWindowInput) (*DeregisterTaskFromMaintenanceWindowOutput, error) {
2623	req, out := c.DeregisterTaskFromMaintenanceWindowRequest(input)
2624	return out, req.Send()
2625}
2626
2627// DeregisterTaskFromMaintenanceWindowWithContext is the same as DeregisterTaskFromMaintenanceWindow with the addition of
2628// the ability to pass a context and additional request options.
2629//
2630// See DeregisterTaskFromMaintenanceWindow for details on how to use this API operation.
2631//
2632// The context must be non-nil and will be used for request cancellation. If
2633// the context is nil a panic will occur. In the future the SDK may create
2634// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2635// for more information on using Contexts.
2636func (c *SSM) DeregisterTaskFromMaintenanceWindowWithContext(ctx aws.Context, input *DeregisterTaskFromMaintenanceWindowInput, opts ...request.Option) (*DeregisterTaskFromMaintenanceWindowOutput, error) {
2637	req, out := c.DeregisterTaskFromMaintenanceWindowRequest(input)
2638	req.SetContext(ctx)
2639	req.ApplyOptions(opts...)
2640	return out, req.Send()
2641}
2642
2643const opDescribeActivations = "DescribeActivations"
2644
2645// DescribeActivationsRequest generates a "aws/request.Request" representing the
2646// client's request for the DescribeActivations operation. The "output" return
2647// value will be populated with the request's response once the request completes
2648// successfully.
2649//
2650// Use "Send" method on the returned Request to send the API call to the service.
2651// the "output" return value is not valid until after Send returns without error.
2652//
2653// See DescribeActivations for more information on using the DescribeActivations
2654// API call, and error handling.
2655//
2656// This method is useful when you want to inject custom logic or configuration
2657// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2658//
2659//
2660//    // Example sending a request using the DescribeActivationsRequest method.
2661//    req, resp := client.DescribeActivationsRequest(params)
2662//
2663//    err := req.Send()
2664//    if err == nil { // resp is now filled
2665//        fmt.Println(resp)
2666//    }
2667//
2668// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeActivations
2669func (c *SSM) DescribeActivationsRequest(input *DescribeActivationsInput) (req *request.Request, output *DescribeActivationsOutput) {
2670	op := &request.Operation{
2671		Name:       opDescribeActivations,
2672		HTTPMethod: "POST",
2673		HTTPPath:   "/",
2674		Paginator: &request.Paginator{
2675			InputTokens:     []string{"NextToken"},
2676			OutputTokens:    []string{"NextToken"},
2677			LimitToken:      "MaxResults",
2678			TruncationToken: "",
2679		},
2680	}
2681
2682	if input == nil {
2683		input = &DescribeActivationsInput{}
2684	}
2685
2686	output = &DescribeActivationsOutput{}
2687	req = c.newRequest(op, input, output)
2688	return
2689}
2690
2691// DescribeActivations API operation for Amazon Simple Systems Manager (SSM).
2692//
2693// Describes details about the activation, such as the date and time the activation
2694// was created, its expiration date, the Identity and Access Management (IAM)
2695// role assigned to the instances in the activation, and the number of instances
2696// registered by using this activation.
2697//
2698// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2699// with awserr.Error's Code and Message methods to get detailed information about
2700// the error.
2701//
2702// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2703// API operation DescribeActivations for usage and error information.
2704//
2705// Returned Error Types:
2706//   * InvalidFilter
2707//   The filter name isn't valid. Verify the you entered the correct name and
2708//   try again.
2709//
2710//   * InvalidNextToken
2711//   The specified token isn't valid.
2712//
2713//   * InternalServerError
2714//   An error occurred on the server side.
2715//
2716// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeActivations
2717func (c *SSM) DescribeActivations(input *DescribeActivationsInput) (*DescribeActivationsOutput, error) {
2718	req, out := c.DescribeActivationsRequest(input)
2719	return out, req.Send()
2720}
2721
2722// DescribeActivationsWithContext is the same as DescribeActivations with the addition of
2723// the ability to pass a context and additional request options.
2724//
2725// See DescribeActivations for details on how to use this API operation.
2726//
2727// The context must be non-nil and will be used for request cancellation. If
2728// the context is nil a panic will occur. In the future the SDK may create
2729// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2730// for more information on using Contexts.
2731func (c *SSM) DescribeActivationsWithContext(ctx aws.Context, input *DescribeActivationsInput, opts ...request.Option) (*DescribeActivationsOutput, error) {
2732	req, out := c.DescribeActivationsRequest(input)
2733	req.SetContext(ctx)
2734	req.ApplyOptions(opts...)
2735	return out, req.Send()
2736}
2737
2738// DescribeActivationsPages iterates over the pages of a DescribeActivations operation,
2739// calling the "fn" function with the response data for each page. To stop
2740// iterating, return false from the fn function.
2741//
2742// See DescribeActivations method for more information on how to use this operation.
2743//
2744// Note: This operation can generate multiple requests to a service.
2745//
2746//    // Example iterating over at most 3 pages of a DescribeActivations operation.
2747//    pageNum := 0
2748//    err := client.DescribeActivationsPages(params,
2749//        func(page *ssm.DescribeActivationsOutput, lastPage bool) bool {
2750//            pageNum++
2751//            fmt.Println(page)
2752//            return pageNum <= 3
2753//        })
2754//
2755func (c *SSM) DescribeActivationsPages(input *DescribeActivationsInput, fn func(*DescribeActivationsOutput, bool) bool) error {
2756	return c.DescribeActivationsPagesWithContext(aws.BackgroundContext(), input, fn)
2757}
2758
2759// DescribeActivationsPagesWithContext same as DescribeActivationsPages except
2760// it takes a Context and allows setting request options on the pages.
2761//
2762// The context must be non-nil and will be used for request cancellation. If
2763// the context is nil a panic will occur. In the future the SDK may create
2764// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2765// for more information on using Contexts.
2766func (c *SSM) DescribeActivationsPagesWithContext(ctx aws.Context, input *DescribeActivationsInput, fn func(*DescribeActivationsOutput, bool) bool, opts ...request.Option) error {
2767	p := request.Pagination{
2768		NewRequest: func() (*request.Request, error) {
2769			var inCpy *DescribeActivationsInput
2770			if input != nil {
2771				tmp := *input
2772				inCpy = &tmp
2773			}
2774			req, _ := c.DescribeActivationsRequest(inCpy)
2775			req.SetContext(ctx)
2776			req.ApplyOptions(opts...)
2777			return req, nil
2778		},
2779	}
2780
2781	for p.Next() {
2782		if !fn(p.Page().(*DescribeActivationsOutput), !p.HasNextPage()) {
2783			break
2784		}
2785	}
2786
2787	return p.Err()
2788}
2789
2790const opDescribeAssociation = "DescribeAssociation"
2791
2792// DescribeAssociationRequest generates a "aws/request.Request" representing the
2793// client's request for the DescribeAssociation operation. The "output" return
2794// value will be populated with the request's response once the request completes
2795// successfully.
2796//
2797// Use "Send" method on the returned Request to send the API call to the service.
2798// the "output" return value is not valid until after Send returns without error.
2799//
2800// See DescribeAssociation for more information on using the DescribeAssociation
2801// API call, and error handling.
2802//
2803// This method is useful when you want to inject custom logic or configuration
2804// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2805//
2806//
2807//    // Example sending a request using the DescribeAssociationRequest method.
2808//    req, resp := client.DescribeAssociationRequest(params)
2809//
2810//    err := req.Send()
2811//    if err == nil { // resp is now filled
2812//        fmt.Println(resp)
2813//    }
2814//
2815// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociation
2816func (c *SSM) DescribeAssociationRequest(input *DescribeAssociationInput) (req *request.Request, output *DescribeAssociationOutput) {
2817	op := &request.Operation{
2818		Name:       opDescribeAssociation,
2819		HTTPMethod: "POST",
2820		HTTPPath:   "/",
2821	}
2822
2823	if input == nil {
2824		input = &DescribeAssociationInput{}
2825	}
2826
2827	output = &DescribeAssociationOutput{}
2828	req = c.newRequest(op, input, output)
2829	return
2830}
2831
2832// DescribeAssociation API operation for Amazon Simple Systems Manager (SSM).
2833//
2834// Describes the association for the specified target or instance. If you created
2835// the association by using the Targets parameter, then you must retrieve the
2836// association by using the association ID.
2837//
2838// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2839// with awserr.Error's Code and Message methods to get detailed information about
2840// the error.
2841//
2842// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2843// API operation DescribeAssociation for usage and error information.
2844//
2845// Returned Error Types:
2846//   * AssociationDoesNotExist
2847//   The specified association doesn't exist.
2848//
2849//   * InvalidAssociationVersion
2850//   The version you specified isn't valid. Use ListAssociationVersions to view
2851//   all versions of an association according to the association ID. Or, use the
2852//   $LATEST parameter to view the latest version of the association.
2853//
2854//   * InternalServerError
2855//   An error occurred on the server side.
2856//
2857//   * InvalidDocument
2858//   The specified SSM document doesn't exist.
2859//
2860//   * InvalidInstanceId
2861//   The following problems can cause this exception:
2862//
2863//      * You don't have permission to access the instance.
2864//
2865//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
2866//      Verify that SSM Agent is running.
2867//
2868//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
2869//      Agent.
2870//
2871//      * The instance isn't in valid state. Valid states are: Running, Pending,
2872//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
2873//
2874// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociation
2875func (c *SSM) DescribeAssociation(input *DescribeAssociationInput) (*DescribeAssociationOutput, error) {
2876	req, out := c.DescribeAssociationRequest(input)
2877	return out, req.Send()
2878}
2879
2880// DescribeAssociationWithContext is the same as DescribeAssociation with the addition of
2881// the ability to pass a context and additional request options.
2882//
2883// See DescribeAssociation for details on how to use this API operation.
2884//
2885// The context must be non-nil and will be used for request cancellation. If
2886// the context is nil a panic will occur. In the future the SDK may create
2887// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2888// for more information on using Contexts.
2889func (c *SSM) DescribeAssociationWithContext(ctx aws.Context, input *DescribeAssociationInput, opts ...request.Option) (*DescribeAssociationOutput, error) {
2890	req, out := c.DescribeAssociationRequest(input)
2891	req.SetContext(ctx)
2892	req.ApplyOptions(opts...)
2893	return out, req.Send()
2894}
2895
2896const opDescribeAssociationExecutionTargets = "DescribeAssociationExecutionTargets"
2897
2898// DescribeAssociationExecutionTargetsRequest generates a "aws/request.Request" representing the
2899// client's request for the DescribeAssociationExecutionTargets operation. The "output" return
2900// value will be populated with the request's response once the request completes
2901// successfully.
2902//
2903// Use "Send" method on the returned Request to send the API call to the service.
2904// the "output" return value is not valid until after Send returns without error.
2905//
2906// See DescribeAssociationExecutionTargets for more information on using the DescribeAssociationExecutionTargets
2907// API call, and error handling.
2908//
2909// This method is useful when you want to inject custom logic or configuration
2910// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2911//
2912//
2913//    // Example sending a request using the DescribeAssociationExecutionTargetsRequest method.
2914//    req, resp := client.DescribeAssociationExecutionTargetsRequest(params)
2915//
2916//    err := req.Send()
2917//    if err == nil { // resp is now filled
2918//        fmt.Println(resp)
2919//    }
2920//
2921// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutionTargets
2922func (c *SSM) DescribeAssociationExecutionTargetsRequest(input *DescribeAssociationExecutionTargetsInput) (req *request.Request, output *DescribeAssociationExecutionTargetsOutput) {
2923	op := &request.Operation{
2924		Name:       opDescribeAssociationExecutionTargets,
2925		HTTPMethod: "POST",
2926		HTTPPath:   "/",
2927		Paginator: &request.Paginator{
2928			InputTokens:     []string{"NextToken"},
2929			OutputTokens:    []string{"NextToken"},
2930			LimitToken:      "MaxResults",
2931			TruncationToken: "",
2932		},
2933	}
2934
2935	if input == nil {
2936		input = &DescribeAssociationExecutionTargetsInput{}
2937	}
2938
2939	output = &DescribeAssociationExecutionTargetsOutput{}
2940	req = c.newRequest(op, input, output)
2941	return
2942}
2943
2944// DescribeAssociationExecutionTargets API operation for Amazon Simple Systems Manager (SSM).
2945//
2946// Views information about a specific execution of a specific association.
2947//
2948// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2949// with awserr.Error's Code and Message methods to get detailed information about
2950// the error.
2951//
2952// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
2953// API operation DescribeAssociationExecutionTargets for usage and error information.
2954//
2955// Returned Error Types:
2956//   * InternalServerError
2957//   An error occurred on the server side.
2958//
2959//   * AssociationDoesNotExist
2960//   The specified association doesn't exist.
2961//
2962//   * InvalidNextToken
2963//   The specified token isn't valid.
2964//
2965//   * AssociationExecutionDoesNotExist
2966//   The specified execution ID doesn't exist. Verify the ID number and try again.
2967//
2968// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutionTargets
2969func (c *SSM) DescribeAssociationExecutionTargets(input *DescribeAssociationExecutionTargetsInput) (*DescribeAssociationExecutionTargetsOutput, error) {
2970	req, out := c.DescribeAssociationExecutionTargetsRequest(input)
2971	return out, req.Send()
2972}
2973
2974// DescribeAssociationExecutionTargetsWithContext is the same as DescribeAssociationExecutionTargets with the addition of
2975// the ability to pass a context and additional request options.
2976//
2977// See DescribeAssociationExecutionTargets for details on how to use this API operation.
2978//
2979// The context must be non-nil and will be used for request cancellation. If
2980// the context is nil a panic will occur. In the future the SDK may create
2981// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2982// for more information on using Contexts.
2983func (c *SSM) DescribeAssociationExecutionTargetsWithContext(ctx aws.Context, input *DescribeAssociationExecutionTargetsInput, opts ...request.Option) (*DescribeAssociationExecutionTargetsOutput, error) {
2984	req, out := c.DescribeAssociationExecutionTargetsRequest(input)
2985	req.SetContext(ctx)
2986	req.ApplyOptions(opts...)
2987	return out, req.Send()
2988}
2989
2990// DescribeAssociationExecutionTargetsPages iterates over the pages of a DescribeAssociationExecutionTargets operation,
2991// calling the "fn" function with the response data for each page. To stop
2992// iterating, return false from the fn function.
2993//
2994// See DescribeAssociationExecutionTargets method for more information on how to use this operation.
2995//
2996// Note: This operation can generate multiple requests to a service.
2997//
2998//    // Example iterating over at most 3 pages of a DescribeAssociationExecutionTargets operation.
2999//    pageNum := 0
3000//    err := client.DescribeAssociationExecutionTargetsPages(params,
3001//        func(page *ssm.DescribeAssociationExecutionTargetsOutput, lastPage bool) bool {
3002//            pageNum++
3003//            fmt.Println(page)
3004//            return pageNum <= 3
3005//        })
3006//
3007func (c *SSM) DescribeAssociationExecutionTargetsPages(input *DescribeAssociationExecutionTargetsInput, fn func(*DescribeAssociationExecutionTargetsOutput, bool) bool) error {
3008	return c.DescribeAssociationExecutionTargetsPagesWithContext(aws.BackgroundContext(), input, fn)
3009}
3010
3011// DescribeAssociationExecutionTargetsPagesWithContext same as DescribeAssociationExecutionTargetsPages except
3012// it takes a Context and allows setting request options on the pages.
3013//
3014// The context must be non-nil and will be used for request cancellation. If
3015// the context is nil a panic will occur. In the future the SDK may create
3016// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3017// for more information on using Contexts.
3018func (c *SSM) DescribeAssociationExecutionTargetsPagesWithContext(ctx aws.Context, input *DescribeAssociationExecutionTargetsInput, fn func(*DescribeAssociationExecutionTargetsOutput, bool) bool, opts ...request.Option) error {
3019	p := request.Pagination{
3020		NewRequest: func() (*request.Request, error) {
3021			var inCpy *DescribeAssociationExecutionTargetsInput
3022			if input != nil {
3023				tmp := *input
3024				inCpy = &tmp
3025			}
3026			req, _ := c.DescribeAssociationExecutionTargetsRequest(inCpy)
3027			req.SetContext(ctx)
3028			req.ApplyOptions(opts...)
3029			return req, nil
3030		},
3031	}
3032
3033	for p.Next() {
3034		if !fn(p.Page().(*DescribeAssociationExecutionTargetsOutput), !p.HasNextPage()) {
3035			break
3036		}
3037	}
3038
3039	return p.Err()
3040}
3041
3042const opDescribeAssociationExecutions = "DescribeAssociationExecutions"
3043
3044// DescribeAssociationExecutionsRequest generates a "aws/request.Request" representing the
3045// client's request for the DescribeAssociationExecutions operation. The "output" return
3046// value will be populated with the request's response once the request completes
3047// successfully.
3048//
3049// Use "Send" method on the returned Request to send the API call to the service.
3050// the "output" return value is not valid until after Send returns without error.
3051//
3052// See DescribeAssociationExecutions for more information on using the DescribeAssociationExecutions
3053// API call, and error handling.
3054//
3055// This method is useful when you want to inject custom logic or configuration
3056// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3057//
3058//
3059//    // Example sending a request using the DescribeAssociationExecutionsRequest method.
3060//    req, resp := client.DescribeAssociationExecutionsRequest(params)
3061//
3062//    err := req.Send()
3063//    if err == nil { // resp is now filled
3064//        fmt.Println(resp)
3065//    }
3066//
3067// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutions
3068func (c *SSM) DescribeAssociationExecutionsRequest(input *DescribeAssociationExecutionsInput) (req *request.Request, output *DescribeAssociationExecutionsOutput) {
3069	op := &request.Operation{
3070		Name:       opDescribeAssociationExecutions,
3071		HTTPMethod: "POST",
3072		HTTPPath:   "/",
3073		Paginator: &request.Paginator{
3074			InputTokens:     []string{"NextToken"},
3075			OutputTokens:    []string{"NextToken"},
3076			LimitToken:      "MaxResults",
3077			TruncationToken: "",
3078		},
3079	}
3080
3081	if input == nil {
3082		input = &DescribeAssociationExecutionsInput{}
3083	}
3084
3085	output = &DescribeAssociationExecutionsOutput{}
3086	req = c.newRequest(op, input, output)
3087	return
3088}
3089
3090// DescribeAssociationExecutions API operation for Amazon Simple Systems Manager (SSM).
3091//
3092// Views all executions for a specific association ID.
3093//
3094// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3095// with awserr.Error's Code and Message methods to get detailed information about
3096// the error.
3097//
3098// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
3099// API operation DescribeAssociationExecutions for usage and error information.
3100//
3101// Returned Error Types:
3102//   * InternalServerError
3103//   An error occurred on the server side.
3104//
3105//   * AssociationDoesNotExist
3106//   The specified association doesn't exist.
3107//
3108//   * InvalidNextToken
3109//   The specified token isn't valid.
3110//
3111// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAssociationExecutions
3112func (c *SSM) DescribeAssociationExecutions(input *DescribeAssociationExecutionsInput) (*DescribeAssociationExecutionsOutput, error) {
3113	req, out := c.DescribeAssociationExecutionsRequest(input)
3114	return out, req.Send()
3115}
3116
3117// DescribeAssociationExecutionsWithContext is the same as DescribeAssociationExecutions with the addition of
3118// the ability to pass a context and additional request options.
3119//
3120// See DescribeAssociationExecutions for details on how to use this API operation.
3121//
3122// The context must be non-nil and will be used for request cancellation. If
3123// the context is nil a panic will occur. In the future the SDK may create
3124// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3125// for more information on using Contexts.
3126func (c *SSM) DescribeAssociationExecutionsWithContext(ctx aws.Context, input *DescribeAssociationExecutionsInput, opts ...request.Option) (*DescribeAssociationExecutionsOutput, error) {
3127	req, out := c.DescribeAssociationExecutionsRequest(input)
3128	req.SetContext(ctx)
3129	req.ApplyOptions(opts...)
3130	return out, req.Send()
3131}
3132
3133// DescribeAssociationExecutionsPages iterates over the pages of a DescribeAssociationExecutions operation,
3134// calling the "fn" function with the response data for each page. To stop
3135// iterating, return false from the fn function.
3136//
3137// See DescribeAssociationExecutions method for more information on how to use this operation.
3138//
3139// Note: This operation can generate multiple requests to a service.
3140//
3141//    // Example iterating over at most 3 pages of a DescribeAssociationExecutions operation.
3142//    pageNum := 0
3143//    err := client.DescribeAssociationExecutionsPages(params,
3144//        func(page *ssm.DescribeAssociationExecutionsOutput, lastPage bool) bool {
3145//            pageNum++
3146//            fmt.Println(page)
3147//            return pageNum <= 3
3148//        })
3149//
3150func (c *SSM) DescribeAssociationExecutionsPages(input *DescribeAssociationExecutionsInput, fn func(*DescribeAssociationExecutionsOutput, bool) bool) error {
3151	return c.DescribeAssociationExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
3152}
3153
3154// DescribeAssociationExecutionsPagesWithContext same as DescribeAssociationExecutionsPages except
3155// it takes a Context and allows setting request options on the pages.
3156//
3157// The context must be non-nil and will be used for request cancellation. If
3158// the context is nil a panic will occur. In the future the SDK may create
3159// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3160// for more information on using Contexts.
3161func (c *SSM) DescribeAssociationExecutionsPagesWithContext(ctx aws.Context, input *DescribeAssociationExecutionsInput, fn func(*DescribeAssociationExecutionsOutput, bool) bool, opts ...request.Option) error {
3162	p := request.Pagination{
3163		NewRequest: func() (*request.Request, error) {
3164			var inCpy *DescribeAssociationExecutionsInput
3165			if input != nil {
3166				tmp := *input
3167				inCpy = &tmp
3168			}
3169			req, _ := c.DescribeAssociationExecutionsRequest(inCpy)
3170			req.SetContext(ctx)
3171			req.ApplyOptions(opts...)
3172			return req, nil
3173		},
3174	}
3175
3176	for p.Next() {
3177		if !fn(p.Page().(*DescribeAssociationExecutionsOutput), !p.HasNextPage()) {
3178			break
3179		}
3180	}
3181
3182	return p.Err()
3183}
3184
3185const opDescribeAutomationExecutions = "DescribeAutomationExecutions"
3186
3187// DescribeAutomationExecutionsRequest generates a "aws/request.Request" representing the
3188// client's request for the DescribeAutomationExecutions operation. The "output" return
3189// value will be populated with the request's response once the request completes
3190// successfully.
3191//
3192// Use "Send" method on the returned Request to send the API call to the service.
3193// the "output" return value is not valid until after Send returns without error.
3194//
3195// See DescribeAutomationExecutions for more information on using the DescribeAutomationExecutions
3196// API call, and error handling.
3197//
3198// This method is useful when you want to inject custom logic or configuration
3199// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3200//
3201//
3202//    // Example sending a request using the DescribeAutomationExecutionsRequest method.
3203//    req, resp := client.DescribeAutomationExecutionsRequest(params)
3204//
3205//    err := req.Send()
3206//    if err == nil { // resp is now filled
3207//        fmt.Println(resp)
3208//    }
3209//
3210// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationExecutions
3211func (c *SSM) DescribeAutomationExecutionsRequest(input *DescribeAutomationExecutionsInput) (req *request.Request, output *DescribeAutomationExecutionsOutput) {
3212	op := &request.Operation{
3213		Name:       opDescribeAutomationExecutions,
3214		HTTPMethod: "POST",
3215		HTTPPath:   "/",
3216		Paginator: &request.Paginator{
3217			InputTokens:     []string{"NextToken"},
3218			OutputTokens:    []string{"NextToken"},
3219			LimitToken:      "MaxResults",
3220			TruncationToken: "",
3221		},
3222	}
3223
3224	if input == nil {
3225		input = &DescribeAutomationExecutionsInput{}
3226	}
3227
3228	output = &DescribeAutomationExecutionsOutput{}
3229	req = c.newRequest(op, input, output)
3230	return
3231}
3232
3233// DescribeAutomationExecutions API operation for Amazon Simple Systems Manager (SSM).
3234//
3235// Provides details about all active and terminated Automation executions.
3236//
3237// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3238// with awserr.Error's Code and Message methods to get detailed information about
3239// the error.
3240//
3241// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
3242// API operation DescribeAutomationExecutions for usage and error information.
3243//
3244// Returned Error Types:
3245//   * InvalidFilterKey
3246//   The specified key isn't valid.
3247//
3248//   * InvalidFilterValue
3249//   The filter value isn't valid. Verify the value and try again.
3250//
3251//   * InvalidNextToken
3252//   The specified token isn't valid.
3253//
3254//   * InternalServerError
3255//   An error occurred on the server side.
3256//
3257// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationExecutions
3258func (c *SSM) DescribeAutomationExecutions(input *DescribeAutomationExecutionsInput) (*DescribeAutomationExecutionsOutput, error) {
3259	req, out := c.DescribeAutomationExecutionsRequest(input)
3260	return out, req.Send()
3261}
3262
3263// DescribeAutomationExecutionsWithContext is the same as DescribeAutomationExecutions with the addition of
3264// the ability to pass a context and additional request options.
3265//
3266// See DescribeAutomationExecutions for details on how to use this API operation.
3267//
3268// The context must be non-nil and will be used for request cancellation. If
3269// the context is nil a panic will occur. In the future the SDK may create
3270// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3271// for more information on using Contexts.
3272func (c *SSM) DescribeAutomationExecutionsWithContext(ctx aws.Context, input *DescribeAutomationExecutionsInput, opts ...request.Option) (*DescribeAutomationExecutionsOutput, error) {
3273	req, out := c.DescribeAutomationExecutionsRequest(input)
3274	req.SetContext(ctx)
3275	req.ApplyOptions(opts...)
3276	return out, req.Send()
3277}
3278
3279// DescribeAutomationExecutionsPages iterates over the pages of a DescribeAutomationExecutions operation,
3280// calling the "fn" function with the response data for each page. To stop
3281// iterating, return false from the fn function.
3282//
3283// See DescribeAutomationExecutions method for more information on how to use this operation.
3284//
3285// Note: This operation can generate multiple requests to a service.
3286//
3287//    // Example iterating over at most 3 pages of a DescribeAutomationExecutions operation.
3288//    pageNum := 0
3289//    err := client.DescribeAutomationExecutionsPages(params,
3290//        func(page *ssm.DescribeAutomationExecutionsOutput, lastPage bool) bool {
3291//            pageNum++
3292//            fmt.Println(page)
3293//            return pageNum <= 3
3294//        })
3295//
3296func (c *SSM) DescribeAutomationExecutionsPages(input *DescribeAutomationExecutionsInput, fn func(*DescribeAutomationExecutionsOutput, bool) bool) error {
3297	return c.DescribeAutomationExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
3298}
3299
3300// DescribeAutomationExecutionsPagesWithContext same as DescribeAutomationExecutionsPages except
3301// it takes a Context and allows setting request options on the pages.
3302//
3303// The context must be non-nil and will be used for request cancellation. If
3304// the context is nil a panic will occur. In the future the SDK may create
3305// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3306// for more information on using Contexts.
3307func (c *SSM) DescribeAutomationExecutionsPagesWithContext(ctx aws.Context, input *DescribeAutomationExecutionsInput, fn func(*DescribeAutomationExecutionsOutput, bool) bool, opts ...request.Option) error {
3308	p := request.Pagination{
3309		NewRequest: func() (*request.Request, error) {
3310			var inCpy *DescribeAutomationExecutionsInput
3311			if input != nil {
3312				tmp := *input
3313				inCpy = &tmp
3314			}
3315			req, _ := c.DescribeAutomationExecutionsRequest(inCpy)
3316			req.SetContext(ctx)
3317			req.ApplyOptions(opts...)
3318			return req, nil
3319		},
3320	}
3321
3322	for p.Next() {
3323		if !fn(p.Page().(*DescribeAutomationExecutionsOutput), !p.HasNextPage()) {
3324			break
3325		}
3326	}
3327
3328	return p.Err()
3329}
3330
3331const opDescribeAutomationStepExecutions = "DescribeAutomationStepExecutions"
3332
3333// DescribeAutomationStepExecutionsRequest generates a "aws/request.Request" representing the
3334// client's request for the DescribeAutomationStepExecutions operation. The "output" return
3335// value will be populated with the request's response once the request completes
3336// successfully.
3337//
3338// Use "Send" method on the returned Request to send the API call to the service.
3339// the "output" return value is not valid until after Send returns without error.
3340//
3341// See DescribeAutomationStepExecutions for more information on using the DescribeAutomationStepExecutions
3342// API call, and error handling.
3343//
3344// This method is useful when you want to inject custom logic or configuration
3345// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3346//
3347//
3348//    // Example sending a request using the DescribeAutomationStepExecutionsRequest method.
3349//    req, resp := client.DescribeAutomationStepExecutionsRequest(params)
3350//
3351//    err := req.Send()
3352//    if err == nil { // resp is now filled
3353//        fmt.Println(resp)
3354//    }
3355//
3356// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationStepExecutions
3357func (c *SSM) DescribeAutomationStepExecutionsRequest(input *DescribeAutomationStepExecutionsInput) (req *request.Request, output *DescribeAutomationStepExecutionsOutput) {
3358	op := &request.Operation{
3359		Name:       opDescribeAutomationStepExecutions,
3360		HTTPMethod: "POST",
3361		HTTPPath:   "/",
3362		Paginator: &request.Paginator{
3363			InputTokens:     []string{"NextToken"},
3364			OutputTokens:    []string{"NextToken"},
3365			LimitToken:      "MaxResults",
3366			TruncationToken: "",
3367		},
3368	}
3369
3370	if input == nil {
3371		input = &DescribeAutomationStepExecutionsInput{}
3372	}
3373
3374	output = &DescribeAutomationStepExecutionsOutput{}
3375	req = c.newRequest(op, input, output)
3376	return
3377}
3378
3379// DescribeAutomationStepExecutions API operation for Amazon Simple Systems Manager (SSM).
3380//
3381// Information about all active and terminated step executions in an Automation
3382// workflow.
3383//
3384// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3385// with awserr.Error's Code and Message methods to get detailed information about
3386// the error.
3387//
3388// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
3389// API operation DescribeAutomationStepExecutions for usage and error information.
3390//
3391// Returned Error Types:
3392//   * AutomationExecutionNotFoundException
3393//   There is no automation execution information for the requested automation
3394//   execution ID.
3395//
3396//   * InvalidNextToken
3397//   The specified token isn't valid.
3398//
3399//   * InvalidFilterKey
3400//   The specified key isn't valid.
3401//
3402//   * InvalidFilterValue
3403//   The filter value isn't valid. Verify the value and try again.
3404//
3405//   * InternalServerError
3406//   An error occurred on the server side.
3407//
3408// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAutomationStepExecutions
3409func (c *SSM) DescribeAutomationStepExecutions(input *DescribeAutomationStepExecutionsInput) (*DescribeAutomationStepExecutionsOutput, error) {
3410	req, out := c.DescribeAutomationStepExecutionsRequest(input)
3411	return out, req.Send()
3412}
3413
3414// DescribeAutomationStepExecutionsWithContext is the same as DescribeAutomationStepExecutions with the addition of
3415// the ability to pass a context and additional request options.
3416//
3417// See DescribeAutomationStepExecutions for details on how to use this API operation.
3418//
3419// The context must be non-nil and will be used for request cancellation. If
3420// the context is nil a panic will occur. In the future the SDK may create
3421// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3422// for more information on using Contexts.
3423func (c *SSM) DescribeAutomationStepExecutionsWithContext(ctx aws.Context, input *DescribeAutomationStepExecutionsInput, opts ...request.Option) (*DescribeAutomationStepExecutionsOutput, error) {
3424	req, out := c.DescribeAutomationStepExecutionsRequest(input)
3425	req.SetContext(ctx)
3426	req.ApplyOptions(opts...)
3427	return out, req.Send()
3428}
3429
3430// DescribeAutomationStepExecutionsPages iterates over the pages of a DescribeAutomationStepExecutions operation,
3431// calling the "fn" function with the response data for each page. To stop
3432// iterating, return false from the fn function.
3433//
3434// See DescribeAutomationStepExecutions method for more information on how to use this operation.
3435//
3436// Note: This operation can generate multiple requests to a service.
3437//
3438//    // Example iterating over at most 3 pages of a DescribeAutomationStepExecutions operation.
3439//    pageNum := 0
3440//    err := client.DescribeAutomationStepExecutionsPages(params,
3441//        func(page *ssm.DescribeAutomationStepExecutionsOutput, lastPage bool) bool {
3442//            pageNum++
3443//            fmt.Println(page)
3444//            return pageNum <= 3
3445//        })
3446//
3447func (c *SSM) DescribeAutomationStepExecutionsPages(input *DescribeAutomationStepExecutionsInput, fn func(*DescribeAutomationStepExecutionsOutput, bool) bool) error {
3448	return c.DescribeAutomationStepExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
3449}
3450
3451// DescribeAutomationStepExecutionsPagesWithContext same as DescribeAutomationStepExecutionsPages except
3452// it takes a Context and allows setting request options on the pages.
3453//
3454// The context must be non-nil and will be used for request cancellation. If
3455// the context is nil a panic will occur. In the future the SDK may create
3456// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3457// for more information on using Contexts.
3458func (c *SSM) DescribeAutomationStepExecutionsPagesWithContext(ctx aws.Context, input *DescribeAutomationStepExecutionsInput, fn func(*DescribeAutomationStepExecutionsOutput, bool) bool, opts ...request.Option) error {
3459	p := request.Pagination{
3460		NewRequest: func() (*request.Request, error) {
3461			var inCpy *DescribeAutomationStepExecutionsInput
3462			if input != nil {
3463				tmp := *input
3464				inCpy = &tmp
3465			}
3466			req, _ := c.DescribeAutomationStepExecutionsRequest(inCpy)
3467			req.SetContext(ctx)
3468			req.ApplyOptions(opts...)
3469			return req, nil
3470		},
3471	}
3472
3473	for p.Next() {
3474		if !fn(p.Page().(*DescribeAutomationStepExecutionsOutput), !p.HasNextPage()) {
3475			break
3476		}
3477	}
3478
3479	return p.Err()
3480}
3481
3482const opDescribeAvailablePatches = "DescribeAvailablePatches"
3483
3484// DescribeAvailablePatchesRequest generates a "aws/request.Request" representing the
3485// client's request for the DescribeAvailablePatches operation. The "output" return
3486// value will be populated with the request's response once the request completes
3487// successfully.
3488//
3489// Use "Send" method on the returned Request to send the API call to the service.
3490// the "output" return value is not valid until after Send returns without error.
3491//
3492// See DescribeAvailablePatches for more information on using the DescribeAvailablePatches
3493// API call, and error handling.
3494//
3495// This method is useful when you want to inject custom logic or configuration
3496// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3497//
3498//
3499//    // Example sending a request using the DescribeAvailablePatchesRequest method.
3500//    req, resp := client.DescribeAvailablePatchesRequest(params)
3501//
3502//    err := req.Send()
3503//    if err == nil { // resp is now filled
3504//        fmt.Println(resp)
3505//    }
3506//
3507// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAvailablePatches
3508func (c *SSM) DescribeAvailablePatchesRequest(input *DescribeAvailablePatchesInput) (req *request.Request, output *DescribeAvailablePatchesOutput) {
3509	op := &request.Operation{
3510		Name:       opDescribeAvailablePatches,
3511		HTTPMethod: "POST",
3512		HTTPPath:   "/",
3513		Paginator: &request.Paginator{
3514			InputTokens:     []string{"NextToken"},
3515			OutputTokens:    []string{"NextToken"},
3516			LimitToken:      "MaxResults",
3517			TruncationToken: "",
3518		},
3519	}
3520
3521	if input == nil {
3522		input = &DescribeAvailablePatchesInput{}
3523	}
3524
3525	output = &DescribeAvailablePatchesOutput{}
3526	req = c.newRequest(op, input, output)
3527	return
3528}
3529
3530// DescribeAvailablePatches API operation for Amazon Simple Systems Manager (SSM).
3531//
3532// Lists all patches eligible to be included in a patch baseline.
3533//
3534// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3535// with awserr.Error's Code and Message methods to get detailed information about
3536// the error.
3537//
3538// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
3539// API operation DescribeAvailablePatches for usage and error information.
3540//
3541// Returned Error Types:
3542//   * InternalServerError
3543//   An error occurred on the server side.
3544//
3545// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeAvailablePatches
3546func (c *SSM) DescribeAvailablePatches(input *DescribeAvailablePatchesInput) (*DescribeAvailablePatchesOutput, error) {
3547	req, out := c.DescribeAvailablePatchesRequest(input)
3548	return out, req.Send()
3549}
3550
3551// DescribeAvailablePatchesWithContext is the same as DescribeAvailablePatches with the addition of
3552// the ability to pass a context and additional request options.
3553//
3554// See DescribeAvailablePatches for details on how to use this API operation.
3555//
3556// The context must be non-nil and will be used for request cancellation. If
3557// the context is nil a panic will occur. In the future the SDK may create
3558// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3559// for more information on using Contexts.
3560func (c *SSM) DescribeAvailablePatchesWithContext(ctx aws.Context, input *DescribeAvailablePatchesInput, opts ...request.Option) (*DescribeAvailablePatchesOutput, error) {
3561	req, out := c.DescribeAvailablePatchesRequest(input)
3562	req.SetContext(ctx)
3563	req.ApplyOptions(opts...)
3564	return out, req.Send()
3565}
3566
3567// DescribeAvailablePatchesPages iterates over the pages of a DescribeAvailablePatches operation,
3568// calling the "fn" function with the response data for each page. To stop
3569// iterating, return false from the fn function.
3570//
3571// See DescribeAvailablePatches method for more information on how to use this operation.
3572//
3573// Note: This operation can generate multiple requests to a service.
3574//
3575//    // Example iterating over at most 3 pages of a DescribeAvailablePatches operation.
3576//    pageNum := 0
3577//    err := client.DescribeAvailablePatchesPages(params,
3578//        func(page *ssm.DescribeAvailablePatchesOutput, lastPage bool) bool {
3579//            pageNum++
3580//            fmt.Println(page)
3581//            return pageNum <= 3
3582//        })
3583//
3584func (c *SSM) DescribeAvailablePatchesPages(input *DescribeAvailablePatchesInput, fn func(*DescribeAvailablePatchesOutput, bool) bool) error {
3585	return c.DescribeAvailablePatchesPagesWithContext(aws.BackgroundContext(), input, fn)
3586}
3587
3588// DescribeAvailablePatchesPagesWithContext same as DescribeAvailablePatchesPages except
3589// it takes a Context and allows setting request options on the pages.
3590//
3591// The context must be non-nil and will be used for request cancellation. If
3592// the context is nil a panic will occur. In the future the SDK may create
3593// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3594// for more information on using Contexts.
3595func (c *SSM) DescribeAvailablePatchesPagesWithContext(ctx aws.Context, input *DescribeAvailablePatchesInput, fn func(*DescribeAvailablePatchesOutput, bool) bool, opts ...request.Option) error {
3596	p := request.Pagination{
3597		NewRequest: func() (*request.Request, error) {
3598			var inCpy *DescribeAvailablePatchesInput
3599			if input != nil {
3600				tmp := *input
3601				inCpy = &tmp
3602			}
3603			req, _ := c.DescribeAvailablePatchesRequest(inCpy)
3604			req.SetContext(ctx)
3605			req.ApplyOptions(opts...)
3606			return req, nil
3607		},
3608	}
3609
3610	for p.Next() {
3611		if !fn(p.Page().(*DescribeAvailablePatchesOutput), !p.HasNextPage()) {
3612			break
3613		}
3614	}
3615
3616	return p.Err()
3617}
3618
3619const opDescribeDocument = "DescribeDocument"
3620
3621// DescribeDocumentRequest generates a "aws/request.Request" representing the
3622// client's request for the DescribeDocument operation. The "output" return
3623// value will be populated with the request's response once the request completes
3624// successfully.
3625//
3626// Use "Send" method on the returned Request to send the API call to the service.
3627// the "output" return value is not valid until after Send returns without error.
3628//
3629// See DescribeDocument for more information on using the DescribeDocument
3630// API call, and error handling.
3631//
3632// This method is useful when you want to inject custom logic or configuration
3633// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3634//
3635//
3636//    // Example sending a request using the DescribeDocumentRequest method.
3637//    req, resp := client.DescribeDocumentRequest(params)
3638//
3639//    err := req.Send()
3640//    if err == nil { // resp is now filled
3641//        fmt.Println(resp)
3642//    }
3643//
3644// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocument
3645func (c *SSM) DescribeDocumentRequest(input *DescribeDocumentInput) (req *request.Request, output *DescribeDocumentOutput) {
3646	op := &request.Operation{
3647		Name:       opDescribeDocument,
3648		HTTPMethod: "POST",
3649		HTTPPath:   "/",
3650	}
3651
3652	if input == nil {
3653		input = &DescribeDocumentInput{}
3654	}
3655
3656	output = &DescribeDocumentOutput{}
3657	req = c.newRequest(op, input, output)
3658	return
3659}
3660
3661// DescribeDocument API operation for Amazon Simple Systems Manager (SSM).
3662//
3663// Describes the specified Amazon Web Services Systems Manager document (SSM
3664// document).
3665//
3666// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3667// with awserr.Error's Code and Message methods to get detailed information about
3668// the error.
3669//
3670// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
3671// API operation DescribeDocument for usage and error information.
3672//
3673// Returned Error Types:
3674//   * InternalServerError
3675//   An error occurred on the server side.
3676//
3677//   * InvalidDocument
3678//   The specified SSM document doesn't exist.
3679//
3680//   * InvalidDocumentVersion
3681//   The document version isn't valid or doesn't exist.
3682//
3683// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocument
3684func (c *SSM) DescribeDocument(input *DescribeDocumentInput) (*DescribeDocumentOutput, error) {
3685	req, out := c.DescribeDocumentRequest(input)
3686	return out, req.Send()
3687}
3688
3689// DescribeDocumentWithContext is the same as DescribeDocument with the addition of
3690// the ability to pass a context and additional request options.
3691//
3692// See DescribeDocument for details on how to use this API operation.
3693//
3694// The context must be non-nil and will be used for request cancellation. If
3695// the context is nil a panic will occur. In the future the SDK may create
3696// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3697// for more information on using Contexts.
3698func (c *SSM) DescribeDocumentWithContext(ctx aws.Context, input *DescribeDocumentInput, opts ...request.Option) (*DescribeDocumentOutput, error) {
3699	req, out := c.DescribeDocumentRequest(input)
3700	req.SetContext(ctx)
3701	req.ApplyOptions(opts...)
3702	return out, req.Send()
3703}
3704
3705const opDescribeDocumentPermission = "DescribeDocumentPermission"
3706
3707// DescribeDocumentPermissionRequest generates a "aws/request.Request" representing the
3708// client's request for the DescribeDocumentPermission operation. The "output" return
3709// value will be populated with the request's response once the request completes
3710// successfully.
3711//
3712// Use "Send" method on the returned Request to send the API call to the service.
3713// the "output" return value is not valid until after Send returns without error.
3714//
3715// See DescribeDocumentPermission for more information on using the DescribeDocumentPermission
3716// API call, and error handling.
3717//
3718// This method is useful when you want to inject custom logic or configuration
3719// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3720//
3721//
3722//    // Example sending a request using the DescribeDocumentPermissionRequest method.
3723//    req, resp := client.DescribeDocumentPermissionRequest(params)
3724//
3725//    err := req.Send()
3726//    if err == nil { // resp is now filled
3727//        fmt.Println(resp)
3728//    }
3729//
3730// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocumentPermission
3731func (c *SSM) DescribeDocumentPermissionRequest(input *DescribeDocumentPermissionInput) (req *request.Request, output *DescribeDocumentPermissionOutput) {
3732	op := &request.Operation{
3733		Name:       opDescribeDocumentPermission,
3734		HTTPMethod: "POST",
3735		HTTPPath:   "/",
3736	}
3737
3738	if input == nil {
3739		input = &DescribeDocumentPermissionInput{}
3740	}
3741
3742	output = &DescribeDocumentPermissionOutput{}
3743	req = c.newRequest(op, input, output)
3744	return
3745}
3746
3747// DescribeDocumentPermission API operation for Amazon Simple Systems Manager (SSM).
3748//
3749// Describes the permissions for a Amazon Web Services Systems Manager document
3750// (SSM document). If you created the document, you are the owner. If a document
3751// is shared, it can either be shared privately (by specifying a user's Amazon
3752// Web Services account ID) or publicly (All).
3753//
3754// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3755// with awserr.Error's Code and Message methods to get detailed information about
3756// the error.
3757//
3758// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
3759// API operation DescribeDocumentPermission for usage and error information.
3760//
3761// Returned Error Types:
3762//   * InternalServerError
3763//   An error occurred on the server side.
3764//
3765//   * InvalidDocument
3766//   The specified SSM document doesn't exist.
3767//
3768//   * InvalidNextToken
3769//   The specified token isn't valid.
3770//
3771//   * InvalidPermissionType
3772//   The permission type isn't supported. Share is the only supported permission
3773//   type.
3774//
3775//   * InvalidDocumentOperation
3776//   You attempted to delete a document while it is still shared. You must stop
3777//   sharing the document before you can delete it.
3778//
3779// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeDocumentPermission
3780func (c *SSM) DescribeDocumentPermission(input *DescribeDocumentPermissionInput) (*DescribeDocumentPermissionOutput, error) {
3781	req, out := c.DescribeDocumentPermissionRequest(input)
3782	return out, req.Send()
3783}
3784
3785// DescribeDocumentPermissionWithContext is the same as DescribeDocumentPermission with the addition of
3786// the ability to pass a context and additional request options.
3787//
3788// See DescribeDocumentPermission for details on how to use this API operation.
3789//
3790// The context must be non-nil and will be used for request cancellation. If
3791// the context is nil a panic will occur. In the future the SDK may create
3792// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3793// for more information on using Contexts.
3794func (c *SSM) DescribeDocumentPermissionWithContext(ctx aws.Context, input *DescribeDocumentPermissionInput, opts ...request.Option) (*DescribeDocumentPermissionOutput, error) {
3795	req, out := c.DescribeDocumentPermissionRequest(input)
3796	req.SetContext(ctx)
3797	req.ApplyOptions(opts...)
3798	return out, req.Send()
3799}
3800
3801const opDescribeEffectiveInstanceAssociations = "DescribeEffectiveInstanceAssociations"
3802
3803// DescribeEffectiveInstanceAssociationsRequest generates a "aws/request.Request" representing the
3804// client's request for the DescribeEffectiveInstanceAssociations operation. The "output" return
3805// value will be populated with the request's response once the request completes
3806// successfully.
3807//
3808// Use "Send" method on the returned Request to send the API call to the service.
3809// the "output" return value is not valid until after Send returns without error.
3810//
3811// See DescribeEffectiveInstanceAssociations for more information on using the DescribeEffectiveInstanceAssociations
3812// API call, and error handling.
3813//
3814// This method is useful when you want to inject custom logic or configuration
3815// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3816//
3817//
3818//    // Example sending a request using the DescribeEffectiveInstanceAssociationsRequest method.
3819//    req, resp := client.DescribeEffectiveInstanceAssociationsRequest(params)
3820//
3821//    err := req.Send()
3822//    if err == nil { // resp is now filled
3823//        fmt.Println(resp)
3824//    }
3825//
3826// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectiveInstanceAssociations
3827func (c *SSM) DescribeEffectiveInstanceAssociationsRequest(input *DescribeEffectiveInstanceAssociationsInput) (req *request.Request, output *DescribeEffectiveInstanceAssociationsOutput) {
3828	op := &request.Operation{
3829		Name:       opDescribeEffectiveInstanceAssociations,
3830		HTTPMethod: "POST",
3831		HTTPPath:   "/",
3832		Paginator: &request.Paginator{
3833			InputTokens:     []string{"NextToken"},
3834			OutputTokens:    []string{"NextToken"},
3835			LimitToken:      "MaxResults",
3836			TruncationToken: "",
3837		},
3838	}
3839
3840	if input == nil {
3841		input = &DescribeEffectiveInstanceAssociationsInput{}
3842	}
3843
3844	output = &DescribeEffectiveInstanceAssociationsOutput{}
3845	req = c.newRequest(op, input, output)
3846	return
3847}
3848
3849// DescribeEffectiveInstanceAssociations API operation for Amazon Simple Systems Manager (SSM).
3850//
3851// All associations for the instance(s).
3852//
3853// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3854// with awserr.Error's Code and Message methods to get detailed information about
3855// the error.
3856//
3857// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
3858// API operation DescribeEffectiveInstanceAssociations for usage and error information.
3859//
3860// Returned Error Types:
3861//   * InternalServerError
3862//   An error occurred on the server side.
3863//
3864//   * InvalidInstanceId
3865//   The following problems can cause this exception:
3866//
3867//      * You don't have permission to access the instance.
3868//
3869//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
3870//      Verify that SSM Agent is running.
3871//
3872//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
3873//      Agent.
3874//
3875//      * The instance isn't in valid state. Valid states are: Running, Pending,
3876//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
3877//
3878//   * InvalidNextToken
3879//   The specified token isn't valid.
3880//
3881// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectiveInstanceAssociations
3882func (c *SSM) DescribeEffectiveInstanceAssociations(input *DescribeEffectiveInstanceAssociationsInput) (*DescribeEffectiveInstanceAssociationsOutput, error) {
3883	req, out := c.DescribeEffectiveInstanceAssociationsRequest(input)
3884	return out, req.Send()
3885}
3886
3887// DescribeEffectiveInstanceAssociationsWithContext is the same as DescribeEffectiveInstanceAssociations with the addition of
3888// the ability to pass a context and additional request options.
3889//
3890// See DescribeEffectiveInstanceAssociations for details on how to use this API operation.
3891//
3892// The context must be non-nil and will be used for request cancellation. If
3893// the context is nil a panic will occur. In the future the SDK may create
3894// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3895// for more information on using Contexts.
3896func (c *SSM) DescribeEffectiveInstanceAssociationsWithContext(ctx aws.Context, input *DescribeEffectiveInstanceAssociationsInput, opts ...request.Option) (*DescribeEffectiveInstanceAssociationsOutput, error) {
3897	req, out := c.DescribeEffectiveInstanceAssociationsRequest(input)
3898	req.SetContext(ctx)
3899	req.ApplyOptions(opts...)
3900	return out, req.Send()
3901}
3902
3903// DescribeEffectiveInstanceAssociationsPages iterates over the pages of a DescribeEffectiveInstanceAssociations operation,
3904// calling the "fn" function with the response data for each page. To stop
3905// iterating, return false from the fn function.
3906//
3907// See DescribeEffectiveInstanceAssociations method for more information on how to use this operation.
3908//
3909// Note: This operation can generate multiple requests to a service.
3910//
3911//    // Example iterating over at most 3 pages of a DescribeEffectiveInstanceAssociations operation.
3912//    pageNum := 0
3913//    err := client.DescribeEffectiveInstanceAssociationsPages(params,
3914//        func(page *ssm.DescribeEffectiveInstanceAssociationsOutput, lastPage bool) bool {
3915//            pageNum++
3916//            fmt.Println(page)
3917//            return pageNum <= 3
3918//        })
3919//
3920func (c *SSM) DescribeEffectiveInstanceAssociationsPages(input *DescribeEffectiveInstanceAssociationsInput, fn func(*DescribeEffectiveInstanceAssociationsOutput, bool) bool) error {
3921	return c.DescribeEffectiveInstanceAssociationsPagesWithContext(aws.BackgroundContext(), input, fn)
3922}
3923
3924// DescribeEffectiveInstanceAssociationsPagesWithContext same as DescribeEffectiveInstanceAssociationsPages except
3925// it takes a Context and allows setting request options on the pages.
3926//
3927// The context must be non-nil and will be used for request cancellation. If
3928// the context is nil a panic will occur. In the future the SDK may create
3929// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3930// for more information on using Contexts.
3931func (c *SSM) DescribeEffectiveInstanceAssociationsPagesWithContext(ctx aws.Context, input *DescribeEffectiveInstanceAssociationsInput, fn func(*DescribeEffectiveInstanceAssociationsOutput, bool) bool, opts ...request.Option) error {
3932	p := request.Pagination{
3933		NewRequest: func() (*request.Request, error) {
3934			var inCpy *DescribeEffectiveInstanceAssociationsInput
3935			if input != nil {
3936				tmp := *input
3937				inCpy = &tmp
3938			}
3939			req, _ := c.DescribeEffectiveInstanceAssociationsRequest(inCpy)
3940			req.SetContext(ctx)
3941			req.ApplyOptions(opts...)
3942			return req, nil
3943		},
3944	}
3945
3946	for p.Next() {
3947		if !fn(p.Page().(*DescribeEffectiveInstanceAssociationsOutput), !p.HasNextPage()) {
3948			break
3949		}
3950	}
3951
3952	return p.Err()
3953}
3954
3955const opDescribeEffectivePatchesForPatchBaseline = "DescribeEffectivePatchesForPatchBaseline"
3956
3957// DescribeEffectivePatchesForPatchBaselineRequest generates a "aws/request.Request" representing the
3958// client's request for the DescribeEffectivePatchesForPatchBaseline operation. The "output" return
3959// value will be populated with the request's response once the request completes
3960// successfully.
3961//
3962// Use "Send" method on the returned Request to send the API call to the service.
3963// the "output" return value is not valid until after Send returns without error.
3964//
3965// See DescribeEffectivePatchesForPatchBaseline for more information on using the DescribeEffectivePatchesForPatchBaseline
3966// API call, and error handling.
3967//
3968// This method is useful when you want to inject custom logic or configuration
3969// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3970//
3971//
3972//    // Example sending a request using the DescribeEffectivePatchesForPatchBaselineRequest method.
3973//    req, resp := client.DescribeEffectivePatchesForPatchBaselineRequest(params)
3974//
3975//    err := req.Send()
3976//    if err == nil { // resp is now filled
3977//        fmt.Println(resp)
3978//    }
3979//
3980// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectivePatchesForPatchBaseline
3981func (c *SSM) DescribeEffectivePatchesForPatchBaselineRequest(input *DescribeEffectivePatchesForPatchBaselineInput) (req *request.Request, output *DescribeEffectivePatchesForPatchBaselineOutput) {
3982	op := &request.Operation{
3983		Name:       opDescribeEffectivePatchesForPatchBaseline,
3984		HTTPMethod: "POST",
3985		HTTPPath:   "/",
3986		Paginator: &request.Paginator{
3987			InputTokens:     []string{"NextToken"},
3988			OutputTokens:    []string{"NextToken"},
3989			LimitToken:      "MaxResults",
3990			TruncationToken: "",
3991		},
3992	}
3993
3994	if input == nil {
3995		input = &DescribeEffectivePatchesForPatchBaselineInput{}
3996	}
3997
3998	output = &DescribeEffectivePatchesForPatchBaselineOutput{}
3999	req = c.newRequest(op, input, output)
4000	return
4001}
4002
4003// DescribeEffectivePatchesForPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
4004//
4005// Retrieves the current effective patches (the patch and the approval state)
4006// for the specified patch baseline. Applies to patch baselines for Windows
4007// only.
4008//
4009// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4010// with awserr.Error's Code and Message methods to get detailed information about
4011// the error.
4012//
4013// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
4014// API operation DescribeEffectivePatchesForPatchBaseline for usage and error information.
4015//
4016// Returned Error Types:
4017//   * InvalidResourceId
4018//   The resource ID isn't valid. Verify that you entered the correct ID and try
4019//   again.
4020//
4021//   * DoesNotExistException
4022//   Error returned when the ID specified for a resource, such as a maintenance
4023//   window or patch baseline, doesn't exist.
4024//
4025//   For information about resource quotas in Amazon Web Services Systems Manager,
4026//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
4027//   in the Amazon Web Services General Reference.
4028//
4029//   * UnsupportedOperatingSystem
4030//   The operating systems you specified isn't supported, or the operation isn't
4031//   supported for the operating system.
4032//
4033//   * InternalServerError
4034//   An error occurred on the server side.
4035//
4036// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeEffectivePatchesForPatchBaseline
4037func (c *SSM) DescribeEffectivePatchesForPatchBaseline(input *DescribeEffectivePatchesForPatchBaselineInput) (*DescribeEffectivePatchesForPatchBaselineOutput, error) {
4038	req, out := c.DescribeEffectivePatchesForPatchBaselineRequest(input)
4039	return out, req.Send()
4040}
4041
4042// DescribeEffectivePatchesForPatchBaselineWithContext is the same as DescribeEffectivePatchesForPatchBaseline with the addition of
4043// the ability to pass a context and additional request options.
4044//
4045// See DescribeEffectivePatchesForPatchBaseline for details on how to use this API operation.
4046//
4047// The context must be non-nil and will be used for request cancellation. If
4048// the context is nil a panic will occur. In the future the SDK may create
4049// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4050// for more information on using Contexts.
4051func (c *SSM) DescribeEffectivePatchesForPatchBaselineWithContext(ctx aws.Context, input *DescribeEffectivePatchesForPatchBaselineInput, opts ...request.Option) (*DescribeEffectivePatchesForPatchBaselineOutput, error) {
4052	req, out := c.DescribeEffectivePatchesForPatchBaselineRequest(input)
4053	req.SetContext(ctx)
4054	req.ApplyOptions(opts...)
4055	return out, req.Send()
4056}
4057
4058// DescribeEffectivePatchesForPatchBaselinePages iterates over the pages of a DescribeEffectivePatchesForPatchBaseline operation,
4059// calling the "fn" function with the response data for each page. To stop
4060// iterating, return false from the fn function.
4061//
4062// See DescribeEffectivePatchesForPatchBaseline method for more information on how to use this operation.
4063//
4064// Note: This operation can generate multiple requests to a service.
4065//
4066//    // Example iterating over at most 3 pages of a DescribeEffectivePatchesForPatchBaseline operation.
4067//    pageNum := 0
4068//    err := client.DescribeEffectivePatchesForPatchBaselinePages(params,
4069//        func(page *ssm.DescribeEffectivePatchesForPatchBaselineOutput, lastPage bool) bool {
4070//            pageNum++
4071//            fmt.Println(page)
4072//            return pageNum <= 3
4073//        })
4074//
4075func (c *SSM) DescribeEffectivePatchesForPatchBaselinePages(input *DescribeEffectivePatchesForPatchBaselineInput, fn func(*DescribeEffectivePatchesForPatchBaselineOutput, bool) bool) error {
4076	return c.DescribeEffectivePatchesForPatchBaselinePagesWithContext(aws.BackgroundContext(), input, fn)
4077}
4078
4079// DescribeEffectivePatchesForPatchBaselinePagesWithContext same as DescribeEffectivePatchesForPatchBaselinePages except
4080// it takes a Context and allows setting request options on the pages.
4081//
4082// The context must be non-nil and will be used for request cancellation. If
4083// the context is nil a panic will occur. In the future the SDK may create
4084// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4085// for more information on using Contexts.
4086func (c *SSM) DescribeEffectivePatchesForPatchBaselinePagesWithContext(ctx aws.Context, input *DescribeEffectivePatchesForPatchBaselineInput, fn func(*DescribeEffectivePatchesForPatchBaselineOutput, bool) bool, opts ...request.Option) error {
4087	p := request.Pagination{
4088		NewRequest: func() (*request.Request, error) {
4089			var inCpy *DescribeEffectivePatchesForPatchBaselineInput
4090			if input != nil {
4091				tmp := *input
4092				inCpy = &tmp
4093			}
4094			req, _ := c.DescribeEffectivePatchesForPatchBaselineRequest(inCpy)
4095			req.SetContext(ctx)
4096			req.ApplyOptions(opts...)
4097			return req, nil
4098		},
4099	}
4100
4101	for p.Next() {
4102		if !fn(p.Page().(*DescribeEffectivePatchesForPatchBaselineOutput), !p.HasNextPage()) {
4103			break
4104		}
4105	}
4106
4107	return p.Err()
4108}
4109
4110const opDescribeInstanceAssociationsStatus = "DescribeInstanceAssociationsStatus"
4111
4112// DescribeInstanceAssociationsStatusRequest generates a "aws/request.Request" representing the
4113// client's request for the DescribeInstanceAssociationsStatus operation. The "output" return
4114// value will be populated with the request's response once the request completes
4115// successfully.
4116//
4117// Use "Send" method on the returned Request to send the API call to the service.
4118// the "output" return value is not valid until after Send returns without error.
4119//
4120// See DescribeInstanceAssociationsStatus for more information on using the DescribeInstanceAssociationsStatus
4121// API call, and error handling.
4122//
4123// This method is useful when you want to inject custom logic or configuration
4124// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4125//
4126//
4127//    // Example sending a request using the DescribeInstanceAssociationsStatusRequest method.
4128//    req, resp := client.DescribeInstanceAssociationsStatusRequest(params)
4129//
4130//    err := req.Send()
4131//    if err == nil { // resp is now filled
4132//        fmt.Println(resp)
4133//    }
4134//
4135// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceAssociationsStatus
4136func (c *SSM) DescribeInstanceAssociationsStatusRequest(input *DescribeInstanceAssociationsStatusInput) (req *request.Request, output *DescribeInstanceAssociationsStatusOutput) {
4137	op := &request.Operation{
4138		Name:       opDescribeInstanceAssociationsStatus,
4139		HTTPMethod: "POST",
4140		HTTPPath:   "/",
4141		Paginator: &request.Paginator{
4142			InputTokens:     []string{"NextToken"},
4143			OutputTokens:    []string{"NextToken"},
4144			LimitToken:      "MaxResults",
4145			TruncationToken: "",
4146		},
4147	}
4148
4149	if input == nil {
4150		input = &DescribeInstanceAssociationsStatusInput{}
4151	}
4152
4153	output = &DescribeInstanceAssociationsStatusOutput{}
4154	req = c.newRequest(op, input, output)
4155	return
4156}
4157
4158// DescribeInstanceAssociationsStatus API operation for Amazon Simple Systems Manager (SSM).
4159//
4160// The status of the associations for the instance(s).
4161//
4162// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4163// with awserr.Error's Code and Message methods to get detailed information about
4164// the error.
4165//
4166// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
4167// API operation DescribeInstanceAssociationsStatus for usage and error information.
4168//
4169// Returned Error Types:
4170//   * InternalServerError
4171//   An error occurred on the server side.
4172//
4173//   * InvalidInstanceId
4174//   The following problems can cause this exception:
4175//
4176//      * You don't have permission to access the instance.
4177//
4178//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
4179//      Verify that SSM Agent is running.
4180//
4181//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
4182//      Agent.
4183//
4184//      * The instance isn't in valid state. Valid states are: Running, Pending,
4185//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
4186//
4187//   * InvalidNextToken
4188//   The specified token isn't valid.
4189//
4190// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceAssociationsStatus
4191func (c *SSM) DescribeInstanceAssociationsStatus(input *DescribeInstanceAssociationsStatusInput) (*DescribeInstanceAssociationsStatusOutput, error) {
4192	req, out := c.DescribeInstanceAssociationsStatusRequest(input)
4193	return out, req.Send()
4194}
4195
4196// DescribeInstanceAssociationsStatusWithContext is the same as DescribeInstanceAssociationsStatus with the addition of
4197// the ability to pass a context and additional request options.
4198//
4199// See DescribeInstanceAssociationsStatus for details on how to use this API operation.
4200//
4201// The context must be non-nil and will be used for request cancellation. If
4202// the context is nil a panic will occur. In the future the SDK may create
4203// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4204// for more information on using Contexts.
4205func (c *SSM) DescribeInstanceAssociationsStatusWithContext(ctx aws.Context, input *DescribeInstanceAssociationsStatusInput, opts ...request.Option) (*DescribeInstanceAssociationsStatusOutput, error) {
4206	req, out := c.DescribeInstanceAssociationsStatusRequest(input)
4207	req.SetContext(ctx)
4208	req.ApplyOptions(opts...)
4209	return out, req.Send()
4210}
4211
4212// DescribeInstanceAssociationsStatusPages iterates over the pages of a DescribeInstanceAssociationsStatus operation,
4213// calling the "fn" function with the response data for each page. To stop
4214// iterating, return false from the fn function.
4215//
4216// See DescribeInstanceAssociationsStatus method for more information on how to use this operation.
4217//
4218// Note: This operation can generate multiple requests to a service.
4219//
4220//    // Example iterating over at most 3 pages of a DescribeInstanceAssociationsStatus operation.
4221//    pageNum := 0
4222//    err := client.DescribeInstanceAssociationsStatusPages(params,
4223//        func(page *ssm.DescribeInstanceAssociationsStatusOutput, lastPage bool) bool {
4224//            pageNum++
4225//            fmt.Println(page)
4226//            return pageNum <= 3
4227//        })
4228//
4229func (c *SSM) DescribeInstanceAssociationsStatusPages(input *DescribeInstanceAssociationsStatusInput, fn func(*DescribeInstanceAssociationsStatusOutput, bool) bool) error {
4230	return c.DescribeInstanceAssociationsStatusPagesWithContext(aws.BackgroundContext(), input, fn)
4231}
4232
4233// DescribeInstanceAssociationsStatusPagesWithContext same as DescribeInstanceAssociationsStatusPages except
4234// it takes a Context and allows setting request options on the pages.
4235//
4236// The context must be non-nil and will be used for request cancellation. If
4237// the context is nil a panic will occur. In the future the SDK may create
4238// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4239// for more information on using Contexts.
4240func (c *SSM) DescribeInstanceAssociationsStatusPagesWithContext(ctx aws.Context, input *DescribeInstanceAssociationsStatusInput, fn func(*DescribeInstanceAssociationsStatusOutput, bool) bool, opts ...request.Option) error {
4241	p := request.Pagination{
4242		NewRequest: func() (*request.Request, error) {
4243			var inCpy *DescribeInstanceAssociationsStatusInput
4244			if input != nil {
4245				tmp := *input
4246				inCpy = &tmp
4247			}
4248			req, _ := c.DescribeInstanceAssociationsStatusRequest(inCpy)
4249			req.SetContext(ctx)
4250			req.ApplyOptions(opts...)
4251			return req, nil
4252		},
4253	}
4254
4255	for p.Next() {
4256		if !fn(p.Page().(*DescribeInstanceAssociationsStatusOutput), !p.HasNextPage()) {
4257			break
4258		}
4259	}
4260
4261	return p.Err()
4262}
4263
4264const opDescribeInstanceInformation = "DescribeInstanceInformation"
4265
4266// DescribeInstanceInformationRequest generates a "aws/request.Request" representing the
4267// client's request for the DescribeInstanceInformation operation. The "output" return
4268// value will be populated with the request's response once the request completes
4269// successfully.
4270//
4271// Use "Send" method on the returned Request to send the API call to the service.
4272// the "output" return value is not valid until after Send returns without error.
4273//
4274// See DescribeInstanceInformation for more information on using the DescribeInstanceInformation
4275// API call, and error handling.
4276//
4277// This method is useful when you want to inject custom logic or configuration
4278// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4279//
4280//
4281//    // Example sending a request using the DescribeInstanceInformationRequest method.
4282//    req, resp := client.DescribeInstanceInformationRequest(params)
4283//
4284//    err := req.Send()
4285//    if err == nil { // resp is now filled
4286//        fmt.Println(resp)
4287//    }
4288//
4289// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceInformation
4290func (c *SSM) DescribeInstanceInformationRequest(input *DescribeInstanceInformationInput) (req *request.Request, output *DescribeInstanceInformationOutput) {
4291	op := &request.Operation{
4292		Name:       opDescribeInstanceInformation,
4293		HTTPMethod: "POST",
4294		HTTPPath:   "/",
4295		Paginator: &request.Paginator{
4296			InputTokens:     []string{"NextToken"},
4297			OutputTokens:    []string{"NextToken"},
4298			LimitToken:      "MaxResults",
4299			TruncationToken: "",
4300		},
4301	}
4302
4303	if input == nil {
4304		input = &DescribeInstanceInformationInput{}
4305	}
4306
4307	output = &DescribeInstanceInformationOutput{}
4308	req = c.newRequest(op, input, output)
4309	return
4310}
4311
4312// DescribeInstanceInformation API operation for Amazon Simple Systems Manager (SSM).
4313//
4314// Describes one or more of your instances, including information about the
4315// operating system platform, the version of SSM Agent installed on the instance,
4316// instance status, and so on.
4317//
4318// If you specify one or more instance IDs, it returns information for those
4319// instances. If you don't specify instance IDs, it returns information for
4320// all your instances. If you specify an instance ID that isn't valid or an
4321// instance that you don't own, you receive an error.
4322//
4323// The IamRole field for this API operation is the Identity and Access Management
4324// (IAM) role assigned to on-premises instances. This call doesn't return the
4325// IAM role for EC2 instances.
4326//
4327// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4328// with awserr.Error's Code and Message methods to get detailed information about
4329// the error.
4330//
4331// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
4332// API operation DescribeInstanceInformation for usage and error information.
4333//
4334// Returned Error Types:
4335//   * InternalServerError
4336//   An error occurred on the server side.
4337//
4338//   * InvalidInstanceId
4339//   The following problems can cause this exception:
4340//
4341//      * You don't have permission to access the instance.
4342//
4343//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
4344//      Verify that SSM Agent is running.
4345//
4346//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
4347//      Agent.
4348//
4349//      * The instance isn't in valid state. Valid states are: Running, Pending,
4350//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
4351//
4352//   * InvalidNextToken
4353//   The specified token isn't valid.
4354//
4355//   * InvalidInstanceInformationFilterValue
4356//   The specified filter value isn't valid.
4357//
4358//   * InvalidFilterKey
4359//   The specified key isn't valid.
4360//
4361// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstanceInformation
4362func (c *SSM) DescribeInstanceInformation(input *DescribeInstanceInformationInput) (*DescribeInstanceInformationOutput, error) {
4363	req, out := c.DescribeInstanceInformationRequest(input)
4364	return out, req.Send()
4365}
4366
4367// DescribeInstanceInformationWithContext is the same as DescribeInstanceInformation with the addition of
4368// the ability to pass a context and additional request options.
4369//
4370// See DescribeInstanceInformation for details on how to use this API operation.
4371//
4372// The context must be non-nil and will be used for request cancellation. If
4373// the context is nil a panic will occur. In the future the SDK may create
4374// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4375// for more information on using Contexts.
4376func (c *SSM) DescribeInstanceInformationWithContext(ctx aws.Context, input *DescribeInstanceInformationInput, opts ...request.Option) (*DescribeInstanceInformationOutput, error) {
4377	req, out := c.DescribeInstanceInformationRequest(input)
4378	req.SetContext(ctx)
4379	req.ApplyOptions(opts...)
4380	return out, req.Send()
4381}
4382
4383// DescribeInstanceInformationPages iterates over the pages of a DescribeInstanceInformation operation,
4384// calling the "fn" function with the response data for each page. To stop
4385// iterating, return false from the fn function.
4386//
4387// See DescribeInstanceInformation method for more information on how to use this operation.
4388//
4389// Note: This operation can generate multiple requests to a service.
4390//
4391//    // Example iterating over at most 3 pages of a DescribeInstanceInformation operation.
4392//    pageNum := 0
4393//    err := client.DescribeInstanceInformationPages(params,
4394//        func(page *ssm.DescribeInstanceInformationOutput, lastPage bool) bool {
4395//            pageNum++
4396//            fmt.Println(page)
4397//            return pageNum <= 3
4398//        })
4399//
4400func (c *SSM) DescribeInstanceInformationPages(input *DescribeInstanceInformationInput, fn func(*DescribeInstanceInformationOutput, bool) bool) error {
4401	return c.DescribeInstanceInformationPagesWithContext(aws.BackgroundContext(), input, fn)
4402}
4403
4404// DescribeInstanceInformationPagesWithContext same as DescribeInstanceInformationPages except
4405// it takes a Context and allows setting request options on the pages.
4406//
4407// The context must be non-nil and will be used for request cancellation. If
4408// the context is nil a panic will occur. In the future the SDK may create
4409// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4410// for more information on using Contexts.
4411func (c *SSM) DescribeInstanceInformationPagesWithContext(ctx aws.Context, input *DescribeInstanceInformationInput, fn func(*DescribeInstanceInformationOutput, bool) bool, opts ...request.Option) error {
4412	p := request.Pagination{
4413		NewRequest: func() (*request.Request, error) {
4414			var inCpy *DescribeInstanceInformationInput
4415			if input != nil {
4416				tmp := *input
4417				inCpy = &tmp
4418			}
4419			req, _ := c.DescribeInstanceInformationRequest(inCpy)
4420			req.SetContext(ctx)
4421			req.ApplyOptions(opts...)
4422			return req, nil
4423		},
4424	}
4425
4426	for p.Next() {
4427		if !fn(p.Page().(*DescribeInstanceInformationOutput), !p.HasNextPage()) {
4428			break
4429		}
4430	}
4431
4432	return p.Err()
4433}
4434
4435const opDescribeInstancePatchStates = "DescribeInstancePatchStates"
4436
4437// DescribeInstancePatchStatesRequest generates a "aws/request.Request" representing the
4438// client's request for the DescribeInstancePatchStates operation. The "output" return
4439// value will be populated with the request's response once the request completes
4440// successfully.
4441//
4442// Use "Send" method on the returned Request to send the API call to the service.
4443// the "output" return value is not valid until after Send returns without error.
4444//
4445// See DescribeInstancePatchStates for more information on using the DescribeInstancePatchStates
4446// API call, and error handling.
4447//
4448// This method is useful when you want to inject custom logic or configuration
4449// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4450//
4451//
4452//    // Example sending a request using the DescribeInstancePatchStatesRequest method.
4453//    req, resp := client.DescribeInstancePatchStatesRequest(params)
4454//
4455//    err := req.Send()
4456//    if err == nil { // resp is now filled
4457//        fmt.Println(resp)
4458//    }
4459//
4460// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStates
4461func (c *SSM) DescribeInstancePatchStatesRequest(input *DescribeInstancePatchStatesInput) (req *request.Request, output *DescribeInstancePatchStatesOutput) {
4462	op := &request.Operation{
4463		Name:       opDescribeInstancePatchStates,
4464		HTTPMethod: "POST",
4465		HTTPPath:   "/",
4466		Paginator: &request.Paginator{
4467			InputTokens:     []string{"NextToken"},
4468			OutputTokens:    []string{"NextToken"},
4469			LimitToken:      "MaxResults",
4470			TruncationToken: "",
4471		},
4472	}
4473
4474	if input == nil {
4475		input = &DescribeInstancePatchStatesInput{}
4476	}
4477
4478	output = &DescribeInstancePatchStatesOutput{}
4479	req = c.newRequest(op, input, output)
4480	return
4481}
4482
4483// DescribeInstancePatchStates API operation for Amazon Simple Systems Manager (SSM).
4484//
4485// Retrieves the high-level patch state of one or more instances.
4486//
4487// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4488// with awserr.Error's Code and Message methods to get detailed information about
4489// the error.
4490//
4491// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
4492// API operation DescribeInstancePatchStates for usage and error information.
4493//
4494// Returned Error Types:
4495//   * InternalServerError
4496//   An error occurred on the server side.
4497//
4498//   * InvalidNextToken
4499//   The specified token isn't valid.
4500//
4501// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStates
4502func (c *SSM) DescribeInstancePatchStates(input *DescribeInstancePatchStatesInput) (*DescribeInstancePatchStatesOutput, error) {
4503	req, out := c.DescribeInstancePatchStatesRequest(input)
4504	return out, req.Send()
4505}
4506
4507// DescribeInstancePatchStatesWithContext is the same as DescribeInstancePatchStates with the addition of
4508// the ability to pass a context and additional request options.
4509//
4510// See DescribeInstancePatchStates for details on how to use this API operation.
4511//
4512// The context must be non-nil and will be used for request cancellation. If
4513// the context is nil a panic will occur. In the future the SDK may create
4514// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4515// for more information on using Contexts.
4516func (c *SSM) DescribeInstancePatchStatesWithContext(ctx aws.Context, input *DescribeInstancePatchStatesInput, opts ...request.Option) (*DescribeInstancePatchStatesOutput, error) {
4517	req, out := c.DescribeInstancePatchStatesRequest(input)
4518	req.SetContext(ctx)
4519	req.ApplyOptions(opts...)
4520	return out, req.Send()
4521}
4522
4523// DescribeInstancePatchStatesPages iterates over the pages of a DescribeInstancePatchStates operation,
4524// calling the "fn" function with the response data for each page. To stop
4525// iterating, return false from the fn function.
4526//
4527// See DescribeInstancePatchStates method for more information on how to use this operation.
4528//
4529// Note: This operation can generate multiple requests to a service.
4530//
4531//    // Example iterating over at most 3 pages of a DescribeInstancePatchStates operation.
4532//    pageNum := 0
4533//    err := client.DescribeInstancePatchStatesPages(params,
4534//        func(page *ssm.DescribeInstancePatchStatesOutput, lastPage bool) bool {
4535//            pageNum++
4536//            fmt.Println(page)
4537//            return pageNum <= 3
4538//        })
4539//
4540func (c *SSM) DescribeInstancePatchStatesPages(input *DescribeInstancePatchStatesInput, fn func(*DescribeInstancePatchStatesOutput, bool) bool) error {
4541	return c.DescribeInstancePatchStatesPagesWithContext(aws.BackgroundContext(), input, fn)
4542}
4543
4544// DescribeInstancePatchStatesPagesWithContext same as DescribeInstancePatchStatesPages except
4545// it takes a Context and allows setting request options on the pages.
4546//
4547// The context must be non-nil and will be used for request cancellation. If
4548// the context is nil a panic will occur. In the future the SDK may create
4549// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4550// for more information on using Contexts.
4551func (c *SSM) DescribeInstancePatchStatesPagesWithContext(ctx aws.Context, input *DescribeInstancePatchStatesInput, fn func(*DescribeInstancePatchStatesOutput, bool) bool, opts ...request.Option) error {
4552	p := request.Pagination{
4553		NewRequest: func() (*request.Request, error) {
4554			var inCpy *DescribeInstancePatchStatesInput
4555			if input != nil {
4556				tmp := *input
4557				inCpy = &tmp
4558			}
4559			req, _ := c.DescribeInstancePatchStatesRequest(inCpy)
4560			req.SetContext(ctx)
4561			req.ApplyOptions(opts...)
4562			return req, nil
4563		},
4564	}
4565
4566	for p.Next() {
4567		if !fn(p.Page().(*DescribeInstancePatchStatesOutput), !p.HasNextPage()) {
4568			break
4569		}
4570	}
4571
4572	return p.Err()
4573}
4574
4575const opDescribeInstancePatchStatesForPatchGroup = "DescribeInstancePatchStatesForPatchGroup"
4576
4577// DescribeInstancePatchStatesForPatchGroupRequest generates a "aws/request.Request" representing the
4578// client's request for the DescribeInstancePatchStatesForPatchGroup operation. The "output" return
4579// value will be populated with the request's response once the request completes
4580// successfully.
4581//
4582// Use "Send" method on the returned Request to send the API call to the service.
4583// the "output" return value is not valid until after Send returns without error.
4584//
4585// See DescribeInstancePatchStatesForPatchGroup for more information on using the DescribeInstancePatchStatesForPatchGroup
4586// API call, and error handling.
4587//
4588// This method is useful when you want to inject custom logic or configuration
4589// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4590//
4591//
4592//    // Example sending a request using the DescribeInstancePatchStatesForPatchGroupRequest method.
4593//    req, resp := client.DescribeInstancePatchStatesForPatchGroupRequest(params)
4594//
4595//    err := req.Send()
4596//    if err == nil { // resp is now filled
4597//        fmt.Println(resp)
4598//    }
4599//
4600// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStatesForPatchGroup
4601func (c *SSM) DescribeInstancePatchStatesForPatchGroupRequest(input *DescribeInstancePatchStatesForPatchGroupInput) (req *request.Request, output *DescribeInstancePatchStatesForPatchGroupOutput) {
4602	op := &request.Operation{
4603		Name:       opDescribeInstancePatchStatesForPatchGroup,
4604		HTTPMethod: "POST",
4605		HTTPPath:   "/",
4606		Paginator: &request.Paginator{
4607			InputTokens:     []string{"NextToken"},
4608			OutputTokens:    []string{"NextToken"},
4609			LimitToken:      "MaxResults",
4610			TruncationToken: "",
4611		},
4612	}
4613
4614	if input == nil {
4615		input = &DescribeInstancePatchStatesForPatchGroupInput{}
4616	}
4617
4618	output = &DescribeInstancePatchStatesForPatchGroupOutput{}
4619	req = c.newRequest(op, input, output)
4620	return
4621}
4622
4623// DescribeInstancePatchStatesForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
4624//
4625// Retrieves the high-level patch state for the instances in the specified patch
4626// group.
4627//
4628// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4629// with awserr.Error's Code and Message methods to get detailed information about
4630// the error.
4631//
4632// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
4633// API operation DescribeInstancePatchStatesForPatchGroup for usage and error information.
4634//
4635// Returned Error Types:
4636//   * InternalServerError
4637//   An error occurred on the server side.
4638//
4639//   * InvalidFilter
4640//   The filter name isn't valid. Verify the you entered the correct name and
4641//   try again.
4642//
4643//   * InvalidNextToken
4644//   The specified token isn't valid.
4645//
4646// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatchStatesForPatchGroup
4647func (c *SSM) DescribeInstancePatchStatesForPatchGroup(input *DescribeInstancePatchStatesForPatchGroupInput) (*DescribeInstancePatchStatesForPatchGroupOutput, error) {
4648	req, out := c.DescribeInstancePatchStatesForPatchGroupRequest(input)
4649	return out, req.Send()
4650}
4651
4652// DescribeInstancePatchStatesForPatchGroupWithContext is the same as DescribeInstancePatchStatesForPatchGroup with the addition of
4653// the ability to pass a context and additional request options.
4654//
4655// See DescribeInstancePatchStatesForPatchGroup for details on how to use this API operation.
4656//
4657// The context must be non-nil and will be used for request cancellation. If
4658// the context is nil a panic will occur. In the future the SDK may create
4659// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4660// for more information on using Contexts.
4661func (c *SSM) DescribeInstancePatchStatesForPatchGroupWithContext(ctx aws.Context, input *DescribeInstancePatchStatesForPatchGroupInput, opts ...request.Option) (*DescribeInstancePatchStatesForPatchGroupOutput, error) {
4662	req, out := c.DescribeInstancePatchStatesForPatchGroupRequest(input)
4663	req.SetContext(ctx)
4664	req.ApplyOptions(opts...)
4665	return out, req.Send()
4666}
4667
4668// DescribeInstancePatchStatesForPatchGroupPages iterates over the pages of a DescribeInstancePatchStatesForPatchGroup operation,
4669// calling the "fn" function with the response data for each page. To stop
4670// iterating, return false from the fn function.
4671//
4672// See DescribeInstancePatchStatesForPatchGroup method for more information on how to use this operation.
4673//
4674// Note: This operation can generate multiple requests to a service.
4675//
4676//    // Example iterating over at most 3 pages of a DescribeInstancePatchStatesForPatchGroup operation.
4677//    pageNum := 0
4678//    err := client.DescribeInstancePatchStatesForPatchGroupPages(params,
4679//        func(page *ssm.DescribeInstancePatchStatesForPatchGroupOutput, lastPage bool) bool {
4680//            pageNum++
4681//            fmt.Println(page)
4682//            return pageNum <= 3
4683//        })
4684//
4685func (c *SSM) DescribeInstancePatchStatesForPatchGroupPages(input *DescribeInstancePatchStatesForPatchGroupInput, fn func(*DescribeInstancePatchStatesForPatchGroupOutput, bool) bool) error {
4686	return c.DescribeInstancePatchStatesForPatchGroupPagesWithContext(aws.BackgroundContext(), input, fn)
4687}
4688
4689// DescribeInstancePatchStatesForPatchGroupPagesWithContext same as DescribeInstancePatchStatesForPatchGroupPages except
4690// it takes a Context and allows setting request options on the pages.
4691//
4692// The context must be non-nil and will be used for request cancellation. If
4693// the context is nil a panic will occur. In the future the SDK may create
4694// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4695// for more information on using Contexts.
4696func (c *SSM) DescribeInstancePatchStatesForPatchGroupPagesWithContext(ctx aws.Context, input *DescribeInstancePatchStatesForPatchGroupInput, fn func(*DescribeInstancePatchStatesForPatchGroupOutput, bool) bool, opts ...request.Option) error {
4697	p := request.Pagination{
4698		NewRequest: func() (*request.Request, error) {
4699			var inCpy *DescribeInstancePatchStatesForPatchGroupInput
4700			if input != nil {
4701				tmp := *input
4702				inCpy = &tmp
4703			}
4704			req, _ := c.DescribeInstancePatchStatesForPatchGroupRequest(inCpy)
4705			req.SetContext(ctx)
4706			req.ApplyOptions(opts...)
4707			return req, nil
4708		},
4709	}
4710
4711	for p.Next() {
4712		if !fn(p.Page().(*DescribeInstancePatchStatesForPatchGroupOutput), !p.HasNextPage()) {
4713			break
4714		}
4715	}
4716
4717	return p.Err()
4718}
4719
4720const opDescribeInstancePatches = "DescribeInstancePatches"
4721
4722// DescribeInstancePatchesRequest generates a "aws/request.Request" representing the
4723// client's request for the DescribeInstancePatches operation. The "output" return
4724// value will be populated with the request's response once the request completes
4725// successfully.
4726//
4727// Use "Send" method on the returned Request to send the API call to the service.
4728// the "output" return value is not valid until after Send returns without error.
4729//
4730// See DescribeInstancePatches for more information on using the DescribeInstancePatches
4731// API call, and error handling.
4732//
4733// This method is useful when you want to inject custom logic or configuration
4734// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4735//
4736//
4737//    // Example sending a request using the DescribeInstancePatchesRequest method.
4738//    req, resp := client.DescribeInstancePatchesRequest(params)
4739//
4740//    err := req.Send()
4741//    if err == nil { // resp is now filled
4742//        fmt.Println(resp)
4743//    }
4744//
4745// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatches
4746func (c *SSM) DescribeInstancePatchesRequest(input *DescribeInstancePatchesInput) (req *request.Request, output *DescribeInstancePatchesOutput) {
4747	op := &request.Operation{
4748		Name:       opDescribeInstancePatches,
4749		HTTPMethod: "POST",
4750		HTTPPath:   "/",
4751		Paginator: &request.Paginator{
4752			InputTokens:     []string{"NextToken"},
4753			OutputTokens:    []string{"NextToken"},
4754			LimitToken:      "MaxResults",
4755			TruncationToken: "",
4756		},
4757	}
4758
4759	if input == nil {
4760		input = &DescribeInstancePatchesInput{}
4761	}
4762
4763	output = &DescribeInstancePatchesOutput{}
4764	req = c.newRequest(op, input, output)
4765	return
4766}
4767
4768// DescribeInstancePatches API operation for Amazon Simple Systems Manager (SSM).
4769//
4770// Retrieves information about the patches on the specified instance and their
4771// state relative to the patch baseline being used for the instance.
4772//
4773// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4774// with awserr.Error's Code and Message methods to get detailed information about
4775// the error.
4776//
4777// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
4778// API operation DescribeInstancePatches for usage and error information.
4779//
4780// Returned Error Types:
4781//   * InternalServerError
4782//   An error occurred on the server side.
4783//
4784//   * InvalidInstanceId
4785//   The following problems can cause this exception:
4786//
4787//      * You don't have permission to access the instance.
4788//
4789//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
4790//      Verify that SSM Agent is running.
4791//
4792//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
4793//      Agent.
4794//
4795//      * The instance isn't in valid state. Valid states are: Running, Pending,
4796//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
4797//
4798//   * InvalidFilter
4799//   The filter name isn't valid. Verify the you entered the correct name and
4800//   try again.
4801//
4802//   * InvalidNextToken
4803//   The specified token isn't valid.
4804//
4805// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInstancePatches
4806func (c *SSM) DescribeInstancePatches(input *DescribeInstancePatchesInput) (*DescribeInstancePatchesOutput, error) {
4807	req, out := c.DescribeInstancePatchesRequest(input)
4808	return out, req.Send()
4809}
4810
4811// DescribeInstancePatchesWithContext is the same as DescribeInstancePatches with the addition of
4812// the ability to pass a context and additional request options.
4813//
4814// See DescribeInstancePatches for details on how to use this API operation.
4815//
4816// The context must be non-nil and will be used for request cancellation. If
4817// the context is nil a panic will occur. In the future the SDK may create
4818// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4819// for more information on using Contexts.
4820func (c *SSM) DescribeInstancePatchesWithContext(ctx aws.Context, input *DescribeInstancePatchesInput, opts ...request.Option) (*DescribeInstancePatchesOutput, error) {
4821	req, out := c.DescribeInstancePatchesRequest(input)
4822	req.SetContext(ctx)
4823	req.ApplyOptions(opts...)
4824	return out, req.Send()
4825}
4826
4827// DescribeInstancePatchesPages iterates over the pages of a DescribeInstancePatches operation,
4828// calling the "fn" function with the response data for each page. To stop
4829// iterating, return false from the fn function.
4830//
4831// See DescribeInstancePatches method for more information on how to use this operation.
4832//
4833// Note: This operation can generate multiple requests to a service.
4834//
4835//    // Example iterating over at most 3 pages of a DescribeInstancePatches operation.
4836//    pageNum := 0
4837//    err := client.DescribeInstancePatchesPages(params,
4838//        func(page *ssm.DescribeInstancePatchesOutput, lastPage bool) bool {
4839//            pageNum++
4840//            fmt.Println(page)
4841//            return pageNum <= 3
4842//        })
4843//
4844func (c *SSM) DescribeInstancePatchesPages(input *DescribeInstancePatchesInput, fn func(*DescribeInstancePatchesOutput, bool) bool) error {
4845	return c.DescribeInstancePatchesPagesWithContext(aws.BackgroundContext(), input, fn)
4846}
4847
4848// DescribeInstancePatchesPagesWithContext same as DescribeInstancePatchesPages except
4849// it takes a Context and allows setting request options on the pages.
4850//
4851// The context must be non-nil and will be used for request cancellation. If
4852// the context is nil a panic will occur. In the future the SDK may create
4853// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4854// for more information on using Contexts.
4855func (c *SSM) DescribeInstancePatchesPagesWithContext(ctx aws.Context, input *DescribeInstancePatchesInput, fn func(*DescribeInstancePatchesOutput, bool) bool, opts ...request.Option) error {
4856	p := request.Pagination{
4857		NewRequest: func() (*request.Request, error) {
4858			var inCpy *DescribeInstancePatchesInput
4859			if input != nil {
4860				tmp := *input
4861				inCpy = &tmp
4862			}
4863			req, _ := c.DescribeInstancePatchesRequest(inCpy)
4864			req.SetContext(ctx)
4865			req.ApplyOptions(opts...)
4866			return req, nil
4867		},
4868	}
4869
4870	for p.Next() {
4871		if !fn(p.Page().(*DescribeInstancePatchesOutput), !p.HasNextPage()) {
4872			break
4873		}
4874	}
4875
4876	return p.Err()
4877}
4878
4879const opDescribeInventoryDeletions = "DescribeInventoryDeletions"
4880
4881// DescribeInventoryDeletionsRequest generates a "aws/request.Request" representing the
4882// client's request for the DescribeInventoryDeletions operation. The "output" return
4883// value will be populated with the request's response once the request completes
4884// successfully.
4885//
4886// Use "Send" method on the returned Request to send the API call to the service.
4887// the "output" return value is not valid until after Send returns without error.
4888//
4889// See DescribeInventoryDeletions for more information on using the DescribeInventoryDeletions
4890// API call, and error handling.
4891//
4892// This method is useful when you want to inject custom logic or configuration
4893// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4894//
4895//
4896//    // Example sending a request using the DescribeInventoryDeletionsRequest method.
4897//    req, resp := client.DescribeInventoryDeletionsRequest(params)
4898//
4899//    err := req.Send()
4900//    if err == nil { // resp is now filled
4901//        fmt.Println(resp)
4902//    }
4903//
4904// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInventoryDeletions
4905func (c *SSM) DescribeInventoryDeletionsRequest(input *DescribeInventoryDeletionsInput) (req *request.Request, output *DescribeInventoryDeletionsOutput) {
4906	op := &request.Operation{
4907		Name:       opDescribeInventoryDeletions,
4908		HTTPMethod: "POST",
4909		HTTPPath:   "/",
4910		Paginator: &request.Paginator{
4911			InputTokens:     []string{"NextToken"},
4912			OutputTokens:    []string{"NextToken"},
4913			LimitToken:      "MaxResults",
4914			TruncationToken: "",
4915		},
4916	}
4917
4918	if input == nil {
4919		input = &DescribeInventoryDeletionsInput{}
4920	}
4921
4922	output = &DescribeInventoryDeletionsOutput{}
4923	req = c.newRequest(op, input, output)
4924	return
4925}
4926
4927// DescribeInventoryDeletions API operation for Amazon Simple Systems Manager (SSM).
4928//
4929// Describes a specific delete inventory operation.
4930//
4931// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4932// with awserr.Error's Code and Message methods to get detailed information about
4933// the error.
4934//
4935// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
4936// API operation DescribeInventoryDeletions for usage and error information.
4937//
4938// Returned Error Types:
4939//   * InternalServerError
4940//   An error occurred on the server side.
4941//
4942//   * InvalidDeletionIdException
4943//   The ID specified for the delete operation doesn't exist or isn't valid. Verify
4944//   the ID and try again.
4945//
4946//   * InvalidNextToken
4947//   The specified token isn't valid.
4948//
4949// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeInventoryDeletions
4950func (c *SSM) DescribeInventoryDeletions(input *DescribeInventoryDeletionsInput) (*DescribeInventoryDeletionsOutput, error) {
4951	req, out := c.DescribeInventoryDeletionsRequest(input)
4952	return out, req.Send()
4953}
4954
4955// DescribeInventoryDeletionsWithContext is the same as DescribeInventoryDeletions with the addition of
4956// the ability to pass a context and additional request options.
4957//
4958// See DescribeInventoryDeletions for details on how to use this API operation.
4959//
4960// The context must be non-nil and will be used for request cancellation. If
4961// the context is nil a panic will occur. In the future the SDK may create
4962// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4963// for more information on using Contexts.
4964func (c *SSM) DescribeInventoryDeletionsWithContext(ctx aws.Context, input *DescribeInventoryDeletionsInput, opts ...request.Option) (*DescribeInventoryDeletionsOutput, error) {
4965	req, out := c.DescribeInventoryDeletionsRequest(input)
4966	req.SetContext(ctx)
4967	req.ApplyOptions(opts...)
4968	return out, req.Send()
4969}
4970
4971// DescribeInventoryDeletionsPages iterates over the pages of a DescribeInventoryDeletions operation,
4972// calling the "fn" function with the response data for each page. To stop
4973// iterating, return false from the fn function.
4974//
4975// See DescribeInventoryDeletions method for more information on how to use this operation.
4976//
4977// Note: This operation can generate multiple requests to a service.
4978//
4979//    // Example iterating over at most 3 pages of a DescribeInventoryDeletions operation.
4980//    pageNum := 0
4981//    err := client.DescribeInventoryDeletionsPages(params,
4982//        func(page *ssm.DescribeInventoryDeletionsOutput, lastPage bool) bool {
4983//            pageNum++
4984//            fmt.Println(page)
4985//            return pageNum <= 3
4986//        })
4987//
4988func (c *SSM) DescribeInventoryDeletionsPages(input *DescribeInventoryDeletionsInput, fn func(*DescribeInventoryDeletionsOutput, bool) bool) error {
4989	return c.DescribeInventoryDeletionsPagesWithContext(aws.BackgroundContext(), input, fn)
4990}
4991
4992// DescribeInventoryDeletionsPagesWithContext same as DescribeInventoryDeletionsPages except
4993// it takes a Context and allows setting request options on the pages.
4994//
4995// The context must be non-nil and will be used for request cancellation. If
4996// the context is nil a panic will occur. In the future the SDK may create
4997// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4998// for more information on using Contexts.
4999func (c *SSM) DescribeInventoryDeletionsPagesWithContext(ctx aws.Context, input *DescribeInventoryDeletionsInput, fn func(*DescribeInventoryDeletionsOutput, bool) bool, opts ...request.Option) error {
5000	p := request.Pagination{
5001		NewRequest: func() (*request.Request, error) {
5002			var inCpy *DescribeInventoryDeletionsInput
5003			if input != nil {
5004				tmp := *input
5005				inCpy = &tmp
5006			}
5007			req, _ := c.DescribeInventoryDeletionsRequest(inCpy)
5008			req.SetContext(ctx)
5009			req.ApplyOptions(opts...)
5010			return req, nil
5011		},
5012	}
5013
5014	for p.Next() {
5015		if !fn(p.Page().(*DescribeInventoryDeletionsOutput), !p.HasNextPage()) {
5016			break
5017		}
5018	}
5019
5020	return p.Err()
5021}
5022
5023const opDescribeMaintenanceWindowExecutionTaskInvocations = "DescribeMaintenanceWindowExecutionTaskInvocations"
5024
5025// DescribeMaintenanceWindowExecutionTaskInvocationsRequest generates a "aws/request.Request" representing the
5026// client's request for the DescribeMaintenanceWindowExecutionTaskInvocations operation. The "output" return
5027// value will be populated with the request's response once the request completes
5028// successfully.
5029//
5030// Use "Send" method on the returned Request to send the API call to the service.
5031// the "output" return value is not valid until after Send returns without error.
5032//
5033// See DescribeMaintenanceWindowExecutionTaskInvocations for more information on using the DescribeMaintenanceWindowExecutionTaskInvocations
5034// API call, and error handling.
5035//
5036// This method is useful when you want to inject custom logic or configuration
5037// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5038//
5039//
5040//    // Example sending a request using the DescribeMaintenanceWindowExecutionTaskInvocationsRequest method.
5041//    req, resp := client.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(params)
5042//
5043//    err := req.Send()
5044//    if err == nil { // resp is now filled
5045//        fmt.Println(resp)
5046//    }
5047//
5048// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTaskInvocations
5049func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsRequest(input *DescribeMaintenanceWindowExecutionTaskInvocationsInput) (req *request.Request, output *DescribeMaintenanceWindowExecutionTaskInvocationsOutput) {
5050	op := &request.Operation{
5051		Name:       opDescribeMaintenanceWindowExecutionTaskInvocations,
5052		HTTPMethod: "POST",
5053		HTTPPath:   "/",
5054		Paginator: &request.Paginator{
5055			InputTokens:     []string{"NextToken"},
5056			OutputTokens:    []string{"NextToken"},
5057			LimitToken:      "MaxResults",
5058			TruncationToken: "",
5059		},
5060	}
5061
5062	if input == nil {
5063		input = &DescribeMaintenanceWindowExecutionTaskInvocationsInput{}
5064	}
5065
5066	output = &DescribeMaintenanceWindowExecutionTaskInvocationsOutput{}
5067	req = c.newRequest(op, input, output)
5068	return
5069}
5070
5071// DescribeMaintenanceWindowExecutionTaskInvocations API operation for Amazon Simple Systems Manager (SSM).
5072//
5073// Retrieves the individual task executions (one per target) for a particular
5074// task run as part of a maintenance window execution.
5075//
5076// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5077// with awserr.Error's Code and Message methods to get detailed information about
5078// the error.
5079//
5080// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
5081// API operation DescribeMaintenanceWindowExecutionTaskInvocations for usage and error information.
5082//
5083// Returned Error Types:
5084//   * DoesNotExistException
5085//   Error returned when the ID specified for a resource, such as a maintenance
5086//   window or patch baseline, doesn't exist.
5087//
5088//   For information about resource quotas in Amazon Web Services Systems Manager,
5089//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
5090//   in the Amazon Web Services General Reference.
5091//
5092//   * InternalServerError
5093//   An error occurred on the server side.
5094//
5095// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTaskInvocations
5096func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocations(input *DescribeMaintenanceWindowExecutionTaskInvocationsInput) (*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, error) {
5097	req, out := c.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(input)
5098	return out, req.Send()
5099}
5100
5101// DescribeMaintenanceWindowExecutionTaskInvocationsWithContext is the same as DescribeMaintenanceWindowExecutionTaskInvocations with the addition of
5102// the ability to pass a context and additional request options.
5103//
5104// See DescribeMaintenanceWindowExecutionTaskInvocations for details on how to use this API operation.
5105//
5106// The context must be non-nil and will be used for request cancellation. If
5107// the context is nil a panic will occur. In the future the SDK may create
5108// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5109// for more information on using Contexts.
5110func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTaskInvocationsInput, opts ...request.Option) (*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, error) {
5111	req, out := c.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(input)
5112	req.SetContext(ctx)
5113	req.ApplyOptions(opts...)
5114	return out, req.Send()
5115}
5116
5117// DescribeMaintenanceWindowExecutionTaskInvocationsPages iterates over the pages of a DescribeMaintenanceWindowExecutionTaskInvocations operation,
5118// calling the "fn" function with the response data for each page. To stop
5119// iterating, return false from the fn function.
5120//
5121// See DescribeMaintenanceWindowExecutionTaskInvocations method for more information on how to use this operation.
5122//
5123// Note: This operation can generate multiple requests to a service.
5124//
5125//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowExecutionTaskInvocations operation.
5126//    pageNum := 0
5127//    err := client.DescribeMaintenanceWindowExecutionTaskInvocationsPages(params,
5128//        func(page *ssm.DescribeMaintenanceWindowExecutionTaskInvocationsOutput, lastPage bool) bool {
5129//            pageNum++
5130//            fmt.Println(page)
5131//            return pageNum <= 3
5132//        })
5133//
5134func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsPages(input *DescribeMaintenanceWindowExecutionTaskInvocationsInput, fn func(*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, bool) bool) error {
5135	return c.DescribeMaintenanceWindowExecutionTaskInvocationsPagesWithContext(aws.BackgroundContext(), input, fn)
5136}
5137
5138// DescribeMaintenanceWindowExecutionTaskInvocationsPagesWithContext same as DescribeMaintenanceWindowExecutionTaskInvocationsPages except
5139// it takes a Context and allows setting request options on the pages.
5140//
5141// The context must be non-nil and will be used for request cancellation. If
5142// the context is nil a panic will occur. In the future the SDK may create
5143// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5144// for more information on using Contexts.
5145func (c *SSM) DescribeMaintenanceWindowExecutionTaskInvocationsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTaskInvocationsInput, fn func(*DescribeMaintenanceWindowExecutionTaskInvocationsOutput, bool) bool, opts ...request.Option) error {
5146	p := request.Pagination{
5147		NewRequest: func() (*request.Request, error) {
5148			var inCpy *DescribeMaintenanceWindowExecutionTaskInvocationsInput
5149			if input != nil {
5150				tmp := *input
5151				inCpy = &tmp
5152			}
5153			req, _ := c.DescribeMaintenanceWindowExecutionTaskInvocationsRequest(inCpy)
5154			req.SetContext(ctx)
5155			req.ApplyOptions(opts...)
5156			return req, nil
5157		},
5158	}
5159
5160	for p.Next() {
5161		if !fn(p.Page().(*DescribeMaintenanceWindowExecutionTaskInvocationsOutput), !p.HasNextPage()) {
5162			break
5163		}
5164	}
5165
5166	return p.Err()
5167}
5168
5169const opDescribeMaintenanceWindowExecutionTasks = "DescribeMaintenanceWindowExecutionTasks"
5170
5171// DescribeMaintenanceWindowExecutionTasksRequest generates a "aws/request.Request" representing the
5172// client's request for the DescribeMaintenanceWindowExecutionTasks operation. The "output" return
5173// value will be populated with the request's response once the request completes
5174// successfully.
5175//
5176// Use "Send" method on the returned Request to send the API call to the service.
5177// the "output" return value is not valid until after Send returns without error.
5178//
5179// See DescribeMaintenanceWindowExecutionTasks for more information on using the DescribeMaintenanceWindowExecutionTasks
5180// API call, and error handling.
5181//
5182// This method is useful when you want to inject custom logic or configuration
5183// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5184//
5185//
5186//    // Example sending a request using the DescribeMaintenanceWindowExecutionTasksRequest method.
5187//    req, resp := client.DescribeMaintenanceWindowExecutionTasksRequest(params)
5188//
5189//    err := req.Send()
5190//    if err == nil { // resp is now filled
5191//        fmt.Println(resp)
5192//    }
5193//
5194// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTasks
5195func (c *SSM) DescribeMaintenanceWindowExecutionTasksRequest(input *DescribeMaintenanceWindowExecutionTasksInput) (req *request.Request, output *DescribeMaintenanceWindowExecutionTasksOutput) {
5196	op := &request.Operation{
5197		Name:       opDescribeMaintenanceWindowExecutionTasks,
5198		HTTPMethod: "POST",
5199		HTTPPath:   "/",
5200		Paginator: &request.Paginator{
5201			InputTokens:     []string{"NextToken"},
5202			OutputTokens:    []string{"NextToken"},
5203			LimitToken:      "MaxResults",
5204			TruncationToken: "",
5205		},
5206	}
5207
5208	if input == nil {
5209		input = &DescribeMaintenanceWindowExecutionTasksInput{}
5210	}
5211
5212	output = &DescribeMaintenanceWindowExecutionTasksOutput{}
5213	req = c.newRequest(op, input, output)
5214	return
5215}
5216
5217// DescribeMaintenanceWindowExecutionTasks API operation for Amazon Simple Systems Manager (SSM).
5218//
5219// For a given maintenance window execution, lists the tasks that were run.
5220//
5221// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5222// with awserr.Error's Code and Message methods to get detailed information about
5223// the error.
5224//
5225// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
5226// API operation DescribeMaintenanceWindowExecutionTasks for usage and error information.
5227//
5228// Returned Error Types:
5229//   * DoesNotExistException
5230//   Error returned when the ID specified for a resource, such as a maintenance
5231//   window or patch baseline, doesn't exist.
5232//
5233//   For information about resource quotas in Amazon Web Services Systems Manager,
5234//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
5235//   in the Amazon Web Services General Reference.
5236//
5237//   * InternalServerError
5238//   An error occurred on the server side.
5239//
5240// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutionTasks
5241func (c *SSM) DescribeMaintenanceWindowExecutionTasks(input *DescribeMaintenanceWindowExecutionTasksInput) (*DescribeMaintenanceWindowExecutionTasksOutput, error) {
5242	req, out := c.DescribeMaintenanceWindowExecutionTasksRequest(input)
5243	return out, req.Send()
5244}
5245
5246// DescribeMaintenanceWindowExecutionTasksWithContext is the same as DescribeMaintenanceWindowExecutionTasks with the addition of
5247// the ability to pass a context and additional request options.
5248//
5249// See DescribeMaintenanceWindowExecutionTasks for details on how to use this API operation.
5250//
5251// The context must be non-nil and will be used for request cancellation. If
5252// the context is nil a panic will occur. In the future the SDK may create
5253// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5254// for more information on using Contexts.
5255func (c *SSM) DescribeMaintenanceWindowExecutionTasksWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTasksInput, opts ...request.Option) (*DescribeMaintenanceWindowExecutionTasksOutput, error) {
5256	req, out := c.DescribeMaintenanceWindowExecutionTasksRequest(input)
5257	req.SetContext(ctx)
5258	req.ApplyOptions(opts...)
5259	return out, req.Send()
5260}
5261
5262// DescribeMaintenanceWindowExecutionTasksPages iterates over the pages of a DescribeMaintenanceWindowExecutionTasks operation,
5263// calling the "fn" function with the response data for each page. To stop
5264// iterating, return false from the fn function.
5265//
5266// See DescribeMaintenanceWindowExecutionTasks method for more information on how to use this operation.
5267//
5268// Note: This operation can generate multiple requests to a service.
5269//
5270//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowExecutionTasks operation.
5271//    pageNum := 0
5272//    err := client.DescribeMaintenanceWindowExecutionTasksPages(params,
5273//        func(page *ssm.DescribeMaintenanceWindowExecutionTasksOutput, lastPage bool) bool {
5274//            pageNum++
5275//            fmt.Println(page)
5276//            return pageNum <= 3
5277//        })
5278//
5279func (c *SSM) DescribeMaintenanceWindowExecutionTasksPages(input *DescribeMaintenanceWindowExecutionTasksInput, fn func(*DescribeMaintenanceWindowExecutionTasksOutput, bool) bool) error {
5280	return c.DescribeMaintenanceWindowExecutionTasksPagesWithContext(aws.BackgroundContext(), input, fn)
5281}
5282
5283// DescribeMaintenanceWindowExecutionTasksPagesWithContext same as DescribeMaintenanceWindowExecutionTasksPages except
5284// it takes a Context and allows setting request options on the pages.
5285//
5286// The context must be non-nil and will be used for request cancellation. If
5287// the context is nil a panic will occur. In the future the SDK may create
5288// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5289// for more information on using Contexts.
5290func (c *SSM) DescribeMaintenanceWindowExecutionTasksPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionTasksInput, fn func(*DescribeMaintenanceWindowExecutionTasksOutput, bool) bool, opts ...request.Option) error {
5291	p := request.Pagination{
5292		NewRequest: func() (*request.Request, error) {
5293			var inCpy *DescribeMaintenanceWindowExecutionTasksInput
5294			if input != nil {
5295				tmp := *input
5296				inCpy = &tmp
5297			}
5298			req, _ := c.DescribeMaintenanceWindowExecutionTasksRequest(inCpy)
5299			req.SetContext(ctx)
5300			req.ApplyOptions(opts...)
5301			return req, nil
5302		},
5303	}
5304
5305	for p.Next() {
5306		if !fn(p.Page().(*DescribeMaintenanceWindowExecutionTasksOutput), !p.HasNextPage()) {
5307			break
5308		}
5309	}
5310
5311	return p.Err()
5312}
5313
5314const opDescribeMaintenanceWindowExecutions = "DescribeMaintenanceWindowExecutions"
5315
5316// DescribeMaintenanceWindowExecutionsRequest generates a "aws/request.Request" representing the
5317// client's request for the DescribeMaintenanceWindowExecutions operation. The "output" return
5318// value will be populated with the request's response once the request completes
5319// successfully.
5320//
5321// Use "Send" method on the returned Request to send the API call to the service.
5322// the "output" return value is not valid until after Send returns without error.
5323//
5324// See DescribeMaintenanceWindowExecutions for more information on using the DescribeMaintenanceWindowExecutions
5325// API call, and error handling.
5326//
5327// This method is useful when you want to inject custom logic or configuration
5328// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5329//
5330//
5331//    // Example sending a request using the DescribeMaintenanceWindowExecutionsRequest method.
5332//    req, resp := client.DescribeMaintenanceWindowExecutionsRequest(params)
5333//
5334//    err := req.Send()
5335//    if err == nil { // resp is now filled
5336//        fmt.Println(resp)
5337//    }
5338//
5339// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutions
5340func (c *SSM) DescribeMaintenanceWindowExecutionsRequest(input *DescribeMaintenanceWindowExecutionsInput) (req *request.Request, output *DescribeMaintenanceWindowExecutionsOutput) {
5341	op := &request.Operation{
5342		Name:       opDescribeMaintenanceWindowExecutions,
5343		HTTPMethod: "POST",
5344		HTTPPath:   "/",
5345		Paginator: &request.Paginator{
5346			InputTokens:     []string{"NextToken"},
5347			OutputTokens:    []string{"NextToken"},
5348			LimitToken:      "MaxResults",
5349			TruncationToken: "",
5350		},
5351	}
5352
5353	if input == nil {
5354		input = &DescribeMaintenanceWindowExecutionsInput{}
5355	}
5356
5357	output = &DescribeMaintenanceWindowExecutionsOutput{}
5358	req = c.newRequest(op, input, output)
5359	return
5360}
5361
5362// DescribeMaintenanceWindowExecutions API operation for Amazon Simple Systems Manager (SSM).
5363//
5364// Lists the executions of a maintenance window. This includes information about
5365// when the maintenance window was scheduled to be active, and information about
5366// tasks registered and run with the maintenance window.
5367//
5368// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5369// with awserr.Error's Code and Message methods to get detailed information about
5370// the error.
5371//
5372// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
5373// API operation DescribeMaintenanceWindowExecutions for usage and error information.
5374//
5375// Returned Error Types:
5376//   * InternalServerError
5377//   An error occurred on the server side.
5378//
5379// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowExecutions
5380func (c *SSM) DescribeMaintenanceWindowExecutions(input *DescribeMaintenanceWindowExecutionsInput) (*DescribeMaintenanceWindowExecutionsOutput, error) {
5381	req, out := c.DescribeMaintenanceWindowExecutionsRequest(input)
5382	return out, req.Send()
5383}
5384
5385// DescribeMaintenanceWindowExecutionsWithContext is the same as DescribeMaintenanceWindowExecutions with the addition of
5386// the ability to pass a context and additional request options.
5387//
5388// See DescribeMaintenanceWindowExecutions for details on how to use this API operation.
5389//
5390// The context must be non-nil and will be used for request cancellation. If
5391// the context is nil a panic will occur. In the future the SDK may create
5392// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5393// for more information on using Contexts.
5394func (c *SSM) DescribeMaintenanceWindowExecutionsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionsInput, opts ...request.Option) (*DescribeMaintenanceWindowExecutionsOutput, error) {
5395	req, out := c.DescribeMaintenanceWindowExecutionsRequest(input)
5396	req.SetContext(ctx)
5397	req.ApplyOptions(opts...)
5398	return out, req.Send()
5399}
5400
5401// DescribeMaintenanceWindowExecutionsPages iterates over the pages of a DescribeMaintenanceWindowExecutions operation,
5402// calling the "fn" function with the response data for each page. To stop
5403// iterating, return false from the fn function.
5404//
5405// See DescribeMaintenanceWindowExecutions method for more information on how to use this operation.
5406//
5407// Note: This operation can generate multiple requests to a service.
5408//
5409//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowExecutions operation.
5410//    pageNum := 0
5411//    err := client.DescribeMaintenanceWindowExecutionsPages(params,
5412//        func(page *ssm.DescribeMaintenanceWindowExecutionsOutput, lastPage bool) bool {
5413//            pageNum++
5414//            fmt.Println(page)
5415//            return pageNum <= 3
5416//        })
5417//
5418func (c *SSM) DescribeMaintenanceWindowExecutionsPages(input *DescribeMaintenanceWindowExecutionsInput, fn func(*DescribeMaintenanceWindowExecutionsOutput, bool) bool) error {
5419	return c.DescribeMaintenanceWindowExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
5420}
5421
5422// DescribeMaintenanceWindowExecutionsPagesWithContext same as DescribeMaintenanceWindowExecutionsPages except
5423// it takes a Context and allows setting request options on the pages.
5424//
5425// The context must be non-nil and will be used for request cancellation. If
5426// the context is nil a panic will occur. In the future the SDK may create
5427// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5428// for more information on using Contexts.
5429func (c *SSM) DescribeMaintenanceWindowExecutionsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowExecutionsInput, fn func(*DescribeMaintenanceWindowExecutionsOutput, bool) bool, opts ...request.Option) error {
5430	p := request.Pagination{
5431		NewRequest: func() (*request.Request, error) {
5432			var inCpy *DescribeMaintenanceWindowExecutionsInput
5433			if input != nil {
5434				tmp := *input
5435				inCpy = &tmp
5436			}
5437			req, _ := c.DescribeMaintenanceWindowExecutionsRequest(inCpy)
5438			req.SetContext(ctx)
5439			req.ApplyOptions(opts...)
5440			return req, nil
5441		},
5442	}
5443
5444	for p.Next() {
5445		if !fn(p.Page().(*DescribeMaintenanceWindowExecutionsOutput), !p.HasNextPage()) {
5446			break
5447		}
5448	}
5449
5450	return p.Err()
5451}
5452
5453const opDescribeMaintenanceWindowSchedule = "DescribeMaintenanceWindowSchedule"
5454
5455// DescribeMaintenanceWindowScheduleRequest generates a "aws/request.Request" representing the
5456// client's request for the DescribeMaintenanceWindowSchedule operation. The "output" return
5457// value will be populated with the request's response once the request completes
5458// successfully.
5459//
5460// Use "Send" method on the returned Request to send the API call to the service.
5461// the "output" return value is not valid until after Send returns without error.
5462//
5463// See DescribeMaintenanceWindowSchedule for more information on using the DescribeMaintenanceWindowSchedule
5464// API call, and error handling.
5465//
5466// This method is useful when you want to inject custom logic or configuration
5467// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5468//
5469//
5470//    // Example sending a request using the DescribeMaintenanceWindowScheduleRequest method.
5471//    req, resp := client.DescribeMaintenanceWindowScheduleRequest(params)
5472//
5473//    err := req.Send()
5474//    if err == nil { // resp is now filled
5475//        fmt.Println(resp)
5476//    }
5477//
5478// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowSchedule
5479func (c *SSM) DescribeMaintenanceWindowScheduleRequest(input *DescribeMaintenanceWindowScheduleInput) (req *request.Request, output *DescribeMaintenanceWindowScheduleOutput) {
5480	op := &request.Operation{
5481		Name:       opDescribeMaintenanceWindowSchedule,
5482		HTTPMethod: "POST",
5483		HTTPPath:   "/",
5484		Paginator: &request.Paginator{
5485			InputTokens:     []string{"NextToken"},
5486			OutputTokens:    []string{"NextToken"},
5487			LimitToken:      "MaxResults",
5488			TruncationToken: "",
5489		},
5490	}
5491
5492	if input == nil {
5493		input = &DescribeMaintenanceWindowScheduleInput{}
5494	}
5495
5496	output = &DescribeMaintenanceWindowScheduleOutput{}
5497	req = c.newRequest(op, input, output)
5498	return
5499}
5500
5501// DescribeMaintenanceWindowSchedule API operation for Amazon Simple Systems Manager (SSM).
5502//
5503// Retrieves information about upcoming executions of a maintenance window.
5504//
5505// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5506// with awserr.Error's Code and Message methods to get detailed information about
5507// the error.
5508//
5509// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
5510// API operation DescribeMaintenanceWindowSchedule for usage and error information.
5511//
5512// Returned Error Types:
5513//   * InternalServerError
5514//   An error occurred on the server side.
5515//
5516//   * DoesNotExistException
5517//   Error returned when the ID specified for a resource, such as a maintenance
5518//   window or patch baseline, doesn't exist.
5519//
5520//   For information about resource quotas in Amazon Web Services Systems Manager,
5521//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
5522//   in the Amazon Web Services General Reference.
5523//
5524// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowSchedule
5525func (c *SSM) DescribeMaintenanceWindowSchedule(input *DescribeMaintenanceWindowScheduleInput) (*DescribeMaintenanceWindowScheduleOutput, error) {
5526	req, out := c.DescribeMaintenanceWindowScheduleRequest(input)
5527	return out, req.Send()
5528}
5529
5530// DescribeMaintenanceWindowScheduleWithContext is the same as DescribeMaintenanceWindowSchedule with the addition of
5531// the ability to pass a context and additional request options.
5532//
5533// See DescribeMaintenanceWindowSchedule for details on how to use this API operation.
5534//
5535// The context must be non-nil and will be used for request cancellation. If
5536// the context is nil a panic will occur. In the future the SDK may create
5537// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5538// for more information on using Contexts.
5539func (c *SSM) DescribeMaintenanceWindowScheduleWithContext(ctx aws.Context, input *DescribeMaintenanceWindowScheduleInput, opts ...request.Option) (*DescribeMaintenanceWindowScheduleOutput, error) {
5540	req, out := c.DescribeMaintenanceWindowScheduleRequest(input)
5541	req.SetContext(ctx)
5542	req.ApplyOptions(opts...)
5543	return out, req.Send()
5544}
5545
5546// DescribeMaintenanceWindowSchedulePages iterates over the pages of a DescribeMaintenanceWindowSchedule operation,
5547// calling the "fn" function with the response data for each page. To stop
5548// iterating, return false from the fn function.
5549//
5550// See DescribeMaintenanceWindowSchedule method for more information on how to use this operation.
5551//
5552// Note: This operation can generate multiple requests to a service.
5553//
5554//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowSchedule operation.
5555//    pageNum := 0
5556//    err := client.DescribeMaintenanceWindowSchedulePages(params,
5557//        func(page *ssm.DescribeMaintenanceWindowScheduleOutput, lastPage bool) bool {
5558//            pageNum++
5559//            fmt.Println(page)
5560//            return pageNum <= 3
5561//        })
5562//
5563func (c *SSM) DescribeMaintenanceWindowSchedulePages(input *DescribeMaintenanceWindowScheduleInput, fn func(*DescribeMaintenanceWindowScheduleOutput, bool) bool) error {
5564	return c.DescribeMaintenanceWindowSchedulePagesWithContext(aws.BackgroundContext(), input, fn)
5565}
5566
5567// DescribeMaintenanceWindowSchedulePagesWithContext same as DescribeMaintenanceWindowSchedulePages except
5568// it takes a Context and allows setting request options on the pages.
5569//
5570// The context must be non-nil and will be used for request cancellation. If
5571// the context is nil a panic will occur. In the future the SDK may create
5572// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5573// for more information on using Contexts.
5574func (c *SSM) DescribeMaintenanceWindowSchedulePagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowScheduleInput, fn func(*DescribeMaintenanceWindowScheduleOutput, bool) bool, opts ...request.Option) error {
5575	p := request.Pagination{
5576		NewRequest: func() (*request.Request, error) {
5577			var inCpy *DescribeMaintenanceWindowScheduleInput
5578			if input != nil {
5579				tmp := *input
5580				inCpy = &tmp
5581			}
5582			req, _ := c.DescribeMaintenanceWindowScheduleRequest(inCpy)
5583			req.SetContext(ctx)
5584			req.ApplyOptions(opts...)
5585			return req, nil
5586		},
5587	}
5588
5589	for p.Next() {
5590		if !fn(p.Page().(*DescribeMaintenanceWindowScheduleOutput), !p.HasNextPage()) {
5591			break
5592		}
5593	}
5594
5595	return p.Err()
5596}
5597
5598const opDescribeMaintenanceWindowTargets = "DescribeMaintenanceWindowTargets"
5599
5600// DescribeMaintenanceWindowTargetsRequest generates a "aws/request.Request" representing the
5601// client's request for the DescribeMaintenanceWindowTargets operation. The "output" return
5602// value will be populated with the request's response once the request completes
5603// successfully.
5604//
5605// Use "Send" method on the returned Request to send the API call to the service.
5606// the "output" return value is not valid until after Send returns without error.
5607//
5608// See DescribeMaintenanceWindowTargets for more information on using the DescribeMaintenanceWindowTargets
5609// API call, and error handling.
5610//
5611// This method is useful when you want to inject custom logic or configuration
5612// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5613//
5614//
5615//    // Example sending a request using the DescribeMaintenanceWindowTargetsRequest method.
5616//    req, resp := client.DescribeMaintenanceWindowTargetsRequest(params)
5617//
5618//    err := req.Send()
5619//    if err == nil { // resp is now filled
5620//        fmt.Println(resp)
5621//    }
5622//
5623// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTargets
5624func (c *SSM) DescribeMaintenanceWindowTargetsRequest(input *DescribeMaintenanceWindowTargetsInput) (req *request.Request, output *DescribeMaintenanceWindowTargetsOutput) {
5625	op := &request.Operation{
5626		Name:       opDescribeMaintenanceWindowTargets,
5627		HTTPMethod: "POST",
5628		HTTPPath:   "/",
5629		Paginator: &request.Paginator{
5630			InputTokens:     []string{"NextToken"},
5631			OutputTokens:    []string{"NextToken"},
5632			LimitToken:      "MaxResults",
5633			TruncationToken: "",
5634		},
5635	}
5636
5637	if input == nil {
5638		input = &DescribeMaintenanceWindowTargetsInput{}
5639	}
5640
5641	output = &DescribeMaintenanceWindowTargetsOutput{}
5642	req = c.newRequest(op, input, output)
5643	return
5644}
5645
5646// DescribeMaintenanceWindowTargets API operation for Amazon Simple Systems Manager (SSM).
5647//
5648// Lists the targets registered with the maintenance window.
5649//
5650// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5651// with awserr.Error's Code and Message methods to get detailed information about
5652// the error.
5653//
5654// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
5655// API operation DescribeMaintenanceWindowTargets for usage and error information.
5656//
5657// Returned Error Types:
5658//   * DoesNotExistException
5659//   Error returned when the ID specified for a resource, such as a maintenance
5660//   window or patch baseline, doesn't exist.
5661//
5662//   For information about resource quotas in Amazon Web Services Systems Manager,
5663//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
5664//   in the Amazon Web Services General Reference.
5665//
5666//   * InternalServerError
5667//   An error occurred on the server side.
5668//
5669// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTargets
5670func (c *SSM) DescribeMaintenanceWindowTargets(input *DescribeMaintenanceWindowTargetsInput) (*DescribeMaintenanceWindowTargetsOutput, error) {
5671	req, out := c.DescribeMaintenanceWindowTargetsRequest(input)
5672	return out, req.Send()
5673}
5674
5675// DescribeMaintenanceWindowTargetsWithContext is the same as DescribeMaintenanceWindowTargets with the addition of
5676// the ability to pass a context and additional request options.
5677//
5678// See DescribeMaintenanceWindowTargets for details on how to use this API operation.
5679//
5680// The context must be non-nil and will be used for request cancellation. If
5681// the context is nil a panic will occur. In the future the SDK may create
5682// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5683// for more information on using Contexts.
5684func (c *SSM) DescribeMaintenanceWindowTargetsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTargetsInput, opts ...request.Option) (*DescribeMaintenanceWindowTargetsOutput, error) {
5685	req, out := c.DescribeMaintenanceWindowTargetsRequest(input)
5686	req.SetContext(ctx)
5687	req.ApplyOptions(opts...)
5688	return out, req.Send()
5689}
5690
5691// DescribeMaintenanceWindowTargetsPages iterates over the pages of a DescribeMaintenanceWindowTargets operation,
5692// calling the "fn" function with the response data for each page. To stop
5693// iterating, return false from the fn function.
5694//
5695// See DescribeMaintenanceWindowTargets method for more information on how to use this operation.
5696//
5697// Note: This operation can generate multiple requests to a service.
5698//
5699//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowTargets operation.
5700//    pageNum := 0
5701//    err := client.DescribeMaintenanceWindowTargetsPages(params,
5702//        func(page *ssm.DescribeMaintenanceWindowTargetsOutput, lastPage bool) bool {
5703//            pageNum++
5704//            fmt.Println(page)
5705//            return pageNum <= 3
5706//        })
5707//
5708func (c *SSM) DescribeMaintenanceWindowTargetsPages(input *DescribeMaintenanceWindowTargetsInput, fn func(*DescribeMaintenanceWindowTargetsOutput, bool) bool) error {
5709	return c.DescribeMaintenanceWindowTargetsPagesWithContext(aws.BackgroundContext(), input, fn)
5710}
5711
5712// DescribeMaintenanceWindowTargetsPagesWithContext same as DescribeMaintenanceWindowTargetsPages except
5713// it takes a Context and allows setting request options on the pages.
5714//
5715// The context must be non-nil and will be used for request cancellation. If
5716// the context is nil a panic will occur. In the future the SDK may create
5717// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5718// for more information on using Contexts.
5719func (c *SSM) DescribeMaintenanceWindowTargetsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTargetsInput, fn func(*DescribeMaintenanceWindowTargetsOutput, bool) bool, opts ...request.Option) error {
5720	p := request.Pagination{
5721		NewRequest: func() (*request.Request, error) {
5722			var inCpy *DescribeMaintenanceWindowTargetsInput
5723			if input != nil {
5724				tmp := *input
5725				inCpy = &tmp
5726			}
5727			req, _ := c.DescribeMaintenanceWindowTargetsRequest(inCpy)
5728			req.SetContext(ctx)
5729			req.ApplyOptions(opts...)
5730			return req, nil
5731		},
5732	}
5733
5734	for p.Next() {
5735		if !fn(p.Page().(*DescribeMaintenanceWindowTargetsOutput), !p.HasNextPage()) {
5736			break
5737		}
5738	}
5739
5740	return p.Err()
5741}
5742
5743const opDescribeMaintenanceWindowTasks = "DescribeMaintenanceWindowTasks"
5744
5745// DescribeMaintenanceWindowTasksRequest generates a "aws/request.Request" representing the
5746// client's request for the DescribeMaintenanceWindowTasks operation. The "output" return
5747// value will be populated with the request's response once the request completes
5748// successfully.
5749//
5750// Use "Send" method on the returned Request to send the API call to the service.
5751// the "output" return value is not valid until after Send returns without error.
5752//
5753// See DescribeMaintenanceWindowTasks for more information on using the DescribeMaintenanceWindowTasks
5754// API call, and error handling.
5755//
5756// This method is useful when you want to inject custom logic or configuration
5757// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5758//
5759//
5760//    // Example sending a request using the DescribeMaintenanceWindowTasksRequest method.
5761//    req, resp := client.DescribeMaintenanceWindowTasksRequest(params)
5762//
5763//    err := req.Send()
5764//    if err == nil { // resp is now filled
5765//        fmt.Println(resp)
5766//    }
5767//
5768// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTasks
5769func (c *SSM) DescribeMaintenanceWindowTasksRequest(input *DescribeMaintenanceWindowTasksInput) (req *request.Request, output *DescribeMaintenanceWindowTasksOutput) {
5770	op := &request.Operation{
5771		Name:       opDescribeMaintenanceWindowTasks,
5772		HTTPMethod: "POST",
5773		HTTPPath:   "/",
5774		Paginator: &request.Paginator{
5775			InputTokens:     []string{"NextToken"},
5776			OutputTokens:    []string{"NextToken"},
5777			LimitToken:      "MaxResults",
5778			TruncationToken: "",
5779		},
5780	}
5781
5782	if input == nil {
5783		input = &DescribeMaintenanceWindowTasksInput{}
5784	}
5785
5786	output = &DescribeMaintenanceWindowTasksOutput{}
5787	req = c.newRequest(op, input, output)
5788	return
5789}
5790
5791// DescribeMaintenanceWindowTasks API operation for Amazon Simple Systems Manager (SSM).
5792//
5793// Lists the tasks in a maintenance window.
5794//
5795// For maintenance window tasks without a specified target, you can't supply
5796// values for --max-errors and --max-concurrency. Instead, the system inserts
5797// a placeholder value of 1, which may be reported in the response to this command.
5798// These values don't affect the running of your task and can be ignored.
5799//
5800// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5801// with awserr.Error's Code and Message methods to get detailed information about
5802// the error.
5803//
5804// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
5805// API operation DescribeMaintenanceWindowTasks for usage and error information.
5806//
5807// Returned Error Types:
5808//   * DoesNotExistException
5809//   Error returned when the ID specified for a resource, such as a maintenance
5810//   window or patch baseline, doesn't exist.
5811//
5812//   For information about resource quotas in Amazon Web Services Systems Manager,
5813//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
5814//   in the Amazon Web Services General Reference.
5815//
5816//   * InternalServerError
5817//   An error occurred on the server side.
5818//
5819// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowTasks
5820func (c *SSM) DescribeMaintenanceWindowTasks(input *DescribeMaintenanceWindowTasksInput) (*DescribeMaintenanceWindowTasksOutput, error) {
5821	req, out := c.DescribeMaintenanceWindowTasksRequest(input)
5822	return out, req.Send()
5823}
5824
5825// DescribeMaintenanceWindowTasksWithContext is the same as DescribeMaintenanceWindowTasks with the addition of
5826// the ability to pass a context and additional request options.
5827//
5828// See DescribeMaintenanceWindowTasks for details on how to use this API operation.
5829//
5830// The context must be non-nil and will be used for request cancellation. If
5831// the context is nil a panic will occur. In the future the SDK may create
5832// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5833// for more information on using Contexts.
5834func (c *SSM) DescribeMaintenanceWindowTasksWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTasksInput, opts ...request.Option) (*DescribeMaintenanceWindowTasksOutput, error) {
5835	req, out := c.DescribeMaintenanceWindowTasksRequest(input)
5836	req.SetContext(ctx)
5837	req.ApplyOptions(opts...)
5838	return out, req.Send()
5839}
5840
5841// DescribeMaintenanceWindowTasksPages iterates over the pages of a DescribeMaintenanceWindowTasks operation,
5842// calling the "fn" function with the response data for each page. To stop
5843// iterating, return false from the fn function.
5844//
5845// See DescribeMaintenanceWindowTasks method for more information on how to use this operation.
5846//
5847// Note: This operation can generate multiple requests to a service.
5848//
5849//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowTasks operation.
5850//    pageNum := 0
5851//    err := client.DescribeMaintenanceWindowTasksPages(params,
5852//        func(page *ssm.DescribeMaintenanceWindowTasksOutput, lastPage bool) bool {
5853//            pageNum++
5854//            fmt.Println(page)
5855//            return pageNum <= 3
5856//        })
5857//
5858func (c *SSM) DescribeMaintenanceWindowTasksPages(input *DescribeMaintenanceWindowTasksInput, fn func(*DescribeMaintenanceWindowTasksOutput, bool) bool) error {
5859	return c.DescribeMaintenanceWindowTasksPagesWithContext(aws.BackgroundContext(), input, fn)
5860}
5861
5862// DescribeMaintenanceWindowTasksPagesWithContext same as DescribeMaintenanceWindowTasksPages except
5863// it takes a Context and allows setting request options on the pages.
5864//
5865// The context must be non-nil and will be used for request cancellation. If
5866// the context is nil a panic will occur. In the future the SDK may create
5867// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5868// for more information on using Contexts.
5869func (c *SSM) DescribeMaintenanceWindowTasksPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowTasksInput, fn func(*DescribeMaintenanceWindowTasksOutput, bool) bool, opts ...request.Option) error {
5870	p := request.Pagination{
5871		NewRequest: func() (*request.Request, error) {
5872			var inCpy *DescribeMaintenanceWindowTasksInput
5873			if input != nil {
5874				tmp := *input
5875				inCpy = &tmp
5876			}
5877			req, _ := c.DescribeMaintenanceWindowTasksRequest(inCpy)
5878			req.SetContext(ctx)
5879			req.ApplyOptions(opts...)
5880			return req, nil
5881		},
5882	}
5883
5884	for p.Next() {
5885		if !fn(p.Page().(*DescribeMaintenanceWindowTasksOutput), !p.HasNextPage()) {
5886			break
5887		}
5888	}
5889
5890	return p.Err()
5891}
5892
5893const opDescribeMaintenanceWindows = "DescribeMaintenanceWindows"
5894
5895// DescribeMaintenanceWindowsRequest generates a "aws/request.Request" representing the
5896// client's request for the DescribeMaintenanceWindows operation. The "output" return
5897// value will be populated with the request's response once the request completes
5898// successfully.
5899//
5900// Use "Send" method on the returned Request to send the API call to the service.
5901// the "output" return value is not valid until after Send returns without error.
5902//
5903// See DescribeMaintenanceWindows for more information on using the DescribeMaintenanceWindows
5904// API call, and error handling.
5905//
5906// This method is useful when you want to inject custom logic or configuration
5907// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5908//
5909//
5910//    // Example sending a request using the DescribeMaintenanceWindowsRequest method.
5911//    req, resp := client.DescribeMaintenanceWindowsRequest(params)
5912//
5913//    err := req.Send()
5914//    if err == nil { // resp is now filled
5915//        fmt.Println(resp)
5916//    }
5917//
5918// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindows
5919func (c *SSM) DescribeMaintenanceWindowsRequest(input *DescribeMaintenanceWindowsInput) (req *request.Request, output *DescribeMaintenanceWindowsOutput) {
5920	op := &request.Operation{
5921		Name:       opDescribeMaintenanceWindows,
5922		HTTPMethod: "POST",
5923		HTTPPath:   "/",
5924		Paginator: &request.Paginator{
5925			InputTokens:     []string{"NextToken"},
5926			OutputTokens:    []string{"NextToken"},
5927			LimitToken:      "MaxResults",
5928			TruncationToken: "",
5929		},
5930	}
5931
5932	if input == nil {
5933		input = &DescribeMaintenanceWindowsInput{}
5934	}
5935
5936	output = &DescribeMaintenanceWindowsOutput{}
5937	req = c.newRequest(op, input, output)
5938	return
5939}
5940
5941// DescribeMaintenanceWindows API operation for Amazon Simple Systems Manager (SSM).
5942//
5943// Retrieves the maintenance windows in an Amazon Web Services account.
5944//
5945// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5946// with awserr.Error's Code and Message methods to get detailed information about
5947// the error.
5948//
5949// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
5950// API operation DescribeMaintenanceWindows for usage and error information.
5951//
5952// Returned Error Types:
5953//   * InternalServerError
5954//   An error occurred on the server side.
5955//
5956// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindows
5957func (c *SSM) DescribeMaintenanceWindows(input *DescribeMaintenanceWindowsInput) (*DescribeMaintenanceWindowsOutput, error) {
5958	req, out := c.DescribeMaintenanceWindowsRequest(input)
5959	return out, req.Send()
5960}
5961
5962// DescribeMaintenanceWindowsWithContext is the same as DescribeMaintenanceWindows with the addition of
5963// the ability to pass a context and additional request options.
5964//
5965// See DescribeMaintenanceWindows for details on how to use this API operation.
5966//
5967// The context must be non-nil and will be used for request cancellation. If
5968// the context is nil a panic will occur. In the future the SDK may create
5969// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5970// for more information on using Contexts.
5971func (c *SSM) DescribeMaintenanceWindowsWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsInput, opts ...request.Option) (*DescribeMaintenanceWindowsOutput, error) {
5972	req, out := c.DescribeMaintenanceWindowsRequest(input)
5973	req.SetContext(ctx)
5974	req.ApplyOptions(opts...)
5975	return out, req.Send()
5976}
5977
5978// DescribeMaintenanceWindowsPages iterates over the pages of a DescribeMaintenanceWindows operation,
5979// calling the "fn" function with the response data for each page. To stop
5980// iterating, return false from the fn function.
5981//
5982// See DescribeMaintenanceWindows method for more information on how to use this operation.
5983//
5984// Note: This operation can generate multiple requests to a service.
5985//
5986//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindows operation.
5987//    pageNum := 0
5988//    err := client.DescribeMaintenanceWindowsPages(params,
5989//        func(page *ssm.DescribeMaintenanceWindowsOutput, lastPage bool) bool {
5990//            pageNum++
5991//            fmt.Println(page)
5992//            return pageNum <= 3
5993//        })
5994//
5995func (c *SSM) DescribeMaintenanceWindowsPages(input *DescribeMaintenanceWindowsInput, fn func(*DescribeMaintenanceWindowsOutput, bool) bool) error {
5996	return c.DescribeMaintenanceWindowsPagesWithContext(aws.BackgroundContext(), input, fn)
5997}
5998
5999// DescribeMaintenanceWindowsPagesWithContext same as DescribeMaintenanceWindowsPages except
6000// it takes a Context and allows setting request options on the pages.
6001//
6002// The context must be non-nil and will be used for request cancellation. If
6003// the context is nil a panic will occur. In the future the SDK may create
6004// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6005// for more information on using Contexts.
6006func (c *SSM) DescribeMaintenanceWindowsPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsInput, fn func(*DescribeMaintenanceWindowsOutput, bool) bool, opts ...request.Option) error {
6007	p := request.Pagination{
6008		NewRequest: func() (*request.Request, error) {
6009			var inCpy *DescribeMaintenanceWindowsInput
6010			if input != nil {
6011				tmp := *input
6012				inCpy = &tmp
6013			}
6014			req, _ := c.DescribeMaintenanceWindowsRequest(inCpy)
6015			req.SetContext(ctx)
6016			req.ApplyOptions(opts...)
6017			return req, nil
6018		},
6019	}
6020
6021	for p.Next() {
6022		if !fn(p.Page().(*DescribeMaintenanceWindowsOutput), !p.HasNextPage()) {
6023			break
6024		}
6025	}
6026
6027	return p.Err()
6028}
6029
6030const opDescribeMaintenanceWindowsForTarget = "DescribeMaintenanceWindowsForTarget"
6031
6032// DescribeMaintenanceWindowsForTargetRequest generates a "aws/request.Request" representing the
6033// client's request for the DescribeMaintenanceWindowsForTarget operation. The "output" return
6034// value will be populated with the request's response once the request completes
6035// successfully.
6036//
6037// Use "Send" method on the returned Request to send the API call to the service.
6038// the "output" return value is not valid until after Send returns without error.
6039//
6040// See DescribeMaintenanceWindowsForTarget for more information on using the DescribeMaintenanceWindowsForTarget
6041// API call, and error handling.
6042//
6043// This method is useful when you want to inject custom logic or configuration
6044// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6045//
6046//
6047//    // Example sending a request using the DescribeMaintenanceWindowsForTargetRequest method.
6048//    req, resp := client.DescribeMaintenanceWindowsForTargetRequest(params)
6049//
6050//    err := req.Send()
6051//    if err == nil { // resp is now filled
6052//        fmt.Println(resp)
6053//    }
6054//
6055// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowsForTarget
6056func (c *SSM) DescribeMaintenanceWindowsForTargetRequest(input *DescribeMaintenanceWindowsForTargetInput) (req *request.Request, output *DescribeMaintenanceWindowsForTargetOutput) {
6057	op := &request.Operation{
6058		Name:       opDescribeMaintenanceWindowsForTarget,
6059		HTTPMethod: "POST",
6060		HTTPPath:   "/",
6061		Paginator: &request.Paginator{
6062			InputTokens:     []string{"NextToken"},
6063			OutputTokens:    []string{"NextToken"},
6064			LimitToken:      "MaxResults",
6065			TruncationToken: "",
6066		},
6067	}
6068
6069	if input == nil {
6070		input = &DescribeMaintenanceWindowsForTargetInput{}
6071	}
6072
6073	output = &DescribeMaintenanceWindowsForTargetOutput{}
6074	req = c.newRequest(op, input, output)
6075	return
6076}
6077
6078// DescribeMaintenanceWindowsForTarget API operation for Amazon Simple Systems Manager (SSM).
6079//
6080// Retrieves information about the maintenance window targets or tasks that
6081// an instance is associated with.
6082//
6083// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6084// with awserr.Error's Code and Message methods to get detailed information about
6085// the error.
6086//
6087// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
6088// API operation DescribeMaintenanceWindowsForTarget for usage and error information.
6089//
6090// Returned Error Types:
6091//   * InternalServerError
6092//   An error occurred on the server side.
6093//
6094// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeMaintenanceWindowsForTarget
6095func (c *SSM) DescribeMaintenanceWindowsForTarget(input *DescribeMaintenanceWindowsForTargetInput) (*DescribeMaintenanceWindowsForTargetOutput, error) {
6096	req, out := c.DescribeMaintenanceWindowsForTargetRequest(input)
6097	return out, req.Send()
6098}
6099
6100// DescribeMaintenanceWindowsForTargetWithContext is the same as DescribeMaintenanceWindowsForTarget with the addition of
6101// the ability to pass a context and additional request options.
6102//
6103// See DescribeMaintenanceWindowsForTarget for details on how to use this API operation.
6104//
6105// The context must be non-nil and will be used for request cancellation. If
6106// the context is nil a panic will occur. In the future the SDK may create
6107// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6108// for more information on using Contexts.
6109func (c *SSM) DescribeMaintenanceWindowsForTargetWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsForTargetInput, opts ...request.Option) (*DescribeMaintenanceWindowsForTargetOutput, error) {
6110	req, out := c.DescribeMaintenanceWindowsForTargetRequest(input)
6111	req.SetContext(ctx)
6112	req.ApplyOptions(opts...)
6113	return out, req.Send()
6114}
6115
6116// DescribeMaintenanceWindowsForTargetPages iterates over the pages of a DescribeMaintenanceWindowsForTarget operation,
6117// calling the "fn" function with the response data for each page. To stop
6118// iterating, return false from the fn function.
6119//
6120// See DescribeMaintenanceWindowsForTarget method for more information on how to use this operation.
6121//
6122// Note: This operation can generate multiple requests to a service.
6123//
6124//    // Example iterating over at most 3 pages of a DescribeMaintenanceWindowsForTarget operation.
6125//    pageNum := 0
6126//    err := client.DescribeMaintenanceWindowsForTargetPages(params,
6127//        func(page *ssm.DescribeMaintenanceWindowsForTargetOutput, lastPage bool) bool {
6128//            pageNum++
6129//            fmt.Println(page)
6130//            return pageNum <= 3
6131//        })
6132//
6133func (c *SSM) DescribeMaintenanceWindowsForTargetPages(input *DescribeMaintenanceWindowsForTargetInput, fn func(*DescribeMaintenanceWindowsForTargetOutput, bool) bool) error {
6134	return c.DescribeMaintenanceWindowsForTargetPagesWithContext(aws.BackgroundContext(), input, fn)
6135}
6136
6137// DescribeMaintenanceWindowsForTargetPagesWithContext same as DescribeMaintenanceWindowsForTargetPages except
6138// it takes a Context and allows setting request options on the pages.
6139//
6140// The context must be non-nil and will be used for request cancellation. If
6141// the context is nil a panic will occur. In the future the SDK may create
6142// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6143// for more information on using Contexts.
6144func (c *SSM) DescribeMaintenanceWindowsForTargetPagesWithContext(ctx aws.Context, input *DescribeMaintenanceWindowsForTargetInput, fn func(*DescribeMaintenanceWindowsForTargetOutput, bool) bool, opts ...request.Option) error {
6145	p := request.Pagination{
6146		NewRequest: func() (*request.Request, error) {
6147			var inCpy *DescribeMaintenanceWindowsForTargetInput
6148			if input != nil {
6149				tmp := *input
6150				inCpy = &tmp
6151			}
6152			req, _ := c.DescribeMaintenanceWindowsForTargetRequest(inCpy)
6153			req.SetContext(ctx)
6154			req.ApplyOptions(opts...)
6155			return req, nil
6156		},
6157	}
6158
6159	for p.Next() {
6160		if !fn(p.Page().(*DescribeMaintenanceWindowsForTargetOutput), !p.HasNextPage()) {
6161			break
6162		}
6163	}
6164
6165	return p.Err()
6166}
6167
6168const opDescribeOpsItems = "DescribeOpsItems"
6169
6170// DescribeOpsItemsRequest generates a "aws/request.Request" representing the
6171// client's request for the DescribeOpsItems operation. The "output" return
6172// value will be populated with the request's response once the request completes
6173// successfully.
6174//
6175// Use "Send" method on the returned Request to send the API call to the service.
6176// the "output" return value is not valid until after Send returns without error.
6177//
6178// See DescribeOpsItems for more information on using the DescribeOpsItems
6179// API call, and error handling.
6180//
6181// This method is useful when you want to inject custom logic or configuration
6182// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6183//
6184//
6185//    // Example sending a request using the DescribeOpsItemsRequest method.
6186//    req, resp := client.DescribeOpsItemsRequest(params)
6187//
6188//    err := req.Send()
6189//    if err == nil { // resp is now filled
6190//        fmt.Println(resp)
6191//    }
6192//
6193// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeOpsItems
6194func (c *SSM) DescribeOpsItemsRequest(input *DescribeOpsItemsInput) (req *request.Request, output *DescribeOpsItemsOutput) {
6195	op := &request.Operation{
6196		Name:       opDescribeOpsItems,
6197		HTTPMethod: "POST",
6198		HTTPPath:   "/",
6199		Paginator: &request.Paginator{
6200			InputTokens:     []string{"NextToken"},
6201			OutputTokens:    []string{"NextToken"},
6202			LimitToken:      "MaxResults",
6203			TruncationToken: "",
6204		},
6205	}
6206
6207	if input == nil {
6208		input = &DescribeOpsItemsInput{}
6209	}
6210
6211	output = &DescribeOpsItemsOutput{}
6212	req = c.newRequest(op, input, output)
6213	return
6214}
6215
6216// DescribeOpsItems API operation for Amazon Simple Systems Manager (SSM).
6217//
6218// Query a set of OpsItems. You must have permission in Identity and Access
6219// Management (IAM) to query a list of OpsItems. For more information, see Getting
6220// started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
6221// in the Amazon Web Services Systems Manager User Guide.
6222//
6223// Operations engineers and IT professionals use Amazon Web Services Systems
6224// Manager OpsCenter to view, investigate, and remediate operational issues
6225// impacting the performance and health of their Amazon Web Services resources.
6226// For more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
6227// in the Amazon Web Services Systems Manager User Guide.
6228//
6229// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6230// with awserr.Error's Code and Message methods to get detailed information about
6231// the error.
6232//
6233// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
6234// API operation DescribeOpsItems for usage and error information.
6235//
6236// Returned Error Types:
6237//   * InternalServerError
6238//   An error occurred on the server side.
6239//
6240// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeOpsItems
6241func (c *SSM) DescribeOpsItems(input *DescribeOpsItemsInput) (*DescribeOpsItemsOutput, error) {
6242	req, out := c.DescribeOpsItemsRequest(input)
6243	return out, req.Send()
6244}
6245
6246// DescribeOpsItemsWithContext is the same as DescribeOpsItems with the addition of
6247// the ability to pass a context and additional request options.
6248//
6249// See DescribeOpsItems for details on how to use this API operation.
6250//
6251// The context must be non-nil and will be used for request cancellation. If
6252// the context is nil a panic will occur. In the future the SDK may create
6253// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6254// for more information on using Contexts.
6255func (c *SSM) DescribeOpsItemsWithContext(ctx aws.Context, input *DescribeOpsItemsInput, opts ...request.Option) (*DescribeOpsItemsOutput, error) {
6256	req, out := c.DescribeOpsItemsRequest(input)
6257	req.SetContext(ctx)
6258	req.ApplyOptions(opts...)
6259	return out, req.Send()
6260}
6261
6262// DescribeOpsItemsPages iterates over the pages of a DescribeOpsItems operation,
6263// calling the "fn" function with the response data for each page. To stop
6264// iterating, return false from the fn function.
6265//
6266// See DescribeOpsItems method for more information on how to use this operation.
6267//
6268// Note: This operation can generate multiple requests to a service.
6269//
6270//    // Example iterating over at most 3 pages of a DescribeOpsItems operation.
6271//    pageNum := 0
6272//    err := client.DescribeOpsItemsPages(params,
6273//        func(page *ssm.DescribeOpsItemsOutput, lastPage bool) bool {
6274//            pageNum++
6275//            fmt.Println(page)
6276//            return pageNum <= 3
6277//        })
6278//
6279func (c *SSM) DescribeOpsItemsPages(input *DescribeOpsItemsInput, fn func(*DescribeOpsItemsOutput, bool) bool) error {
6280	return c.DescribeOpsItemsPagesWithContext(aws.BackgroundContext(), input, fn)
6281}
6282
6283// DescribeOpsItemsPagesWithContext same as DescribeOpsItemsPages except
6284// it takes a Context and allows setting request options on the pages.
6285//
6286// The context must be non-nil and will be used for request cancellation. If
6287// the context is nil a panic will occur. In the future the SDK may create
6288// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6289// for more information on using Contexts.
6290func (c *SSM) DescribeOpsItemsPagesWithContext(ctx aws.Context, input *DescribeOpsItemsInput, fn func(*DescribeOpsItemsOutput, bool) bool, opts ...request.Option) error {
6291	p := request.Pagination{
6292		NewRequest: func() (*request.Request, error) {
6293			var inCpy *DescribeOpsItemsInput
6294			if input != nil {
6295				tmp := *input
6296				inCpy = &tmp
6297			}
6298			req, _ := c.DescribeOpsItemsRequest(inCpy)
6299			req.SetContext(ctx)
6300			req.ApplyOptions(opts...)
6301			return req, nil
6302		},
6303	}
6304
6305	for p.Next() {
6306		if !fn(p.Page().(*DescribeOpsItemsOutput), !p.HasNextPage()) {
6307			break
6308		}
6309	}
6310
6311	return p.Err()
6312}
6313
6314const opDescribeParameters = "DescribeParameters"
6315
6316// DescribeParametersRequest generates a "aws/request.Request" representing the
6317// client's request for the DescribeParameters operation. The "output" return
6318// value will be populated with the request's response once the request completes
6319// successfully.
6320//
6321// Use "Send" method on the returned Request to send the API call to the service.
6322// the "output" return value is not valid until after Send returns without error.
6323//
6324// See DescribeParameters for more information on using the DescribeParameters
6325// API call, and error handling.
6326//
6327// This method is useful when you want to inject custom logic or configuration
6328// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6329//
6330//
6331//    // Example sending a request using the DescribeParametersRequest method.
6332//    req, resp := client.DescribeParametersRequest(params)
6333//
6334//    err := req.Send()
6335//    if err == nil { // resp is now filled
6336//        fmt.Println(resp)
6337//    }
6338//
6339// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeParameters
6340func (c *SSM) DescribeParametersRequest(input *DescribeParametersInput) (req *request.Request, output *DescribeParametersOutput) {
6341	op := &request.Operation{
6342		Name:       opDescribeParameters,
6343		HTTPMethod: "POST",
6344		HTTPPath:   "/",
6345		Paginator: &request.Paginator{
6346			InputTokens:     []string{"NextToken"},
6347			OutputTokens:    []string{"NextToken"},
6348			LimitToken:      "MaxResults",
6349			TruncationToken: "",
6350		},
6351	}
6352
6353	if input == nil {
6354		input = &DescribeParametersInput{}
6355	}
6356
6357	output = &DescribeParametersOutput{}
6358	req = c.newRequest(op, input, output)
6359	return
6360}
6361
6362// DescribeParameters API operation for Amazon Simple Systems Manager (SSM).
6363//
6364// Get information about a parameter.
6365//
6366// Request results are returned on a best-effort basis. If you specify MaxResults
6367// in the request, the response includes information up to the limit specified.
6368// The number of items returned, however, can be between zero and the value
6369// of MaxResults. If the service reaches an internal limit while processing
6370// the results, it stops the operation and returns the matching values up to
6371// that point and a NextToken. You can specify the NextToken in a subsequent
6372// call to get the next set of results.
6373//
6374// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6375// with awserr.Error's Code and Message methods to get detailed information about
6376// the error.
6377//
6378// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
6379// API operation DescribeParameters for usage and error information.
6380//
6381// Returned Error Types:
6382//   * InternalServerError
6383//   An error occurred on the server side.
6384//
6385//   * InvalidFilterKey
6386//   The specified key isn't valid.
6387//
6388//   * InvalidFilterOption
6389//   The specified filter option isn't valid. Valid options are Equals and BeginsWith.
6390//   For Path filter, valid options are Recursive and OneLevel.
6391//
6392//   * InvalidFilterValue
6393//   The filter value isn't valid. Verify the value and try again.
6394//
6395//   * InvalidNextToken
6396//   The specified token isn't valid.
6397//
6398// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeParameters
6399func (c *SSM) DescribeParameters(input *DescribeParametersInput) (*DescribeParametersOutput, error) {
6400	req, out := c.DescribeParametersRequest(input)
6401	return out, req.Send()
6402}
6403
6404// DescribeParametersWithContext is the same as DescribeParameters with the addition of
6405// the ability to pass a context and additional request options.
6406//
6407// See DescribeParameters for details on how to use this API operation.
6408//
6409// The context must be non-nil and will be used for request cancellation. If
6410// the context is nil a panic will occur. In the future the SDK may create
6411// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6412// for more information on using Contexts.
6413func (c *SSM) DescribeParametersWithContext(ctx aws.Context, input *DescribeParametersInput, opts ...request.Option) (*DescribeParametersOutput, error) {
6414	req, out := c.DescribeParametersRequest(input)
6415	req.SetContext(ctx)
6416	req.ApplyOptions(opts...)
6417	return out, req.Send()
6418}
6419
6420// DescribeParametersPages iterates over the pages of a DescribeParameters operation,
6421// calling the "fn" function with the response data for each page. To stop
6422// iterating, return false from the fn function.
6423//
6424// See DescribeParameters method for more information on how to use this operation.
6425//
6426// Note: This operation can generate multiple requests to a service.
6427//
6428//    // Example iterating over at most 3 pages of a DescribeParameters operation.
6429//    pageNum := 0
6430//    err := client.DescribeParametersPages(params,
6431//        func(page *ssm.DescribeParametersOutput, lastPage bool) bool {
6432//            pageNum++
6433//            fmt.Println(page)
6434//            return pageNum <= 3
6435//        })
6436//
6437func (c *SSM) DescribeParametersPages(input *DescribeParametersInput, fn func(*DescribeParametersOutput, bool) bool) error {
6438	return c.DescribeParametersPagesWithContext(aws.BackgroundContext(), input, fn)
6439}
6440
6441// DescribeParametersPagesWithContext same as DescribeParametersPages except
6442// it takes a Context and allows setting request options on the pages.
6443//
6444// The context must be non-nil and will be used for request cancellation. If
6445// the context is nil a panic will occur. In the future the SDK may create
6446// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6447// for more information on using Contexts.
6448func (c *SSM) DescribeParametersPagesWithContext(ctx aws.Context, input *DescribeParametersInput, fn func(*DescribeParametersOutput, bool) bool, opts ...request.Option) error {
6449	p := request.Pagination{
6450		NewRequest: func() (*request.Request, error) {
6451			var inCpy *DescribeParametersInput
6452			if input != nil {
6453				tmp := *input
6454				inCpy = &tmp
6455			}
6456			req, _ := c.DescribeParametersRequest(inCpy)
6457			req.SetContext(ctx)
6458			req.ApplyOptions(opts...)
6459			return req, nil
6460		},
6461	}
6462
6463	for p.Next() {
6464		if !fn(p.Page().(*DescribeParametersOutput), !p.HasNextPage()) {
6465			break
6466		}
6467	}
6468
6469	return p.Err()
6470}
6471
6472const opDescribePatchBaselines = "DescribePatchBaselines"
6473
6474// DescribePatchBaselinesRequest generates a "aws/request.Request" representing the
6475// client's request for the DescribePatchBaselines operation. The "output" return
6476// value will be populated with the request's response once the request completes
6477// successfully.
6478//
6479// Use "Send" method on the returned Request to send the API call to the service.
6480// the "output" return value is not valid until after Send returns without error.
6481//
6482// See DescribePatchBaselines for more information on using the DescribePatchBaselines
6483// API call, and error handling.
6484//
6485// This method is useful when you want to inject custom logic or configuration
6486// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6487//
6488//
6489//    // Example sending a request using the DescribePatchBaselinesRequest method.
6490//    req, resp := client.DescribePatchBaselinesRequest(params)
6491//
6492//    err := req.Send()
6493//    if err == nil { // resp is now filled
6494//        fmt.Println(resp)
6495//    }
6496//
6497// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchBaselines
6498func (c *SSM) DescribePatchBaselinesRequest(input *DescribePatchBaselinesInput) (req *request.Request, output *DescribePatchBaselinesOutput) {
6499	op := &request.Operation{
6500		Name:       opDescribePatchBaselines,
6501		HTTPMethod: "POST",
6502		HTTPPath:   "/",
6503		Paginator: &request.Paginator{
6504			InputTokens:     []string{"NextToken"},
6505			OutputTokens:    []string{"NextToken"},
6506			LimitToken:      "MaxResults",
6507			TruncationToken: "",
6508		},
6509	}
6510
6511	if input == nil {
6512		input = &DescribePatchBaselinesInput{}
6513	}
6514
6515	output = &DescribePatchBaselinesOutput{}
6516	req = c.newRequest(op, input, output)
6517	return
6518}
6519
6520// DescribePatchBaselines API operation for Amazon Simple Systems Manager (SSM).
6521//
6522// Lists the patch baselines in your Amazon Web Services account.
6523//
6524// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6525// with awserr.Error's Code and Message methods to get detailed information about
6526// the error.
6527//
6528// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
6529// API operation DescribePatchBaselines for usage and error information.
6530//
6531// Returned Error Types:
6532//   * InternalServerError
6533//   An error occurred on the server side.
6534//
6535// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchBaselines
6536func (c *SSM) DescribePatchBaselines(input *DescribePatchBaselinesInput) (*DescribePatchBaselinesOutput, error) {
6537	req, out := c.DescribePatchBaselinesRequest(input)
6538	return out, req.Send()
6539}
6540
6541// DescribePatchBaselinesWithContext is the same as DescribePatchBaselines with the addition of
6542// the ability to pass a context and additional request options.
6543//
6544// See DescribePatchBaselines for details on how to use this API operation.
6545//
6546// The context must be non-nil and will be used for request cancellation. If
6547// the context is nil a panic will occur. In the future the SDK may create
6548// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6549// for more information on using Contexts.
6550func (c *SSM) DescribePatchBaselinesWithContext(ctx aws.Context, input *DescribePatchBaselinesInput, opts ...request.Option) (*DescribePatchBaselinesOutput, error) {
6551	req, out := c.DescribePatchBaselinesRequest(input)
6552	req.SetContext(ctx)
6553	req.ApplyOptions(opts...)
6554	return out, req.Send()
6555}
6556
6557// DescribePatchBaselinesPages iterates over the pages of a DescribePatchBaselines operation,
6558// calling the "fn" function with the response data for each page. To stop
6559// iterating, return false from the fn function.
6560//
6561// See DescribePatchBaselines method for more information on how to use this operation.
6562//
6563// Note: This operation can generate multiple requests to a service.
6564//
6565//    // Example iterating over at most 3 pages of a DescribePatchBaselines operation.
6566//    pageNum := 0
6567//    err := client.DescribePatchBaselinesPages(params,
6568//        func(page *ssm.DescribePatchBaselinesOutput, lastPage bool) bool {
6569//            pageNum++
6570//            fmt.Println(page)
6571//            return pageNum <= 3
6572//        })
6573//
6574func (c *SSM) DescribePatchBaselinesPages(input *DescribePatchBaselinesInput, fn func(*DescribePatchBaselinesOutput, bool) bool) error {
6575	return c.DescribePatchBaselinesPagesWithContext(aws.BackgroundContext(), input, fn)
6576}
6577
6578// DescribePatchBaselinesPagesWithContext same as DescribePatchBaselinesPages except
6579// it takes a Context and allows setting request options on the pages.
6580//
6581// The context must be non-nil and will be used for request cancellation. If
6582// the context is nil a panic will occur. In the future the SDK may create
6583// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6584// for more information on using Contexts.
6585func (c *SSM) DescribePatchBaselinesPagesWithContext(ctx aws.Context, input *DescribePatchBaselinesInput, fn func(*DescribePatchBaselinesOutput, bool) bool, opts ...request.Option) error {
6586	p := request.Pagination{
6587		NewRequest: func() (*request.Request, error) {
6588			var inCpy *DescribePatchBaselinesInput
6589			if input != nil {
6590				tmp := *input
6591				inCpy = &tmp
6592			}
6593			req, _ := c.DescribePatchBaselinesRequest(inCpy)
6594			req.SetContext(ctx)
6595			req.ApplyOptions(opts...)
6596			return req, nil
6597		},
6598	}
6599
6600	for p.Next() {
6601		if !fn(p.Page().(*DescribePatchBaselinesOutput), !p.HasNextPage()) {
6602			break
6603		}
6604	}
6605
6606	return p.Err()
6607}
6608
6609const opDescribePatchGroupState = "DescribePatchGroupState"
6610
6611// DescribePatchGroupStateRequest generates a "aws/request.Request" representing the
6612// client's request for the DescribePatchGroupState operation. The "output" return
6613// value will be populated with the request's response once the request completes
6614// successfully.
6615//
6616// Use "Send" method on the returned Request to send the API call to the service.
6617// the "output" return value is not valid until after Send returns without error.
6618//
6619// See DescribePatchGroupState for more information on using the DescribePatchGroupState
6620// API call, and error handling.
6621//
6622// This method is useful when you want to inject custom logic or configuration
6623// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6624//
6625//
6626//    // Example sending a request using the DescribePatchGroupStateRequest method.
6627//    req, resp := client.DescribePatchGroupStateRequest(params)
6628//
6629//    err := req.Send()
6630//    if err == nil { // resp is now filled
6631//        fmt.Println(resp)
6632//    }
6633//
6634// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroupState
6635func (c *SSM) DescribePatchGroupStateRequest(input *DescribePatchGroupStateInput) (req *request.Request, output *DescribePatchGroupStateOutput) {
6636	op := &request.Operation{
6637		Name:       opDescribePatchGroupState,
6638		HTTPMethod: "POST",
6639		HTTPPath:   "/",
6640	}
6641
6642	if input == nil {
6643		input = &DescribePatchGroupStateInput{}
6644	}
6645
6646	output = &DescribePatchGroupStateOutput{}
6647	req = c.newRequest(op, input, output)
6648	return
6649}
6650
6651// DescribePatchGroupState API operation for Amazon Simple Systems Manager (SSM).
6652//
6653// Returns high-level aggregated patch compliance state information for a patch
6654// group.
6655//
6656// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6657// with awserr.Error's Code and Message methods to get detailed information about
6658// the error.
6659//
6660// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
6661// API operation DescribePatchGroupState for usage and error information.
6662//
6663// Returned Error Types:
6664//   * InternalServerError
6665//   An error occurred on the server side.
6666//
6667//   * InvalidNextToken
6668//   The specified token isn't valid.
6669//
6670// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroupState
6671func (c *SSM) DescribePatchGroupState(input *DescribePatchGroupStateInput) (*DescribePatchGroupStateOutput, error) {
6672	req, out := c.DescribePatchGroupStateRequest(input)
6673	return out, req.Send()
6674}
6675
6676// DescribePatchGroupStateWithContext is the same as DescribePatchGroupState with the addition of
6677// the ability to pass a context and additional request options.
6678//
6679// See DescribePatchGroupState for details on how to use this API operation.
6680//
6681// The context must be non-nil and will be used for request cancellation. If
6682// the context is nil a panic will occur. In the future the SDK may create
6683// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6684// for more information on using Contexts.
6685func (c *SSM) DescribePatchGroupStateWithContext(ctx aws.Context, input *DescribePatchGroupStateInput, opts ...request.Option) (*DescribePatchGroupStateOutput, error) {
6686	req, out := c.DescribePatchGroupStateRequest(input)
6687	req.SetContext(ctx)
6688	req.ApplyOptions(opts...)
6689	return out, req.Send()
6690}
6691
6692const opDescribePatchGroups = "DescribePatchGroups"
6693
6694// DescribePatchGroupsRequest generates a "aws/request.Request" representing the
6695// client's request for the DescribePatchGroups operation. The "output" return
6696// value will be populated with the request's response once the request completes
6697// successfully.
6698//
6699// Use "Send" method on the returned Request to send the API call to the service.
6700// the "output" return value is not valid until after Send returns without error.
6701//
6702// See DescribePatchGroups for more information on using the DescribePatchGroups
6703// API call, and error handling.
6704//
6705// This method is useful when you want to inject custom logic or configuration
6706// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6707//
6708//
6709//    // Example sending a request using the DescribePatchGroupsRequest method.
6710//    req, resp := client.DescribePatchGroupsRequest(params)
6711//
6712//    err := req.Send()
6713//    if err == nil { // resp is now filled
6714//        fmt.Println(resp)
6715//    }
6716//
6717// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroups
6718func (c *SSM) DescribePatchGroupsRequest(input *DescribePatchGroupsInput) (req *request.Request, output *DescribePatchGroupsOutput) {
6719	op := &request.Operation{
6720		Name:       opDescribePatchGroups,
6721		HTTPMethod: "POST",
6722		HTTPPath:   "/",
6723		Paginator: &request.Paginator{
6724			InputTokens:     []string{"NextToken"},
6725			OutputTokens:    []string{"NextToken"},
6726			LimitToken:      "MaxResults",
6727			TruncationToken: "",
6728		},
6729	}
6730
6731	if input == nil {
6732		input = &DescribePatchGroupsInput{}
6733	}
6734
6735	output = &DescribePatchGroupsOutput{}
6736	req = c.newRequest(op, input, output)
6737	return
6738}
6739
6740// DescribePatchGroups API operation for Amazon Simple Systems Manager (SSM).
6741//
6742// Lists all patch groups that have been registered with patch baselines.
6743//
6744// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6745// with awserr.Error's Code and Message methods to get detailed information about
6746// the error.
6747//
6748// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
6749// API operation DescribePatchGroups for usage and error information.
6750//
6751// Returned Error Types:
6752//   * InternalServerError
6753//   An error occurred on the server side.
6754//
6755// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchGroups
6756func (c *SSM) DescribePatchGroups(input *DescribePatchGroupsInput) (*DescribePatchGroupsOutput, error) {
6757	req, out := c.DescribePatchGroupsRequest(input)
6758	return out, req.Send()
6759}
6760
6761// DescribePatchGroupsWithContext is the same as DescribePatchGroups with the addition of
6762// the ability to pass a context and additional request options.
6763//
6764// See DescribePatchGroups for details on how to use this API operation.
6765//
6766// The context must be non-nil and will be used for request cancellation. If
6767// the context is nil a panic will occur. In the future the SDK may create
6768// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6769// for more information on using Contexts.
6770func (c *SSM) DescribePatchGroupsWithContext(ctx aws.Context, input *DescribePatchGroupsInput, opts ...request.Option) (*DescribePatchGroupsOutput, error) {
6771	req, out := c.DescribePatchGroupsRequest(input)
6772	req.SetContext(ctx)
6773	req.ApplyOptions(opts...)
6774	return out, req.Send()
6775}
6776
6777// DescribePatchGroupsPages iterates over the pages of a DescribePatchGroups operation,
6778// calling the "fn" function with the response data for each page. To stop
6779// iterating, return false from the fn function.
6780//
6781// See DescribePatchGroups method for more information on how to use this operation.
6782//
6783// Note: This operation can generate multiple requests to a service.
6784//
6785//    // Example iterating over at most 3 pages of a DescribePatchGroups operation.
6786//    pageNum := 0
6787//    err := client.DescribePatchGroupsPages(params,
6788//        func(page *ssm.DescribePatchGroupsOutput, lastPage bool) bool {
6789//            pageNum++
6790//            fmt.Println(page)
6791//            return pageNum <= 3
6792//        })
6793//
6794func (c *SSM) DescribePatchGroupsPages(input *DescribePatchGroupsInput, fn func(*DescribePatchGroupsOutput, bool) bool) error {
6795	return c.DescribePatchGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
6796}
6797
6798// DescribePatchGroupsPagesWithContext same as DescribePatchGroupsPages except
6799// it takes a Context and allows setting request options on the pages.
6800//
6801// The context must be non-nil and will be used for request cancellation. If
6802// the context is nil a panic will occur. In the future the SDK may create
6803// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6804// for more information on using Contexts.
6805func (c *SSM) DescribePatchGroupsPagesWithContext(ctx aws.Context, input *DescribePatchGroupsInput, fn func(*DescribePatchGroupsOutput, bool) bool, opts ...request.Option) error {
6806	p := request.Pagination{
6807		NewRequest: func() (*request.Request, error) {
6808			var inCpy *DescribePatchGroupsInput
6809			if input != nil {
6810				tmp := *input
6811				inCpy = &tmp
6812			}
6813			req, _ := c.DescribePatchGroupsRequest(inCpy)
6814			req.SetContext(ctx)
6815			req.ApplyOptions(opts...)
6816			return req, nil
6817		},
6818	}
6819
6820	for p.Next() {
6821		if !fn(p.Page().(*DescribePatchGroupsOutput), !p.HasNextPage()) {
6822			break
6823		}
6824	}
6825
6826	return p.Err()
6827}
6828
6829const opDescribePatchProperties = "DescribePatchProperties"
6830
6831// DescribePatchPropertiesRequest generates a "aws/request.Request" representing the
6832// client's request for the DescribePatchProperties operation. The "output" return
6833// value will be populated with the request's response once the request completes
6834// successfully.
6835//
6836// Use "Send" method on the returned Request to send the API call to the service.
6837// the "output" return value is not valid until after Send returns without error.
6838//
6839// See DescribePatchProperties for more information on using the DescribePatchProperties
6840// API call, and error handling.
6841//
6842// This method is useful when you want to inject custom logic or configuration
6843// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6844//
6845//
6846//    // Example sending a request using the DescribePatchPropertiesRequest method.
6847//    req, resp := client.DescribePatchPropertiesRequest(params)
6848//
6849//    err := req.Send()
6850//    if err == nil { // resp is now filled
6851//        fmt.Println(resp)
6852//    }
6853//
6854// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchProperties
6855func (c *SSM) DescribePatchPropertiesRequest(input *DescribePatchPropertiesInput) (req *request.Request, output *DescribePatchPropertiesOutput) {
6856	op := &request.Operation{
6857		Name:       opDescribePatchProperties,
6858		HTTPMethod: "POST",
6859		HTTPPath:   "/",
6860		Paginator: &request.Paginator{
6861			InputTokens:     []string{"NextToken"},
6862			OutputTokens:    []string{"NextToken"},
6863			LimitToken:      "MaxResults",
6864			TruncationToken: "",
6865		},
6866	}
6867
6868	if input == nil {
6869		input = &DescribePatchPropertiesInput{}
6870	}
6871
6872	output = &DescribePatchPropertiesOutput{}
6873	req = c.newRequest(op, input, output)
6874	return
6875}
6876
6877// DescribePatchProperties API operation for Amazon Simple Systems Manager (SSM).
6878//
6879// Lists the properties of available patches organized by product, product family,
6880// classification, severity, and other properties of available patches. You
6881// can use the reported properties in the filters you specify in requests for
6882// operations such as CreatePatchBaseline, UpdatePatchBaseline, DescribeAvailablePatches,
6883// and DescribePatchBaselines.
6884//
6885// The following section lists the properties that can be used in filters for
6886// each major operating system type:
6887//
6888// AMAZON_LINUX
6889//
6890// Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
6891//
6892// AMAZON_LINUX_2
6893//
6894// Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
6895//
6896// CENTOS
6897//
6898// Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
6899//
6900// DEBIAN
6901//
6902// Valid properties: PRODUCT | PRIORITY
6903//
6904// MACOS
6905//
6906// Valid properties: PRODUCT | CLASSIFICATION
6907//
6908// ORACLE_LINUX
6909//
6910// Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
6911//
6912// REDHAT_ENTERPRISE_LINUX
6913//
6914// Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
6915//
6916// SUSE
6917//
6918// Valid properties: PRODUCT | CLASSIFICATION | SEVERITY
6919//
6920// UBUNTU
6921//
6922// Valid properties: PRODUCT | PRIORITY
6923//
6924// WINDOWS
6925//
6926// Valid properties: PRODUCT | PRODUCT_FAMILY | CLASSIFICATION | MSRC_SEVERITY
6927//
6928// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6929// with awserr.Error's Code and Message methods to get detailed information about
6930// the error.
6931//
6932// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
6933// API operation DescribePatchProperties for usage and error information.
6934//
6935// Returned Error Types:
6936//   * InternalServerError
6937//   An error occurred on the server side.
6938//
6939// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribePatchProperties
6940func (c *SSM) DescribePatchProperties(input *DescribePatchPropertiesInput) (*DescribePatchPropertiesOutput, error) {
6941	req, out := c.DescribePatchPropertiesRequest(input)
6942	return out, req.Send()
6943}
6944
6945// DescribePatchPropertiesWithContext is the same as DescribePatchProperties with the addition of
6946// the ability to pass a context and additional request options.
6947//
6948// See DescribePatchProperties for details on how to use this API operation.
6949//
6950// The context must be non-nil and will be used for request cancellation. If
6951// the context is nil a panic will occur. In the future the SDK may create
6952// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6953// for more information on using Contexts.
6954func (c *SSM) DescribePatchPropertiesWithContext(ctx aws.Context, input *DescribePatchPropertiesInput, opts ...request.Option) (*DescribePatchPropertiesOutput, error) {
6955	req, out := c.DescribePatchPropertiesRequest(input)
6956	req.SetContext(ctx)
6957	req.ApplyOptions(opts...)
6958	return out, req.Send()
6959}
6960
6961// DescribePatchPropertiesPages iterates over the pages of a DescribePatchProperties operation,
6962// calling the "fn" function with the response data for each page. To stop
6963// iterating, return false from the fn function.
6964//
6965// See DescribePatchProperties method for more information on how to use this operation.
6966//
6967// Note: This operation can generate multiple requests to a service.
6968//
6969//    // Example iterating over at most 3 pages of a DescribePatchProperties operation.
6970//    pageNum := 0
6971//    err := client.DescribePatchPropertiesPages(params,
6972//        func(page *ssm.DescribePatchPropertiesOutput, lastPage bool) bool {
6973//            pageNum++
6974//            fmt.Println(page)
6975//            return pageNum <= 3
6976//        })
6977//
6978func (c *SSM) DescribePatchPropertiesPages(input *DescribePatchPropertiesInput, fn func(*DescribePatchPropertiesOutput, bool) bool) error {
6979	return c.DescribePatchPropertiesPagesWithContext(aws.BackgroundContext(), input, fn)
6980}
6981
6982// DescribePatchPropertiesPagesWithContext same as DescribePatchPropertiesPages except
6983// it takes a Context and allows setting request options on the pages.
6984//
6985// The context must be non-nil and will be used for request cancellation. If
6986// the context is nil a panic will occur. In the future the SDK may create
6987// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6988// for more information on using Contexts.
6989func (c *SSM) DescribePatchPropertiesPagesWithContext(ctx aws.Context, input *DescribePatchPropertiesInput, fn func(*DescribePatchPropertiesOutput, bool) bool, opts ...request.Option) error {
6990	p := request.Pagination{
6991		NewRequest: func() (*request.Request, error) {
6992			var inCpy *DescribePatchPropertiesInput
6993			if input != nil {
6994				tmp := *input
6995				inCpy = &tmp
6996			}
6997			req, _ := c.DescribePatchPropertiesRequest(inCpy)
6998			req.SetContext(ctx)
6999			req.ApplyOptions(opts...)
7000			return req, nil
7001		},
7002	}
7003
7004	for p.Next() {
7005		if !fn(p.Page().(*DescribePatchPropertiesOutput), !p.HasNextPage()) {
7006			break
7007		}
7008	}
7009
7010	return p.Err()
7011}
7012
7013const opDescribeSessions = "DescribeSessions"
7014
7015// DescribeSessionsRequest generates a "aws/request.Request" representing the
7016// client's request for the DescribeSessions operation. The "output" return
7017// value will be populated with the request's response once the request completes
7018// successfully.
7019//
7020// Use "Send" method on the returned Request to send the API call to the service.
7021// the "output" return value is not valid until after Send returns without error.
7022//
7023// See DescribeSessions for more information on using the DescribeSessions
7024// API call, and error handling.
7025//
7026// This method is useful when you want to inject custom logic or configuration
7027// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7028//
7029//
7030//    // Example sending a request using the DescribeSessionsRequest method.
7031//    req, resp := client.DescribeSessionsRequest(params)
7032//
7033//    err := req.Send()
7034//    if err == nil { // resp is now filled
7035//        fmt.Println(resp)
7036//    }
7037//
7038// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeSessions
7039func (c *SSM) DescribeSessionsRequest(input *DescribeSessionsInput) (req *request.Request, output *DescribeSessionsOutput) {
7040	op := &request.Operation{
7041		Name:       opDescribeSessions,
7042		HTTPMethod: "POST",
7043		HTTPPath:   "/",
7044		Paginator: &request.Paginator{
7045			InputTokens:     []string{"NextToken"},
7046			OutputTokens:    []string{"NextToken"},
7047			LimitToken:      "MaxResults",
7048			TruncationToken: "",
7049		},
7050	}
7051
7052	if input == nil {
7053		input = &DescribeSessionsInput{}
7054	}
7055
7056	output = &DescribeSessionsOutput{}
7057	req = c.newRequest(op, input, output)
7058	return
7059}
7060
7061// DescribeSessions API operation for Amazon Simple Systems Manager (SSM).
7062//
7063// Retrieves a list of all active sessions (both connected and disconnected)
7064// or terminated sessions from the past 30 days.
7065//
7066// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7067// with awserr.Error's Code and Message methods to get detailed information about
7068// the error.
7069//
7070// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7071// API operation DescribeSessions for usage and error information.
7072//
7073// Returned Error Types:
7074//   * InternalServerError
7075//   An error occurred on the server side.
7076//
7077//   * InvalidFilterKey
7078//   The specified key isn't valid.
7079//
7080//   * InvalidNextToken
7081//   The specified token isn't valid.
7082//
7083// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DescribeSessions
7084func (c *SSM) DescribeSessions(input *DescribeSessionsInput) (*DescribeSessionsOutput, error) {
7085	req, out := c.DescribeSessionsRequest(input)
7086	return out, req.Send()
7087}
7088
7089// DescribeSessionsWithContext is the same as DescribeSessions with the addition of
7090// the ability to pass a context and additional request options.
7091//
7092// See DescribeSessions for details on how to use this API operation.
7093//
7094// The context must be non-nil and will be used for request cancellation. If
7095// the context is nil a panic will occur. In the future the SDK may create
7096// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7097// for more information on using Contexts.
7098func (c *SSM) DescribeSessionsWithContext(ctx aws.Context, input *DescribeSessionsInput, opts ...request.Option) (*DescribeSessionsOutput, error) {
7099	req, out := c.DescribeSessionsRequest(input)
7100	req.SetContext(ctx)
7101	req.ApplyOptions(opts...)
7102	return out, req.Send()
7103}
7104
7105// DescribeSessionsPages iterates over the pages of a DescribeSessions operation,
7106// calling the "fn" function with the response data for each page. To stop
7107// iterating, return false from the fn function.
7108//
7109// See DescribeSessions method for more information on how to use this operation.
7110//
7111// Note: This operation can generate multiple requests to a service.
7112//
7113//    // Example iterating over at most 3 pages of a DescribeSessions operation.
7114//    pageNum := 0
7115//    err := client.DescribeSessionsPages(params,
7116//        func(page *ssm.DescribeSessionsOutput, lastPage bool) bool {
7117//            pageNum++
7118//            fmt.Println(page)
7119//            return pageNum <= 3
7120//        })
7121//
7122func (c *SSM) DescribeSessionsPages(input *DescribeSessionsInput, fn func(*DescribeSessionsOutput, bool) bool) error {
7123	return c.DescribeSessionsPagesWithContext(aws.BackgroundContext(), input, fn)
7124}
7125
7126// DescribeSessionsPagesWithContext same as DescribeSessionsPages except
7127// it takes a Context and allows setting request options on the pages.
7128//
7129// The context must be non-nil and will be used for request cancellation. If
7130// the context is nil a panic will occur. In the future the SDK may create
7131// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7132// for more information on using Contexts.
7133func (c *SSM) DescribeSessionsPagesWithContext(ctx aws.Context, input *DescribeSessionsInput, fn func(*DescribeSessionsOutput, bool) bool, opts ...request.Option) error {
7134	p := request.Pagination{
7135		NewRequest: func() (*request.Request, error) {
7136			var inCpy *DescribeSessionsInput
7137			if input != nil {
7138				tmp := *input
7139				inCpy = &tmp
7140			}
7141			req, _ := c.DescribeSessionsRequest(inCpy)
7142			req.SetContext(ctx)
7143			req.ApplyOptions(opts...)
7144			return req, nil
7145		},
7146	}
7147
7148	for p.Next() {
7149		if !fn(p.Page().(*DescribeSessionsOutput), !p.HasNextPage()) {
7150			break
7151		}
7152	}
7153
7154	return p.Err()
7155}
7156
7157const opDisassociateOpsItemRelatedItem = "DisassociateOpsItemRelatedItem"
7158
7159// DisassociateOpsItemRelatedItemRequest generates a "aws/request.Request" representing the
7160// client's request for the DisassociateOpsItemRelatedItem operation. The "output" return
7161// value will be populated with the request's response once the request completes
7162// successfully.
7163//
7164// Use "Send" method on the returned Request to send the API call to the service.
7165// the "output" return value is not valid until after Send returns without error.
7166//
7167// See DisassociateOpsItemRelatedItem for more information on using the DisassociateOpsItemRelatedItem
7168// API call, and error handling.
7169//
7170// This method is useful when you want to inject custom logic or configuration
7171// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7172//
7173//
7174//    // Example sending a request using the DisassociateOpsItemRelatedItemRequest method.
7175//    req, resp := client.DisassociateOpsItemRelatedItemRequest(params)
7176//
7177//    err := req.Send()
7178//    if err == nil { // resp is now filled
7179//        fmt.Println(resp)
7180//    }
7181//
7182// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DisassociateOpsItemRelatedItem
7183func (c *SSM) DisassociateOpsItemRelatedItemRequest(input *DisassociateOpsItemRelatedItemInput) (req *request.Request, output *DisassociateOpsItemRelatedItemOutput) {
7184	op := &request.Operation{
7185		Name:       opDisassociateOpsItemRelatedItem,
7186		HTTPMethod: "POST",
7187		HTTPPath:   "/",
7188	}
7189
7190	if input == nil {
7191		input = &DisassociateOpsItemRelatedItemInput{}
7192	}
7193
7194	output = &DisassociateOpsItemRelatedItemOutput{}
7195	req = c.newRequest(op, input, output)
7196	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
7197	return
7198}
7199
7200// DisassociateOpsItemRelatedItem API operation for Amazon Simple Systems Manager (SSM).
7201//
7202// Deletes the association between an OpsItem and a related resource. For example,
7203// this API operation can delete an Incident Manager incident from an OpsItem.
7204// Incident Manager is a capability of Amazon Web Services Systems Manager.
7205//
7206// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7207// with awserr.Error's Code and Message methods to get detailed information about
7208// the error.
7209//
7210// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7211// API operation DisassociateOpsItemRelatedItem for usage and error information.
7212//
7213// Returned Error Types:
7214//   * InternalServerError
7215//   An error occurred on the server side.
7216//
7217//   * OpsItemRelatedItemAssociationNotFoundException
7218//   The association wasn't found using the parameters you specified in the call.
7219//   Verify the information and try again.
7220//
7221//   * OpsItemNotFoundException
7222//   The specified OpsItem ID doesn't exist. Verify the ID and try again.
7223//
7224//   * OpsItemInvalidParameterException
7225//   A specified parameter argument isn't valid. Verify the available arguments
7226//   and try again.
7227//
7228// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DisassociateOpsItemRelatedItem
7229func (c *SSM) DisassociateOpsItemRelatedItem(input *DisassociateOpsItemRelatedItemInput) (*DisassociateOpsItemRelatedItemOutput, error) {
7230	req, out := c.DisassociateOpsItemRelatedItemRequest(input)
7231	return out, req.Send()
7232}
7233
7234// DisassociateOpsItemRelatedItemWithContext is the same as DisassociateOpsItemRelatedItem with the addition of
7235// the ability to pass a context and additional request options.
7236//
7237// See DisassociateOpsItemRelatedItem for details on how to use this API operation.
7238//
7239// The context must be non-nil and will be used for request cancellation. If
7240// the context is nil a panic will occur. In the future the SDK may create
7241// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7242// for more information on using Contexts.
7243func (c *SSM) DisassociateOpsItemRelatedItemWithContext(ctx aws.Context, input *DisassociateOpsItemRelatedItemInput, opts ...request.Option) (*DisassociateOpsItemRelatedItemOutput, error) {
7244	req, out := c.DisassociateOpsItemRelatedItemRequest(input)
7245	req.SetContext(ctx)
7246	req.ApplyOptions(opts...)
7247	return out, req.Send()
7248}
7249
7250const opGetAutomationExecution = "GetAutomationExecution"
7251
7252// GetAutomationExecutionRequest generates a "aws/request.Request" representing the
7253// client's request for the GetAutomationExecution operation. The "output" return
7254// value will be populated with the request's response once the request completes
7255// successfully.
7256//
7257// Use "Send" method on the returned Request to send the API call to the service.
7258// the "output" return value is not valid until after Send returns without error.
7259//
7260// See GetAutomationExecution for more information on using the GetAutomationExecution
7261// API call, and error handling.
7262//
7263// This method is useful when you want to inject custom logic or configuration
7264// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7265//
7266//
7267//    // Example sending a request using the GetAutomationExecutionRequest method.
7268//    req, resp := client.GetAutomationExecutionRequest(params)
7269//
7270//    err := req.Send()
7271//    if err == nil { // resp is now filled
7272//        fmt.Println(resp)
7273//    }
7274//
7275// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetAutomationExecution
7276func (c *SSM) GetAutomationExecutionRequest(input *GetAutomationExecutionInput) (req *request.Request, output *GetAutomationExecutionOutput) {
7277	op := &request.Operation{
7278		Name:       opGetAutomationExecution,
7279		HTTPMethod: "POST",
7280		HTTPPath:   "/",
7281	}
7282
7283	if input == nil {
7284		input = &GetAutomationExecutionInput{}
7285	}
7286
7287	output = &GetAutomationExecutionOutput{}
7288	req = c.newRequest(op, input, output)
7289	return
7290}
7291
7292// GetAutomationExecution API operation for Amazon Simple Systems Manager (SSM).
7293//
7294// Get detailed information about a particular Automation execution.
7295//
7296// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7297// with awserr.Error's Code and Message methods to get detailed information about
7298// the error.
7299//
7300// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7301// API operation GetAutomationExecution for usage and error information.
7302//
7303// Returned Error Types:
7304//   * AutomationExecutionNotFoundException
7305//   There is no automation execution information for the requested automation
7306//   execution ID.
7307//
7308//   * InternalServerError
7309//   An error occurred on the server side.
7310//
7311// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetAutomationExecution
7312func (c *SSM) GetAutomationExecution(input *GetAutomationExecutionInput) (*GetAutomationExecutionOutput, error) {
7313	req, out := c.GetAutomationExecutionRequest(input)
7314	return out, req.Send()
7315}
7316
7317// GetAutomationExecutionWithContext is the same as GetAutomationExecution with the addition of
7318// the ability to pass a context and additional request options.
7319//
7320// See GetAutomationExecution for details on how to use this API operation.
7321//
7322// The context must be non-nil and will be used for request cancellation. If
7323// the context is nil a panic will occur. In the future the SDK may create
7324// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7325// for more information on using Contexts.
7326func (c *SSM) GetAutomationExecutionWithContext(ctx aws.Context, input *GetAutomationExecutionInput, opts ...request.Option) (*GetAutomationExecutionOutput, error) {
7327	req, out := c.GetAutomationExecutionRequest(input)
7328	req.SetContext(ctx)
7329	req.ApplyOptions(opts...)
7330	return out, req.Send()
7331}
7332
7333const opGetCalendarState = "GetCalendarState"
7334
7335// GetCalendarStateRequest generates a "aws/request.Request" representing the
7336// client's request for the GetCalendarState operation. The "output" return
7337// value will be populated with the request's response once the request completes
7338// successfully.
7339//
7340// Use "Send" method on the returned Request to send the API call to the service.
7341// the "output" return value is not valid until after Send returns without error.
7342//
7343// See GetCalendarState for more information on using the GetCalendarState
7344// API call, and error handling.
7345//
7346// This method is useful when you want to inject custom logic or configuration
7347// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7348//
7349//
7350//    // Example sending a request using the GetCalendarStateRequest method.
7351//    req, resp := client.GetCalendarStateRequest(params)
7352//
7353//    err := req.Send()
7354//    if err == nil { // resp is now filled
7355//        fmt.Println(resp)
7356//    }
7357//
7358// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCalendarState
7359func (c *SSM) GetCalendarStateRequest(input *GetCalendarStateInput) (req *request.Request, output *GetCalendarStateOutput) {
7360	op := &request.Operation{
7361		Name:       opGetCalendarState,
7362		HTTPMethod: "POST",
7363		HTTPPath:   "/",
7364	}
7365
7366	if input == nil {
7367		input = &GetCalendarStateInput{}
7368	}
7369
7370	output = &GetCalendarStateOutput{}
7371	req = c.newRequest(op, input, output)
7372	return
7373}
7374
7375// GetCalendarState API operation for Amazon Simple Systems Manager (SSM).
7376//
7377// Gets the state of a Amazon Web Services Systems Manager change calendar at
7378// the current time or a specified time. If you specify a time, GetCalendarState
7379// returns the state of the calendar at that specific time, and returns the
7380// next time that the change calendar state will transition. If you don't specify
7381// a time, GetCalendarState uses the current time. Change Calendar entries have
7382// two possible states: OPEN or CLOSED.
7383//
7384// If you specify more than one calendar in a request, the command returns the
7385// status of OPEN only if all calendars in the request are open. If one or more
7386// calendars in the request are closed, the status returned is CLOSED.
7387//
7388// For more information about Change Calendar, a capability of Amazon Web Services
7389// Systems Manager, see Amazon Web Services Systems Manager Change Calendar
7390// (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar.html)
7391// in the Amazon Web Services Systems Manager User Guide.
7392//
7393// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7394// with awserr.Error's Code and Message methods to get detailed information about
7395// the error.
7396//
7397// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7398// API operation GetCalendarState for usage and error information.
7399//
7400// Returned Error Types:
7401//   * InternalServerError
7402//   An error occurred on the server side.
7403//
7404//   * InvalidDocument
7405//   The specified SSM document doesn't exist.
7406//
7407//   * InvalidDocumentType
7408//   The SSM document type isn't valid. Valid document types are described in
7409//   the DocumentType property.
7410//
7411//   * UnsupportedCalendarException
7412//   The calendar entry contained in the specified SSM document isn't supported.
7413//
7414// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCalendarState
7415func (c *SSM) GetCalendarState(input *GetCalendarStateInput) (*GetCalendarStateOutput, error) {
7416	req, out := c.GetCalendarStateRequest(input)
7417	return out, req.Send()
7418}
7419
7420// GetCalendarStateWithContext is the same as GetCalendarState with the addition of
7421// the ability to pass a context and additional request options.
7422//
7423// See GetCalendarState for details on how to use this API operation.
7424//
7425// The context must be non-nil and will be used for request cancellation. If
7426// the context is nil a panic will occur. In the future the SDK may create
7427// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7428// for more information on using Contexts.
7429func (c *SSM) GetCalendarStateWithContext(ctx aws.Context, input *GetCalendarStateInput, opts ...request.Option) (*GetCalendarStateOutput, error) {
7430	req, out := c.GetCalendarStateRequest(input)
7431	req.SetContext(ctx)
7432	req.ApplyOptions(opts...)
7433	return out, req.Send()
7434}
7435
7436const opGetCommandInvocation = "GetCommandInvocation"
7437
7438// GetCommandInvocationRequest generates a "aws/request.Request" representing the
7439// client's request for the GetCommandInvocation operation. The "output" return
7440// value will be populated with the request's response once the request completes
7441// successfully.
7442//
7443// Use "Send" method on the returned Request to send the API call to the service.
7444// the "output" return value is not valid until after Send returns without error.
7445//
7446// See GetCommandInvocation for more information on using the GetCommandInvocation
7447// API call, and error handling.
7448//
7449// This method is useful when you want to inject custom logic or configuration
7450// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7451//
7452//
7453//    // Example sending a request using the GetCommandInvocationRequest method.
7454//    req, resp := client.GetCommandInvocationRequest(params)
7455//
7456//    err := req.Send()
7457//    if err == nil { // resp is now filled
7458//        fmt.Println(resp)
7459//    }
7460//
7461// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCommandInvocation
7462func (c *SSM) GetCommandInvocationRequest(input *GetCommandInvocationInput) (req *request.Request, output *GetCommandInvocationOutput) {
7463	op := &request.Operation{
7464		Name:       opGetCommandInvocation,
7465		HTTPMethod: "POST",
7466		HTTPPath:   "/",
7467	}
7468
7469	if input == nil {
7470		input = &GetCommandInvocationInput{}
7471	}
7472
7473	output = &GetCommandInvocationOutput{}
7474	req = c.newRequest(op, input, output)
7475	return
7476}
7477
7478// GetCommandInvocation API operation for Amazon Simple Systems Manager (SSM).
7479//
7480// Returns detailed information about command execution for an invocation or
7481// plugin.
7482//
7483// GetCommandInvocation only gives the execution status of a plugin in a document.
7484// To get the command execution status on a specific instance, use ListCommandInvocations.
7485// To get the command execution status across instances, use ListCommands.
7486//
7487// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7488// with awserr.Error's Code and Message methods to get detailed information about
7489// the error.
7490//
7491// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7492// API operation GetCommandInvocation for usage and error information.
7493//
7494// Returned Error Types:
7495//   * InternalServerError
7496//   An error occurred on the server side.
7497//
7498//   * InvalidCommandId
7499//   The specified command ID isn't valid. Verify the ID and try again.
7500//
7501//   * InvalidInstanceId
7502//   The following problems can cause this exception:
7503//
7504//      * You don't have permission to access the instance.
7505//
7506//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
7507//      Verify that SSM Agent is running.
7508//
7509//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
7510//      Agent.
7511//
7512//      * The instance isn't in valid state. Valid states are: Running, Pending,
7513//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
7514//
7515//   * InvalidPluginName
7516//   The plugin name isn't valid.
7517//
7518//   * InvocationDoesNotExist
7519//   The command ID and instance ID you specified didn't match any invocations.
7520//   Verify the command ID and the instance ID and try again.
7521//
7522// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetCommandInvocation
7523func (c *SSM) GetCommandInvocation(input *GetCommandInvocationInput) (*GetCommandInvocationOutput, error) {
7524	req, out := c.GetCommandInvocationRequest(input)
7525	return out, req.Send()
7526}
7527
7528// GetCommandInvocationWithContext is the same as GetCommandInvocation with the addition of
7529// the ability to pass a context and additional request options.
7530//
7531// See GetCommandInvocation for details on how to use this API operation.
7532//
7533// The context must be non-nil and will be used for request cancellation. If
7534// the context is nil a panic will occur. In the future the SDK may create
7535// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7536// for more information on using Contexts.
7537func (c *SSM) GetCommandInvocationWithContext(ctx aws.Context, input *GetCommandInvocationInput, opts ...request.Option) (*GetCommandInvocationOutput, error) {
7538	req, out := c.GetCommandInvocationRequest(input)
7539	req.SetContext(ctx)
7540	req.ApplyOptions(opts...)
7541	return out, req.Send()
7542}
7543
7544const opGetConnectionStatus = "GetConnectionStatus"
7545
7546// GetConnectionStatusRequest generates a "aws/request.Request" representing the
7547// client's request for the GetConnectionStatus operation. The "output" return
7548// value will be populated with the request's response once the request completes
7549// successfully.
7550//
7551// Use "Send" method on the returned Request to send the API call to the service.
7552// the "output" return value is not valid until after Send returns without error.
7553//
7554// See GetConnectionStatus for more information on using the GetConnectionStatus
7555// API call, and error handling.
7556//
7557// This method is useful when you want to inject custom logic or configuration
7558// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7559//
7560//
7561//    // Example sending a request using the GetConnectionStatusRequest method.
7562//    req, resp := client.GetConnectionStatusRequest(params)
7563//
7564//    err := req.Send()
7565//    if err == nil { // resp is now filled
7566//        fmt.Println(resp)
7567//    }
7568//
7569// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetConnectionStatus
7570func (c *SSM) GetConnectionStatusRequest(input *GetConnectionStatusInput) (req *request.Request, output *GetConnectionStatusOutput) {
7571	op := &request.Operation{
7572		Name:       opGetConnectionStatus,
7573		HTTPMethod: "POST",
7574		HTTPPath:   "/",
7575	}
7576
7577	if input == nil {
7578		input = &GetConnectionStatusInput{}
7579	}
7580
7581	output = &GetConnectionStatusOutput{}
7582	req = c.newRequest(op, input, output)
7583	return
7584}
7585
7586// GetConnectionStatus API operation for Amazon Simple Systems Manager (SSM).
7587//
7588// Retrieves the Session Manager connection status for an instance to determine
7589// whether it is running and ready to receive Session Manager connections.
7590//
7591// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7592// with awserr.Error's Code and Message methods to get detailed information about
7593// the error.
7594//
7595// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7596// API operation GetConnectionStatus for usage and error information.
7597//
7598// Returned Error Types:
7599//   * InternalServerError
7600//   An error occurred on the server side.
7601//
7602// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetConnectionStatus
7603func (c *SSM) GetConnectionStatus(input *GetConnectionStatusInput) (*GetConnectionStatusOutput, error) {
7604	req, out := c.GetConnectionStatusRequest(input)
7605	return out, req.Send()
7606}
7607
7608// GetConnectionStatusWithContext is the same as GetConnectionStatus with the addition of
7609// the ability to pass a context and additional request options.
7610//
7611// See GetConnectionStatus for details on how to use this API operation.
7612//
7613// The context must be non-nil and will be used for request cancellation. If
7614// the context is nil a panic will occur. In the future the SDK may create
7615// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7616// for more information on using Contexts.
7617func (c *SSM) GetConnectionStatusWithContext(ctx aws.Context, input *GetConnectionStatusInput, opts ...request.Option) (*GetConnectionStatusOutput, error) {
7618	req, out := c.GetConnectionStatusRequest(input)
7619	req.SetContext(ctx)
7620	req.ApplyOptions(opts...)
7621	return out, req.Send()
7622}
7623
7624const opGetDefaultPatchBaseline = "GetDefaultPatchBaseline"
7625
7626// GetDefaultPatchBaselineRequest generates a "aws/request.Request" representing the
7627// client's request for the GetDefaultPatchBaseline operation. The "output" return
7628// value will be populated with the request's response once the request completes
7629// successfully.
7630//
7631// Use "Send" method on the returned Request to send the API call to the service.
7632// the "output" return value is not valid until after Send returns without error.
7633//
7634// See GetDefaultPatchBaseline for more information on using the GetDefaultPatchBaseline
7635// API call, and error handling.
7636//
7637// This method is useful when you want to inject custom logic or configuration
7638// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7639//
7640//
7641//    // Example sending a request using the GetDefaultPatchBaselineRequest method.
7642//    req, resp := client.GetDefaultPatchBaselineRequest(params)
7643//
7644//    err := req.Send()
7645//    if err == nil { // resp is now filled
7646//        fmt.Println(resp)
7647//    }
7648//
7649// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDefaultPatchBaseline
7650func (c *SSM) GetDefaultPatchBaselineRequest(input *GetDefaultPatchBaselineInput) (req *request.Request, output *GetDefaultPatchBaselineOutput) {
7651	op := &request.Operation{
7652		Name:       opGetDefaultPatchBaseline,
7653		HTTPMethod: "POST",
7654		HTTPPath:   "/",
7655	}
7656
7657	if input == nil {
7658		input = &GetDefaultPatchBaselineInput{}
7659	}
7660
7661	output = &GetDefaultPatchBaselineOutput{}
7662	req = c.newRequest(op, input, output)
7663	return
7664}
7665
7666// GetDefaultPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
7667//
7668// Retrieves the default patch baseline. Amazon Web Services Systems Manager
7669// supports creating multiple default patch baselines. For example, you can
7670// create a default patch baseline for each operating system.
7671//
7672// If you don't specify an operating system value, the default patch baseline
7673// for Windows is returned.
7674//
7675// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7676// with awserr.Error's Code and Message methods to get detailed information about
7677// the error.
7678//
7679// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7680// API operation GetDefaultPatchBaseline for usage and error information.
7681//
7682// Returned Error Types:
7683//   * InternalServerError
7684//   An error occurred on the server side.
7685//
7686// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDefaultPatchBaseline
7687func (c *SSM) GetDefaultPatchBaseline(input *GetDefaultPatchBaselineInput) (*GetDefaultPatchBaselineOutput, error) {
7688	req, out := c.GetDefaultPatchBaselineRequest(input)
7689	return out, req.Send()
7690}
7691
7692// GetDefaultPatchBaselineWithContext is the same as GetDefaultPatchBaseline with the addition of
7693// the ability to pass a context and additional request options.
7694//
7695// See GetDefaultPatchBaseline for details on how to use this API operation.
7696//
7697// The context must be non-nil and will be used for request cancellation. If
7698// the context is nil a panic will occur. In the future the SDK may create
7699// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7700// for more information on using Contexts.
7701func (c *SSM) GetDefaultPatchBaselineWithContext(ctx aws.Context, input *GetDefaultPatchBaselineInput, opts ...request.Option) (*GetDefaultPatchBaselineOutput, error) {
7702	req, out := c.GetDefaultPatchBaselineRequest(input)
7703	req.SetContext(ctx)
7704	req.ApplyOptions(opts...)
7705	return out, req.Send()
7706}
7707
7708const opGetDeployablePatchSnapshotForInstance = "GetDeployablePatchSnapshotForInstance"
7709
7710// GetDeployablePatchSnapshotForInstanceRequest generates a "aws/request.Request" representing the
7711// client's request for the GetDeployablePatchSnapshotForInstance operation. The "output" return
7712// value will be populated with the request's response once the request completes
7713// successfully.
7714//
7715// Use "Send" method on the returned Request to send the API call to the service.
7716// the "output" return value is not valid until after Send returns without error.
7717//
7718// See GetDeployablePatchSnapshotForInstance for more information on using the GetDeployablePatchSnapshotForInstance
7719// API call, and error handling.
7720//
7721// This method is useful when you want to inject custom logic or configuration
7722// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7723//
7724//
7725//    // Example sending a request using the GetDeployablePatchSnapshotForInstanceRequest method.
7726//    req, resp := client.GetDeployablePatchSnapshotForInstanceRequest(params)
7727//
7728//    err := req.Send()
7729//    if err == nil { // resp is now filled
7730//        fmt.Println(resp)
7731//    }
7732//
7733// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDeployablePatchSnapshotForInstance
7734func (c *SSM) GetDeployablePatchSnapshotForInstanceRequest(input *GetDeployablePatchSnapshotForInstanceInput) (req *request.Request, output *GetDeployablePatchSnapshotForInstanceOutput) {
7735	op := &request.Operation{
7736		Name:       opGetDeployablePatchSnapshotForInstance,
7737		HTTPMethod: "POST",
7738		HTTPPath:   "/",
7739	}
7740
7741	if input == nil {
7742		input = &GetDeployablePatchSnapshotForInstanceInput{}
7743	}
7744
7745	output = &GetDeployablePatchSnapshotForInstanceOutput{}
7746	req = c.newRequest(op, input, output)
7747	return
7748}
7749
7750// GetDeployablePatchSnapshotForInstance API operation for Amazon Simple Systems Manager (SSM).
7751//
7752// Retrieves the current snapshot for the patch baseline the instance uses.
7753// This API is primarily used by the AWS-RunPatchBaseline Systems Manager document
7754// (SSM document).
7755//
7756// If you run the command locally, such as with the Command Line Interface (CLI),
7757// the system attempts to use your local Amazon Web Services credentials and
7758// the operation fails. To avoid this, you can run the command in the Amazon
7759// Web Services Systems Manager console. Use Run Command, a capability of Amazon
7760// Web Services Systems Manager, with an SSM document that enables you to target
7761// an instance with a script or command. For example, run the command using
7762// the AWS-RunShellScript document or the AWS-RunPowerShellScript document.
7763//
7764// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7765// with awserr.Error's Code and Message methods to get detailed information about
7766// the error.
7767//
7768// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7769// API operation GetDeployablePatchSnapshotForInstance for usage and error information.
7770//
7771// Returned Error Types:
7772//   * InternalServerError
7773//   An error occurred on the server side.
7774//
7775//   * UnsupportedOperatingSystem
7776//   The operating systems you specified isn't supported, or the operation isn't
7777//   supported for the operating system.
7778//
7779//   * UnsupportedFeatureRequiredException
7780//   Patching for applications released by Microsoft is only available on EC2
7781//   instances and advanced instances. To patch applications released by Microsoft
7782//   on on-premises servers and VMs, you must enable advanced instances. For more
7783//   information, see Enabling the advanced-instances tier (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances-advanced.html)
7784//   in the Amazon Web Services Systems Manager User Guide.
7785//
7786// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDeployablePatchSnapshotForInstance
7787func (c *SSM) GetDeployablePatchSnapshotForInstance(input *GetDeployablePatchSnapshotForInstanceInput) (*GetDeployablePatchSnapshotForInstanceOutput, error) {
7788	req, out := c.GetDeployablePatchSnapshotForInstanceRequest(input)
7789	return out, req.Send()
7790}
7791
7792// GetDeployablePatchSnapshotForInstanceWithContext is the same as GetDeployablePatchSnapshotForInstance with the addition of
7793// the ability to pass a context and additional request options.
7794//
7795// See GetDeployablePatchSnapshotForInstance for details on how to use this API operation.
7796//
7797// The context must be non-nil and will be used for request cancellation. If
7798// the context is nil a panic will occur. In the future the SDK may create
7799// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7800// for more information on using Contexts.
7801func (c *SSM) GetDeployablePatchSnapshotForInstanceWithContext(ctx aws.Context, input *GetDeployablePatchSnapshotForInstanceInput, opts ...request.Option) (*GetDeployablePatchSnapshotForInstanceOutput, error) {
7802	req, out := c.GetDeployablePatchSnapshotForInstanceRequest(input)
7803	req.SetContext(ctx)
7804	req.ApplyOptions(opts...)
7805	return out, req.Send()
7806}
7807
7808const opGetDocument = "GetDocument"
7809
7810// GetDocumentRequest generates a "aws/request.Request" representing the
7811// client's request for the GetDocument operation. The "output" return
7812// value will be populated with the request's response once the request completes
7813// successfully.
7814//
7815// Use "Send" method on the returned Request to send the API call to the service.
7816// the "output" return value is not valid until after Send returns without error.
7817//
7818// See GetDocument for more information on using the GetDocument
7819// API call, and error handling.
7820//
7821// This method is useful when you want to inject custom logic or configuration
7822// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7823//
7824//
7825//    // Example sending a request using the GetDocumentRequest method.
7826//    req, resp := client.GetDocumentRequest(params)
7827//
7828//    err := req.Send()
7829//    if err == nil { // resp is now filled
7830//        fmt.Println(resp)
7831//    }
7832//
7833// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDocument
7834func (c *SSM) GetDocumentRequest(input *GetDocumentInput) (req *request.Request, output *GetDocumentOutput) {
7835	op := &request.Operation{
7836		Name:       opGetDocument,
7837		HTTPMethod: "POST",
7838		HTTPPath:   "/",
7839	}
7840
7841	if input == nil {
7842		input = &GetDocumentInput{}
7843	}
7844
7845	output = &GetDocumentOutput{}
7846	req = c.newRequest(op, input, output)
7847	return
7848}
7849
7850// GetDocument API operation for Amazon Simple Systems Manager (SSM).
7851//
7852// Gets the contents of the specified Amazon Web Services Systems Manager document
7853// (SSM document).
7854//
7855// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7856// with awserr.Error's Code and Message methods to get detailed information about
7857// the error.
7858//
7859// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7860// API operation GetDocument for usage and error information.
7861//
7862// Returned Error Types:
7863//   * InternalServerError
7864//   An error occurred on the server side.
7865//
7866//   * InvalidDocument
7867//   The specified SSM document doesn't exist.
7868//
7869//   * InvalidDocumentVersion
7870//   The document version isn't valid or doesn't exist.
7871//
7872// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetDocument
7873func (c *SSM) GetDocument(input *GetDocumentInput) (*GetDocumentOutput, error) {
7874	req, out := c.GetDocumentRequest(input)
7875	return out, req.Send()
7876}
7877
7878// GetDocumentWithContext is the same as GetDocument with the addition of
7879// the ability to pass a context and additional request options.
7880//
7881// See GetDocument for details on how to use this API operation.
7882//
7883// The context must be non-nil and will be used for request cancellation. If
7884// the context is nil a panic will occur. In the future the SDK may create
7885// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7886// for more information on using Contexts.
7887func (c *SSM) GetDocumentWithContext(ctx aws.Context, input *GetDocumentInput, opts ...request.Option) (*GetDocumentOutput, error) {
7888	req, out := c.GetDocumentRequest(input)
7889	req.SetContext(ctx)
7890	req.ApplyOptions(opts...)
7891	return out, req.Send()
7892}
7893
7894const opGetInventory = "GetInventory"
7895
7896// GetInventoryRequest generates a "aws/request.Request" representing the
7897// client's request for the GetInventory operation. The "output" return
7898// value will be populated with the request's response once the request completes
7899// successfully.
7900//
7901// Use "Send" method on the returned Request to send the API call to the service.
7902// the "output" return value is not valid until after Send returns without error.
7903//
7904// See GetInventory for more information on using the GetInventory
7905// API call, and error handling.
7906//
7907// This method is useful when you want to inject custom logic or configuration
7908// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7909//
7910//
7911//    // Example sending a request using the GetInventoryRequest method.
7912//    req, resp := client.GetInventoryRequest(params)
7913//
7914//    err := req.Send()
7915//    if err == nil { // resp is now filled
7916//        fmt.Println(resp)
7917//    }
7918//
7919// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventory
7920func (c *SSM) GetInventoryRequest(input *GetInventoryInput) (req *request.Request, output *GetInventoryOutput) {
7921	op := &request.Operation{
7922		Name:       opGetInventory,
7923		HTTPMethod: "POST",
7924		HTTPPath:   "/",
7925		Paginator: &request.Paginator{
7926			InputTokens:     []string{"NextToken"},
7927			OutputTokens:    []string{"NextToken"},
7928			LimitToken:      "MaxResults",
7929			TruncationToken: "",
7930		},
7931	}
7932
7933	if input == nil {
7934		input = &GetInventoryInput{}
7935	}
7936
7937	output = &GetInventoryOutput{}
7938	req = c.newRequest(op, input, output)
7939	return
7940}
7941
7942// GetInventory API operation for Amazon Simple Systems Manager (SSM).
7943//
7944// Query inventory information. This includes instance status, such as Stopped
7945// or Terminated.
7946//
7947// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7948// with awserr.Error's Code and Message methods to get detailed information about
7949// the error.
7950//
7951// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
7952// API operation GetInventory for usage and error information.
7953//
7954// Returned Error Types:
7955//   * InternalServerError
7956//   An error occurred on the server side.
7957//
7958//   * InvalidFilter
7959//   The filter name isn't valid. Verify the you entered the correct name and
7960//   try again.
7961//
7962//   * InvalidInventoryGroupException
7963//   The specified inventory group isn't valid.
7964//
7965//   * InvalidNextToken
7966//   The specified token isn't valid.
7967//
7968//   * InvalidTypeNameException
7969//   The parameter type name isn't valid.
7970//
7971//   * InvalidAggregatorException
7972//   The specified aggregator isn't valid for inventory groups. Verify that the
7973//   aggregator uses a valid inventory type such as AWS:Application or AWS:InstanceInformation.
7974//
7975//   * InvalidResultAttributeException
7976//   The specified inventory item result attribute isn't valid.
7977//
7978// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventory
7979func (c *SSM) GetInventory(input *GetInventoryInput) (*GetInventoryOutput, error) {
7980	req, out := c.GetInventoryRequest(input)
7981	return out, req.Send()
7982}
7983
7984// GetInventoryWithContext is the same as GetInventory with the addition of
7985// the ability to pass a context and additional request options.
7986//
7987// See GetInventory for details on how to use this API operation.
7988//
7989// The context must be non-nil and will be used for request cancellation. If
7990// the context is nil a panic will occur. In the future the SDK may create
7991// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7992// for more information on using Contexts.
7993func (c *SSM) GetInventoryWithContext(ctx aws.Context, input *GetInventoryInput, opts ...request.Option) (*GetInventoryOutput, error) {
7994	req, out := c.GetInventoryRequest(input)
7995	req.SetContext(ctx)
7996	req.ApplyOptions(opts...)
7997	return out, req.Send()
7998}
7999
8000// GetInventoryPages iterates over the pages of a GetInventory operation,
8001// calling the "fn" function with the response data for each page. To stop
8002// iterating, return false from the fn function.
8003//
8004// See GetInventory method for more information on how to use this operation.
8005//
8006// Note: This operation can generate multiple requests to a service.
8007//
8008//    // Example iterating over at most 3 pages of a GetInventory operation.
8009//    pageNum := 0
8010//    err := client.GetInventoryPages(params,
8011//        func(page *ssm.GetInventoryOutput, lastPage bool) bool {
8012//            pageNum++
8013//            fmt.Println(page)
8014//            return pageNum <= 3
8015//        })
8016//
8017func (c *SSM) GetInventoryPages(input *GetInventoryInput, fn func(*GetInventoryOutput, bool) bool) error {
8018	return c.GetInventoryPagesWithContext(aws.BackgroundContext(), input, fn)
8019}
8020
8021// GetInventoryPagesWithContext same as GetInventoryPages except
8022// it takes a Context and allows setting request options on the pages.
8023//
8024// The context must be non-nil and will be used for request cancellation. If
8025// the context is nil a panic will occur. In the future the SDK may create
8026// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8027// for more information on using Contexts.
8028func (c *SSM) GetInventoryPagesWithContext(ctx aws.Context, input *GetInventoryInput, fn func(*GetInventoryOutput, bool) bool, opts ...request.Option) error {
8029	p := request.Pagination{
8030		NewRequest: func() (*request.Request, error) {
8031			var inCpy *GetInventoryInput
8032			if input != nil {
8033				tmp := *input
8034				inCpy = &tmp
8035			}
8036			req, _ := c.GetInventoryRequest(inCpy)
8037			req.SetContext(ctx)
8038			req.ApplyOptions(opts...)
8039			return req, nil
8040		},
8041	}
8042
8043	for p.Next() {
8044		if !fn(p.Page().(*GetInventoryOutput), !p.HasNextPage()) {
8045			break
8046		}
8047	}
8048
8049	return p.Err()
8050}
8051
8052const opGetInventorySchema = "GetInventorySchema"
8053
8054// GetInventorySchemaRequest generates a "aws/request.Request" representing the
8055// client's request for the GetInventorySchema operation. The "output" return
8056// value will be populated with the request's response once the request completes
8057// successfully.
8058//
8059// Use "Send" method on the returned Request to send the API call to the service.
8060// the "output" return value is not valid until after Send returns without error.
8061//
8062// See GetInventorySchema for more information on using the GetInventorySchema
8063// API call, and error handling.
8064//
8065// This method is useful when you want to inject custom logic or configuration
8066// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8067//
8068//
8069//    // Example sending a request using the GetInventorySchemaRequest method.
8070//    req, resp := client.GetInventorySchemaRequest(params)
8071//
8072//    err := req.Send()
8073//    if err == nil { // resp is now filled
8074//        fmt.Println(resp)
8075//    }
8076//
8077// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventorySchema
8078func (c *SSM) GetInventorySchemaRequest(input *GetInventorySchemaInput) (req *request.Request, output *GetInventorySchemaOutput) {
8079	op := &request.Operation{
8080		Name:       opGetInventorySchema,
8081		HTTPMethod: "POST",
8082		HTTPPath:   "/",
8083		Paginator: &request.Paginator{
8084			InputTokens:     []string{"NextToken"},
8085			OutputTokens:    []string{"NextToken"},
8086			LimitToken:      "MaxResults",
8087			TruncationToken: "",
8088		},
8089	}
8090
8091	if input == nil {
8092		input = &GetInventorySchemaInput{}
8093	}
8094
8095	output = &GetInventorySchemaOutput{}
8096	req = c.newRequest(op, input, output)
8097	return
8098}
8099
8100// GetInventorySchema API operation for Amazon Simple Systems Manager (SSM).
8101//
8102// Return a list of inventory type names for the account, or return a list of
8103// attribute names for a specific Inventory item type.
8104//
8105// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8106// with awserr.Error's Code and Message methods to get detailed information about
8107// the error.
8108//
8109// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8110// API operation GetInventorySchema for usage and error information.
8111//
8112// Returned Error Types:
8113//   * InternalServerError
8114//   An error occurred on the server side.
8115//
8116//   * InvalidTypeNameException
8117//   The parameter type name isn't valid.
8118//
8119//   * InvalidNextToken
8120//   The specified token isn't valid.
8121//
8122// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetInventorySchema
8123func (c *SSM) GetInventorySchema(input *GetInventorySchemaInput) (*GetInventorySchemaOutput, error) {
8124	req, out := c.GetInventorySchemaRequest(input)
8125	return out, req.Send()
8126}
8127
8128// GetInventorySchemaWithContext is the same as GetInventorySchema with the addition of
8129// the ability to pass a context and additional request options.
8130//
8131// See GetInventorySchema for details on how to use this API operation.
8132//
8133// The context must be non-nil and will be used for request cancellation. If
8134// the context is nil a panic will occur. In the future the SDK may create
8135// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8136// for more information on using Contexts.
8137func (c *SSM) GetInventorySchemaWithContext(ctx aws.Context, input *GetInventorySchemaInput, opts ...request.Option) (*GetInventorySchemaOutput, error) {
8138	req, out := c.GetInventorySchemaRequest(input)
8139	req.SetContext(ctx)
8140	req.ApplyOptions(opts...)
8141	return out, req.Send()
8142}
8143
8144// GetInventorySchemaPages iterates over the pages of a GetInventorySchema operation,
8145// calling the "fn" function with the response data for each page. To stop
8146// iterating, return false from the fn function.
8147//
8148// See GetInventorySchema method for more information on how to use this operation.
8149//
8150// Note: This operation can generate multiple requests to a service.
8151//
8152//    // Example iterating over at most 3 pages of a GetInventorySchema operation.
8153//    pageNum := 0
8154//    err := client.GetInventorySchemaPages(params,
8155//        func(page *ssm.GetInventorySchemaOutput, lastPage bool) bool {
8156//            pageNum++
8157//            fmt.Println(page)
8158//            return pageNum <= 3
8159//        })
8160//
8161func (c *SSM) GetInventorySchemaPages(input *GetInventorySchemaInput, fn func(*GetInventorySchemaOutput, bool) bool) error {
8162	return c.GetInventorySchemaPagesWithContext(aws.BackgroundContext(), input, fn)
8163}
8164
8165// GetInventorySchemaPagesWithContext same as GetInventorySchemaPages except
8166// it takes a Context and allows setting request options on the pages.
8167//
8168// The context must be non-nil and will be used for request cancellation. If
8169// the context is nil a panic will occur. In the future the SDK may create
8170// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8171// for more information on using Contexts.
8172func (c *SSM) GetInventorySchemaPagesWithContext(ctx aws.Context, input *GetInventorySchemaInput, fn func(*GetInventorySchemaOutput, bool) bool, opts ...request.Option) error {
8173	p := request.Pagination{
8174		NewRequest: func() (*request.Request, error) {
8175			var inCpy *GetInventorySchemaInput
8176			if input != nil {
8177				tmp := *input
8178				inCpy = &tmp
8179			}
8180			req, _ := c.GetInventorySchemaRequest(inCpy)
8181			req.SetContext(ctx)
8182			req.ApplyOptions(opts...)
8183			return req, nil
8184		},
8185	}
8186
8187	for p.Next() {
8188		if !fn(p.Page().(*GetInventorySchemaOutput), !p.HasNextPage()) {
8189			break
8190		}
8191	}
8192
8193	return p.Err()
8194}
8195
8196const opGetMaintenanceWindow = "GetMaintenanceWindow"
8197
8198// GetMaintenanceWindowRequest generates a "aws/request.Request" representing the
8199// client's request for the GetMaintenanceWindow operation. The "output" return
8200// value will be populated with the request's response once the request completes
8201// successfully.
8202//
8203// Use "Send" method on the returned Request to send the API call to the service.
8204// the "output" return value is not valid until after Send returns without error.
8205//
8206// See GetMaintenanceWindow for more information on using the GetMaintenanceWindow
8207// API call, and error handling.
8208//
8209// This method is useful when you want to inject custom logic or configuration
8210// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8211//
8212//
8213//    // Example sending a request using the GetMaintenanceWindowRequest method.
8214//    req, resp := client.GetMaintenanceWindowRequest(params)
8215//
8216//    err := req.Send()
8217//    if err == nil { // resp is now filled
8218//        fmt.Println(resp)
8219//    }
8220//
8221// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindow
8222func (c *SSM) GetMaintenanceWindowRequest(input *GetMaintenanceWindowInput) (req *request.Request, output *GetMaintenanceWindowOutput) {
8223	op := &request.Operation{
8224		Name:       opGetMaintenanceWindow,
8225		HTTPMethod: "POST",
8226		HTTPPath:   "/",
8227	}
8228
8229	if input == nil {
8230		input = &GetMaintenanceWindowInput{}
8231	}
8232
8233	output = &GetMaintenanceWindowOutput{}
8234	req = c.newRequest(op, input, output)
8235	return
8236}
8237
8238// GetMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
8239//
8240// Retrieves a maintenance window.
8241//
8242// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8243// with awserr.Error's Code and Message methods to get detailed information about
8244// the error.
8245//
8246// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8247// API operation GetMaintenanceWindow for usage and error information.
8248//
8249// Returned Error Types:
8250//   * DoesNotExistException
8251//   Error returned when the ID specified for a resource, such as a maintenance
8252//   window or patch baseline, doesn't exist.
8253//
8254//   For information about resource quotas in Amazon Web Services Systems Manager,
8255//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
8256//   in the Amazon Web Services General Reference.
8257//
8258//   * InternalServerError
8259//   An error occurred on the server side.
8260//
8261// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindow
8262func (c *SSM) GetMaintenanceWindow(input *GetMaintenanceWindowInput) (*GetMaintenanceWindowOutput, error) {
8263	req, out := c.GetMaintenanceWindowRequest(input)
8264	return out, req.Send()
8265}
8266
8267// GetMaintenanceWindowWithContext is the same as GetMaintenanceWindow with the addition of
8268// the ability to pass a context and additional request options.
8269//
8270// See GetMaintenanceWindow for details on how to use this API operation.
8271//
8272// The context must be non-nil and will be used for request cancellation. If
8273// the context is nil a panic will occur. In the future the SDK may create
8274// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8275// for more information on using Contexts.
8276func (c *SSM) GetMaintenanceWindowWithContext(ctx aws.Context, input *GetMaintenanceWindowInput, opts ...request.Option) (*GetMaintenanceWindowOutput, error) {
8277	req, out := c.GetMaintenanceWindowRequest(input)
8278	req.SetContext(ctx)
8279	req.ApplyOptions(opts...)
8280	return out, req.Send()
8281}
8282
8283const opGetMaintenanceWindowExecution = "GetMaintenanceWindowExecution"
8284
8285// GetMaintenanceWindowExecutionRequest generates a "aws/request.Request" representing the
8286// client's request for the GetMaintenanceWindowExecution operation. The "output" return
8287// value will be populated with the request's response once the request completes
8288// successfully.
8289//
8290// Use "Send" method on the returned Request to send the API call to the service.
8291// the "output" return value is not valid until after Send returns without error.
8292//
8293// See GetMaintenanceWindowExecution for more information on using the GetMaintenanceWindowExecution
8294// API call, and error handling.
8295//
8296// This method is useful when you want to inject custom logic or configuration
8297// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8298//
8299//
8300//    // Example sending a request using the GetMaintenanceWindowExecutionRequest method.
8301//    req, resp := client.GetMaintenanceWindowExecutionRequest(params)
8302//
8303//    err := req.Send()
8304//    if err == nil { // resp is now filled
8305//        fmt.Println(resp)
8306//    }
8307//
8308// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecution
8309func (c *SSM) GetMaintenanceWindowExecutionRequest(input *GetMaintenanceWindowExecutionInput) (req *request.Request, output *GetMaintenanceWindowExecutionOutput) {
8310	op := &request.Operation{
8311		Name:       opGetMaintenanceWindowExecution,
8312		HTTPMethod: "POST",
8313		HTTPPath:   "/",
8314	}
8315
8316	if input == nil {
8317		input = &GetMaintenanceWindowExecutionInput{}
8318	}
8319
8320	output = &GetMaintenanceWindowExecutionOutput{}
8321	req = c.newRequest(op, input, output)
8322	return
8323}
8324
8325// GetMaintenanceWindowExecution API operation for Amazon Simple Systems Manager (SSM).
8326//
8327// Retrieves details about a specific a maintenance window execution.
8328//
8329// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8330// with awserr.Error's Code and Message methods to get detailed information about
8331// the error.
8332//
8333// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8334// API operation GetMaintenanceWindowExecution for usage and error information.
8335//
8336// Returned Error Types:
8337//   * DoesNotExistException
8338//   Error returned when the ID specified for a resource, such as a maintenance
8339//   window or patch baseline, doesn't exist.
8340//
8341//   For information about resource quotas in Amazon Web Services Systems Manager,
8342//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
8343//   in the Amazon Web Services General Reference.
8344//
8345//   * InternalServerError
8346//   An error occurred on the server side.
8347//
8348// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecution
8349func (c *SSM) GetMaintenanceWindowExecution(input *GetMaintenanceWindowExecutionInput) (*GetMaintenanceWindowExecutionOutput, error) {
8350	req, out := c.GetMaintenanceWindowExecutionRequest(input)
8351	return out, req.Send()
8352}
8353
8354// GetMaintenanceWindowExecutionWithContext is the same as GetMaintenanceWindowExecution with the addition of
8355// the ability to pass a context and additional request options.
8356//
8357// See GetMaintenanceWindowExecution for details on how to use this API operation.
8358//
8359// The context must be non-nil and will be used for request cancellation. If
8360// the context is nil a panic will occur. In the future the SDK may create
8361// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8362// for more information on using Contexts.
8363func (c *SSM) GetMaintenanceWindowExecutionWithContext(ctx aws.Context, input *GetMaintenanceWindowExecutionInput, opts ...request.Option) (*GetMaintenanceWindowExecutionOutput, error) {
8364	req, out := c.GetMaintenanceWindowExecutionRequest(input)
8365	req.SetContext(ctx)
8366	req.ApplyOptions(opts...)
8367	return out, req.Send()
8368}
8369
8370const opGetMaintenanceWindowExecutionTask = "GetMaintenanceWindowExecutionTask"
8371
8372// GetMaintenanceWindowExecutionTaskRequest generates a "aws/request.Request" representing the
8373// client's request for the GetMaintenanceWindowExecutionTask operation. The "output" return
8374// value will be populated with the request's response once the request completes
8375// successfully.
8376//
8377// Use "Send" method on the returned Request to send the API call to the service.
8378// the "output" return value is not valid until after Send returns without error.
8379//
8380// See GetMaintenanceWindowExecutionTask for more information on using the GetMaintenanceWindowExecutionTask
8381// API call, and error handling.
8382//
8383// This method is useful when you want to inject custom logic or configuration
8384// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8385//
8386//
8387//    // Example sending a request using the GetMaintenanceWindowExecutionTaskRequest method.
8388//    req, resp := client.GetMaintenanceWindowExecutionTaskRequest(params)
8389//
8390//    err := req.Send()
8391//    if err == nil { // resp is now filled
8392//        fmt.Println(resp)
8393//    }
8394//
8395// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTask
8396func (c *SSM) GetMaintenanceWindowExecutionTaskRequest(input *GetMaintenanceWindowExecutionTaskInput) (req *request.Request, output *GetMaintenanceWindowExecutionTaskOutput) {
8397	op := &request.Operation{
8398		Name:       opGetMaintenanceWindowExecutionTask,
8399		HTTPMethod: "POST",
8400		HTTPPath:   "/",
8401	}
8402
8403	if input == nil {
8404		input = &GetMaintenanceWindowExecutionTaskInput{}
8405	}
8406
8407	output = &GetMaintenanceWindowExecutionTaskOutput{}
8408	req = c.newRequest(op, input, output)
8409	return
8410}
8411
8412// GetMaintenanceWindowExecutionTask API operation for Amazon Simple Systems Manager (SSM).
8413//
8414// Retrieves the details about a specific task run as part of a maintenance
8415// window execution.
8416//
8417// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8418// with awserr.Error's Code and Message methods to get detailed information about
8419// the error.
8420//
8421// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8422// API operation GetMaintenanceWindowExecutionTask for usage and error information.
8423//
8424// Returned Error Types:
8425//   * DoesNotExistException
8426//   Error returned when the ID specified for a resource, such as a maintenance
8427//   window or patch baseline, doesn't exist.
8428//
8429//   For information about resource quotas in Amazon Web Services Systems Manager,
8430//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
8431//   in the Amazon Web Services General Reference.
8432//
8433//   * InternalServerError
8434//   An error occurred on the server side.
8435//
8436// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTask
8437func (c *SSM) GetMaintenanceWindowExecutionTask(input *GetMaintenanceWindowExecutionTaskInput) (*GetMaintenanceWindowExecutionTaskOutput, error) {
8438	req, out := c.GetMaintenanceWindowExecutionTaskRequest(input)
8439	return out, req.Send()
8440}
8441
8442// GetMaintenanceWindowExecutionTaskWithContext is the same as GetMaintenanceWindowExecutionTask with the addition of
8443// the ability to pass a context and additional request options.
8444//
8445// See GetMaintenanceWindowExecutionTask for details on how to use this API operation.
8446//
8447// The context must be non-nil and will be used for request cancellation. If
8448// the context is nil a panic will occur. In the future the SDK may create
8449// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8450// for more information on using Contexts.
8451func (c *SSM) GetMaintenanceWindowExecutionTaskWithContext(ctx aws.Context, input *GetMaintenanceWindowExecutionTaskInput, opts ...request.Option) (*GetMaintenanceWindowExecutionTaskOutput, error) {
8452	req, out := c.GetMaintenanceWindowExecutionTaskRequest(input)
8453	req.SetContext(ctx)
8454	req.ApplyOptions(opts...)
8455	return out, req.Send()
8456}
8457
8458const opGetMaintenanceWindowExecutionTaskInvocation = "GetMaintenanceWindowExecutionTaskInvocation"
8459
8460// GetMaintenanceWindowExecutionTaskInvocationRequest generates a "aws/request.Request" representing the
8461// client's request for the GetMaintenanceWindowExecutionTaskInvocation operation. The "output" return
8462// value will be populated with the request's response once the request completes
8463// successfully.
8464//
8465// Use "Send" method on the returned Request to send the API call to the service.
8466// the "output" return value is not valid until after Send returns without error.
8467//
8468// See GetMaintenanceWindowExecutionTaskInvocation for more information on using the GetMaintenanceWindowExecutionTaskInvocation
8469// API call, and error handling.
8470//
8471// This method is useful when you want to inject custom logic or configuration
8472// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8473//
8474//
8475//    // Example sending a request using the GetMaintenanceWindowExecutionTaskInvocationRequest method.
8476//    req, resp := client.GetMaintenanceWindowExecutionTaskInvocationRequest(params)
8477//
8478//    err := req.Send()
8479//    if err == nil { // resp is now filled
8480//        fmt.Println(resp)
8481//    }
8482//
8483// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTaskInvocation
8484func (c *SSM) GetMaintenanceWindowExecutionTaskInvocationRequest(input *GetMaintenanceWindowExecutionTaskInvocationInput) (req *request.Request, output *GetMaintenanceWindowExecutionTaskInvocationOutput) {
8485	op := &request.Operation{
8486		Name:       opGetMaintenanceWindowExecutionTaskInvocation,
8487		HTTPMethod: "POST",
8488		HTTPPath:   "/",
8489	}
8490
8491	if input == nil {
8492		input = &GetMaintenanceWindowExecutionTaskInvocationInput{}
8493	}
8494
8495	output = &GetMaintenanceWindowExecutionTaskInvocationOutput{}
8496	req = c.newRequest(op, input, output)
8497	return
8498}
8499
8500// GetMaintenanceWindowExecutionTaskInvocation API operation for Amazon Simple Systems Manager (SSM).
8501//
8502// Retrieves information about a specific task running on a specific target.
8503//
8504// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8505// with awserr.Error's Code and Message methods to get detailed information about
8506// the error.
8507//
8508// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8509// API operation GetMaintenanceWindowExecutionTaskInvocation for usage and error information.
8510//
8511// Returned Error Types:
8512//   * DoesNotExistException
8513//   Error returned when the ID specified for a resource, such as a maintenance
8514//   window or patch baseline, doesn't exist.
8515//
8516//   For information about resource quotas in Amazon Web Services Systems Manager,
8517//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
8518//   in the Amazon Web Services General Reference.
8519//
8520//   * InternalServerError
8521//   An error occurred on the server side.
8522//
8523// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowExecutionTaskInvocation
8524func (c *SSM) GetMaintenanceWindowExecutionTaskInvocation(input *GetMaintenanceWindowExecutionTaskInvocationInput) (*GetMaintenanceWindowExecutionTaskInvocationOutput, error) {
8525	req, out := c.GetMaintenanceWindowExecutionTaskInvocationRequest(input)
8526	return out, req.Send()
8527}
8528
8529// GetMaintenanceWindowExecutionTaskInvocationWithContext is the same as GetMaintenanceWindowExecutionTaskInvocation with the addition of
8530// the ability to pass a context and additional request options.
8531//
8532// See GetMaintenanceWindowExecutionTaskInvocation for details on how to use this API operation.
8533//
8534// The context must be non-nil and will be used for request cancellation. If
8535// the context is nil a panic will occur. In the future the SDK may create
8536// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8537// for more information on using Contexts.
8538func (c *SSM) GetMaintenanceWindowExecutionTaskInvocationWithContext(ctx aws.Context, input *GetMaintenanceWindowExecutionTaskInvocationInput, opts ...request.Option) (*GetMaintenanceWindowExecutionTaskInvocationOutput, error) {
8539	req, out := c.GetMaintenanceWindowExecutionTaskInvocationRequest(input)
8540	req.SetContext(ctx)
8541	req.ApplyOptions(opts...)
8542	return out, req.Send()
8543}
8544
8545const opGetMaintenanceWindowTask = "GetMaintenanceWindowTask"
8546
8547// GetMaintenanceWindowTaskRequest generates a "aws/request.Request" representing the
8548// client's request for the GetMaintenanceWindowTask operation. The "output" return
8549// value will be populated with the request's response once the request completes
8550// successfully.
8551//
8552// Use "Send" method on the returned Request to send the API call to the service.
8553// the "output" return value is not valid until after Send returns without error.
8554//
8555// See GetMaintenanceWindowTask for more information on using the GetMaintenanceWindowTask
8556// API call, and error handling.
8557//
8558// This method is useful when you want to inject custom logic or configuration
8559// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8560//
8561//
8562//    // Example sending a request using the GetMaintenanceWindowTaskRequest method.
8563//    req, resp := client.GetMaintenanceWindowTaskRequest(params)
8564//
8565//    err := req.Send()
8566//    if err == nil { // resp is now filled
8567//        fmt.Println(resp)
8568//    }
8569//
8570// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowTask
8571func (c *SSM) GetMaintenanceWindowTaskRequest(input *GetMaintenanceWindowTaskInput) (req *request.Request, output *GetMaintenanceWindowTaskOutput) {
8572	op := &request.Operation{
8573		Name:       opGetMaintenanceWindowTask,
8574		HTTPMethod: "POST",
8575		HTTPPath:   "/",
8576	}
8577
8578	if input == nil {
8579		input = &GetMaintenanceWindowTaskInput{}
8580	}
8581
8582	output = &GetMaintenanceWindowTaskOutput{}
8583	req = c.newRequest(op, input, output)
8584	return
8585}
8586
8587// GetMaintenanceWindowTask API operation for Amazon Simple Systems Manager (SSM).
8588//
8589// Lists the tasks in a maintenance window.
8590//
8591// For maintenance window tasks without a specified target, you can't supply
8592// values for --max-errors and --max-concurrency. Instead, the system inserts
8593// a placeholder value of 1, which may be reported in the response to this command.
8594// These values don't affect the running of your task and can be ignored.
8595//
8596// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8597// with awserr.Error's Code and Message methods to get detailed information about
8598// the error.
8599//
8600// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8601// API operation GetMaintenanceWindowTask for usage and error information.
8602//
8603// Returned Error Types:
8604//   * DoesNotExistException
8605//   Error returned when the ID specified for a resource, such as a maintenance
8606//   window or patch baseline, doesn't exist.
8607//
8608//   For information about resource quotas in Amazon Web Services Systems Manager,
8609//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
8610//   in the Amazon Web Services General Reference.
8611//
8612//   * InternalServerError
8613//   An error occurred on the server side.
8614//
8615// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetMaintenanceWindowTask
8616func (c *SSM) GetMaintenanceWindowTask(input *GetMaintenanceWindowTaskInput) (*GetMaintenanceWindowTaskOutput, error) {
8617	req, out := c.GetMaintenanceWindowTaskRequest(input)
8618	return out, req.Send()
8619}
8620
8621// GetMaintenanceWindowTaskWithContext is the same as GetMaintenanceWindowTask with the addition of
8622// the ability to pass a context and additional request options.
8623//
8624// See GetMaintenanceWindowTask for details on how to use this API operation.
8625//
8626// The context must be non-nil and will be used for request cancellation. If
8627// the context is nil a panic will occur. In the future the SDK may create
8628// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8629// for more information on using Contexts.
8630func (c *SSM) GetMaintenanceWindowTaskWithContext(ctx aws.Context, input *GetMaintenanceWindowTaskInput, opts ...request.Option) (*GetMaintenanceWindowTaskOutput, error) {
8631	req, out := c.GetMaintenanceWindowTaskRequest(input)
8632	req.SetContext(ctx)
8633	req.ApplyOptions(opts...)
8634	return out, req.Send()
8635}
8636
8637const opGetOpsItem = "GetOpsItem"
8638
8639// GetOpsItemRequest generates a "aws/request.Request" representing the
8640// client's request for the GetOpsItem operation. The "output" return
8641// value will be populated with the request's response once the request completes
8642// successfully.
8643//
8644// Use "Send" method on the returned Request to send the API call to the service.
8645// the "output" return value is not valid until after Send returns without error.
8646//
8647// See GetOpsItem for more information on using the GetOpsItem
8648// API call, and error handling.
8649//
8650// This method is useful when you want to inject custom logic or configuration
8651// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8652//
8653//
8654//    // Example sending a request using the GetOpsItemRequest method.
8655//    req, resp := client.GetOpsItemRequest(params)
8656//
8657//    err := req.Send()
8658//    if err == nil { // resp is now filled
8659//        fmt.Println(resp)
8660//    }
8661//
8662// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsItem
8663func (c *SSM) GetOpsItemRequest(input *GetOpsItemInput) (req *request.Request, output *GetOpsItemOutput) {
8664	op := &request.Operation{
8665		Name:       opGetOpsItem,
8666		HTTPMethod: "POST",
8667		HTTPPath:   "/",
8668	}
8669
8670	if input == nil {
8671		input = &GetOpsItemInput{}
8672	}
8673
8674	output = &GetOpsItemOutput{}
8675	req = c.newRequest(op, input, output)
8676	return
8677}
8678
8679// GetOpsItem API operation for Amazon Simple Systems Manager (SSM).
8680//
8681// Get information about an OpsItem by using the ID. You must have permission
8682// in Identity and Access Management (IAM) to view information about an OpsItem.
8683// For more information, see Getting started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
8684// in the Amazon Web Services Systems Manager User Guide.
8685//
8686// Operations engineers and IT professionals use Amazon Web Services Systems
8687// Manager OpsCenter to view, investigate, and remediate operational issues
8688// impacting the performance and health of their Amazon Web Services resources.
8689// For more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
8690// in the Amazon Web Services Systems Manager User Guide.
8691//
8692// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8693// with awserr.Error's Code and Message methods to get detailed information about
8694// the error.
8695//
8696// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8697// API operation GetOpsItem for usage and error information.
8698//
8699// Returned Error Types:
8700//   * InternalServerError
8701//   An error occurred on the server side.
8702//
8703//   * OpsItemNotFoundException
8704//   The specified OpsItem ID doesn't exist. Verify the ID and try again.
8705//
8706// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsItem
8707func (c *SSM) GetOpsItem(input *GetOpsItemInput) (*GetOpsItemOutput, error) {
8708	req, out := c.GetOpsItemRequest(input)
8709	return out, req.Send()
8710}
8711
8712// GetOpsItemWithContext is the same as GetOpsItem with the addition of
8713// the ability to pass a context and additional request options.
8714//
8715// See GetOpsItem for details on how to use this API operation.
8716//
8717// The context must be non-nil and will be used for request cancellation. If
8718// the context is nil a panic will occur. In the future the SDK may create
8719// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8720// for more information on using Contexts.
8721func (c *SSM) GetOpsItemWithContext(ctx aws.Context, input *GetOpsItemInput, opts ...request.Option) (*GetOpsItemOutput, error) {
8722	req, out := c.GetOpsItemRequest(input)
8723	req.SetContext(ctx)
8724	req.ApplyOptions(opts...)
8725	return out, req.Send()
8726}
8727
8728const opGetOpsMetadata = "GetOpsMetadata"
8729
8730// GetOpsMetadataRequest generates a "aws/request.Request" representing the
8731// client's request for the GetOpsMetadata operation. The "output" return
8732// value will be populated with the request's response once the request completes
8733// successfully.
8734//
8735// Use "Send" method on the returned Request to send the API call to the service.
8736// the "output" return value is not valid until after Send returns without error.
8737//
8738// See GetOpsMetadata for more information on using the GetOpsMetadata
8739// API call, and error handling.
8740//
8741// This method is useful when you want to inject custom logic or configuration
8742// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8743//
8744//
8745//    // Example sending a request using the GetOpsMetadataRequest method.
8746//    req, resp := client.GetOpsMetadataRequest(params)
8747//
8748//    err := req.Send()
8749//    if err == nil { // resp is now filled
8750//        fmt.Println(resp)
8751//    }
8752//
8753// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsMetadata
8754func (c *SSM) GetOpsMetadataRequest(input *GetOpsMetadataInput) (req *request.Request, output *GetOpsMetadataOutput) {
8755	op := &request.Operation{
8756		Name:       opGetOpsMetadata,
8757		HTTPMethod: "POST",
8758		HTTPPath:   "/",
8759	}
8760
8761	if input == nil {
8762		input = &GetOpsMetadataInput{}
8763	}
8764
8765	output = &GetOpsMetadataOutput{}
8766	req = c.newRequest(op, input, output)
8767	return
8768}
8769
8770// GetOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
8771//
8772// View operational metadata related to an application in Application Manager.
8773//
8774// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8775// with awserr.Error's Code and Message methods to get detailed information about
8776// the error.
8777//
8778// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8779// API operation GetOpsMetadata for usage and error information.
8780//
8781// Returned Error Types:
8782//   * OpsMetadataNotFoundException
8783//   The OpsMetadata object doesn't exist.
8784//
8785//   * OpsMetadataInvalidArgumentException
8786//   One of the arguments passed is invalid.
8787//
8788//   * InternalServerError
8789//   An error occurred on the server side.
8790//
8791// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsMetadata
8792func (c *SSM) GetOpsMetadata(input *GetOpsMetadataInput) (*GetOpsMetadataOutput, error) {
8793	req, out := c.GetOpsMetadataRequest(input)
8794	return out, req.Send()
8795}
8796
8797// GetOpsMetadataWithContext is the same as GetOpsMetadata with the addition of
8798// the ability to pass a context and additional request options.
8799//
8800// See GetOpsMetadata for details on how to use this API operation.
8801//
8802// The context must be non-nil and will be used for request cancellation. If
8803// the context is nil a panic will occur. In the future the SDK may create
8804// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8805// for more information on using Contexts.
8806func (c *SSM) GetOpsMetadataWithContext(ctx aws.Context, input *GetOpsMetadataInput, opts ...request.Option) (*GetOpsMetadataOutput, error) {
8807	req, out := c.GetOpsMetadataRequest(input)
8808	req.SetContext(ctx)
8809	req.ApplyOptions(opts...)
8810	return out, req.Send()
8811}
8812
8813const opGetOpsSummary = "GetOpsSummary"
8814
8815// GetOpsSummaryRequest generates a "aws/request.Request" representing the
8816// client's request for the GetOpsSummary operation. The "output" return
8817// value will be populated with the request's response once the request completes
8818// successfully.
8819//
8820// Use "Send" method on the returned Request to send the API call to the service.
8821// the "output" return value is not valid until after Send returns without error.
8822//
8823// See GetOpsSummary for more information on using the GetOpsSummary
8824// API call, and error handling.
8825//
8826// This method is useful when you want to inject custom logic or configuration
8827// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8828//
8829//
8830//    // Example sending a request using the GetOpsSummaryRequest method.
8831//    req, resp := client.GetOpsSummaryRequest(params)
8832//
8833//    err := req.Send()
8834//    if err == nil { // resp is now filled
8835//        fmt.Println(resp)
8836//    }
8837//
8838// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsSummary
8839func (c *SSM) GetOpsSummaryRequest(input *GetOpsSummaryInput) (req *request.Request, output *GetOpsSummaryOutput) {
8840	op := &request.Operation{
8841		Name:       opGetOpsSummary,
8842		HTTPMethod: "POST",
8843		HTTPPath:   "/",
8844		Paginator: &request.Paginator{
8845			InputTokens:     []string{"NextToken"},
8846			OutputTokens:    []string{"NextToken"},
8847			LimitToken:      "MaxResults",
8848			TruncationToken: "",
8849		},
8850	}
8851
8852	if input == nil {
8853		input = &GetOpsSummaryInput{}
8854	}
8855
8856	output = &GetOpsSummaryOutput{}
8857	req = c.newRequest(op, input, output)
8858	return
8859}
8860
8861// GetOpsSummary API operation for Amazon Simple Systems Manager (SSM).
8862//
8863// View a summary of operations metadata (OpsData) based on specified filters
8864// and aggregators. OpsData can include information about Amazon Web Services
8865// Systems Manager OpsCenter operational workitems (OpsItems) as well as information
8866// about any Amazon Web Services resource or service configured to report OpsData
8867// to Amazon Web Services Systems Manager Explorer.
8868//
8869// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
8870// with awserr.Error's Code and Message methods to get detailed information about
8871// the error.
8872//
8873// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
8874// API operation GetOpsSummary for usage and error information.
8875//
8876// Returned Error Types:
8877//   * InternalServerError
8878//   An error occurred on the server side.
8879//
8880//   * ResourceDataSyncNotFoundException
8881//   The specified sync name wasn't found.
8882//
8883//   * InvalidFilter
8884//   The filter name isn't valid. Verify the you entered the correct name and
8885//   try again.
8886//
8887//   * InvalidNextToken
8888//   The specified token isn't valid.
8889//
8890//   * InvalidTypeNameException
8891//   The parameter type name isn't valid.
8892//
8893//   * InvalidAggregatorException
8894//   The specified aggregator isn't valid for inventory groups. Verify that the
8895//   aggregator uses a valid inventory type such as AWS:Application or AWS:InstanceInformation.
8896//
8897// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsSummary
8898func (c *SSM) GetOpsSummary(input *GetOpsSummaryInput) (*GetOpsSummaryOutput, error) {
8899	req, out := c.GetOpsSummaryRequest(input)
8900	return out, req.Send()
8901}
8902
8903// GetOpsSummaryWithContext is the same as GetOpsSummary with the addition of
8904// the ability to pass a context and additional request options.
8905//
8906// See GetOpsSummary for details on how to use this API operation.
8907//
8908// The context must be non-nil and will be used for request cancellation. If
8909// the context is nil a panic will occur. In the future the SDK may create
8910// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8911// for more information on using Contexts.
8912func (c *SSM) GetOpsSummaryWithContext(ctx aws.Context, input *GetOpsSummaryInput, opts ...request.Option) (*GetOpsSummaryOutput, error) {
8913	req, out := c.GetOpsSummaryRequest(input)
8914	req.SetContext(ctx)
8915	req.ApplyOptions(opts...)
8916	return out, req.Send()
8917}
8918
8919// GetOpsSummaryPages iterates over the pages of a GetOpsSummary operation,
8920// calling the "fn" function with the response data for each page. To stop
8921// iterating, return false from the fn function.
8922//
8923// See GetOpsSummary method for more information on how to use this operation.
8924//
8925// Note: This operation can generate multiple requests to a service.
8926//
8927//    // Example iterating over at most 3 pages of a GetOpsSummary operation.
8928//    pageNum := 0
8929//    err := client.GetOpsSummaryPages(params,
8930//        func(page *ssm.GetOpsSummaryOutput, lastPage bool) bool {
8931//            pageNum++
8932//            fmt.Println(page)
8933//            return pageNum <= 3
8934//        })
8935//
8936func (c *SSM) GetOpsSummaryPages(input *GetOpsSummaryInput, fn func(*GetOpsSummaryOutput, bool) bool) error {
8937	return c.GetOpsSummaryPagesWithContext(aws.BackgroundContext(), input, fn)
8938}
8939
8940// GetOpsSummaryPagesWithContext same as GetOpsSummaryPages except
8941// it takes a Context and allows setting request options on the pages.
8942//
8943// The context must be non-nil and will be used for request cancellation. If
8944// the context is nil a panic will occur. In the future the SDK may create
8945// sub-contexts for http.Requests. See https://golang.org/pkg/context/
8946// for more information on using Contexts.
8947func (c *SSM) GetOpsSummaryPagesWithContext(ctx aws.Context, input *GetOpsSummaryInput, fn func(*GetOpsSummaryOutput, bool) bool, opts ...request.Option) error {
8948	p := request.Pagination{
8949		NewRequest: func() (*request.Request, error) {
8950			var inCpy *GetOpsSummaryInput
8951			if input != nil {
8952				tmp := *input
8953				inCpy = &tmp
8954			}
8955			req, _ := c.GetOpsSummaryRequest(inCpy)
8956			req.SetContext(ctx)
8957			req.ApplyOptions(opts...)
8958			return req, nil
8959		},
8960	}
8961
8962	for p.Next() {
8963		if !fn(p.Page().(*GetOpsSummaryOutput), !p.HasNextPage()) {
8964			break
8965		}
8966	}
8967
8968	return p.Err()
8969}
8970
8971const opGetParameter = "GetParameter"
8972
8973// GetParameterRequest generates a "aws/request.Request" representing the
8974// client's request for the GetParameter operation. The "output" return
8975// value will be populated with the request's response once the request completes
8976// successfully.
8977//
8978// Use "Send" method on the returned Request to send the API call to the service.
8979// the "output" return value is not valid until after Send returns without error.
8980//
8981// See GetParameter for more information on using the GetParameter
8982// API call, and error handling.
8983//
8984// This method is useful when you want to inject custom logic or configuration
8985// into the SDK's request lifecycle. Such as custom headers, or retry logic.
8986//
8987//
8988//    // Example sending a request using the GetParameterRequest method.
8989//    req, resp := client.GetParameterRequest(params)
8990//
8991//    err := req.Send()
8992//    if err == nil { // resp is now filled
8993//        fmt.Println(resp)
8994//    }
8995//
8996// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameter
8997func (c *SSM) GetParameterRequest(input *GetParameterInput) (req *request.Request, output *GetParameterOutput) {
8998	op := &request.Operation{
8999		Name:       opGetParameter,
9000		HTTPMethod: "POST",
9001		HTTPPath:   "/",
9002	}
9003
9004	if input == nil {
9005		input = &GetParameterInput{}
9006	}
9007
9008	output = &GetParameterOutput{}
9009	req = c.newRequest(op, input, output)
9010	return
9011}
9012
9013// GetParameter API operation for Amazon Simple Systems Manager (SSM).
9014//
9015// Get information about a single parameter by specifying the parameter name.
9016//
9017// To get information about more than one parameter at a time, use the GetParameters
9018// operation.
9019//
9020// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9021// with awserr.Error's Code and Message methods to get detailed information about
9022// the error.
9023//
9024// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9025// API operation GetParameter for usage and error information.
9026//
9027// Returned Error Types:
9028//   * InternalServerError
9029//   An error occurred on the server side.
9030//
9031//   * InvalidKeyId
9032//   The query key ID isn't valid.
9033//
9034//   * ParameterNotFound
9035//   The parameter couldn't be found. Verify the name and try again.
9036//
9037//   * ParameterVersionNotFound
9038//   The specified parameter version wasn't found. Verify the parameter name and
9039//   version, and try again.
9040//
9041// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameter
9042func (c *SSM) GetParameter(input *GetParameterInput) (*GetParameterOutput, error) {
9043	req, out := c.GetParameterRequest(input)
9044	return out, req.Send()
9045}
9046
9047// GetParameterWithContext is the same as GetParameter with the addition of
9048// the ability to pass a context and additional request options.
9049//
9050// See GetParameter for details on how to use this API operation.
9051//
9052// The context must be non-nil and will be used for request cancellation. If
9053// the context is nil a panic will occur. In the future the SDK may create
9054// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9055// for more information on using Contexts.
9056func (c *SSM) GetParameterWithContext(ctx aws.Context, input *GetParameterInput, opts ...request.Option) (*GetParameterOutput, error) {
9057	req, out := c.GetParameterRequest(input)
9058	req.SetContext(ctx)
9059	req.ApplyOptions(opts...)
9060	return out, req.Send()
9061}
9062
9063const opGetParameterHistory = "GetParameterHistory"
9064
9065// GetParameterHistoryRequest generates a "aws/request.Request" representing the
9066// client's request for the GetParameterHistory operation. The "output" return
9067// value will be populated with the request's response once the request completes
9068// successfully.
9069//
9070// Use "Send" method on the returned Request to send the API call to the service.
9071// the "output" return value is not valid until after Send returns without error.
9072//
9073// See GetParameterHistory for more information on using the GetParameterHistory
9074// API call, and error handling.
9075//
9076// This method is useful when you want to inject custom logic or configuration
9077// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9078//
9079//
9080//    // Example sending a request using the GetParameterHistoryRequest method.
9081//    req, resp := client.GetParameterHistoryRequest(params)
9082//
9083//    err := req.Send()
9084//    if err == nil { // resp is now filled
9085//        fmt.Println(resp)
9086//    }
9087//
9088// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameterHistory
9089func (c *SSM) GetParameterHistoryRequest(input *GetParameterHistoryInput) (req *request.Request, output *GetParameterHistoryOutput) {
9090	op := &request.Operation{
9091		Name:       opGetParameterHistory,
9092		HTTPMethod: "POST",
9093		HTTPPath:   "/",
9094		Paginator: &request.Paginator{
9095			InputTokens:     []string{"NextToken"},
9096			OutputTokens:    []string{"NextToken"},
9097			LimitToken:      "MaxResults",
9098			TruncationToken: "",
9099		},
9100	}
9101
9102	if input == nil {
9103		input = &GetParameterHistoryInput{}
9104	}
9105
9106	output = &GetParameterHistoryOutput{}
9107	req = c.newRequest(op, input, output)
9108	return
9109}
9110
9111// GetParameterHistory API operation for Amazon Simple Systems Manager (SSM).
9112//
9113// Retrieves the history of all changes to a parameter.
9114//
9115// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9116// with awserr.Error's Code and Message methods to get detailed information about
9117// the error.
9118//
9119// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9120// API operation GetParameterHistory for usage and error information.
9121//
9122// Returned Error Types:
9123//   * InternalServerError
9124//   An error occurred on the server side.
9125//
9126//   * ParameterNotFound
9127//   The parameter couldn't be found. Verify the name and try again.
9128//
9129//   * InvalidNextToken
9130//   The specified token isn't valid.
9131//
9132//   * InvalidKeyId
9133//   The query key ID isn't valid.
9134//
9135// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameterHistory
9136func (c *SSM) GetParameterHistory(input *GetParameterHistoryInput) (*GetParameterHistoryOutput, error) {
9137	req, out := c.GetParameterHistoryRequest(input)
9138	return out, req.Send()
9139}
9140
9141// GetParameterHistoryWithContext is the same as GetParameterHistory with the addition of
9142// the ability to pass a context and additional request options.
9143//
9144// See GetParameterHistory for details on how to use this API operation.
9145//
9146// The context must be non-nil and will be used for request cancellation. If
9147// the context is nil a panic will occur. In the future the SDK may create
9148// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9149// for more information on using Contexts.
9150func (c *SSM) GetParameterHistoryWithContext(ctx aws.Context, input *GetParameterHistoryInput, opts ...request.Option) (*GetParameterHistoryOutput, error) {
9151	req, out := c.GetParameterHistoryRequest(input)
9152	req.SetContext(ctx)
9153	req.ApplyOptions(opts...)
9154	return out, req.Send()
9155}
9156
9157// GetParameterHistoryPages iterates over the pages of a GetParameterHistory operation,
9158// calling the "fn" function with the response data for each page. To stop
9159// iterating, return false from the fn function.
9160//
9161// See GetParameterHistory method for more information on how to use this operation.
9162//
9163// Note: This operation can generate multiple requests to a service.
9164//
9165//    // Example iterating over at most 3 pages of a GetParameterHistory operation.
9166//    pageNum := 0
9167//    err := client.GetParameterHistoryPages(params,
9168//        func(page *ssm.GetParameterHistoryOutput, lastPage bool) bool {
9169//            pageNum++
9170//            fmt.Println(page)
9171//            return pageNum <= 3
9172//        })
9173//
9174func (c *SSM) GetParameterHistoryPages(input *GetParameterHistoryInput, fn func(*GetParameterHistoryOutput, bool) bool) error {
9175	return c.GetParameterHistoryPagesWithContext(aws.BackgroundContext(), input, fn)
9176}
9177
9178// GetParameterHistoryPagesWithContext same as GetParameterHistoryPages except
9179// it takes a Context and allows setting request options on the pages.
9180//
9181// The context must be non-nil and will be used for request cancellation. If
9182// the context is nil a panic will occur. In the future the SDK may create
9183// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9184// for more information on using Contexts.
9185func (c *SSM) GetParameterHistoryPagesWithContext(ctx aws.Context, input *GetParameterHistoryInput, fn func(*GetParameterHistoryOutput, bool) bool, opts ...request.Option) error {
9186	p := request.Pagination{
9187		NewRequest: func() (*request.Request, error) {
9188			var inCpy *GetParameterHistoryInput
9189			if input != nil {
9190				tmp := *input
9191				inCpy = &tmp
9192			}
9193			req, _ := c.GetParameterHistoryRequest(inCpy)
9194			req.SetContext(ctx)
9195			req.ApplyOptions(opts...)
9196			return req, nil
9197		},
9198	}
9199
9200	for p.Next() {
9201		if !fn(p.Page().(*GetParameterHistoryOutput), !p.HasNextPage()) {
9202			break
9203		}
9204	}
9205
9206	return p.Err()
9207}
9208
9209const opGetParameters = "GetParameters"
9210
9211// GetParametersRequest generates a "aws/request.Request" representing the
9212// client's request for the GetParameters operation. The "output" return
9213// value will be populated with the request's response once the request completes
9214// successfully.
9215//
9216// Use "Send" method on the returned Request to send the API call to the service.
9217// the "output" return value is not valid until after Send returns without error.
9218//
9219// See GetParameters for more information on using the GetParameters
9220// API call, and error handling.
9221//
9222// This method is useful when you want to inject custom logic or configuration
9223// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9224//
9225//
9226//    // Example sending a request using the GetParametersRequest method.
9227//    req, resp := client.GetParametersRequest(params)
9228//
9229//    err := req.Send()
9230//    if err == nil { // resp is now filled
9231//        fmt.Println(resp)
9232//    }
9233//
9234// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameters
9235func (c *SSM) GetParametersRequest(input *GetParametersInput) (req *request.Request, output *GetParametersOutput) {
9236	op := &request.Operation{
9237		Name:       opGetParameters,
9238		HTTPMethod: "POST",
9239		HTTPPath:   "/",
9240	}
9241
9242	if input == nil {
9243		input = &GetParametersInput{}
9244	}
9245
9246	output = &GetParametersOutput{}
9247	req = c.newRequest(op, input, output)
9248	return
9249}
9250
9251// GetParameters API operation for Amazon Simple Systems Manager (SSM).
9252//
9253// Get information about one or more parameters by specifying multiple parameter
9254// names.
9255//
9256// To get information about a single parameter, you can use the GetParameter
9257// operation instead.
9258//
9259// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9260// with awserr.Error's Code and Message methods to get detailed information about
9261// the error.
9262//
9263// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9264// API operation GetParameters for usage and error information.
9265//
9266// Returned Error Types:
9267//   * InvalidKeyId
9268//   The query key ID isn't valid.
9269//
9270//   * InternalServerError
9271//   An error occurred on the server side.
9272//
9273// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParameters
9274func (c *SSM) GetParameters(input *GetParametersInput) (*GetParametersOutput, error) {
9275	req, out := c.GetParametersRequest(input)
9276	return out, req.Send()
9277}
9278
9279// GetParametersWithContext is the same as GetParameters with the addition of
9280// the ability to pass a context and additional request options.
9281//
9282// See GetParameters for details on how to use this API operation.
9283//
9284// The context must be non-nil and will be used for request cancellation. If
9285// the context is nil a panic will occur. In the future the SDK may create
9286// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9287// for more information on using Contexts.
9288func (c *SSM) GetParametersWithContext(ctx aws.Context, input *GetParametersInput, opts ...request.Option) (*GetParametersOutput, error) {
9289	req, out := c.GetParametersRequest(input)
9290	req.SetContext(ctx)
9291	req.ApplyOptions(opts...)
9292	return out, req.Send()
9293}
9294
9295const opGetParametersByPath = "GetParametersByPath"
9296
9297// GetParametersByPathRequest generates a "aws/request.Request" representing the
9298// client's request for the GetParametersByPath operation. The "output" return
9299// value will be populated with the request's response once the request completes
9300// successfully.
9301//
9302// Use "Send" method on the returned Request to send the API call to the service.
9303// the "output" return value is not valid until after Send returns without error.
9304//
9305// See GetParametersByPath for more information on using the GetParametersByPath
9306// API call, and error handling.
9307//
9308// This method is useful when you want to inject custom logic or configuration
9309// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9310//
9311//
9312//    // Example sending a request using the GetParametersByPathRequest method.
9313//    req, resp := client.GetParametersByPathRequest(params)
9314//
9315//    err := req.Send()
9316//    if err == nil { // resp is now filled
9317//        fmt.Println(resp)
9318//    }
9319//
9320// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParametersByPath
9321func (c *SSM) GetParametersByPathRequest(input *GetParametersByPathInput) (req *request.Request, output *GetParametersByPathOutput) {
9322	op := &request.Operation{
9323		Name:       opGetParametersByPath,
9324		HTTPMethod: "POST",
9325		HTTPPath:   "/",
9326		Paginator: &request.Paginator{
9327			InputTokens:     []string{"NextToken"},
9328			OutputTokens:    []string{"NextToken"},
9329			LimitToken:      "MaxResults",
9330			TruncationToken: "",
9331		},
9332	}
9333
9334	if input == nil {
9335		input = &GetParametersByPathInput{}
9336	}
9337
9338	output = &GetParametersByPathOutput{}
9339	req = c.newRequest(op, input, output)
9340	return
9341}
9342
9343// GetParametersByPath API operation for Amazon Simple Systems Manager (SSM).
9344//
9345// Retrieve information about one or more parameters in a specific hierarchy.
9346//
9347// Request results are returned on a best-effort basis. If you specify MaxResults
9348// in the request, the response includes information up to the limit specified.
9349// The number of items returned, however, can be between zero and the value
9350// of MaxResults. If the service reaches an internal limit while processing
9351// the results, it stops the operation and returns the matching values up to
9352// that point and a NextToken. You can specify the NextToken in a subsequent
9353// call to get the next set of results.
9354//
9355// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9356// with awserr.Error's Code and Message methods to get detailed information about
9357// the error.
9358//
9359// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9360// API operation GetParametersByPath for usage and error information.
9361//
9362// Returned Error Types:
9363//   * InternalServerError
9364//   An error occurred on the server side.
9365//
9366//   * InvalidFilterKey
9367//   The specified key isn't valid.
9368//
9369//   * InvalidFilterOption
9370//   The specified filter option isn't valid. Valid options are Equals and BeginsWith.
9371//   For Path filter, valid options are Recursive and OneLevel.
9372//
9373//   * InvalidFilterValue
9374//   The filter value isn't valid. Verify the value and try again.
9375//
9376//   * InvalidKeyId
9377//   The query key ID isn't valid.
9378//
9379//   * InvalidNextToken
9380//   The specified token isn't valid.
9381//
9382// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetParametersByPath
9383func (c *SSM) GetParametersByPath(input *GetParametersByPathInput) (*GetParametersByPathOutput, error) {
9384	req, out := c.GetParametersByPathRequest(input)
9385	return out, req.Send()
9386}
9387
9388// GetParametersByPathWithContext is the same as GetParametersByPath with the addition of
9389// the ability to pass a context and additional request options.
9390//
9391// See GetParametersByPath for details on how to use this API operation.
9392//
9393// The context must be non-nil and will be used for request cancellation. If
9394// the context is nil a panic will occur. In the future the SDK may create
9395// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9396// for more information on using Contexts.
9397func (c *SSM) GetParametersByPathWithContext(ctx aws.Context, input *GetParametersByPathInput, opts ...request.Option) (*GetParametersByPathOutput, error) {
9398	req, out := c.GetParametersByPathRequest(input)
9399	req.SetContext(ctx)
9400	req.ApplyOptions(opts...)
9401	return out, req.Send()
9402}
9403
9404// GetParametersByPathPages iterates over the pages of a GetParametersByPath operation,
9405// calling the "fn" function with the response data for each page. To stop
9406// iterating, return false from the fn function.
9407//
9408// See GetParametersByPath method for more information on how to use this operation.
9409//
9410// Note: This operation can generate multiple requests to a service.
9411//
9412//    // Example iterating over at most 3 pages of a GetParametersByPath operation.
9413//    pageNum := 0
9414//    err := client.GetParametersByPathPages(params,
9415//        func(page *ssm.GetParametersByPathOutput, lastPage bool) bool {
9416//            pageNum++
9417//            fmt.Println(page)
9418//            return pageNum <= 3
9419//        })
9420//
9421func (c *SSM) GetParametersByPathPages(input *GetParametersByPathInput, fn func(*GetParametersByPathOutput, bool) bool) error {
9422	return c.GetParametersByPathPagesWithContext(aws.BackgroundContext(), input, fn)
9423}
9424
9425// GetParametersByPathPagesWithContext same as GetParametersByPathPages except
9426// it takes a Context and allows setting request options on the pages.
9427//
9428// The context must be non-nil and will be used for request cancellation. If
9429// the context is nil a panic will occur. In the future the SDK may create
9430// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9431// for more information on using Contexts.
9432func (c *SSM) GetParametersByPathPagesWithContext(ctx aws.Context, input *GetParametersByPathInput, fn func(*GetParametersByPathOutput, bool) bool, opts ...request.Option) error {
9433	p := request.Pagination{
9434		NewRequest: func() (*request.Request, error) {
9435			var inCpy *GetParametersByPathInput
9436			if input != nil {
9437				tmp := *input
9438				inCpy = &tmp
9439			}
9440			req, _ := c.GetParametersByPathRequest(inCpy)
9441			req.SetContext(ctx)
9442			req.ApplyOptions(opts...)
9443			return req, nil
9444		},
9445	}
9446
9447	for p.Next() {
9448		if !fn(p.Page().(*GetParametersByPathOutput), !p.HasNextPage()) {
9449			break
9450		}
9451	}
9452
9453	return p.Err()
9454}
9455
9456const opGetPatchBaseline = "GetPatchBaseline"
9457
9458// GetPatchBaselineRequest generates a "aws/request.Request" representing the
9459// client's request for the GetPatchBaseline operation. The "output" return
9460// value will be populated with the request's response once the request completes
9461// successfully.
9462//
9463// Use "Send" method on the returned Request to send the API call to the service.
9464// the "output" return value is not valid until after Send returns without error.
9465//
9466// See GetPatchBaseline for more information on using the GetPatchBaseline
9467// API call, and error handling.
9468//
9469// This method is useful when you want to inject custom logic or configuration
9470// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9471//
9472//
9473//    // Example sending a request using the GetPatchBaselineRequest method.
9474//    req, resp := client.GetPatchBaselineRequest(params)
9475//
9476//    err := req.Send()
9477//    if err == nil { // resp is now filled
9478//        fmt.Println(resp)
9479//    }
9480//
9481// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaseline
9482func (c *SSM) GetPatchBaselineRequest(input *GetPatchBaselineInput) (req *request.Request, output *GetPatchBaselineOutput) {
9483	op := &request.Operation{
9484		Name:       opGetPatchBaseline,
9485		HTTPMethod: "POST",
9486		HTTPPath:   "/",
9487	}
9488
9489	if input == nil {
9490		input = &GetPatchBaselineInput{}
9491	}
9492
9493	output = &GetPatchBaselineOutput{}
9494	req = c.newRequest(op, input, output)
9495	return
9496}
9497
9498// GetPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
9499//
9500// Retrieves information about a patch baseline.
9501//
9502// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9503// with awserr.Error's Code and Message methods to get detailed information about
9504// the error.
9505//
9506// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9507// API operation GetPatchBaseline for usage and error information.
9508//
9509// Returned Error Types:
9510//   * DoesNotExistException
9511//   Error returned when the ID specified for a resource, such as a maintenance
9512//   window or patch baseline, doesn't exist.
9513//
9514//   For information about resource quotas in Amazon Web Services Systems Manager,
9515//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
9516//   in the Amazon Web Services General Reference.
9517//
9518//   * InvalidResourceId
9519//   The resource ID isn't valid. Verify that you entered the correct ID and try
9520//   again.
9521//
9522//   * InternalServerError
9523//   An error occurred on the server side.
9524//
9525// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaseline
9526func (c *SSM) GetPatchBaseline(input *GetPatchBaselineInput) (*GetPatchBaselineOutput, error) {
9527	req, out := c.GetPatchBaselineRequest(input)
9528	return out, req.Send()
9529}
9530
9531// GetPatchBaselineWithContext is the same as GetPatchBaseline with the addition of
9532// the ability to pass a context and additional request options.
9533//
9534// See GetPatchBaseline for details on how to use this API operation.
9535//
9536// The context must be non-nil and will be used for request cancellation. If
9537// the context is nil a panic will occur. In the future the SDK may create
9538// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9539// for more information on using Contexts.
9540func (c *SSM) GetPatchBaselineWithContext(ctx aws.Context, input *GetPatchBaselineInput, opts ...request.Option) (*GetPatchBaselineOutput, error) {
9541	req, out := c.GetPatchBaselineRequest(input)
9542	req.SetContext(ctx)
9543	req.ApplyOptions(opts...)
9544	return out, req.Send()
9545}
9546
9547const opGetPatchBaselineForPatchGroup = "GetPatchBaselineForPatchGroup"
9548
9549// GetPatchBaselineForPatchGroupRequest generates a "aws/request.Request" representing the
9550// client's request for the GetPatchBaselineForPatchGroup operation. The "output" return
9551// value will be populated with the request's response once the request completes
9552// successfully.
9553//
9554// Use "Send" method on the returned Request to send the API call to the service.
9555// the "output" return value is not valid until after Send returns without error.
9556//
9557// See GetPatchBaselineForPatchGroup for more information on using the GetPatchBaselineForPatchGroup
9558// API call, and error handling.
9559//
9560// This method is useful when you want to inject custom logic or configuration
9561// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9562//
9563//
9564//    // Example sending a request using the GetPatchBaselineForPatchGroupRequest method.
9565//    req, resp := client.GetPatchBaselineForPatchGroupRequest(params)
9566//
9567//    err := req.Send()
9568//    if err == nil { // resp is now filled
9569//        fmt.Println(resp)
9570//    }
9571//
9572// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaselineForPatchGroup
9573func (c *SSM) GetPatchBaselineForPatchGroupRequest(input *GetPatchBaselineForPatchGroupInput) (req *request.Request, output *GetPatchBaselineForPatchGroupOutput) {
9574	op := &request.Operation{
9575		Name:       opGetPatchBaselineForPatchGroup,
9576		HTTPMethod: "POST",
9577		HTTPPath:   "/",
9578	}
9579
9580	if input == nil {
9581		input = &GetPatchBaselineForPatchGroupInput{}
9582	}
9583
9584	output = &GetPatchBaselineForPatchGroupOutput{}
9585	req = c.newRequest(op, input, output)
9586	return
9587}
9588
9589// GetPatchBaselineForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
9590//
9591// Retrieves the patch baseline that should be used for the specified patch
9592// group.
9593//
9594// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9595// with awserr.Error's Code and Message methods to get detailed information about
9596// the error.
9597//
9598// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9599// API operation GetPatchBaselineForPatchGroup for usage and error information.
9600//
9601// Returned Error Types:
9602//   * InternalServerError
9603//   An error occurred on the server side.
9604//
9605// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetPatchBaselineForPatchGroup
9606func (c *SSM) GetPatchBaselineForPatchGroup(input *GetPatchBaselineForPatchGroupInput) (*GetPatchBaselineForPatchGroupOutput, error) {
9607	req, out := c.GetPatchBaselineForPatchGroupRequest(input)
9608	return out, req.Send()
9609}
9610
9611// GetPatchBaselineForPatchGroupWithContext is the same as GetPatchBaselineForPatchGroup with the addition of
9612// the ability to pass a context and additional request options.
9613//
9614// See GetPatchBaselineForPatchGroup for details on how to use this API operation.
9615//
9616// The context must be non-nil and will be used for request cancellation. If
9617// the context is nil a panic will occur. In the future the SDK may create
9618// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9619// for more information on using Contexts.
9620func (c *SSM) GetPatchBaselineForPatchGroupWithContext(ctx aws.Context, input *GetPatchBaselineForPatchGroupInput, opts ...request.Option) (*GetPatchBaselineForPatchGroupOutput, error) {
9621	req, out := c.GetPatchBaselineForPatchGroupRequest(input)
9622	req.SetContext(ctx)
9623	req.ApplyOptions(opts...)
9624	return out, req.Send()
9625}
9626
9627const opGetServiceSetting = "GetServiceSetting"
9628
9629// GetServiceSettingRequest generates a "aws/request.Request" representing the
9630// client's request for the GetServiceSetting operation. The "output" return
9631// value will be populated with the request's response once the request completes
9632// successfully.
9633//
9634// Use "Send" method on the returned Request to send the API call to the service.
9635// the "output" return value is not valid until after Send returns without error.
9636//
9637// See GetServiceSetting for more information on using the GetServiceSetting
9638// API call, and error handling.
9639//
9640// This method is useful when you want to inject custom logic or configuration
9641// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9642//
9643//
9644//    // Example sending a request using the GetServiceSettingRequest method.
9645//    req, resp := client.GetServiceSettingRequest(params)
9646//
9647//    err := req.Send()
9648//    if err == nil { // resp is now filled
9649//        fmt.Println(resp)
9650//    }
9651//
9652// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetServiceSetting
9653func (c *SSM) GetServiceSettingRequest(input *GetServiceSettingInput) (req *request.Request, output *GetServiceSettingOutput) {
9654	op := &request.Operation{
9655		Name:       opGetServiceSetting,
9656		HTTPMethod: "POST",
9657		HTTPPath:   "/",
9658	}
9659
9660	if input == nil {
9661		input = &GetServiceSettingInput{}
9662	}
9663
9664	output = &GetServiceSettingOutput{}
9665	req = c.newRequest(op, input, output)
9666	return
9667}
9668
9669// GetServiceSetting API operation for Amazon Simple Systems Manager (SSM).
9670//
9671// ServiceSetting is an account-level setting for an Amazon Web Services service.
9672// This setting defines how a user interacts with or uses a service or a feature
9673// of a service. For example, if an Amazon Web Services service charges money
9674// to the account based on feature or service usage, then the Amazon Web Services
9675// service team might create a default setting of false. This means the user
9676// can't use this feature unless they change the setting to true and intentionally
9677// opt in for a paid feature.
9678//
9679// Services map a SettingId object to a setting value. Amazon Web Services services
9680// teams define the default value for a SettingId. You can't create a new SettingId,
9681// but you can overwrite the default value if you have the ssm:UpdateServiceSetting
9682// permission for the setting. Use the UpdateServiceSetting API operation to
9683// change the default setting. Or use the ResetServiceSetting to change the
9684// value back to the original value defined by the Amazon Web Services service
9685// team.
9686//
9687// Query the current service setting for the Amazon Web Services account.
9688//
9689// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9690// with awserr.Error's Code and Message methods to get detailed information about
9691// the error.
9692//
9693// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9694// API operation GetServiceSetting for usage and error information.
9695//
9696// Returned Error Types:
9697//   * InternalServerError
9698//   An error occurred on the server side.
9699//
9700//   * ServiceSettingNotFound
9701//   The specified service setting wasn't found. Either the service name or the
9702//   setting hasn't been provisioned by the Amazon Web Services service team.
9703//
9704// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetServiceSetting
9705func (c *SSM) GetServiceSetting(input *GetServiceSettingInput) (*GetServiceSettingOutput, error) {
9706	req, out := c.GetServiceSettingRequest(input)
9707	return out, req.Send()
9708}
9709
9710// GetServiceSettingWithContext is the same as GetServiceSetting with the addition of
9711// the ability to pass a context and additional request options.
9712//
9713// See GetServiceSetting for details on how to use this API operation.
9714//
9715// The context must be non-nil and will be used for request cancellation. If
9716// the context is nil a panic will occur. In the future the SDK may create
9717// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9718// for more information on using Contexts.
9719func (c *SSM) GetServiceSettingWithContext(ctx aws.Context, input *GetServiceSettingInput, opts ...request.Option) (*GetServiceSettingOutput, error) {
9720	req, out := c.GetServiceSettingRequest(input)
9721	req.SetContext(ctx)
9722	req.ApplyOptions(opts...)
9723	return out, req.Send()
9724}
9725
9726const opLabelParameterVersion = "LabelParameterVersion"
9727
9728// LabelParameterVersionRequest generates a "aws/request.Request" representing the
9729// client's request for the LabelParameterVersion operation. The "output" return
9730// value will be populated with the request's response once the request completes
9731// successfully.
9732//
9733// Use "Send" method on the returned Request to send the API call to the service.
9734// the "output" return value is not valid until after Send returns without error.
9735//
9736// See LabelParameterVersion for more information on using the LabelParameterVersion
9737// API call, and error handling.
9738//
9739// This method is useful when you want to inject custom logic or configuration
9740// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9741//
9742//
9743//    // Example sending a request using the LabelParameterVersionRequest method.
9744//    req, resp := client.LabelParameterVersionRequest(params)
9745//
9746//    err := req.Send()
9747//    if err == nil { // resp is now filled
9748//        fmt.Println(resp)
9749//    }
9750//
9751// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/LabelParameterVersion
9752func (c *SSM) LabelParameterVersionRequest(input *LabelParameterVersionInput) (req *request.Request, output *LabelParameterVersionOutput) {
9753	op := &request.Operation{
9754		Name:       opLabelParameterVersion,
9755		HTTPMethod: "POST",
9756		HTTPPath:   "/",
9757	}
9758
9759	if input == nil {
9760		input = &LabelParameterVersionInput{}
9761	}
9762
9763	output = &LabelParameterVersionOutput{}
9764	req = c.newRequest(op, input, output)
9765	return
9766}
9767
9768// LabelParameterVersion API operation for Amazon Simple Systems Manager (SSM).
9769//
9770// A parameter label is a user-defined alias to help you manage different versions
9771// of a parameter. When you modify a parameter, Amazon Web Services Systems
9772// Manager automatically saves a new version and increments the version number
9773// by one. A label can help you remember the purpose of a parameter when there
9774// are multiple versions.
9775//
9776// Parameter labels have the following requirements and restrictions.
9777//
9778//    * A version of a parameter can have a maximum of 10 labels.
9779//
9780//    * You can't attach the same label to different versions of the same parameter.
9781//    For example, if version 1 has the label Production, then you can't attach
9782//    Production to version 2.
9783//
9784//    * You can move a label from one version of a parameter to another.
9785//
9786//    * You can't create a label when you create a new parameter. You must attach
9787//    a label to a specific version of a parameter.
9788//
9789//    * If you no longer want to use a parameter label, then you can either
9790//    delete it or move it to a different version of a parameter.
9791//
9792//    * A label can have a maximum of 100 characters.
9793//
9794//    * Labels can contain letters (case sensitive), numbers, periods (.), hyphens
9795//    (-), or underscores (_).
9796//
9797//    * Labels can't begin with a number, "aws" or "ssm" (not case sensitive).
9798//    If a label fails to meet these requirements, then the label isn't associated
9799//    with a parameter and the system displays it in the list of InvalidLabels.
9800//
9801// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9802// with awserr.Error's Code and Message methods to get detailed information about
9803// the error.
9804//
9805// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9806// API operation LabelParameterVersion for usage and error information.
9807//
9808// Returned Error Types:
9809//   * InternalServerError
9810//   An error occurred on the server side.
9811//
9812//   * TooManyUpdates
9813//   There are concurrent updates for a resource that supports one update at a
9814//   time.
9815//
9816//   * ParameterNotFound
9817//   The parameter couldn't be found. Verify the name and try again.
9818//
9819//   * ParameterVersionNotFound
9820//   The specified parameter version wasn't found. Verify the parameter name and
9821//   version, and try again.
9822//
9823//   * ParameterVersionLabelLimitExceeded
9824//   A parameter version can have a maximum of ten labels.
9825//
9826// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/LabelParameterVersion
9827func (c *SSM) LabelParameterVersion(input *LabelParameterVersionInput) (*LabelParameterVersionOutput, error) {
9828	req, out := c.LabelParameterVersionRequest(input)
9829	return out, req.Send()
9830}
9831
9832// LabelParameterVersionWithContext is the same as LabelParameterVersion with the addition of
9833// the ability to pass a context and additional request options.
9834//
9835// See LabelParameterVersion for details on how to use this API operation.
9836//
9837// The context must be non-nil and will be used for request cancellation. If
9838// the context is nil a panic will occur. In the future the SDK may create
9839// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9840// for more information on using Contexts.
9841func (c *SSM) LabelParameterVersionWithContext(ctx aws.Context, input *LabelParameterVersionInput, opts ...request.Option) (*LabelParameterVersionOutput, error) {
9842	req, out := c.LabelParameterVersionRequest(input)
9843	req.SetContext(ctx)
9844	req.ApplyOptions(opts...)
9845	return out, req.Send()
9846}
9847
9848const opListAssociationVersions = "ListAssociationVersions"
9849
9850// ListAssociationVersionsRequest generates a "aws/request.Request" representing the
9851// client's request for the ListAssociationVersions operation. The "output" return
9852// value will be populated with the request's response once the request completes
9853// successfully.
9854//
9855// Use "Send" method on the returned Request to send the API call to the service.
9856// the "output" return value is not valid until after Send returns without error.
9857//
9858// See ListAssociationVersions for more information on using the ListAssociationVersions
9859// API call, and error handling.
9860//
9861// This method is useful when you want to inject custom logic or configuration
9862// into the SDK's request lifecycle. Such as custom headers, or retry logic.
9863//
9864//
9865//    // Example sending a request using the ListAssociationVersionsRequest method.
9866//    req, resp := client.ListAssociationVersionsRequest(params)
9867//
9868//    err := req.Send()
9869//    if err == nil { // resp is now filled
9870//        fmt.Println(resp)
9871//    }
9872//
9873// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociationVersions
9874func (c *SSM) ListAssociationVersionsRequest(input *ListAssociationVersionsInput) (req *request.Request, output *ListAssociationVersionsOutput) {
9875	op := &request.Operation{
9876		Name:       opListAssociationVersions,
9877		HTTPMethod: "POST",
9878		HTTPPath:   "/",
9879		Paginator: &request.Paginator{
9880			InputTokens:     []string{"NextToken"},
9881			OutputTokens:    []string{"NextToken"},
9882			LimitToken:      "MaxResults",
9883			TruncationToken: "",
9884		},
9885	}
9886
9887	if input == nil {
9888		input = &ListAssociationVersionsInput{}
9889	}
9890
9891	output = &ListAssociationVersionsOutput{}
9892	req = c.newRequest(op, input, output)
9893	return
9894}
9895
9896// ListAssociationVersions API operation for Amazon Simple Systems Manager (SSM).
9897//
9898// Retrieves all versions of an association for a specific association ID.
9899//
9900// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
9901// with awserr.Error's Code and Message methods to get detailed information about
9902// the error.
9903//
9904// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
9905// API operation ListAssociationVersions for usage and error information.
9906//
9907// Returned Error Types:
9908//   * InternalServerError
9909//   An error occurred on the server side.
9910//
9911//   * InvalidNextToken
9912//   The specified token isn't valid.
9913//
9914//   * AssociationDoesNotExist
9915//   The specified association doesn't exist.
9916//
9917// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociationVersions
9918func (c *SSM) ListAssociationVersions(input *ListAssociationVersionsInput) (*ListAssociationVersionsOutput, error) {
9919	req, out := c.ListAssociationVersionsRequest(input)
9920	return out, req.Send()
9921}
9922
9923// ListAssociationVersionsWithContext is the same as ListAssociationVersions with the addition of
9924// the ability to pass a context and additional request options.
9925//
9926// See ListAssociationVersions for details on how to use this API operation.
9927//
9928// The context must be non-nil and will be used for request cancellation. If
9929// the context is nil a panic will occur. In the future the SDK may create
9930// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9931// for more information on using Contexts.
9932func (c *SSM) ListAssociationVersionsWithContext(ctx aws.Context, input *ListAssociationVersionsInput, opts ...request.Option) (*ListAssociationVersionsOutput, error) {
9933	req, out := c.ListAssociationVersionsRequest(input)
9934	req.SetContext(ctx)
9935	req.ApplyOptions(opts...)
9936	return out, req.Send()
9937}
9938
9939// ListAssociationVersionsPages iterates over the pages of a ListAssociationVersions operation,
9940// calling the "fn" function with the response data for each page. To stop
9941// iterating, return false from the fn function.
9942//
9943// See ListAssociationVersions method for more information on how to use this operation.
9944//
9945// Note: This operation can generate multiple requests to a service.
9946//
9947//    // Example iterating over at most 3 pages of a ListAssociationVersions operation.
9948//    pageNum := 0
9949//    err := client.ListAssociationVersionsPages(params,
9950//        func(page *ssm.ListAssociationVersionsOutput, lastPage bool) bool {
9951//            pageNum++
9952//            fmt.Println(page)
9953//            return pageNum <= 3
9954//        })
9955//
9956func (c *SSM) ListAssociationVersionsPages(input *ListAssociationVersionsInput, fn func(*ListAssociationVersionsOutput, bool) bool) error {
9957	return c.ListAssociationVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
9958}
9959
9960// ListAssociationVersionsPagesWithContext same as ListAssociationVersionsPages except
9961// it takes a Context and allows setting request options on the pages.
9962//
9963// The context must be non-nil and will be used for request cancellation. If
9964// the context is nil a panic will occur. In the future the SDK may create
9965// sub-contexts for http.Requests. See https://golang.org/pkg/context/
9966// for more information on using Contexts.
9967func (c *SSM) ListAssociationVersionsPagesWithContext(ctx aws.Context, input *ListAssociationVersionsInput, fn func(*ListAssociationVersionsOutput, bool) bool, opts ...request.Option) error {
9968	p := request.Pagination{
9969		NewRequest: func() (*request.Request, error) {
9970			var inCpy *ListAssociationVersionsInput
9971			if input != nil {
9972				tmp := *input
9973				inCpy = &tmp
9974			}
9975			req, _ := c.ListAssociationVersionsRequest(inCpy)
9976			req.SetContext(ctx)
9977			req.ApplyOptions(opts...)
9978			return req, nil
9979		},
9980	}
9981
9982	for p.Next() {
9983		if !fn(p.Page().(*ListAssociationVersionsOutput), !p.HasNextPage()) {
9984			break
9985		}
9986	}
9987
9988	return p.Err()
9989}
9990
9991const opListAssociations = "ListAssociations"
9992
9993// ListAssociationsRequest generates a "aws/request.Request" representing the
9994// client's request for the ListAssociations operation. The "output" return
9995// value will be populated with the request's response once the request completes
9996// successfully.
9997//
9998// Use "Send" method on the returned Request to send the API call to the service.
9999// the "output" return value is not valid until after Send returns without error.
10000//
10001// See ListAssociations for more information on using the ListAssociations
10002// API call, and error handling.
10003//
10004// This method is useful when you want to inject custom logic or configuration
10005// into the SDK's request lifecycle. Such as custom headers, or retry logic.
10006//
10007//
10008//    // Example sending a request using the ListAssociationsRequest method.
10009//    req, resp := client.ListAssociationsRequest(params)
10010//
10011//    err := req.Send()
10012//    if err == nil { // resp is now filled
10013//        fmt.Println(resp)
10014//    }
10015//
10016// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociations
10017func (c *SSM) ListAssociationsRequest(input *ListAssociationsInput) (req *request.Request, output *ListAssociationsOutput) {
10018	op := &request.Operation{
10019		Name:       opListAssociations,
10020		HTTPMethod: "POST",
10021		HTTPPath:   "/",
10022		Paginator: &request.Paginator{
10023			InputTokens:     []string{"NextToken"},
10024			OutputTokens:    []string{"NextToken"},
10025			LimitToken:      "MaxResults",
10026			TruncationToken: "",
10027		},
10028	}
10029
10030	if input == nil {
10031		input = &ListAssociationsInput{}
10032	}
10033
10034	output = &ListAssociationsOutput{}
10035	req = c.newRequest(op, input, output)
10036	return
10037}
10038
10039// ListAssociations API operation for Amazon Simple Systems Manager (SSM).
10040//
10041// Returns all State Manager associations in the current Amazon Web Services
10042// account and Amazon Web Services Region. You can limit the results to a specific
10043// State Manager association document or instance by specifying a filter. State
10044// Manager is a capability of Amazon Web Services Systems Manager.
10045//
10046// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
10047// with awserr.Error's Code and Message methods to get detailed information about
10048// the error.
10049//
10050// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
10051// API operation ListAssociations for usage and error information.
10052//
10053// Returned Error Types:
10054//   * InternalServerError
10055//   An error occurred on the server side.
10056//
10057//   * InvalidNextToken
10058//   The specified token isn't valid.
10059//
10060// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListAssociations
10061func (c *SSM) ListAssociations(input *ListAssociationsInput) (*ListAssociationsOutput, error) {
10062	req, out := c.ListAssociationsRequest(input)
10063	return out, req.Send()
10064}
10065
10066// ListAssociationsWithContext is the same as ListAssociations with the addition of
10067// the ability to pass a context and additional request options.
10068//
10069// See ListAssociations for details on how to use this API operation.
10070//
10071// The context must be non-nil and will be used for request cancellation. If
10072// the context is nil a panic will occur. In the future the SDK may create
10073// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10074// for more information on using Contexts.
10075func (c *SSM) ListAssociationsWithContext(ctx aws.Context, input *ListAssociationsInput, opts ...request.Option) (*ListAssociationsOutput, error) {
10076	req, out := c.ListAssociationsRequest(input)
10077	req.SetContext(ctx)
10078	req.ApplyOptions(opts...)
10079	return out, req.Send()
10080}
10081
10082// ListAssociationsPages iterates over the pages of a ListAssociations operation,
10083// calling the "fn" function with the response data for each page. To stop
10084// iterating, return false from the fn function.
10085//
10086// See ListAssociations method for more information on how to use this operation.
10087//
10088// Note: This operation can generate multiple requests to a service.
10089//
10090//    // Example iterating over at most 3 pages of a ListAssociations operation.
10091//    pageNum := 0
10092//    err := client.ListAssociationsPages(params,
10093//        func(page *ssm.ListAssociationsOutput, lastPage bool) bool {
10094//            pageNum++
10095//            fmt.Println(page)
10096//            return pageNum <= 3
10097//        })
10098//
10099func (c *SSM) ListAssociationsPages(input *ListAssociationsInput, fn func(*ListAssociationsOutput, bool) bool) error {
10100	return c.ListAssociationsPagesWithContext(aws.BackgroundContext(), input, fn)
10101}
10102
10103// ListAssociationsPagesWithContext same as ListAssociationsPages except
10104// it takes a Context and allows setting request options on the pages.
10105//
10106// The context must be non-nil and will be used for request cancellation. If
10107// the context is nil a panic will occur. In the future the SDK may create
10108// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10109// for more information on using Contexts.
10110func (c *SSM) ListAssociationsPagesWithContext(ctx aws.Context, input *ListAssociationsInput, fn func(*ListAssociationsOutput, bool) bool, opts ...request.Option) error {
10111	p := request.Pagination{
10112		NewRequest: func() (*request.Request, error) {
10113			var inCpy *ListAssociationsInput
10114			if input != nil {
10115				tmp := *input
10116				inCpy = &tmp
10117			}
10118			req, _ := c.ListAssociationsRequest(inCpy)
10119			req.SetContext(ctx)
10120			req.ApplyOptions(opts...)
10121			return req, nil
10122		},
10123	}
10124
10125	for p.Next() {
10126		if !fn(p.Page().(*ListAssociationsOutput), !p.HasNextPage()) {
10127			break
10128		}
10129	}
10130
10131	return p.Err()
10132}
10133
10134const opListCommandInvocations = "ListCommandInvocations"
10135
10136// ListCommandInvocationsRequest generates a "aws/request.Request" representing the
10137// client's request for the ListCommandInvocations operation. The "output" return
10138// value will be populated with the request's response once the request completes
10139// successfully.
10140//
10141// Use "Send" method on the returned Request to send the API call to the service.
10142// the "output" return value is not valid until after Send returns without error.
10143//
10144// See ListCommandInvocations for more information on using the ListCommandInvocations
10145// API call, and error handling.
10146//
10147// This method is useful when you want to inject custom logic or configuration
10148// into the SDK's request lifecycle. Such as custom headers, or retry logic.
10149//
10150//
10151//    // Example sending a request using the ListCommandInvocationsRequest method.
10152//    req, resp := client.ListCommandInvocationsRequest(params)
10153//
10154//    err := req.Send()
10155//    if err == nil { // resp is now filled
10156//        fmt.Println(resp)
10157//    }
10158//
10159// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommandInvocations
10160func (c *SSM) ListCommandInvocationsRequest(input *ListCommandInvocationsInput) (req *request.Request, output *ListCommandInvocationsOutput) {
10161	op := &request.Operation{
10162		Name:       opListCommandInvocations,
10163		HTTPMethod: "POST",
10164		HTTPPath:   "/",
10165		Paginator: &request.Paginator{
10166			InputTokens:     []string{"NextToken"},
10167			OutputTokens:    []string{"NextToken"},
10168			LimitToken:      "MaxResults",
10169			TruncationToken: "",
10170		},
10171	}
10172
10173	if input == nil {
10174		input = &ListCommandInvocationsInput{}
10175	}
10176
10177	output = &ListCommandInvocationsOutput{}
10178	req = c.newRequest(op, input, output)
10179	return
10180}
10181
10182// ListCommandInvocations API operation for Amazon Simple Systems Manager (SSM).
10183//
10184// An invocation is copy of a command sent to a specific instance. A command
10185// can apply to one or more instances. A command invocation applies to one instance.
10186// For example, if a user runs SendCommand against three instances, then a command
10187// invocation is created for each requested instance ID. ListCommandInvocations
10188// provide status about command execution.
10189//
10190// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
10191// with awserr.Error's Code and Message methods to get detailed information about
10192// the error.
10193//
10194// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
10195// API operation ListCommandInvocations for usage and error information.
10196//
10197// Returned Error Types:
10198//   * InternalServerError
10199//   An error occurred on the server side.
10200//
10201//   * InvalidCommandId
10202//   The specified command ID isn't valid. Verify the ID and try again.
10203//
10204//   * InvalidInstanceId
10205//   The following problems can cause this exception:
10206//
10207//      * You don't have permission to access the instance.
10208//
10209//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
10210//      Verify that SSM Agent is running.
10211//
10212//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
10213//      Agent.
10214//
10215//      * The instance isn't in valid state. Valid states are: Running, Pending,
10216//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
10217//
10218//   * InvalidFilterKey
10219//   The specified key isn't valid.
10220//
10221//   * InvalidNextToken
10222//   The specified token isn't valid.
10223//
10224// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommandInvocations
10225func (c *SSM) ListCommandInvocations(input *ListCommandInvocationsInput) (*ListCommandInvocationsOutput, error) {
10226	req, out := c.ListCommandInvocationsRequest(input)
10227	return out, req.Send()
10228}
10229
10230// ListCommandInvocationsWithContext is the same as ListCommandInvocations with the addition of
10231// the ability to pass a context and additional request options.
10232//
10233// See ListCommandInvocations for details on how to use this API operation.
10234//
10235// The context must be non-nil and will be used for request cancellation. If
10236// the context is nil a panic will occur. In the future the SDK may create
10237// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10238// for more information on using Contexts.
10239func (c *SSM) ListCommandInvocationsWithContext(ctx aws.Context, input *ListCommandInvocationsInput, opts ...request.Option) (*ListCommandInvocationsOutput, error) {
10240	req, out := c.ListCommandInvocationsRequest(input)
10241	req.SetContext(ctx)
10242	req.ApplyOptions(opts...)
10243	return out, req.Send()
10244}
10245
10246// ListCommandInvocationsPages iterates over the pages of a ListCommandInvocations operation,
10247// calling the "fn" function with the response data for each page. To stop
10248// iterating, return false from the fn function.
10249//
10250// See ListCommandInvocations method for more information on how to use this operation.
10251//
10252// Note: This operation can generate multiple requests to a service.
10253//
10254//    // Example iterating over at most 3 pages of a ListCommandInvocations operation.
10255//    pageNum := 0
10256//    err := client.ListCommandInvocationsPages(params,
10257//        func(page *ssm.ListCommandInvocationsOutput, lastPage bool) bool {
10258//            pageNum++
10259//            fmt.Println(page)
10260//            return pageNum <= 3
10261//        })
10262//
10263func (c *SSM) ListCommandInvocationsPages(input *ListCommandInvocationsInput, fn func(*ListCommandInvocationsOutput, bool) bool) error {
10264	return c.ListCommandInvocationsPagesWithContext(aws.BackgroundContext(), input, fn)
10265}
10266
10267// ListCommandInvocationsPagesWithContext same as ListCommandInvocationsPages except
10268// it takes a Context and allows setting request options on the pages.
10269//
10270// The context must be non-nil and will be used for request cancellation. If
10271// the context is nil a panic will occur. In the future the SDK may create
10272// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10273// for more information on using Contexts.
10274func (c *SSM) ListCommandInvocationsPagesWithContext(ctx aws.Context, input *ListCommandInvocationsInput, fn func(*ListCommandInvocationsOutput, bool) bool, opts ...request.Option) error {
10275	p := request.Pagination{
10276		NewRequest: func() (*request.Request, error) {
10277			var inCpy *ListCommandInvocationsInput
10278			if input != nil {
10279				tmp := *input
10280				inCpy = &tmp
10281			}
10282			req, _ := c.ListCommandInvocationsRequest(inCpy)
10283			req.SetContext(ctx)
10284			req.ApplyOptions(opts...)
10285			return req, nil
10286		},
10287	}
10288
10289	for p.Next() {
10290		if !fn(p.Page().(*ListCommandInvocationsOutput), !p.HasNextPage()) {
10291			break
10292		}
10293	}
10294
10295	return p.Err()
10296}
10297
10298const opListCommands = "ListCommands"
10299
10300// ListCommandsRequest generates a "aws/request.Request" representing the
10301// client's request for the ListCommands operation. The "output" return
10302// value will be populated with the request's response once the request completes
10303// successfully.
10304//
10305// Use "Send" method on the returned Request to send the API call to the service.
10306// the "output" return value is not valid until after Send returns without error.
10307//
10308// See ListCommands for more information on using the ListCommands
10309// API call, and error handling.
10310//
10311// This method is useful when you want to inject custom logic or configuration
10312// into the SDK's request lifecycle. Such as custom headers, or retry logic.
10313//
10314//
10315//    // Example sending a request using the ListCommandsRequest method.
10316//    req, resp := client.ListCommandsRequest(params)
10317//
10318//    err := req.Send()
10319//    if err == nil { // resp is now filled
10320//        fmt.Println(resp)
10321//    }
10322//
10323// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommands
10324func (c *SSM) ListCommandsRequest(input *ListCommandsInput) (req *request.Request, output *ListCommandsOutput) {
10325	op := &request.Operation{
10326		Name:       opListCommands,
10327		HTTPMethod: "POST",
10328		HTTPPath:   "/",
10329		Paginator: &request.Paginator{
10330			InputTokens:     []string{"NextToken"},
10331			OutputTokens:    []string{"NextToken"},
10332			LimitToken:      "MaxResults",
10333			TruncationToken: "",
10334		},
10335	}
10336
10337	if input == nil {
10338		input = &ListCommandsInput{}
10339	}
10340
10341	output = &ListCommandsOutput{}
10342	req = c.newRequest(op, input, output)
10343	return
10344}
10345
10346// ListCommands API operation for Amazon Simple Systems Manager (SSM).
10347//
10348// Lists the commands requested by users of the Amazon Web Services account.
10349//
10350// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
10351// with awserr.Error's Code and Message methods to get detailed information about
10352// the error.
10353//
10354// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
10355// API operation ListCommands for usage and error information.
10356//
10357// Returned Error Types:
10358//   * InternalServerError
10359//   An error occurred on the server side.
10360//
10361//   * InvalidCommandId
10362//   The specified command ID isn't valid. Verify the ID and try again.
10363//
10364//   * InvalidInstanceId
10365//   The following problems can cause this exception:
10366//
10367//      * You don't have permission to access the instance.
10368//
10369//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
10370//      Verify that SSM Agent is running.
10371//
10372//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
10373//      Agent.
10374//
10375//      * The instance isn't in valid state. Valid states are: Running, Pending,
10376//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
10377//
10378//   * InvalidFilterKey
10379//   The specified key isn't valid.
10380//
10381//   * InvalidNextToken
10382//   The specified token isn't valid.
10383//
10384// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListCommands
10385func (c *SSM) ListCommands(input *ListCommandsInput) (*ListCommandsOutput, error) {
10386	req, out := c.ListCommandsRequest(input)
10387	return out, req.Send()
10388}
10389
10390// ListCommandsWithContext is the same as ListCommands with the addition of
10391// the ability to pass a context and additional request options.
10392//
10393// See ListCommands for details on how to use this API operation.
10394//
10395// The context must be non-nil and will be used for request cancellation. If
10396// the context is nil a panic will occur. In the future the SDK may create
10397// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10398// for more information on using Contexts.
10399func (c *SSM) ListCommandsWithContext(ctx aws.Context, input *ListCommandsInput, opts ...request.Option) (*ListCommandsOutput, error) {
10400	req, out := c.ListCommandsRequest(input)
10401	req.SetContext(ctx)
10402	req.ApplyOptions(opts...)
10403	return out, req.Send()
10404}
10405
10406// ListCommandsPages iterates over the pages of a ListCommands operation,
10407// calling the "fn" function with the response data for each page. To stop
10408// iterating, return false from the fn function.
10409//
10410// See ListCommands method for more information on how to use this operation.
10411//
10412// Note: This operation can generate multiple requests to a service.
10413//
10414//    // Example iterating over at most 3 pages of a ListCommands operation.
10415//    pageNum := 0
10416//    err := client.ListCommandsPages(params,
10417//        func(page *ssm.ListCommandsOutput, lastPage bool) bool {
10418//            pageNum++
10419//            fmt.Println(page)
10420//            return pageNum <= 3
10421//        })
10422//
10423func (c *SSM) ListCommandsPages(input *ListCommandsInput, fn func(*ListCommandsOutput, bool) bool) error {
10424	return c.ListCommandsPagesWithContext(aws.BackgroundContext(), input, fn)
10425}
10426
10427// ListCommandsPagesWithContext same as ListCommandsPages except
10428// it takes a Context and allows setting request options on the pages.
10429//
10430// The context must be non-nil and will be used for request cancellation. If
10431// the context is nil a panic will occur. In the future the SDK may create
10432// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10433// for more information on using Contexts.
10434func (c *SSM) ListCommandsPagesWithContext(ctx aws.Context, input *ListCommandsInput, fn func(*ListCommandsOutput, bool) bool, opts ...request.Option) error {
10435	p := request.Pagination{
10436		NewRequest: func() (*request.Request, error) {
10437			var inCpy *ListCommandsInput
10438			if input != nil {
10439				tmp := *input
10440				inCpy = &tmp
10441			}
10442			req, _ := c.ListCommandsRequest(inCpy)
10443			req.SetContext(ctx)
10444			req.ApplyOptions(opts...)
10445			return req, nil
10446		},
10447	}
10448
10449	for p.Next() {
10450		if !fn(p.Page().(*ListCommandsOutput), !p.HasNextPage()) {
10451			break
10452		}
10453	}
10454
10455	return p.Err()
10456}
10457
10458const opListComplianceItems = "ListComplianceItems"
10459
10460// ListComplianceItemsRequest generates a "aws/request.Request" representing the
10461// client's request for the ListComplianceItems operation. The "output" return
10462// value will be populated with the request's response once the request completes
10463// successfully.
10464//
10465// Use "Send" method on the returned Request to send the API call to the service.
10466// the "output" return value is not valid until after Send returns without error.
10467//
10468// See ListComplianceItems for more information on using the ListComplianceItems
10469// API call, and error handling.
10470//
10471// This method is useful when you want to inject custom logic or configuration
10472// into the SDK's request lifecycle. Such as custom headers, or retry logic.
10473//
10474//
10475//    // Example sending a request using the ListComplianceItemsRequest method.
10476//    req, resp := client.ListComplianceItemsRequest(params)
10477//
10478//    err := req.Send()
10479//    if err == nil { // resp is now filled
10480//        fmt.Println(resp)
10481//    }
10482//
10483// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceItems
10484func (c *SSM) ListComplianceItemsRequest(input *ListComplianceItemsInput) (req *request.Request, output *ListComplianceItemsOutput) {
10485	op := &request.Operation{
10486		Name:       opListComplianceItems,
10487		HTTPMethod: "POST",
10488		HTTPPath:   "/",
10489		Paginator: &request.Paginator{
10490			InputTokens:     []string{"NextToken"},
10491			OutputTokens:    []string{"NextToken"},
10492			LimitToken:      "MaxResults",
10493			TruncationToken: "",
10494		},
10495	}
10496
10497	if input == nil {
10498		input = &ListComplianceItemsInput{}
10499	}
10500
10501	output = &ListComplianceItemsOutput{}
10502	req = c.newRequest(op, input, output)
10503	return
10504}
10505
10506// ListComplianceItems API operation for Amazon Simple Systems Manager (SSM).
10507//
10508// For a specified resource ID, this API operation returns a list of compliance
10509// statuses for different resource types. Currently, you can only specify one
10510// resource ID per call. List results depend on the criteria specified in the
10511// filter.
10512//
10513// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
10514// with awserr.Error's Code and Message methods to get detailed information about
10515// the error.
10516//
10517// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
10518// API operation ListComplianceItems for usage and error information.
10519//
10520// Returned Error Types:
10521//   * InvalidResourceType
10522//   The resource type isn't valid. For example, if you are attempting to tag
10523//   an instance, the instance must be a registered, managed instance.
10524//
10525//   * InvalidResourceId
10526//   The resource ID isn't valid. Verify that you entered the correct ID and try
10527//   again.
10528//
10529//   * InternalServerError
10530//   An error occurred on the server side.
10531//
10532//   * InvalidFilter
10533//   The filter name isn't valid. Verify the you entered the correct name and
10534//   try again.
10535//
10536//   * InvalidNextToken
10537//   The specified token isn't valid.
10538//
10539// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceItems
10540func (c *SSM) ListComplianceItems(input *ListComplianceItemsInput) (*ListComplianceItemsOutput, error) {
10541	req, out := c.ListComplianceItemsRequest(input)
10542	return out, req.Send()
10543}
10544
10545// ListComplianceItemsWithContext is the same as ListComplianceItems with the addition of
10546// the ability to pass a context and additional request options.
10547//
10548// See ListComplianceItems for details on how to use this API operation.
10549//
10550// The context must be non-nil and will be used for request cancellation. If
10551// the context is nil a panic will occur. In the future the SDK may create
10552// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10553// for more information on using Contexts.
10554func (c *SSM) ListComplianceItemsWithContext(ctx aws.Context, input *ListComplianceItemsInput, opts ...request.Option) (*ListComplianceItemsOutput, error) {
10555	req, out := c.ListComplianceItemsRequest(input)
10556	req.SetContext(ctx)
10557	req.ApplyOptions(opts...)
10558	return out, req.Send()
10559}
10560
10561// ListComplianceItemsPages iterates over the pages of a ListComplianceItems operation,
10562// calling the "fn" function with the response data for each page. To stop
10563// iterating, return false from the fn function.
10564//
10565// See ListComplianceItems method for more information on how to use this operation.
10566//
10567// Note: This operation can generate multiple requests to a service.
10568//
10569//    // Example iterating over at most 3 pages of a ListComplianceItems operation.
10570//    pageNum := 0
10571//    err := client.ListComplianceItemsPages(params,
10572//        func(page *ssm.ListComplianceItemsOutput, lastPage bool) bool {
10573//            pageNum++
10574//            fmt.Println(page)
10575//            return pageNum <= 3
10576//        })
10577//
10578func (c *SSM) ListComplianceItemsPages(input *ListComplianceItemsInput, fn func(*ListComplianceItemsOutput, bool) bool) error {
10579	return c.ListComplianceItemsPagesWithContext(aws.BackgroundContext(), input, fn)
10580}
10581
10582// ListComplianceItemsPagesWithContext same as ListComplianceItemsPages except
10583// it takes a Context and allows setting request options on the pages.
10584//
10585// The context must be non-nil and will be used for request cancellation. If
10586// the context is nil a panic will occur. In the future the SDK may create
10587// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10588// for more information on using Contexts.
10589func (c *SSM) ListComplianceItemsPagesWithContext(ctx aws.Context, input *ListComplianceItemsInput, fn func(*ListComplianceItemsOutput, bool) bool, opts ...request.Option) error {
10590	p := request.Pagination{
10591		NewRequest: func() (*request.Request, error) {
10592			var inCpy *ListComplianceItemsInput
10593			if input != nil {
10594				tmp := *input
10595				inCpy = &tmp
10596			}
10597			req, _ := c.ListComplianceItemsRequest(inCpy)
10598			req.SetContext(ctx)
10599			req.ApplyOptions(opts...)
10600			return req, nil
10601		},
10602	}
10603
10604	for p.Next() {
10605		if !fn(p.Page().(*ListComplianceItemsOutput), !p.HasNextPage()) {
10606			break
10607		}
10608	}
10609
10610	return p.Err()
10611}
10612
10613const opListComplianceSummaries = "ListComplianceSummaries"
10614
10615// ListComplianceSummariesRequest generates a "aws/request.Request" representing the
10616// client's request for the ListComplianceSummaries operation. The "output" return
10617// value will be populated with the request's response once the request completes
10618// successfully.
10619//
10620// Use "Send" method on the returned Request to send the API call to the service.
10621// the "output" return value is not valid until after Send returns without error.
10622//
10623// See ListComplianceSummaries for more information on using the ListComplianceSummaries
10624// API call, and error handling.
10625//
10626// This method is useful when you want to inject custom logic or configuration
10627// into the SDK's request lifecycle. Such as custom headers, or retry logic.
10628//
10629//
10630//    // Example sending a request using the ListComplianceSummariesRequest method.
10631//    req, resp := client.ListComplianceSummariesRequest(params)
10632//
10633//    err := req.Send()
10634//    if err == nil { // resp is now filled
10635//        fmt.Println(resp)
10636//    }
10637//
10638// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceSummaries
10639func (c *SSM) ListComplianceSummariesRequest(input *ListComplianceSummariesInput) (req *request.Request, output *ListComplianceSummariesOutput) {
10640	op := &request.Operation{
10641		Name:       opListComplianceSummaries,
10642		HTTPMethod: "POST",
10643		HTTPPath:   "/",
10644		Paginator: &request.Paginator{
10645			InputTokens:     []string{"NextToken"},
10646			OutputTokens:    []string{"NextToken"},
10647			LimitToken:      "MaxResults",
10648			TruncationToken: "",
10649		},
10650	}
10651
10652	if input == nil {
10653		input = &ListComplianceSummariesInput{}
10654	}
10655
10656	output = &ListComplianceSummariesOutput{}
10657	req = c.newRequest(op, input, output)
10658	return
10659}
10660
10661// ListComplianceSummaries API operation for Amazon Simple Systems Manager (SSM).
10662//
10663// Returns a summary count of compliant and non-compliant resources for a compliance
10664// type. For example, this call can return State Manager associations, patches,
10665// or custom compliance types according to the filter criteria that you specify.
10666//
10667// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
10668// with awserr.Error's Code and Message methods to get detailed information about
10669// the error.
10670//
10671// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
10672// API operation ListComplianceSummaries for usage and error information.
10673//
10674// Returned Error Types:
10675//   * InvalidFilter
10676//   The filter name isn't valid. Verify the you entered the correct name and
10677//   try again.
10678//
10679//   * InvalidNextToken
10680//   The specified token isn't valid.
10681//
10682//   * InternalServerError
10683//   An error occurred on the server side.
10684//
10685// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListComplianceSummaries
10686func (c *SSM) ListComplianceSummaries(input *ListComplianceSummariesInput) (*ListComplianceSummariesOutput, error) {
10687	req, out := c.ListComplianceSummariesRequest(input)
10688	return out, req.Send()
10689}
10690
10691// ListComplianceSummariesWithContext is the same as ListComplianceSummaries with the addition of
10692// the ability to pass a context and additional request options.
10693//
10694// See ListComplianceSummaries for details on how to use this API operation.
10695//
10696// The context must be non-nil and will be used for request cancellation. If
10697// the context is nil a panic will occur. In the future the SDK may create
10698// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10699// for more information on using Contexts.
10700func (c *SSM) ListComplianceSummariesWithContext(ctx aws.Context, input *ListComplianceSummariesInput, opts ...request.Option) (*ListComplianceSummariesOutput, error) {
10701	req, out := c.ListComplianceSummariesRequest(input)
10702	req.SetContext(ctx)
10703	req.ApplyOptions(opts...)
10704	return out, req.Send()
10705}
10706
10707// ListComplianceSummariesPages iterates over the pages of a ListComplianceSummaries operation,
10708// calling the "fn" function with the response data for each page. To stop
10709// iterating, return false from the fn function.
10710//
10711// See ListComplianceSummaries method for more information on how to use this operation.
10712//
10713// Note: This operation can generate multiple requests to a service.
10714//
10715//    // Example iterating over at most 3 pages of a ListComplianceSummaries operation.
10716//    pageNum := 0
10717//    err := client.ListComplianceSummariesPages(params,
10718//        func(page *ssm.ListComplianceSummariesOutput, lastPage bool) bool {
10719//            pageNum++
10720//            fmt.Println(page)
10721//            return pageNum <= 3
10722//        })
10723//
10724func (c *SSM) ListComplianceSummariesPages(input *ListComplianceSummariesInput, fn func(*ListComplianceSummariesOutput, bool) bool) error {
10725	return c.ListComplianceSummariesPagesWithContext(aws.BackgroundContext(), input, fn)
10726}
10727
10728// ListComplianceSummariesPagesWithContext same as ListComplianceSummariesPages except
10729// it takes a Context and allows setting request options on the pages.
10730//
10731// The context must be non-nil and will be used for request cancellation. If
10732// the context is nil a panic will occur. In the future the SDK may create
10733// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10734// for more information on using Contexts.
10735func (c *SSM) ListComplianceSummariesPagesWithContext(ctx aws.Context, input *ListComplianceSummariesInput, fn func(*ListComplianceSummariesOutput, bool) bool, opts ...request.Option) error {
10736	p := request.Pagination{
10737		NewRequest: func() (*request.Request, error) {
10738			var inCpy *ListComplianceSummariesInput
10739			if input != nil {
10740				tmp := *input
10741				inCpy = &tmp
10742			}
10743			req, _ := c.ListComplianceSummariesRequest(inCpy)
10744			req.SetContext(ctx)
10745			req.ApplyOptions(opts...)
10746			return req, nil
10747		},
10748	}
10749
10750	for p.Next() {
10751		if !fn(p.Page().(*ListComplianceSummariesOutput), !p.HasNextPage()) {
10752			break
10753		}
10754	}
10755
10756	return p.Err()
10757}
10758
10759const opListDocumentMetadataHistory = "ListDocumentMetadataHistory"
10760
10761// ListDocumentMetadataHistoryRequest generates a "aws/request.Request" representing the
10762// client's request for the ListDocumentMetadataHistory operation. The "output" return
10763// value will be populated with the request's response once the request completes
10764// successfully.
10765//
10766// Use "Send" method on the returned Request to send the API call to the service.
10767// the "output" return value is not valid until after Send returns without error.
10768//
10769// See ListDocumentMetadataHistory for more information on using the ListDocumentMetadataHistory
10770// API call, and error handling.
10771//
10772// This method is useful when you want to inject custom logic or configuration
10773// into the SDK's request lifecycle. Such as custom headers, or retry logic.
10774//
10775//
10776//    // Example sending a request using the ListDocumentMetadataHistoryRequest method.
10777//    req, resp := client.ListDocumentMetadataHistoryRequest(params)
10778//
10779//    err := req.Send()
10780//    if err == nil { // resp is now filled
10781//        fmt.Println(resp)
10782//    }
10783//
10784// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentMetadataHistory
10785func (c *SSM) ListDocumentMetadataHistoryRequest(input *ListDocumentMetadataHistoryInput) (req *request.Request, output *ListDocumentMetadataHistoryOutput) {
10786	op := &request.Operation{
10787		Name:       opListDocumentMetadataHistory,
10788		HTTPMethod: "POST",
10789		HTTPPath:   "/",
10790	}
10791
10792	if input == nil {
10793		input = &ListDocumentMetadataHistoryInput{}
10794	}
10795
10796	output = &ListDocumentMetadataHistoryOutput{}
10797	req = c.newRequest(op, input, output)
10798	return
10799}
10800
10801// ListDocumentMetadataHistory API operation for Amazon Simple Systems Manager (SSM).
10802//
10803// Information about approval reviews for a version of a change template in
10804// Change Manager.
10805//
10806// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
10807// with awserr.Error's Code and Message methods to get detailed information about
10808// the error.
10809//
10810// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
10811// API operation ListDocumentMetadataHistory for usage and error information.
10812//
10813// Returned Error Types:
10814//   * InternalServerError
10815//   An error occurred on the server side.
10816//
10817//   * InvalidDocument
10818//   The specified SSM document doesn't exist.
10819//
10820//   * InvalidDocumentVersion
10821//   The document version isn't valid or doesn't exist.
10822//
10823//   * InvalidNextToken
10824//   The specified token isn't valid.
10825//
10826// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentMetadataHistory
10827func (c *SSM) ListDocumentMetadataHistory(input *ListDocumentMetadataHistoryInput) (*ListDocumentMetadataHistoryOutput, error) {
10828	req, out := c.ListDocumentMetadataHistoryRequest(input)
10829	return out, req.Send()
10830}
10831
10832// ListDocumentMetadataHistoryWithContext is the same as ListDocumentMetadataHistory with the addition of
10833// the ability to pass a context and additional request options.
10834//
10835// See ListDocumentMetadataHistory for details on how to use this API operation.
10836//
10837// The context must be non-nil and will be used for request cancellation. If
10838// the context is nil a panic will occur. In the future the SDK may create
10839// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10840// for more information on using Contexts.
10841func (c *SSM) ListDocumentMetadataHistoryWithContext(ctx aws.Context, input *ListDocumentMetadataHistoryInput, opts ...request.Option) (*ListDocumentMetadataHistoryOutput, error) {
10842	req, out := c.ListDocumentMetadataHistoryRequest(input)
10843	req.SetContext(ctx)
10844	req.ApplyOptions(opts...)
10845	return out, req.Send()
10846}
10847
10848const opListDocumentVersions = "ListDocumentVersions"
10849
10850// ListDocumentVersionsRequest generates a "aws/request.Request" representing the
10851// client's request for the ListDocumentVersions operation. The "output" return
10852// value will be populated with the request's response once the request completes
10853// successfully.
10854//
10855// Use "Send" method on the returned Request to send the API call to the service.
10856// the "output" return value is not valid until after Send returns without error.
10857//
10858// See ListDocumentVersions for more information on using the ListDocumentVersions
10859// API call, and error handling.
10860//
10861// This method is useful when you want to inject custom logic or configuration
10862// into the SDK's request lifecycle. Such as custom headers, or retry logic.
10863//
10864//
10865//    // Example sending a request using the ListDocumentVersionsRequest method.
10866//    req, resp := client.ListDocumentVersionsRequest(params)
10867//
10868//    err := req.Send()
10869//    if err == nil { // resp is now filled
10870//        fmt.Println(resp)
10871//    }
10872//
10873// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentVersions
10874func (c *SSM) ListDocumentVersionsRequest(input *ListDocumentVersionsInput) (req *request.Request, output *ListDocumentVersionsOutput) {
10875	op := &request.Operation{
10876		Name:       opListDocumentVersions,
10877		HTTPMethod: "POST",
10878		HTTPPath:   "/",
10879		Paginator: &request.Paginator{
10880			InputTokens:     []string{"NextToken"},
10881			OutputTokens:    []string{"NextToken"},
10882			LimitToken:      "MaxResults",
10883			TruncationToken: "",
10884		},
10885	}
10886
10887	if input == nil {
10888		input = &ListDocumentVersionsInput{}
10889	}
10890
10891	output = &ListDocumentVersionsOutput{}
10892	req = c.newRequest(op, input, output)
10893	return
10894}
10895
10896// ListDocumentVersions API operation for Amazon Simple Systems Manager (SSM).
10897//
10898// List all versions for a document.
10899//
10900// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
10901// with awserr.Error's Code and Message methods to get detailed information about
10902// the error.
10903//
10904// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
10905// API operation ListDocumentVersions for usage and error information.
10906//
10907// Returned Error Types:
10908//   * InternalServerError
10909//   An error occurred on the server side.
10910//
10911//   * InvalidNextToken
10912//   The specified token isn't valid.
10913//
10914//   * InvalidDocument
10915//   The specified SSM document doesn't exist.
10916//
10917// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocumentVersions
10918func (c *SSM) ListDocumentVersions(input *ListDocumentVersionsInput) (*ListDocumentVersionsOutput, error) {
10919	req, out := c.ListDocumentVersionsRequest(input)
10920	return out, req.Send()
10921}
10922
10923// ListDocumentVersionsWithContext is the same as ListDocumentVersions with the addition of
10924// the ability to pass a context and additional request options.
10925//
10926// See ListDocumentVersions for details on how to use this API operation.
10927//
10928// The context must be non-nil and will be used for request cancellation. If
10929// the context is nil a panic will occur. In the future the SDK may create
10930// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10931// for more information on using Contexts.
10932func (c *SSM) ListDocumentVersionsWithContext(ctx aws.Context, input *ListDocumentVersionsInput, opts ...request.Option) (*ListDocumentVersionsOutput, error) {
10933	req, out := c.ListDocumentVersionsRequest(input)
10934	req.SetContext(ctx)
10935	req.ApplyOptions(opts...)
10936	return out, req.Send()
10937}
10938
10939// ListDocumentVersionsPages iterates over the pages of a ListDocumentVersions operation,
10940// calling the "fn" function with the response data for each page. To stop
10941// iterating, return false from the fn function.
10942//
10943// See ListDocumentVersions method for more information on how to use this operation.
10944//
10945// Note: This operation can generate multiple requests to a service.
10946//
10947//    // Example iterating over at most 3 pages of a ListDocumentVersions operation.
10948//    pageNum := 0
10949//    err := client.ListDocumentVersionsPages(params,
10950//        func(page *ssm.ListDocumentVersionsOutput, lastPage bool) bool {
10951//            pageNum++
10952//            fmt.Println(page)
10953//            return pageNum <= 3
10954//        })
10955//
10956func (c *SSM) ListDocumentVersionsPages(input *ListDocumentVersionsInput, fn func(*ListDocumentVersionsOutput, bool) bool) error {
10957	return c.ListDocumentVersionsPagesWithContext(aws.BackgroundContext(), input, fn)
10958}
10959
10960// ListDocumentVersionsPagesWithContext same as ListDocumentVersionsPages except
10961// it takes a Context and allows setting request options on the pages.
10962//
10963// The context must be non-nil and will be used for request cancellation. If
10964// the context is nil a panic will occur. In the future the SDK may create
10965// sub-contexts for http.Requests. See https://golang.org/pkg/context/
10966// for more information on using Contexts.
10967func (c *SSM) ListDocumentVersionsPagesWithContext(ctx aws.Context, input *ListDocumentVersionsInput, fn func(*ListDocumentVersionsOutput, bool) bool, opts ...request.Option) error {
10968	p := request.Pagination{
10969		NewRequest: func() (*request.Request, error) {
10970			var inCpy *ListDocumentVersionsInput
10971			if input != nil {
10972				tmp := *input
10973				inCpy = &tmp
10974			}
10975			req, _ := c.ListDocumentVersionsRequest(inCpy)
10976			req.SetContext(ctx)
10977			req.ApplyOptions(opts...)
10978			return req, nil
10979		},
10980	}
10981
10982	for p.Next() {
10983		if !fn(p.Page().(*ListDocumentVersionsOutput), !p.HasNextPage()) {
10984			break
10985		}
10986	}
10987
10988	return p.Err()
10989}
10990
10991const opListDocuments = "ListDocuments"
10992
10993// ListDocumentsRequest generates a "aws/request.Request" representing the
10994// client's request for the ListDocuments operation. The "output" return
10995// value will be populated with the request's response once the request completes
10996// successfully.
10997//
10998// Use "Send" method on the returned Request to send the API call to the service.
10999// the "output" return value is not valid until after Send returns without error.
11000//
11001// See ListDocuments for more information on using the ListDocuments
11002// API call, and error handling.
11003//
11004// This method is useful when you want to inject custom logic or configuration
11005// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11006//
11007//
11008//    // Example sending a request using the ListDocumentsRequest method.
11009//    req, resp := client.ListDocumentsRequest(params)
11010//
11011//    err := req.Send()
11012//    if err == nil { // resp is now filled
11013//        fmt.Println(resp)
11014//    }
11015//
11016// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocuments
11017func (c *SSM) ListDocumentsRequest(input *ListDocumentsInput) (req *request.Request, output *ListDocumentsOutput) {
11018	op := &request.Operation{
11019		Name:       opListDocuments,
11020		HTTPMethod: "POST",
11021		HTTPPath:   "/",
11022		Paginator: &request.Paginator{
11023			InputTokens:     []string{"NextToken"},
11024			OutputTokens:    []string{"NextToken"},
11025			LimitToken:      "MaxResults",
11026			TruncationToken: "",
11027		},
11028	}
11029
11030	if input == nil {
11031		input = &ListDocumentsInput{}
11032	}
11033
11034	output = &ListDocumentsOutput{}
11035	req = c.newRequest(op, input, output)
11036	return
11037}
11038
11039// ListDocuments API operation for Amazon Simple Systems Manager (SSM).
11040//
11041// Returns all Systems Manager (SSM) documents in the current Amazon Web Services
11042// account and Amazon Web Services Region. You can limit the results of this
11043// request by using a filter.
11044//
11045// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
11046// with awserr.Error's Code and Message methods to get detailed information about
11047// the error.
11048//
11049// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
11050// API operation ListDocuments for usage and error information.
11051//
11052// Returned Error Types:
11053//   * InternalServerError
11054//   An error occurred on the server side.
11055//
11056//   * InvalidNextToken
11057//   The specified token isn't valid.
11058//
11059//   * InvalidFilterKey
11060//   The specified key isn't valid.
11061//
11062// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListDocuments
11063func (c *SSM) ListDocuments(input *ListDocumentsInput) (*ListDocumentsOutput, error) {
11064	req, out := c.ListDocumentsRequest(input)
11065	return out, req.Send()
11066}
11067
11068// ListDocumentsWithContext is the same as ListDocuments with the addition of
11069// the ability to pass a context and additional request options.
11070//
11071// See ListDocuments for details on how to use this API operation.
11072//
11073// The context must be non-nil and will be used for request cancellation. If
11074// the context is nil a panic will occur. In the future the SDK may create
11075// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11076// for more information on using Contexts.
11077func (c *SSM) ListDocumentsWithContext(ctx aws.Context, input *ListDocumentsInput, opts ...request.Option) (*ListDocumentsOutput, error) {
11078	req, out := c.ListDocumentsRequest(input)
11079	req.SetContext(ctx)
11080	req.ApplyOptions(opts...)
11081	return out, req.Send()
11082}
11083
11084// ListDocumentsPages iterates over the pages of a ListDocuments operation,
11085// calling the "fn" function with the response data for each page. To stop
11086// iterating, return false from the fn function.
11087//
11088// See ListDocuments method for more information on how to use this operation.
11089//
11090// Note: This operation can generate multiple requests to a service.
11091//
11092//    // Example iterating over at most 3 pages of a ListDocuments operation.
11093//    pageNum := 0
11094//    err := client.ListDocumentsPages(params,
11095//        func(page *ssm.ListDocumentsOutput, lastPage bool) bool {
11096//            pageNum++
11097//            fmt.Println(page)
11098//            return pageNum <= 3
11099//        })
11100//
11101func (c *SSM) ListDocumentsPages(input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool) error {
11102	return c.ListDocumentsPagesWithContext(aws.BackgroundContext(), input, fn)
11103}
11104
11105// ListDocumentsPagesWithContext same as ListDocumentsPages except
11106// it takes a Context and allows setting request options on the pages.
11107//
11108// The context must be non-nil and will be used for request cancellation. If
11109// the context is nil a panic will occur. In the future the SDK may create
11110// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11111// for more information on using Contexts.
11112func (c *SSM) ListDocumentsPagesWithContext(ctx aws.Context, input *ListDocumentsInput, fn func(*ListDocumentsOutput, bool) bool, opts ...request.Option) error {
11113	p := request.Pagination{
11114		NewRequest: func() (*request.Request, error) {
11115			var inCpy *ListDocumentsInput
11116			if input != nil {
11117				tmp := *input
11118				inCpy = &tmp
11119			}
11120			req, _ := c.ListDocumentsRequest(inCpy)
11121			req.SetContext(ctx)
11122			req.ApplyOptions(opts...)
11123			return req, nil
11124		},
11125	}
11126
11127	for p.Next() {
11128		if !fn(p.Page().(*ListDocumentsOutput), !p.HasNextPage()) {
11129			break
11130		}
11131	}
11132
11133	return p.Err()
11134}
11135
11136const opListInventoryEntries = "ListInventoryEntries"
11137
11138// ListInventoryEntriesRequest generates a "aws/request.Request" representing the
11139// client's request for the ListInventoryEntries operation. The "output" return
11140// value will be populated with the request's response once the request completes
11141// successfully.
11142//
11143// Use "Send" method on the returned Request to send the API call to the service.
11144// the "output" return value is not valid until after Send returns without error.
11145//
11146// See ListInventoryEntries for more information on using the ListInventoryEntries
11147// API call, and error handling.
11148//
11149// This method is useful when you want to inject custom logic or configuration
11150// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11151//
11152//
11153//    // Example sending a request using the ListInventoryEntriesRequest method.
11154//    req, resp := client.ListInventoryEntriesRequest(params)
11155//
11156//    err := req.Send()
11157//    if err == nil { // resp is now filled
11158//        fmt.Println(resp)
11159//    }
11160//
11161// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListInventoryEntries
11162func (c *SSM) ListInventoryEntriesRequest(input *ListInventoryEntriesInput) (req *request.Request, output *ListInventoryEntriesOutput) {
11163	op := &request.Operation{
11164		Name:       opListInventoryEntries,
11165		HTTPMethod: "POST",
11166		HTTPPath:   "/",
11167	}
11168
11169	if input == nil {
11170		input = &ListInventoryEntriesInput{}
11171	}
11172
11173	output = &ListInventoryEntriesOutput{}
11174	req = c.newRequest(op, input, output)
11175	return
11176}
11177
11178// ListInventoryEntries API operation for Amazon Simple Systems Manager (SSM).
11179//
11180// A list of inventory items returned by the request.
11181//
11182// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
11183// with awserr.Error's Code and Message methods to get detailed information about
11184// the error.
11185//
11186// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
11187// API operation ListInventoryEntries for usage and error information.
11188//
11189// Returned Error Types:
11190//   * InternalServerError
11191//   An error occurred on the server side.
11192//
11193//   * InvalidInstanceId
11194//   The following problems can cause this exception:
11195//
11196//      * You don't have permission to access the instance.
11197//
11198//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
11199//      Verify that SSM Agent is running.
11200//
11201//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
11202//      Agent.
11203//
11204//      * The instance isn't in valid state. Valid states are: Running, Pending,
11205//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
11206//
11207//   * InvalidTypeNameException
11208//   The parameter type name isn't valid.
11209//
11210//   * InvalidFilter
11211//   The filter name isn't valid. Verify the you entered the correct name and
11212//   try again.
11213//
11214//   * InvalidNextToken
11215//   The specified token isn't valid.
11216//
11217// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListInventoryEntries
11218func (c *SSM) ListInventoryEntries(input *ListInventoryEntriesInput) (*ListInventoryEntriesOutput, error) {
11219	req, out := c.ListInventoryEntriesRequest(input)
11220	return out, req.Send()
11221}
11222
11223// ListInventoryEntriesWithContext is the same as ListInventoryEntries with the addition of
11224// the ability to pass a context and additional request options.
11225//
11226// See ListInventoryEntries for details on how to use this API operation.
11227//
11228// The context must be non-nil and will be used for request cancellation. If
11229// the context is nil a panic will occur. In the future the SDK may create
11230// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11231// for more information on using Contexts.
11232func (c *SSM) ListInventoryEntriesWithContext(ctx aws.Context, input *ListInventoryEntriesInput, opts ...request.Option) (*ListInventoryEntriesOutput, error) {
11233	req, out := c.ListInventoryEntriesRequest(input)
11234	req.SetContext(ctx)
11235	req.ApplyOptions(opts...)
11236	return out, req.Send()
11237}
11238
11239const opListOpsItemEvents = "ListOpsItemEvents"
11240
11241// ListOpsItemEventsRequest generates a "aws/request.Request" representing the
11242// client's request for the ListOpsItemEvents operation. The "output" return
11243// value will be populated with the request's response once the request completes
11244// successfully.
11245//
11246// Use "Send" method on the returned Request to send the API call to the service.
11247// the "output" return value is not valid until after Send returns without error.
11248//
11249// See ListOpsItemEvents for more information on using the ListOpsItemEvents
11250// API call, and error handling.
11251//
11252// This method is useful when you want to inject custom logic or configuration
11253// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11254//
11255//
11256//    // Example sending a request using the ListOpsItemEventsRequest method.
11257//    req, resp := client.ListOpsItemEventsRequest(params)
11258//
11259//    err := req.Send()
11260//    if err == nil { // resp is now filled
11261//        fmt.Println(resp)
11262//    }
11263//
11264// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemEvents
11265func (c *SSM) ListOpsItemEventsRequest(input *ListOpsItemEventsInput) (req *request.Request, output *ListOpsItemEventsOutput) {
11266	op := &request.Operation{
11267		Name:       opListOpsItemEvents,
11268		HTTPMethod: "POST",
11269		HTTPPath:   "/",
11270		Paginator: &request.Paginator{
11271			InputTokens:     []string{"NextToken"},
11272			OutputTokens:    []string{"NextToken"},
11273			LimitToken:      "MaxResults",
11274			TruncationToken: "",
11275		},
11276	}
11277
11278	if input == nil {
11279		input = &ListOpsItemEventsInput{}
11280	}
11281
11282	output = &ListOpsItemEventsOutput{}
11283	req = c.newRequest(op, input, output)
11284	return
11285}
11286
11287// ListOpsItemEvents API operation for Amazon Simple Systems Manager (SSM).
11288//
11289// Returns a list of all OpsItem events in the current Amazon Web Services Region
11290// and Amazon Web Services account. You can limit the results to events associated
11291// with specific OpsItems by specifying a filter.
11292//
11293// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
11294// with awserr.Error's Code and Message methods to get detailed information about
11295// the error.
11296//
11297// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
11298// API operation ListOpsItemEvents for usage and error information.
11299//
11300// Returned Error Types:
11301//   * InternalServerError
11302//   An error occurred on the server side.
11303//
11304//   * OpsItemNotFoundException
11305//   The specified OpsItem ID doesn't exist. Verify the ID and try again.
11306//
11307//   * OpsItemLimitExceededException
11308//   The request caused OpsItems to exceed one or more quotas. For information
11309//   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
11310//
11311//   * OpsItemInvalidParameterException
11312//   A specified parameter argument isn't valid. Verify the available arguments
11313//   and try again.
11314//
11315// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemEvents
11316func (c *SSM) ListOpsItemEvents(input *ListOpsItemEventsInput) (*ListOpsItemEventsOutput, error) {
11317	req, out := c.ListOpsItemEventsRequest(input)
11318	return out, req.Send()
11319}
11320
11321// ListOpsItemEventsWithContext is the same as ListOpsItemEvents with the addition of
11322// the ability to pass a context and additional request options.
11323//
11324// See ListOpsItemEvents for details on how to use this API operation.
11325//
11326// The context must be non-nil and will be used for request cancellation. If
11327// the context is nil a panic will occur. In the future the SDK may create
11328// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11329// for more information on using Contexts.
11330func (c *SSM) ListOpsItemEventsWithContext(ctx aws.Context, input *ListOpsItemEventsInput, opts ...request.Option) (*ListOpsItemEventsOutput, error) {
11331	req, out := c.ListOpsItemEventsRequest(input)
11332	req.SetContext(ctx)
11333	req.ApplyOptions(opts...)
11334	return out, req.Send()
11335}
11336
11337// ListOpsItemEventsPages iterates over the pages of a ListOpsItemEvents operation,
11338// calling the "fn" function with the response data for each page. To stop
11339// iterating, return false from the fn function.
11340//
11341// See ListOpsItemEvents method for more information on how to use this operation.
11342//
11343// Note: This operation can generate multiple requests to a service.
11344//
11345//    // Example iterating over at most 3 pages of a ListOpsItemEvents operation.
11346//    pageNum := 0
11347//    err := client.ListOpsItemEventsPages(params,
11348//        func(page *ssm.ListOpsItemEventsOutput, lastPage bool) bool {
11349//            pageNum++
11350//            fmt.Println(page)
11351//            return pageNum <= 3
11352//        })
11353//
11354func (c *SSM) ListOpsItemEventsPages(input *ListOpsItemEventsInput, fn func(*ListOpsItemEventsOutput, bool) bool) error {
11355	return c.ListOpsItemEventsPagesWithContext(aws.BackgroundContext(), input, fn)
11356}
11357
11358// ListOpsItemEventsPagesWithContext same as ListOpsItemEventsPages except
11359// it takes a Context and allows setting request options on the pages.
11360//
11361// The context must be non-nil and will be used for request cancellation. If
11362// the context is nil a panic will occur. In the future the SDK may create
11363// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11364// for more information on using Contexts.
11365func (c *SSM) ListOpsItemEventsPagesWithContext(ctx aws.Context, input *ListOpsItemEventsInput, fn func(*ListOpsItemEventsOutput, bool) bool, opts ...request.Option) error {
11366	p := request.Pagination{
11367		NewRequest: func() (*request.Request, error) {
11368			var inCpy *ListOpsItemEventsInput
11369			if input != nil {
11370				tmp := *input
11371				inCpy = &tmp
11372			}
11373			req, _ := c.ListOpsItemEventsRequest(inCpy)
11374			req.SetContext(ctx)
11375			req.ApplyOptions(opts...)
11376			return req, nil
11377		},
11378	}
11379
11380	for p.Next() {
11381		if !fn(p.Page().(*ListOpsItemEventsOutput), !p.HasNextPage()) {
11382			break
11383		}
11384	}
11385
11386	return p.Err()
11387}
11388
11389const opListOpsItemRelatedItems = "ListOpsItemRelatedItems"
11390
11391// ListOpsItemRelatedItemsRequest generates a "aws/request.Request" representing the
11392// client's request for the ListOpsItemRelatedItems operation. The "output" return
11393// value will be populated with the request's response once the request completes
11394// successfully.
11395//
11396// Use "Send" method on the returned Request to send the API call to the service.
11397// the "output" return value is not valid until after Send returns without error.
11398//
11399// See ListOpsItemRelatedItems for more information on using the ListOpsItemRelatedItems
11400// API call, and error handling.
11401//
11402// This method is useful when you want to inject custom logic or configuration
11403// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11404//
11405//
11406//    // Example sending a request using the ListOpsItemRelatedItemsRequest method.
11407//    req, resp := client.ListOpsItemRelatedItemsRequest(params)
11408//
11409//    err := req.Send()
11410//    if err == nil { // resp is now filled
11411//        fmt.Println(resp)
11412//    }
11413//
11414// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemRelatedItems
11415func (c *SSM) ListOpsItemRelatedItemsRequest(input *ListOpsItemRelatedItemsInput) (req *request.Request, output *ListOpsItemRelatedItemsOutput) {
11416	op := &request.Operation{
11417		Name:       opListOpsItemRelatedItems,
11418		HTTPMethod: "POST",
11419		HTTPPath:   "/",
11420		Paginator: &request.Paginator{
11421			InputTokens:     []string{"NextToken"},
11422			OutputTokens:    []string{"NextToken"},
11423			LimitToken:      "MaxResults",
11424			TruncationToken: "",
11425		},
11426	}
11427
11428	if input == nil {
11429		input = &ListOpsItemRelatedItemsInput{}
11430	}
11431
11432	output = &ListOpsItemRelatedItemsOutput{}
11433	req = c.newRequest(op, input, output)
11434	return
11435}
11436
11437// ListOpsItemRelatedItems API operation for Amazon Simple Systems Manager (SSM).
11438//
11439// Lists all related-item resources associated with an OpsItem.
11440//
11441// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
11442// with awserr.Error's Code and Message methods to get detailed information about
11443// the error.
11444//
11445// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
11446// API operation ListOpsItemRelatedItems for usage and error information.
11447//
11448// Returned Error Types:
11449//   * InternalServerError
11450//   An error occurred on the server side.
11451//
11452//   * OpsItemInvalidParameterException
11453//   A specified parameter argument isn't valid. Verify the available arguments
11454//   and try again.
11455//
11456// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsItemRelatedItems
11457func (c *SSM) ListOpsItemRelatedItems(input *ListOpsItemRelatedItemsInput) (*ListOpsItemRelatedItemsOutput, error) {
11458	req, out := c.ListOpsItemRelatedItemsRequest(input)
11459	return out, req.Send()
11460}
11461
11462// ListOpsItemRelatedItemsWithContext is the same as ListOpsItemRelatedItems with the addition of
11463// the ability to pass a context and additional request options.
11464//
11465// See ListOpsItemRelatedItems for details on how to use this API operation.
11466//
11467// The context must be non-nil and will be used for request cancellation. If
11468// the context is nil a panic will occur. In the future the SDK may create
11469// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11470// for more information on using Contexts.
11471func (c *SSM) ListOpsItemRelatedItemsWithContext(ctx aws.Context, input *ListOpsItemRelatedItemsInput, opts ...request.Option) (*ListOpsItemRelatedItemsOutput, error) {
11472	req, out := c.ListOpsItemRelatedItemsRequest(input)
11473	req.SetContext(ctx)
11474	req.ApplyOptions(opts...)
11475	return out, req.Send()
11476}
11477
11478// ListOpsItemRelatedItemsPages iterates over the pages of a ListOpsItemRelatedItems operation,
11479// calling the "fn" function with the response data for each page. To stop
11480// iterating, return false from the fn function.
11481//
11482// See ListOpsItemRelatedItems method for more information on how to use this operation.
11483//
11484// Note: This operation can generate multiple requests to a service.
11485//
11486//    // Example iterating over at most 3 pages of a ListOpsItemRelatedItems operation.
11487//    pageNum := 0
11488//    err := client.ListOpsItemRelatedItemsPages(params,
11489//        func(page *ssm.ListOpsItemRelatedItemsOutput, lastPage bool) bool {
11490//            pageNum++
11491//            fmt.Println(page)
11492//            return pageNum <= 3
11493//        })
11494//
11495func (c *SSM) ListOpsItemRelatedItemsPages(input *ListOpsItemRelatedItemsInput, fn func(*ListOpsItemRelatedItemsOutput, bool) bool) error {
11496	return c.ListOpsItemRelatedItemsPagesWithContext(aws.BackgroundContext(), input, fn)
11497}
11498
11499// ListOpsItemRelatedItemsPagesWithContext same as ListOpsItemRelatedItemsPages except
11500// it takes a Context and allows setting request options on the pages.
11501//
11502// The context must be non-nil and will be used for request cancellation. If
11503// the context is nil a panic will occur. In the future the SDK may create
11504// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11505// for more information on using Contexts.
11506func (c *SSM) ListOpsItemRelatedItemsPagesWithContext(ctx aws.Context, input *ListOpsItemRelatedItemsInput, fn func(*ListOpsItemRelatedItemsOutput, bool) bool, opts ...request.Option) error {
11507	p := request.Pagination{
11508		NewRequest: func() (*request.Request, error) {
11509			var inCpy *ListOpsItemRelatedItemsInput
11510			if input != nil {
11511				tmp := *input
11512				inCpy = &tmp
11513			}
11514			req, _ := c.ListOpsItemRelatedItemsRequest(inCpy)
11515			req.SetContext(ctx)
11516			req.ApplyOptions(opts...)
11517			return req, nil
11518		},
11519	}
11520
11521	for p.Next() {
11522		if !fn(p.Page().(*ListOpsItemRelatedItemsOutput), !p.HasNextPage()) {
11523			break
11524		}
11525	}
11526
11527	return p.Err()
11528}
11529
11530const opListOpsMetadata = "ListOpsMetadata"
11531
11532// ListOpsMetadataRequest generates a "aws/request.Request" representing the
11533// client's request for the ListOpsMetadata operation. The "output" return
11534// value will be populated with the request's response once the request completes
11535// successfully.
11536//
11537// Use "Send" method on the returned Request to send the API call to the service.
11538// the "output" return value is not valid until after Send returns without error.
11539//
11540// See ListOpsMetadata for more information on using the ListOpsMetadata
11541// API call, and error handling.
11542//
11543// This method is useful when you want to inject custom logic or configuration
11544// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11545//
11546//
11547//    // Example sending a request using the ListOpsMetadataRequest method.
11548//    req, resp := client.ListOpsMetadataRequest(params)
11549//
11550//    err := req.Send()
11551//    if err == nil { // resp is now filled
11552//        fmt.Println(resp)
11553//    }
11554//
11555// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsMetadata
11556func (c *SSM) ListOpsMetadataRequest(input *ListOpsMetadataInput) (req *request.Request, output *ListOpsMetadataOutput) {
11557	op := &request.Operation{
11558		Name:       opListOpsMetadata,
11559		HTTPMethod: "POST",
11560		HTTPPath:   "/",
11561		Paginator: &request.Paginator{
11562			InputTokens:     []string{"NextToken"},
11563			OutputTokens:    []string{"NextToken"},
11564			LimitToken:      "MaxResults",
11565			TruncationToken: "",
11566		},
11567	}
11568
11569	if input == nil {
11570		input = &ListOpsMetadataInput{}
11571	}
11572
11573	output = &ListOpsMetadataOutput{}
11574	req = c.newRequest(op, input, output)
11575	return
11576}
11577
11578// ListOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
11579//
11580// Amazon Web Services Systems Manager calls this API operation when displaying
11581// all Application Manager OpsMetadata objects or blobs.
11582//
11583// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
11584// with awserr.Error's Code and Message methods to get detailed information about
11585// the error.
11586//
11587// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
11588// API operation ListOpsMetadata for usage and error information.
11589//
11590// Returned Error Types:
11591//   * OpsMetadataInvalidArgumentException
11592//   One of the arguments passed is invalid.
11593//
11594//   * InternalServerError
11595//   An error occurred on the server side.
11596//
11597// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsMetadata
11598func (c *SSM) ListOpsMetadata(input *ListOpsMetadataInput) (*ListOpsMetadataOutput, error) {
11599	req, out := c.ListOpsMetadataRequest(input)
11600	return out, req.Send()
11601}
11602
11603// ListOpsMetadataWithContext is the same as ListOpsMetadata with the addition of
11604// the ability to pass a context and additional request options.
11605//
11606// See ListOpsMetadata for details on how to use this API operation.
11607//
11608// The context must be non-nil and will be used for request cancellation. If
11609// the context is nil a panic will occur. In the future the SDK may create
11610// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11611// for more information on using Contexts.
11612func (c *SSM) ListOpsMetadataWithContext(ctx aws.Context, input *ListOpsMetadataInput, opts ...request.Option) (*ListOpsMetadataOutput, error) {
11613	req, out := c.ListOpsMetadataRequest(input)
11614	req.SetContext(ctx)
11615	req.ApplyOptions(opts...)
11616	return out, req.Send()
11617}
11618
11619// ListOpsMetadataPages iterates over the pages of a ListOpsMetadata operation,
11620// calling the "fn" function with the response data for each page. To stop
11621// iterating, return false from the fn function.
11622//
11623// See ListOpsMetadata method for more information on how to use this operation.
11624//
11625// Note: This operation can generate multiple requests to a service.
11626//
11627//    // Example iterating over at most 3 pages of a ListOpsMetadata operation.
11628//    pageNum := 0
11629//    err := client.ListOpsMetadataPages(params,
11630//        func(page *ssm.ListOpsMetadataOutput, lastPage bool) bool {
11631//            pageNum++
11632//            fmt.Println(page)
11633//            return pageNum <= 3
11634//        })
11635//
11636func (c *SSM) ListOpsMetadataPages(input *ListOpsMetadataInput, fn func(*ListOpsMetadataOutput, bool) bool) error {
11637	return c.ListOpsMetadataPagesWithContext(aws.BackgroundContext(), input, fn)
11638}
11639
11640// ListOpsMetadataPagesWithContext same as ListOpsMetadataPages except
11641// it takes a Context and allows setting request options on the pages.
11642//
11643// The context must be non-nil and will be used for request cancellation. If
11644// the context is nil a panic will occur. In the future the SDK may create
11645// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11646// for more information on using Contexts.
11647func (c *SSM) ListOpsMetadataPagesWithContext(ctx aws.Context, input *ListOpsMetadataInput, fn func(*ListOpsMetadataOutput, bool) bool, opts ...request.Option) error {
11648	p := request.Pagination{
11649		NewRequest: func() (*request.Request, error) {
11650			var inCpy *ListOpsMetadataInput
11651			if input != nil {
11652				tmp := *input
11653				inCpy = &tmp
11654			}
11655			req, _ := c.ListOpsMetadataRequest(inCpy)
11656			req.SetContext(ctx)
11657			req.ApplyOptions(opts...)
11658			return req, nil
11659		},
11660	}
11661
11662	for p.Next() {
11663		if !fn(p.Page().(*ListOpsMetadataOutput), !p.HasNextPage()) {
11664			break
11665		}
11666	}
11667
11668	return p.Err()
11669}
11670
11671const opListResourceComplianceSummaries = "ListResourceComplianceSummaries"
11672
11673// ListResourceComplianceSummariesRequest generates a "aws/request.Request" representing the
11674// client's request for the ListResourceComplianceSummaries operation. The "output" return
11675// value will be populated with the request's response once the request completes
11676// successfully.
11677//
11678// Use "Send" method on the returned Request to send the API call to the service.
11679// the "output" return value is not valid until after Send returns without error.
11680//
11681// See ListResourceComplianceSummaries for more information on using the ListResourceComplianceSummaries
11682// API call, and error handling.
11683//
11684// This method is useful when you want to inject custom logic or configuration
11685// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11686//
11687//
11688//    // Example sending a request using the ListResourceComplianceSummariesRequest method.
11689//    req, resp := client.ListResourceComplianceSummariesRequest(params)
11690//
11691//    err := req.Send()
11692//    if err == nil { // resp is now filled
11693//        fmt.Println(resp)
11694//    }
11695//
11696// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceComplianceSummaries
11697func (c *SSM) ListResourceComplianceSummariesRequest(input *ListResourceComplianceSummariesInput) (req *request.Request, output *ListResourceComplianceSummariesOutput) {
11698	op := &request.Operation{
11699		Name:       opListResourceComplianceSummaries,
11700		HTTPMethod: "POST",
11701		HTTPPath:   "/",
11702		Paginator: &request.Paginator{
11703			InputTokens:     []string{"NextToken"},
11704			OutputTokens:    []string{"NextToken"},
11705			LimitToken:      "MaxResults",
11706			TruncationToken: "",
11707		},
11708	}
11709
11710	if input == nil {
11711		input = &ListResourceComplianceSummariesInput{}
11712	}
11713
11714	output = &ListResourceComplianceSummariesOutput{}
11715	req = c.newRequest(op, input, output)
11716	return
11717}
11718
11719// ListResourceComplianceSummaries API operation for Amazon Simple Systems Manager (SSM).
11720//
11721// Returns a resource-level summary count. The summary includes information
11722// about compliant and non-compliant statuses and detailed compliance-item severity
11723// counts, according to the filter criteria you specify.
11724//
11725// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
11726// with awserr.Error's Code and Message methods to get detailed information about
11727// the error.
11728//
11729// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
11730// API operation ListResourceComplianceSummaries for usage and error information.
11731//
11732// Returned Error Types:
11733//   * InvalidFilter
11734//   The filter name isn't valid. Verify the you entered the correct name and
11735//   try again.
11736//
11737//   * InvalidNextToken
11738//   The specified token isn't valid.
11739//
11740//   * InternalServerError
11741//   An error occurred on the server side.
11742//
11743// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceComplianceSummaries
11744func (c *SSM) ListResourceComplianceSummaries(input *ListResourceComplianceSummariesInput) (*ListResourceComplianceSummariesOutput, error) {
11745	req, out := c.ListResourceComplianceSummariesRequest(input)
11746	return out, req.Send()
11747}
11748
11749// ListResourceComplianceSummariesWithContext is the same as ListResourceComplianceSummaries with the addition of
11750// the ability to pass a context and additional request options.
11751//
11752// See ListResourceComplianceSummaries for details on how to use this API operation.
11753//
11754// The context must be non-nil and will be used for request cancellation. If
11755// the context is nil a panic will occur. In the future the SDK may create
11756// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11757// for more information on using Contexts.
11758func (c *SSM) ListResourceComplianceSummariesWithContext(ctx aws.Context, input *ListResourceComplianceSummariesInput, opts ...request.Option) (*ListResourceComplianceSummariesOutput, error) {
11759	req, out := c.ListResourceComplianceSummariesRequest(input)
11760	req.SetContext(ctx)
11761	req.ApplyOptions(opts...)
11762	return out, req.Send()
11763}
11764
11765// ListResourceComplianceSummariesPages iterates over the pages of a ListResourceComplianceSummaries operation,
11766// calling the "fn" function with the response data for each page. To stop
11767// iterating, return false from the fn function.
11768//
11769// See ListResourceComplianceSummaries method for more information on how to use this operation.
11770//
11771// Note: This operation can generate multiple requests to a service.
11772//
11773//    // Example iterating over at most 3 pages of a ListResourceComplianceSummaries operation.
11774//    pageNum := 0
11775//    err := client.ListResourceComplianceSummariesPages(params,
11776//        func(page *ssm.ListResourceComplianceSummariesOutput, lastPage bool) bool {
11777//            pageNum++
11778//            fmt.Println(page)
11779//            return pageNum <= 3
11780//        })
11781//
11782func (c *SSM) ListResourceComplianceSummariesPages(input *ListResourceComplianceSummariesInput, fn func(*ListResourceComplianceSummariesOutput, bool) bool) error {
11783	return c.ListResourceComplianceSummariesPagesWithContext(aws.BackgroundContext(), input, fn)
11784}
11785
11786// ListResourceComplianceSummariesPagesWithContext same as ListResourceComplianceSummariesPages except
11787// it takes a Context and allows setting request options on the pages.
11788//
11789// The context must be non-nil and will be used for request cancellation. If
11790// the context is nil a panic will occur. In the future the SDK may create
11791// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11792// for more information on using Contexts.
11793func (c *SSM) ListResourceComplianceSummariesPagesWithContext(ctx aws.Context, input *ListResourceComplianceSummariesInput, fn func(*ListResourceComplianceSummariesOutput, bool) bool, opts ...request.Option) error {
11794	p := request.Pagination{
11795		NewRequest: func() (*request.Request, error) {
11796			var inCpy *ListResourceComplianceSummariesInput
11797			if input != nil {
11798				tmp := *input
11799				inCpy = &tmp
11800			}
11801			req, _ := c.ListResourceComplianceSummariesRequest(inCpy)
11802			req.SetContext(ctx)
11803			req.ApplyOptions(opts...)
11804			return req, nil
11805		},
11806	}
11807
11808	for p.Next() {
11809		if !fn(p.Page().(*ListResourceComplianceSummariesOutput), !p.HasNextPage()) {
11810			break
11811		}
11812	}
11813
11814	return p.Err()
11815}
11816
11817const opListResourceDataSync = "ListResourceDataSync"
11818
11819// ListResourceDataSyncRequest generates a "aws/request.Request" representing the
11820// client's request for the ListResourceDataSync operation. The "output" return
11821// value will be populated with the request's response once the request completes
11822// successfully.
11823//
11824// Use "Send" method on the returned Request to send the API call to the service.
11825// the "output" return value is not valid until after Send returns without error.
11826//
11827// See ListResourceDataSync for more information on using the ListResourceDataSync
11828// API call, and error handling.
11829//
11830// This method is useful when you want to inject custom logic or configuration
11831// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11832//
11833//
11834//    // Example sending a request using the ListResourceDataSyncRequest method.
11835//    req, resp := client.ListResourceDataSyncRequest(params)
11836//
11837//    err := req.Send()
11838//    if err == nil { // resp is now filled
11839//        fmt.Println(resp)
11840//    }
11841//
11842// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceDataSync
11843func (c *SSM) ListResourceDataSyncRequest(input *ListResourceDataSyncInput) (req *request.Request, output *ListResourceDataSyncOutput) {
11844	op := &request.Operation{
11845		Name:       opListResourceDataSync,
11846		HTTPMethod: "POST",
11847		HTTPPath:   "/",
11848		Paginator: &request.Paginator{
11849			InputTokens:     []string{"NextToken"},
11850			OutputTokens:    []string{"NextToken"},
11851			LimitToken:      "MaxResults",
11852			TruncationToken: "",
11853		},
11854	}
11855
11856	if input == nil {
11857		input = &ListResourceDataSyncInput{}
11858	}
11859
11860	output = &ListResourceDataSyncOutput{}
11861	req = c.newRequest(op, input, output)
11862	return
11863}
11864
11865// ListResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
11866//
11867// Lists your resource data sync configurations. Includes information about
11868// the last time a sync attempted to start, the last sync status, and the last
11869// time a sync successfully completed.
11870//
11871// The number of sync configurations might be too large to return using a single
11872// call to ListResourceDataSync. You can limit the number of sync configurations
11873// returned by using the MaxResults parameter. To determine whether there are
11874// more sync configurations to list, check the value of NextToken in the output.
11875// If there are more sync configurations to list, you can request them by specifying
11876// the NextToken returned in the call to the parameter of a subsequent call.
11877//
11878// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
11879// with awserr.Error's Code and Message methods to get detailed information about
11880// the error.
11881//
11882// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
11883// API operation ListResourceDataSync for usage and error information.
11884//
11885// Returned Error Types:
11886//   * ResourceDataSyncInvalidConfigurationException
11887//   The specified sync configuration is invalid.
11888//
11889//   * InternalServerError
11890//   An error occurred on the server side.
11891//
11892//   * InvalidNextToken
11893//   The specified token isn't valid.
11894//
11895// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListResourceDataSync
11896func (c *SSM) ListResourceDataSync(input *ListResourceDataSyncInput) (*ListResourceDataSyncOutput, error) {
11897	req, out := c.ListResourceDataSyncRequest(input)
11898	return out, req.Send()
11899}
11900
11901// ListResourceDataSyncWithContext is the same as ListResourceDataSync with the addition of
11902// the ability to pass a context and additional request options.
11903//
11904// See ListResourceDataSync for details on how to use this API operation.
11905//
11906// The context must be non-nil and will be used for request cancellation. If
11907// the context is nil a panic will occur. In the future the SDK may create
11908// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11909// for more information on using Contexts.
11910func (c *SSM) ListResourceDataSyncWithContext(ctx aws.Context, input *ListResourceDataSyncInput, opts ...request.Option) (*ListResourceDataSyncOutput, error) {
11911	req, out := c.ListResourceDataSyncRequest(input)
11912	req.SetContext(ctx)
11913	req.ApplyOptions(opts...)
11914	return out, req.Send()
11915}
11916
11917// ListResourceDataSyncPages iterates over the pages of a ListResourceDataSync operation,
11918// calling the "fn" function with the response data for each page. To stop
11919// iterating, return false from the fn function.
11920//
11921// See ListResourceDataSync method for more information on how to use this operation.
11922//
11923// Note: This operation can generate multiple requests to a service.
11924//
11925//    // Example iterating over at most 3 pages of a ListResourceDataSync operation.
11926//    pageNum := 0
11927//    err := client.ListResourceDataSyncPages(params,
11928//        func(page *ssm.ListResourceDataSyncOutput, lastPage bool) bool {
11929//            pageNum++
11930//            fmt.Println(page)
11931//            return pageNum <= 3
11932//        })
11933//
11934func (c *SSM) ListResourceDataSyncPages(input *ListResourceDataSyncInput, fn func(*ListResourceDataSyncOutput, bool) bool) error {
11935	return c.ListResourceDataSyncPagesWithContext(aws.BackgroundContext(), input, fn)
11936}
11937
11938// ListResourceDataSyncPagesWithContext same as ListResourceDataSyncPages except
11939// it takes a Context and allows setting request options on the pages.
11940//
11941// The context must be non-nil and will be used for request cancellation. If
11942// the context is nil a panic will occur. In the future the SDK may create
11943// sub-contexts for http.Requests. See https://golang.org/pkg/context/
11944// for more information on using Contexts.
11945func (c *SSM) ListResourceDataSyncPagesWithContext(ctx aws.Context, input *ListResourceDataSyncInput, fn func(*ListResourceDataSyncOutput, bool) bool, opts ...request.Option) error {
11946	p := request.Pagination{
11947		NewRequest: func() (*request.Request, error) {
11948			var inCpy *ListResourceDataSyncInput
11949			if input != nil {
11950				tmp := *input
11951				inCpy = &tmp
11952			}
11953			req, _ := c.ListResourceDataSyncRequest(inCpy)
11954			req.SetContext(ctx)
11955			req.ApplyOptions(opts...)
11956			return req, nil
11957		},
11958	}
11959
11960	for p.Next() {
11961		if !fn(p.Page().(*ListResourceDataSyncOutput), !p.HasNextPage()) {
11962			break
11963		}
11964	}
11965
11966	return p.Err()
11967}
11968
11969const opListTagsForResource = "ListTagsForResource"
11970
11971// ListTagsForResourceRequest generates a "aws/request.Request" representing the
11972// client's request for the ListTagsForResource operation. The "output" return
11973// value will be populated with the request's response once the request completes
11974// successfully.
11975//
11976// Use "Send" method on the returned Request to send the API call to the service.
11977// the "output" return value is not valid until after Send returns without error.
11978//
11979// See ListTagsForResource for more information on using the ListTagsForResource
11980// API call, and error handling.
11981//
11982// This method is useful when you want to inject custom logic or configuration
11983// into the SDK's request lifecycle. Such as custom headers, or retry logic.
11984//
11985//
11986//    // Example sending a request using the ListTagsForResourceRequest method.
11987//    req, resp := client.ListTagsForResourceRequest(params)
11988//
11989//    err := req.Send()
11990//    if err == nil { // resp is now filled
11991//        fmt.Println(resp)
11992//    }
11993//
11994// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListTagsForResource
11995func (c *SSM) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
11996	op := &request.Operation{
11997		Name:       opListTagsForResource,
11998		HTTPMethod: "POST",
11999		HTTPPath:   "/",
12000	}
12001
12002	if input == nil {
12003		input = &ListTagsForResourceInput{}
12004	}
12005
12006	output = &ListTagsForResourceOutput{}
12007	req = c.newRequest(op, input, output)
12008	return
12009}
12010
12011// ListTagsForResource API operation for Amazon Simple Systems Manager (SSM).
12012//
12013// Returns a list of the tags assigned to the specified resource.
12014//
12015// For information about the ID format for each supported resource type, see
12016// AddTagsToResource.
12017//
12018// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12019// with awserr.Error's Code and Message methods to get detailed information about
12020// the error.
12021//
12022// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12023// API operation ListTagsForResource for usage and error information.
12024//
12025// Returned Error Types:
12026//   * InvalidResourceType
12027//   The resource type isn't valid. For example, if you are attempting to tag
12028//   an instance, the instance must be a registered, managed instance.
12029//
12030//   * InvalidResourceId
12031//   The resource ID isn't valid. Verify that you entered the correct ID and try
12032//   again.
12033//
12034//   * InternalServerError
12035//   An error occurred on the server side.
12036//
12037// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListTagsForResource
12038func (c *SSM) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
12039	req, out := c.ListTagsForResourceRequest(input)
12040	return out, req.Send()
12041}
12042
12043// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
12044// the ability to pass a context and additional request options.
12045//
12046// See ListTagsForResource for details on how to use this API operation.
12047//
12048// The context must be non-nil and will be used for request cancellation. If
12049// the context is nil a panic will occur. In the future the SDK may create
12050// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12051// for more information on using Contexts.
12052func (c *SSM) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
12053	req, out := c.ListTagsForResourceRequest(input)
12054	req.SetContext(ctx)
12055	req.ApplyOptions(opts...)
12056	return out, req.Send()
12057}
12058
12059const opModifyDocumentPermission = "ModifyDocumentPermission"
12060
12061// ModifyDocumentPermissionRequest generates a "aws/request.Request" representing the
12062// client's request for the ModifyDocumentPermission operation. The "output" return
12063// value will be populated with the request's response once the request completes
12064// successfully.
12065//
12066// Use "Send" method on the returned Request to send the API call to the service.
12067// the "output" return value is not valid until after Send returns without error.
12068//
12069// See ModifyDocumentPermission for more information on using the ModifyDocumentPermission
12070// API call, and error handling.
12071//
12072// This method is useful when you want to inject custom logic or configuration
12073// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12074//
12075//
12076//    // Example sending a request using the ModifyDocumentPermissionRequest method.
12077//    req, resp := client.ModifyDocumentPermissionRequest(params)
12078//
12079//    err := req.Send()
12080//    if err == nil { // resp is now filled
12081//        fmt.Println(resp)
12082//    }
12083//
12084// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ModifyDocumentPermission
12085func (c *SSM) ModifyDocumentPermissionRequest(input *ModifyDocumentPermissionInput) (req *request.Request, output *ModifyDocumentPermissionOutput) {
12086	op := &request.Operation{
12087		Name:       opModifyDocumentPermission,
12088		HTTPMethod: "POST",
12089		HTTPPath:   "/",
12090	}
12091
12092	if input == nil {
12093		input = &ModifyDocumentPermissionInput{}
12094	}
12095
12096	output = &ModifyDocumentPermissionOutput{}
12097	req = c.newRequest(op, input, output)
12098	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
12099	return
12100}
12101
12102// ModifyDocumentPermission API operation for Amazon Simple Systems Manager (SSM).
12103//
12104// Shares a Amazon Web Services Systems Manager document (SSM document)publicly
12105// or privately. If you share a document privately, you must specify the Amazon
12106// Web Services user account IDs for those people who can use the document.
12107// If you share a document publicly, you must specify All as the account ID.
12108//
12109// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12110// with awserr.Error's Code and Message methods to get detailed information about
12111// the error.
12112//
12113// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12114// API operation ModifyDocumentPermission for usage and error information.
12115//
12116// Returned Error Types:
12117//   * InternalServerError
12118//   An error occurred on the server side.
12119//
12120//   * InvalidDocument
12121//   The specified SSM document doesn't exist.
12122//
12123//   * InvalidPermissionType
12124//   The permission type isn't supported. Share is the only supported permission
12125//   type.
12126//
12127//   * DocumentPermissionLimit
12128//   The document can't be shared with more Amazon Web Services user accounts.
12129//   You can share a document with a maximum of 20 accounts. You can publicly
12130//   share up to five documents. If you need to increase this limit, contact Amazon
12131//   Web Services Support.
12132//
12133//   * DocumentLimitExceeded
12134//   You can have at most 500 active SSM documents.
12135//
12136// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ModifyDocumentPermission
12137func (c *SSM) ModifyDocumentPermission(input *ModifyDocumentPermissionInput) (*ModifyDocumentPermissionOutput, error) {
12138	req, out := c.ModifyDocumentPermissionRequest(input)
12139	return out, req.Send()
12140}
12141
12142// ModifyDocumentPermissionWithContext is the same as ModifyDocumentPermission with the addition of
12143// the ability to pass a context and additional request options.
12144//
12145// See ModifyDocumentPermission for details on how to use this API operation.
12146//
12147// The context must be non-nil and will be used for request cancellation. If
12148// the context is nil a panic will occur. In the future the SDK may create
12149// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12150// for more information on using Contexts.
12151func (c *SSM) ModifyDocumentPermissionWithContext(ctx aws.Context, input *ModifyDocumentPermissionInput, opts ...request.Option) (*ModifyDocumentPermissionOutput, error) {
12152	req, out := c.ModifyDocumentPermissionRequest(input)
12153	req.SetContext(ctx)
12154	req.ApplyOptions(opts...)
12155	return out, req.Send()
12156}
12157
12158const opPutComplianceItems = "PutComplianceItems"
12159
12160// PutComplianceItemsRequest generates a "aws/request.Request" representing the
12161// client's request for the PutComplianceItems operation. The "output" return
12162// value will be populated with the request's response once the request completes
12163// successfully.
12164//
12165// Use "Send" method on the returned Request to send the API call to the service.
12166// the "output" return value is not valid until after Send returns without error.
12167//
12168// See PutComplianceItems for more information on using the PutComplianceItems
12169// API call, and error handling.
12170//
12171// This method is useful when you want to inject custom logic or configuration
12172// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12173//
12174//
12175//    // Example sending a request using the PutComplianceItemsRequest method.
12176//    req, resp := client.PutComplianceItemsRequest(params)
12177//
12178//    err := req.Send()
12179//    if err == nil { // resp is now filled
12180//        fmt.Println(resp)
12181//    }
12182//
12183// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutComplianceItems
12184func (c *SSM) PutComplianceItemsRequest(input *PutComplianceItemsInput) (req *request.Request, output *PutComplianceItemsOutput) {
12185	op := &request.Operation{
12186		Name:       opPutComplianceItems,
12187		HTTPMethod: "POST",
12188		HTTPPath:   "/",
12189	}
12190
12191	if input == nil {
12192		input = &PutComplianceItemsInput{}
12193	}
12194
12195	output = &PutComplianceItemsOutput{}
12196	req = c.newRequest(op, input, output)
12197	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
12198	return
12199}
12200
12201// PutComplianceItems API operation for Amazon Simple Systems Manager (SSM).
12202//
12203// Registers a compliance type and other compliance details on a designated
12204// resource. This operation lets you register custom compliance details with
12205// a resource. This call overwrites existing compliance information on the resource,
12206// so you must provide a full list of compliance items each time that you send
12207// the request.
12208//
12209// ComplianceType can be one of the following:
12210//
12211//    * ExecutionId: The execution ID when the patch, association, or custom
12212//    compliance item was applied.
12213//
12214//    * ExecutionType: Specify patch, association, or Custom:string.
12215//
12216//    * ExecutionTime. The time the patch, association, or custom compliance
12217//    item was applied to the instance.
12218//
12219//    * Id: The patch, association, or custom compliance ID.
12220//
12221//    * Title: A title.
12222//
12223//    * Status: The status of the compliance item. For example, approved for
12224//    patches, or Failed for associations.
12225//
12226//    * Severity: A patch severity. For example, critical.
12227//
12228//    * DocumentName: An SSM document name. For example, AWS-RunPatchBaseline.
12229//
12230//    * DocumentVersion: An SSM document version number. For example, 4.
12231//
12232//    * Classification: A patch classification. For example, security updates.
12233//
12234//    * PatchBaselineId: A patch baseline ID.
12235//
12236//    * PatchSeverity: A patch severity. For example, Critical.
12237//
12238//    * PatchState: A patch state. For example, InstancesWithFailedPatches.
12239//
12240//    * PatchGroup: The name of a patch group.
12241//
12242//    * InstalledTime: The time the association, patch, or custom compliance
12243//    item was applied to the resource. Specify the time by using the following
12244//    format: yyyy-MM-dd'T'HH:mm:ss'Z'
12245//
12246// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12247// with awserr.Error's Code and Message methods to get detailed information about
12248// the error.
12249//
12250// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12251// API operation PutComplianceItems for usage and error information.
12252//
12253// Returned Error Types:
12254//   * InternalServerError
12255//   An error occurred on the server side.
12256//
12257//   * InvalidItemContentException
12258//   One or more content items isn't valid.
12259//
12260//   * TotalSizeLimitExceededException
12261//   The size of inventory data has exceeded the total size limit for the resource.
12262//
12263//   * ItemSizeLimitExceededException
12264//   The inventory item size has exceeded the size limit.
12265//
12266//   * ComplianceTypeCountLimitExceededException
12267//   You specified too many custom compliance types. You can specify a maximum
12268//   of 10 different types.
12269//
12270//   * InvalidResourceType
12271//   The resource type isn't valid. For example, if you are attempting to tag
12272//   an instance, the instance must be a registered, managed instance.
12273//
12274//   * InvalidResourceId
12275//   The resource ID isn't valid. Verify that you entered the correct ID and try
12276//   again.
12277//
12278// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutComplianceItems
12279func (c *SSM) PutComplianceItems(input *PutComplianceItemsInput) (*PutComplianceItemsOutput, error) {
12280	req, out := c.PutComplianceItemsRequest(input)
12281	return out, req.Send()
12282}
12283
12284// PutComplianceItemsWithContext is the same as PutComplianceItems with the addition of
12285// the ability to pass a context and additional request options.
12286//
12287// See PutComplianceItems for details on how to use this API operation.
12288//
12289// The context must be non-nil and will be used for request cancellation. If
12290// the context is nil a panic will occur. In the future the SDK may create
12291// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12292// for more information on using Contexts.
12293func (c *SSM) PutComplianceItemsWithContext(ctx aws.Context, input *PutComplianceItemsInput, opts ...request.Option) (*PutComplianceItemsOutput, error) {
12294	req, out := c.PutComplianceItemsRequest(input)
12295	req.SetContext(ctx)
12296	req.ApplyOptions(opts...)
12297	return out, req.Send()
12298}
12299
12300const opPutInventory = "PutInventory"
12301
12302// PutInventoryRequest generates a "aws/request.Request" representing the
12303// client's request for the PutInventory operation. The "output" return
12304// value will be populated with the request's response once the request completes
12305// successfully.
12306//
12307// Use "Send" method on the returned Request to send the API call to the service.
12308// the "output" return value is not valid until after Send returns without error.
12309//
12310// See PutInventory for more information on using the PutInventory
12311// API call, and error handling.
12312//
12313// This method is useful when you want to inject custom logic or configuration
12314// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12315//
12316//
12317//    // Example sending a request using the PutInventoryRequest method.
12318//    req, resp := client.PutInventoryRequest(params)
12319//
12320//    err := req.Send()
12321//    if err == nil { // resp is now filled
12322//        fmt.Println(resp)
12323//    }
12324//
12325// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutInventory
12326func (c *SSM) PutInventoryRequest(input *PutInventoryInput) (req *request.Request, output *PutInventoryOutput) {
12327	op := &request.Operation{
12328		Name:       opPutInventory,
12329		HTTPMethod: "POST",
12330		HTTPPath:   "/",
12331	}
12332
12333	if input == nil {
12334		input = &PutInventoryInput{}
12335	}
12336
12337	output = &PutInventoryOutput{}
12338	req = c.newRequest(op, input, output)
12339	return
12340}
12341
12342// PutInventory API operation for Amazon Simple Systems Manager (SSM).
12343//
12344// Bulk update custom inventory items on one more instance. The request adds
12345// an inventory item, if it doesn't already exist, or updates an inventory item,
12346// if it does exist.
12347//
12348// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12349// with awserr.Error's Code and Message methods to get detailed information about
12350// the error.
12351//
12352// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12353// API operation PutInventory for usage and error information.
12354//
12355// Returned Error Types:
12356//   * InternalServerError
12357//   An error occurred on the server side.
12358//
12359//   * InvalidInstanceId
12360//   The following problems can cause this exception:
12361//
12362//      * You don't have permission to access the instance.
12363//
12364//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
12365//      Verify that SSM Agent is running.
12366//
12367//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
12368//      Agent.
12369//
12370//      * The instance isn't in valid state. Valid states are: Running, Pending,
12371//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
12372//
12373//   * InvalidTypeNameException
12374//   The parameter type name isn't valid.
12375//
12376//   * InvalidItemContentException
12377//   One or more content items isn't valid.
12378//
12379//   * TotalSizeLimitExceededException
12380//   The size of inventory data has exceeded the total size limit for the resource.
12381//
12382//   * ItemSizeLimitExceededException
12383//   The inventory item size has exceeded the size limit.
12384//
12385//   * ItemContentMismatchException
12386//   The inventory item has invalid content.
12387//
12388//   * CustomSchemaCountLimitExceededException
12389//   You have exceeded the limit for custom schemas. Delete one or more custom
12390//   schemas and try again.
12391//
12392//   * UnsupportedInventorySchemaVersionException
12393//   Inventory item type schema version has to match supported versions in the
12394//   service. Check output of GetInventorySchema to see the available schema version
12395//   for each type.
12396//
12397//   * UnsupportedInventoryItemContextException
12398//   The Context attribute that you specified for the InventoryItem isn't allowed
12399//   for this inventory type. You can only use the Context attribute with inventory
12400//   types like AWS:ComplianceItem.
12401//
12402//   * InvalidInventoryItemContextException
12403//   You specified invalid keys or values in the Context attribute for InventoryItem.
12404//   Verify the keys and values, and try again.
12405//
12406//   * SubTypeCountLimitExceededException
12407//   The sub-type count exceeded the limit for the inventory type.
12408//
12409// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutInventory
12410func (c *SSM) PutInventory(input *PutInventoryInput) (*PutInventoryOutput, error) {
12411	req, out := c.PutInventoryRequest(input)
12412	return out, req.Send()
12413}
12414
12415// PutInventoryWithContext is the same as PutInventory with the addition of
12416// the ability to pass a context and additional request options.
12417//
12418// See PutInventory for details on how to use this API operation.
12419//
12420// The context must be non-nil and will be used for request cancellation. If
12421// the context is nil a panic will occur. In the future the SDK may create
12422// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12423// for more information on using Contexts.
12424func (c *SSM) PutInventoryWithContext(ctx aws.Context, input *PutInventoryInput, opts ...request.Option) (*PutInventoryOutput, error) {
12425	req, out := c.PutInventoryRequest(input)
12426	req.SetContext(ctx)
12427	req.ApplyOptions(opts...)
12428	return out, req.Send()
12429}
12430
12431const opPutParameter = "PutParameter"
12432
12433// PutParameterRequest generates a "aws/request.Request" representing the
12434// client's request for the PutParameter operation. The "output" return
12435// value will be populated with the request's response once the request completes
12436// successfully.
12437//
12438// Use "Send" method on the returned Request to send the API call to the service.
12439// the "output" return value is not valid until after Send returns without error.
12440//
12441// See PutParameter for more information on using the PutParameter
12442// API call, and error handling.
12443//
12444// This method is useful when you want to inject custom logic or configuration
12445// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12446//
12447//
12448//    // Example sending a request using the PutParameterRequest method.
12449//    req, resp := client.PutParameterRequest(params)
12450//
12451//    err := req.Send()
12452//    if err == nil { // resp is now filled
12453//        fmt.Println(resp)
12454//    }
12455//
12456// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutParameter
12457func (c *SSM) PutParameterRequest(input *PutParameterInput) (req *request.Request, output *PutParameterOutput) {
12458	op := &request.Operation{
12459		Name:       opPutParameter,
12460		HTTPMethod: "POST",
12461		HTTPPath:   "/",
12462	}
12463
12464	if input == nil {
12465		input = &PutParameterInput{}
12466	}
12467
12468	output = &PutParameterOutput{}
12469	req = c.newRequest(op, input, output)
12470	return
12471}
12472
12473// PutParameter API operation for Amazon Simple Systems Manager (SSM).
12474//
12475// Add a parameter to the system.
12476//
12477// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12478// with awserr.Error's Code and Message methods to get detailed information about
12479// the error.
12480//
12481// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12482// API operation PutParameter for usage and error information.
12483//
12484// Returned Error Types:
12485//   * InternalServerError
12486//   An error occurred on the server side.
12487//
12488//   * InvalidKeyId
12489//   The query key ID isn't valid.
12490//
12491//   * ParameterLimitExceeded
12492//   You have exceeded the number of parameters for this Amazon Web Services account.
12493//   Delete one or more parameters and try again.
12494//
12495//   * TooManyUpdates
12496//   There are concurrent updates for a resource that supports one update at a
12497//   time.
12498//
12499//   * ParameterAlreadyExists
12500//   The parameter already exists. You can't create duplicate parameters.
12501//
12502//   * HierarchyLevelLimitExceededException
12503//   A hierarchy can have a maximum of 15 levels. For more information, see Requirements
12504//   and constraints for parameter names (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html)
12505//   in the Amazon Web Services Systems Manager User Guide.
12506//
12507//   * HierarchyTypeMismatchException
12508//   Parameter Store doesn't support changing a parameter type in a hierarchy.
12509//   For example, you can't change a parameter from a String type to a SecureString
12510//   type. You must create a new, unique parameter.
12511//
12512//   * InvalidAllowedPatternException
12513//   The request doesn't meet the regular expression requirement.
12514//
12515//   * ParameterMaxVersionLimitExceeded
12516//   Parameter Store retains the 100 most recently created versions of a parameter.
12517//   After this number of versions has been created, Parameter Store deletes the
12518//   oldest version when a new one is created. However, if the oldest version
12519//   has a label attached to it, Parameter Store won't delete the version and
12520//   instead presents this error message:
12521//
12522//   An error occurred (ParameterMaxVersionLimitExceeded) when calling the PutParameter
12523//   operation: You attempted to create a new version of parameter-name by calling
12524//   the PutParameter API with the overwrite flag. Version version-number, the
12525//   oldest version, can't be deleted because it has a label associated with it.
12526//   Move the label to another version of the parameter, and try again.
12527//
12528//   This safeguard is to prevent parameter versions with mission critical labels
12529//   assigned to them from being deleted. To continue creating new parameters,
12530//   first move the label from the oldest version of the parameter to a newer
12531//   one for use in your operations. For information about moving parameter labels,
12532//   see Move a parameter label (console) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-console-move)
12533//   or Move a parameter label (CLI) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-cli-move)
12534//   in the Amazon Web Services Systems Manager User Guide.
12535//
12536//   * ParameterPatternMismatchException
12537//   The parameter name isn't valid.
12538//
12539//   * UnsupportedParameterType
12540//   The parameter type isn't supported.
12541//
12542//   * PoliciesLimitExceededException
12543//   You specified more than the maximum number of allowed policies for the parameter.
12544//   The maximum is 10.
12545//
12546//   * InvalidPolicyTypeException
12547//   The policy type isn't supported. Parameter Store supports the following policy
12548//   types: Expiration, ExpirationNotification, and NoChangeNotification.
12549//
12550//   * InvalidPolicyAttributeException
12551//   A policy attribute or its value is invalid.
12552//
12553//   * IncompatiblePolicyException
12554//   There is a conflict in the policies specified for this parameter. You can't,
12555//   for example, specify two Expiration policies for a parameter. Review your
12556//   policies, and try again.
12557//
12558// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/PutParameter
12559func (c *SSM) PutParameter(input *PutParameterInput) (*PutParameterOutput, error) {
12560	req, out := c.PutParameterRequest(input)
12561	return out, req.Send()
12562}
12563
12564// PutParameterWithContext is the same as PutParameter with the addition of
12565// the ability to pass a context and additional request options.
12566//
12567// See PutParameter for details on how to use this API operation.
12568//
12569// The context must be non-nil and will be used for request cancellation. If
12570// the context is nil a panic will occur. In the future the SDK may create
12571// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12572// for more information on using Contexts.
12573func (c *SSM) PutParameterWithContext(ctx aws.Context, input *PutParameterInput, opts ...request.Option) (*PutParameterOutput, error) {
12574	req, out := c.PutParameterRequest(input)
12575	req.SetContext(ctx)
12576	req.ApplyOptions(opts...)
12577	return out, req.Send()
12578}
12579
12580const opRegisterDefaultPatchBaseline = "RegisterDefaultPatchBaseline"
12581
12582// RegisterDefaultPatchBaselineRequest generates a "aws/request.Request" representing the
12583// client's request for the RegisterDefaultPatchBaseline operation. The "output" return
12584// value will be populated with the request's response once the request completes
12585// successfully.
12586//
12587// Use "Send" method on the returned Request to send the API call to the service.
12588// the "output" return value is not valid until after Send returns without error.
12589//
12590// See RegisterDefaultPatchBaseline for more information on using the RegisterDefaultPatchBaseline
12591// API call, and error handling.
12592//
12593// This method is useful when you want to inject custom logic or configuration
12594// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12595//
12596//
12597//    // Example sending a request using the RegisterDefaultPatchBaselineRequest method.
12598//    req, resp := client.RegisterDefaultPatchBaselineRequest(params)
12599//
12600//    err := req.Send()
12601//    if err == nil { // resp is now filled
12602//        fmt.Println(resp)
12603//    }
12604//
12605// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterDefaultPatchBaseline
12606func (c *SSM) RegisterDefaultPatchBaselineRequest(input *RegisterDefaultPatchBaselineInput) (req *request.Request, output *RegisterDefaultPatchBaselineOutput) {
12607	op := &request.Operation{
12608		Name:       opRegisterDefaultPatchBaseline,
12609		HTTPMethod: "POST",
12610		HTTPPath:   "/",
12611	}
12612
12613	if input == nil {
12614		input = &RegisterDefaultPatchBaselineInput{}
12615	}
12616
12617	output = &RegisterDefaultPatchBaselineOutput{}
12618	req = c.newRequest(op, input, output)
12619	return
12620}
12621
12622// RegisterDefaultPatchBaseline API operation for Amazon Simple Systems Manager (SSM).
12623//
12624// Defines the default patch baseline for the relevant operating system.
12625//
12626// To reset the Amazon Web Services-predefined patch baseline as the default,
12627// specify the full patch baseline Amazon Resource Name (ARN) as the baseline
12628// ID value. For example, for CentOS, specify arn:aws:ssm:us-east-2:733109147000:patchbaseline/pb-0574b43a65ea646ed
12629// instead of pb-0574b43a65ea646ed.
12630//
12631// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12632// with awserr.Error's Code and Message methods to get detailed information about
12633// the error.
12634//
12635// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12636// API operation RegisterDefaultPatchBaseline for usage and error information.
12637//
12638// Returned Error Types:
12639//   * InvalidResourceId
12640//   The resource ID isn't valid. Verify that you entered the correct ID and try
12641//   again.
12642//
12643//   * DoesNotExistException
12644//   Error returned when the ID specified for a resource, such as a maintenance
12645//   window or patch baseline, doesn't exist.
12646//
12647//   For information about resource quotas in Amazon Web Services Systems Manager,
12648//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
12649//   in the Amazon Web Services General Reference.
12650//
12651//   * InternalServerError
12652//   An error occurred on the server side.
12653//
12654// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterDefaultPatchBaseline
12655func (c *SSM) RegisterDefaultPatchBaseline(input *RegisterDefaultPatchBaselineInput) (*RegisterDefaultPatchBaselineOutput, error) {
12656	req, out := c.RegisterDefaultPatchBaselineRequest(input)
12657	return out, req.Send()
12658}
12659
12660// RegisterDefaultPatchBaselineWithContext is the same as RegisterDefaultPatchBaseline with the addition of
12661// the ability to pass a context and additional request options.
12662//
12663// See RegisterDefaultPatchBaseline for details on how to use this API operation.
12664//
12665// The context must be non-nil and will be used for request cancellation. If
12666// the context is nil a panic will occur. In the future the SDK may create
12667// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12668// for more information on using Contexts.
12669func (c *SSM) RegisterDefaultPatchBaselineWithContext(ctx aws.Context, input *RegisterDefaultPatchBaselineInput, opts ...request.Option) (*RegisterDefaultPatchBaselineOutput, error) {
12670	req, out := c.RegisterDefaultPatchBaselineRequest(input)
12671	req.SetContext(ctx)
12672	req.ApplyOptions(opts...)
12673	return out, req.Send()
12674}
12675
12676const opRegisterPatchBaselineForPatchGroup = "RegisterPatchBaselineForPatchGroup"
12677
12678// RegisterPatchBaselineForPatchGroupRequest generates a "aws/request.Request" representing the
12679// client's request for the RegisterPatchBaselineForPatchGroup operation. The "output" return
12680// value will be populated with the request's response once the request completes
12681// successfully.
12682//
12683// Use "Send" method on the returned Request to send the API call to the service.
12684// the "output" return value is not valid until after Send returns without error.
12685//
12686// See RegisterPatchBaselineForPatchGroup for more information on using the RegisterPatchBaselineForPatchGroup
12687// API call, and error handling.
12688//
12689// This method is useful when you want to inject custom logic or configuration
12690// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12691//
12692//
12693//    // Example sending a request using the RegisterPatchBaselineForPatchGroupRequest method.
12694//    req, resp := client.RegisterPatchBaselineForPatchGroupRequest(params)
12695//
12696//    err := req.Send()
12697//    if err == nil { // resp is now filled
12698//        fmt.Println(resp)
12699//    }
12700//
12701// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterPatchBaselineForPatchGroup
12702func (c *SSM) RegisterPatchBaselineForPatchGroupRequest(input *RegisterPatchBaselineForPatchGroupInput) (req *request.Request, output *RegisterPatchBaselineForPatchGroupOutput) {
12703	op := &request.Operation{
12704		Name:       opRegisterPatchBaselineForPatchGroup,
12705		HTTPMethod: "POST",
12706		HTTPPath:   "/",
12707	}
12708
12709	if input == nil {
12710		input = &RegisterPatchBaselineForPatchGroupInput{}
12711	}
12712
12713	output = &RegisterPatchBaselineForPatchGroupOutput{}
12714	req = c.newRequest(op, input, output)
12715	return
12716}
12717
12718// RegisterPatchBaselineForPatchGroup API operation for Amazon Simple Systems Manager (SSM).
12719//
12720// Registers a patch baseline for a patch group.
12721//
12722// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12723// with awserr.Error's Code and Message methods to get detailed information about
12724// the error.
12725//
12726// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12727// API operation RegisterPatchBaselineForPatchGroup for usage and error information.
12728//
12729// Returned Error Types:
12730//   * AlreadyExistsException
12731//   Error returned if an attempt is made to register a patch group with a patch
12732//   baseline that is already registered with a different patch baseline.
12733//
12734//   * DoesNotExistException
12735//   Error returned when the ID specified for a resource, such as a maintenance
12736//   window or patch baseline, doesn't exist.
12737//
12738//   For information about resource quotas in Amazon Web Services Systems Manager,
12739//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
12740//   in the Amazon Web Services General Reference.
12741//
12742//   * InvalidResourceId
12743//   The resource ID isn't valid. Verify that you entered the correct ID and try
12744//   again.
12745//
12746//   * ResourceLimitExceededException
12747//   Error returned when the caller has exceeded the default resource quotas.
12748//   For example, too many maintenance windows or patch baselines have been created.
12749//
12750//   For information about resource quotas in Systems Manager, see Systems Manager
12751//   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
12752//   in the Amazon Web Services General Reference.
12753//
12754//   * InternalServerError
12755//   An error occurred on the server side.
12756//
12757// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterPatchBaselineForPatchGroup
12758func (c *SSM) RegisterPatchBaselineForPatchGroup(input *RegisterPatchBaselineForPatchGroupInput) (*RegisterPatchBaselineForPatchGroupOutput, error) {
12759	req, out := c.RegisterPatchBaselineForPatchGroupRequest(input)
12760	return out, req.Send()
12761}
12762
12763// RegisterPatchBaselineForPatchGroupWithContext is the same as RegisterPatchBaselineForPatchGroup with the addition of
12764// the ability to pass a context and additional request options.
12765//
12766// See RegisterPatchBaselineForPatchGroup for details on how to use this API operation.
12767//
12768// The context must be non-nil and will be used for request cancellation. If
12769// the context is nil a panic will occur. In the future the SDK may create
12770// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12771// for more information on using Contexts.
12772func (c *SSM) RegisterPatchBaselineForPatchGroupWithContext(ctx aws.Context, input *RegisterPatchBaselineForPatchGroupInput, opts ...request.Option) (*RegisterPatchBaselineForPatchGroupOutput, error) {
12773	req, out := c.RegisterPatchBaselineForPatchGroupRequest(input)
12774	req.SetContext(ctx)
12775	req.ApplyOptions(opts...)
12776	return out, req.Send()
12777}
12778
12779const opRegisterTargetWithMaintenanceWindow = "RegisterTargetWithMaintenanceWindow"
12780
12781// RegisterTargetWithMaintenanceWindowRequest generates a "aws/request.Request" representing the
12782// client's request for the RegisterTargetWithMaintenanceWindow operation. The "output" return
12783// value will be populated with the request's response once the request completes
12784// successfully.
12785//
12786// Use "Send" method on the returned Request to send the API call to the service.
12787// the "output" return value is not valid until after Send returns without error.
12788//
12789// See RegisterTargetWithMaintenanceWindow for more information on using the RegisterTargetWithMaintenanceWindow
12790// API call, and error handling.
12791//
12792// This method is useful when you want to inject custom logic or configuration
12793// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12794//
12795//
12796//    // Example sending a request using the RegisterTargetWithMaintenanceWindowRequest method.
12797//    req, resp := client.RegisterTargetWithMaintenanceWindowRequest(params)
12798//
12799//    err := req.Send()
12800//    if err == nil { // resp is now filled
12801//        fmt.Println(resp)
12802//    }
12803//
12804// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTargetWithMaintenanceWindow
12805func (c *SSM) RegisterTargetWithMaintenanceWindowRequest(input *RegisterTargetWithMaintenanceWindowInput) (req *request.Request, output *RegisterTargetWithMaintenanceWindowOutput) {
12806	op := &request.Operation{
12807		Name:       opRegisterTargetWithMaintenanceWindow,
12808		HTTPMethod: "POST",
12809		HTTPPath:   "/",
12810	}
12811
12812	if input == nil {
12813		input = &RegisterTargetWithMaintenanceWindowInput{}
12814	}
12815
12816	output = &RegisterTargetWithMaintenanceWindowOutput{}
12817	req = c.newRequest(op, input, output)
12818	return
12819}
12820
12821// RegisterTargetWithMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
12822//
12823// Registers a target with a maintenance window.
12824//
12825// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12826// with awserr.Error's Code and Message methods to get detailed information about
12827// the error.
12828//
12829// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12830// API operation RegisterTargetWithMaintenanceWindow for usage and error information.
12831//
12832// Returned Error Types:
12833//   * IdempotentParameterMismatch
12834//   Error returned when an idempotent operation is retried and the parameters
12835//   don't match the original call to the API with the same idempotency token.
12836//
12837//   * DoesNotExistException
12838//   Error returned when the ID specified for a resource, such as a maintenance
12839//   window or patch baseline, doesn't exist.
12840//
12841//   For information about resource quotas in Amazon Web Services Systems Manager,
12842//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
12843//   in the Amazon Web Services General Reference.
12844//
12845//   * ResourceLimitExceededException
12846//   Error returned when the caller has exceeded the default resource quotas.
12847//   For example, too many maintenance windows or patch baselines have been created.
12848//
12849//   For information about resource quotas in Systems Manager, see Systems Manager
12850//   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
12851//   in the Amazon Web Services General Reference.
12852//
12853//   * InternalServerError
12854//   An error occurred on the server side.
12855//
12856// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTargetWithMaintenanceWindow
12857func (c *SSM) RegisterTargetWithMaintenanceWindow(input *RegisterTargetWithMaintenanceWindowInput) (*RegisterTargetWithMaintenanceWindowOutput, error) {
12858	req, out := c.RegisterTargetWithMaintenanceWindowRequest(input)
12859	return out, req.Send()
12860}
12861
12862// RegisterTargetWithMaintenanceWindowWithContext is the same as RegisterTargetWithMaintenanceWindow with the addition of
12863// the ability to pass a context and additional request options.
12864//
12865// See RegisterTargetWithMaintenanceWindow for details on how to use this API operation.
12866//
12867// The context must be non-nil and will be used for request cancellation. If
12868// the context is nil a panic will occur. In the future the SDK may create
12869// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12870// for more information on using Contexts.
12871func (c *SSM) RegisterTargetWithMaintenanceWindowWithContext(ctx aws.Context, input *RegisterTargetWithMaintenanceWindowInput, opts ...request.Option) (*RegisterTargetWithMaintenanceWindowOutput, error) {
12872	req, out := c.RegisterTargetWithMaintenanceWindowRequest(input)
12873	req.SetContext(ctx)
12874	req.ApplyOptions(opts...)
12875	return out, req.Send()
12876}
12877
12878const opRegisterTaskWithMaintenanceWindow = "RegisterTaskWithMaintenanceWindow"
12879
12880// RegisterTaskWithMaintenanceWindowRequest generates a "aws/request.Request" representing the
12881// client's request for the RegisterTaskWithMaintenanceWindow operation. The "output" return
12882// value will be populated with the request's response once the request completes
12883// successfully.
12884//
12885// Use "Send" method on the returned Request to send the API call to the service.
12886// the "output" return value is not valid until after Send returns without error.
12887//
12888// See RegisterTaskWithMaintenanceWindow for more information on using the RegisterTaskWithMaintenanceWindow
12889// API call, and error handling.
12890//
12891// This method is useful when you want to inject custom logic or configuration
12892// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12893//
12894//
12895//    // Example sending a request using the RegisterTaskWithMaintenanceWindowRequest method.
12896//    req, resp := client.RegisterTaskWithMaintenanceWindowRequest(params)
12897//
12898//    err := req.Send()
12899//    if err == nil { // resp is now filled
12900//        fmt.Println(resp)
12901//    }
12902//
12903// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTaskWithMaintenanceWindow
12904func (c *SSM) RegisterTaskWithMaintenanceWindowRequest(input *RegisterTaskWithMaintenanceWindowInput) (req *request.Request, output *RegisterTaskWithMaintenanceWindowOutput) {
12905	op := &request.Operation{
12906		Name:       opRegisterTaskWithMaintenanceWindow,
12907		HTTPMethod: "POST",
12908		HTTPPath:   "/",
12909	}
12910
12911	if input == nil {
12912		input = &RegisterTaskWithMaintenanceWindowInput{}
12913	}
12914
12915	output = &RegisterTaskWithMaintenanceWindowOutput{}
12916	req = c.newRequest(op, input, output)
12917	return
12918}
12919
12920// RegisterTaskWithMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
12921//
12922// Adds a new task to a maintenance window.
12923//
12924// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
12925// with awserr.Error's Code and Message methods to get detailed information about
12926// the error.
12927//
12928// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
12929// API operation RegisterTaskWithMaintenanceWindow for usage and error information.
12930//
12931// Returned Error Types:
12932//   * IdempotentParameterMismatch
12933//   Error returned when an idempotent operation is retried and the parameters
12934//   don't match the original call to the API with the same idempotency token.
12935//
12936//   * DoesNotExistException
12937//   Error returned when the ID specified for a resource, such as a maintenance
12938//   window or patch baseline, doesn't exist.
12939//
12940//   For information about resource quotas in Amazon Web Services Systems Manager,
12941//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
12942//   in the Amazon Web Services General Reference.
12943//
12944//   * ResourceLimitExceededException
12945//   Error returned when the caller has exceeded the default resource quotas.
12946//   For example, too many maintenance windows or patch baselines have been created.
12947//
12948//   For information about resource quotas in Systems Manager, see Systems Manager
12949//   service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
12950//   in the Amazon Web Services General Reference.
12951//
12952//   * FeatureNotAvailableException
12953//   You attempted to register a LAMBDA or STEP_FUNCTIONS task in a region where
12954//   the corresponding service isn't available.
12955//
12956//   * InternalServerError
12957//   An error occurred on the server side.
12958//
12959// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RegisterTaskWithMaintenanceWindow
12960func (c *SSM) RegisterTaskWithMaintenanceWindow(input *RegisterTaskWithMaintenanceWindowInput) (*RegisterTaskWithMaintenanceWindowOutput, error) {
12961	req, out := c.RegisterTaskWithMaintenanceWindowRequest(input)
12962	return out, req.Send()
12963}
12964
12965// RegisterTaskWithMaintenanceWindowWithContext is the same as RegisterTaskWithMaintenanceWindow with the addition of
12966// the ability to pass a context and additional request options.
12967//
12968// See RegisterTaskWithMaintenanceWindow for details on how to use this API operation.
12969//
12970// The context must be non-nil and will be used for request cancellation. If
12971// the context is nil a panic will occur. In the future the SDK may create
12972// sub-contexts for http.Requests. See https://golang.org/pkg/context/
12973// for more information on using Contexts.
12974func (c *SSM) RegisterTaskWithMaintenanceWindowWithContext(ctx aws.Context, input *RegisterTaskWithMaintenanceWindowInput, opts ...request.Option) (*RegisterTaskWithMaintenanceWindowOutput, error) {
12975	req, out := c.RegisterTaskWithMaintenanceWindowRequest(input)
12976	req.SetContext(ctx)
12977	req.ApplyOptions(opts...)
12978	return out, req.Send()
12979}
12980
12981const opRemoveTagsFromResource = "RemoveTagsFromResource"
12982
12983// RemoveTagsFromResourceRequest generates a "aws/request.Request" representing the
12984// client's request for the RemoveTagsFromResource operation. The "output" return
12985// value will be populated with the request's response once the request completes
12986// successfully.
12987//
12988// Use "Send" method on the returned Request to send the API call to the service.
12989// the "output" return value is not valid until after Send returns without error.
12990//
12991// See RemoveTagsFromResource for more information on using the RemoveTagsFromResource
12992// API call, and error handling.
12993//
12994// This method is useful when you want to inject custom logic or configuration
12995// into the SDK's request lifecycle. Such as custom headers, or retry logic.
12996//
12997//
12998//    // Example sending a request using the RemoveTagsFromResourceRequest method.
12999//    req, resp := client.RemoveTagsFromResourceRequest(params)
13000//
13001//    err := req.Send()
13002//    if err == nil { // resp is now filled
13003//        fmt.Println(resp)
13004//    }
13005//
13006// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RemoveTagsFromResource
13007func (c *SSM) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput) (req *request.Request, output *RemoveTagsFromResourceOutput) {
13008	op := &request.Operation{
13009		Name:       opRemoveTagsFromResource,
13010		HTTPMethod: "POST",
13011		HTTPPath:   "/",
13012	}
13013
13014	if input == nil {
13015		input = &RemoveTagsFromResourceInput{}
13016	}
13017
13018	output = &RemoveTagsFromResourceOutput{}
13019	req = c.newRequest(op, input, output)
13020	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
13021	return
13022}
13023
13024// RemoveTagsFromResource API operation for Amazon Simple Systems Manager (SSM).
13025//
13026// Removes tag keys from the specified resource.
13027//
13028// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13029// with awserr.Error's Code and Message methods to get detailed information about
13030// the error.
13031//
13032// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13033// API operation RemoveTagsFromResource for usage and error information.
13034//
13035// Returned Error Types:
13036//   * InvalidResourceType
13037//   The resource type isn't valid. For example, if you are attempting to tag
13038//   an instance, the instance must be a registered, managed instance.
13039//
13040//   * InvalidResourceId
13041//   The resource ID isn't valid. Verify that you entered the correct ID and try
13042//   again.
13043//
13044//   * InternalServerError
13045//   An error occurred on the server side.
13046//
13047//   * TooManyUpdates
13048//   There are concurrent updates for a resource that supports one update at a
13049//   time.
13050//
13051// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/RemoveTagsFromResource
13052func (c *SSM) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) {
13053	req, out := c.RemoveTagsFromResourceRequest(input)
13054	return out, req.Send()
13055}
13056
13057// RemoveTagsFromResourceWithContext is the same as RemoveTagsFromResource with the addition of
13058// the ability to pass a context and additional request options.
13059//
13060// See RemoveTagsFromResource for details on how to use this API operation.
13061//
13062// The context must be non-nil and will be used for request cancellation. If
13063// the context is nil a panic will occur. In the future the SDK may create
13064// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13065// for more information on using Contexts.
13066func (c *SSM) RemoveTagsFromResourceWithContext(ctx aws.Context, input *RemoveTagsFromResourceInput, opts ...request.Option) (*RemoveTagsFromResourceOutput, error) {
13067	req, out := c.RemoveTagsFromResourceRequest(input)
13068	req.SetContext(ctx)
13069	req.ApplyOptions(opts...)
13070	return out, req.Send()
13071}
13072
13073const opResetServiceSetting = "ResetServiceSetting"
13074
13075// ResetServiceSettingRequest generates a "aws/request.Request" representing the
13076// client's request for the ResetServiceSetting operation. The "output" return
13077// value will be populated with the request's response once the request completes
13078// successfully.
13079//
13080// Use "Send" method on the returned Request to send the API call to the service.
13081// the "output" return value is not valid until after Send returns without error.
13082//
13083// See ResetServiceSetting for more information on using the ResetServiceSetting
13084// API call, and error handling.
13085//
13086// This method is useful when you want to inject custom logic or configuration
13087// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13088//
13089//
13090//    // Example sending a request using the ResetServiceSettingRequest method.
13091//    req, resp := client.ResetServiceSettingRequest(params)
13092//
13093//    err := req.Send()
13094//    if err == nil { // resp is now filled
13095//        fmt.Println(resp)
13096//    }
13097//
13098// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResetServiceSetting
13099func (c *SSM) ResetServiceSettingRequest(input *ResetServiceSettingInput) (req *request.Request, output *ResetServiceSettingOutput) {
13100	op := &request.Operation{
13101		Name:       opResetServiceSetting,
13102		HTTPMethod: "POST",
13103		HTTPPath:   "/",
13104	}
13105
13106	if input == nil {
13107		input = &ResetServiceSettingInput{}
13108	}
13109
13110	output = &ResetServiceSettingOutput{}
13111	req = c.newRequest(op, input, output)
13112	return
13113}
13114
13115// ResetServiceSetting API operation for Amazon Simple Systems Manager (SSM).
13116//
13117// ServiceSetting is an account-level setting for an Amazon Web Services service.
13118// This setting defines how a user interacts with or uses a service or a feature
13119// of a service. For example, if an Amazon Web Services service charges money
13120// to the account based on feature or service usage, then the Amazon Web Services
13121// service team might create a default setting of "false". This means the user
13122// can't use this feature unless they change the setting to "true" and intentionally
13123// opt in for a paid feature.
13124//
13125// Services map a SettingId object to a setting value. Amazon Web Services services
13126// teams define the default value for a SettingId. You can't create a new SettingId,
13127// but you can overwrite the default value if you have the ssm:UpdateServiceSetting
13128// permission for the setting. Use the GetServiceSetting API operation to view
13129// the current value. Use the UpdateServiceSetting API operation to change the
13130// default setting.
13131//
13132// Reset the service setting for the account to the default value as provisioned
13133// by the Amazon Web Services service team.
13134//
13135// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13136// with awserr.Error's Code and Message methods to get detailed information about
13137// the error.
13138//
13139// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13140// API operation ResetServiceSetting for usage and error information.
13141//
13142// Returned Error Types:
13143//   * InternalServerError
13144//   An error occurred on the server side.
13145//
13146//   * ServiceSettingNotFound
13147//   The specified service setting wasn't found. Either the service name or the
13148//   setting hasn't been provisioned by the Amazon Web Services service team.
13149//
13150//   * TooManyUpdates
13151//   There are concurrent updates for a resource that supports one update at a
13152//   time.
13153//
13154// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResetServiceSetting
13155func (c *SSM) ResetServiceSetting(input *ResetServiceSettingInput) (*ResetServiceSettingOutput, error) {
13156	req, out := c.ResetServiceSettingRequest(input)
13157	return out, req.Send()
13158}
13159
13160// ResetServiceSettingWithContext is the same as ResetServiceSetting with the addition of
13161// the ability to pass a context and additional request options.
13162//
13163// See ResetServiceSetting for details on how to use this API operation.
13164//
13165// The context must be non-nil and will be used for request cancellation. If
13166// the context is nil a panic will occur. In the future the SDK may create
13167// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13168// for more information on using Contexts.
13169func (c *SSM) ResetServiceSettingWithContext(ctx aws.Context, input *ResetServiceSettingInput, opts ...request.Option) (*ResetServiceSettingOutput, error) {
13170	req, out := c.ResetServiceSettingRequest(input)
13171	req.SetContext(ctx)
13172	req.ApplyOptions(opts...)
13173	return out, req.Send()
13174}
13175
13176const opResumeSession = "ResumeSession"
13177
13178// ResumeSessionRequest generates a "aws/request.Request" representing the
13179// client's request for the ResumeSession operation. The "output" return
13180// value will be populated with the request's response once the request completes
13181// successfully.
13182//
13183// Use "Send" method on the returned Request to send the API call to the service.
13184// the "output" return value is not valid until after Send returns without error.
13185//
13186// See ResumeSession for more information on using the ResumeSession
13187// API call, and error handling.
13188//
13189// This method is useful when you want to inject custom logic or configuration
13190// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13191//
13192//
13193//    // Example sending a request using the ResumeSessionRequest method.
13194//    req, resp := client.ResumeSessionRequest(params)
13195//
13196//    err := req.Send()
13197//    if err == nil { // resp is now filled
13198//        fmt.Println(resp)
13199//    }
13200//
13201// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResumeSession
13202func (c *SSM) ResumeSessionRequest(input *ResumeSessionInput) (req *request.Request, output *ResumeSessionOutput) {
13203	op := &request.Operation{
13204		Name:       opResumeSession,
13205		HTTPMethod: "POST",
13206		HTTPPath:   "/",
13207	}
13208
13209	if input == nil {
13210		input = &ResumeSessionInput{}
13211	}
13212
13213	output = &ResumeSessionOutput{}
13214	req = c.newRequest(op, input, output)
13215	return
13216}
13217
13218// ResumeSession API operation for Amazon Simple Systems Manager (SSM).
13219//
13220// Reconnects a session to an instance after it has been disconnected. Connections
13221// can be resumed for disconnected sessions, but not terminated sessions.
13222//
13223// This command is primarily for use by client machines to automatically reconnect
13224// during intermittent network issues. It isn't intended for any other use.
13225//
13226// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13227// with awserr.Error's Code and Message methods to get detailed information about
13228// the error.
13229//
13230// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13231// API operation ResumeSession for usage and error information.
13232//
13233// Returned Error Types:
13234//   * DoesNotExistException
13235//   Error returned when the ID specified for a resource, such as a maintenance
13236//   window or patch baseline, doesn't exist.
13237//
13238//   For information about resource quotas in Amazon Web Services Systems Manager,
13239//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
13240//   in the Amazon Web Services General Reference.
13241//
13242//   * InternalServerError
13243//   An error occurred on the server side.
13244//
13245// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ResumeSession
13246func (c *SSM) ResumeSession(input *ResumeSessionInput) (*ResumeSessionOutput, error) {
13247	req, out := c.ResumeSessionRequest(input)
13248	return out, req.Send()
13249}
13250
13251// ResumeSessionWithContext is the same as ResumeSession with the addition of
13252// the ability to pass a context and additional request options.
13253//
13254// See ResumeSession for details on how to use this API operation.
13255//
13256// The context must be non-nil and will be used for request cancellation. If
13257// the context is nil a panic will occur. In the future the SDK may create
13258// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13259// for more information on using Contexts.
13260func (c *SSM) ResumeSessionWithContext(ctx aws.Context, input *ResumeSessionInput, opts ...request.Option) (*ResumeSessionOutput, error) {
13261	req, out := c.ResumeSessionRequest(input)
13262	req.SetContext(ctx)
13263	req.ApplyOptions(opts...)
13264	return out, req.Send()
13265}
13266
13267const opSendAutomationSignal = "SendAutomationSignal"
13268
13269// SendAutomationSignalRequest generates a "aws/request.Request" representing the
13270// client's request for the SendAutomationSignal operation. The "output" return
13271// value will be populated with the request's response once the request completes
13272// successfully.
13273//
13274// Use "Send" method on the returned Request to send the API call to the service.
13275// the "output" return value is not valid until after Send returns without error.
13276//
13277// See SendAutomationSignal for more information on using the SendAutomationSignal
13278// API call, and error handling.
13279//
13280// This method is useful when you want to inject custom logic or configuration
13281// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13282//
13283//
13284//    // Example sending a request using the SendAutomationSignalRequest method.
13285//    req, resp := client.SendAutomationSignalRequest(params)
13286//
13287//    err := req.Send()
13288//    if err == nil { // resp is now filled
13289//        fmt.Println(resp)
13290//    }
13291//
13292// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendAutomationSignal
13293func (c *SSM) SendAutomationSignalRequest(input *SendAutomationSignalInput) (req *request.Request, output *SendAutomationSignalOutput) {
13294	op := &request.Operation{
13295		Name:       opSendAutomationSignal,
13296		HTTPMethod: "POST",
13297		HTTPPath:   "/",
13298	}
13299
13300	if input == nil {
13301		input = &SendAutomationSignalInput{}
13302	}
13303
13304	output = &SendAutomationSignalOutput{}
13305	req = c.newRequest(op, input, output)
13306	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
13307	return
13308}
13309
13310// SendAutomationSignal API operation for Amazon Simple Systems Manager (SSM).
13311//
13312// Sends a signal to an Automation execution to change the current behavior
13313// or status of the execution.
13314//
13315// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13316// with awserr.Error's Code and Message methods to get detailed information about
13317// the error.
13318//
13319// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13320// API operation SendAutomationSignal for usage and error information.
13321//
13322// Returned Error Types:
13323//   * AutomationExecutionNotFoundException
13324//   There is no automation execution information for the requested automation
13325//   execution ID.
13326//
13327//   * AutomationStepNotFoundException
13328//   The specified step name and execution ID don't exist. Verify the information
13329//   and try again.
13330//
13331//   * InvalidAutomationSignalException
13332//   The signal isn't valid for the current Automation execution.
13333//
13334//   * InternalServerError
13335//   An error occurred on the server side.
13336//
13337// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendAutomationSignal
13338func (c *SSM) SendAutomationSignal(input *SendAutomationSignalInput) (*SendAutomationSignalOutput, error) {
13339	req, out := c.SendAutomationSignalRequest(input)
13340	return out, req.Send()
13341}
13342
13343// SendAutomationSignalWithContext is the same as SendAutomationSignal with the addition of
13344// the ability to pass a context and additional request options.
13345//
13346// See SendAutomationSignal for details on how to use this API operation.
13347//
13348// The context must be non-nil and will be used for request cancellation. If
13349// the context is nil a panic will occur. In the future the SDK may create
13350// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13351// for more information on using Contexts.
13352func (c *SSM) SendAutomationSignalWithContext(ctx aws.Context, input *SendAutomationSignalInput, opts ...request.Option) (*SendAutomationSignalOutput, error) {
13353	req, out := c.SendAutomationSignalRequest(input)
13354	req.SetContext(ctx)
13355	req.ApplyOptions(opts...)
13356	return out, req.Send()
13357}
13358
13359const opSendCommand = "SendCommand"
13360
13361// SendCommandRequest generates a "aws/request.Request" representing the
13362// client's request for the SendCommand operation. The "output" return
13363// value will be populated with the request's response once the request completes
13364// successfully.
13365//
13366// Use "Send" method on the returned Request to send the API call to the service.
13367// the "output" return value is not valid until after Send returns without error.
13368//
13369// See SendCommand for more information on using the SendCommand
13370// API call, and error handling.
13371//
13372// This method is useful when you want to inject custom logic or configuration
13373// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13374//
13375//
13376//    // Example sending a request using the SendCommandRequest method.
13377//    req, resp := client.SendCommandRequest(params)
13378//
13379//    err := req.Send()
13380//    if err == nil { // resp is now filled
13381//        fmt.Println(resp)
13382//    }
13383//
13384// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendCommand
13385func (c *SSM) SendCommandRequest(input *SendCommandInput) (req *request.Request, output *SendCommandOutput) {
13386	op := &request.Operation{
13387		Name:       opSendCommand,
13388		HTTPMethod: "POST",
13389		HTTPPath:   "/",
13390	}
13391
13392	if input == nil {
13393		input = &SendCommandInput{}
13394	}
13395
13396	output = &SendCommandOutput{}
13397	req = c.newRequest(op, input, output)
13398	return
13399}
13400
13401// SendCommand API operation for Amazon Simple Systems Manager (SSM).
13402//
13403// Runs commands on one or more managed instances.
13404//
13405// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13406// with awserr.Error's Code and Message methods to get detailed information about
13407// the error.
13408//
13409// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13410// API operation SendCommand for usage and error information.
13411//
13412// Returned Error Types:
13413//   * DuplicateInstanceId
13414//   You can't specify an instance ID in more than one association.
13415//
13416//   * InternalServerError
13417//   An error occurred on the server side.
13418//
13419//   * InvalidInstanceId
13420//   The following problems can cause this exception:
13421//
13422//      * You don't have permission to access the instance.
13423//
13424//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
13425//      Verify that SSM Agent is running.
13426//
13427//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
13428//      Agent.
13429//
13430//      * The instance isn't in valid state. Valid states are: Running, Pending,
13431//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
13432//
13433//   * InvalidDocument
13434//   The specified SSM document doesn't exist.
13435//
13436//   * InvalidDocumentVersion
13437//   The document version isn't valid or doesn't exist.
13438//
13439//   * InvalidOutputFolder
13440//   The S3 bucket doesn't exist.
13441//
13442//   * InvalidParameters
13443//   You must specify values for all required parameters in the Amazon Web Services
13444//   Systems Manager document (SSM document). You can only supply values to parameters
13445//   defined in the SSM document.
13446//
13447//   * UnsupportedPlatformType
13448//   The document doesn't support the platform type of the given instance ID(s).
13449//   For example, you sent an document for a Windows instance to a Linux instance.
13450//
13451//   * MaxDocumentSizeExceeded
13452//   The size limit of a document is 64 KB.
13453//
13454//   * InvalidRole
13455//   The role name can't contain invalid characters. Also verify that you specified
13456//   an IAM role for notifications that includes the required trust policy. For
13457//   information about configuring the IAM role for Run Command notifications,
13458//   see Configuring Amazon SNS Notifications for Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/rc-sns-notifications.html)
13459//   in the Amazon Web Services Systems Manager User Guide.
13460//
13461//   * InvalidNotificationConfig
13462//   One or more configuration items isn't valid. Verify that a valid Amazon Resource
13463//   Name (ARN) was provided for an Amazon Simple Notification Service topic.
13464//
13465// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/SendCommand
13466func (c *SSM) SendCommand(input *SendCommandInput) (*SendCommandOutput, error) {
13467	req, out := c.SendCommandRequest(input)
13468	return out, req.Send()
13469}
13470
13471// SendCommandWithContext is the same as SendCommand with the addition of
13472// the ability to pass a context and additional request options.
13473//
13474// See SendCommand for details on how to use this API operation.
13475//
13476// The context must be non-nil and will be used for request cancellation. If
13477// the context is nil a panic will occur. In the future the SDK may create
13478// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13479// for more information on using Contexts.
13480func (c *SSM) SendCommandWithContext(ctx aws.Context, input *SendCommandInput, opts ...request.Option) (*SendCommandOutput, error) {
13481	req, out := c.SendCommandRequest(input)
13482	req.SetContext(ctx)
13483	req.ApplyOptions(opts...)
13484	return out, req.Send()
13485}
13486
13487const opStartAssociationsOnce = "StartAssociationsOnce"
13488
13489// StartAssociationsOnceRequest generates a "aws/request.Request" representing the
13490// client's request for the StartAssociationsOnce operation. The "output" return
13491// value will be populated with the request's response once the request completes
13492// successfully.
13493//
13494// Use "Send" method on the returned Request to send the API call to the service.
13495// the "output" return value is not valid until after Send returns without error.
13496//
13497// See StartAssociationsOnce for more information on using the StartAssociationsOnce
13498// API call, and error handling.
13499//
13500// This method is useful when you want to inject custom logic or configuration
13501// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13502//
13503//
13504//    // Example sending a request using the StartAssociationsOnceRequest method.
13505//    req, resp := client.StartAssociationsOnceRequest(params)
13506//
13507//    err := req.Send()
13508//    if err == nil { // resp is now filled
13509//        fmt.Println(resp)
13510//    }
13511//
13512// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAssociationsOnce
13513func (c *SSM) StartAssociationsOnceRequest(input *StartAssociationsOnceInput) (req *request.Request, output *StartAssociationsOnceOutput) {
13514	op := &request.Operation{
13515		Name:       opStartAssociationsOnce,
13516		HTTPMethod: "POST",
13517		HTTPPath:   "/",
13518	}
13519
13520	if input == nil {
13521		input = &StartAssociationsOnceInput{}
13522	}
13523
13524	output = &StartAssociationsOnceOutput{}
13525	req = c.newRequest(op, input, output)
13526	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
13527	return
13528}
13529
13530// StartAssociationsOnce API operation for Amazon Simple Systems Manager (SSM).
13531//
13532// Runs an association immediately and only one time. This operation can be
13533// helpful when troubleshooting associations.
13534//
13535// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13536// with awserr.Error's Code and Message methods to get detailed information about
13537// the error.
13538//
13539// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13540// API operation StartAssociationsOnce for usage and error information.
13541//
13542// Returned Error Types:
13543//   * InvalidAssociation
13544//   The association isn't valid or doesn't exist.
13545//
13546//   * AssociationDoesNotExist
13547//   The specified association doesn't exist.
13548//
13549// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAssociationsOnce
13550func (c *SSM) StartAssociationsOnce(input *StartAssociationsOnceInput) (*StartAssociationsOnceOutput, error) {
13551	req, out := c.StartAssociationsOnceRequest(input)
13552	return out, req.Send()
13553}
13554
13555// StartAssociationsOnceWithContext is the same as StartAssociationsOnce with the addition of
13556// the ability to pass a context and additional request options.
13557//
13558// See StartAssociationsOnce for details on how to use this API operation.
13559//
13560// The context must be non-nil and will be used for request cancellation. If
13561// the context is nil a panic will occur. In the future the SDK may create
13562// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13563// for more information on using Contexts.
13564func (c *SSM) StartAssociationsOnceWithContext(ctx aws.Context, input *StartAssociationsOnceInput, opts ...request.Option) (*StartAssociationsOnceOutput, error) {
13565	req, out := c.StartAssociationsOnceRequest(input)
13566	req.SetContext(ctx)
13567	req.ApplyOptions(opts...)
13568	return out, req.Send()
13569}
13570
13571const opStartAutomationExecution = "StartAutomationExecution"
13572
13573// StartAutomationExecutionRequest generates a "aws/request.Request" representing the
13574// client's request for the StartAutomationExecution operation. The "output" return
13575// value will be populated with the request's response once the request completes
13576// successfully.
13577//
13578// Use "Send" method on the returned Request to send the API call to the service.
13579// the "output" return value is not valid until after Send returns without error.
13580//
13581// See StartAutomationExecution for more information on using the StartAutomationExecution
13582// API call, and error handling.
13583//
13584// This method is useful when you want to inject custom logic or configuration
13585// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13586//
13587//
13588//    // Example sending a request using the StartAutomationExecutionRequest method.
13589//    req, resp := client.StartAutomationExecutionRequest(params)
13590//
13591//    err := req.Send()
13592//    if err == nil { // resp is now filled
13593//        fmt.Println(resp)
13594//    }
13595//
13596// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAutomationExecution
13597func (c *SSM) StartAutomationExecutionRequest(input *StartAutomationExecutionInput) (req *request.Request, output *StartAutomationExecutionOutput) {
13598	op := &request.Operation{
13599		Name:       opStartAutomationExecution,
13600		HTTPMethod: "POST",
13601		HTTPPath:   "/",
13602	}
13603
13604	if input == nil {
13605		input = &StartAutomationExecutionInput{}
13606	}
13607
13608	output = &StartAutomationExecutionOutput{}
13609	req = c.newRequest(op, input, output)
13610	return
13611}
13612
13613// StartAutomationExecution API operation for Amazon Simple Systems Manager (SSM).
13614//
13615// Initiates execution of an Automation runbook.
13616//
13617// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13618// with awserr.Error's Code and Message methods to get detailed information about
13619// the error.
13620//
13621// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13622// API operation StartAutomationExecution for usage and error information.
13623//
13624// Returned Error Types:
13625//   * AutomationDefinitionNotFoundException
13626//   An Automation runbook with the specified name couldn't be found.
13627//
13628//   * InvalidAutomationExecutionParametersException
13629//   The supplied parameters for invoking the specified Automation runbook are
13630//   incorrect. For example, they may not match the set of parameters permitted
13631//   for the specified Automation document.
13632//
13633//   * AutomationExecutionLimitExceededException
13634//   The number of simultaneously running Automation executions exceeded the allowable
13635//   limit.
13636//
13637//   * AutomationDefinitionVersionNotFoundException
13638//   An Automation runbook with the specified name and version couldn't be found.
13639//
13640//   * IdempotentParameterMismatch
13641//   Error returned when an idempotent operation is retried and the parameters
13642//   don't match the original call to the API with the same idempotency token.
13643//
13644//   * InvalidTarget
13645//   The target isn't valid or doesn't exist. It might not be configured for Systems
13646//   Manager or you might not have permission to perform the operation.
13647//
13648//   * InternalServerError
13649//   An error occurred on the server side.
13650//
13651// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartAutomationExecution
13652func (c *SSM) StartAutomationExecution(input *StartAutomationExecutionInput) (*StartAutomationExecutionOutput, error) {
13653	req, out := c.StartAutomationExecutionRequest(input)
13654	return out, req.Send()
13655}
13656
13657// StartAutomationExecutionWithContext is the same as StartAutomationExecution with the addition of
13658// the ability to pass a context and additional request options.
13659//
13660// See StartAutomationExecution for details on how to use this API operation.
13661//
13662// The context must be non-nil and will be used for request cancellation. If
13663// the context is nil a panic will occur. In the future the SDK may create
13664// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13665// for more information on using Contexts.
13666func (c *SSM) StartAutomationExecutionWithContext(ctx aws.Context, input *StartAutomationExecutionInput, opts ...request.Option) (*StartAutomationExecutionOutput, error) {
13667	req, out := c.StartAutomationExecutionRequest(input)
13668	req.SetContext(ctx)
13669	req.ApplyOptions(opts...)
13670	return out, req.Send()
13671}
13672
13673const opStartChangeRequestExecution = "StartChangeRequestExecution"
13674
13675// StartChangeRequestExecutionRequest generates a "aws/request.Request" representing the
13676// client's request for the StartChangeRequestExecution operation. The "output" return
13677// value will be populated with the request's response once the request completes
13678// successfully.
13679//
13680// Use "Send" method on the returned Request to send the API call to the service.
13681// the "output" return value is not valid until after Send returns without error.
13682//
13683// See StartChangeRequestExecution for more information on using the StartChangeRequestExecution
13684// API call, and error handling.
13685//
13686// This method is useful when you want to inject custom logic or configuration
13687// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13688//
13689//
13690//    // Example sending a request using the StartChangeRequestExecutionRequest method.
13691//    req, resp := client.StartChangeRequestExecutionRequest(params)
13692//
13693//    err := req.Send()
13694//    if err == nil { // resp is now filled
13695//        fmt.Println(resp)
13696//    }
13697//
13698// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartChangeRequestExecution
13699func (c *SSM) StartChangeRequestExecutionRequest(input *StartChangeRequestExecutionInput) (req *request.Request, output *StartChangeRequestExecutionOutput) {
13700	op := &request.Operation{
13701		Name:       opStartChangeRequestExecution,
13702		HTTPMethod: "POST",
13703		HTTPPath:   "/",
13704	}
13705
13706	if input == nil {
13707		input = &StartChangeRequestExecutionInput{}
13708	}
13709
13710	output = &StartChangeRequestExecutionOutput{}
13711	req = c.newRequest(op, input, output)
13712	return
13713}
13714
13715// StartChangeRequestExecution API operation for Amazon Simple Systems Manager (SSM).
13716//
13717// Creates a change request for Change Manager. The Automation runbooks specified
13718// in the change request run only after all required approvals for the change
13719// request have been received.
13720//
13721// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13722// with awserr.Error's Code and Message methods to get detailed information about
13723// the error.
13724//
13725// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13726// API operation StartChangeRequestExecution for usage and error information.
13727//
13728// Returned Error Types:
13729//   * AutomationDefinitionNotFoundException
13730//   An Automation runbook with the specified name couldn't be found.
13731//
13732//   * InvalidAutomationExecutionParametersException
13733//   The supplied parameters for invoking the specified Automation runbook are
13734//   incorrect. For example, they may not match the set of parameters permitted
13735//   for the specified Automation document.
13736//
13737//   * AutomationExecutionLimitExceededException
13738//   The number of simultaneously running Automation executions exceeded the allowable
13739//   limit.
13740//
13741//   * AutomationDefinitionVersionNotFoundException
13742//   An Automation runbook with the specified name and version couldn't be found.
13743//
13744//   * IdempotentParameterMismatch
13745//   Error returned when an idempotent operation is retried and the parameters
13746//   don't match the original call to the API with the same idempotency token.
13747//
13748//   * InternalServerError
13749//   An error occurred on the server side.
13750//
13751//   * AutomationDefinitionNotApprovedException
13752//   Indicates that the Change Manager change template used in the change request
13753//   was rejected or is still in a pending state.
13754//
13755// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartChangeRequestExecution
13756func (c *SSM) StartChangeRequestExecution(input *StartChangeRequestExecutionInput) (*StartChangeRequestExecutionOutput, error) {
13757	req, out := c.StartChangeRequestExecutionRequest(input)
13758	return out, req.Send()
13759}
13760
13761// StartChangeRequestExecutionWithContext is the same as StartChangeRequestExecution with the addition of
13762// the ability to pass a context and additional request options.
13763//
13764// See StartChangeRequestExecution for details on how to use this API operation.
13765//
13766// The context must be non-nil and will be used for request cancellation. If
13767// the context is nil a panic will occur. In the future the SDK may create
13768// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13769// for more information on using Contexts.
13770func (c *SSM) StartChangeRequestExecutionWithContext(ctx aws.Context, input *StartChangeRequestExecutionInput, opts ...request.Option) (*StartChangeRequestExecutionOutput, error) {
13771	req, out := c.StartChangeRequestExecutionRequest(input)
13772	req.SetContext(ctx)
13773	req.ApplyOptions(opts...)
13774	return out, req.Send()
13775}
13776
13777const opStartSession = "StartSession"
13778
13779// StartSessionRequest generates a "aws/request.Request" representing the
13780// client's request for the StartSession operation. The "output" return
13781// value will be populated with the request's response once the request completes
13782// successfully.
13783//
13784// Use "Send" method on the returned Request to send the API call to the service.
13785// the "output" return value is not valid until after Send returns without error.
13786//
13787// See StartSession for more information on using the StartSession
13788// API call, and error handling.
13789//
13790// This method is useful when you want to inject custom logic or configuration
13791// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13792//
13793//
13794//    // Example sending a request using the StartSessionRequest method.
13795//    req, resp := client.StartSessionRequest(params)
13796//
13797//    err := req.Send()
13798//    if err == nil { // resp is now filled
13799//        fmt.Println(resp)
13800//    }
13801//
13802// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartSession
13803func (c *SSM) StartSessionRequest(input *StartSessionInput) (req *request.Request, output *StartSessionOutput) {
13804	op := &request.Operation{
13805		Name:       opStartSession,
13806		HTTPMethod: "POST",
13807		HTTPPath:   "/",
13808	}
13809
13810	if input == nil {
13811		input = &StartSessionInput{}
13812	}
13813
13814	output = &StartSessionOutput{}
13815	req = c.newRequest(op, input, output)
13816	return
13817}
13818
13819// StartSession API operation for Amazon Simple Systems Manager (SSM).
13820//
13821// Initiates a connection to a target (for example, an instance) for a Session
13822// Manager session. Returns a URL and token that can be used to open a WebSocket
13823// connection for sending input and receiving outputs.
13824//
13825// Amazon Web Services CLI usage: start-session is an interactive command that
13826// requires the Session Manager plugin to be installed on the client machine
13827// making the call. For information, see Install the Session Manager plugin
13828// for the Amazon Web Services CLI (https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html)
13829// in the Amazon Web Services Systems Manager User Guide.
13830//
13831// Amazon Web Services Tools for PowerShell usage: Start-SSMSession isn't currently
13832// supported by Amazon Web Services Tools for PowerShell on Windows local machines.
13833//
13834// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13835// with awserr.Error's Code and Message methods to get detailed information about
13836// the error.
13837//
13838// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13839// API operation StartSession for usage and error information.
13840//
13841// Returned Error Types:
13842//   * InvalidDocument
13843//   The specified SSM document doesn't exist.
13844//
13845//   * TargetNotConnected
13846//   The specified target instance for the session isn't fully configured for
13847//   use with Session Manager. For more information, see Getting started with
13848//   Session Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html)
13849//   in the Amazon Web Services Systems Manager User Guide. This error is also
13850//   returned if you attempt to start a session on an instance that is located
13851//   in a different account or Region
13852//
13853//   * InternalServerError
13854//   An error occurred on the server side.
13855//
13856// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StartSession
13857func (c *SSM) StartSession(input *StartSessionInput) (*StartSessionOutput, error) {
13858	req, out := c.StartSessionRequest(input)
13859	return out, req.Send()
13860}
13861
13862// StartSessionWithContext is the same as StartSession with the addition of
13863// the ability to pass a context and additional request options.
13864//
13865// See StartSession for details on how to use this API operation.
13866//
13867// The context must be non-nil and will be used for request cancellation. If
13868// the context is nil a panic will occur. In the future the SDK may create
13869// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13870// for more information on using Contexts.
13871func (c *SSM) StartSessionWithContext(ctx aws.Context, input *StartSessionInput, opts ...request.Option) (*StartSessionOutput, error) {
13872	req, out := c.StartSessionRequest(input)
13873	req.SetContext(ctx)
13874	req.ApplyOptions(opts...)
13875	return out, req.Send()
13876}
13877
13878const opStopAutomationExecution = "StopAutomationExecution"
13879
13880// StopAutomationExecutionRequest generates a "aws/request.Request" representing the
13881// client's request for the StopAutomationExecution operation. The "output" return
13882// value will be populated with the request's response once the request completes
13883// successfully.
13884//
13885// Use "Send" method on the returned Request to send the API call to the service.
13886// the "output" return value is not valid until after Send returns without error.
13887//
13888// See StopAutomationExecution for more information on using the StopAutomationExecution
13889// API call, and error handling.
13890//
13891// This method is useful when you want to inject custom logic or configuration
13892// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13893//
13894//
13895//    // Example sending a request using the StopAutomationExecutionRequest method.
13896//    req, resp := client.StopAutomationExecutionRequest(params)
13897//
13898//    err := req.Send()
13899//    if err == nil { // resp is now filled
13900//        fmt.Println(resp)
13901//    }
13902//
13903// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StopAutomationExecution
13904func (c *SSM) StopAutomationExecutionRequest(input *StopAutomationExecutionInput) (req *request.Request, output *StopAutomationExecutionOutput) {
13905	op := &request.Operation{
13906		Name:       opStopAutomationExecution,
13907		HTTPMethod: "POST",
13908		HTTPPath:   "/",
13909	}
13910
13911	if input == nil {
13912		input = &StopAutomationExecutionInput{}
13913	}
13914
13915	output = &StopAutomationExecutionOutput{}
13916	req = c.newRequest(op, input, output)
13917	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
13918	return
13919}
13920
13921// StopAutomationExecution API operation for Amazon Simple Systems Manager (SSM).
13922//
13923// Stop an Automation that is currently running.
13924//
13925// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
13926// with awserr.Error's Code and Message methods to get detailed information about
13927// the error.
13928//
13929// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
13930// API operation StopAutomationExecution for usage and error information.
13931//
13932// Returned Error Types:
13933//   * AutomationExecutionNotFoundException
13934//   There is no automation execution information for the requested automation
13935//   execution ID.
13936//
13937//   * InvalidAutomationStatusUpdateException
13938//   The specified update status operation isn't valid.
13939//
13940//   * InternalServerError
13941//   An error occurred on the server side.
13942//
13943// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/StopAutomationExecution
13944func (c *SSM) StopAutomationExecution(input *StopAutomationExecutionInput) (*StopAutomationExecutionOutput, error) {
13945	req, out := c.StopAutomationExecutionRequest(input)
13946	return out, req.Send()
13947}
13948
13949// StopAutomationExecutionWithContext is the same as StopAutomationExecution with the addition of
13950// the ability to pass a context and additional request options.
13951//
13952// See StopAutomationExecution for details on how to use this API operation.
13953//
13954// The context must be non-nil and will be used for request cancellation. If
13955// the context is nil a panic will occur. In the future the SDK may create
13956// sub-contexts for http.Requests. See https://golang.org/pkg/context/
13957// for more information on using Contexts.
13958func (c *SSM) StopAutomationExecutionWithContext(ctx aws.Context, input *StopAutomationExecutionInput, opts ...request.Option) (*StopAutomationExecutionOutput, error) {
13959	req, out := c.StopAutomationExecutionRequest(input)
13960	req.SetContext(ctx)
13961	req.ApplyOptions(opts...)
13962	return out, req.Send()
13963}
13964
13965const opTerminateSession = "TerminateSession"
13966
13967// TerminateSessionRequest generates a "aws/request.Request" representing the
13968// client's request for the TerminateSession operation. The "output" return
13969// value will be populated with the request's response once the request completes
13970// successfully.
13971//
13972// Use "Send" method on the returned Request to send the API call to the service.
13973// the "output" return value is not valid until after Send returns without error.
13974//
13975// See TerminateSession for more information on using the TerminateSession
13976// API call, and error handling.
13977//
13978// This method is useful when you want to inject custom logic or configuration
13979// into the SDK's request lifecycle. Such as custom headers, or retry logic.
13980//
13981//
13982//    // Example sending a request using the TerminateSessionRequest method.
13983//    req, resp := client.TerminateSessionRequest(params)
13984//
13985//    err := req.Send()
13986//    if err == nil { // resp is now filled
13987//        fmt.Println(resp)
13988//    }
13989//
13990// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/TerminateSession
13991func (c *SSM) TerminateSessionRequest(input *TerminateSessionInput) (req *request.Request, output *TerminateSessionOutput) {
13992	op := &request.Operation{
13993		Name:       opTerminateSession,
13994		HTTPMethod: "POST",
13995		HTTPPath:   "/",
13996	}
13997
13998	if input == nil {
13999		input = &TerminateSessionInput{}
14000	}
14001
14002	output = &TerminateSessionOutput{}
14003	req = c.newRequest(op, input, output)
14004	return
14005}
14006
14007// TerminateSession API operation for Amazon Simple Systems Manager (SSM).
14008//
14009// Permanently ends a session and closes the data connection between the Session
14010// Manager client and SSM Agent on the instance. A terminated session isn't
14011// be resumed.
14012//
14013// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14014// with awserr.Error's Code and Message methods to get detailed information about
14015// the error.
14016//
14017// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14018// API operation TerminateSession for usage and error information.
14019//
14020// Returned Error Types:
14021//   * DoesNotExistException
14022//   Error returned when the ID specified for a resource, such as a maintenance
14023//   window or patch baseline, doesn't exist.
14024//
14025//   For information about resource quotas in Amazon Web Services Systems Manager,
14026//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
14027//   in the Amazon Web Services General Reference.
14028//
14029//   * InternalServerError
14030//   An error occurred on the server side.
14031//
14032// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/TerminateSession
14033func (c *SSM) TerminateSession(input *TerminateSessionInput) (*TerminateSessionOutput, error) {
14034	req, out := c.TerminateSessionRequest(input)
14035	return out, req.Send()
14036}
14037
14038// TerminateSessionWithContext is the same as TerminateSession with the addition of
14039// the ability to pass a context and additional request options.
14040//
14041// See TerminateSession for details on how to use this API operation.
14042//
14043// The context must be non-nil and will be used for request cancellation. If
14044// the context is nil a panic will occur. In the future the SDK may create
14045// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14046// for more information on using Contexts.
14047func (c *SSM) TerminateSessionWithContext(ctx aws.Context, input *TerminateSessionInput, opts ...request.Option) (*TerminateSessionOutput, error) {
14048	req, out := c.TerminateSessionRequest(input)
14049	req.SetContext(ctx)
14050	req.ApplyOptions(opts...)
14051	return out, req.Send()
14052}
14053
14054const opUnlabelParameterVersion = "UnlabelParameterVersion"
14055
14056// UnlabelParameterVersionRequest generates a "aws/request.Request" representing the
14057// client's request for the UnlabelParameterVersion operation. The "output" return
14058// value will be populated with the request's response once the request completes
14059// successfully.
14060//
14061// Use "Send" method on the returned Request to send the API call to the service.
14062// the "output" return value is not valid until after Send returns without error.
14063//
14064// See UnlabelParameterVersion for more information on using the UnlabelParameterVersion
14065// API call, and error handling.
14066//
14067// This method is useful when you want to inject custom logic or configuration
14068// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14069//
14070//
14071//    // Example sending a request using the UnlabelParameterVersionRequest method.
14072//    req, resp := client.UnlabelParameterVersionRequest(params)
14073//
14074//    err := req.Send()
14075//    if err == nil { // resp is now filled
14076//        fmt.Println(resp)
14077//    }
14078//
14079// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UnlabelParameterVersion
14080func (c *SSM) UnlabelParameterVersionRequest(input *UnlabelParameterVersionInput) (req *request.Request, output *UnlabelParameterVersionOutput) {
14081	op := &request.Operation{
14082		Name:       opUnlabelParameterVersion,
14083		HTTPMethod: "POST",
14084		HTTPPath:   "/",
14085	}
14086
14087	if input == nil {
14088		input = &UnlabelParameterVersionInput{}
14089	}
14090
14091	output = &UnlabelParameterVersionOutput{}
14092	req = c.newRequest(op, input, output)
14093	return
14094}
14095
14096// UnlabelParameterVersion API operation for Amazon Simple Systems Manager (SSM).
14097//
14098// Remove a label or labels from a parameter.
14099//
14100// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14101// with awserr.Error's Code and Message methods to get detailed information about
14102// the error.
14103//
14104// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14105// API operation UnlabelParameterVersion for usage and error information.
14106//
14107// Returned Error Types:
14108//   * InternalServerError
14109//   An error occurred on the server side.
14110//
14111//   * TooManyUpdates
14112//   There are concurrent updates for a resource that supports one update at a
14113//   time.
14114//
14115//   * ParameterNotFound
14116//   The parameter couldn't be found. Verify the name and try again.
14117//
14118//   * ParameterVersionNotFound
14119//   The specified parameter version wasn't found. Verify the parameter name and
14120//   version, and try again.
14121//
14122// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UnlabelParameterVersion
14123func (c *SSM) UnlabelParameterVersion(input *UnlabelParameterVersionInput) (*UnlabelParameterVersionOutput, error) {
14124	req, out := c.UnlabelParameterVersionRequest(input)
14125	return out, req.Send()
14126}
14127
14128// UnlabelParameterVersionWithContext is the same as UnlabelParameterVersion with the addition of
14129// the ability to pass a context and additional request options.
14130//
14131// See UnlabelParameterVersion for details on how to use this API operation.
14132//
14133// The context must be non-nil and will be used for request cancellation. If
14134// the context is nil a panic will occur. In the future the SDK may create
14135// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14136// for more information on using Contexts.
14137func (c *SSM) UnlabelParameterVersionWithContext(ctx aws.Context, input *UnlabelParameterVersionInput, opts ...request.Option) (*UnlabelParameterVersionOutput, error) {
14138	req, out := c.UnlabelParameterVersionRequest(input)
14139	req.SetContext(ctx)
14140	req.ApplyOptions(opts...)
14141	return out, req.Send()
14142}
14143
14144const opUpdateAssociation = "UpdateAssociation"
14145
14146// UpdateAssociationRequest generates a "aws/request.Request" representing the
14147// client's request for the UpdateAssociation operation. The "output" return
14148// value will be populated with the request's response once the request completes
14149// successfully.
14150//
14151// Use "Send" method on the returned Request to send the API call to the service.
14152// the "output" return value is not valid until after Send returns without error.
14153//
14154// See UpdateAssociation for more information on using the UpdateAssociation
14155// API call, and error handling.
14156//
14157// This method is useful when you want to inject custom logic or configuration
14158// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14159//
14160//
14161//    // Example sending a request using the UpdateAssociationRequest method.
14162//    req, resp := client.UpdateAssociationRequest(params)
14163//
14164//    err := req.Send()
14165//    if err == nil { // resp is now filled
14166//        fmt.Println(resp)
14167//    }
14168//
14169// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociation
14170func (c *SSM) UpdateAssociationRequest(input *UpdateAssociationInput) (req *request.Request, output *UpdateAssociationOutput) {
14171	op := &request.Operation{
14172		Name:       opUpdateAssociation,
14173		HTTPMethod: "POST",
14174		HTTPPath:   "/",
14175	}
14176
14177	if input == nil {
14178		input = &UpdateAssociationInput{}
14179	}
14180
14181	output = &UpdateAssociationOutput{}
14182	req = c.newRequest(op, input, output)
14183	return
14184}
14185
14186// UpdateAssociation API operation for Amazon Simple Systems Manager (SSM).
14187//
14188// Updates an association. You can update the association name and version,
14189// the document version, schedule, parameters, and Amazon Simple Storage Service
14190// (Amazon S3) output.
14191//
14192// In order to call this API operation, your Identity and Access Management
14193// (IAM) user account, group, or role must be configured with permission to
14194// call the DescribeAssociation API operation. If you don't have permission
14195// to call DescribeAssociation, then you receive the following error: An error
14196// occurred (AccessDeniedException) when calling the UpdateAssociation operation:
14197// User: <user_arn> isn't authorized to perform: ssm:DescribeAssociation on
14198// resource: <resource_arn>
14199//
14200// When you update an association, the association immediately runs against
14201// the specified targets.
14202//
14203// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14204// with awserr.Error's Code and Message methods to get detailed information about
14205// the error.
14206//
14207// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14208// API operation UpdateAssociation for usage and error information.
14209//
14210// Returned Error Types:
14211//   * InternalServerError
14212//   An error occurred on the server side.
14213//
14214//   * InvalidSchedule
14215//   The schedule is invalid. Verify your cron or rate expression and try again.
14216//
14217//   * InvalidParameters
14218//   You must specify values for all required parameters in the Amazon Web Services
14219//   Systems Manager document (SSM document). You can only supply values to parameters
14220//   defined in the SSM document.
14221//
14222//   * InvalidOutputLocation
14223//   The output location isn't valid or doesn't exist.
14224//
14225//   * InvalidDocumentVersion
14226//   The document version isn't valid or doesn't exist.
14227//
14228//   * AssociationDoesNotExist
14229//   The specified association doesn't exist.
14230//
14231//   * InvalidUpdate
14232//   The update isn't valid.
14233//
14234//   * TooManyUpdates
14235//   There are concurrent updates for a resource that supports one update at a
14236//   time.
14237//
14238//   * InvalidDocument
14239//   The specified SSM document doesn't exist.
14240//
14241//   * InvalidTarget
14242//   The target isn't valid or doesn't exist. It might not be configured for Systems
14243//   Manager or you might not have permission to perform the operation.
14244//
14245//   * InvalidAssociationVersion
14246//   The version you specified isn't valid. Use ListAssociationVersions to view
14247//   all versions of an association according to the association ID. Or, use the
14248//   $LATEST parameter to view the latest version of the association.
14249//
14250//   * AssociationVersionLimitExceeded
14251//   You have reached the maximum number versions allowed for an association.
14252//   Each association has a limit of 1,000 versions.
14253//
14254// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociation
14255func (c *SSM) UpdateAssociation(input *UpdateAssociationInput) (*UpdateAssociationOutput, error) {
14256	req, out := c.UpdateAssociationRequest(input)
14257	return out, req.Send()
14258}
14259
14260// UpdateAssociationWithContext is the same as UpdateAssociation with the addition of
14261// the ability to pass a context and additional request options.
14262//
14263// See UpdateAssociation for details on how to use this API operation.
14264//
14265// The context must be non-nil and will be used for request cancellation. If
14266// the context is nil a panic will occur. In the future the SDK may create
14267// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14268// for more information on using Contexts.
14269func (c *SSM) UpdateAssociationWithContext(ctx aws.Context, input *UpdateAssociationInput, opts ...request.Option) (*UpdateAssociationOutput, error) {
14270	req, out := c.UpdateAssociationRequest(input)
14271	req.SetContext(ctx)
14272	req.ApplyOptions(opts...)
14273	return out, req.Send()
14274}
14275
14276const opUpdateAssociationStatus = "UpdateAssociationStatus"
14277
14278// UpdateAssociationStatusRequest generates a "aws/request.Request" representing the
14279// client's request for the UpdateAssociationStatus operation. The "output" return
14280// value will be populated with the request's response once the request completes
14281// successfully.
14282//
14283// Use "Send" method on the returned Request to send the API call to the service.
14284// the "output" return value is not valid until after Send returns without error.
14285//
14286// See UpdateAssociationStatus for more information on using the UpdateAssociationStatus
14287// API call, and error handling.
14288//
14289// This method is useful when you want to inject custom logic or configuration
14290// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14291//
14292//
14293//    // Example sending a request using the UpdateAssociationStatusRequest method.
14294//    req, resp := client.UpdateAssociationStatusRequest(params)
14295//
14296//    err := req.Send()
14297//    if err == nil { // resp is now filled
14298//        fmt.Println(resp)
14299//    }
14300//
14301// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociationStatus
14302func (c *SSM) UpdateAssociationStatusRequest(input *UpdateAssociationStatusInput) (req *request.Request, output *UpdateAssociationStatusOutput) {
14303	op := &request.Operation{
14304		Name:       opUpdateAssociationStatus,
14305		HTTPMethod: "POST",
14306		HTTPPath:   "/",
14307	}
14308
14309	if input == nil {
14310		input = &UpdateAssociationStatusInput{}
14311	}
14312
14313	output = &UpdateAssociationStatusOutput{}
14314	req = c.newRequest(op, input, output)
14315	return
14316}
14317
14318// UpdateAssociationStatus API operation for Amazon Simple Systems Manager (SSM).
14319//
14320// Updates the status of the Amazon Web Services Systems Manager document (SSM
14321// document) associated with the specified instance.
14322//
14323// UpdateAssociationStatus is primarily used by the Amazon Web Services Systems
14324// Manager Agent (SSM Agent) to report status updates about your associations
14325// and is only used for associations created with the InstanceId legacy parameter.
14326//
14327// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14328// with awserr.Error's Code and Message methods to get detailed information about
14329// the error.
14330//
14331// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14332// API operation UpdateAssociationStatus for usage and error information.
14333//
14334// Returned Error Types:
14335//   * InternalServerError
14336//   An error occurred on the server side.
14337//
14338//   * InvalidInstanceId
14339//   The following problems can cause this exception:
14340//
14341//      * You don't have permission to access the instance.
14342//
14343//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
14344//      Verify that SSM Agent is running.
14345//
14346//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
14347//      Agent.
14348//
14349//      * The instance isn't in valid state. Valid states are: Running, Pending,
14350//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
14351//
14352//   * InvalidDocument
14353//   The specified SSM document doesn't exist.
14354//
14355//   * AssociationDoesNotExist
14356//   The specified association doesn't exist.
14357//
14358//   * StatusUnchanged
14359//   The updated status is the same as the current status.
14360//
14361//   * TooManyUpdates
14362//   There are concurrent updates for a resource that supports one update at a
14363//   time.
14364//
14365// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateAssociationStatus
14366func (c *SSM) UpdateAssociationStatus(input *UpdateAssociationStatusInput) (*UpdateAssociationStatusOutput, error) {
14367	req, out := c.UpdateAssociationStatusRequest(input)
14368	return out, req.Send()
14369}
14370
14371// UpdateAssociationStatusWithContext is the same as UpdateAssociationStatus with the addition of
14372// the ability to pass a context and additional request options.
14373//
14374// See UpdateAssociationStatus for details on how to use this API operation.
14375//
14376// The context must be non-nil and will be used for request cancellation. If
14377// the context is nil a panic will occur. In the future the SDK may create
14378// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14379// for more information on using Contexts.
14380func (c *SSM) UpdateAssociationStatusWithContext(ctx aws.Context, input *UpdateAssociationStatusInput, opts ...request.Option) (*UpdateAssociationStatusOutput, error) {
14381	req, out := c.UpdateAssociationStatusRequest(input)
14382	req.SetContext(ctx)
14383	req.ApplyOptions(opts...)
14384	return out, req.Send()
14385}
14386
14387const opUpdateDocument = "UpdateDocument"
14388
14389// UpdateDocumentRequest generates a "aws/request.Request" representing the
14390// client's request for the UpdateDocument operation. The "output" return
14391// value will be populated with the request's response once the request completes
14392// successfully.
14393//
14394// Use "Send" method on the returned Request to send the API call to the service.
14395// the "output" return value is not valid until after Send returns without error.
14396//
14397// See UpdateDocument for more information on using the UpdateDocument
14398// API call, and error handling.
14399//
14400// This method is useful when you want to inject custom logic or configuration
14401// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14402//
14403//
14404//    // Example sending a request using the UpdateDocumentRequest method.
14405//    req, resp := client.UpdateDocumentRequest(params)
14406//
14407//    err := req.Send()
14408//    if err == nil { // resp is now filled
14409//        fmt.Println(resp)
14410//    }
14411//
14412// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocument
14413func (c *SSM) UpdateDocumentRequest(input *UpdateDocumentInput) (req *request.Request, output *UpdateDocumentOutput) {
14414	op := &request.Operation{
14415		Name:       opUpdateDocument,
14416		HTTPMethod: "POST",
14417		HTTPPath:   "/",
14418	}
14419
14420	if input == nil {
14421		input = &UpdateDocumentInput{}
14422	}
14423
14424	output = &UpdateDocumentOutput{}
14425	req = c.newRequest(op, input, output)
14426	return
14427}
14428
14429// UpdateDocument API operation for Amazon Simple Systems Manager (SSM).
14430//
14431// Updates one or more values for an SSM document.
14432//
14433// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14434// with awserr.Error's Code and Message methods to get detailed information about
14435// the error.
14436//
14437// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14438// API operation UpdateDocument for usage and error information.
14439//
14440// Returned Error Types:
14441//   * MaxDocumentSizeExceeded
14442//   The size limit of a document is 64 KB.
14443//
14444//   * DocumentVersionLimitExceeded
14445//   The document has too many versions. Delete one or more document versions
14446//   and try again.
14447//
14448//   * InternalServerError
14449//   An error occurred on the server side.
14450//
14451//   * DuplicateDocumentContent
14452//   The content of the association document matches another document. Change
14453//   the content of the document and try again.
14454//
14455//   * DuplicateDocumentVersionName
14456//   The version name has already been used in this document. Specify a different
14457//   version name, and then try again.
14458//
14459//   * InvalidDocumentContent
14460//   The content for the document isn't valid.
14461//
14462//   * InvalidDocumentVersion
14463//   The document version isn't valid or doesn't exist.
14464//
14465//   * InvalidDocumentSchemaVersion
14466//   The version of the document schema isn't supported.
14467//
14468//   * InvalidDocument
14469//   The specified SSM document doesn't exist.
14470//
14471//   * InvalidDocumentOperation
14472//   You attempted to delete a document while it is still shared. You must stop
14473//   sharing the document before you can delete it.
14474//
14475// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocument
14476func (c *SSM) UpdateDocument(input *UpdateDocumentInput) (*UpdateDocumentOutput, error) {
14477	req, out := c.UpdateDocumentRequest(input)
14478	return out, req.Send()
14479}
14480
14481// UpdateDocumentWithContext is the same as UpdateDocument with the addition of
14482// the ability to pass a context and additional request options.
14483//
14484// See UpdateDocument for details on how to use this API operation.
14485//
14486// The context must be non-nil and will be used for request cancellation. If
14487// the context is nil a panic will occur. In the future the SDK may create
14488// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14489// for more information on using Contexts.
14490func (c *SSM) UpdateDocumentWithContext(ctx aws.Context, input *UpdateDocumentInput, opts ...request.Option) (*UpdateDocumentOutput, error) {
14491	req, out := c.UpdateDocumentRequest(input)
14492	req.SetContext(ctx)
14493	req.ApplyOptions(opts...)
14494	return out, req.Send()
14495}
14496
14497const opUpdateDocumentDefaultVersion = "UpdateDocumentDefaultVersion"
14498
14499// UpdateDocumentDefaultVersionRequest generates a "aws/request.Request" representing the
14500// client's request for the UpdateDocumentDefaultVersion operation. The "output" return
14501// value will be populated with the request's response once the request completes
14502// successfully.
14503//
14504// Use "Send" method on the returned Request to send the API call to the service.
14505// the "output" return value is not valid until after Send returns without error.
14506//
14507// See UpdateDocumentDefaultVersion for more information on using the UpdateDocumentDefaultVersion
14508// API call, and error handling.
14509//
14510// This method is useful when you want to inject custom logic or configuration
14511// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14512//
14513//
14514//    // Example sending a request using the UpdateDocumentDefaultVersionRequest method.
14515//    req, resp := client.UpdateDocumentDefaultVersionRequest(params)
14516//
14517//    err := req.Send()
14518//    if err == nil { // resp is now filled
14519//        fmt.Println(resp)
14520//    }
14521//
14522// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentDefaultVersion
14523func (c *SSM) UpdateDocumentDefaultVersionRequest(input *UpdateDocumentDefaultVersionInput) (req *request.Request, output *UpdateDocumentDefaultVersionOutput) {
14524	op := &request.Operation{
14525		Name:       opUpdateDocumentDefaultVersion,
14526		HTTPMethod: "POST",
14527		HTTPPath:   "/",
14528	}
14529
14530	if input == nil {
14531		input = &UpdateDocumentDefaultVersionInput{}
14532	}
14533
14534	output = &UpdateDocumentDefaultVersionOutput{}
14535	req = c.newRequest(op, input, output)
14536	return
14537}
14538
14539// UpdateDocumentDefaultVersion API operation for Amazon Simple Systems Manager (SSM).
14540//
14541// Set the default version of a document.
14542//
14543// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14544// with awserr.Error's Code and Message methods to get detailed information about
14545// the error.
14546//
14547// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14548// API operation UpdateDocumentDefaultVersion for usage and error information.
14549//
14550// Returned Error Types:
14551//   * InternalServerError
14552//   An error occurred on the server side.
14553//
14554//   * InvalidDocument
14555//   The specified SSM document doesn't exist.
14556//
14557//   * InvalidDocumentVersion
14558//   The document version isn't valid or doesn't exist.
14559//
14560//   * InvalidDocumentSchemaVersion
14561//   The version of the document schema isn't supported.
14562//
14563// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentDefaultVersion
14564func (c *SSM) UpdateDocumentDefaultVersion(input *UpdateDocumentDefaultVersionInput) (*UpdateDocumentDefaultVersionOutput, error) {
14565	req, out := c.UpdateDocumentDefaultVersionRequest(input)
14566	return out, req.Send()
14567}
14568
14569// UpdateDocumentDefaultVersionWithContext is the same as UpdateDocumentDefaultVersion with the addition of
14570// the ability to pass a context and additional request options.
14571//
14572// See UpdateDocumentDefaultVersion for details on how to use this API operation.
14573//
14574// The context must be non-nil and will be used for request cancellation. If
14575// the context is nil a panic will occur. In the future the SDK may create
14576// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14577// for more information on using Contexts.
14578func (c *SSM) UpdateDocumentDefaultVersionWithContext(ctx aws.Context, input *UpdateDocumentDefaultVersionInput, opts ...request.Option) (*UpdateDocumentDefaultVersionOutput, error) {
14579	req, out := c.UpdateDocumentDefaultVersionRequest(input)
14580	req.SetContext(ctx)
14581	req.ApplyOptions(opts...)
14582	return out, req.Send()
14583}
14584
14585const opUpdateDocumentMetadata = "UpdateDocumentMetadata"
14586
14587// UpdateDocumentMetadataRequest generates a "aws/request.Request" representing the
14588// client's request for the UpdateDocumentMetadata operation. The "output" return
14589// value will be populated with the request's response once the request completes
14590// successfully.
14591//
14592// Use "Send" method on the returned Request to send the API call to the service.
14593// the "output" return value is not valid until after Send returns without error.
14594//
14595// See UpdateDocumentMetadata for more information on using the UpdateDocumentMetadata
14596// API call, and error handling.
14597//
14598// This method is useful when you want to inject custom logic or configuration
14599// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14600//
14601//
14602//    // Example sending a request using the UpdateDocumentMetadataRequest method.
14603//    req, resp := client.UpdateDocumentMetadataRequest(params)
14604//
14605//    err := req.Send()
14606//    if err == nil { // resp is now filled
14607//        fmt.Println(resp)
14608//    }
14609//
14610// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentMetadata
14611func (c *SSM) UpdateDocumentMetadataRequest(input *UpdateDocumentMetadataInput) (req *request.Request, output *UpdateDocumentMetadataOutput) {
14612	op := &request.Operation{
14613		Name:       opUpdateDocumentMetadata,
14614		HTTPMethod: "POST",
14615		HTTPPath:   "/",
14616	}
14617
14618	if input == nil {
14619		input = &UpdateDocumentMetadataInput{}
14620	}
14621
14622	output = &UpdateDocumentMetadataOutput{}
14623	req = c.newRequest(op, input, output)
14624	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
14625	return
14626}
14627
14628// UpdateDocumentMetadata API operation for Amazon Simple Systems Manager (SSM).
14629//
14630// Updates information related to approval reviews for a specific version of
14631// a change template in Change Manager.
14632//
14633// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14634// with awserr.Error's Code and Message methods to get detailed information about
14635// the error.
14636//
14637// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14638// API operation UpdateDocumentMetadata for usage and error information.
14639//
14640// Returned Error Types:
14641//   * InternalServerError
14642//   An error occurred on the server side.
14643//
14644//   * InvalidDocument
14645//   The specified SSM document doesn't exist.
14646//
14647//   * InvalidDocumentOperation
14648//   You attempted to delete a document while it is still shared. You must stop
14649//   sharing the document before you can delete it.
14650//
14651//   * InvalidDocumentVersion
14652//   The document version isn't valid or doesn't exist.
14653//
14654// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateDocumentMetadata
14655func (c *SSM) UpdateDocumentMetadata(input *UpdateDocumentMetadataInput) (*UpdateDocumentMetadataOutput, error) {
14656	req, out := c.UpdateDocumentMetadataRequest(input)
14657	return out, req.Send()
14658}
14659
14660// UpdateDocumentMetadataWithContext is the same as UpdateDocumentMetadata with the addition of
14661// the ability to pass a context and additional request options.
14662//
14663// See UpdateDocumentMetadata for details on how to use this API operation.
14664//
14665// The context must be non-nil and will be used for request cancellation. If
14666// the context is nil a panic will occur. In the future the SDK may create
14667// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14668// for more information on using Contexts.
14669func (c *SSM) UpdateDocumentMetadataWithContext(ctx aws.Context, input *UpdateDocumentMetadataInput, opts ...request.Option) (*UpdateDocumentMetadataOutput, error) {
14670	req, out := c.UpdateDocumentMetadataRequest(input)
14671	req.SetContext(ctx)
14672	req.ApplyOptions(opts...)
14673	return out, req.Send()
14674}
14675
14676const opUpdateMaintenanceWindow = "UpdateMaintenanceWindow"
14677
14678// UpdateMaintenanceWindowRequest generates a "aws/request.Request" representing the
14679// client's request for the UpdateMaintenanceWindow operation. The "output" return
14680// value will be populated with the request's response once the request completes
14681// successfully.
14682//
14683// Use "Send" method on the returned Request to send the API call to the service.
14684// the "output" return value is not valid until after Send returns without error.
14685//
14686// See UpdateMaintenanceWindow for more information on using the UpdateMaintenanceWindow
14687// API call, and error handling.
14688//
14689// This method is useful when you want to inject custom logic or configuration
14690// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14691//
14692//
14693//    // Example sending a request using the UpdateMaintenanceWindowRequest method.
14694//    req, resp := client.UpdateMaintenanceWindowRequest(params)
14695//
14696//    err := req.Send()
14697//    if err == nil { // resp is now filled
14698//        fmt.Println(resp)
14699//    }
14700//
14701// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindow
14702func (c *SSM) UpdateMaintenanceWindowRequest(input *UpdateMaintenanceWindowInput) (req *request.Request, output *UpdateMaintenanceWindowOutput) {
14703	op := &request.Operation{
14704		Name:       opUpdateMaintenanceWindow,
14705		HTTPMethod: "POST",
14706		HTTPPath:   "/",
14707	}
14708
14709	if input == nil {
14710		input = &UpdateMaintenanceWindowInput{}
14711	}
14712
14713	output = &UpdateMaintenanceWindowOutput{}
14714	req = c.newRequest(op, input, output)
14715	return
14716}
14717
14718// UpdateMaintenanceWindow API operation for Amazon Simple Systems Manager (SSM).
14719//
14720// Updates an existing maintenance window. Only specified parameters are modified.
14721//
14722// The value you specify for Duration determines the specific end time for the
14723// maintenance window based on the time it begins. No maintenance window tasks
14724// are permitted to start after the resulting endtime minus the number of hours
14725// you specify for Cutoff. For example, if the maintenance window starts at
14726// 3 PM, the duration is three hours, and the value you specify for Cutoff is
14727// one hour, no maintenance window tasks can start after 5 PM.
14728//
14729// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14730// with awserr.Error's Code and Message methods to get detailed information about
14731// the error.
14732//
14733// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14734// API operation UpdateMaintenanceWindow for usage and error information.
14735//
14736// Returned Error Types:
14737//   * DoesNotExistException
14738//   Error returned when the ID specified for a resource, such as a maintenance
14739//   window or patch baseline, doesn't exist.
14740//
14741//   For information about resource quotas in Amazon Web Services Systems Manager,
14742//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
14743//   in the Amazon Web Services General Reference.
14744//
14745//   * InternalServerError
14746//   An error occurred on the server side.
14747//
14748// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindow
14749func (c *SSM) UpdateMaintenanceWindow(input *UpdateMaintenanceWindowInput) (*UpdateMaintenanceWindowOutput, error) {
14750	req, out := c.UpdateMaintenanceWindowRequest(input)
14751	return out, req.Send()
14752}
14753
14754// UpdateMaintenanceWindowWithContext is the same as UpdateMaintenanceWindow with the addition of
14755// the ability to pass a context and additional request options.
14756//
14757// See UpdateMaintenanceWindow for details on how to use this API operation.
14758//
14759// The context must be non-nil and will be used for request cancellation. If
14760// the context is nil a panic will occur. In the future the SDK may create
14761// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14762// for more information on using Contexts.
14763func (c *SSM) UpdateMaintenanceWindowWithContext(ctx aws.Context, input *UpdateMaintenanceWindowInput, opts ...request.Option) (*UpdateMaintenanceWindowOutput, error) {
14764	req, out := c.UpdateMaintenanceWindowRequest(input)
14765	req.SetContext(ctx)
14766	req.ApplyOptions(opts...)
14767	return out, req.Send()
14768}
14769
14770const opUpdateMaintenanceWindowTarget = "UpdateMaintenanceWindowTarget"
14771
14772// UpdateMaintenanceWindowTargetRequest generates a "aws/request.Request" representing the
14773// client's request for the UpdateMaintenanceWindowTarget operation. The "output" return
14774// value will be populated with the request's response once the request completes
14775// successfully.
14776//
14777// Use "Send" method on the returned Request to send the API call to the service.
14778// the "output" return value is not valid until after Send returns without error.
14779//
14780// See UpdateMaintenanceWindowTarget for more information on using the UpdateMaintenanceWindowTarget
14781// API call, and error handling.
14782//
14783// This method is useful when you want to inject custom logic or configuration
14784// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14785//
14786//
14787//    // Example sending a request using the UpdateMaintenanceWindowTargetRequest method.
14788//    req, resp := client.UpdateMaintenanceWindowTargetRequest(params)
14789//
14790//    err := req.Send()
14791//    if err == nil { // resp is now filled
14792//        fmt.Println(resp)
14793//    }
14794//
14795// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTarget
14796func (c *SSM) UpdateMaintenanceWindowTargetRequest(input *UpdateMaintenanceWindowTargetInput) (req *request.Request, output *UpdateMaintenanceWindowTargetOutput) {
14797	op := &request.Operation{
14798		Name:       opUpdateMaintenanceWindowTarget,
14799		HTTPMethod: "POST",
14800		HTTPPath:   "/",
14801	}
14802
14803	if input == nil {
14804		input = &UpdateMaintenanceWindowTargetInput{}
14805	}
14806
14807	output = &UpdateMaintenanceWindowTargetOutput{}
14808	req = c.newRequest(op, input, output)
14809	return
14810}
14811
14812// UpdateMaintenanceWindowTarget API operation for Amazon Simple Systems Manager (SSM).
14813//
14814// Modifies the target of an existing maintenance window. You can change the
14815// following:
14816//
14817//    * Name
14818//
14819//    * Description
14820//
14821//    * Owner
14822//
14823//    * IDs for an ID target
14824//
14825//    * Tags for a Tag target
14826//
14827//    * From any supported tag type to another. The three supported tag types
14828//    are ID target, Tag target, and resource group. For more information, see
14829//    Target.
14830//
14831// If a parameter is null, then the corresponding field isn't modified.
14832//
14833// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14834// with awserr.Error's Code and Message methods to get detailed information about
14835// the error.
14836//
14837// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14838// API operation UpdateMaintenanceWindowTarget for usage and error information.
14839//
14840// Returned Error Types:
14841//   * DoesNotExistException
14842//   Error returned when the ID specified for a resource, such as a maintenance
14843//   window or patch baseline, doesn't exist.
14844//
14845//   For information about resource quotas in Amazon Web Services Systems Manager,
14846//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
14847//   in the Amazon Web Services General Reference.
14848//
14849//   * InternalServerError
14850//   An error occurred on the server side.
14851//
14852// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTarget
14853func (c *SSM) UpdateMaintenanceWindowTarget(input *UpdateMaintenanceWindowTargetInput) (*UpdateMaintenanceWindowTargetOutput, error) {
14854	req, out := c.UpdateMaintenanceWindowTargetRequest(input)
14855	return out, req.Send()
14856}
14857
14858// UpdateMaintenanceWindowTargetWithContext is the same as UpdateMaintenanceWindowTarget with the addition of
14859// the ability to pass a context and additional request options.
14860//
14861// See UpdateMaintenanceWindowTarget for details on how to use this API operation.
14862//
14863// The context must be non-nil and will be used for request cancellation. If
14864// the context is nil a panic will occur. In the future the SDK may create
14865// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14866// for more information on using Contexts.
14867func (c *SSM) UpdateMaintenanceWindowTargetWithContext(ctx aws.Context, input *UpdateMaintenanceWindowTargetInput, opts ...request.Option) (*UpdateMaintenanceWindowTargetOutput, error) {
14868	req, out := c.UpdateMaintenanceWindowTargetRequest(input)
14869	req.SetContext(ctx)
14870	req.ApplyOptions(opts...)
14871	return out, req.Send()
14872}
14873
14874const opUpdateMaintenanceWindowTask = "UpdateMaintenanceWindowTask"
14875
14876// UpdateMaintenanceWindowTaskRequest generates a "aws/request.Request" representing the
14877// client's request for the UpdateMaintenanceWindowTask operation. The "output" return
14878// value will be populated with the request's response once the request completes
14879// successfully.
14880//
14881// Use "Send" method on the returned Request to send the API call to the service.
14882// the "output" return value is not valid until after Send returns without error.
14883//
14884// See UpdateMaintenanceWindowTask for more information on using the UpdateMaintenanceWindowTask
14885// API call, and error handling.
14886//
14887// This method is useful when you want to inject custom logic or configuration
14888// into the SDK's request lifecycle. Such as custom headers, or retry logic.
14889//
14890//
14891//    // Example sending a request using the UpdateMaintenanceWindowTaskRequest method.
14892//    req, resp := client.UpdateMaintenanceWindowTaskRequest(params)
14893//
14894//    err := req.Send()
14895//    if err == nil { // resp is now filled
14896//        fmt.Println(resp)
14897//    }
14898//
14899// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTask
14900func (c *SSM) UpdateMaintenanceWindowTaskRequest(input *UpdateMaintenanceWindowTaskInput) (req *request.Request, output *UpdateMaintenanceWindowTaskOutput) {
14901	op := &request.Operation{
14902		Name:       opUpdateMaintenanceWindowTask,
14903		HTTPMethod: "POST",
14904		HTTPPath:   "/",
14905	}
14906
14907	if input == nil {
14908		input = &UpdateMaintenanceWindowTaskInput{}
14909	}
14910
14911	output = &UpdateMaintenanceWindowTaskOutput{}
14912	req = c.newRequest(op, input, output)
14913	return
14914}
14915
14916// UpdateMaintenanceWindowTask API operation for Amazon Simple Systems Manager (SSM).
14917//
14918// Modifies a task assigned to a maintenance window. You can't change the task
14919// type, but you can change the following values:
14920//
14921//    * TaskARN. For example, you can change a RUN_COMMAND task from AWS-RunPowerShellScript
14922//    to AWS-RunShellScript.
14923//
14924//    * ServiceRoleArn
14925//
14926//    * TaskInvocationParameters
14927//
14928//    * Priority
14929//
14930//    * MaxConcurrency
14931//
14932//    * MaxErrors
14933//
14934// One or more targets must be specified for maintenance window Run Command-type
14935// tasks. Depending on the task, targets are optional for other maintenance
14936// window task types (Automation, Lambda, and Step Functions). For more information
14937// about running tasks that don't specify targets, see Registering maintenance
14938// window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
14939// in the Amazon Web Services Systems Manager User Guide.
14940//
14941// If the value for a parameter in UpdateMaintenanceWindowTask is null, then
14942// the corresponding field isn't modified. If you set Replace to true, then
14943// all fields required by the RegisterTaskWithMaintenanceWindow operation are
14944// required for this request. Optional fields that aren't specified are set
14945// to null.
14946//
14947// When you update a maintenance window task that has options specified in TaskInvocationParameters,
14948// you must provide again all the TaskInvocationParameters values that you want
14949// to retain. The values you don't specify again are removed. For example, suppose
14950// that when you registered a Run Command task, you specified TaskInvocationParameters
14951// values for Comment, NotificationConfig, and OutputS3BucketName. If you update
14952// the maintenance window task and specify only a different OutputS3BucketName
14953// value, the values for Comment and NotificationConfig are removed.
14954//
14955// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
14956// with awserr.Error's Code and Message methods to get detailed information about
14957// the error.
14958//
14959// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
14960// API operation UpdateMaintenanceWindowTask for usage and error information.
14961//
14962// Returned Error Types:
14963//   * DoesNotExistException
14964//   Error returned when the ID specified for a resource, such as a maintenance
14965//   window or patch baseline, doesn't exist.
14966//
14967//   For information about resource quotas in Amazon Web Services Systems Manager,
14968//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
14969//   in the Amazon Web Services General Reference.
14970//
14971//   * InternalServerError
14972//   An error occurred on the server side.
14973//
14974// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateMaintenanceWindowTask
14975func (c *SSM) UpdateMaintenanceWindowTask(input *UpdateMaintenanceWindowTaskInput) (*UpdateMaintenanceWindowTaskOutput, error) {
14976	req, out := c.UpdateMaintenanceWindowTaskRequest(input)
14977	return out, req.Send()
14978}
14979
14980// UpdateMaintenanceWindowTaskWithContext is the same as UpdateMaintenanceWindowTask with the addition of
14981// the ability to pass a context and additional request options.
14982//
14983// See UpdateMaintenanceWindowTask for details on how to use this API operation.
14984//
14985// The context must be non-nil and will be used for request cancellation. If
14986// the context is nil a panic will occur. In the future the SDK may create
14987// sub-contexts for http.Requests. See https://golang.org/pkg/context/
14988// for more information on using Contexts.
14989func (c *SSM) UpdateMaintenanceWindowTaskWithContext(ctx aws.Context, input *UpdateMaintenanceWindowTaskInput, opts ...request.Option) (*UpdateMaintenanceWindowTaskOutput, error) {
14990	req, out := c.UpdateMaintenanceWindowTaskRequest(input)
14991	req.SetContext(ctx)
14992	req.ApplyOptions(opts...)
14993	return out, req.Send()
14994}
14995
14996const opUpdateManagedInstanceRole = "UpdateManagedInstanceRole"
14997
14998// UpdateManagedInstanceRoleRequest generates a "aws/request.Request" representing the
14999// client's request for the UpdateManagedInstanceRole operation. The "output" return
15000// value will be populated with the request's response once the request completes
15001// successfully.
15002//
15003// Use "Send" method on the returned Request to send the API call to the service.
15004// the "output" return value is not valid until after Send returns without error.
15005//
15006// See UpdateManagedInstanceRole for more information on using the UpdateManagedInstanceRole
15007// API call, and error handling.
15008//
15009// This method is useful when you want to inject custom logic or configuration
15010// into the SDK's request lifecycle. Such as custom headers, or retry logic.
15011//
15012//
15013//    // Example sending a request using the UpdateManagedInstanceRoleRequest method.
15014//    req, resp := client.UpdateManagedInstanceRoleRequest(params)
15015//
15016//    err := req.Send()
15017//    if err == nil { // resp is now filled
15018//        fmt.Println(resp)
15019//    }
15020//
15021// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateManagedInstanceRole
15022func (c *SSM) UpdateManagedInstanceRoleRequest(input *UpdateManagedInstanceRoleInput) (req *request.Request, output *UpdateManagedInstanceRoleOutput) {
15023	op := &request.Operation{
15024		Name:       opUpdateManagedInstanceRole,
15025		HTTPMethod: "POST",
15026		HTTPPath:   "/",
15027	}
15028
15029	if input == nil {
15030		input = &UpdateManagedInstanceRoleInput{}
15031	}
15032
15033	output = &UpdateManagedInstanceRoleOutput{}
15034	req = c.newRequest(op, input, output)
15035	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
15036	return
15037}
15038
15039// UpdateManagedInstanceRole API operation for Amazon Simple Systems Manager (SSM).
15040//
15041// Changes the Identity and Access Management (IAM) role that is assigned to
15042// the on-premises instance or virtual machines (VM). IAM roles are first assigned
15043// to these hybrid instances during the activation process. For more information,
15044// see CreateActivation.
15045//
15046// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
15047// with awserr.Error's Code and Message methods to get detailed information about
15048// the error.
15049//
15050// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
15051// API operation UpdateManagedInstanceRole for usage and error information.
15052//
15053// Returned Error Types:
15054//   * InvalidInstanceId
15055//   The following problems can cause this exception:
15056//
15057//      * You don't have permission to access the instance.
15058//
15059//      * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
15060//      Verify that SSM Agent is running.
15061//
15062//      * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
15063//      Agent.
15064//
15065//      * The instance isn't in valid state. Valid states are: Running, Pending,
15066//      Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
15067//
15068//   * InternalServerError
15069//   An error occurred on the server side.
15070//
15071// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateManagedInstanceRole
15072func (c *SSM) UpdateManagedInstanceRole(input *UpdateManagedInstanceRoleInput) (*UpdateManagedInstanceRoleOutput, error) {
15073	req, out := c.UpdateManagedInstanceRoleRequest(input)
15074	return out, req.Send()
15075}
15076
15077// UpdateManagedInstanceRoleWithContext is the same as UpdateManagedInstanceRole with the addition of
15078// the ability to pass a context and additional request options.
15079//
15080// See UpdateManagedInstanceRole for details on how to use this API operation.
15081//
15082// The context must be non-nil and will be used for request cancellation. If
15083// the context is nil a panic will occur. In the future the SDK may create
15084// sub-contexts for http.Requests. See https://golang.org/pkg/context/
15085// for more information on using Contexts.
15086func (c *SSM) UpdateManagedInstanceRoleWithContext(ctx aws.Context, input *UpdateManagedInstanceRoleInput, opts ...request.Option) (*UpdateManagedInstanceRoleOutput, error) {
15087	req, out := c.UpdateManagedInstanceRoleRequest(input)
15088	req.SetContext(ctx)
15089	req.ApplyOptions(opts...)
15090	return out, req.Send()
15091}
15092
15093const opUpdateOpsItem = "UpdateOpsItem"
15094
15095// UpdateOpsItemRequest generates a "aws/request.Request" representing the
15096// client's request for the UpdateOpsItem operation. The "output" return
15097// value will be populated with the request's response once the request completes
15098// successfully.
15099//
15100// Use "Send" method on the returned Request to send the API call to the service.
15101// the "output" return value is not valid until after Send returns without error.
15102//
15103// See UpdateOpsItem for more information on using the UpdateOpsItem
15104// API call, and error handling.
15105//
15106// This method is useful when you want to inject custom logic or configuration
15107// into the SDK's request lifecycle. Such as custom headers, or retry logic.
15108//
15109//
15110//    // Example sending a request using the UpdateOpsItemRequest method.
15111//    req, resp := client.UpdateOpsItemRequest(params)
15112//
15113//    err := req.Send()
15114//    if err == nil { // resp is now filled
15115//        fmt.Println(resp)
15116//    }
15117//
15118// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsItem
15119func (c *SSM) UpdateOpsItemRequest(input *UpdateOpsItemInput) (req *request.Request, output *UpdateOpsItemOutput) {
15120	op := &request.Operation{
15121		Name:       opUpdateOpsItem,
15122		HTTPMethod: "POST",
15123		HTTPPath:   "/",
15124	}
15125
15126	if input == nil {
15127		input = &UpdateOpsItemInput{}
15128	}
15129
15130	output = &UpdateOpsItemOutput{}
15131	req = c.newRequest(op, input, output)
15132	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
15133	return
15134}
15135
15136// UpdateOpsItem API operation for Amazon Simple Systems Manager (SSM).
15137//
15138// Edit or change an OpsItem. You must have permission in Identity and Access
15139// Management (IAM) to update an OpsItem. For more information, see Getting
15140// started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html)
15141// in the Amazon Web Services Systems Manager User Guide.
15142//
15143// Operations engineers and IT professionals use Amazon Web Services Systems
15144// Manager OpsCenter to view, investigate, and remediate operational issues
15145// impacting the performance and health of their Amazon Web Services resources.
15146// For more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
15147// in the Amazon Web Services Systems Manager User Guide.
15148//
15149// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
15150// with awserr.Error's Code and Message methods to get detailed information about
15151// the error.
15152//
15153// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
15154// API operation UpdateOpsItem for usage and error information.
15155//
15156// Returned Error Types:
15157//   * InternalServerError
15158//   An error occurred on the server side.
15159//
15160//   * OpsItemNotFoundException
15161//   The specified OpsItem ID doesn't exist. Verify the ID and try again.
15162//
15163//   * OpsItemAlreadyExistsException
15164//   The OpsItem already exists.
15165//
15166//   * OpsItemLimitExceededException
15167//   The request caused OpsItems to exceed one or more quotas. For information
15168//   about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
15169//
15170//   * OpsItemInvalidParameterException
15171//   A specified parameter argument isn't valid. Verify the available arguments
15172//   and try again.
15173//
15174// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsItem
15175func (c *SSM) UpdateOpsItem(input *UpdateOpsItemInput) (*UpdateOpsItemOutput, error) {
15176	req, out := c.UpdateOpsItemRequest(input)
15177	return out, req.Send()
15178}
15179
15180// UpdateOpsItemWithContext is the same as UpdateOpsItem with the addition of
15181// the ability to pass a context and additional request options.
15182//
15183// See UpdateOpsItem for details on how to use this API operation.
15184//
15185// The context must be non-nil and will be used for request cancellation. If
15186// the context is nil a panic will occur. In the future the SDK may create
15187// sub-contexts for http.Requests. See https://golang.org/pkg/context/
15188// for more information on using Contexts.
15189func (c *SSM) UpdateOpsItemWithContext(ctx aws.Context, input *UpdateOpsItemInput, opts ...request.Option) (*UpdateOpsItemOutput, error) {
15190	req, out := c.UpdateOpsItemRequest(input)
15191	req.SetContext(ctx)
15192	req.ApplyOptions(opts...)
15193	return out, req.Send()
15194}
15195
15196const opUpdateOpsMetadata = "UpdateOpsMetadata"
15197
15198// UpdateOpsMetadataRequest generates a "aws/request.Request" representing the
15199// client's request for the UpdateOpsMetadata operation. The "output" return
15200// value will be populated with the request's response once the request completes
15201// successfully.
15202//
15203// Use "Send" method on the returned Request to send the API call to the service.
15204// the "output" return value is not valid until after Send returns without error.
15205//
15206// See UpdateOpsMetadata for more information on using the UpdateOpsMetadata
15207// API call, and error handling.
15208//
15209// This method is useful when you want to inject custom logic or configuration
15210// into the SDK's request lifecycle. Such as custom headers, or retry logic.
15211//
15212//
15213//    // Example sending a request using the UpdateOpsMetadataRequest method.
15214//    req, resp := client.UpdateOpsMetadataRequest(params)
15215//
15216//    err := req.Send()
15217//    if err == nil { // resp is now filled
15218//        fmt.Println(resp)
15219//    }
15220//
15221// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsMetadata
15222func (c *SSM) UpdateOpsMetadataRequest(input *UpdateOpsMetadataInput) (req *request.Request, output *UpdateOpsMetadataOutput) {
15223	op := &request.Operation{
15224		Name:       opUpdateOpsMetadata,
15225		HTTPMethod: "POST",
15226		HTTPPath:   "/",
15227	}
15228
15229	if input == nil {
15230		input = &UpdateOpsMetadataInput{}
15231	}
15232
15233	output = &UpdateOpsMetadataOutput{}
15234	req = c.newRequest(op, input, output)
15235	return
15236}
15237
15238// UpdateOpsMetadata API operation for Amazon Simple Systems Manager (SSM).
15239//
15240// Amazon Web Services Systems Manager calls this API operation when you edit
15241// OpsMetadata in Application Manager.
15242//
15243// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
15244// with awserr.Error's Code and Message methods to get detailed information about
15245// the error.
15246//
15247// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
15248// API operation UpdateOpsMetadata for usage and error information.
15249//
15250// Returned Error Types:
15251//   * OpsMetadataNotFoundException
15252//   The OpsMetadata object doesn't exist.
15253//
15254//   * OpsMetadataInvalidArgumentException
15255//   One of the arguments passed is invalid.
15256//
15257//   * OpsMetadataKeyLimitExceededException
15258//   The OpsMetadata object exceeds the maximum number of OpsMetadata keys that
15259//   you can assign to an application in Application Manager.
15260//
15261//   * OpsMetadataTooManyUpdatesException
15262//   The system is processing too many concurrent updates. Wait a few moments
15263//   and try again.
15264//
15265//   * InternalServerError
15266//   An error occurred on the server side.
15267//
15268// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsMetadata
15269func (c *SSM) UpdateOpsMetadata(input *UpdateOpsMetadataInput) (*UpdateOpsMetadataOutput, error) {
15270	req, out := c.UpdateOpsMetadataRequest(input)
15271	return out, req.Send()
15272}
15273
15274// UpdateOpsMetadataWithContext is the same as UpdateOpsMetadata with the addition of
15275// the ability to pass a context and additional request options.
15276//
15277// See UpdateOpsMetadata for details on how to use this API operation.
15278//
15279// The context must be non-nil and will be used for request cancellation. If
15280// the context is nil a panic will occur. In the future the SDK may create
15281// sub-contexts for http.Requests. See https://golang.org/pkg/context/
15282// for more information on using Contexts.
15283func (c *SSM) UpdateOpsMetadataWithContext(ctx aws.Context, input *UpdateOpsMetadataInput, opts ...request.Option) (*UpdateOpsMetadataOutput, error) {
15284	req, out := c.UpdateOpsMetadataRequest(input)
15285	req.SetContext(ctx)
15286	req.ApplyOptions(opts...)
15287	return out, req.Send()
15288}
15289
15290const opUpdatePatchBaseline = "UpdatePatchBaseline"
15291
15292// UpdatePatchBaselineRequest generates a "aws/request.Request" representing the
15293// client's request for the UpdatePatchBaseline operation. The "output" return
15294// value will be populated with the request's response once the request completes
15295// successfully.
15296//
15297// Use "Send" method on the returned Request to send the API call to the service.
15298// the "output" return value is not valid until after Send returns without error.
15299//
15300// See UpdatePatchBaseline for more information on using the UpdatePatchBaseline
15301// API call, and error handling.
15302//
15303// This method is useful when you want to inject custom logic or configuration
15304// into the SDK's request lifecycle. Such as custom headers, or retry logic.
15305//
15306//
15307//    // Example sending a request using the UpdatePatchBaselineRequest method.
15308//    req, resp := client.UpdatePatchBaselineRequest(params)
15309//
15310//    err := req.Send()
15311//    if err == nil { // resp is now filled
15312//        fmt.Println(resp)
15313//    }
15314//
15315// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdatePatchBaseline
15316func (c *SSM) UpdatePatchBaselineRequest(input *UpdatePatchBaselineInput) (req *request.Request, output *UpdatePatchBaselineOutput) {
15317	op := &request.Operation{
15318		Name:       opUpdatePatchBaseline,
15319		HTTPMethod: "POST",
15320		HTTPPath:   "/",
15321	}
15322
15323	if input == nil {
15324		input = &UpdatePatchBaselineInput{}
15325	}
15326
15327	output = &UpdatePatchBaselineOutput{}
15328	req = c.newRequest(op, input, output)
15329	return
15330}
15331
15332// UpdatePatchBaseline API operation for Amazon Simple Systems Manager (SSM).
15333//
15334// Modifies an existing patch baseline. Fields not specified in the request
15335// are left unchanged.
15336//
15337// For information about valid key-value pairs in PatchFilters for each supported
15338// operating system type, see PatchFilter.
15339//
15340// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
15341// with awserr.Error's Code and Message methods to get detailed information about
15342// the error.
15343//
15344// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
15345// API operation UpdatePatchBaseline for usage and error information.
15346//
15347// Returned Error Types:
15348//   * DoesNotExistException
15349//   Error returned when the ID specified for a resource, such as a maintenance
15350//   window or patch baseline, doesn't exist.
15351//
15352//   For information about resource quotas in Amazon Web Services Systems Manager,
15353//   see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
15354//   in the Amazon Web Services General Reference.
15355//
15356//   * InternalServerError
15357//   An error occurred on the server side.
15358//
15359// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdatePatchBaseline
15360func (c *SSM) UpdatePatchBaseline(input *UpdatePatchBaselineInput) (*UpdatePatchBaselineOutput, error) {
15361	req, out := c.UpdatePatchBaselineRequest(input)
15362	return out, req.Send()
15363}
15364
15365// UpdatePatchBaselineWithContext is the same as UpdatePatchBaseline with the addition of
15366// the ability to pass a context and additional request options.
15367//
15368// See UpdatePatchBaseline for details on how to use this API operation.
15369//
15370// The context must be non-nil and will be used for request cancellation. If
15371// the context is nil a panic will occur. In the future the SDK may create
15372// sub-contexts for http.Requests. See https://golang.org/pkg/context/
15373// for more information on using Contexts.
15374func (c *SSM) UpdatePatchBaselineWithContext(ctx aws.Context, input *UpdatePatchBaselineInput, opts ...request.Option) (*UpdatePatchBaselineOutput, error) {
15375	req, out := c.UpdatePatchBaselineRequest(input)
15376	req.SetContext(ctx)
15377	req.ApplyOptions(opts...)
15378	return out, req.Send()
15379}
15380
15381const opUpdateResourceDataSync = "UpdateResourceDataSync"
15382
15383// UpdateResourceDataSyncRequest generates a "aws/request.Request" representing the
15384// client's request for the UpdateResourceDataSync operation. The "output" return
15385// value will be populated with the request's response once the request completes
15386// successfully.
15387//
15388// Use "Send" method on the returned Request to send the API call to the service.
15389// the "output" return value is not valid until after Send returns without error.
15390//
15391// See UpdateResourceDataSync for more information on using the UpdateResourceDataSync
15392// API call, and error handling.
15393//
15394// This method is useful when you want to inject custom logic or configuration
15395// into the SDK's request lifecycle. Such as custom headers, or retry logic.
15396//
15397//
15398//    // Example sending a request using the UpdateResourceDataSyncRequest method.
15399//    req, resp := client.UpdateResourceDataSyncRequest(params)
15400//
15401//    err := req.Send()
15402//    if err == nil { // resp is now filled
15403//        fmt.Println(resp)
15404//    }
15405//
15406// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateResourceDataSync
15407func (c *SSM) UpdateResourceDataSyncRequest(input *UpdateResourceDataSyncInput) (req *request.Request, output *UpdateResourceDataSyncOutput) {
15408	op := &request.Operation{
15409		Name:       opUpdateResourceDataSync,
15410		HTTPMethod: "POST",
15411		HTTPPath:   "/",
15412	}
15413
15414	if input == nil {
15415		input = &UpdateResourceDataSyncInput{}
15416	}
15417
15418	output = &UpdateResourceDataSyncOutput{}
15419	req = c.newRequest(op, input, output)
15420	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
15421	return
15422}
15423
15424// UpdateResourceDataSync API operation for Amazon Simple Systems Manager (SSM).
15425//
15426// Update a resource data sync. After you create a resource data sync for a
15427// Region, you can't change the account options for that sync. For example,
15428// if you create a sync in the us-east-2 (Ohio) Region and you choose the Include
15429// only the current account option, you can't edit that sync later and choose
15430// the Include all accounts from my Organizations configuration option. Instead,
15431// you must delete the first resource data sync, and create a new one.
15432//
15433// This API operation only supports a resource data sync that was created with
15434// a SyncFromSource SyncType.
15435//
15436// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
15437// with awserr.Error's Code and Message methods to get detailed information about
15438// the error.
15439//
15440// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
15441// API operation UpdateResourceDataSync for usage and error information.
15442//
15443// Returned Error Types:
15444//   * ResourceDataSyncNotFoundException
15445//   The specified sync name wasn't found.
15446//
15447//   * ResourceDataSyncInvalidConfigurationException
15448//   The specified sync configuration is invalid.
15449//
15450//   * ResourceDataSyncConflictException
15451//   Another UpdateResourceDataSync request is being processed. Wait a few minutes
15452//   and try again.
15453//
15454//   * InternalServerError
15455//   An error occurred on the server side.
15456//
15457// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateResourceDataSync
15458func (c *SSM) UpdateResourceDataSync(input *UpdateResourceDataSyncInput) (*UpdateResourceDataSyncOutput, error) {
15459	req, out := c.UpdateResourceDataSyncRequest(input)
15460	return out, req.Send()
15461}
15462
15463// UpdateResourceDataSyncWithContext is the same as UpdateResourceDataSync with the addition of
15464// the ability to pass a context and additional request options.
15465//
15466// See UpdateResourceDataSync for details on how to use this API operation.
15467//
15468// The context must be non-nil and will be used for request cancellation. If
15469// the context is nil a panic will occur. In the future the SDK may create
15470// sub-contexts for http.Requests. See https://golang.org/pkg/context/
15471// for more information on using Contexts.
15472func (c *SSM) UpdateResourceDataSyncWithContext(ctx aws.Context, input *UpdateResourceDataSyncInput, opts ...request.Option) (*UpdateResourceDataSyncOutput, error) {
15473	req, out := c.UpdateResourceDataSyncRequest(input)
15474	req.SetContext(ctx)
15475	req.ApplyOptions(opts...)
15476	return out, req.Send()
15477}
15478
15479const opUpdateServiceSetting = "UpdateServiceSetting"
15480
15481// UpdateServiceSettingRequest generates a "aws/request.Request" representing the
15482// client's request for the UpdateServiceSetting operation. The "output" return
15483// value will be populated with the request's response once the request completes
15484// successfully.
15485//
15486// Use "Send" method on the returned Request to send the API call to the service.
15487// the "output" return value is not valid until after Send returns without error.
15488//
15489// See UpdateServiceSetting for more information on using the UpdateServiceSetting
15490// API call, and error handling.
15491//
15492// This method is useful when you want to inject custom logic or configuration
15493// into the SDK's request lifecycle. Such as custom headers, or retry logic.
15494//
15495//
15496//    // Example sending a request using the UpdateServiceSettingRequest method.
15497//    req, resp := client.UpdateServiceSettingRequest(params)
15498//
15499//    err := req.Send()
15500//    if err == nil { // resp is now filled
15501//        fmt.Println(resp)
15502//    }
15503//
15504// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateServiceSetting
15505func (c *SSM) UpdateServiceSettingRequest(input *UpdateServiceSettingInput) (req *request.Request, output *UpdateServiceSettingOutput) {
15506	op := &request.Operation{
15507		Name:       opUpdateServiceSetting,
15508		HTTPMethod: "POST",
15509		HTTPPath:   "/",
15510	}
15511
15512	if input == nil {
15513		input = &UpdateServiceSettingInput{}
15514	}
15515
15516	output = &UpdateServiceSettingOutput{}
15517	req = c.newRequest(op, input, output)
15518	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
15519	return
15520}
15521
15522// UpdateServiceSetting API operation for Amazon Simple Systems Manager (SSM).
15523//
15524// ServiceSetting is an account-level setting for an Amazon Web Services service.
15525// This setting defines how a user interacts with or uses a service or a feature
15526// of a service. For example, if an Amazon Web Services service charges money
15527// to the account based on feature or service usage, then the Amazon Web Services
15528// service team might create a default setting of "false". This means the user
15529// can't use this feature unless they change the setting to "true" and intentionally
15530// opt in for a paid feature.
15531//
15532// Services map a SettingId object to a setting value. Amazon Web Services services
15533// teams define the default value for a SettingId. You can't create a new SettingId,
15534// but you can overwrite the default value if you have the ssm:UpdateServiceSetting
15535// permission for the setting. Use the GetServiceSetting API operation to view
15536// the current value. Or, use the ResetServiceSetting to change the value back
15537// to the original value defined by the Amazon Web Services service team.
15538//
15539// Update the service setting for the account.
15540//
15541// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
15542// with awserr.Error's Code and Message methods to get detailed information about
15543// the error.
15544//
15545// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s
15546// API operation UpdateServiceSetting for usage and error information.
15547//
15548// Returned Error Types:
15549//   * InternalServerError
15550//   An error occurred on the server side.
15551//
15552//   * ServiceSettingNotFound
15553//   The specified service setting wasn't found. Either the service name or the
15554//   setting hasn't been provisioned by the Amazon Web Services service team.
15555//
15556//   * TooManyUpdates
15557//   There are concurrent updates for a resource that supports one update at a
15558//   time.
15559//
15560// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateServiceSetting
15561func (c *SSM) UpdateServiceSetting(input *UpdateServiceSettingInput) (*UpdateServiceSettingOutput, error) {
15562	req, out := c.UpdateServiceSettingRequest(input)
15563	return out, req.Send()
15564}
15565
15566// UpdateServiceSettingWithContext is the same as UpdateServiceSetting with the addition of
15567// the ability to pass a context and additional request options.
15568//
15569// See UpdateServiceSetting for details on how to use this API operation.
15570//
15571// The context must be non-nil and will be used for request cancellation. If
15572// the context is nil a panic will occur. In the future the SDK may create
15573// sub-contexts for http.Requests. See https://golang.org/pkg/context/
15574// for more information on using Contexts.
15575func (c *SSM) UpdateServiceSettingWithContext(ctx aws.Context, input *UpdateServiceSettingInput, opts ...request.Option) (*UpdateServiceSettingOutput, error) {
15576	req, out := c.UpdateServiceSettingRequest(input)
15577	req.SetContext(ctx)
15578	req.ApplyOptions(opts...)
15579	return out, req.Send()
15580}
15581
15582// Information includes the Amazon Web Services account ID where the current
15583// document is shared and the version shared with that account.
15584type AccountSharingInfo struct {
15585	_ struct{} `type:"structure"`
15586
15587	// The Amazon Web Services account ID where the current document is shared.
15588	AccountId *string `type:"string"`
15589
15590	// The version of the current document shared with the account.
15591	SharedDocumentVersion *string `type:"string"`
15592}
15593
15594// String returns the string representation
15595func (s AccountSharingInfo) String() string {
15596	return awsutil.Prettify(s)
15597}
15598
15599// GoString returns the string representation
15600func (s AccountSharingInfo) GoString() string {
15601	return s.String()
15602}
15603
15604// SetAccountId sets the AccountId field's value.
15605func (s *AccountSharingInfo) SetAccountId(v string) *AccountSharingInfo {
15606	s.AccountId = &v
15607	return s
15608}
15609
15610// SetSharedDocumentVersion sets the SharedDocumentVersion field's value.
15611func (s *AccountSharingInfo) SetSharedDocumentVersion(v string) *AccountSharingInfo {
15612	s.SharedDocumentVersion = &v
15613	return s
15614}
15615
15616// An activation registers one or more on-premises servers or virtual machines
15617// (VMs) with Amazon Web Services so that you can configure those servers or
15618// VMs using Run Command. A server or VM that has been registered with Amazon
15619// Web Services Systems Manager is called a managed instance.
15620type Activation struct {
15621	_ struct{} `type:"structure"`
15622
15623	// The ID created by Systems Manager when you submitted the activation.
15624	ActivationId *string `type:"string"`
15625
15626	// The date the activation was created.
15627	CreatedDate *time.Time `type:"timestamp"`
15628
15629	// A name for the managed instance when it is created.
15630	DefaultInstanceName *string `type:"string"`
15631
15632	// A user defined description of the activation.
15633	Description *string `type:"string"`
15634
15635	// The date when this activation can no longer be used to register managed instances.
15636	ExpirationDate *time.Time `type:"timestamp"`
15637
15638	// Whether or not the activation is expired.
15639	Expired *bool `type:"boolean"`
15640
15641	// The Identity and Access Management (IAM) role to assign to the managed instance.
15642	IamRole *string `type:"string"`
15643
15644	// The maximum number of managed instances that can be registered using this
15645	// activation.
15646	RegistrationLimit *int64 `min:"1" type:"integer"`
15647
15648	// The number of managed instances already registered with this activation.
15649	RegistrationsCount *int64 `min:"1" type:"integer"`
15650
15651	// Tags assigned to the activation.
15652	Tags []*Tag `type:"list"`
15653}
15654
15655// String returns the string representation
15656func (s Activation) String() string {
15657	return awsutil.Prettify(s)
15658}
15659
15660// GoString returns the string representation
15661func (s Activation) GoString() string {
15662	return s.String()
15663}
15664
15665// SetActivationId sets the ActivationId field's value.
15666func (s *Activation) SetActivationId(v string) *Activation {
15667	s.ActivationId = &v
15668	return s
15669}
15670
15671// SetCreatedDate sets the CreatedDate field's value.
15672func (s *Activation) SetCreatedDate(v time.Time) *Activation {
15673	s.CreatedDate = &v
15674	return s
15675}
15676
15677// SetDefaultInstanceName sets the DefaultInstanceName field's value.
15678func (s *Activation) SetDefaultInstanceName(v string) *Activation {
15679	s.DefaultInstanceName = &v
15680	return s
15681}
15682
15683// SetDescription sets the Description field's value.
15684func (s *Activation) SetDescription(v string) *Activation {
15685	s.Description = &v
15686	return s
15687}
15688
15689// SetExpirationDate sets the ExpirationDate field's value.
15690func (s *Activation) SetExpirationDate(v time.Time) *Activation {
15691	s.ExpirationDate = &v
15692	return s
15693}
15694
15695// SetExpired sets the Expired field's value.
15696func (s *Activation) SetExpired(v bool) *Activation {
15697	s.Expired = &v
15698	return s
15699}
15700
15701// SetIamRole sets the IamRole field's value.
15702func (s *Activation) SetIamRole(v string) *Activation {
15703	s.IamRole = &v
15704	return s
15705}
15706
15707// SetRegistrationLimit sets the RegistrationLimit field's value.
15708func (s *Activation) SetRegistrationLimit(v int64) *Activation {
15709	s.RegistrationLimit = &v
15710	return s
15711}
15712
15713// SetRegistrationsCount sets the RegistrationsCount field's value.
15714func (s *Activation) SetRegistrationsCount(v int64) *Activation {
15715	s.RegistrationsCount = &v
15716	return s
15717}
15718
15719// SetTags sets the Tags field's value.
15720func (s *Activation) SetTags(v []*Tag) *Activation {
15721	s.Tags = v
15722	return s
15723}
15724
15725type AddTagsToResourceInput struct {
15726	_ struct{} `type:"structure"`
15727
15728	// The resource ID you want to tag.
15729	//
15730	// Use the ID of the resource. Here are some examples:
15731	//
15732	// MaintenanceWindow: mw-012345abcde
15733	//
15734	// PatchBaseline: pb-012345abcde
15735	//
15736	// OpsMetadata object: ResourceID for tagging is created from the Amazon Resource
15737	// Name (ARN) for the object. Specifically, ResourceID is created from the strings
15738	// that come after the word opsmetadata in the ARN. For example, an OpsMetadata
15739	// object with an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
15740	// has a ResourceID of either aws/ssm/MyGroup/appmanager or /aws/ssm/MyGroup/appmanager.
15741	//
15742	// For the Document and Parameter values, use the name of the resource.
15743	//
15744	// ManagedInstance: mi-012345abcde
15745	//
15746	// The ManagedInstance type for this API operation is only for on-premises managed
15747	// instances. You must specify the name of the managed instance in the following
15748	// format: mi-ID_number . For example, mi-1a2b3c4d5e6f.
15749	//
15750	// ResourceId is a required field
15751	ResourceId *string `type:"string" required:"true"`
15752
15753	// Specifies the type of resource you are tagging.
15754	//
15755	// The ManagedInstance type for this API operation is for on-premises managed
15756	// instances. You must specify the name of the managed instance in the following
15757	// format: mi-ID_number . For example, mi-1a2b3c4d5e6f.
15758	//
15759	// ResourceType is a required field
15760	ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"`
15761
15762	// One or more tags. The value parameter is required.
15763	//
15764	// Don't enter personally identifiable information in this field.
15765	//
15766	// Tags is a required field
15767	Tags []*Tag `type:"list" required:"true"`
15768}
15769
15770// String returns the string representation
15771func (s AddTagsToResourceInput) String() string {
15772	return awsutil.Prettify(s)
15773}
15774
15775// GoString returns the string representation
15776func (s AddTagsToResourceInput) GoString() string {
15777	return s.String()
15778}
15779
15780// Validate inspects the fields of the type to determine if they are valid.
15781func (s *AddTagsToResourceInput) Validate() error {
15782	invalidParams := request.ErrInvalidParams{Context: "AddTagsToResourceInput"}
15783	if s.ResourceId == nil {
15784		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
15785	}
15786	if s.ResourceType == nil {
15787		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
15788	}
15789	if s.Tags == nil {
15790		invalidParams.Add(request.NewErrParamRequired("Tags"))
15791	}
15792	if s.Tags != nil {
15793		for i, v := range s.Tags {
15794			if v == nil {
15795				continue
15796			}
15797			if err := v.Validate(); err != nil {
15798				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
15799			}
15800		}
15801	}
15802
15803	if invalidParams.Len() > 0 {
15804		return invalidParams
15805	}
15806	return nil
15807}
15808
15809// SetResourceId sets the ResourceId field's value.
15810func (s *AddTagsToResourceInput) SetResourceId(v string) *AddTagsToResourceInput {
15811	s.ResourceId = &v
15812	return s
15813}
15814
15815// SetResourceType sets the ResourceType field's value.
15816func (s *AddTagsToResourceInput) SetResourceType(v string) *AddTagsToResourceInput {
15817	s.ResourceType = &v
15818	return s
15819}
15820
15821// SetTags sets the Tags field's value.
15822func (s *AddTagsToResourceInput) SetTags(v []*Tag) *AddTagsToResourceInput {
15823	s.Tags = v
15824	return s
15825}
15826
15827type AddTagsToResourceOutput struct {
15828	_ struct{} `type:"structure"`
15829}
15830
15831// String returns the string representation
15832func (s AddTagsToResourceOutput) String() string {
15833	return awsutil.Prettify(s)
15834}
15835
15836// GoString returns the string representation
15837func (s AddTagsToResourceOutput) GoString() string {
15838	return s.String()
15839}
15840
15841// Error returned if an attempt is made to register a patch group with a patch
15842// baseline that is already registered with a different patch baseline.
15843type AlreadyExistsException struct {
15844	_            struct{}                  `type:"structure"`
15845	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
15846
15847	Message_ *string `locationName:"Message" type:"string"`
15848}
15849
15850// String returns the string representation
15851func (s AlreadyExistsException) String() string {
15852	return awsutil.Prettify(s)
15853}
15854
15855// GoString returns the string representation
15856func (s AlreadyExistsException) GoString() string {
15857	return s.String()
15858}
15859
15860func newErrorAlreadyExistsException(v protocol.ResponseMetadata) error {
15861	return &AlreadyExistsException{
15862		RespMetadata: v,
15863	}
15864}
15865
15866// Code returns the exception type name.
15867func (s *AlreadyExistsException) Code() string {
15868	return "AlreadyExistsException"
15869}
15870
15871// Message returns the exception's message.
15872func (s *AlreadyExistsException) Message() string {
15873	if s.Message_ != nil {
15874		return *s.Message_
15875	}
15876	return ""
15877}
15878
15879// OrigErr always returns nil, satisfies awserr.Error interface.
15880func (s *AlreadyExistsException) OrigErr() error {
15881	return nil
15882}
15883
15884func (s *AlreadyExistsException) Error() string {
15885	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
15886}
15887
15888// Status code returns the HTTP status code for the request's response error.
15889func (s *AlreadyExistsException) StatusCode() int {
15890	return s.RespMetadata.StatusCode
15891}
15892
15893// RequestID returns the service's response RequestID for request.
15894func (s *AlreadyExistsException) RequestID() string {
15895	return s.RespMetadata.RequestID
15896}
15897
15898type AssociateOpsItemRelatedItemInput struct {
15899	_ struct{} `type:"structure"`
15900
15901	// The type of association that you want to create between an OpsItem and a
15902	// resource. OpsCenter supports IsParentOf and RelatesTo association types.
15903	//
15904	// AssociationType is a required field
15905	AssociationType *string `type:"string" required:"true"`
15906
15907	// The ID of the OpsItem to which you want to associate a resource as a related
15908	// item.
15909	//
15910	// OpsItemId is a required field
15911	OpsItemId *string `type:"string" required:"true"`
15912
15913	// The type of resource that you want to associate with an OpsItem. OpsCenter
15914	// supports the following types:
15915	//
15916	// AWS::SSMIncidents::IncidentRecord: an Incident Manager incident. Incident
15917	// Manager is a capability of Amazon Web Services Systems Manager.
15918	//
15919	// AWS::SSM::Document: a Systems Manager (SSM) document.
15920	//
15921	// ResourceType is a required field
15922	ResourceType *string `type:"string" required:"true"`
15923
15924	// The Amazon Resource Name (ARN) of the Amazon Web Services resource that you
15925	// want to associate with the OpsItem.
15926	//
15927	// ResourceUri is a required field
15928	ResourceUri *string `type:"string" required:"true"`
15929}
15930
15931// String returns the string representation
15932func (s AssociateOpsItemRelatedItemInput) String() string {
15933	return awsutil.Prettify(s)
15934}
15935
15936// GoString returns the string representation
15937func (s AssociateOpsItemRelatedItemInput) GoString() string {
15938	return s.String()
15939}
15940
15941// Validate inspects the fields of the type to determine if they are valid.
15942func (s *AssociateOpsItemRelatedItemInput) Validate() error {
15943	invalidParams := request.ErrInvalidParams{Context: "AssociateOpsItemRelatedItemInput"}
15944	if s.AssociationType == nil {
15945		invalidParams.Add(request.NewErrParamRequired("AssociationType"))
15946	}
15947	if s.OpsItemId == nil {
15948		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
15949	}
15950	if s.ResourceType == nil {
15951		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
15952	}
15953	if s.ResourceUri == nil {
15954		invalidParams.Add(request.NewErrParamRequired("ResourceUri"))
15955	}
15956
15957	if invalidParams.Len() > 0 {
15958		return invalidParams
15959	}
15960	return nil
15961}
15962
15963// SetAssociationType sets the AssociationType field's value.
15964func (s *AssociateOpsItemRelatedItemInput) SetAssociationType(v string) *AssociateOpsItemRelatedItemInput {
15965	s.AssociationType = &v
15966	return s
15967}
15968
15969// SetOpsItemId sets the OpsItemId field's value.
15970func (s *AssociateOpsItemRelatedItemInput) SetOpsItemId(v string) *AssociateOpsItemRelatedItemInput {
15971	s.OpsItemId = &v
15972	return s
15973}
15974
15975// SetResourceType sets the ResourceType field's value.
15976func (s *AssociateOpsItemRelatedItemInput) SetResourceType(v string) *AssociateOpsItemRelatedItemInput {
15977	s.ResourceType = &v
15978	return s
15979}
15980
15981// SetResourceUri sets the ResourceUri field's value.
15982func (s *AssociateOpsItemRelatedItemInput) SetResourceUri(v string) *AssociateOpsItemRelatedItemInput {
15983	s.ResourceUri = &v
15984	return s
15985}
15986
15987type AssociateOpsItemRelatedItemOutput struct {
15988	_ struct{} `type:"structure"`
15989
15990	// The association ID.
15991	AssociationId *string `type:"string"`
15992}
15993
15994// String returns the string representation
15995func (s AssociateOpsItemRelatedItemOutput) String() string {
15996	return awsutil.Prettify(s)
15997}
15998
15999// GoString returns the string representation
16000func (s AssociateOpsItemRelatedItemOutput) GoString() string {
16001	return s.String()
16002}
16003
16004// SetAssociationId sets the AssociationId field's value.
16005func (s *AssociateOpsItemRelatedItemOutput) SetAssociationId(v string) *AssociateOpsItemRelatedItemOutput {
16006	s.AssociationId = &v
16007	return s
16008}
16009
16010// You must disassociate a document from all instances before you can delete
16011// it.
16012type AssociatedInstances struct {
16013	_            struct{}                  `type:"structure"`
16014	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16015
16016	Message_ *string `locationName:"message" type:"string"`
16017}
16018
16019// String returns the string representation
16020func (s AssociatedInstances) String() string {
16021	return awsutil.Prettify(s)
16022}
16023
16024// GoString returns the string representation
16025func (s AssociatedInstances) GoString() string {
16026	return s.String()
16027}
16028
16029func newErrorAssociatedInstances(v protocol.ResponseMetadata) error {
16030	return &AssociatedInstances{
16031		RespMetadata: v,
16032	}
16033}
16034
16035// Code returns the exception type name.
16036func (s *AssociatedInstances) Code() string {
16037	return "AssociatedInstances"
16038}
16039
16040// Message returns the exception's message.
16041func (s *AssociatedInstances) Message() string {
16042	if s.Message_ != nil {
16043		return *s.Message_
16044	}
16045	return ""
16046}
16047
16048// OrigErr always returns nil, satisfies awserr.Error interface.
16049func (s *AssociatedInstances) OrigErr() error {
16050	return nil
16051}
16052
16053func (s *AssociatedInstances) Error() string {
16054	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16055}
16056
16057// Status code returns the HTTP status code for the request's response error.
16058func (s *AssociatedInstances) StatusCode() int {
16059	return s.RespMetadata.StatusCode
16060}
16061
16062// RequestID returns the service's response RequestID for request.
16063func (s *AssociatedInstances) RequestID() string {
16064	return s.RespMetadata.RequestID
16065}
16066
16067// Describes an association of a Amazon Web Services Systems Manager document
16068// (SSM document) and an instance.
16069type Association struct {
16070	_ struct{} `type:"structure"`
16071
16072	// The ID created by the system when you create an association. An association
16073	// is a binding between a document and a set of targets with a schedule.
16074	AssociationId *string `type:"string"`
16075
16076	// The association name.
16077	AssociationName *string `type:"string"`
16078
16079	// The association version.
16080	AssociationVersion *string `type:"string"`
16081
16082	// The version of the document used in the association.
16083	DocumentVersion *string `type:"string"`
16084
16085	// The instance ID.
16086	InstanceId *string `type:"string"`
16087
16088	// The date on which the association was last run.
16089	LastExecutionDate *time.Time `type:"timestamp"`
16090
16091	// The name of the SSM document.
16092	Name *string `type:"string"`
16093
16094	// Information about the association.
16095	Overview *AssociationOverview `type:"structure"`
16096
16097	// A cron expression that specifies a schedule when the association runs. The
16098	// schedule runs in Coordinated Universal Time (UTC).
16099	ScheduleExpression *string `min:"1" type:"string"`
16100
16101	// The instances targeted by the request to create an association.
16102	Targets []*Target `type:"list"`
16103}
16104
16105// String returns the string representation
16106func (s Association) String() string {
16107	return awsutil.Prettify(s)
16108}
16109
16110// GoString returns the string representation
16111func (s Association) GoString() string {
16112	return s.String()
16113}
16114
16115// SetAssociationId sets the AssociationId field's value.
16116func (s *Association) SetAssociationId(v string) *Association {
16117	s.AssociationId = &v
16118	return s
16119}
16120
16121// SetAssociationName sets the AssociationName field's value.
16122func (s *Association) SetAssociationName(v string) *Association {
16123	s.AssociationName = &v
16124	return s
16125}
16126
16127// SetAssociationVersion sets the AssociationVersion field's value.
16128func (s *Association) SetAssociationVersion(v string) *Association {
16129	s.AssociationVersion = &v
16130	return s
16131}
16132
16133// SetDocumentVersion sets the DocumentVersion field's value.
16134func (s *Association) SetDocumentVersion(v string) *Association {
16135	s.DocumentVersion = &v
16136	return s
16137}
16138
16139// SetInstanceId sets the InstanceId field's value.
16140func (s *Association) SetInstanceId(v string) *Association {
16141	s.InstanceId = &v
16142	return s
16143}
16144
16145// SetLastExecutionDate sets the LastExecutionDate field's value.
16146func (s *Association) SetLastExecutionDate(v time.Time) *Association {
16147	s.LastExecutionDate = &v
16148	return s
16149}
16150
16151// SetName sets the Name field's value.
16152func (s *Association) SetName(v string) *Association {
16153	s.Name = &v
16154	return s
16155}
16156
16157// SetOverview sets the Overview field's value.
16158func (s *Association) SetOverview(v *AssociationOverview) *Association {
16159	s.Overview = v
16160	return s
16161}
16162
16163// SetScheduleExpression sets the ScheduleExpression field's value.
16164func (s *Association) SetScheduleExpression(v string) *Association {
16165	s.ScheduleExpression = &v
16166	return s
16167}
16168
16169// SetTargets sets the Targets field's value.
16170func (s *Association) SetTargets(v []*Target) *Association {
16171	s.Targets = v
16172	return s
16173}
16174
16175// The specified association already exists.
16176type AssociationAlreadyExists struct {
16177	_            struct{}                  `type:"structure"`
16178	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16179
16180	Message_ *string `locationName:"message" type:"string"`
16181}
16182
16183// String returns the string representation
16184func (s AssociationAlreadyExists) String() string {
16185	return awsutil.Prettify(s)
16186}
16187
16188// GoString returns the string representation
16189func (s AssociationAlreadyExists) GoString() string {
16190	return s.String()
16191}
16192
16193func newErrorAssociationAlreadyExists(v protocol.ResponseMetadata) error {
16194	return &AssociationAlreadyExists{
16195		RespMetadata: v,
16196	}
16197}
16198
16199// Code returns the exception type name.
16200func (s *AssociationAlreadyExists) Code() string {
16201	return "AssociationAlreadyExists"
16202}
16203
16204// Message returns the exception's message.
16205func (s *AssociationAlreadyExists) Message() string {
16206	if s.Message_ != nil {
16207		return *s.Message_
16208	}
16209	return ""
16210}
16211
16212// OrigErr always returns nil, satisfies awserr.Error interface.
16213func (s *AssociationAlreadyExists) OrigErr() error {
16214	return nil
16215}
16216
16217func (s *AssociationAlreadyExists) Error() string {
16218	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16219}
16220
16221// Status code returns the HTTP status code for the request's response error.
16222func (s *AssociationAlreadyExists) StatusCode() int {
16223	return s.RespMetadata.StatusCode
16224}
16225
16226// RequestID returns the service's response RequestID for request.
16227func (s *AssociationAlreadyExists) RequestID() string {
16228	return s.RespMetadata.RequestID
16229}
16230
16231// Describes the parameters for a document.
16232type AssociationDescription struct {
16233	_ struct{} `type:"structure"`
16234
16235	// By default, when you create a new associations, the system runs it immediately
16236	// after it is created and then according to the schedule you specified. Specify
16237	// this option if you don't want an association to run immediately after you
16238	// create it. This parameter isn't supported for rate expressions.
16239	ApplyOnlyAtCronInterval *bool `type:"boolean"`
16240
16241	// The association ID.
16242	AssociationId *string `type:"string"`
16243
16244	// The association name.
16245	AssociationName *string `type:"string"`
16246
16247	// The association version.
16248	AssociationVersion *string `type:"string"`
16249
16250	// Specify the target for the association. This target is required for associations
16251	// that use an Automation runbook and target resources by using rate controls.
16252	// Automation is a capability of Amazon Web Services Systems Manager.
16253	AutomationTargetParameterName *string `min:"1" type:"string"`
16254
16255	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
16256	// your associations are gated under. The associations only run when that change
16257	// calendar is open. For more information, see Amazon Web Services Systems Manager
16258	// Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
16259	CalendarNames []*string `type:"list"`
16260
16261	// The severity level that is assigned to the association.
16262	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
16263
16264	// The date when the association was made.
16265	Date *time.Time `type:"timestamp"`
16266
16267	// The document version.
16268	DocumentVersion *string `type:"string"`
16269
16270	// The instance ID.
16271	InstanceId *string `type:"string"`
16272
16273	// The date on which the association was last run.
16274	LastExecutionDate *time.Time `type:"timestamp"`
16275
16276	// The last date on which the association was successfully run.
16277	LastSuccessfulExecutionDate *time.Time `type:"timestamp"`
16278
16279	// The date when the association was last updated.
16280	LastUpdateAssociationDate *time.Time `type:"timestamp"`
16281
16282	// The maximum number of targets allowed to run the association at the same
16283	// time. You can specify a number, for example 10, or a percentage of the target
16284	// set, for example 10%. The default value is 100%, which means all targets
16285	// run the association at the same time.
16286	//
16287	// If a new instance starts and attempts to run an association while Systems
16288	// Manager is running MaxConcurrency associations, the association is allowed
16289	// to run. During the next association interval, the new instance will process
16290	// its association within the limit specified for MaxConcurrency.
16291	MaxConcurrency *string `min:"1" type:"string"`
16292
16293	// The number of errors that are allowed before the system stops sending requests
16294	// to run the association on additional targets. You can specify either an absolute
16295	// number of errors, for example 10, or a percentage of the target set, for
16296	// example 10%. If you specify 3, for example, the system stops sending requests
16297	// when the fourth error is received. If you specify 0, then the system stops
16298	// sending requests after the first error is returned. If you run an association
16299	// on 50 instances and set MaxError to 10%, then the system stops sending the
16300	// request when the sixth error is received.
16301	//
16302	// Executions that are already running an association when MaxErrors is reached
16303	// are allowed to complete, but some of these executions may fail as well. If
16304	// you need to ensure that there won't be more than max-errors failed executions,
16305	// set MaxConcurrency to 1 so that executions proceed one at a time.
16306	MaxErrors *string `min:"1" type:"string"`
16307
16308	// The name of the SSM document.
16309	Name *string `type:"string"`
16310
16311	// An S3 bucket where you want to store the output details of the request.
16312	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
16313
16314	// Information about the association.
16315	Overview *AssociationOverview `type:"structure"`
16316
16317	// A description of the parameters for a document.
16318	Parameters map[string][]*string `type:"map"`
16319
16320	// A cron expression that specifies a schedule when the association runs.
16321	ScheduleExpression *string `min:"1" type:"string"`
16322
16323	// The association status.
16324	Status *AssociationStatus `type:"structure"`
16325
16326	// The mode for generating association compliance. You can specify AUTO or MANUAL.
16327	// In AUTO mode, the system uses the status of the association execution to
16328	// determine the compliance status. If the association execution runs successfully,
16329	// then the association is COMPLIANT. If the association execution doesn't run
16330	// successfully, the association is NON-COMPLIANT.
16331	//
16332	// In MANUAL mode, you must specify the AssociationId as a parameter for the
16333	// PutComplianceItems API operation. In this case, compliance data isn't managed
16334	// by State Manager, a capability of Amazon Web Services Systems Manager. It
16335	// is managed by your direct call to the PutComplianceItems API operation.
16336	//
16337	// By default, all associations use AUTO mode.
16338	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
16339
16340	// The combination of Amazon Web Services Regions and Amazon Web Services accounts
16341	// where you want to run the association.
16342	TargetLocations []*TargetLocation `min:"1" type:"list"`
16343
16344	// The instances targeted by the request.
16345	Targets []*Target `type:"list"`
16346}
16347
16348// String returns the string representation
16349func (s AssociationDescription) String() string {
16350	return awsutil.Prettify(s)
16351}
16352
16353// GoString returns the string representation
16354func (s AssociationDescription) GoString() string {
16355	return s.String()
16356}
16357
16358// SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
16359func (s *AssociationDescription) SetApplyOnlyAtCronInterval(v bool) *AssociationDescription {
16360	s.ApplyOnlyAtCronInterval = &v
16361	return s
16362}
16363
16364// SetAssociationId sets the AssociationId field's value.
16365func (s *AssociationDescription) SetAssociationId(v string) *AssociationDescription {
16366	s.AssociationId = &v
16367	return s
16368}
16369
16370// SetAssociationName sets the AssociationName field's value.
16371func (s *AssociationDescription) SetAssociationName(v string) *AssociationDescription {
16372	s.AssociationName = &v
16373	return s
16374}
16375
16376// SetAssociationVersion sets the AssociationVersion field's value.
16377func (s *AssociationDescription) SetAssociationVersion(v string) *AssociationDescription {
16378	s.AssociationVersion = &v
16379	return s
16380}
16381
16382// SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
16383func (s *AssociationDescription) SetAutomationTargetParameterName(v string) *AssociationDescription {
16384	s.AutomationTargetParameterName = &v
16385	return s
16386}
16387
16388// SetCalendarNames sets the CalendarNames field's value.
16389func (s *AssociationDescription) SetCalendarNames(v []*string) *AssociationDescription {
16390	s.CalendarNames = v
16391	return s
16392}
16393
16394// SetComplianceSeverity sets the ComplianceSeverity field's value.
16395func (s *AssociationDescription) SetComplianceSeverity(v string) *AssociationDescription {
16396	s.ComplianceSeverity = &v
16397	return s
16398}
16399
16400// SetDate sets the Date field's value.
16401func (s *AssociationDescription) SetDate(v time.Time) *AssociationDescription {
16402	s.Date = &v
16403	return s
16404}
16405
16406// SetDocumentVersion sets the DocumentVersion field's value.
16407func (s *AssociationDescription) SetDocumentVersion(v string) *AssociationDescription {
16408	s.DocumentVersion = &v
16409	return s
16410}
16411
16412// SetInstanceId sets the InstanceId field's value.
16413func (s *AssociationDescription) SetInstanceId(v string) *AssociationDescription {
16414	s.InstanceId = &v
16415	return s
16416}
16417
16418// SetLastExecutionDate sets the LastExecutionDate field's value.
16419func (s *AssociationDescription) SetLastExecutionDate(v time.Time) *AssociationDescription {
16420	s.LastExecutionDate = &v
16421	return s
16422}
16423
16424// SetLastSuccessfulExecutionDate sets the LastSuccessfulExecutionDate field's value.
16425func (s *AssociationDescription) SetLastSuccessfulExecutionDate(v time.Time) *AssociationDescription {
16426	s.LastSuccessfulExecutionDate = &v
16427	return s
16428}
16429
16430// SetLastUpdateAssociationDate sets the LastUpdateAssociationDate field's value.
16431func (s *AssociationDescription) SetLastUpdateAssociationDate(v time.Time) *AssociationDescription {
16432	s.LastUpdateAssociationDate = &v
16433	return s
16434}
16435
16436// SetMaxConcurrency sets the MaxConcurrency field's value.
16437func (s *AssociationDescription) SetMaxConcurrency(v string) *AssociationDescription {
16438	s.MaxConcurrency = &v
16439	return s
16440}
16441
16442// SetMaxErrors sets the MaxErrors field's value.
16443func (s *AssociationDescription) SetMaxErrors(v string) *AssociationDescription {
16444	s.MaxErrors = &v
16445	return s
16446}
16447
16448// SetName sets the Name field's value.
16449func (s *AssociationDescription) SetName(v string) *AssociationDescription {
16450	s.Name = &v
16451	return s
16452}
16453
16454// SetOutputLocation sets the OutputLocation field's value.
16455func (s *AssociationDescription) SetOutputLocation(v *InstanceAssociationOutputLocation) *AssociationDescription {
16456	s.OutputLocation = v
16457	return s
16458}
16459
16460// SetOverview sets the Overview field's value.
16461func (s *AssociationDescription) SetOverview(v *AssociationOverview) *AssociationDescription {
16462	s.Overview = v
16463	return s
16464}
16465
16466// SetParameters sets the Parameters field's value.
16467func (s *AssociationDescription) SetParameters(v map[string][]*string) *AssociationDescription {
16468	s.Parameters = v
16469	return s
16470}
16471
16472// SetScheduleExpression sets the ScheduleExpression field's value.
16473func (s *AssociationDescription) SetScheduleExpression(v string) *AssociationDescription {
16474	s.ScheduleExpression = &v
16475	return s
16476}
16477
16478// SetStatus sets the Status field's value.
16479func (s *AssociationDescription) SetStatus(v *AssociationStatus) *AssociationDescription {
16480	s.Status = v
16481	return s
16482}
16483
16484// SetSyncCompliance sets the SyncCompliance field's value.
16485func (s *AssociationDescription) SetSyncCompliance(v string) *AssociationDescription {
16486	s.SyncCompliance = &v
16487	return s
16488}
16489
16490// SetTargetLocations sets the TargetLocations field's value.
16491func (s *AssociationDescription) SetTargetLocations(v []*TargetLocation) *AssociationDescription {
16492	s.TargetLocations = v
16493	return s
16494}
16495
16496// SetTargets sets the Targets field's value.
16497func (s *AssociationDescription) SetTargets(v []*Target) *AssociationDescription {
16498	s.Targets = v
16499	return s
16500}
16501
16502// The specified association doesn't exist.
16503type AssociationDoesNotExist struct {
16504	_            struct{}                  `type:"structure"`
16505	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16506
16507	Message_ *string `locationName:"Message" type:"string"`
16508}
16509
16510// String returns the string representation
16511func (s AssociationDoesNotExist) String() string {
16512	return awsutil.Prettify(s)
16513}
16514
16515// GoString returns the string representation
16516func (s AssociationDoesNotExist) GoString() string {
16517	return s.String()
16518}
16519
16520func newErrorAssociationDoesNotExist(v protocol.ResponseMetadata) error {
16521	return &AssociationDoesNotExist{
16522		RespMetadata: v,
16523	}
16524}
16525
16526// Code returns the exception type name.
16527func (s *AssociationDoesNotExist) Code() string {
16528	return "AssociationDoesNotExist"
16529}
16530
16531// Message returns the exception's message.
16532func (s *AssociationDoesNotExist) Message() string {
16533	if s.Message_ != nil {
16534		return *s.Message_
16535	}
16536	return ""
16537}
16538
16539// OrigErr always returns nil, satisfies awserr.Error interface.
16540func (s *AssociationDoesNotExist) OrigErr() error {
16541	return nil
16542}
16543
16544func (s *AssociationDoesNotExist) Error() string {
16545	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16546}
16547
16548// Status code returns the HTTP status code for the request's response error.
16549func (s *AssociationDoesNotExist) StatusCode() int {
16550	return s.RespMetadata.StatusCode
16551}
16552
16553// RequestID returns the service's response RequestID for request.
16554func (s *AssociationDoesNotExist) RequestID() string {
16555	return s.RespMetadata.RequestID
16556}
16557
16558// Includes information about the specified association.
16559type AssociationExecution struct {
16560	_ struct{} `type:"structure"`
16561
16562	// The association ID.
16563	AssociationId *string `type:"string"`
16564
16565	// The association version.
16566	AssociationVersion *string `type:"string"`
16567
16568	// The time the execution started.
16569	CreatedTime *time.Time `type:"timestamp"`
16570
16571	// Detailed status information about the execution.
16572	DetailedStatus *string `type:"string"`
16573
16574	// The execution ID for the association.
16575	ExecutionId *string `type:"string"`
16576
16577	// The date of the last execution.
16578	LastExecutionDate *time.Time `type:"timestamp"`
16579
16580	// An aggregate status of the resources in the execution based on the status
16581	// type.
16582	ResourceCountByStatus *string `type:"string"`
16583
16584	// The status of the association execution.
16585	Status *string `type:"string"`
16586}
16587
16588// String returns the string representation
16589func (s AssociationExecution) String() string {
16590	return awsutil.Prettify(s)
16591}
16592
16593// GoString returns the string representation
16594func (s AssociationExecution) GoString() string {
16595	return s.String()
16596}
16597
16598// SetAssociationId sets the AssociationId field's value.
16599func (s *AssociationExecution) SetAssociationId(v string) *AssociationExecution {
16600	s.AssociationId = &v
16601	return s
16602}
16603
16604// SetAssociationVersion sets the AssociationVersion field's value.
16605func (s *AssociationExecution) SetAssociationVersion(v string) *AssociationExecution {
16606	s.AssociationVersion = &v
16607	return s
16608}
16609
16610// SetCreatedTime sets the CreatedTime field's value.
16611func (s *AssociationExecution) SetCreatedTime(v time.Time) *AssociationExecution {
16612	s.CreatedTime = &v
16613	return s
16614}
16615
16616// SetDetailedStatus sets the DetailedStatus field's value.
16617func (s *AssociationExecution) SetDetailedStatus(v string) *AssociationExecution {
16618	s.DetailedStatus = &v
16619	return s
16620}
16621
16622// SetExecutionId sets the ExecutionId field's value.
16623func (s *AssociationExecution) SetExecutionId(v string) *AssociationExecution {
16624	s.ExecutionId = &v
16625	return s
16626}
16627
16628// SetLastExecutionDate sets the LastExecutionDate field's value.
16629func (s *AssociationExecution) SetLastExecutionDate(v time.Time) *AssociationExecution {
16630	s.LastExecutionDate = &v
16631	return s
16632}
16633
16634// SetResourceCountByStatus sets the ResourceCountByStatus field's value.
16635func (s *AssociationExecution) SetResourceCountByStatus(v string) *AssociationExecution {
16636	s.ResourceCountByStatus = &v
16637	return s
16638}
16639
16640// SetStatus sets the Status field's value.
16641func (s *AssociationExecution) SetStatus(v string) *AssociationExecution {
16642	s.Status = &v
16643	return s
16644}
16645
16646// The specified execution ID doesn't exist. Verify the ID number and try again.
16647type AssociationExecutionDoesNotExist struct {
16648	_            struct{}                  `type:"structure"`
16649	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16650
16651	Message_ *string `locationName:"Message" type:"string"`
16652}
16653
16654// String returns the string representation
16655func (s AssociationExecutionDoesNotExist) String() string {
16656	return awsutil.Prettify(s)
16657}
16658
16659// GoString returns the string representation
16660func (s AssociationExecutionDoesNotExist) GoString() string {
16661	return s.String()
16662}
16663
16664func newErrorAssociationExecutionDoesNotExist(v protocol.ResponseMetadata) error {
16665	return &AssociationExecutionDoesNotExist{
16666		RespMetadata: v,
16667	}
16668}
16669
16670// Code returns the exception type name.
16671func (s *AssociationExecutionDoesNotExist) Code() string {
16672	return "AssociationExecutionDoesNotExist"
16673}
16674
16675// Message returns the exception's message.
16676func (s *AssociationExecutionDoesNotExist) Message() string {
16677	if s.Message_ != nil {
16678		return *s.Message_
16679	}
16680	return ""
16681}
16682
16683// OrigErr always returns nil, satisfies awserr.Error interface.
16684func (s *AssociationExecutionDoesNotExist) OrigErr() error {
16685	return nil
16686}
16687
16688func (s *AssociationExecutionDoesNotExist) Error() string {
16689	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
16690}
16691
16692// Status code returns the HTTP status code for the request's response error.
16693func (s *AssociationExecutionDoesNotExist) StatusCode() int {
16694	return s.RespMetadata.StatusCode
16695}
16696
16697// RequestID returns the service's response RequestID for request.
16698func (s *AssociationExecutionDoesNotExist) RequestID() string {
16699	return s.RespMetadata.RequestID
16700}
16701
16702// Filters used in the request.
16703type AssociationExecutionFilter struct {
16704	_ struct{} `type:"structure"`
16705
16706	// The key value used in the request.
16707	//
16708	// Key is a required field
16709	Key *string `type:"string" required:"true" enum:"AssociationExecutionFilterKey"`
16710
16711	// The filter type specified in the request.
16712	//
16713	// Type is a required field
16714	Type *string `type:"string" required:"true" enum:"AssociationFilterOperatorType"`
16715
16716	// The value specified for the key.
16717	//
16718	// Value is a required field
16719	Value *string `min:"1" type:"string" required:"true"`
16720}
16721
16722// String returns the string representation
16723func (s AssociationExecutionFilter) String() string {
16724	return awsutil.Prettify(s)
16725}
16726
16727// GoString returns the string representation
16728func (s AssociationExecutionFilter) GoString() string {
16729	return s.String()
16730}
16731
16732// Validate inspects the fields of the type to determine if they are valid.
16733func (s *AssociationExecutionFilter) Validate() error {
16734	invalidParams := request.ErrInvalidParams{Context: "AssociationExecutionFilter"}
16735	if s.Key == nil {
16736		invalidParams.Add(request.NewErrParamRequired("Key"))
16737	}
16738	if s.Type == nil {
16739		invalidParams.Add(request.NewErrParamRequired("Type"))
16740	}
16741	if s.Value == nil {
16742		invalidParams.Add(request.NewErrParamRequired("Value"))
16743	}
16744	if s.Value != nil && len(*s.Value) < 1 {
16745		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
16746	}
16747
16748	if invalidParams.Len() > 0 {
16749		return invalidParams
16750	}
16751	return nil
16752}
16753
16754// SetKey sets the Key field's value.
16755func (s *AssociationExecutionFilter) SetKey(v string) *AssociationExecutionFilter {
16756	s.Key = &v
16757	return s
16758}
16759
16760// SetType sets the Type field's value.
16761func (s *AssociationExecutionFilter) SetType(v string) *AssociationExecutionFilter {
16762	s.Type = &v
16763	return s
16764}
16765
16766// SetValue sets the Value field's value.
16767func (s *AssociationExecutionFilter) SetValue(v string) *AssociationExecutionFilter {
16768	s.Value = &v
16769	return s
16770}
16771
16772// Includes information about the specified association execution.
16773type AssociationExecutionTarget struct {
16774	_ struct{} `type:"structure"`
16775
16776	// The association ID.
16777	AssociationId *string `type:"string"`
16778
16779	// The association version.
16780	AssociationVersion *string `type:"string"`
16781
16782	// Detailed information about the execution status.
16783	DetailedStatus *string `type:"string"`
16784
16785	// The execution ID.
16786	ExecutionId *string `type:"string"`
16787
16788	// The date of the last execution.
16789	LastExecutionDate *time.Time `type:"timestamp"`
16790
16791	// The location where the association details are saved.
16792	OutputSource *OutputSource `type:"structure"`
16793
16794	// The resource ID, for example, the instance ID where the association ran.
16795	ResourceId *string `min:"1" type:"string"`
16796
16797	// The resource type, for example, instance.
16798	ResourceType *string `min:"1" type:"string"`
16799
16800	// The association execution status.
16801	Status *string `type:"string"`
16802}
16803
16804// String returns the string representation
16805func (s AssociationExecutionTarget) String() string {
16806	return awsutil.Prettify(s)
16807}
16808
16809// GoString returns the string representation
16810func (s AssociationExecutionTarget) GoString() string {
16811	return s.String()
16812}
16813
16814// SetAssociationId sets the AssociationId field's value.
16815func (s *AssociationExecutionTarget) SetAssociationId(v string) *AssociationExecutionTarget {
16816	s.AssociationId = &v
16817	return s
16818}
16819
16820// SetAssociationVersion sets the AssociationVersion field's value.
16821func (s *AssociationExecutionTarget) SetAssociationVersion(v string) *AssociationExecutionTarget {
16822	s.AssociationVersion = &v
16823	return s
16824}
16825
16826// SetDetailedStatus sets the DetailedStatus field's value.
16827func (s *AssociationExecutionTarget) SetDetailedStatus(v string) *AssociationExecutionTarget {
16828	s.DetailedStatus = &v
16829	return s
16830}
16831
16832// SetExecutionId sets the ExecutionId field's value.
16833func (s *AssociationExecutionTarget) SetExecutionId(v string) *AssociationExecutionTarget {
16834	s.ExecutionId = &v
16835	return s
16836}
16837
16838// SetLastExecutionDate sets the LastExecutionDate field's value.
16839func (s *AssociationExecutionTarget) SetLastExecutionDate(v time.Time) *AssociationExecutionTarget {
16840	s.LastExecutionDate = &v
16841	return s
16842}
16843
16844// SetOutputSource sets the OutputSource field's value.
16845func (s *AssociationExecutionTarget) SetOutputSource(v *OutputSource) *AssociationExecutionTarget {
16846	s.OutputSource = v
16847	return s
16848}
16849
16850// SetResourceId sets the ResourceId field's value.
16851func (s *AssociationExecutionTarget) SetResourceId(v string) *AssociationExecutionTarget {
16852	s.ResourceId = &v
16853	return s
16854}
16855
16856// SetResourceType sets the ResourceType field's value.
16857func (s *AssociationExecutionTarget) SetResourceType(v string) *AssociationExecutionTarget {
16858	s.ResourceType = &v
16859	return s
16860}
16861
16862// SetStatus sets the Status field's value.
16863func (s *AssociationExecutionTarget) SetStatus(v string) *AssociationExecutionTarget {
16864	s.Status = &v
16865	return s
16866}
16867
16868// Filters for the association execution.
16869type AssociationExecutionTargetsFilter struct {
16870	_ struct{} `type:"structure"`
16871
16872	// The key value used in the request.
16873	//
16874	// Key is a required field
16875	Key *string `type:"string" required:"true" enum:"AssociationExecutionTargetsFilterKey"`
16876
16877	// The value specified for the key.
16878	//
16879	// Value is a required field
16880	Value *string `min:"1" type:"string" required:"true"`
16881}
16882
16883// String returns the string representation
16884func (s AssociationExecutionTargetsFilter) String() string {
16885	return awsutil.Prettify(s)
16886}
16887
16888// GoString returns the string representation
16889func (s AssociationExecutionTargetsFilter) GoString() string {
16890	return s.String()
16891}
16892
16893// Validate inspects the fields of the type to determine if they are valid.
16894func (s *AssociationExecutionTargetsFilter) Validate() error {
16895	invalidParams := request.ErrInvalidParams{Context: "AssociationExecutionTargetsFilter"}
16896	if s.Key == nil {
16897		invalidParams.Add(request.NewErrParamRequired("Key"))
16898	}
16899	if s.Value == nil {
16900		invalidParams.Add(request.NewErrParamRequired("Value"))
16901	}
16902	if s.Value != nil && len(*s.Value) < 1 {
16903		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
16904	}
16905
16906	if invalidParams.Len() > 0 {
16907		return invalidParams
16908	}
16909	return nil
16910}
16911
16912// SetKey sets the Key field's value.
16913func (s *AssociationExecutionTargetsFilter) SetKey(v string) *AssociationExecutionTargetsFilter {
16914	s.Key = &v
16915	return s
16916}
16917
16918// SetValue sets the Value field's value.
16919func (s *AssociationExecutionTargetsFilter) SetValue(v string) *AssociationExecutionTargetsFilter {
16920	s.Value = &v
16921	return s
16922}
16923
16924// Describes a filter.
16925type AssociationFilter struct {
16926	_ struct{} `type:"structure"`
16927
16928	// The name of the filter.
16929	//
16930	// InstanceId has been deprecated.
16931	//
16932	// Key is a required field
16933	Key *string `locationName:"key" type:"string" required:"true" enum:"AssociationFilterKey"`
16934
16935	// The filter value.
16936	//
16937	// Value is a required field
16938	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
16939}
16940
16941// String returns the string representation
16942func (s AssociationFilter) String() string {
16943	return awsutil.Prettify(s)
16944}
16945
16946// GoString returns the string representation
16947func (s AssociationFilter) GoString() string {
16948	return s.String()
16949}
16950
16951// Validate inspects the fields of the type to determine if they are valid.
16952func (s *AssociationFilter) Validate() error {
16953	invalidParams := request.ErrInvalidParams{Context: "AssociationFilter"}
16954	if s.Key == nil {
16955		invalidParams.Add(request.NewErrParamRequired("Key"))
16956	}
16957	if s.Value == nil {
16958		invalidParams.Add(request.NewErrParamRequired("Value"))
16959	}
16960	if s.Value != nil && len(*s.Value) < 1 {
16961		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
16962	}
16963
16964	if invalidParams.Len() > 0 {
16965		return invalidParams
16966	}
16967	return nil
16968}
16969
16970// SetKey sets the Key field's value.
16971func (s *AssociationFilter) SetKey(v string) *AssociationFilter {
16972	s.Key = &v
16973	return s
16974}
16975
16976// SetValue sets the Value field's value.
16977func (s *AssociationFilter) SetValue(v string) *AssociationFilter {
16978	s.Value = &v
16979	return s
16980}
16981
16982// You can have at most 2,000 active associations.
16983type AssociationLimitExceeded struct {
16984	_            struct{}                  `type:"structure"`
16985	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
16986
16987	Message_ *string `locationName:"message" type:"string"`
16988}
16989
16990// String returns the string representation
16991func (s AssociationLimitExceeded) String() string {
16992	return awsutil.Prettify(s)
16993}
16994
16995// GoString returns the string representation
16996func (s AssociationLimitExceeded) GoString() string {
16997	return s.String()
16998}
16999
17000func newErrorAssociationLimitExceeded(v protocol.ResponseMetadata) error {
17001	return &AssociationLimitExceeded{
17002		RespMetadata: v,
17003	}
17004}
17005
17006// Code returns the exception type name.
17007func (s *AssociationLimitExceeded) Code() string {
17008	return "AssociationLimitExceeded"
17009}
17010
17011// Message returns the exception's message.
17012func (s *AssociationLimitExceeded) Message() string {
17013	if s.Message_ != nil {
17014		return *s.Message_
17015	}
17016	return ""
17017}
17018
17019// OrigErr always returns nil, satisfies awserr.Error interface.
17020func (s *AssociationLimitExceeded) OrigErr() error {
17021	return nil
17022}
17023
17024func (s *AssociationLimitExceeded) Error() string {
17025	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17026}
17027
17028// Status code returns the HTTP status code for the request's response error.
17029func (s *AssociationLimitExceeded) StatusCode() int {
17030	return s.RespMetadata.StatusCode
17031}
17032
17033// RequestID returns the service's response RequestID for request.
17034func (s *AssociationLimitExceeded) RequestID() string {
17035	return s.RespMetadata.RequestID
17036}
17037
17038// Information about the association.
17039type AssociationOverview struct {
17040	_ struct{} `type:"structure"`
17041
17042	// Returns the number of targets for the association status. For example, if
17043	// you created an association with two instances, and one of them was successful,
17044	// this would return the count of instances by status.
17045	AssociationStatusAggregatedCount map[string]*int64 `type:"map"`
17046
17047	// A detailed status of the association.
17048	DetailedStatus *string `type:"string"`
17049
17050	// The status of the association. Status can be: Pending, Success, or Failed.
17051	Status *string `type:"string"`
17052}
17053
17054// String returns the string representation
17055func (s AssociationOverview) String() string {
17056	return awsutil.Prettify(s)
17057}
17058
17059// GoString returns the string representation
17060func (s AssociationOverview) GoString() string {
17061	return s.String()
17062}
17063
17064// SetAssociationStatusAggregatedCount sets the AssociationStatusAggregatedCount field's value.
17065func (s *AssociationOverview) SetAssociationStatusAggregatedCount(v map[string]*int64) *AssociationOverview {
17066	s.AssociationStatusAggregatedCount = v
17067	return s
17068}
17069
17070// SetDetailedStatus sets the DetailedStatus field's value.
17071func (s *AssociationOverview) SetDetailedStatus(v string) *AssociationOverview {
17072	s.DetailedStatus = &v
17073	return s
17074}
17075
17076// SetStatus sets the Status field's value.
17077func (s *AssociationOverview) SetStatus(v string) *AssociationOverview {
17078	s.Status = &v
17079	return s
17080}
17081
17082// Describes an association status.
17083type AssociationStatus struct {
17084	_ struct{} `type:"structure"`
17085
17086	// A user-defined string.
17087	AdditionalInfo *string `type:"string"`
17088
17089	// The date when the status changed.
17090	//
17091	// Date is a required field
17092	Date *time.Time `type:"timestamp" required:"true"`
17093
17094	// The reason for the status.
17095	//
17096	// Message is a required field
17097	Message *string `min:"1" type:"string" required:"true"`
17098
17099	// The status.
17100	//
17101	// Name is a required field
17102	Name *string `type:"string" required:"true" enum:"AssociationStatusName"`
17103}
17104
17105// String returns the string representation
17106func (s AssociationStatus) String() string {
17107	return awsutil.Prettify(s)
17108}
17109
17110// GoString returns the string representation
17111func (s AssociationStatus) GoString() string {
17112	return s.String()
17113}
17114
17115// Validate inspects the fields of the type to determine if they are valid.
17116func (s *AssociationStatus) Validate() error {
17117	invalidParams := request.ErrInvalidParams{Context: "AssociationStatus"}
17118	if s.Date == nil {
17119		invalidParams.Add(request.NewErrParamRequired("Date"))
17120	}
17121	if s.Message == nil {
17122		invalidParams.Add(request.NewErrParamRequired("Message"))
17123	}
17124	if s.Message != nil && len(*s.Message) < 1 {
17125		invalidParams.Add(request.NewErrParamMinLen("Message", 1))
17126	}
17127	if s.Name == nil {
17128		invalidParams.Add(request.NewErrParamRequired("Name"))
17129	}
17130
17131	if invalidParams.Len() > 0 {
17132		return invalidParams
17133	}
17134	return nil
17135}
17136
17137// SetAdditionalInfo sets the AdditionalInfo field's value.
17138func (s *AssociationStatus) SetAdditionalInfo(v string) *AssociationStatus {
17139	s.AdditionalInfo = &v
17140	return s
17141}
17142
17143// SetDate sets the Date field's value.
17144func (s *AssociationStatus) SetDate(v time.Time) *AssociationStatus {
17145	s.Date = &v
17146	return s
17147}
17148
17149// SetMessage sets the Message field's value.
17150func (s *AssociationStatus) SetMessage(v string) *AssociationStatus {
17151	s.Message = &v
17152	return s
17153}
17154
17155// SetName sets the Name field's value.
17156func (s *AssociationStatus) SetName(v string) *AssociationStatus {
17157	s.Name = &v
17158	return s
17159}
17160
17161// Information about the association version.
17162type AssociationVersionInfo struct {
17163	_ struct{} `type:"structure"`
17164
17165	// By default, when you create a new associations, the system runs it immediately
17166	// after it is created and then according to the schedule you specified. Specify
17167	// this option if you don't want an association to run immediately after you
17168	// create it. This parameter isn't supported for rate expressions.
17169	ApplyOnlyAtCronInterval *bool `type:"boolean"`
17170
17171	// The ID created by the system when the association was created.
17172	AssociationId *string `type:"string"`
17173
17174	// The name specified for the association version when the association version
17175	// was created.
17176	AssociationName *string `type:"string"`
17177
17178	// The association version.
17179	AssociationVersion *string `type:"string"`
17180
17181	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
17182	// your associations are gated under. The associations for this version only
17183	// run when that Change Calendar is open. For more information, see Amazon Web
17184	// Services Systems Manager Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
17185	CalendarNames []*string `type:"list"`
17186
17187	// The severity level that is assigned to the association.
17188	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
17189
17190	// The date the association version was created.
17191	CreatedDate *time.Time `type:"timestamp"`
17192
17193	// The version of an Amazon Web Services Systems Manager document (SSM document)
17194	// used when the association version was created.
17195	DocumentVersion *string `type:"string"`
17196
17197	// The maximum number of targets allowed to run the association at the same
17198	// time. You can specify a number, for example 10, or a percentage of the target
17199	// set, for example 10%. The default value is 100%, which means all targets
17200	// run the association at the same time.
17201	//
17202	// If a new instance starts and attempts to run an association while Systems
17203	// Manager is running MaxConcurrency associations, the association is allowed
17204	// to run. During the next association interval, the new instance will process
17205	// its association within the limit specified for MaxConcurrency.
17206	MaxConcurrency *string `min:"1" type:"string"`
17207
17208	// The number of errors that are allowed before the system stops sending requests
17209	// to run the association on additional targets. You can specify either an absolute
17210	// number of errors, for example 10, or a percentage of the target set, for
17211	// example 10%. If you specify 3, for example, the system stops sending requests
17212	// when the fourth error is received. If you specify 0, then the system stops
17213	// sending requests after the first error is returned. If you run an association
17214	// on 50 instances and set MaxError to 10%, then the system stops sending the
17215	// request when the sixth error is received.
17216	//
17217	// Executions that are already running an association when MaxErrors is reached
17218	// are allowed to complete, but some of these executions may fail as well. If
17219	// you need to ensure that there won't be more than max-errors failed executions,
17220	// set MaxConcurrency to 1 so that executions proceed one at a time.
17221	MaxErrors *string `min:"1" type:"string"`
17222
17223	// The name specified when the association was created.
17224	Name *string `type:"string"`
17225
17226	// The location in Amazon S3 specified for the association when the association
17227	// version was created.
17228	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
17229
17230	// Parameters specified when the association version was created.
17231	Parameters map[string][]*string `type:"map"`
17232
17233	// The cron or rate schedule specified for the association when the association
17234	// version was created.
17235	ScheduleExpression *string `min:"1" type:"string"`
17236
17237	// The mode for generating association compliance. You can specify AUTO or MANUAL.
17238	// In AUTO mode, the system uses the status of the association execution to
17239	// determine the compliance status. If the association execution runs successfully,
17240	// then the association is COMPLIANT. If the association execution doesn't run
17241	// successfully, the association is NON-COMPLIANT.
17242	//
17243	// In MANUAL mode, you must specify the AssociationId as a parameter for the
17244	// PutComplianceItems API operation. In this case, compliance data isn't managed
17245	// by State Manager, a capability of Amazon Web Services Systems Manager. It
17246	// is managed by your direct call to the PutComplianceItems API operation.
17247	//
17248	// By default, all associations use AUTO mode.
17249	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
17250
17251	// The combination of Amazon Web Services Regions and Amazon Web Services accounts
17252	// where you wanted to run the association when this association version was
17253	// created.
17254	TargetLocations []*TargetLocation `min:"1" type:"list"`
17255
17256	// The targets specified for the association when the association version was
17257	// created.
17258	Targets []*Target `type:"list"`
17259}
17260
17261// String returns the string representation
17262func (s AssociationVersionInfo) String() string {
17263	return awsutil.Prettify(s)
17264}
17265
17266// GoString returns the string representation
17267func (s AssociationVersionInfo) GoString() string {
17268	return s.String()
17269}
17270
17271// SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
17272func (s *AssociationVersionInfo) SetApplyOnlyAtCronInterval(v bool) *AssociationVersionInfo {
17273	s.ApplyOnlyAtCronInterval = &v
17274	return s
17275}
17276
17277// SetAssociationId sets the AssociationId field's value.
17278func (s *AssociationVersionInfo) SetAssociationId(v string) *AssociationVersionInfo {
17279	s.AssociationId = &v
17280	return s
17281}
17282
17283// SetAssociationName sets the AssociationName field's value.
17284func (s *AssociationVersionInfo) SetAssociationName(v string) *AssociationVersionInfo {
17285	s.AssociationName = &v
17286	return s
17287}
17288
17289// SetAssociationVersion sets the AssociationVersion field's value.
17290func (s *AssociationVersionInfo) SetAssociationVersion(v string) *AssociationVersionInfo {
17291	s.AssociationVersion = &v
17292	return s
17293}
17294
17295// SetCalendarNames sets the CalendarNames field's value.
17296func (s *AssociationVersionInfo) SetCalendarNames(v []*string) *AssociationVersionInfo {
17297	s.CalendarNames = v
17298	return s
17299}
17300
17301// SetComplianceSeverity sets the ComplianceSeverity field's value.
17302func (s *AssociationVersionInfo) SetComplianceSeverity(v string) *AssociationVersionInfo {
17303	s.ComplianceSeverity = &v
17304	return s
17305}
17306
17307// SetCreatedDate sets the CreatedDate field's value.
17308func (s *AssociationVersionInfo) SetCreatedDate(v time.Time) *AssociationVersionInfo {
17309	s.CreatedDate = &v
17310	return s
17311}
17312
17313// SetDocumentVersion sets the DocumentVersion field's value.
17314func (s *AssociationVersionInfo) SetDocumentVersion(v string) *AssociationVersionInfo {
17315	s.DocumentVersion = &v
17316	return s
17317}
17318
17319// SetMaxConcurrency sets the MaxConcurrency field's value.
17320func (s *AssociationVersionInfo) SetMaxConcurrency(v string) *AssociationVersionInfo {
17321	s.MaxConcurrency = &v
17322	return s
17323}
17324
17325// SetMaxErrors sets the MaxErrors field's value.
17326func (s *AssociationVersionInfo) SetMaxErrors(v string) *AssociationVersionInfo {
17327	s.MaxErrors = &v
17328	return s
17329}
17330
17331// SetName sets the Name field's value.
17332func (s *AssociationVersionInfo) SetName(v string) *AssociationVersionInfo {
17333	s.Name = &v
17334	return s
17335}
17336
17337// SetOutputLocation sets the OutputLocation field's value.
17338func (s *AssociationVersionInfo) SetOutputLocation(v *InstanceAssociationOutputLocation) *AssociationVersionInfo {
17339	s.OutputLocation = v
17340	return s
17341}
17342
17343// SetParameters sets the Parameters field's value.
17344func (s *AssociationVersionInfo) SetParameters(v map[string][]*string) *AssociationVersionInfo {
17345	s.Parameters = v
17346	return s
17347}
17348
17349// SetScheduleExpression sets the ScheduleExpression field's value.
17350func (s *AssociationVersionInfo) SetScheduleExpression(v string) *AssociationVersionInfo {
17351	s.ScheduleExpression = &v
17352	return s
17353}
17354
17355// SetSyncCompliance sets the SyncCompliance field's value.
17356func (s *AssociationVersionInfo) SetSyncCompliance(v string) *AssociationVersionInfo {
17357	s.SyncCompliance = &v
17358	return s
17359}
17360
17361// SetTargetLocations sets the TargetLocations field's value.
17362func (s *AssociationVersionInfo) SetTargetLocations(v []*TargetLocation) *AssociationVersionInfo {
17363	s.TargetLocations = v
17364	return s
17365}
17366
17367// SetTargets sets the Targets field's value.
17368func (s *AssociationVersionInfo) SetTargets(v []*Target) *AssociationVersionInfo {
17369	s.Targets = v
17370	return s
17371}
17372
17373// You have reached the maximum number versions allowed for an association.
17374// Each association has a limit of 1,000 versions.
17375type AssociationVersionLimitExceeded struct {
17376	_            struct{}                  `type:"structure"`
17377	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17378
17379	Message_ *string `locationName:"Message" type:"string"`
17380}
17381
17382// String returns the string representation
17383func (s AssociationVersionLimitExceeded) String() string {
17384	return awsutil.Prettify(s)
17385}
17386
17387// GoString returns the string representation
17388func (s AssociationVersionLimitExceeded) GoString() string {
17389	return s.String()
17390}
17391
17392func newErrorAssociationVersionLimitExceeded(v protocol.ResponseMetadata) error {
17393	return &AssociationVersionLimitExceeded{
17394		RespMetadata: v,
17395	}
17396}
17397
17398// Code returns the exception type name.
17399func (s *AssociationVersionLimitExceeded) Code() string {
17400	return "AssociationVersionLimitExceeded"
17401}
17402
17403// Message returns the exception's message.
17404func (s *AssociationVersionLimitExceeded) Message() string {
17405	if s.Message_ != nil {
17406		return *s.Message_
17407	}
17408	return ""
17409}
17410
17411// OrigErr always returns nil, satisfies awserr.Error interface.
17412func (s *AssociationVersionLimitExceeded) OrigErr() error {
17413	return nil
17414}
17415
17416func (s *AssociationVersionLimitExceeded) Error() string {
17417	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17418}
17419
17420// Status code returns the HTTP status code for the request's response error.
17421func (s *AssociationVersionLimitExceeded) StatusCode() int {
17422	return s.RespMetadata.StatusCode
17423}
17424
17425// RequestID returns the service's response RequestID for request.
17426func (s *AssociationVersionLimitExceeded) RequestID() string {
17427	return s.RespMetadata.RequestID
17428}
17429
17430// A structure that includes attributes that describe a document attachment.
17431type AttachmentContent struct {
17432	_ struct{} `type:"structure"`
17433
17434	// The cryptographic hash value of the document content.
17435	Hash *string `type:"string"`
17436
17437	// The hash algorithm used to calculate the hash value.
17438	HashType *string `type:"string" enum:"AttachmentHashType"`
17439
17440	// The name of an attachment.
17441	Name *string `type:"string"`
17442
17443	// The size of an attachment in bytes.
17444	Size *int64 `type:"long"`
17445
17446	// The URL location of the attachment content.
17447	Url *string `type:"string"`
17448}
17449
17450// String returns the string representation
17451func (s AttachmentContent) String() string {
17452	return awsutil.Prettify(s)
17453}
17454
17455// GoString returns the string representation
17456func (s AttachmentContent) GoString() string {
17457	return s.String()
17458}
17459
17460// SetHash sets the Hash field's value.
17461func (s *AttachmentContent) SetHash(v string) *AttachmentContent {
17462	s.Hash = &v
17463	return s
17464}
17465
17466// SetHashType sets the HashType field's value.
17467func (s *AttachmentContent) SetHashType(v string) *AttachmentContent {
17468	s.HashType = &v
17469	return s
17470}
17471
17472// SetName sets the Name field's value.
17473func (s *AttachmentContent) SetName(v string) *AttachmentContent {
17474	s.Name = &v
17475	return s
17476}
17477
17478// SetSize sets the Size field's value.
17479func (s *AttachmentContent) SetSize(v int64) *AttachmentContent {
17480	s.Size = &v
17481	return s
17482}
17483
17484// SetUrl sets the Url field's value.
17485func (s *AttachmentContent) SetUrl(v string) *AttachmentContent {
17486	s.Url = &v
17487	return s
17488}
17489
17490// An attribute of an attachment, such as the attachment name.
17491type AttachmentInformation struct {
17492	_ struct{} `type:"structure"`
17493
17494	// The name of the attachment.
17495	Name *string `type:"string"`
17496}
17497
17498// String returns the string representation
17499func (s AttachmentInformation) String() string {
17500	return awsutil.Prettify(s)
17501}
17502
17503// GoString returns the string representation
17504func (s AttachmentInformation) GoString() string {
17505	return s.String()
17506}
17507
17508// SetName sets the Name field's value.
17509func (s *AttachmentInformation) SetName(v string) *AttachmentInformation {
17510	s.Name = &v
17511	return s
17512}
17513
17514// Identifying information about a document attachment, including the file name
17515// and a key-value pair that identifies the location of an attachment to a document.
17516type AttachmentsSource struct {
17517	_ struct{} `type:"structure"`
17518
17519	// The key of a key-value pair that identifies the location of an attachment
17520	// to a document.
17521	Key *string `type:"string" enum:"AttachmentsSourceKey"`
17522
17523	// The name of the document attachment file.
17524	Name *string `type:"string"`
17525
17526	// The value of a key-value pair that identifies the location of an attachment
17527	// to a document. The format for Value depends on the type of key you specify.
17528	//
17529	//    * For the key SourceUrl, the value is an S3 bucket location. For example:
17530	//    "Values": [ "s3://doc-example-bucket/my-folder" ]
17531	//
17532	//    * For the key S3FileUrl, the value is a file in an S3 bucket. For example:
17533	//    "Values": [ "s3://doc-example-bucket/my-folder/my-file.py" ]
17534	//
17535	//    * For the key AttachmentReference, the value is constructed from the name
17536	//    of another SSM document in your account, a version number of that document,
17537	//    and a file attached to that document version that you want to reuse. For
17538	//    example: "Values": [ "MyOtherDocument/3/my-other-file.py" ] However, if
17539	//    the SSM document is shared with you from another account, the full SSM
17540	//    document ARN must be specified instead of the document name only. For
17541	//    example: "Values": [ "arn:aws:ssm:us-east-2:111122223333:document/OtherAccountDocument/3/their-file.py"
17542	//    ]
17543	Values []*string `min:"1" type:"list"`
17544}
17545
17546// String returns the string representation
17547func (s AttachmentsSource) String() string {
17548	return awsutil.Prettify(s)
17549}
17550
17551// GoString returns the string representation
17552func (s AttachmentsSource) GoString() string {
17553	return s.String()
17554}
17555
17556// Validate inspects the fields of the type to determine if they are valid.
17557func (s *AttachmentsSource) Validate() error {
17558	invalidParams := request.ErrInvalidParams{Context: "AttachmentsSource"}
17559	if s.Values != nil && len(s.Values) < 1 {
17560		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
17561	}
17562
17563	if invalidParams.Len() > 0 {
17564		return invalidParams
17565	}
17566	return nil
17567}
17568
17569// SetKey sets the Key field's value.
17570func (s *AttachmentsSource) SetKey(v string) *AttachmentsSource {
17571	s.Key = &v
17572	return s
17573}
17574
17575// SetName sets the Name field's value.
17576func (s *AttachmentsSource) SetName(v string) *AttachmentsSource {
17577	s.Name = &v
17578	return s
17579}
17580
17581// SetValues sets the Values field's value.
17582func (s *AttachmentsSource) SetValues(v []*string) *AttachmentsSource {
17583	s.Values = v
17584	return s
17585}
17586
17587// Indicates that the Change Manager change template used in the change request
17588// was rejected or is still in a pending state.
17589type AutomationDefinitionNotApprovedException struct {
17590	_            struct{}                  `type:"structure"`
17591	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17592
17593	Message_ *string `locationName:"Message" type:"string"`
17594}
17595
17596// String returns the string representation
17597func (s AutomationDefinitionNotApprovedException) String() string {
17598	return awsutil.Prettify(s)
17599}
17600
17601// GoString returns the string representation
17602func (s AutomationDefinitionNotApprovedException) GoString() string {
17603	return s.String()
17604}
17605
17606func newErrorAutomationDefinitionNotApprovedException(v protocol.ResponseMetadata) error {
17607	return &AutomationDefinitionNotApprovedException{
17608		RespMetadata: v,
17609	}
17610}
17611
17612// Code returns the exception type name.
17613func (s *AutomationDefinitionNotApprovedException) Code() string {
17614	return "AutomationDefinitionNotApprovedException"
17615}
17616
17617// Message returns the exception's message.
17618func (s *AutomationDefinitionNotApprovedException) Message() string {
17619	if s.Message_ != nil {
17620		return *s.Message_
17621	}
17622	return ""
17623}
17624
17625// OrigErr always returns nil, satisfies awserr.Error interface.
17626func (s *AutomationDefinitionNotApprovedException) OrigErr() error {
17627	return nil
17628}
17629
17630func (s *AutomationDefinitionNotApprovedException) Error() string {
17631	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17632}
17633
17634// Status code returns the HTTP status code for the request's response error.
17635func (s *AutomationDefinitionNotApprovedException) StatusCode() int {
17636	return s.RespMetadata.StatusCode
17637}
17638
17639// RequestID returns the service's response RequestID for request.
17640func (s *AutomationDefinitionNotApprovedException) RequestID() string {
17641	return s.RespMetadata.RequestID
17642}
17643
17644// An Automation runbook with the specified name couldn't be found.
17645type AutomationDefinitionNotFoundException struct {
17646	_            struct{}                  `type:"structure"`
17647	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17648
17649	Message_ *string `locationName:"Message" type:"string"`
17650}
17651
17652// String returns the string representation
17653func (s AutomationDefinitionNotFoundException) String() string {
17654	return awsutil.Prettify(s)
17655}
17656
17657// GoString returns the string representation
17658func (s AutomationDefinitionNotFoundException) GoString() string {
17659	return s.String()
17660}
17661
17662func newErrorAutomationDefinitionNotFoundException(v protocol.ResponseMetadata) error {
17663	return &AutomationDefinitionNotFoundException{
17664		RespMetadata: v,
17665	}
17666}
17667
17668// Code returns the exception type name.
17669func (s *AutomationDefinitionNotFoundException) Code() string {
17670	return "AutomationDefinitionNotFoundException"
17671}
17672
17673// Message returns the exception's message.
17674func (s *AutomationDefinitionNotFoundException) Message() string {
17675	if s.Message_ != nil {
17676		return *s.Message_
17677	}
17678	return ""
17679}
17680
17681// OrigErr always returns nil, satisfies awserr.Error interface.
17682func (s *AutomationDefinitionNotFoundException) OrigErr() error {
17683	return nil
17684}
17685
17686func (s *AutomationDefinitionNotFoundException) Error() string {
17687	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17688}
17689
17690// Status code returns the HTTP status code for the request's response error.
17691func (s *AutomationDefinitionNotFoundException) StatusCode() int {
17692	return s.RespMetadata.StatusCode
17693}
17694
17695// RequestID returns the service's response RequestID for request.
17696func (s *AutomationDefinitionNotFoundException) RequestID() string {
17697	return s.RespMetadata.RequestID
17698}
17699
17700// An Automation runbook with the specified name and version couldn't be found.
17701type AutomationDefinitionVersionNotFoundException struct {
17702	_            struct{}                  `type:"structure"`
17703	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
17704
17705	Message_ *string `locationName:"Message" type:"string"`
17706}
17707
17708// String returns the string representation
17709func (s AutomationDefinitionVersionNotFoundException) String() string {
17710	return awsutil.Prettify(s)
17711}
17712
17713// GoString returns the string representation
17714func (s AutomationDefinitionVersionNotFoundException) GoString() string {
17715	return s.String()
17716}
17717
17718func newErrorAutomationDefinitionVersionNotFoundException(v protocol.ResponseMetadata) error {
17719	return &AutomationDefinitionVersionNotFoundException{
17720		RespMetadata: v,
17721	}
17722}
17723
17724// Code returns the exception type name.
17725func (s *AutomationDefinitionVersionNotFoundException) Code() string {
17726	return "AutomationDefinitionVersionNotFoundException"
17727}
17728
17729// Message returns the exception's message.
17730func (s *AutomationDefinitionVersionNotFoundException) Message() string {
17731	if s.Message_ != nil {
17732		return *s.Message_
17733	}
17734	return ""
17735}
17736
17737// OrigErr always returns nil, satisfies awserr.Error interface.
17738func (s *AutomationDefinitionVersionNotFoundException) OrigErr() error {
17739	return nil
17740}
17741
17742func (s *AutomationDefinitionVersionNotFoundException) Error() string {
17743	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
17744}
17745
17746// Status code returns the HTTP status code for the request's response error.
17747func (s *AutomationDefinitionVersionNotFoundException) StatusCode() int {
17748	return s.RespMetadata.StatusCode
17749}
17750
17751// RequestID returns the service's response RequestID for request.
17752func (s *AutomationDefinitionVersionNotFoundException) RequestID() string {
17753	return s.RespMetadata.RequestID
17754}
17755
17756// Detailed information about the current state of an individual Automation
17757// execution.
17758type AutomationExecution struct {
17759	_ struct{} `type:"structure"`
17760
17761	// The ID of a State Manager association used in the Automation operation.
17762	AssociationId *string `type:"string"`
17763
17764	// The execution ID.
17765	AutomationExecutionId *string `min:"36" type:"string"`
17766
17767	// The execution status of the Automation.
17768	AutomationExecutionStatus *string `type:"string" enum:"AutomationExecutionStatus"`
17769
17770	// The subtype of the Automation operation. Currently, the only supported value
17771	// is ChangeRequest.
17772	AutomationSubtype *string `type:"string" enum:"AutomationSubtype"`
17773
17774	// The name of the Change Manager change request.
17775	ChangeRequestName *string `min:"1" type:"string"`
17776
17777	// The action of the step that is currently running.
17778	CurrentAction *string `type:"string"`
17779
17780	// The name of the step that is currently running.
17781	CurrentStepName *string `type:"string"`
17782
17783	// The name of the Automation runbook used during the execution.
17784	DocumentName *string `type:"string"`
17785
17786	// The version of the document to use during execution.
17787	DocumentVersion *string `type:"string"`
17788
17789	// The Amazon Resource Name (ARN) of the user who ran the automation.
17790	ExecutedBy *string `type:"string"`
17791
17792	// The time the execution finished.
17793	ExecutionEndTime *time.Time `type:"timestamp"`
17794
17795	// The time the execution started.
17796	ExecutionStartTime *time.Time `type:"timestamp"`
17797
17798	// A message describing why an execution has failed, if the status is set to
17799	// Failed.
17800	FailureMessage *string `type:"string"`
17801
17802	// The MaxConcurrency value specified by the user when the execution started.
17803	MaxConcurrency *string `min:"1" type:"string"`
17804
17805	// The MaxErrors value specified by the user when the execution started.
17806	MaxErrors *string `min:"1" type:"string"`
17807
17808	// The automation execution mode.
17809	Mode *string `type:"string" enum:"ExecutionMode"`
17810
17811	// The ID of an OpsItem that is created to represent a Change Manager change
17812	// request.
17813	OpsItemId *string `type:"string"`
17814
17815	// The list of execution outputs as defined in the Automation runbook.
17816	Outputs map[string][]*string `min:"1" type:"map"`
17817
17818	// The key-value map of execution parameters, which were supplied when calling
17819	// StartAutomationExecution.
17820	Parameters map[string][]*string `min:"1" type:"map"`
17821
17822	// The AutomationExecutionId of the parent automation.
17823	ParentAutomationExecutionId *string `min:"36" type:"string"`
17824
17825	// An aggregate of step execution statuses displayed in the Amazon Web Services
17826	// Systems Manager console for a multi-Region and multi-account Automation execution.
17827	ProgressCounters *ProgressCounters `type:"structure"`
17828
17829	// A list of resolved targets in the rate control execution.
17830	ResolvedTargets *ResolvedTargets `type:"structure"`
17831
17832	// Information about the Automation runbooks that are run as part of a runbook
17833	// workflow.
17834	//
17835	// The Automation runbooks specified for the runbook workflow can't run until
17836	// all required approvals for the change request have been received.
17837	Runbooks []*Runbook `min:"1" type:"list"`
17838
17839	// The date and time the Automation operation is scheduled to start.
17840	ScheduledTime *time.Time `type:"timestamp"`
17841
17842	// A list of details about the current state of all steps that comprise an execution.
17843	// An Automation runbook contains a list of steps that are run in order.
17844	StepExecutions []*StepExecution `type:"list"`
17845
17846	// A boolean value that indicates if the response contains the full list of
17847	// the Automation step executions. If true, use the DescribeAutomationStepExecutions
17848	// API operation to get the full list of step executions.
17849	StepExecutionsTruncated *bool `type:"boolean"`
17850
17851	// The target of the execution.
17852	Target *string `type:"string"`
17853
17854	// The combination of Amazon Web Services Regions and/or Amazon Web Services
17855	// accounts where you want to run the Automation.
17856	TargetLocations []*TargetLocation `min:"1" type:"list"`
17857
17858	// The specified key-value mapping of document parameters to target resources.
17859	TargetMaps []map[string][]*string `type:"list"`
17860
17861	// The parameter name.
17862	TargetParameterName *string `min:"1" type:"string"`
17863
17864	// The specified targets.
17865	Targets []*Target `type:"list"`
17866}
17867
17868// String returns the string representation
17869func (s AutomationExecution) String() string {
17870	return awsutil.Prettify(s)
17871}
17872
17873// GoString returns the string representation
17874func (s AutomationExecution) GoString() string {
17875	return s.String()
17876}
17877
17878// SetAssociationId sets the AssociationId field's value.
17879func (s *AutomationExecution) SetAssociationId(v string) *AutomationExecution {
17880	s.AssociationId = &v
17881	return s
17882}
17883
17884// SetAutomationExecutionId sets the AutomationExecutionId field's value.
17885func (s *AutomationExecution) SetAutomationExecutionId(v string) *AutomationExecution {
17886	s.AutomationExecutionId = &v
17887	return s
17888}
17889
17890// SetAutomationExecutionStatus sets the AutomationExecutionStatus field's value.
17891func (s *AutomationExecution) SetAutomationExecutionStatus(v string) *AutomationExecution {
17892	s.AutomationExecutionStatus = &v
17893	return s
17894}
17895
17896// SetAutomationSubtype sets the AutomationSubtype field's value.
17897func (s *AutomationExecution) SetAutomationSubtype(v string) *AutomationExecution {
17898	s.AutomationSubtype = &v
17899	return s
17900}
17901
17902// SetChangeRequestName sets the ChangeRequestName field's value.
17903func (s *AutomationExecution) SetChangeRequestName(v string) *AutomationExecution {
17904	s.ChangeRequestName = &v
17905	return s
17906}
17907
17908// SetCurrentAction sets the CurrentAction field's value.
17909func (s *AutomationExecution) SetCurrentAction(v string) *AutomationExecution {
17910	s.CurrentAction = &v
17911	return s
17912}
17913
17914// SetCurrentStepName sets the CurrentStepName field's value.
17915func (s *AutomationExecution) SetCurrentStepName(v string) *AutomationExecution {
17916	s.CurrentStepName = &v
17917	return s
17918}
17919
17920// SetDocumentName sets the DocumentName field's value.
17921func (s *AutomationExecution) SetDocumentName(v string) *AutomationExecution {
17922	s.DocumentName = &v
17923	return s
17924}
17925
17926// SetDocumentVersion sets the DocumentVersion field's value.
17927func (s *AutomationExecution) SetDocumentVersion(v string) *AutomationExecution {
17928	s.DocumentVersion = &v
17929	return s
17930}
17931
17932// SetExecutedBy sets the ExecutedBy field's value.
17933func (s *AutomationExecution) SetExecutedBy(v string) *AutomationExecution {
17934	s.ExecutedBy = &v
17935	return s
17936}
17937
17938// SetExecutionEndTime sets the ExecutionEndTime field's value.
17939func (s *AutomationExecution) SetExecutionEndTime(v time.Time) *AutomationExecution {
17940	s.ExecutionEndTime = &v
17941	return s
17942}
17943
17944// SetExecutionStartTime sets the ExecutionStartTime field's value.
17945func (s *AutomationExecution) SetExecutionStartTime(v time.Time) *AutomationExecution {
17946	s.ExecutionStartTime = &v
17947	return s
17948}
17949
17950// SetFailureMessage sets the FailureMessage field's value.
17951func (s *AutomationExecution) SetFailureMessage(v string) *AutomationExecution {
17952	s.FailureMessage = &v
17953	return s
17954}
17955
17956// SetMaxConcurrency sets the MaxConcurrency field's value.
17957func (s *AutomationExecution) SetMaxConcurrency(v string) *AutomationExecution {
17958	s.MaxConcurrency = &v
17959	return s
17960}
17961
17962// SetMaxErrors sets the MaxErrors field's value.
17963func (s *AutomationExecution) SetMaxErrors(v string) *AutomationExecution {
17964	s.MaxErrors = &v
17965	return s
17966}
17967
17968// SetMode sets the Mode field's value.
17969func (s *AutomationExecution) SetMode(v string) *AutomationExecution {
17970	s.Mode = &v
17971	return s
17972}
17973
17974// SetOpsItemId sets the OpsItemId field's value.
17975func (s *AutomationExecution) SetOpsItemId(v string) *AutomationExecution {
17976	s.OpsItemId = &v
17977	return s
17978}
17979
17980// SetOutputs sets the Outputs field's value.
17981func (s *AutomationExecution) SetOutputs(v map[string][]*string) *AutomationExecution {
17982	s.Outputs = v
17983	return s
17984}
17985
17986// SetParameters sets the Parameters field's value.
17987func (s *AutomationExecution) SetParameters(v map[string][]*string) *AutomationExecution {
17988	s.Parameters = v
17989	return s
17990}
17991
17992// SetParentAutomationExecutionId sets the ParentAutomationExecutionId field's value.
17993func (s *AutomationExecution) SetParentAutomationExecutionId(v string) *AutomationExecution {
17994	s.ParentAutomationExecutionId = &v
17995	return s
17996}
17997
17998// SetProgressCounters sets the ProgressCounters field's value.
17999func (s *AutomationExecution) SetProgressCounters(v *ProgressCounters) *AutomationExecution {
18000	s.ProgressCounters = v
18001	return s
18002}
18003
18004// SetResolvedTargets sets the ResolvedTargets field's value.
18005func (s *AutomationExecution) SetResolvedTargets(v *ResolvedTargets) *AutomationExecution {
18006	s.ResolvedTargets = v
18007	return s
18008}
18009
18010// SetRunbooks sets the Runbooks field's value.
18011func (s *AutomationExecution) SetRunbooks(v []*Runbook) *AutomationExecution {
18012	s.Runbooks = v
18013	return s
18014}
18015
18016// SetScheduledTime sets the ScheduledTime field's value.
18017func (s *AutomationExecution) SetScheduledTime(v time.Time) *AutomationExecution {
18018	s.ScheduledTime = &v
18019	return s
18020}
18021
18022// SetStepExecutions sets the StepExecutions field's value.
18023func (s *AutomationExecution) SetStepExecutions(v []*StepExecution) *AutomationExecution {
18024	s.StepExecutions = v
18025	return s
18026}
18027
18028// SetStepExecutionsTruncated sets the StepExecutionsTruncated field's value.
18029func (s *AutomationExecution) SetStepExecutionsTruncated(v bool) *AutomationExecution {
18030	s.StepExecutionsTruncated = &v
18031	return s
18032}
18033
18034// SetTarget sets the Target field's value.
18035func (s *AutomationExecution) SetTarget(v string) *AutomationExecution {
18036	s.Target = &v
18037	return s
18038}
18039
18040// SetTargetLocations sets the TargetLocations field's value.
18041func (s *AutomationExecution) SetTargetLocations(v []*TargetLocation) *AutomationExecution {
18042	s.TargetLocations = v
18043	return s
18044}
18045
18046// SetTargetMaps sets the TargetMaps field's value.
18047func (s *AutomationExecution) SetTargetMaps(v []map[string][]*string) *AutomationExecution {
18048	s.TargetMaps = v
18049	return s
18050}
18051
18052// SetTargetParameterName sets the TargetParameterName field's value.
18053func (s *AutomationExecution) SetTargetParameterName(v string) *AutomationExecution {
18054	s.TargetParameterName = &v
18055	return s
18056}
18057
18058// SetTargets sets the Targets field's value.
18059func (s *AutomationExecution) SetTargets(v []*Target) *AutomationExecution {
18060	s.Targets = v
18061	return s
18062}
18063
18064// A filter used to match specific automation executions. This is used to limit
18065// the scope of Automation execution information returned.
18066type AutomationExecutionFilter struct {
18067	_ struct{} `type:"structure"`
18068
18069	// One or more keys to limit the results.
18070	//
18071	// Key is a required field
18072	Key *string `type:"string" required:"true" enum:"AutomationExecutionFilterKey"`
18073
18074	// The values used to limit the execution information associated with the filter's
18075	// key.
18076	//
18077	// Values is a required field
18078	Values []*string `min:"1" type:"list" required:"true"`
18079}
18080
18081// String returns the string representation
18082func (s AutomationExecutionFilter) String() string {
18083	return awsutil.Prettify(s)
18084}
18085
18086// GoString returns the string representation
18087func (s AutomationExecutionFilter) GoString() string {
18088	return s.String()
18089}
18090
18091// Validate inspects the fields of the type to determine if they are valid.
18092func (s *AutomationExecutionFilter) Validate() error {
18093	invalidParams := request.ErrInvalidParams{Context: "AutomationExecutionFilter"}
18094	if s.Key == nil {
18095		invalidParams.Add(request.NewErrParamRequired("Key"))
18096	}
18097	if s.Values == nil {
18098		invalidParams.Add(request.NewErrParamRequired("Values"))
18099	}
18100	if s.Values != nil && len(s.Values) < 1 {
18101		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
18102	}
18103
18104	if invalidParams.Len() > 0 {
18105		return invalidParams
18106	}
18107	return nil
18108}
18109
18110// SetKey sets the Key field's value.
18111func (s *AutomationExecutionFilter) SetKey(v string) *AutomationExecutionFilter {
18112	s.Key = &v
18113	return s
18114}
18115
18116// SetValues sets the Values field's value.
18117func (s *AutomationExecutionFilter) SetValues(v []*string) *AutomationExecutionFilter {
18118	s.Values = v
18119	return s
18120}
18121
18122// The number of simultaneously running Automation executions exceeded the allowable
18123// limit.
18124type AutomationExecutionLimitExceededException struct {
18125	_            struct{}                  `type:"structure"`
18126	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18127
18128	Message_ *string `locationName:"Message" type:"string"`
18129}
18130
18131// String returns the string representation
18132func (s AutomationExecutionLimitExceededException) String() string {
18133	return awsutil.Prettify(s)
18134}
18135
18136// GoString returns the string representation
18137func (s AutomationExecutionLimitExceededException) GoString() string {
18138	return s.String()
18139}
18140
18141func newErrorAutomationExecutionLimitExceededException(v protocol.ResponseMetadata) error {
18142	return &AutomationExecutionLimitExceededException{
18143		RespMetadata: v,
18144	}
18145}
18146
18147// Code returns the exception type name.
18148func (s *AutomationExecutionLimitExceededException) Code() string {
18149	return "AutomationExecutionLimitExceededException"
18150}
18151
18152// Message returns the exception's message.
18153func (s *AutomationExecutionLimitExceededException) Message() string {
18154	if s.Message_ != nil {
18155		return *s.Message_
18156	}
18157	return ""
18158}
18159
18160// OrigErr always returns nil, satisfies awserr.Error interface.
18161func (s *AutomationExecutionLimitExceededException) OrigErr() error {
18162	return nil
18163}
18164
18165func (s *AutomationExecutionLimitExceededException) Error() string {
18166	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18167}
18168
18169// Status code returns the HTTP status code for the request's response error.
18170func (s *AutomationExecutionLimitExceededException) StatusCode() int {
18171	return s.RespMetadata.StatusCode
18172}
18173
18174// RequestID returns the service's response RequestID for request.
18175func (s *AutomationExecutionLimitExceededException) RequestID() string {
18176	return s.RespMetadata.RequestID
18177}
18178
18179// Details about a specific Automation execution.
18180type AutomationExecutionMetadata struct {
18181	_ struct{} `type:"structure"`
18182
18183	// The ID of a State Manager association used in the Automation operation.
18184	AssociationId *string `type:"string"`
18185
18186	// The execution ID.
18187	AutomationExecutionId *string `min:"36" type:"string"`
18188
18189	// The status of the execution.
18190	AutomationExecutionStatus *string `type:"string" enum:"AutomationExecutionStatus"`
18191
18192	// The subtype of the Automation operation. Currently, the only supported value
18193	// is ChangeRequest.
18194	AutomationSubtype *string `type:"string" enum:"AutomationSubtype"`
18195
18196	// Use this filter with DescribeAutomationExecutions. Specify either Local or
18197	// CrossAccount. CrossAccount is an Automation that runs in multiple Amazon
18198	// Web Services Regions and Amazon Web Services accounts. For more information,
18199	// see Running Automation workflows in multiple Amazon Web Services Regions
18200	// and accounts (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation-multiple-accounts-and-regions.html)
18201	// in the Amazon Web Services Systems Manager User Guide.
18202	AutomationType *string `type:"string" enum:"AutomationType"`
18203
18204	// The name of the Change Manager change request.
18205	ChangeRequestName *string `min:"1" type:"string"`
18206
18207	// The action of the step that is currently running.
18208	CurrentAction *string `type:"string"`
18209
18210	// The name of the step that is currently running.
18211	CurrentStepName *string `type:"string"`
18212
18213	// The name of the Automation runbook used during execution.
18214	DocumentName *string `type:"string"`
18215
18216	// The document version used during the execution.
18217	DocumentVersion *string `type:"string"`
18218
18219	// The IAM role ARN of the user who ran the automation.
18220	ExecutedBy *string `type:"string"`
18221
18222	// The time the execution finished. This isn't populated if the execution is
18223	// still in progress.
18224	ExecutionEndTime *time.Time `type:"timestamp"`
18225
18226	// The time the execution started.
18227	ExecutionStartTime *time.Time `type:"timestamp"`
18228
18229	// The list of execution outputs as defined in the Automation runbook.
18230	FailureMessage *string `type:"string"`
18231
18232	// An S3 bucket where execution information is stored.
18233	LogFile *string `type:"string"`
18234
18235	// The MaxConcurrency value specified by the user when starting the automation.
18236	MaxConcurrency *string `min:"1" type:"string"`
18237
18238	// The MaxErrors value specified by the user when starting the automation.
18239	MaxErrors *string `min:"1" type:"string"`
18240
18241	// The Automation execution mode.
18242	Mode *string `type:"string" enum:"ExecutionMode"`
18243
18244	// The ID of an OpsItem that is created to represent a Change Manager change
18245	// request.
18246	OpsItemId *string `type:"string"`
18247
18248	// The list of execution outputs as defined in the Automation runbook.
18249	Outputs map[string][]*string `min:"1" type:"map"`
18250
18251	// The execution ID of the parent automation.
18252	ParentAutomationExecutionId *string `min:"36" type:"string"`
18253
18254	// A list of targets that resolved during the execution.
18255	ResolvedTargets *ResolvedTargets `type:"structure"`
18256
18257	// Information about the Automation runbooks that are run during a runbook workflow
18258	// in Change Manager.
18259	//
18260	// The Automation runbooks specified for the runbook workflow can't run until
18261	// all required approvals for the change request have been received.
18262	Runbooks []*Runbook `min:"1" type:"list"`
18263
18264	// The date and time the Automation operation is scheduled to start.
18265	ScheduledTime *time.Time `type:"timestamp"`
18266
18267	// The list of execution outputs as defined in the Automation runbook.
18268	Target *string `type:"string"`
18269
18270	// The specified key-value mapping of document parameters to target resources.
18271	TargetMaps []map[string][]*string `type:"list"`
18272
18273	// The list of execution outputs as defined in the Automation runbook.
18274	TargetParameterName *string `min:"1" type:"string"`
18275
18276	// The targets defined by the user when starting the automation.
18277	Targets []*Target `type:"list"`
18278}
18279
18280// String returns the string representation
18281func (s AutomationExecutionMetadata) String() string {
18282	return awsutil.Prettify(s)
18283}
18284
18285// GoString returns the string representation
18286func (s AutomationExecutionMetadata) GoString() string {
18287	return s.String()
18288}
18289
18290// SetAssociationId sets the AssociationId field's value.
18291func (s *AutomationExecutionMetadata) SetAssociationId(v string) *AutomationExecutionMetadata {
18292	s.AssociationId = &v
18293	return s
18294}
18295
18296// SetAutomationExecutionId sets the AutomationExecutionId field's value.
18297func (s *AutomationExecutionMetadata) SetAutomationExecutionId(v string) *AutomationExecutionMetadata {
18298	s.AutomationExecutionId = &v
18299	return s
18300}
18301
18302// SetAutomationExecutionStatus sets the AutomationExecutionStatus field's value.
18303func (s *AutomationExecutionMetadata) SetAutomationExecutionStatus(v string) *AutomationExecutionMetadata {
18304	s.AutomationExecutionStatus = &v
18305	return s
18306}
18307
18308// SetAutomationSubtype sets the AutomationSubtype field's value.
18309func (s *AutomationExecutionMetadata) SetAutomationSubtype(v string) *AutomationExecutionMetadata {
18310	s.AutomationSubtype = &v
18311	return s
18312}
18313
18314// SetAutomationType sets the AutomationType field's value.
18315func (s *AutomationExecutionMetadata) SetAutomationType(v string) *AutomationExecutionMetadata {
18316	s.AutomationType = &v
18317	return s
18318}
18319
18320// SetChangeRequestName sets the ChangeRequestName field's value.
18321func (s *AutomationExecutionMetadata) SetChangeRequestName(v string) *AutomationExecutionMetadata {
18322	s.ChangeRequestName = &v
18323	return s
18324}
18325
18326// SetCurrentAction sets the CurrentAction field's value.
18327func (s *AutomationExecutionMetadata) SetCurrentAction(v string) *AutomationExecutionMetadata {
18328	s.CurrentAction = &v
18329	return s
18330}
18331
18332// SetCurrentStepName sets the CurrentStepName field's value.
18333func (s *AutomationExecutionMetadata) SetCurrentStepName(v string) *AutomationExecutionMetadata {
18334	s.CurrentStepName = &v
18335	return s
18336}
18337
18338// SetDocumentName sets the DocumentName field's value.
18339func (s *AutomationExecutionMetadata) SetDocumentName(v string) *AutomationExecutionMetadata {
18340	s.DocumentName = &v
18341	return s
18342}
18343
18344// SetDocumentVersion sets the DocumentVersion field's value.
18345func (s *AutomationExecutionMetadata) SetDocumentVersion(v string) *AutomationExecutionMetadata {
18346	s.DocumentVersion = &v
18347	return s
18348}
18349
18350// SetExecutedBy sets the ExecutedBy field's value.
18351func (s *AutomationExecutionMetadata) SetExecutedBy(v string) *AutomationExecutionMetadata {
18352	s.ExecutedBy = &v
18353	return s
18354}
18355
18356// SetExecutionEndTime sets the ExecutionEndTime field's value.
18357func (s *AutomationExecutionMetadata) SetExecutionEndTime(v time.Time) *AutomationExecutionMetadata {
18358	s.ExecutionEndTime = &v
18359	return s
18360}
18361
18362// SetExecutionStartTime sets the ExecutionStartTime field's value.
18363func (s *AutomationExecutionMetadata) SetExecutionStartTime(v time.Time) *AutomationExecutionMetadata {
18364	s.ExecutionStartTime = &v
18365	return s
18366}
18367
18368// SetFailureMessage sets the FailureMessage field's value.
18369func (s *AutomationExecutionMetadata) SetFailureMessage(v string) *AutomationExecutionMetadata {
18370	s.FailureMessage = &v
18371	return s
18372}
18373
18374// SetLogFile sets the LogFile field's value.
18375func (s *AutomationExecutionMetadata) SetLogFile(v string) *AutomationExecutionMetadata {
18376	s.LogFile = &v
18377	return s
18378}
18379
18380// SetMaxConcurrency sets the MaxConcurrency field's value.
18381func (s *AutomationExecutionMetadata) SetMaxConcurrency(v string) *AutomationExecutionMetadata {
18382	s.MaxConcurrency = &v
18383	return s
18384}
18385
18386// SetMaxErrors sets the MaxErrors field's value.
18387func (s *AutomationExecutionMetadata) SetMaxErrors(v string) *AutomationExecutionMetadata {
18388	s.MaxErrors = &v
18389	return s
18390}
18391
18392// SetMode sets the Mode field's value.
18393func (s *AutomationExecutionMetadata) SetMode(v string) *AutomationExecutionMetadata {
18394	s.Mode = &v
18395	return s
18396}
18397
18398// SetOpsItemId sets the OpsItemId field's value.
18399func (s *AutomationExecutionMetadata) SetOpsItemId(v string) *AutomationExecutionMetadata {
18400	s.OpsItemId = &v
18401	return s
18402}
18403
18404// SetOutputs sets the Outputs field's value.
18405func (s *AutomationExecutionMetadata) SetOutputs(v map[string][]*string) *AutomationExecutionMetadata {
18406	s.Outputs = v
18407	return s
18408}
18409
18410// SetParentAutomationExecutionId sets the ParentAutomationExecutionId field's value.
18411func (s *AutomationExecutionMetadata) SetParentAutomationExecutionId(v string) *AutomationExecutionMetadata {
18412	s.ParentAutomationExecutionId = &v
18413	return s
18414}
18415
18416// SetResolvedTargets sets the ResolvedTargets field's value.
18417func (s *AutomationExecutionMetadata) SetResolvedTargets(v *ResolvedTargets) *AutomationExecutionMetadata {
18418	s.ResolvedTargets = v
18419	return s
18420}
18421
18422// SetRunbooks sets the Runbooks field's value.
18423func (s *AutomationExecutionMetadata) SetRunbooks(v []*Runbook) *AutomationExecutionMetadata {
18424	s.Runbooks = v
18425	return s
18426}
18427
18428// SetScheduledTime sets the ScheduledTime field's value.
18429func (s *AutomationExecutionMetadata) SetScheduledTime(v time.Time) *AutomationExecutionMetadata {
18430	s.ScheduledTime = &v
18431	return s
18432}
18433
18434// SetTarget sets the Target field's value.
18435func (s *AutomationExecutionMetadata) SetTarget(v string) *AutomationExecutionMetadata {
18436	s.Target = &v
18437	return s
18438}
18439
18440// SetTargetMaps sets the TargetMaps field's value.
18441func (s *AutomationExecutionMetadata) SetTargetMaps(v []map[string][]*string) *AutomationExecutionMetadata {
18442	s.TargetMaps = v
18443	return s
18444}
18445
18446// SetTargetParameterName sets the TargetParameterName field's value.
18447func (s *AutomationExecutionMetadata) SetTargetParameterName(v string) *AutomationExecutionMetadata {
18448	s.TargetParameterName = &v
18449	return s
18450}
18451
18452// SetTargets sets the Targets field's value.
18453func (s *AutomationExecutionMetadata) SetTargets(v []*Target) *AutomationExecutionMetadata {
18454	s.Targets = v
18455	return s
18456}
18457
18458// There is no automation execution information for the requested automation
18459// execution ID.
18460type AutomationExecutionNotFoundException struct {
18461	_            struct{}                  `type:"structure"`
18462	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18463
18464	Message_ *string `locationName:"Message" type:"string"`
18465}
18466
18467// String returns the string representation
18468func (s AutomationExecutionNotFoundException) String() string {
18469	return awsutil.Prettify(s)
18470}
18471
18472// GoString returns the string representation
18473func (s AutomationExecutionNotFoundException) GoString() string {
18474	return s.String()
18475}
18476
18477func newErrorAutomationExecutionNotFoundException(v protocol.ResponseMetadata) error {
18478	return &AutomationExecutionNotFoundException{
18479		RespMetadata: v,
18480	}
18481}
18482
18483// Code returns the exception type name.
18484func (s *AutomationExecutionNotFoundException) Code() string {
18485	return "AutomationExecutionNotFoundException"
18486}
18487
18488// Message returns the exception's message.
18489func (s *AutomationExecutionNotFoundException) Message() string {
18490	if s.Message_ != nil {
18491		return *s.Message_
18492	}
18493	return ""
18494}
18495
18496// OrigErr always returns nil, satisfies awserr.Error interface.
18497func (s *AutomationExecutionNotFoundException) OrigErr() error {
18498	return nil
18499}
18500
18501func (s *AutomationExecutionNotFoundException) Error() string {
18502	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18503}
18504
18505// Status code returns the HTTP status code for the request's response error.
18506func (s *AutomationExecutionNotFoundException) StatusCode() int {
18507	return s.RespMetadata.StatusCode
18508}
18509
18510// RequestID returns the service's response RequestID for request.
18511func (s *AutomationExecutionNotFoundException) RequestID() string {
18512	return s.RespMetadata.RequestID
18513}
18514
18515// The specified step name and execution ID don't exist. Verify the information
18516// and try again.
18517type AutomationStepNotFoundException struct {
18518	_            struct{}                  `type:"structure"`
18519	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
18520
18521	Message_ *string `locationName:"Message" type:"string"`
18522}
18523
18524// String returns the string representation
18525func (s AutomationStepNotFoundException) String() string {
18526	return awsutil.Prettify(s)
18527}
18528
18529// GoString returns the string representation
18530func (s AutomationStepNotFoundException) GoString() string {
18531	return s.String()
18532}
18533
18534func newErrorAutomationStepNotFoundException(v protocol.ResponseMetadata) error {
18535	return &AutomationStepNotFoundException{
18536		RespMetadata: v,
18537	}
18538}
18539
18540// Code returns the exception type name.
18541func (s *AutomationStepNotFoundException) Code() string {
18542	return "AutomationStepNotFoundException"
18543}
18544
18545// Message returns the exception's message.
18546func (s *AutomationStepNotFoundException) Message() string {
18547	if s.Message_ != nil {
18548		return *s.Message_
18549	}
18550	return ""
18551}
18552
18553// OrigErr always returns nil, satisfies awserr.Error interface.
18554func (s *AutomationStepNotFoundException) OrigErr() error {
18555	return nil
18556}
18557
18558func (s *AutomationStepNotFoundException) Error() string {
18559	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
18560}
18561
18562// Status code returns the HTTP status code for the request's response error.
18563func (s *AutomationStepNotFoundException) StatusCode() int {
18564	return s.RespMetadata.StatusCode
18565}
18566
18567// RequestID returns the service's response RequestID for request.
18568func (s *AutomationStepNotFoundException) RequestID() string {
18569	return s.RespMetadata.RequestID
18570}
18571
18572// Defines the basic information about a patch baseline override.
18573type BaselineOverride struct {
18574	_ struct{} `type:"structure"`
18575
18576	// A set of rules defining the approval rules for a patch baseline.
18577	ApprovalRules *PatchRuleGroup `type:"structure"`
18578
18579	// A list of explicitly approved patches for the baseline.
18580	//
18581	// For information about accepted formats for lists of approved patches and
18582	// rejected patches, see About package name formats for approved and rejected
18583	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
18584	// in the Amazon Web Services Systems Manager User Guide.
18585	ApprovedPatches []*string `type:"list"`
18586
18587	// Defines the compliance level for approved patches. When an approved patch
18588	// is reported as missing, this value describes the severity of the compliance
18589	// violation.
18590	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
18591
18592	// Indicates whether the list of approved patches includes non-security updates
18593	// that should be applied to the instances. The default value is false. Applies
18594	// to Linux instances only.
18595	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
18596
18597	// A set of patch filters, typically used for approval rules.
18598	GlobalFilters *PatchFilterGroup `type:"structure"`
18599
18600	// The operating system rule used by the patch baseline override.
18601	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
18602
18603	// A list of explicitly rejected patches for the baseline.
18604	//
18605	// For information about accepted formats for lists of approved patches and
18606	// rejected patches, see About package name formats for approved and rejected
18607	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
18608	// in the Amazon Web Services Systems Manager User Guide.
18609	RejectedPatches []*string `type:"list"`
18610
18611	// The action for Patch Manager to take on patches included in the RejectedPackages
18612	// list. A patch can be allowed only if it is a dependency of another package,
18613	// or blocked entirely along with packages that include it as a dependency.
18614	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
18615
18616	// Information about the patches to use to update the instances, including target
18617	// operating systems and source repositories. Applies to Linux instances only.
18618	Sources []*PatchSource `type:"list"`
18619}
18620
18621// String returns the string representation
18622func (s BaselineOverride) String() string {
18623	return awsutil.Prettify(s)
18624}
18625
18626// GoString returns the string representation
18627func (s BaselineOverride) GoString() string {
18628	return s.String()
18629}
18630
18631// Validate inspects the fields of the type to determine if they are valid.
18632func (s *BaselineOverride) Validate() error {
18633	invalidParams := request.ErrInvalidParams{Context: "BaselineOverride"}
18634	if s.ApprovalRules != nil {
18635		if err := s.ApprovalRules.Validate(); err != nil {
18636			invalidParams.AddNested("ApprovalRules", err.(request.ErrInvalidParams))
18637		}
18638	}
18639	if s.GlobalFilters != nil {
18640		if err := s.GlobalFilters.Validate(); err != nil {
18641			invalidParams.AddNested("GlobalFilters", err.(request.ErrInvalidParams))
18642		}
18643	}
18644	if s.Sources != nil {
18645		for i, v := range s.Sources {
18646			if v == nil {
18647				continue
18648			}
18649			if err := v.Validate(); err != nil {
18650				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
18651			}
18652		}
18653	}
18654
18655	if invalidParams.Len() > 0 {
18656		return invalidParams
18657	}
18658	return nil
18659}
18660
18661// SetApprovalRules sets the ApprovalRules field's value.
18662func (s *BaselineOverride) SetApprovalRules(v *PatchRuleGroup) *BaselineOverride {
18663	s.ApprovalRules = v
18664	return s
18665}
18666
18667// SetApprovedPatches sets the ApprovedPatches field's value.
18668func (s *BaselineOverride) SetApprovedPatches(v []*string) *BaselineOverride {
18669	s.ApprovedPatches = v
18670	return s
18671}
18672
18673// SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
18674func (s *BaselineOverride) SetApprovedPatchesComplianceLevel(v string) *BaselineOverride {
18675	s.ApprovedPatchesComplianceLevel = &v
18676	return s
18677}
18678
18679// SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
18680func (s *BaselineOverride) SetApprovedPatchesEnableNonSecurity(v bool) *BaselineOverride {
18681	s.ApprovedPatchesEnableNonSecurity = &v
18682	return s
18683}
18684
18685// SetGlobalFilters sets the GlobalFilters field's value.
18686func (s *BaselineOverride) SetGlobalFilters(v *PatchFilterGroup) *BaselineOverride {
18687	s.GlobalFilters = v
18688	return s
18689}
18690
18691// SetOperatingSystem sets the OperatingSystem field's value.
18692func (s *BaselineOverride) SetOperatingSystem(v string) *BaselineOverride {
18693	s.OperatingSystem = &v
18694	return s
18695}
18696
18697// SetRejectedPatches sets the RejectedPatches field's value.
18698func (s *BaselineOverride) SetRejectedPatches(v []*string) *BaselineOverride {
18699	s.RejectedPatches = v
18700	return s
18701}
18702
18703// SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
18704func (s *BaselineOverride) SetRejectedPatchesAction(v string) *BaselineOverride {
18705	s.RejectedPatchesAction = &v
18706	return s
18707}
18708
18709// SetSources sets the Sources field's value.
18710func (s *BaselineOverride) SetSources(v []*PatchSource) *BaselineOverride {
18711	s.Sources = v
18712	return s
18713}
18714
18715type CancelCommandInput struct {
18716	_ struct{} `type:"structure"`
18717
18718	// The ID of the command you want to cancel.
18719	//
18720	// CommandId is a required field
18721	CommandId *string `min:"36" type:"string" required:"true"`
18722
18723	// (Optional) A list of instance IDs on which you want to cancel the command.
18724	// If not provided, the command is canceled on every instance on which it was
18725	// requested.
18726	InstanceIds []*string `type:"list"`
18727}
18728
18729// String returns the string representation
18730func (s CancelCommandInput) String() string {
18731	return awsutil.Prettify(s)
18732}
18733
18734// GoString returns the string representation
18735func (s CancelCommandInput) GoString() string {
18736	return s.String()
18737}
18738
18739// Validate inspects the fields of the type to determine if they are valid.
18740func (s *CancelCommandInput) Validate() error {
18741	invalidParams := request.ErrInvalidParams{Context: "CancelCommandInput"}
18742	if s.CommandId == nil {
18743		invalidParams.Add(request.NewErrParamRequired("CommandId"))
18744	}
18745	if s.CommandId != nil && len(*s.CommandId) < 36 {
18746		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
18747	}
18748
18749	if invalidParams.Len() > 0 {
18750		return invalidParams
18751	}
18752	return nil
18753}
18754
18755// SetCommandId sets the CommandId field's value.
18756func (s *CancelCommandInput) SetCommandId(v string) *CancelCommandInput {
18757	s.CommandId = &v
18758	return s
18759}
18760
18761// SetInstanceIds sets the InstanceIds field's value.
18762func (s *CancelCommandInput) SetInstanceIds(v []*string) *CancelCommandInput {
18763	s.InstanceIds = v
18764	return s
18765}
18766
18767// Whether or not the command was successfully canceled. There is no guarantee
18768// that a request can be canceled.
18769type CancelCommandOutput struct {
18770	_ struct{} `type:"structure"`
18771}
18772
18773// String returns the string representation
18774func (s CancelCommandOutput) String() string {
18775	return awsutil.Prettify(s)
18776}
18777
18778// GoString returns the string representation
18779func (s CancelCommandOutput) GoString() string {
18780	return s.String()
18781}
18782
18783type CancelMaintenanceWindowExecutionInput struct {
18784	_ struct{} `type:"structure"`
18785
18786	// The ID of the maintenance window execution to stop.
18787	//
18788	// WindowExecutionId is a required field
18789	WindowExecutionId *string `min:"36" type:"string" required:"true"`
18790}
18791
18792// String returns the string representation
18793func (s CancelMaintenanceWindowExecutionInput) String() string {
18794	return awsutil.Prettify(s)
18795}
18796
18797// GoString returns the string representation
18798func (s CancelMaintenanceWindowExecutionInput) GoString() string {
18799	return s.String()
18800}
18801
18802// Validate inspects the fields of the type to determine if they are valid.
18803func (s *CancelMaintenanceWindowExecutionInput) Validate() error {
18804	invalidParams := request.ErrInvalidParams{Context: "CancelMaintenanceWindowExecutionInput"}
18805	if s.WindowExecutionId == nil {
18806		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
18807	}
18808	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
18809		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
18810	}
18811
18812	if invalidParams.Len() > 0 {
18813		return invalidParams
18814	}
18815	return nil
18816}
18817
18818// SetWindowExecutionId sets the WindowExecutionId field's value.
18819func (s *CancelMaintenanceWindowExecutionInput) SetWindowExecutionId(v string) *CancelMaintenanceWindowExecutionInput {
18820	s.WindowExecutionId = &v
18821	return s
18822}
18823
18824type CancelMaintenanceWindowExecutionOutput struct {
18825	_ struct{} `type:"structure"`
18826
18827	// The ID of the maintenance window execution that has been stopped.
18828	WindowExecutionId *string `min:"36" type:"string"`
18829}
18830
18831// String returns the string representation
18832func (s CancelMaintenanceWindowExecutionOutput) String() string {
18833	return awsutil.Prettify(s)
18834}
18835
18836// GoString returns the string representation
18837func (s CancelMaintenanceWindowExecutionOutput) GoString() string {
18838	return s.String()
18839}
18840
18841// SetWindowExecutionId sets the WindowExecutionId field's value.
18842func (s *CancelMaintenanceWindowExecutionOutput) SetWindowExecutionId(v string) *CancelMaintenanceWindowExecutionOutput {
18843	s.WindowExecutionId = &v
18844	return s
18845}
18846
18847// Configuration options for sending command output to Amazon CloudWatch Logs.
18848type CloudWatchOutputConfig struct {
18849	_ struct{} `type:"structure"`
18850
18851	// The name of the CloudWatch Logs log group where you want to send command
18852	// output. If you don't specify a group name, Amazon Web Services Systems Manager
18853	// automatically creates a log group for you. The log group uses the following
18854	// naming format:
18855	//
18856	// aws/ssm/SystemsManagerDocumentName
18857	CloudWatchLogGroupName *string `min:"1" type:"string"`
18858
18859	// Enables Systems Manager to send command output to CloudWatch Logs.
18860	CloudWatchOutputEnabled *bool `type:"boolean"`
18861}
18862
18863// String returns the string representation
18864func (s CloudWatchOutputConfig) String() string {
18865	return awsutil.Prettify(s)
18866}
18867
18868// GoString returns the string representation
18869func (s CloudWatchOutputConfig) GoString() string {
18870	return s.String()
18871}
18872
18873// Validate inspects the fields of the type to determine if they are valid.
18874func (s *CloudWatchOutputConfig) Validate() error {
18875	invalidParams := request.ErrInvalidParams{Context: "CloudWatchOutputConfig"}
18876	if s.CloudWatchLogGroupName != nil && len(*s.CloudWatchLogGroupName) < 1 {
18877		invalidParams.Add(request.NewErrParamMinLen("CloudWatchLogGroupName", 1))
18878	}
18879
18880	if invalidParams.Len() > 0 {
18881		return invalidParams
18882	}
18883	return nil
18884}
18885
18886// SetCloudWatchLogGroupName sets the CloudWatchLogGroupName field's value.
18887func (s *CloudWatchOutputConfig) SetCloudWatchLogGroupName(v string) *CloudWatchOutputConfig {
18888	s.CloudWatchLogGroupName = &v
18889	return s
18890}
18891
18892// SetCloudWatchOutputEnabled sets the CloudWatchOutputEnabled field's value.
18893func (s *CloudWatchOutputConfig) SetCloudWatchOutputEnabled(v bool) *CloudWatchOutputConfig {
18894	s.CloudWatchOutputEnabled = &v
18895	return s
18896}
18897
18898// Describes a command request.
18899type Command struct {
18900	_ struct{} `type:"structure"`
18901
18902	// Amazon CloudWatch Logs information where you want Amazon Web Services Systems
18903	// Manager to send the command output.
18904	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
18905
18906	// A unique identifier for this command.
18907	CommandId *string `min:"36" type:"string"`
18908
18909	// User-specified information about the command, such as a brief description
18910	// of what the command should do.
18911	Comment *string `type:"string"`
18912
18913	// The number of targets for which the command invocation reached a terminal
18914	// state. Terminal states include the following: Success, Failed, Execution
18915	// Timed Out, Delivery Timed Out, Canceled, Terminated, or Undeliverable.
18916	CompletedCount *int64 `type:"integer"`
18917
18918	// The number of targets for which the status is Delivery Timed Out.
18919	DeliveryTimedOutCount *int64 `type:"integer"`
18920
18921	// The name of the document requested for execution.
18922	DocumentName *string `type:"string"`
18923
18924	// The Systems Manager document (SSM document) version.
18925	DocumentVersion *string `type:"string"`
18926
18927	// The number of targets for which the status is Failed or Execution Timed Out.
18928	ErrorCount *int64 `type:"integer"`
18929
18930	// If this time is reached and the command hasn't already started running, it
18931	// won't run. Calculated based on the ExpiresAfter user input provided as part
18932	// of the SendCommand API operation.
18933	ExpiresAfter *time.Time `type:"timestamp"`
18934
18935	// The instance IDs against which this command was requested.
18936	InstanceIds []*string `type:"list"`
18937
18938	// The maximum number of instances that are allowed to run the command at the
18939	// same time. You can specify a number of instances, such as 10, or a percentage
18940	// of instances, such as 10%. The default value is 50. For more information
18941	// about how to use MaxConcurrency, see Running commands using Systems Manager
18942	// Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/run-command.html)
18943	// in the Amazon Web Services Systems Manager User Guide.
18944	MaxConcurrency *string `min:"1" type:"string"`
18945
18946	// The maximum number of errors allowed before the system stops sending the
18947	// command to additional targets. You can specify a number of errors, such as
18948	// 10, or a percentage or errors, such as 10%. The default value is 0. For more
18949	// information about how to use MaxErrors, see Running commands using Systems
18950	// Manager Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/run-command.html)
18951	// in the Amazon Web Services Systems Manager User Guide.
18952	MaxErrors *string `min:"1" type:"string"`
18953
18954	// Configurations for sending notifications about command status changes.
18955	NotificationConfig *NotificationConfig `type:"structure"`
18956
18957	// The S3 bucket where the responses to the command executions should be stored.
18958	// This was requested when issuing the command.
18959	OutputS3BucketName *string `min:"3" type:"string"`
18960
18961	// The S3 directory path inside the bucket where the responses to the command
18962	// executions should be stored. This was requested when issuing the command.
18963	OutputS3KeyPrefix *string `type:"string"`
18964
18965	// (Deprecated) You can no longer specify this parameter. The system ignores
18966	// it. Instead, Systems Manager automatically determines the Amazon Web Services
18967	// Region of the S3 bucket.
18968	OutputS3Region *string `min:"3" type:"string"`
18969
18970	// The parameter values to be inserted in the document when running the command.
18971	Parameters map[string][]*string `type:"map"`
18972
18973	// The date and time the command was requested.
18974	RequestedDateTime *time.Time `type:"timestamp"`
18975
18976	// The Identity and Access Management (IAM) service role that Run Command, a
18977	// capability of Amazon Web Services Systems Manager, uses to act on your behalf
18978	// when sending notifications about command status changes.
18979	ServiceRole *string `type:"string"`
18980
18981	// The status of the command.
18982	Status *string `type:"string" enum:"CommandStatus"`
18983
18984	// A detailed status of the command execution. StatusDetails includes more information
18985	// than Status because it includes states resulting from error and concurrency
18986	// control parameters. StatusDetails can show different results than Status.
18987	// For more information about these statuses, see Understanding command statuses
18988	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
18989	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
18990	// be one of the following values:
18991	//
18992	//    * Pending: The command hasn't been sent to any instances.
18993	//
18994	//    * In Progress: The command has been sent to at least one instance but
18995	//    hasn't reached a final state on all instances.
18996	//
18997	//    * Success: The command successfully ran on all invocations. This is a
18998	//    terminal state.
18999	//
19000	//    * Delivery Timed Out: The value of MaxErrors or more command invocations
19001	//    shows a status of Delivery Timed Out. This is a terminal state.
19002	//
19003	//    * Execution Timed Out: The value of MaxErrors or more command invocations
19004	//    shows a status of Execution Timed Out. This is a terminal state.
19005	//
19006	//    * Failed: The value of MaxErrors or more command invocations shows a status
19007	//    of Failed. This is a terminal state.
19008	//
19009	//    * Incomplete: The command was attempted on all instances and one or more
19010	//    invocations doesn't have a value of Success but not enough invocations
19011	//    failed for the status to be Failed. This is a terminal state.
19012	//
19013	//    * Canceled: The command was terminated before it was completed. This is
19014	//    a terminal state.
19015	//
19016	//    * Rate Exceeded: The number of instances targeted by the command exceeded
19017	//    the account limit for pending invocations. The system has canceled the
19018	//    command before running it on any instance. This is a terminal state.
19019	StatusDetails *string `type:"string"`
19020
19021	// The number of targets for the command.
19022	TargetCount *int64 `type:"integer"`
19023
19024	// An array of search criteria that targets instances using a Key,Value combination
19025	// that you specify. Targets is required if you don't provide one or more instance
19026	// IDs in the call.
19027	Targets []*Target `type:"list"`
19028
19029	// The TimeoutSeconds value specified for a command.
19030	TimeoutSeconds *int64 `min:"30" type:"integer"`
19031}
19032
19033// String returns the string representation
19034func (s Command) String() string {
19035	return awsutil.Prettify(s)
19036}
19037
19038// GoString returns the string representation
19039func (s Command) GoString() string {
19040	return s.String()
19041}
19042
19043// SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
19044func (s *Command) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *Command {
19045	s.CloudWatchOutputConfig = v
19046	return s
19047}
19048
19049// SetCommandId sets the CommandId field's value.
19050func (s *Command) SetCommandId(v string) *Command {
19051	s.CommandId = &v
19052	return s
19053}
19054
19055// SetComment sets the Comment field's value.
19056func (s *Command) SetComment(v string) *Command {
19057	s.Comment = &v
19058	return s
19059}
19060
19061// SetCompletedCount sets the CompletedCount field's value.
19062func (s *Command) SetCompletedCount(v int64) *Command {
19063	s.CompletedCount = &v
19064	return s
19065}
19066
19067// SetDeliveryTimedOutCount sets the DeliveryTimedOutCount field's value.
19068func (s *Command) SetDeliveryTimedOutCount(v int64) *Command {
19069	s.DeliveryTimedOutCount = &v
19070	return s
19071}
19072
19073// SetDocumentName sets the DocumentName field's value.
19074func (s *Command) SetDocumentName(v string) *Command {
19075	s.DocumentName = &v
19076	return s
19077}
19078
19079// SetDocumentVersion sets the DocumentVersion field's value.
19080func (s *Command) SetDocumentVersion(v string) *Command {
19081	s.DocumentVersion = &v
19082	return s
19083}
19084
19085// SetErrorCount sets the ErrorCount field's value.
19086func (s *Command) SetErrorCount(v int64) *Command {
19087	s.ErrorCount = &v
19088	return s
19089}
19090
19091// SetExpiresAfter sets the ExpiresAfter field's value.
19092func (s *Command) SetExpiresAfter(v time.Time) *Command {
19093	s.ExpiresAfter = &v
19094	return s
19095}
19096
19097// SetInstanceIds sets the InstanceIds field's value.
19098func (s *Command) SetInstanceIds(v []*string) *Command {
19099	s.InstanceIds = v
19100	return s
19101}
19102
19103// SetMaxConcurrency sets the MaxConcurrency field's value.
19104func (s *Command) SetMaxConcurrency(v string) *Command {
19105	s.MaxConcurrency = &v
19106	return s
19107}
19108
19109// SetMaxErrors sets the MaxErrors field's value.
19110func (s *Command) SetMaxErrors(v string) *Command {
19111	s.MaxErrors = &v
19112	return s
19113}
19114
19115// SetNotificationConfig sets the NotificationConfig field's value.
19116func (s *Command) SetNotificationConfig(v *NotificationConfig) *Command {
19117	s.NotificationConfig = v
19118	return s
19119}
19120
19121// SetOutputS3BucketName sets the OutputS3BucketName field's value.
19122func (s *Command) SetOutputS3BucketName(v string) *Command {
19123	s.OutputS3BucketName = &v
19124	return s
19125}
19126
19127// SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
19128func (s *Command) SetOutputS3KeyPrefix(v string) *Command {
19129	s.OutputS3KeyPrefix = &v
19130	return s
19131}
19132
19133// SetOutputS3Region sets the OutputS3Region field's value.
19134func (s *Command) SetOutputS3Region(v string) *Command {
19135	s.OutputS3Region = &v
19136	return s
19137}
19138
19139// SetParameters sets the Parameters field's value.
19140func (s *Command) SetParameters(v map[string][]*string) *Command {
19141	s.Parameters = v
19142	return s
19143}
19144
19145// SetRequestedDateTime sets the RequestedDateTime field's value.
19146func (s *Command) SetRequestedDateTime(v time.Time) *Command {
19147	s.RequestedDateTime = &v
19148	return s
19149}
19150
19151// SetServiceRole sets the ServiceRole field's value.
19152func (s *Command) SetServiceRole(v string) *Command {
19153	s.ServiceRole = &v
19154	return s
19155}
19156
19157// SetStatus sets the Status field's value.
19158func (s *Command) SetStatus(v string) *Command {
19159	s.Status = &v
19160	return s
19161}
19162
19163// SetStatusDetails sets the StatusDetails field's value.
19164func (s *Command) SetStatusDetails(v string) *Command {
19165	s.StatusDetails = &v
19166	return s
19167}
19168
19169// SetTargetCount sets the TargetCount field's value.
19170func (s *Command) SetTargetCount(v int64) *Command {
19171	s.TargetCount = &v
19172	return s
19173}
19174
19175// SetTargets sets the Targets field's value.
19176func (s *Command) SetTargets(v []*Target) *Command {
19177	s.Targets = v
19178	return s
19179}
19180
19181// SetTimeoutSeconds sets the TimeoutSeconds field's value.
19182func (s *Command) SetTimeoutSeconds(v int64) *Command {
19183	s.TimeoutSeconds = &v
19184	return s
19185}
19186
19187// Describes a command filter.
19188//
19189// An instance ID can't be specified when a command status is Pending because
19190// the command hasn't run on the instance yet.
19191type CommandFilter struct {
19192	_ struct{} `type:"structure"`
19193
19194	// The name of the filter.
19195	//
19196	// Key is a required field
19197	Key *string `locationName:"key" type:"string" required:"true" enum:"CommandFilterKey"`
19198
19199	// The filter value. Valid values for each filter key are as follows:
19200	//
19201	//    * InvokedAfter: Specify a timestamp to limit your results. For example,
19202	//    specify 2021-07-07T00:00:00Z to see a list of command executions occurring
19203	//    July 7, 2021, and later.
19204	//
19205	//    * InvokedBefore: Specify a timestamp to limit your results. For example,
19206	//    specify 2021-07-07T00:00:00Z to see a list of command executions from
19207	//    before July 7, 2021.
19208	//
19209	//    * Status: Specify a valid command status to see a list of all command
19210	//    executions with that status. Status values you can specify include: Pending
19211	//    InProgress Success Cancelled Failed TimedOut Cancelling
19212	//
19213	//    * DocumentName: Specify name of the Amazon Web Services Systems Manager
19214	//    document (SSM document) for which you want to see command execution results.
19215	//    For example, specify AWS-RunPatchBaseline to see command executions that
19216	//    used this SSM document to perform security patching operations on instances.
19217	//
19218	//    * ExecutionStage: Specify one of the following values: Executing: Returns
19219	//    a list of command executions that are currently still running. Complete:
19220	//    Returns a list of command executions that have already completed.
19221	//
19222	// Value is a required field
19223	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
19224}
19225
19226// String returns the string representation
19227func (s CommandFilter) String() string {
19228	return awsutil.Prettify(s)
19229}
19230
19231// GoString returns the string representation
19232func (s CommandFilter) GoString() string {
19233	return s.String()
19234}
19235
19236// Validate inspects the fields of the type to determine if they are valid.
19237func (s *CommandFilter) Validate() error {
19238	invalidParams := request.ErrInvalidParams{Context: "CommandFilter"}
19239	if s.Key == nil {
19240		invalidParams.Add(request.NewErrParamRequired("Key"))
19241	}
19242	if s.Value == nil {
19243		invalidParams.Add(request.NewErrParamRequired("Value"))
19244	}
19245	if s.Value != nil && len(*s.Value) < 1 {
19246		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
19247	}
19248
19249	if invalidParams.Len() > 0 {
19250		return invalidParams
19251	}
19252	return nil
19253}
19254
19255// SetKey sets the Key field's value.
19256func (s *CommandFilter) SetKey(v string) *CommandFilter {
19257	s.Key = &v
19258	return s
19259}
19260
19261// SetValue sets the Value field's value.
19262func (s *CommandFilter) SetValue(v string) *CommandFilter {
19263	s.Value = &v
19264	return s
19265}
19266
19267// An invocation is copy of a command sent to a specific instance. A command
19268// can apply to one or more instances. A command invocation applies to one instance.
19269// For example, if a user runs SendCommand against three instances, then a command
19270// invocation is created for each requested instance ID. A command invocation
19271// returns status and detail information about a command you ran.
19272type CommandInvocation struct {
19273	_ struct{} `type:"structure"`
19274
19275	// Amazon CloudWatch Logs information where you want Amazon Web Services Systems
19276	// Manager to send the command output.
19277	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
19278
19279	// The command against which this invocation was requested.
19280	CommandId *string `min:"36" type:"string"`
19281
19282	// Plugins processed by the command.
19283	CommandPlugins []*CommandPlugin `type:"list"`
19284
19285	// User-specified information about the command, such as a brief description
19286	// of what the command should do.
19287	Comment *string `type:"string"`
19288
19289	// The document name that was requested for execution.
19290	DocumentName *string `type:"string"`
19291
19292	// The Systems Manager document (SSM document) version.
19293	DocumentVersion *string `type:"string"`
19294
19295	// The instance ID in which this invocation was requested.
19296	InstanceId *string `type:"string"`
19297
19298	// The name of the invocation target. For EC2 instances this is the value for
19299	// the aws:Name tag. For on-premises instances, this is the name of the instance.
19300	InstanceName *string `type:"string"`
19301
19302	// Configurations for sending notifications about command status changes on
19303	// a per instance basis.
19304	NotificationConfig *NotificationConfig `type:"structure"`
19305
19306	// The time and date the request was sent to this instance.
19307	RequestedDateTime *time.Time `type:"timestamp"`
19308
19309	// The Identity and Access Management (IAM) service role that Run Command, a
19310	// capability of Amazon Web Services Systems Manager, uses to act on your behalf
19311	// when sending notifications about command status changes on a per instance
19312	// basis.
19313	ServiceRole *string `type:"string"`
19314
19315	// The URL to the plugin's StdErr file in Amazon Simple Storage Service (Amazon
19316	// S3), if the S3 bucket was defined for the parent command. For an invocation,
19317	// StandardErrorUrl is populated if there is just one plugin defined for the
19318	// command, and the S3 bucket was defined for the command.
19319	StandardErrorUrl *string `type:"string"`
19320
19321	// The URL to the plugin's StdOut file in Amazon Simple Storage Service (Amazon
19322	// S3), if the S3 bucket was defined for the parent command. For an invocation,
19323	// StandardOutputUrl is populated if there is just one plugin defined for the
19324	// command, and the S3 bucket was defined for the command.
19325	StandardOutputUrl *string `type:"string"`
19326
19327	// Whether or not the invocation succeeded, failed, or is pending.
19328	Status *string `type:"string" enum:"CommandInvocationStatus"`
19329
19330	// A detailed status of the command execution for each invocation (each instance
19331	// targeted by the command). StatusDetails includes more information than Status
19332	// because it includes states resulting from error and concurrency control parameters.
19333	// StatusDetails can show different results than Status. For more information
19334	// about these statuses, see Understanding command statuses (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
19335	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
19336	// be one of the following values:
19337	//
19338	//    * Pending: The command hasn't been sent to the instance.
19339	//
19340	//    * In Progress: The command has been sent to the instance but hasn't reached
19341	//    a terminal state.
19342	//
19343	//    * Success: The execution of the command or plugin was successfully completed.
19344	//    This is a terminal state.
19345	//
19346	//    * Delivery Timed Out: The command wasn't delivered to the instance before
19347	//    the delivery timeout expired. Delivery timeouts don't count against the
19348	//    parent command's MaxErrors limit, but they do contribute to whether the
19349	//    parent command status is Success or Incomplete. This is a terminal state.
19350	//
19351	//    * Execution Timed Out: Command execution started on the instance, but
19352	//    the execution wasn't complete before the execution timeout expired. Execution
19353	//    timeouts count against the MaxErrors limit of the parent command. This
19354	//    is a terminal state.
19355	//
19356	//    * Failed: The command wasn't successful on the instance. For a plugin,
19357	//    this indicates that the result code wasn't zero. For a command invocation,
19358	//    this indicates that the result code for one or more plugins wasn't zero.
19359	//    Invocation failures count against the MaxErrors limit of the parent command.
19360	//    This is a terminal state.
19361	//
19362	//    * Canceled: The command was terminated before it was completed. This is
19363	//    a terminal state.
19364	//
19365	//    * Undeliverable: The command can't be delivered to the instance. The instance
19366	//    might not exist or might not be responding. Undeliverable invocations
19367	//    don't count against the parent command's MaxErrors limit and don't contribute
19368	//    to whether the parent command status is Success or Incomplete. This is
19369	//    a terminal state.
19370	//
19371	//    * Terminated: The parent command exceeded its MaxErrors limit and subsequent
19372	//    command invocations were canceled by the system. This is a terminal state.
19373	StatusDetails *string `type:"string"`
19374
19375	// Gets the trace output sent by the agent.
19376	TraceOutput *string `type:"string"`
19377}
19378
19379// String returns the string representation
19380func (s CommandInvocation) String() string {
19381	return awsutil.Prettify(s)
19382}
19383
19384// GoString returns the string representation
19385func (s CommandInvocation) GoString() string {
19386	return s.String()
19387}
19388
19389// SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
19390func (s *CommandInvocation) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *CommandInvocation {
19391	s.CloudWatchOutputConfig = v
19392	return s
19393}
19394
19395// SetCommandId sets the CommandId field's value.
19396func (s *CommandInvocation) SetCommandId(v string) *CommandInvocation {
19397	s.CommandId = &v
19398	return s
19399}
19400
19401// SetCommandPlugins sets the CommandPlugins field's value.
19402func (s *CommandInvocation) SetCommandPlugins(v []*CommandPlugin) *CommandInvocation {
19403	s.CommandPlugins = v
19404	return s
19405}
19406
19407// SetComment sets the Comment field's value.
19408func (s *CommandInvocation) SetComment(v string) *CommandInvocation {
19409	s.Comment = &v
19410	return s
19411}
19412
19413// SetDocumentName sets the DocumentName field's value.
19414func (s *CommandInvocation) SetDocumentName(v string) *CommandInvocation {
19415	s.DocumentName = &v
19416	return s
19417}
19418
19419// SetDocumentVersion sets the DocumentVersion field's value.
19420func (s *CommandInvocation) SetDocumentVersion(v string) *CommandInvocation {
19421	s.DocumentVersion = &v
19422	return s
19423}
19424
19425// SetInstanceId sets the InstanceId field's value.
19426func (s *CommandInvocation) SetInstanceId(v string) *CommandInvocation {
19427	s.InstanceId = &v
19428	return s
19429}
19430
19431// SetInstanceName sets the InstanceName field's value.
19432func (s *CommandInvocation) SetInstanceName(v string) *CommandInvocation {
19433	s.InstanceName = &v
19434	return s
19435}
19436
19437// SetNotificationConfig sets the NotificationConfig field's value.
19438func (s *CommandInvocation) SetNotificationConfig(v *NotificationConfig) *CommandInvocation {
19439	s.NotificationConfig = v
19440	return s
19441}
19442
19443// SetRequestedDateTime sets the RequestedDateTime field's value.
19444func (s *CommandInvocation) SetRequestedDateTime(v time.Time) *CommandInvocation {
19445	s.RequestedDateTime = &v
19446	return s
19447}
19448
19449// SetServiceRole sets the ServiceRole field's value.
19450func (s *CommandInvocation) SetServiceRole(v string) *CommandInvocation {
19451	s.ServiceRole = &v
19452	return s
19453}
19454
19455// SetStandardErrorUrl sets the StandardErrorUrl field's value.
19456func (s *CommandInvocation) SetStandardErrorUrl(v string) *CommandInvocation {
19457	s.StandardErrorUrl = &v
19458	return s
19459}
19460
19461// SetStandardOutputUrl sets the StandardOutputUrl field's value.
19462func (s *CommandInvocation) SetStandardOutputUrl(v string) *CommandInvocation {
19463	s.StandardOutputUrl = &v
19464	return s
19465}
19466
19467// SetStatus sets the Status field's value.
19468func (s *CommandInvocation) SetStatus(v string) *CommandInvocation {
19469	s.Status = &v
19470	return s
19471}
19472
19473// SetStatusDetails sets the StatusDetails field's value.
19474func (s *CommandInvocation) SetStatusDetails(v string) *CommandInvocation {
19475	s.StatusDetails = &v
19476	return s
19477}
19478
19479// SetTraceOutput sets the TraceOutput field's value.
19480func (s *CommandInvocation) SetTraceOutput(v string) *CommandInvocation {
19481	s.TraceOutput = &v
19482	return s
19483}
19484
19485// Describes plugin details.
19486type CommandPlugin struct {
19487	_ struct{} `type:"structure"`
19488
19489	// The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin,
19490	// aws:applications, aws:runPowerShellScript, aws:psmodule, aws:cloudWatch,
19491	// aws:runShellScript, or aws:updateSSMAgent.
19492	Name *string `min:"4" type:"string"`
19493
19494	// Output of the plugin execution.
19495	Output *string `type:"string"`
19496
19497	// The S3 bucket where the responses to the command executions should be stored.
19498	// This was requested when issuing the command. For example, in the following
19499	// response:
19500	//
19501	// doc-example-bucket/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-02573cafcfEXAMPLE/awsrunShellScript
19502	//
19503	// doc-example-bucket is the name of the S3 bucket;
19504	//
19505	// ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix is the name of the S3 prefix;
19506	//
19507	// i-02573cafcfEXAMPLE is the instance ID;
19508	//
19509	// awsrunShellScript is the name of the plugin.
19510	OutputS3BucketName *string `min:"3" type:"string"`
19511
19512	// The S3 directory path inside the bucket where the responses to the command
19513	// executions should be stored. This was requested when issuing the command.
19514	// For example, in the following response:
19515	//
19516	// doc-example-bucket/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-02573cafcfEXAMPLE/awsrunShellScript
19517	//
19518	// doc-example-bucket is the name of the S3 bucket;
19519	//
19520	// ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix is the name of the S3 prefix;
19521	//
19522	// i-02573cafcfEXAMPLE is the instance ID;
19523	//
19524	// awsrunShellScript is the name of the plugin.
19525	OutputS3KeyPrefix *string `type:"string"`
19526
19527	// (Deprecated) You can no longer specify this parameter. The system ignores
19528	// it. Instead, Amazon Web Services Systems Manager automatically determines
19529	// the S3 bucket region.
19530	OutputS3Region *string `min:"3" type:"string"`
19531
19532	// A numeric response code generated after running the plugin.
19533	ResponseCode *int64 `type:"integer"`
19534
19535	// The time the plugin stopped running. Could stop prematurely if, for example,
19536	// a cancel command was sent.
19537	ResponseFinishDateTime *time.Time `type:"timestamp"`
19538
19539	// The time the plugin started running.
19540	ResponseStartDateTime *time.Time `type:"timestamp"`
19541
19542	// The URL for the complete text written by the plugin to stderr. If execution
19543	// isn't yet complete, then this string is empty.
19544	StandardErrorUrl *string `type:"string"`
19545
19546	// The URL for the complete text written by the plugin to stdout in Amazon S3.
19547	// If the S3 bucket for the command wasn't specified, then this string is empty.
19548	StandardOutputUrl *string `type:"string"`
19549
19550	// The status of this plugin. You can run a document with multiple plugins.
19551	Status *string `type:"string" enum:"CommandPluginStatus"`
19552
19553	// A detailed status of the plugin execution. StatusDetails includes more information
19554	// than Status because it includes states resulting from error and concurrency
19555	// control parameters. StatusDetails can show different results than Status.
19556	// For more information about these statuses, see Understanding command statuses
19557	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
19558	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
19559	// be one of the following values:
19560	//
19561	//    * Pending: The command hasn't been sent to the instance.
19562	//
19563	//    * In Progress: The command has been sent to the instance but hasn't reached
19564	//    a terminal state.
19565	//
19566	//    * Success: The execution of the command or plugin was successfully completed.
19567	//    This is a terminal state.
19568	//
19569	//    * Delivery Timed Out: The command wasn't delivered to the instance before
19570	//    the delivery timeout expired. Delivery timeouts don't count against the
19571	//    parent command's MaxErrors limit, but they do contribute to whether the
19572	//    parent command status is Success or Incomplete. This is a terminal state.
19573	//
19574	//    * Execution Timed Out: Command execution started on the instance, but
19575	//    the execution wasn't complete before the execution timeout expired. Execution
19576	//    timeouts count against the MaxErrors limit of the parent command. This
19577	//    is a terminal state.
19578	//
19579	//    * Failed: The command wasn't successful on the instance. For a plugin,
19580	//    this indicates that the result code wasn't zero. For a command invocation,
19581	//    this indicates that the result code for one or more plugins wasn't zero.
19582	//    Invocation failures count against the MaxErrors limit of the parent command.
19583	//    This is a terminal state.
19584	//
19585	//    * Canceled: The command was terminated before it was completed. This is
19586	//    a terminal state.
19587	//
19588	//    * Undeliverable: The command can't be delivered to the instance. The instance
19589	//    might not exist, or it might not be responding. Undeliverable invocations
19590	//    don't count against the parent command's MaxErrors limit, and they don't
19591	//    contribute to whether the parent command status is Success or Incomplete.
19592	//    This is a terminal state.
19593	//
19594	//    * Terminated: The parent command exceeded its MaxErrors limit and subsequent
19595	//    command invocations were canceled by the system. This is a terminal state.
19596	StatusDetails *string `type:"string"`
19597}
19598
19599// String returns the string representation
19600func (s CommandPlugin) String() string {
19601	return awsutil.Prettify(s)
19602}
19603
19604// GoString returns the string representation
19605func (s CommandPlugin) GoString() string {
19606	return s.String()
19607}
19608
19609// SetName sets the Name field's value.
19610func (s *CommandPlugin) SetName(v string) *CommandPlugin {
19611	s.Name = &v
19612	return s
19613}
19614
19615// SetOutput sets the Output field's value.
19616func (s *CommandPlugin) SetOutput(v string) *CommandPlugin {
19617	s.Output = &v
19618	return s
19619}
19620
19621// SetOutputS3BucketName sets the OutputS3BucketName field's value.
19622func (s *CommandPlugin) SetOutputS3BucketName(v string) *CommandPlugin {
19623	s.OutputS3BucketName = &v
19624	return s
19625}
19626
19627// SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
19628func (s *CommandPlugin) SetOutputS3KeyPrefix(v string) *CommandPlugin {
19629	s.OutputS3KeyPrefix = &v
19630	return s
19631}
19632
19633// SetOutputS3Region sets the OutputS3Region field's value.
19634func (s *CommandPlugin) SetOutputS3Region(v string) *CommandPlugin {
19635	s.OutputS3Region = &v
19636	return s
19637}
19638
19639// SetResponseCode sets the ResponseCode field's value.
19640func (s *CommandPlugin) SetResponseCode(v int64) *CommandPlugin {
19641	s.ResponseCode = &v
19642	return s
19643}
19644
19645// SetResponseFinishDateTime sets the ResponseFinishDateTime field's value.
19646func (s *CommandPlugin) SetResponseFinishDateTime(v time.Time) *CommandPlugin {
19647	s.ResponseFinishDateTime = &v
19648	return s
19649}
19650
19651// SetResponseStartDateTime sets the ResponseStartDateTime field's value.
19652func (s *CommandPlugin) SetResponseStartDateTime(v time.Time) *CommandPlugin {
19653	s.ResponseStartDateTime = &v
19654	return s
19655}
19656
19657// SetStandardErrorUrl sets the StandardErrorUrl field's value.
19658func (s *CommandPlugin) SetStandardErrorUrl(v string) *CommandPlugin {
19659	s.StandardErrorUrl = &v
19660	return s
19661}
19662
19663// SetStandardOutputUrl sets the StandardOutputUrl field's value.
19664func (s *CommandPlugin) SetStandardOutputUrl(v string) *CommandPlugin {
19665	s.StandardOutputUrl = &v
19666	return s
19667}
19668
19669// SetStatus sets the Status field's value.
19670func (s *CommandPlugin) SetStatus(v string) *CommandPlugin {
19671	s.Status = &v
19672	return s
19673}
19674
19675// SetStatusDetails sets the StatusDetails field's value.
19676func (s *CommandPlugin) SetStatusDetails(v string) *CommandPlugin {
19677	s.StatusDetails = &v
19678	return s
19679}
19680
19681// A summary of the call execution that includes an execution ID, the type of
19682// execution (for example, Command), and the date/time of the execution using
19683// a datetime object that is saved in the following format: yyyy-MM-dd'T'HH:mm:ss'Z'.
19684type ComplianceExecutionSummary struct {
19685	_ struct{} `type:"structure"`
19686
19687	// An ID created by the system when PutComplianceItems was called. For example,
19688	// CommandID is a valid execution ID. You can use this ID in subsequent calls.
19689	ExecutionId *string `type:"string"`
19690
19691	// The time the execution ran as a datetime object that is saved in the following
19692	// format: yyyy-MM-dd'T'HH:mm:ss'Z'.
19693	//
19694	// ExecutionTime is a required field
19695	ExecutionTime *time.Time `type:"timestamp" required:"true"`
19696
19697	// The type of execution. For example, Command is a valid execution type.
19698	ExecutionType *string `type:"string"`
19699}
19700
19701// String returns the string representation
19702func (s ComplianceExecutionSummary) String() string {
19703	return awsutil.Prettify(s)
19704}
19705
19706// GoString returns the string representation
19707func (s ComplianceExecutionSummary) GoString() string {
19708	return s.String()
19709}
19710
19711// Validate inspects the fields of the type to determine if they are valid.
19712func (s *ComplianceExecutionSummary) Validate() error {
19713	invalidParams := request.ErrInvalidParams{Context: "ComplianceExecutionSummary"}
19714	if s.ExecutionTime == nil {
19715		invalidParams.Add(request.NewErrParamRequired("ExecutionTime"))
19716	}
19717
19718	if invalidParams.Len() > 0 {
19719		return invalidParams
19720	}
19721	return nil
19722}
19723
19724// SetExecutionId sets the ExecutionId field's value.
19725func (s *ComplianceExecutionSummary) SetExecutionId(v string) *ComplianceExecutionSummary {
19726	s.ExecutionId = &v
19727	return s
19728}
19729
19730// SetExecutionTime sets the ExecutionTime field's value.
19731func (s *ComplianceExecutionSummary) SetExecutionTime(v time.Time) *ComplianceExecutionSummary {
19732	s.ExecutionTime = &v
19733	return s
19734}
19735
19736// SetExecutionType sets the ExecutionType field's value.
19737func (s *ComplianceExecutionSummary) SetExecutionType(v string) *ComplianceExecutionSummary {
19738	s.ExecutionType = &v
19739	return s
19740}
19741
19742// Information about the compliance as defined by the resource type. For example,
19743// for a patch resource type, Items includes information about the PatchSeverity,
19744// Classification, and so on.
19745type ComplianceItem struct {
19746	_ struct{} `type:"structure"`
19747
19748	// The compliance type. For example, Association (for a State Manager association),
19749	// Patch, or Custom:string are all valid compliance types.
19750	ComplianceType *string `min:"1" type:"string"`
19751
19752	// A "Key": "Value" tag combination for the compliance item.
19753	Details map[string]*string `type:"map"`
19754
19755	// A summary for the compliance item. The summary includes an execution ID,
19756	// the execution type (for example, command), and the execution time.
19757	ExecutionSummary *ComplianceExecutionSummary `type:"structure"`
19758
19759	// An ID for the compliance item. For example, if the compliance item is a Windows
19760	// patch, the ID could be the number of the KB article; for example: KB4010320.
19761	Id *string `type:"string"`
19762
19763	// An ID for the resource. For a managed instance, this is the instance ID.
19764	ResourceId *string `min:"1" type:"string"`
19765
19766	// The type of resource. ManagedInstance is currently the only supported resource
19767	// type.
19768	ResourceType *string `min:"1" type:"string"`
19769
19770	// The severity of the compliance status. Severity can be one of the following:
19771	// Critical, High, Medium, Low, Informational, Unspecified.
19772	Severity *string `type:"string" enum:"ComplianceSeverity"`
19773
19774	// The status of the compliance item. An item is either COMPLIANT, NON_COMPLIANT,
19775	// or an empty string (for Windows patches that aren't applicable).
19776	Status *string `type:"string" enum:"ComplianceStatus"`
19777
19778	// A title for the compliance item. For example, if the compliance item is a
19779	// Windows patch, the title could be the title of the KB article for the patch;
19780	// for example: Security Update for Active Directory Federation Services.
19781	Title *string `type:"string"`
19782}
19783
19784// String returns the string representation
19785func (s ComplianceItem) String() string {
19786	return awsutil.Prettify(s)
19787}
19788
19789// GoString returns the string representation
19790func (s ComplianceItem) GoString() string {
19791	return s.String()
19792}
19793
19794// SetComplianceType sets the ComplianceType field's value.
19795func (s *ComplianceItem) SetComplianceType(v string) *ComplianceItem {
19796	s.ComplianceType = &v
19797	return s
19798}
19799
19800// SetDetails sets the Details field's value.
19801func (s *ComplianceItem) SetDetails(v map[string]*string) *ComplianceItem {
19802	s.Details = v
19803	return s
19804}
19805
19806// SetExecutionSummary sets the ExecutionSummary field's value.
19807func (s *ComplianceItem) SetExecutionSummary(v *ComplianceExecutionSummary) *ComplianceItem {
19808	s.ExecutionSummary = v
19809	return s
19810}
19811
19812// SetId sets the Id field's value.
19813func (s *ComplianceItem) SetId(v string) *ComplianceItem {
19814	s.Id = &v
19815	return s
19816}
19817
19818// SetResourceId sets the ResourceId field's value.
19819func (s *ComplianceItem) SetResourceId(v string) *ComplianceItem {
19820	s.ResourceId = &v
19821	return s
19822}
19823
19824// SetResourceType sets the ResourceType field's value.
19825func (s *ComplianceItem) SetResourceType(v string) *ComplianceItem {
19826	s.ResourceType = &v
19827	return s
19828}
19829
19830// SetSeverity sets the Severity field's value.
19831func (s *ComplianceItem) SetSeverity(v string) *ComplianceItem {
19832	s.Severity = &v
19833	return s
19834}
19835
19836// SetStatus sets the Status field's value.
19837func (s *ComplianceItem) SetStatus(v string) *ComplianceItem {
19838	s.Status = &v
19839	return s
19840}
19841
19842// SetTitle sets the Title field's value.
19843func (s *ComplianceItem) SetTitle(v string) *ComplianceItem {
19844	s.Title = &v
19845	return s
19846}
19847
19848// Information about a compliance item.
19849type ComplianceItemEntry struct {
19850	_ struct{} `type:"structure"`
19851
19852	// A "Key": "Value" tag combination for the compliance item.
19853	Details map[string]*string `type:"map"`
19854
19855	// The compliance item ID. For example, if the compliance item is a Windows
19856	// patch, the ID could be the number of the KB article.
19857	Id *string `type:"string"`
19858
19859	// The severity of the compliance status. Severity can be one of the following:
19860	// Critical, High, Medium, Low, Informational, Unspecified.
19861	//
19862	// Severity is a required field
19863	Severity *string `type:"string" required:"true" enum:"ComplianceSeverity"`
19864
19865	// The status of the compliance item. An item is either COMPLIANT or NON_COMPLIANT.
19866	//
19867	// Status is a required field
19868	Status *string `type:"string" required:"true" enum:"ComplianceStatus"`
19869
19870	// The title of the compliance item. For example, if the compliance item is
19871	// a Windows patch, the title could be the title of the KB article for the patch;
19872	// for example: Security Update for Active Directory Federation Services.
19873	Title *string `type:"string"`
19874}
19875
19876// String returns the string representation
19877func (s ComplianceItemEntry) String() string {
19878	return awsutil.Prettify(s)
19879}
19880
19881// GoString returns the string representation
19882func (s ComplianceItemEntry) GoString() string {
19883	return s.String()
19884}
19885
19886// Validate inspects the fields of the type to determine if they are valid.
19887func (s *ComplianceItemEntry) Validate() error {
19888	invalidParams := request.ErrInvalidParams{Context: "ComplianceItemEntry"}
19889	if s.Severity == nil {
19890		invalidParams.Add(request.NewErrParamRequired("Severity"))
19891	}
19892	if s.Status == nil {
19893		invalidParams.Add(request.NewErrParamRequired("Status"))
19894	}
19895
19896	if invalidParams.Len() > 0 {
19897		return invalidParams
19898	}
19899	return nil
19900}
19901
19902// SetDetails sets the Details field's value.
19903func (s *ComplianceItemEntry) SetDetails(v map[string]*string) *ComplianceItemEntry {
19904	s.Details = v
19905	return s
19906}
19907
19908// SetId sets the Id field's value.
19909func (s *ComplianceItemEntry) SetId(v string) *ComplianceItemEntry {
19910	s.Id = &v
19911	return s
19912}
19913
19914// SetSeverity sets the Severity field's value.
19915func (s *ComplianceItemEntry) SetSeverity(v string) *ComplianceItemEntry {
19916	s.Severity = &v
19917	return s
19918}
19919
19920// SetStatus sets the Status field's value.
19921func (s *ComplianceItemEntry) SetStatus(v string) *ComplianceItemEntry {
19922	s.Status = &v
19923	return s
19924}
19925
19926// SetTitle sets the Title field's value.
19927func (s *ComplianceItemEntry) SetTitle(v string) *ComplianceItemEntry {
19928	s.Title = &v
19929	return s
19930}
19931
19932// One or more filters. Use a filter to return a more specific list of results.
19933type ComplianceStringFilter struct {
19934	_ struct{} `type:"structure"`
19935
19936	// The name of the filter.
19937	Key *string `min:"1" type:"string"`
19938
19939	// The type of comparison that should be performed for the value: Equal, NotEqual,
19940	// BeginWith, LessThan, or GreaterThan.
19941	Type *string `type:"string" enum:"ComplianceQueryOperatorType"`
19942
19943	// The value for which to search.
19944	Values []*string `min:"1" type:"list"`
19945}
19946
19947// String returns the string representation
19948func (s ComplianceStringFilter) String() string {
19949	return awsutil.Prettify(s)
19950}
19951
19952// GoString returns the string representation
19953func (s ComplianceStringFilter) GoString() string {
19954	return s.String()
19955}
19956
19957// Validate inspects the fields of the type to determine if they are valid.
19958func (s *ComplianceStringFilter) Validate() error {
19959	invalidParams := request.ErrInvalidParams{Context: "ComplianceStringFilter"}
19960	if s.Key != nil && len(*s.Key) < 1 {
19961		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
19962	}
19963	if s.Values != nil && len(s.Values) < 1 {
19964		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
19965	}
19966
19967	if invalidParams.Len() > 0 {
19968		return invalidParams
19969	}
19970	return nil
19971}
19972
19973// SetKey sets the Key field's value.
19974func (s *ComplianceStringFilter) SetKey(v string) *ComplianceStringFilter {
19975	s.Key = &v
19976	return s
19977}
19978
19979// SetType sets the Type field's value.
19980func (s *ComplianceStringFilter) SetType(v string) *ComplianceStringFilter {
19981	s.Type = &v
19982	return s
19983}
19984
19985// SetValues sets the Values field's value.
19986func (s *ComplianceStringFilter) SetValues(v []*string) *ComplianceStringFilter {
19987	s.Values = v
19988	return s
19989}
19990
19991// A summary of compliance information by compliance type.
19992type ComplianceSummaryItem struct {
19993	_ struct{} `type:"structure"`
19994
19995	// The type of compliance item. For example, the compliance type can be Association,
19996	// Patch, or Custom:string.
19997	ComplianceType *string `min:"1" type:"string"`
19998
19999	// A list of COMPLIANT items for the specified compliance type.
20000	CompliantSummary *CompliantSummary `type:"structure"`
20001
20002	// A list of NON_COMPLIANT items for the specified compliance type.
20003	NonCompliantSummary *NonCompliantSummary `type:"structure"`
20004}
20005
20006// String returns the string representation
20007func (s ComplianceSummaryItem) String() string {
20008	return awsutil.Prettify(s)
20009}
20010
20011// GoString returns the string representation
20012func (s ComplianceSummaryItem) GoString() string {
20013	return s.String()
20014}
20015
20016// SetComplianceType sets the ComplianceType field's value.
20017func (s *ComplianceSummaryItem) SetComplianceType(v string) *ComplianceSummaryItem {
20018	s.ComplianceType = &v
20019	return s
20020}
20021
20022// SetCompliantSummary sets the CompliantSummary field's value.
20023func (s *ComplianceSummaryItem) SetCompliantSummary(v *CompliantSummary) *ComplianceSummaryItem {
20024	s.CompliantSummary = v
20025	return s
20026}
20027
20028// SetNonCompliantSummary sets the NonCompliantSummary field's value.
20029func (s *ComplianceSummaryItem) SetNonCompliantSummary(v *NonCompliantSummary) *ComplianceSummaryItem {
20030	s.NonCompliantSummary = v
20031	return s
20032}
20033
20034// You specified too many custom compliance types. You can specify a maximum
20035// of 10 different types.
20036type ComplianceTypeCountLimitExceededException struct {
20037	_            struct{}                  `type:"structure"`
20038	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
20039
20040	Message_ *string `locationName:"Message" type:"string"`
20041}
20042
20043// String returns the string representation
20044func (s ComplianceTypeCountLimitExceededException) String() string {
20045	return awsutil.Prettify(s)
20046}
20047
20048// GoString returns the string representation
20049func (s ComplianceTypeCountLimitExceededException) GoString() string {
20050	return s.String()
20051}
20052
20053func newErrorComplianceTypeCountLimitExceededException(v protocol.ResponseMetadata) error {
20054	return &ComplianceTypeCountLimitExceededException{
20055		RespMetadata: v,
20056	}
20057}
20058
20059// Code returns the exception type name.
20060func (s *ComplianceTypeCountLimitExceededException) Code() string {
20061	return "ComplianceTypeCountLimitExceededException"
20062}
20063
20064// Message returns the exception's message.
20065func (s *ComplianceTypeCountLimitExceededException) Message() string {
20066	if s.Message_ != nil {
20067		return *s.Message_
20068	}
20069	return ""
20070}
20071
20072// OrigErr always returns nil, satisfies awserr.Error interface.
20073func (s *ComplianceTypeCountLimitExceededException) OrigErr() error {
20074	return nil
20075}
20076
20077func (s *ComplianceTypeCountLimitExceededException) Error() string {
20078	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
20079}
20080
20081// Status code returns the HTTP status code for the request's response error.
20082func (s *ComplianceTypeCountLimitExceededException) StatusCode() int {
20083	return s.RespMetadata.StatusCode
20084}
20085
20086// RequestID returns the service's response RequestID for request.
20087func (s *ComplianceTypeCountLimitExceededException) RequestID() string {
20088	return s.RespMetadata.RequestID
20089}
20090
20091// A summary of resources that are compliant. The summary is organized according
20092// to the resource count for each compliance type.
20093type CompliantSummary struct {
20094	_ struct{} `type:"structure"`
20095
20096	// The total number of resources that are compliant.
20097	CompliantCount *int64 `type:"integer"`
20098
20099	// A summary of the compliance severity by compliance type.
20100	SeveritySummary *SeveritySummary `type:"structure"`
20101}
20102
20103// String returns the string representation
20104func (s CompliantSummary) String() string {
20105	return awsutil.Prettify(s)
20106}
20107
20108// GoString returns the string representation
20109func (s CompliantSummary) GoString() string {
20110	return s.String()
20111}
20112
20113// SetCompliantCount sets the CompliantCount field's value.
20114func (s *CompliantSummary) SetCompliantCount(v int64) *CompliantSummary {
20115	s.CompliantCount = &v
20116	return s
20117}
20118
20119// SetSeveritySummary sets the SeveritySummary field's value.
20120func (s *CompliantSummary) SetSeveritySummary(v *SeveritySummary) *CompliantSummary {
20121	s.SeveritySummary = v
20122	return s
20123}
20124
20125type CreateActivationInput struct {
20126	_ struct{} `type:"structure"`
20127
20128	// The name of the registered, managed instance as it will appear in the Amazon
20129	// Web Services Systems Manager console or when you use the Amazon Web Services
20130	// command line tools to list Systems Manager resources.
20131	//
20132	// Don't enter personally identifiable information in this field.
20133	DefaultInstanceName *string `type:"string"`
20134
20135	// A user-defined description of the resource that you want to register with
20136	// Systems Manager.
20137	//
20138	// Don't enter personally identifiable information in this field.
20139	Description *string `type:"string"`
20140
20141	// The date by which this activation request should expire, in timestamp format,
20142	// such as "2021-07-07T00:00:00". You can specify a date up to 30 days in advance.
20143	// If you don't provide an expiration date, the activation code expires in 24
20144	// hours.
20145	ExpirationDate *time.Time `type:"timestamp"`
20146
20147	// The name of the Identity and Access Management (IAM) role that you want to
20148	// assign to the managed instance. This IAM role must provide AssumeRole permissions
20149	// for the Amazon Web Services Systems Manager service principal ssm.amazonaws.com.
20150	// For more information, see Create an IAM service role for a hybrid environment
20151	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-service-role.html)
20152	// in the Amazon Web Services Systems Manager User Guide.
20153	//
20154	// IamRole is a required field
20155	IamRole *string `type:"string" required:"true"`
20156
20157	// Specify the maximum number of managed instances you want to register. The
20158	// default value is 1.
20159	RegistrationLimit *int64 `min:"1" type:"integer"`
20160
20161	// Optional metadata that you assign to a resource. Tags enable you to categorize
20162	// a resource in different ways, such as by purpose, owner, or environment.
20163	// For example, you might want to tag an activation to identify which servers
20164	// or virtual machines (VMs) in your on-premises environment you intend to activate.
20165	// In this case, you could specify the following key-value pairs:
20166	//
20167	//    * Key=OS,Value=Windows
20168	//
20169	//    * Key=Environment,Value=Production
20170	//
20171	// When you install SSM Agent on your on-premises servers and VMs, you specify
20172	// an activation ID and code. When you specify the activation ID and code, tags
20173	// assigned to the activation are automatically applied to the on-premises servers
20174	// or VMs.
20175	//
20176	// You can't add tags to or delete tags from an existing activation. You can
20177	// tag your on-premises servers and VMs after they connect to Systems Manager
20178	// for the first time and are assigned a managed instance ID. This means they
20179	// are listed in the Amazon Web Services Systems Manager console with an ID
20180	// that is prefixed with "mi-". For information about how to add tags to your
20181	// managed instances, see AddTagsToResource. For information about how to remove
20182	// tags from your managed instances, see RemoveTagsFromResource.
20183	Tags []*Tag `type:"list"`
20184}
20185
20186// String returns the string representation
20187func (s CreateActivationInput) String() string {
20188	return awsutil.Prettify(s)
20189}
20190
20191// GoString returns the string representation
20192func (s CreateActivationInput) GoString() string {
20193	return s.String()
20194}
20195
20196// Validate inspects the fields of the type to determine if they are valid.
20197func (s *CreateActivationInput) Validate() error {
20198	invalidParams := request.ErrInvalidParams{Context: "CreateActivationInput"}
20199	if s.IamRole == nil {
20200		invalidParams.Add(request.NewErrParamRequired("IamRole"))
20201	}
20202	if s.RegistrationLimit != nil && *s.RegistrationLimit < 1 {
20203		invalidParams.Add(request.NewErrParamMinValue("RegistrationLimit", 1))
20204	}
20205	if s.Tags != nil {
20206		for i, v := range s.Tags {
20207			if v == nil {
20208				continue
20209			}
20210			if err := v.Validate(); err != nil {
20211				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
20212			}
20213		}
20214	}
20215
20216	if invalidParams.Len() > 0 {
20217		return invalidParams
20218	}
20219	return nil
20220}
20221
20222// SetDefaultInstanceName sets the DefaultInstanceName field's value.
20223func (s *CreateActivationInput) SetDefaultInstanceName(v string) *CreateActivationInput {
20224	s.DefaultInstanceName = &v
20225	return s
20226}
20227
20228// SetDescription sets the Description field's value.
20229func (s *CreateActivationInput) SetDescription(v string) *CreateActivationInput {
20230	s.Description = &v
20231	return s
20232}
20233
20234// SetExpirationDate sets the ExpirationDate field's value.
20235func (s *CreateActivationInput) SetExpirationDate(v time.Time) *CreateActivationInput {
20236	s.ExpirationDate = &v
20237	return s
20238}
20239
20240// SetIamRole sets the IamRole field's value.
20241func (s *CreateActivationInput) SetIamRole(v string) *CreateActivationInput {
20242	s.IamRole = &v
20243	return s
20244}
20245
20246// SetRegistrationLimit sets the RegistrationLimit field's value.
20247func (s *CreateActivationInput) SetRegistrationLimit(v int64) *CreateActivationInput {
20248	s.RegistrationLimit = &v
20249	return s
20250}
20251
20252// SetTags sets the Tags field's value.
20253func (s *CreateActivationInput) SetTags(v []*Tag) *CreateActivationInput {
20254	s.Tags = v
20255	return s
20256}
20257
20258type CreateActivationOutput struct {
20259	_ struct{} `type:"structure"`
20260
20261	// The code the system generates when it processes the activation. The activation
20262	// code functions like a password to validate the activation ID.
20263	ActivationCode *string `min:"20" type:"string"`
20264
20265	// The ID number generated by the system when it processed the activation. The
20266	// activation ID functions like a user name.
20267	ActivationId *string `type:"string"`
20268}
20269
20270// String returns the string representation
20271func (s CreateActivationOutput) String() string {
20272	return awsutil.Prettify(s)
20273}
20274
20275// GoString returns the string representation
20276func (s CreateActivationOutput) GoString() string {
20277	return s.String()
20278}
20279
20280// SetActivationCode sets the ActivationCode field's value.
20281func (s *CreateActivationOutput) SetActivationCode(v string) *CreateActivationOutput {
20282	s.ActivationCode = &v
20283	return s
20284}
20285
20286// SetActivationId sets the ActivationId field's value.
20287func (s *CreateActivationOutput) SetActivationId(v string) *CreateActivationOutput {
20288	s.ActivationId = &v
20289	return s
20290}
20291
20292type CreateAssociationBatchInput struct {
20293	_ struct{} `type:"structure"`
20294
20295	// One or more associations.
20296	//
20297	// Entries is a required field
20298	Entries []*CreateAssociationBatchRequestEntry `min:"1" type:"list" required:"true"`
20299}
20300
20301// String returns the string representation
20302func (s CreateAssociationBatchInput) String() string {
20303	return awsutil.Prettify(s)
20304}
20305
20306// GoString returns the string representation
20307func (s CreateAssociationBatchInput) GoString() string {
20308	return s.String()
20309}
20310
20311// Validate inspects the fields of the type to determine if they are valid.
20312func (s *CreateAssociationBatchInput) Validate() error {
20313	invalidParams := request.ErrInvalidParams{Context: "CreateAssociationBatchInput"}
20314	if s.Entries == nil {
20315		invalidParams.Add(request.NewErrParamRequired("Entries"))
20316	}
20317	if s.Entries != nil && len(s.Entries) < 1 {
20318		invalidParams.Add(request.NewErrParamMinLen("Entries", 1))
20319	}
20320	if s.Entries != nil {
20321		for i, v := range s.Entries {
20322			if v == nil {
20323				continue
20324			}
20325			if err := v.Validate(); err != nil {
20326				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entries", i), err.(request.ErrInvalidParams))
20327			}
20328		}
20329	}
20330
20331	if invalidParams.Len() > 0 {
20332		return invalidParams
20333	}
20334	return nil
20335}
20336
20337// SetEntries sets the Entries field's value.
20338func (s *CreateAssociationBatchInput) SetEntries(v []*CreateAssociationBatchRequestEntry) *CreateAssociationBatchInput {
20339	s.Entries = v
20340	return s
20341}
20342
20343type CreateAssociationBatchOutput struct {
20344	_ struct{} `type:"structure"`
20345
20346	// Information about the associations that failed.
20347	Failed []*FailedCreateAssociation `type:"list"`
20348
20349	// Information about the associations that succeeded.
20350	Successful []*AssociationDescription `type:"list"`
20351}
20352
20353// String returns the string representation
20354func (s CreateAssociationBatchOutput) String() string {
20355	return awsutil.Prettify(s)
20356}
20357
20358// GoString returns the string representation
20359func (s CreateAssociationBatchOutput) GoString() string {
20360	return s.String()
20361}
20362
20363// SetFailed sets the Failed field's value.
20364func (s *CreateAssociationBatchOutput) SetFailed(v []*FailedCreateAssociation) *CreateAssociationBatchOutput {
20365	s.Failed = v
20366	return s
20367}
20368
20369// SetSuccessful sets the Successful field's value.
20370func (s *CreateAssociationBatchOutput) SetSuccessful(v []*AssociationDescription) *CreateAssociationBatchOutput {
20371	s.Successful = v
20372	return s
20373}
20374
20375// Describes the association of a Amazon Web Services Systems Manager document
20376// (SSM document) and an instance.
20377type CreateAssociationBatchRequestEntry struct {
20378	_ struct{} `type:"structure"`
20379
20380	// By default, when you create a new associations, the system runs it immediately
20381	// after it is created and then according to the schedule you specified. Specify
20382	// this option if you don't want an association to run immediately after you
20383	// create it. This parameter isn't supported for rate expressions.
20384	ApplyOnlyAtCronInterval *bool `type:"boolean"`
20385
20386	// Specify a descriptive name for the association.
20387	AssociationName *string `type:"string"`
20388
20389	// Specify the target for the association. This target is required for associations
20390	// that use an Automation runbook and target resources by using rate controls.
20391	// Automation is a capability of Amazon Web Services Systems Manager.
20392	AutomationTargetParameterName *string `min:"1" type:"string"`
20393
20394	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
20395	// your associations are gated under. The associations only run when that Change
20396	// Calendar is open. For more information, see Amazon Web Services Systems Manager
20397	// Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
20398	CalendarNames []*string `type:"list"`
20399
20400	// The severity level to assign to the association.
20401	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
20402
20403	// The document version.
20404	DocumentVersion *string `type:"string"`
20405
20406	// The instance ID.
20407	//
20408	// InstanceId has been deprecated. To specify an instance ID for an association,
20409	// use the Targets parameter. Requests that include the parameter InstanceID
20410	// with Systems Manager documents (SSM documents) that use schema version 2.0
20411	// or later will fail. In addition, if you use the parameter InstanceId, you
20412	// can't use the parameters AssociationName, DocumentVersion, MaxErrors, MaxConcurrency,
20413	// OutputLocation, or ScheduleExpression. To use these parameters, you must
20414	// use the Targets parameter.
20415	InstanceId *string `type:"string"`
20416
20417	// The maximum number of targets allowed to run the association at the same
20418	// time. You can specify a number, for example 10, or a percentage of the target
20419	// set, for example 10%. The default value is 100%, which means all targets
20420	// run the association at the same time.
20421	//
20422	// If a new instance starts and attempts to run an association while Systems
20423	// Manager is running MaxConcurrency associations, the association is allowed
20424	// to run. During the next association interval, the new instance will process
20425	// its association within the limit specified for MaxConcurrency.
20426	MaxConcurrency *string `min:"1" type:"string"`
20427
20428	// The number of errors that are allowed before the system stops sending requests
20429	// to run the association on additional targets. You can specify either an absolute
20430	// number of errors, for example 10, or a percentage of the target set, for
20431	// example 10%. If you specify 3, for example, the system stops sending requests
20432	// when the fourth error is received. If you specify 0, then the system stops
20433	// sending requests after the first error is returned. If you run an association
20434	// on 50 instances and set MaxError to 10%, then the system stops sending the
20435	// request when the sixth error is received.
20436	//
20437	// Executions that are already running an association when MaxErrors is reached
20438	// are allowed to complete, but some of these executions may fail as well. If
20439	// you need to ensure that there won't be more than max-errors failed executions,
20440	// set MaxConcurrency to 1 so that executions proceed one at a time.
20441	MaxErrors *string `min:"1" type:"string"`
20442
20443	// The name of the SSM document that contains the configuration information
20444	// for the instance. You can specify Command or Automation runbooks.
20445	//
20446	// You can specify Amazon Web Services-predefined documents, documents you created,
20447	// or a document that is shared with you from another account.
20448	//
20449	// For SSM documents that are shared with you from other Amazon Web Services
20450	// accounts, you must specify the complete SSM document ARN, in the following
20451	// format:
20452	//
20453	// arn:aws:ssm:region:account-id:document/document-name
20454	//
20455	// For example:
20456	//
20457	// arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
20458	//
20459	// For Amazon Web Services-predefined documents and SSM documents you created
20460	// in your account, you only need to specify the document name. For example,
20461	// AWS-ApplyPatchBaseline or My-Document.
20462	//
20463	// Name is a required field
20464	Name *string `type:"string" required:"true"`
20465
20466	// An S3 bucket where you want to store the results of this request.
20467	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
20468
20469	// A description of the parameters for a document.
20470	Parameters map[string][]*string `type:"map"`
20471
20472	// A cron expression that specifies a schedule when the association runs.
20473	ScheduleExpression *string `min:"1" type:"string"`
20474
20475	// The mode for generating association compliance. You can specify AUTO or MANUAL.
20476	// In AUTO mode, the system uses the status of the association execution to
20477	// determine the compliance status. If the association execution runs successfully,
20478	// then the association is COMPLIANT. If the association execution doesn't run
20479	// successfully, the association is NON-COMPLIANT.
20480	//
20481	// In MANUAL mode, you must specify the AssociationId as a parameter for the
20482	// PutComplianceItems API operation. In this case, compliance data isn't managed
20483	// by State Manager, a capability of Amazon Web Services Systems Manager. It
20484	// is managed by your direct call to the PutComplianceItems API operation.
20485	//
20486	// By default, all associations use AUTO mode.
20487	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
20488
20489	// Use this action to create an association in multiple Regions and multiple
20490	// accounts.
20491	TargetLocations []*TargetLocation `min:"1" type:"list"`
20492
20493	// The instances targeted by the request.
20494	Targets []*Target `type:"list"`
20495}
20496
20497// String returns the string representation
20498func (s CreateAssociationBatchRequestEntry) String() string {
20499	return awsutil.Prettify(s)
20500}
20501
20502// GoString returns the string representation
20503func (s CreateAssociationBatchRequestEntry) GoString() string {
20504	return s.String()
20505}
20506
20507// Validate inspects the fields of the type to determine if they are valid.
20508func (s *CreateAssociationBatchRequestEntry) Validate() error {
20509	invalidParams := request.ErrInvalidParams{Context: "CreateAssociationBatchRequestEntry"}
20510	if s.AutomationTargetParameterName != nil && len(*s.AutomationTargetParameterName) < 1 {
20511		invalidParams.Add(request.NewErrParamMinLen("AutomationTargetParameterName", 1))
20512	}
20513	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
20514		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
20515	}
20516	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
20517		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
20518	}
20519	if s.Name == nil {
20520		invalidParams.Add(request.NewErrParamRequired("Name"))
20521	}
20522	if s.ScheduleExpression != nil && len(*s.ScheduleExpression) < 1 {
20523		invalidParams.Add(request.NewErrParamMinLen("ScheduleExpression", 1))
20524	}
20525	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
20526		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
20527	}
20528	if s.OutputLocation != nil {
20529		if err := s.OutputLocation.Validate(); err != nil {
20530			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
20531		}
20532	}
20533	if s.TargetLocations != nil {
20534		for i, v := range s.TargetLocations {
20535			if v == nil {
20536				continue
20537			}
20538			if err := v.Validate(); err != nil {
20539				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
20540			}
20541		}
20542	}
20543	if s.Targets != nil {
20544		for i, v := range s.Targets {
20545			if v == nil {
20546				continue
20547			}
20548			if err := v.Validate(); err != nil {
20549				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
20550			}
20551		}
20552	}
20553
20554	if invalidParams.Len() > 0 {
20555		return invalidParams
20556	}
20557	return nil
20558}
20559
20560// SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
20561func (s *CreateAssociationBatchRequestEntry) SetApplyOnlyAtCronInterval(v bool) *CreateAssociationBatchRequestEntry {
20562	s.ApplyOnlyAtCronInterval = &v
20563	return s
20564}
20565
20566// SetAssociationName sets the AssociationName field's value.
20567func (s *CreateAssociationBatchRequestEntry) SetAssociationName(v string) *CreateAssociationBatchRequestEntry {
20568	s.AssociationName = &v
20569	return s
20570}
20571
20572// SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
20573func (s *CreateAssociationBatchRequestEntry) SetAutomationTargetParameterName(v string) *CreateAssociationBatchRequestEntry {
20574	s.AutomationTargetParameterName = &v
20575	return s
20576}
20577
20578// SetCalendarNames sets the CalendarNames field's value.
20579func (s *CreateAssociationBatchRequestEntry) SetCalendarNames(v []*string) *CreateAssociationBatchRequestEntry {
20580	s.CalendarNames = v
20581	return s
20582}
20583
20584// SetComplianceSeverity sets the ComplianceSeverity field's value.
20585func (s *CreateAssociationBatchRequestEntry) SetComplianceSeverity(v string) *CreateAssociationBatchRequestEntry {
20586	s.ComplianceSeverity = &v
20587	return s
20588}
20589
20590// SetDocumentVersion sets the DocumentVersion field's value.
20591func (s *CreateAssociationBatchRequestEntry) SetDocumentVersion(v string) *CreateAssociationBatchRequestEntry {
20592	s.DocumentVersion = &v
20593	return s
20594}
20595
20596// SetInstanceId sets the InstanceId field's value.
20597func (s *CreateAssociationBatchRequestEntry) SetInstanceId(v string) *CreateAssociationBatchRequestEntry {
20598	s.InstanceId = &v
20599	return s
20600}
20601
20602// SetMaxConcurrency sets the MaxConcurrency field's value.
20603func (s *CreateAssociationBatchRequestEntry) SetMaxConcurrency(v string) *CreateAssociationBatchRequestEntry {
20604	s.MaxConcurrency = &v
20605	return s
20606}
20607
20608// SetMaxErrors sets the MaxErrors field's value.
20609func (s *CreateAssociationBatchRequestEntry) SetMaxErrors(v string) *CreateAssociationBatchRequestEntry {
20610	s.MaxErrors = &v
20611	return s
20612}
20613
20614// SetName sets the Name field's value.
20615func (s *CreateAssociationBatchRequestEntry) SetName(v string) *CreateAssociationBatchRequestEntry {
20616	s.Name = &v
20617	return s
20618}
20619
20620// SetOutputLocation sets the OutputLocation field's value.
20621func (s *CreateAssociationBatchRequestEntry) SetOutputLocation(v *InstanceAssociationOutputLocation) *CreateAssociationBatchRequestEntry {
20622	s.OutputLocation = v
20623	return s
20624}
20625
20626// SetParameters sets the Parameters field's value.
20627func (s *CreateAssociationBatchRequestEntry) SetParameters(v map[string][]*string) *CreateAssociationBatchRequestEntry {
20628	s.Parameters = v
20629	return s
20630}
20631
20632// SetScheduleExpression sets the ScheduleExpression field's value.
20633func (s *CreateAssociationBatchRequestEntry) SetScheduleExpression(v string) *CreateAssociationBatchRequestEntry {
20634	s.ScheduleExpression = &v
20635	return s
20636}
20637
20638// SetSyncCompliance sets the SyncCompliance field's value.
20639func (s *CreateAssociationBatchRequestEntry) SetSyncCompliance(v string) *CreateAssociationBatchRequestEntry {
20640	s.SyncCompliance = &v
20641	return s
20642}
20643
20644// SetTargetLocations sets the TargetLocations field's value.
20645func (s *CreateAssociationBatchRequestEntry) SetTargetLocations(v []*TargetLocation) *CreateAssociationBatchRequestEntry {
20646	s.TargetLocations = v
20647	return s
20648}
20649
20650// SetTargets sets the Targets field's value.
20651func (s *CreateAssociationBatchRequestEntry) SetTargets(v []*Target) *CreateAssociationBatchRequestEntry {
20652	s.Targets = v
20653	return s
20654}
20655
20656type CreateAssociationInput struct {
20657	_ struct{} `type:"structure"`
20658
20659	// By default, when you create a new association, the system runs it immediately
20660	// after it is created and then according to the schedule you specified. Specify
20661	// this option if you don't want an association to run immediately after you
20662	// create it. This parameter isn't supported for rate expressions.
20663	ApplyOnlyAtCronInterval *bool `type:"boolean"`
20664
20665	// Specify a descriptive name for the association.
20666	AssociationName *string `type:"string"`
20667
20668	// Specify the target for the association. This target is required for associations
20669	// that use an Automation runbook and target resources by using rate controls.
20670	// Automation is a capability of Amazon Web Services Systems Manager.
20671	AutomationTargetParameterName *string `min:"1" type:"string"`
20672
20673	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
20674	// you want to gate your associations under. The associations only run when
20675	// that change calendar is open. For more information, see Amazon Web Services
20676	// Systems Manager Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
20677	CalendarNames []*string `type:"list"`
20678
20679	// The severity level to assign to the association.
20680	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
20681
20682	// The document version you want to associate with the target(s). Can be a specific
20683	// version or the default version.
20684	DocumentVersion *string `type:"string"`
20685
20686	// The instance ID.
20687	//
20688	// InstanceId has been deprecated. To specify an instance ID for an association,
20689	// use the Targets parameter. Requests that include the parameter InstanceID
20690	// with Systems Manager documents (SSM documents) that use schema version 2.0
20691	// or later will fail. In addition, if you use the parameter InstanceId, you
20692	// can't use the parameters AssociationName, DocumentVersion, MaxErrors, MaxConcurrency,
20693	// OutputLocation, or ScheduleExpression. To use these parameters, you must
20694	// use the Targets parameter.
20695	InstanceId *string `type:"string"`
20696
20697	// The maximum number of targets allowed to run the association at the same
20698	// time. You can specify a number, for example 10, or a percentage of the target
20699	// set, for example 10%. The default value is 100%, which means all targets
20700	// run the association at the same time.
20701	//
20702	// If a new instance starts and attempts to run an association while Systems
20703	// Manager is running MaxConcurrency associations, the association is allowed
20704	// to run. During the next association interval, the new instance will process
20705	// its association within the limit specified for MaxConcurrency.
20706	MaxConcurrency *string `min:"1" type:"string"`
20707
20708	// The number of errors that are allowed before the system stops sending requests
20709	// to run the association on additional targets. You can specify either an absolute
20710	// number of errors, for example 10, or a percentage of the target set, for
20711	// example 10%. If you specify 3, for example, the system stops sending requests
20712	// when the fourth error is received. If you specify 0, then the system stops
20713	// sending requests after the first error is returned. If you run an association
20714	// on 50 instances and set MaxError to 10%, then the system stops sending the
20715	// request when the sixth error is received.
20716	//
20717	// Executions that are already running an association when MaxErrors is reached
20718	// are allowed to complete, but some of these executions may fail as well. If
20719	// you need to ensure that there won't be more than max-errors failed executions,
20720	// set MaxConcurrency to 1 so that executions proceed one at a time.
20721	MaxErrors *string `min:"1" type:"string"`
20722
20723	// The name of the SSM Command document or Automation runbook that contains
20724	// the configuration information for the instance.
20725	//
20726	// You can specify Amazon Web Services-predefined documents, documents you created,
20727	// or a document that is shared with you from another account.
20728	//
20729	// For Systems Manager documents (SSM documents) that are shared with you from
20730	// other Amazon Web Services accounts, you must specify the complete SSM document
20731	// ARN, in the following format:
20732	//
20733	// arn:partition:ssm:region:account-id:document/document-name
20734	//
20735	// For example:
20736	//
20737	// arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
20738	//
20739	// For Amazon Web Services-predefined documents and SSM documents you created
20740	// in your account, you only need to specify the document name. For example,
20741	// AWS-ApplyPatchBaseline or My-Document.
20742	//
20743	// Name is a required field
20744	Name *string `type:"string" required:"true"`
20745
20746	// An Amazon Simple Storage Service (Amazon S3) bucket where you want to store
20747	// the output details of the request.
20748	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
20749
20750	// The parameters for the runtime configuration of the document.
20751	Parameters map[string][]*string `type:"map"`
20752
20753	// A cron expression when the association will be applied to the target(s).
20754	ScheduleExpression *string `min:"1" type:"string"`
20755
20756	// The mode for generating association compliance. You can specify AUTO or MANUAL.
20757	// In AUTO mode, the system uses the status of the association execution to
20758	// determine the compliance status. If the association execution runs successfully,
20759	// then the association is COMPLIANT. If the association execution doesn't run
20760	// successfully, the association is NON-COMPLIANT.
20761	//
20762	// In MANUAL mode, you must specify the AssociationId as a parameter for the
20763	// PutComplianceItems API operation. In this case, compliance data isn't managed
20764	// by State Manager. It is managed by your direct call to the PutComplianceItems
20765	// API operation.
20766	//
20767	// By default, all associations use AUTO mode.
20768	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
20769
20770	// A location is a combination of Amazon Web Services Regions and Amazon Web
20771	// Services accounts where you want to run the association. Use this action
20772	// to create an association in multiple Regions and multiple accounts.
20773	TargetLocations []*TargetLocation `min:"1" type:"list"`
20774
20775	// The targets for the association. You can target instances by using tags,
20776	// Amazon Web Services resource groups, all instances in an Amazon Web Services
20777	// account, or individual instance IDs. For more information about choosing
20778	// targets for an association, see Using targets and rate controls with State
20779	// Manager associations (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-state-manager-targets-and-rate-controls.html)
20780	// in the Amazon Web Services Systems Manager User Guide.
20781	Targets []*Target `type:"list"`
20782}
20783
20784// String returns the string representation
20785func (s CreateAssociationInput) String() string {
20786	return awsutil.Prettify(s)
20787}
20788
20789// GoString returns the string representation
20790func (s CreateAssociationInput) GoString() string {
20791	return s.String()
20792}
20793
20794// Validate inspects the fields of the type to determine if they are valid.
20795func (s *CreateAssociationInput) Validate() error {
20796	invalidParams := request.ErrInvalidParams{Context: "CreateAssociationInput"}
20797	if s.AutomationTargetParameterName != nil && len(*s.AutomationTargetParameterName) < 1 {
20798		invalidParams.Add(request.NewErrParamMinLen("AutomationTargetParameterName", 1))
20799	}
20800	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
20801		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
20802	}
20803	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
20804		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
20805	}
20806	if s.Name == nil {
20807		invalidParams.Add(request.NewErrParamRequired("Name"))
20808	}
20809	if s.ScheduleExpression != nil && len(*s.ScheduleExpression) < 1 {
20810		invalidParams.Add(request.NewErrParamMinLen("ScheduleExpression", 1))
20811	}
20812	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
20813		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
20814	}
20815	if s.OutputLocation != nil {
20816		if err := s.OutputLocation.Validate(); err != nil {
20817			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
20818		}
20819	}
20820	if s.TargetLocations != nil {
20821		for i, v := range s.TargetLocations {
20822			if v == nil {
20823				continue
20824			}
20825			if err := v.Validate(); err != nil {
20826				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
20827			}
20828		}
20829	}
20830	if s.Targets != nil {
20831		for i, v := range s.Targets {
20832			if v == nil {
20833				continue
20834			}
20835			if err := v.Validate(); err != nil {
20836				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
20837			}
20838		}
20839	}
20840
20841	if invalidParams.Len() > 0 {
20842		return invalidParams
20843	}
20844	return nil
20845}
20846
20847// SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
20848func (s *CreateAssociationInput) SetApplyOnlyAtCronInterval(v bool) *CreateAssociationInput {
20849	s.ApplyOnlyAtCronInterval = &v
20850	return s
20851}
20852
20853// SetAssociationName sets the AssociationName field's value.
20854func (s *CreateAssociationInput) SetAssociationName(v string) *CreateAssociationInput {
20855	s.AssociationName = &v
20856	return s
20857}
20858
20859// SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
20860func (s *CreateAssociationInput) SetAutomationTargetParameterName(v string) *CreateAssociationInput {
20861	s.AutomationTargetParameterName = &v
20862	return s
20863}
20864
20865// SetCalendarNames sets the CalendarNames field's value.
20866func (s *CreateAssociationInput) SetCalendarNames(v []*string) *CreateAssociationInput {
20867	s.CalendarNames = v
20868	return s
20869}
20870
20871// SetComplianceSeverity sets the ComplianceSeverity field's value.
20872func (s *CreateAssociationInput) SetComplianceSeverity(v string) *CreateAssociationInput {
20873	s.ComplianceSeverity = &v
20874	return s
20875}
20876
20877// SetDocumentVersion sets the DocumentVersion field's value.
20878func (s *CreateAssociationInput) SetDocumentVersion(v string) *CreateAssociationInput {
20879	s.DocumentVersion = &v
20880	return s
20881}
20882
20883// SetInstanceId sets the InstanceId field's value.
20884func (s *CreateAssociationInput) SetInstanceId(v string) *CreateAssociationInput {
20885	s.InstanceId = &v
20886	return s
20887}
20888
20889// SetMaxConcurrency sets the MaxConcurrency field's value.
20890func (s *CreateAssociationInput) SetMaxConcurrency(v string) *CreateAssociationInput {
20891	s.MaxConcurrency = &v
20892	return s
20893}
20894
20895// SetMaxErrors sets the MaxErrors field's value.
20896func (s *CreateAssociationInput) SetMaxErrors(v string) *CreateAssociationInput {
20897	s.MaxErrors = &v
20898	return s
20899}
20900
20901// SetName sets the Name field's value.
20902func (s *CreateAssociationInput) SetName(v string) *CreateAssociationInput {
20903	s.Name = &v
20904	return s
20905}
20906
20907// SetOutputLocation sets the OutputLocation field's value.
20908func (s *CreateAssociationInput) SetOutputLocation(v *InstanceAssociationOutputLocation) *CreateAssociationInput {
20909	s.OutputLocation = v
20910	return s
20911}
20912
20913// SetParameters sets the Parameters field's value.
20914func (s *CreateAssociationInput) SetParameters(v map[string][]*string) *CreateAssociationInput {
20915	s.Parameters = v
20916	return s
20917}
20918
20919// SetScheduleExpression sets the ScheduleExpression field's value.
20920func (s *CreateAssociationInput) SetScheduleExpression(v string) *CreateAssociationInput {
20921	s.ScheduleExpression = &v
20922	return s
20923}
20924
20925// SetSyncCompliance sets the SyncCompliance field's value.
20926func (s *CreateAssociationInput) SetSyncCompliance(v string) *CreateAssociationInput {
20927	s.SyncCompliance = &v
20928	return s
20929}
20930
20931// SetTargetLocations sets the TargetLocations field's value.
20932func (s *CreateAssociationInput) SetTargetLocations(v []*TargetLocation) *CreateAssociationInput {
20933	s.TargetLocations = v
20934	return s
20935}
20936
20937// SetTargets sets the Targets field's value.
20938func (s *CreateAssociationInput) SetTargets(v []*Target) *CreateAssociationInput {
20939	s.Targets = v
20940	return s
20941}
20942
20943type CreateAssociationOutput struct {
20944	_ struct{} `type:"structure"`
20945
20946	// Information about the association.
20947	AssociationDescription *AssociationDescription `type:"structure"`
20948}
20949
20950// String returns the string representation
20951func (s CreateAssociationOutput) String() string {
20952	return awsutil.Prettify(s)
20953}
20954
20955// GoString returns the string representation
20956func (s CreateAssociationOutput) GoString() string {
20957	return s.String()
20958}
20959
20960// SetAssociationDescription sets the AssociationDescription field's value.
20961func (s *CreateAssociationOutput) SetAssociationDescription(v *AssociationDescription) *CreateAssociationOutput {
20962	s.AssociationDescription = v
20963	return s
20964}
20965
20966type CreateDocumentInput struct {
20967	_ struct{} `type:"structure"`
20968
20969	// A list of key-value pairs that describe attachments to a version of a document.
20970	Attachments []*AttachmentsSource `type:"list"`
20971
20972	// The content for the new SSM document in JSON or YAML format. We recommend
20973	// storing the contents for your new document in an external JSON or YAML file
20974	// and referencing the file in a command.
20975	//
20976	// For examples, see the following topics in the Amazon Web Services Systems
20977	// Manager User Guide.
20978	//
20979	//    * Create an SSM document (Amazon Web Services API) (https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-document-api.html)
20980	//
20981	//    * Create an SSM document (Amazon Web Services CLI) (https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-document-cli.html)
20982	//
20983	//    * Create an SSM document (API) (https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-document-api.html)
20984	//
20985	// Content is a required field
20986	Content *string `min:"1" type:"string" required:"true"`
20987
20988	// An optional field where you can specify a friendly name for the SSM document.
20989	// This value can differ for each version of the document. You can update this
20990	// value at a later time using the UpdateDocument operation.
20991	DisplayName *string `type:"string"`
20992
20993	// Specify the document format for the request. The document format can be JSON,
20994	// YAML, or TEXT. JSON is the default format.
20995	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
20996
20997	// The type of document to create.
20998	DocumentType *string `type:"string" enum:"DocumentType"`
20999
21000	// A name for the SSM document.
21001	//
21002	// You can't use the following strings as document name prefixes. These are
21003	// reserved by Amazon Web Services for use as document name prefixes:
21004	//
21005	//    * aws-
21006	//
21007	//    * amazon
21008	//
21009	//    * amzn
21010	//
21011	// Name is a required field
21012	Name *string `type:"string" required:"true"`
21013
21014	// A list of SSM documents required by a document. This parameter is used exclusively
21015	// by AppConfig. When a user creates an AppConfig configuration in an SSM document,
21016	// the user must also specify a required document for validation purposes. In
21017	// this case, an ApplicationConfiguration document requires an ApplicationConfigurationSchema
21018	// document for validation purposes. For more information, see What is AppConfig?
21019	// (https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html)
21020	// in the AppConfig User Guide.
21021	Requires []*DocumentRequires `min:"1" type:"list"`
21022
21023	// Optional metadata that you assign to a resource. Tags enable you to categorize
21024	// a resource in different ways, such as by purpose, owner, or environment.
21025	// For example, you might want to tag an SSM document to identify the types
21026	// of targets or the environment where it will run. In this case, you could
21027	// specify the following key-value pairs:
21028	//
21029	//    * Key=OS,Value=Windows
21030	//
21031	//    * Key=Environment,Value=Production
21032	//
21033	// To add tags to an existing SSM document, use the AddTagsToResource operation.
21034	Tags []*Tag `type:"list"`
21035
21036	// Specify a target type to define the kinds of resources the document can run
21037	// on. For example, to run a document on EC2 instances, specify the following
21038	// value: /AWS::EC2::Instance. If you specify a value of '/' the document can
21039	// run on all types of resources. If you don't specify a value, the document
21040	// can't run on any resources. For a list of valid resource types, see Amazon
21041	// Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
21042	// in the CloudFormation User Guide.
21043	TargetType *string `type:"string"`
21044
21045	// An optional field specifying the version of the artifact you are creating
21046	// with the document. For example, "Release 12, Update 6". This value is unique
21047	// across all versions of a document, and can't be changed.
21048	VersionName *string `type:"string"`
21049}
21050
21051// String returns the string representation
21052func (s CreateDocumentInput) String() string {
21053	return awsutil.Prettify(s)
21054}
21055
21056// GoString returns the string representation
21057func (s CreateDocumentInput) GoString() string {
21058	return s.String()
21059}
21060
21061// Validate inspects the fields of the type to determine if they are valid.
21062func (s *CreateDocumentInput) Validate() error {
21063	invalidParams := request.ErrInvalidParams{Context: "CreateDocumentInput"}
21064	if s.Content == nil {
21065		invalidParams.Add(request.NewErrParamRequired("Content"))
21066	}
21067	if s.Content != nil && len(*s.Content) < 1 {
21068		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
21069	}
21070	if s.Name == nil {
21071		invalidParams.Add(request.NewErrParamRequired("Name"))
21072	}
21073	if s.Requires != nil && len(s.Requires) < 1 {
21074		invalidParams.Add(request.NewErrParamMinLen("Requires", 1))
21075	}
21076	if s.Attachments != nil {
21077		for i, v := range s.Attachments {
21078			if v == nil {
21079				continue
21080			}
21081			if err := v.Validate(); err != nil {
21082				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attachments", i), err.(request.ErrInvalidParams))
21083			}
21084		}
21085	}
21086	if s.Requires != nil {
21087		for i, v := range s.Requires {
21088			if v == nil {
21089				continue
21090			}
21091			if err := v.Validate(); err != nil {
21092				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Requires", i), err.(request.ErrInvalidParams))
21093			}
21094		}
21095	}
21096	if s.Tags != nil {
21097		for i, v := range s.Tags {
21098			if v == nil {
21099				continue
21100			}
21101			if err := v.Validate(); err != nil {
21102				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
21103			}
21104		}
21105	}
21106
21107	if invalidParams.Len() > 0 {
21108		return invalidParams
21109	}
21110	return nil
21111}
21112
21113// SetAttachments sets the Attachments field's value.
21114func (s *CreateDocumentInput) SetAttachments(v []*AttachmentsSource) *CreateDocumentInput {
21115	s.Attachments = v
21116	return s
21117}
21118
21119// SetContent sets the Content field's value.
21120func (s *CreateDocumentInput) SetContent(v string) *CreateDocumentInput {
21121	s.Content = &v
21122	return s
21123}
21124
21125// SetDisplayName sets the DisplayName field's value.
21126func (s *CreateDocumentInput) SetDisplayName(v string) *CreateDocumentInput {
21127	s.DisplayName = &v
21128	return s
21129}
21130
21131// SetDocumentFormat sets the DocumentFormat field's value.
21132func (s *CreateDocumentInput) SetDocumentFormat(v string) *CreateDocumentInput {
21133	s.DocumentFormat = &v
21134	return s
21135}
21136
21137// SetDocumentType sets the DocumentType field's value.
21138func (s *CreateDocumentInput) SetDocumentType(v string) *CreateDocumentInput {
21139	s.DocumentType = &v
21140	return s
21141}
21142
21143// SetName sets the Name field's value.
21144func (s *CreateDocumentInput) SetName(v string) *CreateDocumentInput {
21145	s.Name = &v
21146	return s
21147}
21148
21149// SetRequires sets the Requires field's value.
21150func (s *CreateDocumentInput) SetRequires(v []*DocumentRequires) *CreateDocumentInput {
21151	s.Requires = v
21152	return s
21153}
21154
21155// SetTags sets the Tags field's value.
21156func (s *CreateDocumentInput) SetTags(v []*Tag) *CreateDocumentInput {
21157	s.Tags = v
21158	return s
21159}
21160
21161// SetTargetType sets the TargetType field's value.
21162func (s *CreateDocumentInput) SetTargetType(v string) *CreateDocumentInput {
21163	s.TargetType = &v
21164	return s
21165}
21166
21167// SetVersionName sets the VersionName field's value.
21168func (s *CreateDocumentInput) SetVersionName(v string) *CreateDocumentInput {
21169	s.VersionName = &v
21170	return s
21171}
21172
21173type CreateDocumentOutput struct {
21174	_ struct{} `type:"structure"`
21175
21176	// Information about the SSM document.
21177	DocumentDescription *DocumentDescription `type:"structure"`
21178}
21179
21180// String returns the string representation
21181func (s CreateDocumentOutput) String() string {
21182	return awsutil.Prettify(s)
21183}
21184
21185// GoString returns the string representation
21186func (s CreateDocumentOutput) GoString() string {
21187	return s.String()
21188}
21189
21190// SetDocumentDescription sets the DocumentDescription field's value.
21191func (s *CreateDocumentOutput) SetDocumentDescription(v *DocumentDescription) *CreateDocumentOutput {
21192	s.DocumentDescription = v
21193	return s
21194}
21195
21196type CreateMaintenanceWindowInput struct {
21197	_ struct{} `type:"structure"`
21198
21199	// Enables a maintenance window task to run on managed instances, even if you
21200	// haven't registered those instances as targets. If enabled, then you must
21201	// specify the unregistered instances (by instance ID) when you register a task
21202	// with the maintenance window.
21203	//
21204	// If you don't enable this option, then you must specify previously-registered
21205	// targets when you register a task with the maintenance window.
21206	//
21207	// AllowUnassociatedTargets is a required field
21208	AllowUnassociatedTargets *bool `type:"boolean" required:"true"`
21209
21210	// User-provided idempotency token.
21211	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
21212
21213	// The number of hours before the end of the maintenance window that Amazon
21214	// Web Services Systems Manager stops scheduling new tasks for execution.
21215	//
21216	// Cutoff is a required field
21217	Cutoff *int64 `type:"integer" required:"true"`
21218
21219	// An optional description for the maintenance window. We recommend specifying
21220	// a description to help you organize your maintenance windows.
21221	Description *string `min:"1" type:"string" sensitive:"true"`
21222
21223	// The duration of the maintenance window in hours.
21224	//
21225	// Duration is a required field
21226	Duration *int64 `min:"1" type:"integer" required:"true"`
21227
21228	// The date and time, in ISO-8601 Extended format, for when you want the maintenance
21229	// window to become inactive. EndDate allows you to set a date and time in the
21230	// future when the maintenance window will no longer run.
21231	EndDate *string `type:"string"`
21232
21233	// The name of the maintenance window.
21234	//
21235	// Name is a required field
21236	Name *string `min:"3" type:"string" required:"true"`
21237
21238	// The schedule of the maintenance window in the form of a cron or rate expression.
21239	//
21240	// Schedule is a required field
21241	Schedule *string `min:"1" type:"string" required:"true"`
21242
21243	// The number of days to wait after the date and time specified by a cron expression
21244	// before running the maintenance window.
21245	//
21246	// For example, the following cron expression schedules a maintenance window
21247	// to run on the third Tuesday of every month at 11:30 PM.
21248	//
21249	// cron(30 23 ? * TUE#3 *)
21250	//
21251	// If the schedule offset is 2, the maintenance window won't run until two days
21252	// later.
21253	ScheduleOffset *int64 `min:"1" type:"integer"`
21254
21255	// The time zone that the scheduled maintenance window executions are based
21256	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
21257	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
21258	// (https://www.iana.org/time-zones) on the IANA website.
21259	ScheduleTimezone *string `type:"string"`
21260
21261	// The date and time, in ISO-8601 Extended format, for when you want the maintenance
21262	// window to become active. StartDate allows you to delay activation of the
21263	// maintenance window until the specified future date.
21264	StartDate *string `type:"string"`
21265
21266	// Optional metadata that you assign to a resource. Tags enable you to categorize
21267	// a resource in different ways, such as by purpose, owner, or environment.
21268	// For example, you might want to tag a maintenance window to identify the type
21269	// of tasks it will run, the types of targets, and the environment it will run
21270	// in. In this case, you could specify the following key-value pairs:
21271	//
21272	//    * Key=TaskType,Value=AgentUpdate
21273	//
21274	//    * Key=OS,Value=Windows
21275	//
21276	//    * Key=Environment,Value=Production
21277	//
21278	// To add tags to an existing maintenance window, use the AddTagsToResource
21279	// operation.
21280	Tags []*Tag `type:"list"`
21281}
21282
21283// String returns the string representation
21284func (s CreateMaintenanceWindowInput) String() string {
21285	return awsutil.Prettify(s)
21286}
21287
21288// GoString returns the string representation
21289func (s CreateMaintenanceWindowInput) GoString() string {
21290	return s.String()
21291}
21292
21293// Validate inspects the fields of the type to determine if they are valid.
21294func (s *CreateMaintenanceWindowInput) Validate() error {
21295	invalidParams := request.ErrInvalidParams{Context: "CreateMaintenanceWindowInput"}
21296	if s.AllowUnassociatedTargets == nil {
21297		invalidParams.Add(request.NewErrParamRequired("AllowUnassociatedTargets"))
21298	}
21299	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
21300		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
21301	}
21302	if s.Cutoff == nil {
21303		invalidParams.Add(request.NewErrParamRequired("Cutoff"))
21304	}
21305	if s.Description != nil && len(*s.Description) < 1 {
21306		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
21307	}
21308	if s.Duration == nil {
21309		invalidParams.Add(request.NewErrParamRequired("Duration"))
21310	}
21311	if s.Duration != nil && *s.Duration < 1 {
21312		invalidParams.Add(request.NewErrParamMinValue("Duration", 1))
21313	}
21314	if s.Name == nil {
21315		invalidParams.Add(request.NewErrParamRequired("Name"))
21316	}
21317	if s.Name != nil && len(*s.Name) < 3 {
21318		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
21319	}
21320	if s.Schedule == nil {
21321		invalidParams.Add(request.NewErrParamRequired("Schedule"))
21322	}
21323	if s.Schedule != nil && len(*s.Schedule) < 1 {
21324		invalidParams.Add(request.NewErrParamMinLen("Schedule", 1))
21325	}
21326	if s.ScheduleOffset != nil && *s.ScheduleOffset < 1 {
21327		invalidParams.Add(request.NewErrParamMinValue("ScheduleOffset", 1))
21328	}
21329	if s.Tags != nil {
21330		for i, v := range s.Tags {
21331			if v == nil {
21332				continue
21333			}
21334			if err := v.Validate(); err != nil {
21335				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
21336			}
21337		}
21338	}
21339
21340	if invalidParams.Len() > 0 {
21341		return invalidParams
21342	}
21343	return nil
21344}
21345
21346// SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
21347func (s *CreateMaintenanceWindowInput) SetAllowUnassociatedTargets(v bool) *CreateMaintenanceWindowInput {
21348	s.AllowUnassociatedTargets = &v
21349	return s
21350}
21351
21352// SetClientToken sets the ClientToken field's value.
21353func (s *CreateMaintenanceWindowInput) SetClientToken(v string) *CreateMaintenanceWindowInput {
21354	s.ClientToken = &v
21355	return s
21356}
21357
21358// SetCutoff sets the Cutoff field's value.
21359func (s *CreateMaintenanceWindowInput) SetCutoff(v int64) *CreateMaintenanceWindowInput {
21360	s.Cutoff = &v
21361	return s
21362}
21363
21364// SetDescription sets the Description field's value.
21365func (s *CreateMaintenanceWindowInput) SetDescription(v string) *CreateMaintenanceWindowInput {
21366	s.Description = &v
21367	return s
21368}
21369
21370// SetDuration sets the Duration field's value.
21371func (s *CreateMaintenanceWindowInput) SetDuration(v int64) *CreateMaintenanceWindowInput {
21372	s.Duration = &v
21373	return s
21374}
21375
21376// SetEndDate sets the EndDate field's value.
21377func (s *CreateMaintenanceWindowInput) SetEndDate(v string) *CreateMaintenanceWindowInput {
21378	s.EndDate = &v
21379	return s
21380}
21381
21382// SetName sets the Name field's value.
21383func (s *CreateMaintenanceWindowInput) SetName(v string) *CreateMaintenanceWindowInput {
21384	s.Name = &v
21385	return s
21386}
21387
21388// SetSchedule sets the Schedule field's value.
21389func (s *CreateMaintenanceWindowInput) SetSchedule(v string) *CreateMaintenanceWindowInput {
21390	s.Schedule = &v
21391	return s
21392}
21393
21394// SetScheduleOffset sets the ScheduleOffset field's value.
21395func (s *CreateMaintenanceWindowInput) SetScheduleOffset(v int64) *CreateMaintenanceWindowInput {
21396	s.ScheduleOffset = &v
21397	return s
21398}
21399
21400// SetScheduleTimezone sets the ScheduleTimezone field's value.
21401func (s *CreateMaintenanceWindowInput) SetScheduleTimezone(v string) *CreateMaintenanceWindowInput {
21402	s.ScheduleTimezone = &v
21403	return s
21404}
21405
21406// SetStartDate sets the StartDate field's value.
21407func (s *CreateMaintenanceWindowInput) SetStartDate(v string) *CreateMaintenanceWindowInput {
21408	s.StartDate = &v
21409	return s
21410}
21411
21412// SetTags sets the Tags field's value.
21413func (s *CreateMaintenanceWindowInput) SetTags(v []*Tag) *CreateMaintenanceWindowInput {
21414	s.Tags = v
21415	return s
21416}
21417
21418type CreateMaintenanceWindowOutput struct {
21419	_ struct{} `type:"structure"`
21420
21421	// The ID of the created maintenance window.
21422	WindowId *string `min:"20" type:"string"`
21423}
21424
21425// String returns the string representation
21426func (s CreateMaintenanceWindowOutput) String() string {
21427	return awsutil.Prettify(s)
21428}
21429
21430// GoString returns the string representation
21431func (s CreateMaintenanceWindowOutput) GoString() string {
21432	return s.String()
21433}
21434
21435// SetWindowId sets the WindowId field's value.
21436func (s *CreateMaintenanceWindowOutput) SetWindowId(v string) *CreateMaintenanceWindowOutput {
21437	s.WindowId = &v
21438	return s
21439}
21440
21441type CreateOpsItemInput struct {
21442	_ struct{} `type:"structure"`
21443
21444	// The time a runbook workflow ended. Currently reported only for the OpsItem
21445	// type /aws/changerequest.
21446	ActualEndTime *time.Time `type:"timestamp"`
21447
21448	// The time a runbook workflow started. Currently reported only for the OpsItem
21449	// type /aws/changerequest.
21450	ActualStartTime *time.Time `type:"timestamp"`
21451
21452	// Specify a category to assign to an OpsItem.
21453	Category *string `min:"1" type:"string"`
21454
21455	// Information about the OpsItem.
21456	//
21457	// Description is a required field
21458	Description *string `min:"1" type:"string" required:"true"`
21459
21460	// The Amazon Resource Name (ARN) of an SNS topic where notifications are sent
21461	// when this OpsItem is edited or changed.
21462	Notifications []*OpsItemNotification `type:"list"`
21463
21464	// Operational data is custom data that provides useful reference details about
21465	// the OpsItem. For example, you can specify log files, error strings, license
21466	// keys, troubleshooting tips, or other relevant data. You enter operational
21467	// data as key-value pairs. The key has a maximum length of 128 characters.
21468	// The value has a maximum size of 20 KB.
21469	//
21470	// Operational data keys can't begin with the following: amazon, aws, amzn,
21471	// ssm, /amazon, /aws, /amzn, /ssm.
21472	//
21473	// You can choose to make the data searchable by other users in the account
21474	// or you can restrict search access. Searchable data means that all users with
21475	// access to the OpsItem Overview page (as provided by the DescribeOpsItems
21476	// API operation) can view and search on the specified data. Operational data
21477	// that isn't searchable is only viewable by users who have access to the OpsItem
21478	// (as provided by the GetOpsItem API operation).
21479	//
21480	// Use the /aws/resources key in OperationalData to specify a related resource
21481	// in the request. Use the /aws/automations key in OperationalData to associate
21482	// an Automation runbook with the OpsItem. To view Amazon Web Services CLI example
21483	// commands that use these keys, see Creating OpsItems manually (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-creating-OpsItems.html#OpsCenter-manually-create-OpsItems)
21484	// in the Amazon Web Services Systems Manager User Guide.
21485	OperationalData map[string]*OpsItemDataValue `type:"map"`
21486
21487	// The type of OpsItem to create. Currently, the only valid values are /aws/changerequest
21488	// and /aws/issue.
21489	OpsItemType *string `type:"string"`
21490
21491	// The time specified in a change request for a runbook workflow to end. Currently
21492	// supported only for the OpsItem type /aws/changerequest.
21493	PlannedEndTime *time.Time `type:"timestamp"`
21494
21495	// The time specified in a change request for a runbook workflow to start. Currently
21496	// supported only for the OpsItem type /aws/changerequest.
21497	PlannedStartTime *time.Time `type:"timestamp"`
21498
21499	// The importance of this OpsItem in relation to other OpsItems in the system.
21500	Priority *int64 `min:"1" type:"integer"`
21501
21502	// One or more OpsItems that share something in common with the current OpsItems.
21503	// For example, related OpsItems can include OpsItems with similar error messages,
21504	// impacted resources, or statuses for the impacted resource.
21505	RelatedOpsItems []*RelatedOpsItem `type:"list"`
21506
21507	// Specify a severity to assign to an OpsItem.
21508	Severity *string `min:"1" type:"string"`
21509
21510	// The origin of the OpsItem, such as Amazon EC2 or Systems Manager.
21511	//
21512	// The source name can't contain the following strings: aws, amazon, and amzn.
21513	//
21514	// Source is a required field
21515	Source *string `min:"1" type:"string" required:"true"`
21516
21517	// Optional metadata that you assign to a resource. You can restrict access
21518	// to OpsItems by using an inline IAM policy that specifies tags. For more information,
21519	// see Getting started with OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-getting-started.html#OpsCenter-getting-started-user-permissions)
21520	// in the Amazon Web Services Systems Manager User Guide.
21521	//
21522	// Tags use a key-value pair. For example:
21523	//
21524	// Key=Department,Value=Finance
21525	//
21526	// To add tags to a new OpsItem, a user must have IAM permissions for both the
21527	// ssm:CreateOpsItems operation and the ssm:AddTagsToResource operation. To
21528	// add tags to an existing OpsItem, use the AddTagsToResource operation.
21529	Tags []*Tag `type:"list"`
21530
21531	// A short heading that describes the nature of the OpsItem and the impacted
21532	// resource.
21533	//
21534	// Title is a required field
21535	Title *string `min:"1" type:"string" required:"true"`
21536}
21537
21538// String returns the string representation
21539func (s CreateOpsItemInput) String() string {
21540	return awsutil.Prettify(s)
21541}
21542
21543// GoString returns the string representation
21544func (s CreateOpsItemInput) GoString() string {
21545	return s.String()
21546}
21547
21548// Validate inspects the fields of the type to determine if they are valid.
21549func (s *CreateOpsItemInput) Validate() error {
21550	invalidParams := request.ErrInvalidParams{Context: "CreateOpsItemInput"}
21551	if s.Category != nil && len(*s.Category) < 1 {
21552		invalidParams.Add(request.NewErrParamMinLen("Category", 1))
21553	}
21554	if s.Description == nil {
21555		invalidParams.Add(request.NewErrParamRequired("Description"))
21556	}
21557	if s.Description != nil && len(*s.Description) < 1 {
21558		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
21559	}
21560	if s.Priority != nil && *s.Priority < 1 {
21561		invalidParams.Add(request.NewErrParamMinValue("Priority", 1))
21562	}
21563	if s.Severity != nil && len(*s.Severity) < 1 {
21564		invalidParams.Add(request.NewErrParamMinLen("Severity", 1))
21565	}
21566	if s.Source == nil {
21567		invalidParams.Add(request.NewErrParamRequired("Source"))
21568	}
21569	if s.Source != nil && len(*s.Source) < 1 {
21570		invalidParams.Add(request.NewErrParamMinLen("Source", 1))
21571	}
21572	if s.Title == nil {
21573		invalidParams.Add(request.NewErrParamRequired("Title"))
21574	}
21575	if s.Title != nil && len(*s.Title) < 1 {
21576		invalidParams.Add(request.NewErrParamMinLen("Title", 1))
21577	}
21578	if s.RelatedOpsItems != nil {
21579		for i, v := range s.RelatedOpsItems {
21580			if v == nil {
21581				continue
21582			}
21583			if err := v.Validate(); err != nil {
21584				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RelatedOpsItems", i), err.(request.ErrInvalidParams))
21585			}
21586		}
21587	}
21588	if s.Tags != nil {
21589		for i, v := range s.Tags {
21590			if v == nil {
21591				continue
21592			}
21593			if err := v.Validate(); err != nil {
21594				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
21595			}
21596		}
21597	}
21598
21599	if invalidParams.Len() > 0 {
21600		return invalidParams
21601	}
21602	return nil
21603}
21604
21605// SetActualEndTime sets the ActualEndTime field's value.
21606func (s *CreateOpsItemInput) SetActualEndTime(v time.Time) *CreateOpsItemInput {
21607	s.ActualEndTime = &v
21608	return s
21609}
21610
21611// SetActualStartTime sets the ActualStartTime field's value.
21612func (s *CreateOpsItemInput) SetActualStartTime(v time.Time) *CreateOpsItemInput {
21613	s.ActualStartTime = &v
21614	return s
21615}
21616
21617// SetCategory sets the Category field's value.
21618func (s *CreateOpsItemInput) SetCategory(v string) *CreateOpsItemInput {
21619	s.Category = &v
21620	return s
21621}
21622
21623// SetDescription sets the Description field's value.
21624func (s *CreateOpsItemInput) SetDescription(v string) *CreateOpsItemInput {
21625	s.Description = &v
21626	return s
21627}
21628
21629// SetNotifications sets the Notifications field's value.
21630func (s *CreateOpsItemInput) SetNotifications(v []*OpsItemNotification) *CreateOpsItemInput {
21631	s.Notifications = v
21632	return s
21633}
21634
21635// SetOperationalData sets the OperationalData field's value.
21636func (s *CreateOpsItemInput) SetOperationalData(v map[string]*OpsItemDataValue) *CreateOpsItemInput {
21637	s.OperationalData = v
21638	return s
21639}
21640
21641// SetOpsItemType sets the OpsItemType field's value.
21642func (s *CreateOpsItemInput) SetOpsItemType(v string) *CreateOpsItemInput {
21643	s.OpsItemType = &v
21644	return s
21645}
21646
21647// SetPlannedEndTime sets the PlannedEndTime field's value.
21648func (s *CreateOpsItemInput) SetPlannedEndTime(v time.Time) *CreateOpsItemInput {
21649	s.PlannedEndTime = &v
21650	return s
21651}
21652
21653// SetPlannedStartTime sets the PlannedStartTime field's value.
21654func (s *CreateOpsItemInput) SetPlannedStartTime(v time.Time) *CreateOpsItemInput {
21655	s.PlannedStartTime = &v
21656	return s
21657}
21658
21659// SetPriority sets the Priority field's value.
21660func (s *CreateOpsItemInput) SetPriority(v int64) *CreateOpsItemInput {
21661	s.Priority = &v
21662	return s
21663}
21664
21665// SetRelatedOpsItems sets the RelatedOpsItems field's value.
21666func (s *CreateOpsItemInput) SetRelatedOpsItems(v []*RelatedOpsItem) *CreateOpsItemInput {
21667	s.RelatedOpsItems = v
21668	return s
21669}
21670
21671// SetSeverity sets the Severity field's value.
21672func (s *CreateOpsItemInput) SetSeverity(v string) *CreateOpsItemInput {
21673	s.Severity = &v
21674	return s
21675}
21676
21677// SetSource sets the Source field's value.
21678func (s *CreateOpsItemInput) SetSource(v string) *CreateOpsItemInput {
21679	s.Source = &v
21680	return s
21681}
21682
21683// SetTags sets the Tags field's value.
21684func (s *CreateOpsItemInput) SetTags(v []*Tag) *CreateOpsItemInput {
21685	s.Tags = v
21686	return s
21687}
21688
21689// SetTitle sets the Title field's value.
21690func (s *CreateOpsItemInput) SetTitle(v string) *CreateOpsItemInput {
21691	s.Title = &v
21692	return s
21693}
21694
21695type CreateOpsItemOutput struct {
21696	_ struct{} `type:"structure"`
21697
21698	// The ID of the OpsItem.
21699	OpsItemId *string `type:"string"`
21700}
21701
21702// String returns the string representation
21703func (s CreateOpsItemOutput) String() string {
21704	return awsutil.Prettify(s)
21705}
21706
21707// GoString returns the string representation
21708func (s CreateOpsItemOutput) GoString() string {
21709	return s.String()
21710}
21711
21712// SetOpsItemId sets the OpsItemId field's value.
21713func (s *CreateOpsItemOutput) SetOpsItemId(v string) *CreateOpsItemOutput {
21714	s.OpsItemId = &v
21715	return s
21716}
21717
21718type CreateOpsMetadataInput struct {
21719	_ struct{} `type:"structure"`
21720
21721	// Metadata for a new Application Manager application.
21722	Metadata map[string]*MetadataValue `min:"1" type:"map"`
21723
21724	// A resource ID for a new Application Manager application.
21725	//
21726	// ResourceId is a required field
21727	ResourceId *string `min:"1" type:"string" required:"true"`
21728
21729	// Optional metadata that you assign to a resource. You can specify a maximum
21730	// of five tags for an OpsMetadata object. Tags enable you to categorize a resource
21731	// in different ways, such as by purpose, owner, or environment. For example,
21732	// you might want to tag an OpsMetadata object to identify an environment or
21733	// target Amazon Web Services Region. In this case, you could specify the following
21734	// key-value pairs:
21735	//
21736	//    * Key=Environment,Value=Production
21737	//
21738	//    * Key=Region,Value=us-east-2
21739	Tags []*Tag `type:"list"`
21740}
21741
21742// String returns the string representation
21743func (s CreateOpsMetadataInput) String() string {
21744	return awsutil.Prettify(s)
21745}
21746
21747// GoString returns the string representation
21748func (s CreateOpsMetadataInput) GoString() string {
21749	return s.String()
21750}
21751
21752// Validate inspects the fields of the type to determine if they are valid.
21753func (s *CreateOpsMetadataInput) Validate() error {
21754	invalidParams := request.ErrInvalidParams{Context: "CreateOpsMetadataInput"}
21755	if s.Metadata != nil && len(s.Metadata) < 1 {
21756		invalidParams.Add(request.NewErrParamMinLen("Metadata", 1))
21757	}
21758	if s.ResourceId == nil {
21759		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
21760	}
21761	if s.ResourceId != nil && len(*s.ResourceId) < 1 {
21762		invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1))
21763	}
21764	if s.Metadata != nil {
21765		for i, v := range s.Metadata {
21766			if v == nil {
21767				continue
21768			}
21769			if err := v.Validate(); err != nil {
21770				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metadata", i), err.(request.ErrInvalidParams))
21771			}
21772		}
21773	}
21774	if s.Tags != nil {
21775		for i, v := range s.Tags {
21776			if v == nil {
21777				continue
21778			}
21779			if err := v.Validate(); err != nil {
21780				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
21781			}
21782		}
21783	}
21784
21785	if invalidParams.Len() > 0 {
21786		return invalidParams
21787	}
21788	return nil
21789}
21790
21791// SetMetadata sets the Metadata field's value.
21792func (s *CreateOpsMetadataInput) SetMetadata(v map[string]*MetadataValue) *CreateOpsMetadataInput {
21793	s.Metadata = v
21794	return s
21795}
21796
21797// SetResourceId sets the ResourceId field's value.
21798func (s *CreateOpsMetadataInput) SetResourceId(v string) *CreateOpsMetadataInput {
21799	s.ResourceId = &v
21800	return s
21801}
21802
21803// SetTags sets the Tags field's value.
21804func (s *CreateOpsMetadataInput) SetTags(v []*Tag) *CreateOpsMetadataInput {
21805	s.Tags = v
21806	return s
21807}
21808
21809type CreateOpsMetadataOutput struct {
21810	_ struct{} `type:"structure"`
21811
21812	// The Amazon Resource Name (ARN) of the OpsMetadata Object or blob created
21813	// by the call.
21814	OpsMetadataArn *string `min:"1" type:"string"`
21815}
21816
21817// String returns the string representation
21818func (s CreateOpsMetadataOutput) String() string {
21819	return awsutil.Prettify(s)
21820}
21821
21822// GoString returns the string representation
21823func (s CreateOpsMetadataOutput) GoString() string {
21824	return s.String()
21825}
21826
21827// SetOpsMetadataArn sets the OpsMetadataArn field's value.
21828func (s *CreateOpsMetadataOutput) SetOpsMetadataArn(v string) *CreateOpsMetadataOutput {
21829	s.OpsMetadataArn = &v
21830	return s
21831}
21832
21833type CreatePatchBaselineInput struct {
21834	_ struct{} `type:"structure"`
21835
21836	// A set of rules used to include patches in the baseline.
21837	ApprovalRules *PatchRuleGroup `type:"structure"`
21838
21839	// A list of explicitly approved patches for the baseline.
21840	//
21841	// For information about accepted formats for lists of approved patches and
21842	// rejected patches, see About package name formats for approved and rejected
21843	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
21844	// in the Amazon Web Services Systems Manager User Guide.
21845	ApprovedPatches []*string `type:"list"`
21846
21847	// Defines the compliance level for approved patches. When an approved patch
21848	// is reported as missing, this value describes the severity of the compliance
21849	// violation. The default value is UNSPECIFIED.
21850	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
21851
21852	// Indicates whether the list of approved patches includes non-security updates
21853	// that should be applied to the instances. The default value is false. Applies
21854	// to Linux instances only.
21855	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
21856
21857	// User-provided idempotency token.
21858	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
21859
21860	// A description of the patch baseline.
21861	Description *string `min:"1" type:"string"`
21862
21863	// A set of global filters used to include patches in the baseline.
21864	GlobalFilters *PatchFilterGroup `type:"structure"`
21865
21866	// The name of the patch baseline.
21867	//
21868	// Name is a required field
21869	Name *string `min:"3" type:"string" required:"true"`
21870
21871	// Defines the operating system the patch baseline applies to. The default value
21872	// is WINDOWS.
21873	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
21874
21875	// A list of explicitly rejected patches for the baseline.
21876	//
21877	// For information about accepted formats for lists of approved patches and
21878	// rejected patches, see About package name formats for approved and rejected
21879	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
21880	// in the Amazon Web Services Systems Manager User Guide.
21881	RejectedPatches []*string `type:"list"`
21882
21883	// The action for Patch Manager to take on patches included in the RejectedPackages
21884	// list.
21885	//
21886	//    * ALLOW_AS_DEPENDENCY : A package in the Rejected patches list is installed
21887	//    only if it is a dependency of another package. It is considered compliant
21888	//    with the patch baseline, and its status is reported as InstalledOther.
21889	//    This is the default action if no option is specified.
21890	//
21891	//    * BLOCK : Packages in the RejectedPatches list, and packages that include
21892	//    them as dependencies, aren't installed under any circumstances. If a package
21893	//    was installed before it was added to the Rejected patches list, it is
21894	//    considered non-compliant with the patch baseline, and its status is reported
21895	//    as InstalledRejected.
21896	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
21897
21898	// Information about the patches to use to update the instances, including target
21899	// operating systems and source repositories. Applies to Linux instances only.
21900	Sources []*PatchSource `type:"list"`
21901
21902	// Optional metadata that you assign to a resource. Tags enable you to categorize
21903	// a resource in different ways, such as by purpose, owner, or environment.
21904	// For example, you might want to tag a patch baseline to identify the severity
21905	// level of patches it specifies and the operating system family it applies
21906	// to. In this case, you could specify the following key-value pairs:
21907	//
21908	//    * Key=PatchSeverity,Value=Critical
21909	//
21910	//    * Key=OS,Value=Windows
21911	//
21912	// To add tags to an existing patch baseline, use the AddTagsToResource operation.
21913	Tags []*Tag `type:"list"`
21914}
21915
21916// String returns the string representation
21917func (s CreatePatchBaselineInput) String() string {
21918	return awsutil.Prettify(s)
21919}
21920
21921// GoString returns the string representation
21922func (s CreatePatchBaselineInput) GoString() string {
21923	return s.String()
21924}
21925
21926// Validate inspects the fields of the type to determine if they are valid.
21927func (s *CreatePatchBaselineInput) Validate() error {
21928	invalidParams := request.ErrInvalidParams{Context: "CreatePatchBaselineInput"}
21929	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
21930		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
21931	}
21932	if s.Description != nil && len(*s.Description) < 1 {
21933		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
21934	}
21935	if s.Name == nil {
21936		invalidParams.Add(request.NewErrParamRequired("Name"))
21937	}
21938	if s.Name != nil && len(*s.Name) < 3 {
21939		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
21940	}
21941	if s.ApprovalRules != nil {
21942		if err := s.ApprovalRules.Validate(); err != nil {
21943			invalidParams.AddNested("ApprovalRules", err.(request.ErrInvalidParams))
21944		}
21945	}
21946	if s.GlobalFilters != nil {
21947		if err := s.GlobalFilters.Validate(); err != nil {
21948			invalidParams.AddNested("GlobalFilters", err.(request.ErrInvalidParams))
21949		}
21950	}
21951	if s.Sources != nil {
21952		for i, v := range s.Sources {
21953			if v == nil {
21954				continue
21955			}
21956			if err := v.Validate(); err != nil {
21957				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
21958			}
21959		}
21960	}
21961	if s.Tags != nil {
21962		for i, v := range s.Tags {
21963			if v == nil {
21964				continue
21965			}
21966			if err := v.Validate(); err != nil {
21967				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
21968			}
21969		}
21970	}
21971
21972	if invalidParams.Len() > 0 {
21973		return invalidParams
21974	}
21975	return nil
21976}
21977
21978// SetApprovalRules sets the ApprovalRules field's value.
21979func (s *CreatePatchBaselineInput) SetApprovalRules(v *PatchRuleGroup) *CreatePatchBaselineInput {
21980	s.ApprovalRules = v
21981	return s
21982}
21983
21984// SetApprovedPatches sets the ApprovedPatches field's value.
21985func (s *CreatePatchBaselineInput) SetApprovedPatches(v []*string) *CreatePatchBaselineInput {
21986	s.ApprovedPatches = v
21987	return s
21988}
21989
21990// SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
21991func (s *CreatePatchBaselineInput) SetApprovedPatchesComplianceLevel(v string) *CreatePatchBaselineInput {
21992	s.ApprovedPatchesComplianceLevel = &v
21993	return s
21994}
21995
21996// SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
21997func (s *CreatePatchBaselineInput) SetApprovedPatchesEnableNonSecurity(v bool) *CreatePatchBaselineInput {
21998	s.ApprovedPatchesEnableNonSecurity = &v
21999	return s
22000}
22001
22002// SetClientToken sets the ClientToken field's value.
22003func (s *CreatePatchBaselineInput) SetClientToken(v string) *CreatePatchBaselineInput {
22004	s.ClientToken = &v
22005	return s
22006}
22007
22008// SetDescription sets the Description field's value.
22009func (s *CreatePatchBaselineInput) SetDescription(v string) *CreatePatchBaselineInput {
22010	s.Description = &v
22011	return s
22012}
22013
22014// SetGlobalFilters sets the GlobalFilters field's value.
22015func (s *CreatePatchBaselineInput) SetGlobalFilters(v *PatchFilterGroup) *CreatePatchBaselineInput {
22016	s.GlobalFilters = v
22017	return s
22018}
22019
22020// SetName sets the Name field's value.
22021func (s *CreatePatchBaselineInput) SetName(v string) *CreatePatchBaselineInput {
22022	s.Name = &v
22023	return s
22024}
22025
22026// SetOperatingSystem sets the OperatingSystem field's value.
22027func (s *CreatePatchBaselineInput) SetOperatingSystem(v string) *CreatePatchBaselineInput {
22028	s.OperatingSystem = &v
22029	return s
22030}
22031
22032// SetRejectedPatches sets the RejectedPatches field's value.
22033func (s *CreatePatchBaselineInput) SetRejectedPatches(v []*string) *CreatePatchBaselineInput {
22034	s.RejectedPatches = v
22035	return s
22036}
22037
22038// SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
22039func (s *CreatePatchBaselineInput) SetRejectedPatchesAction(v string) *CreatePatchBaselineInput {
22040	s.RejectedPatchesAction = &v
22041	return s
22042}
22043
22044// SetSources sets the Sources field's value.
22045func (s *CreatePatchBaselineInput) SetSources(v []*PatchSource) *CreatePatchBaselineInput {
22046	s.Sources = v
22047	return s
22048}
22049
22050// SetTags sets the Tags field's value.
22051func (s *CreatePatchBaselineInput) SetTags(v []*Tag) *CreatePatchBaselineInput {
22052	s.Tags = v
22053	return s
22054}
22055
22056type CreatePatchBaselineOutput struct {
22057	_ struct{} `type:"structure"`
22058
22059	// The ID of the created patch baseline.
22060	BaselineId *string `min:"20" type:"string"`
22061}
22062
22063// String returns the string representation
22064func (s CreatePatchBaselineOutput) String() string {
22065	return awsutil.Prettify(s)
22066}
22067
22068// GoString returns the string representation
22069func (s CreatePatchBaselineOutput) GoString() string {
22070	return s.String()
22071}
22072
22073// SetBaselineId sets the BaselineId field's value.
22074func (s *CreatePatchBaselineOutput) SetBaselineId(v string) *CreatePatchBaselineOutput {
22075	s.BaselineId = &v
22076	return s
22077}
22078
22079type CreateResourceDataSyncInput struct {
22080	_ struct{} `type:"structure"`
22081
22082	// Amazon S3 configuration details for the sync. This parameter is required
22083	// if the SyncType value is SyncToDestination.
22084	S3Destination *ResourceDataSyncS3Destination `type:"structure"`
22085
22086	// A name for the configuration.
22087	//
22088	// SyncName is a required field
22089	SyncName *string `min:"1" type:"string" required:"true"`
22090
22091	// Specify information about the data sources to synchronize. This parameter
22092	// is required if the SyncType value is SyncFromSource.
22093	SyncSource *ResourceDataSyncSource `type:"structure"`
22094
22095	// Specify SyncToDestination to create a resource data sync that synchronizes
22096	// data to an S3 bucket for Inventory. If you specify SyncToDestination, you
22097	// must provide a value for S3Destination. Specify SyncFromSource to synchronize
22098	// data from a single account and multiple Regions, or multiple Amazon Web Services
22099	// accounts and Amazon Web Services Regions, as listed in Organizations for
22100	// Explorer. If you specify SyncFromSource, you must provide a value for SyncSource.
22101	// The default value is SyncToDestination.
22102	SyncType *string `min:"1" type:"string"`
22103}
22104
22105// String returns the string representation
22106func (s CreateResourceDataSyncInput) String() string {
22107	return awsutil.Prettify(s)
22108}
22109
22110// GoString returns the string representation
22111func (s CreateResourceDataSyncInput) GoString() string {
22112	return s.String()
22113}
22114
22115// Validate inspects the fields of the type to determine if they are valid.
22116func (s *CreateResourceDataSyncInput) Validate() error {
22117	invalidParams := request.ErrInvalidParams{Context: "CreateResourceDataSyncInput"}
22118	if s.SyncName == nil {
22119		invalidParams.Add(request.NewErrParamRequired("SyncName"))
22120	}
22121	if s.SyncName != nil && len(*s.SyncName) < 1 {
22122		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
22123	}
22124	if s.SyncType != nil && len(*s.SyncType) < 1 {
22125		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
22126	}
22127	if s.S3Destination != nil {
22128		if err := s.S3Destination.Validate(); err != nil {
22129			invalidParams.AddNested("S3Destination", err.(request.ErrInvalidParams))
22130		}
22131	}
22132	if s.SyncSource != nil {
22133		if err := s.SyncSource.Validate(); err != nil {
22134			invalidParams.AddNested("SyncSource", err.(request.ErrInvalidParams))
22135		}
22136	}
22137
22138	if invalidParams.Len() > 0 {
22139		return invalidParams
22140	}
22141	return nil
22142}
22143
22144// SetS3Destination sets the S3Destination field's value.
22145func (s *CreateResourceDataSyncInput) SetS3Destination(v *ResourceDataSyncS3Destination) *CreateResourceDataSyncInput {
22146	s.S3Destination = v
22147	return s
22148}
22149
22150// SetSyncName sets the SyncName field's value.
22151func (s *CreateResourceDataSyncInput) SetSyncName(v string) *CreateResourceDataSyncInput {
22152	s.SyncName = &v
22153	return s
22154}
22155
22156// SetSyncSource sets the SyncSource field's value.
22157func (s *CreateResourceDataSyncInput) SetSyncSource(v *ResourceDataSyncSource) *CreateResourceDataSyncInput {
22158	s.SyncSource = v
22159	return s
22160}
22161
22162// SetSyncType sets the SyncType field's value.
22163func (s *CreateResourceDataSyncInput) SetSyncType(v string) *CreateResourceDataSyncInput {
22164	s.SyncType = &v
22165	return s
22166}
22167
22168type CreateResourceDataSyncOutput struct {
22169	_ struct{} `type:"structure"`
22170}
22171
22172// String returns the string representation
22173func (s CreateResourceDataSyncOutput) String() string {
22174	return awsutil.Prettify(s)
22175}
22176
22177// GoString returns the string representation
22178func (s CreateResourceDataSyncOutput) GoString() string {
22179	return s.String()
22180}
22181
22182// You have exceeded the limit for custom schemas. Delete one or more custom
22183// schemas and try again.
22184type CustomSchemaCountLimitExceededException struct {
22185	_            struct{}                  `type:"structure"`
22186	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
22187
22188	Message_ *string `locationName:"Message" type:"string"`
22189}
22190
22191// String returns the string representation
22192func (s CustomSchemaCountLimitExceededException) String() string {
22193	return awsutil.Prettify(s)
22194}
22195
22196// GoString returns the string representation
22197func (s CustomSchemaCountLimitExceededException) GoString() string {
22198	return s.String()
22199}
22200
22201func newErrorCustomSchemaCountLimitExceededException(v protocol.ResponseMetadata) error {
22202	return &CustomSchemaCountLimitExceededException{
22203		RespMetadata: v,
22204	}
22205}
22206
22207// Code returns the exception type name.
22208func (s *CustomSchemaCountLimitExceededException) Code() string {
22209	return "CustomSchemaCountLimitExceededException"
22210}
22211
22212// Message returns the exception's message.
22213func (s *CustomSchemaCountLimitExceededException) Message() string {
22214	if s.Message_ != nil {
22215		return *s.Message_
22216	}
22217	return ""
22218}
22219
22220// OrigErr always returns nil, satisfies awserr.Error interface.
22221func (s *CustomSchemaCountLimitExceededException) OrigErr() error {
22222	return nil
22223}
22224
22225func (s *CustomSchemaCountLimitExceededException) Error() string {
22226	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
22227}
22228
22229// Status code returns the HTTP status code for the request's response error.
22230func (s *CustomSchemaCountLimitExceededException) StatusCode() int {
22231	return s.RespMetadata.StatusCode
22232}
22233
22234// RequestID returns the service's response RequestID for request.
22235func (s *CustomSchemaCountLimitExceededException) RequestID() string {
22236	return s.RespMetadata.RequestID
22237}
22238
22239type DeleteActivationInput struct {
22240	_ struct{} `type:"structure"`
22241
22242	// The ID of the activation that you want to delete.
22243	//
22244	// ActivationId is a required field
22245	ActivationId *string `type:"string" required:"true"`
22246}
22247
22248// String returns the string representation
22249func (s DeleteActivationInput) String() string {
22250	return awsutil.Prettify(s)
22251}
22252
22253// GoString returns the string representation
22254func (s DeleteActivationInput) GoString() string {
22255	return s.String()
22256}
22257
22258// Validate inspects the fields of the type to determine if they are valid.
22259func (s *DeleteActivationInput) Validate() error {
22260	invalidParams := request.ErrInvalidParams{Context: "DeleteActivationInput"}
22261	if s.ActivationId == nil {
22262		invalidParams.Add(request.NewErrParamRequired("ActivationId"))
22263	}
22264
22265	if invalidParams.Len() > 0 {
22266		return invalidParams
22267	}
22268	return nil
22269}
22270
22271// SetActivationId sets the ActivationId field's value.
22272func (s *DeleteActivationInput) SetActivationId(v string) *DeleteActivationInput {
22273	s.ActivationId = &v
22274	return s
22275}
22276
22277type DeleteActivationOutput struct {
22278	_ struct{} `type:"structure"`
22279}
22280
22281// String returns the string representation
22282func (s DeleteActivationOutput) String() string {
22283	return awsutil.Prettify(s)
22284}
22285
22286// GoString returns the string representation
22287func (s DeleteActivationOutput) GoString() string {
22288	return s.String()
22289}
22290
22291type DeleteAssociationInput struct {
22292	_ struct{} `type:"structure"`
22293
22294	// The association ID that you want to delete.
22295	AssociationId *string `type:"string"`
22296
22297	// The instance ID.
22298	//
22299	// InstanceId has been deprecated. To specify an instance ID for an association,
22300	// use the Targets parameter. Requests that include the parameter InstanceID
22301	// with Systems Manager documents (SSM documents) that use schema version 2.0
22302	// or later will fail. In addition, if you use the parameter InstanceId, you
22303	// can't use the parameters AssociationName, DocumentVersion, MaxErrors, MaxConcurrency,
22304	// OutputLocation, or ScheduleExpression. To use these parameters, you must
22305	// use the Targets parameter.
22306	InstanceId *string `type:"string"`
22307
22308	// The name of the SSM document.
22309	Name *string `type:"string"`
22310}
22311
22312// String returns the string representation
22313func (s DeleteAssociationInput) String() string {
22314	return awsutil.Prettify(s)
22315}
22316
22317// GoString returns the string representation
22318func (s DeleteAssociationInput) GoString() string {
22319	return s.String()
22320}
22321
22322// SetAssociationId sets the AssociationId field's value.
22323func (s *DeleteAssociationInput) SetAssociationId(v string) *DeleteAssociationInput {
22324	s.AssociationId = &v
22325	return s
22326}
22327
22328// SetInstanceId sets the InstanceId field's value.
22329func (s *DeleteAssociationInput) SetInstanceId(v string) *DeleteAssociationInput {
22330	s.InstanceId = &v
22331	return s
22332}
22333
22334// SetName sets the Name field's value.
22335func (s *DeleteAssociationInput) SetName(v string) *DeleteAssociationInput {
22336	s.Name = &v
22337	return s
22338}
22339
22340type DeleteAssociationOutput struct {
22341	_ struct{} `type:"structure"`
22342}
22343
22344// String returns the string representation
22345func (s DeleteAssociationOutput) String() string {
22346	return awsutil.Prettify(s)
22347}
22348
22349// GoString returns the string representation
22350func (s DeleteAssociationOutput) GoString() string {
22351	return s.String()
22352}
22353
22354type DeleteDocumentInput struct {
22355	_ struct{} `type:"structure"`
22356
22357	// The version of the document that you want to delete. If not provided, all
22358	// versions of the document are deleted.
22359	DocumentVersion *string `type:"string"`
22360
22361	// Some SSM document types require that you specify a Force flag before you
22362	// can delete the document. For example, you must specify a Force flag to delete
22363	// a document of type ApplicationConfigurationSchema. You can restrict access
22364	// to the Force flag in an Identity and Access Management (IAM) policy.
22365	Force *bool `type:"boolean"`
22366
22367	// The name of the document.
22368	//
22369	// Name is a required field
22370	Name *string `type:"string" required:"true"`
22371
22372	// The version name of the document that you want to delete. If not provided,
22373	// all versions of the document are deleted.
22374	VersionName *string `type:"string"`
22375}
22376
22377// String returns the string representation
22378func (s DeleteDocumentInput) String() string {
22379	return awsutil.Prettify(s)
22380}
22381
22382// GoString returns the string representation
22383func (s DeleteDocumentInput) GoString() string {
22384	return s.String()
22385}
22386
22387// Validate inspects the fields of the type to determine if they are valid.
22388func (s *DeleteDocumentInput) Validate() error {
22389	invalidParams := request.ErrInvalidParams{Context: "DeleteDocumentInput"}
22390	if s.Name == nil {
22391		invalidParams.Add(request.NewErrParamRequired("Name"))
22392	}
22393
22394	if invalidParams.Len() > 0 {
22395		return invalidParams
22396	}
22397	return nil
22398}
22399
22400// SetDocumentVersion sets the DocumentVersion field's value.
22401func (s *DeleteDocumentInput) SetDocumentVersion(v string) *DeleteDocumentInput {
22402	s.DocumentVersion = &v
22403	return s
22404}
22405
22406// SetForce sets the Force field's value.
22407func (s *DeleteDocumentInput) SetForce(v bool) *DeleteDocumentInput {
22408	s.Force = &v
22409	return s
22410}
22411
22412// SetName sets the Name field's value.
22413func (s *DeleteDocumentInput) SetName(v string) *DeleteDocumentInput {
22414	s.Name = &v
22415	return s
22416}
22417
22418// SetVersionName sets the VersionName field's value.
22419func (s *DeleteDocumentInput) SetVersionName(v string) *DeleteDocumentInput {
22420	s.VersionName = &v
22421	return s
22422}
22423
22424type DeleteDocumentOutput struct {
22425	_ struct{} `type:"structure"`
22426}
22427
22428// String returns the string representation
22429func (s DeleteDocumentOutput) String() string {
22430	return awsutil.Prettify(s)
22431}
22432
22433// GoString returns the string representation
22434func (s DeleteDocumentOutput) GoString() string {
22435	return s.String()
22436}
22437
22438type DeleteInventoryInput struct {
22439	_ struct{} `type:"structure"`
22440
22441	// User-provided idempotency token.
22442	ClientToken *string `type:"string" idempotencyToken:"true"`
22443
22444	// Use this option to view a summary of the deletion request without deleting
22445	// any data or the data type. This option is useful when you only want to understand
22446	// what will be deleted. Once you validate that the data to be deleted is what
22447	// you intend to delete, you can run the same command without specifying the
22448	// DryRun option.
22449	DryRun *bool `type:"boolean"`
22450
22451	// Use the SchemaDeleteOption to delete a custom inventory type (schema). If
22452	// you don't choose this option, the system only deletes existing inventory
22453	// data associated with the custom inventory type. Choose one of the following
22454	// options:
22455	//
22456	// DisableSchema: If you choose this option, the system ignores all inventory
22457	// data for the specified version, and any earlier versions. To enable this
22458	// schema again, you must call the PutInventory operation for a version greater
22459	// than the disabled version.
22460	//
22461	// DeleteSchema: This option deletes the specified custom type from the Inventory
22462	// service. You can recreate the schema later, if you want.
22463	SchemaDeleteOption *string `type:"string" enum:"InventorySchemaDeleteOption"`
22464
22465	// The name of the custom inventory type for which you want to delete either
22466	// all previously collected data or the inventory type itself.
22467	//
22468	// TypeName is a required field
22469	TypeName *string `min:"1" type:"string" required:"true"`
22470}
22471
22472// String returns the string representation
22473func (s DeleteInventoryInput) String() string {
22474	return awsutil.Prettify(s)
22475}
22476
22477// GoString returns the string representation
22478func (s DeleteInventoryInput) GoString() string {
22479	return s.String()
22480}
22481
22482// Validate inspects the fields of the type to determine if they are valid.
22483func (s *DeleteInventoryInput) Validate() error {
22484	invalidParams := request.ErrInvalidParams{Context: "DeleteInventoryInput"}
22485	if s.TypeName == nil {
22486		invalidParams.Add(request.NewErrParamRequired("TypeName"))
22487	}
22488	if s.TypeName != nil && len(*s.TypeName) < 1 {
22489		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
22490	}
22491
22492	if invalidParams.Len() > 0 {
22493		return invalidParams
22494	}
22495	return nil
22496}
22497
22498// SetClientToken sets the ClientToken field's value.
22499func (s *DeleteInventoryInput) SetClientToken(v string) *DeleteInventoryInput {
22500	s.ClientToken = &v
22501	return s
22502}
22503
22504// SetDryRun sets the DryRun field's value.
22505func (s *DeleteInventoryInput) SetDryRun(v bool) *DeleteInventoryInput {
22506	s.DryRun = &v
22507	return s
22508}
22509
22510// SetSchemaDeleteOption sets the SchemaDeleteOption field's value.
22511func (s *DeleteInventoryInput) SetSchemaDeleteOption(v string) *DeleteInventoryInput {
22512	s.SchemaDeleteOption = &v
22513	return s
22514}
22515
22516// SetTypeName sets the TypeName field's value.
22517func (s *DeleteInventoryInput) SetTypeName(v string) *DeleteInventoryInput {
22518	s.TypeName = &v
22519	return s
22520}
22521
22522type DeleteInventoryOutput struct {
22523	_ struct{} `type:"structure"`
22524
22525	// Every DeleteInventory operation is assigned a unique ID. This option returns
22526	// a unique ID. You can use this ID to query the status of a delete operation.
22527	// This option is useful for ensuring that a delete operation has completed
22528	// before you begin other operations.
22529	DeletionId *string `type:"string"`
22530
22531	// A summary of the delete operation. For more information about this summary,
22532	// see Deleting custom inventory (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-custom.html#sysman-inventory-delete-summary)
22533	// in the Amazon Web Services Systems Manager User Guide.
22534	DeletionSummary *InventoryDeletionSummary `type:"structure"`
22535
22536	// The name of the inventory data type specified in the request.
22537	TypeName *string `min:"1" type:"string"`
22538}
22539
22540// String returns the string representation
22541func (s DeleteInventoryOutput) String() string {
22542	return awsutil.Prettify(s)
22543}
22544
22545// GoString returns the string representation
22546func (s DeleteInventoryOutput) GoString() string {
22547	return s.String()
22548}
22549
22550// SetDeletionId sets the DeletionId field's value.
22551func (s *DeleteInventoryOutput) SetDeletionId(v string) *DeleteInventoryOutput {
22552	s.DeletionId = &v
22553	return s
22554}
22555
22556// SetDeletionSummary sets the DeletionSummary field's value.
22557func (s *DeleteInventoryOutput) SetDeletionSummary(v *InventoryDeletionSummary) *DeleteInventoryOutput {
22558	s.DeletionSummary = v
22559	return s
22560}
22561
22562// SetTypeName sets the TypeName field's value.
22563func (s *DeleteInventoryOutput) SetTypeName(v string) *DeleteInventoryOutput {
22564	s.TypeName = &v
22565	return s
22566}
22567
22568type DeleteMaintenanceWindowInput struct {
22569	_ struct{} `type:"structure"`
22570
22571	// The ID of the maintenance window to delete.
22572	//
22573	// WindowId is a required field
22574	WindowId *string `min:"20" type:"string" required:"true"`
22575}
22576
22577// String returns the string representation
22578func (s DeleteMaintenanceWindowInput) String() string {
22579	return awsutil.Prettify(s)
22580}
22581
22582// GoString returns the string representation
22583func (s DeleteMaintenanceWindowInput) GoString() string {
22584	return s.String()
22585}
22586
22587// Validate inspects the fields of the type to determine if they are valid.
22588func (s *DeleteMaintenanceWindowInput) Validate() error {
22589	invalidParams := request.ErrInvalidParams{Context: "DeleteMaintenanceWindowInput"}
22590	if s.WindowId == nil {
22591		invalidParams.Add(request.NewErrParamRequired("WindowId"))
22592	}
22593	if s.WindowId != nil && len(*s.WindowId) < 20 {
22594		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
22595	}
22596
22597	if invalidParams.Len() > 0 {
22598		return invalidParams
22599	}
22600	return nil
22601}
22602
22603// SetWindowId sets the WindowId field's value.
22604func (s *DeleteMaintenanceWindowInput) SetWindowId(v string) *DeleteMaintenanceWindowInput {
22605	s.WindowId = &v
22606	return s
22607}
22608
22609type DeleteMaintenanceWindowOutput struct {
22610	_ struct{} `type:"structure"`
22611
22612	// The ID of the deleted maintenance window.
22613	WindowId *string `min:"20" type:"string"`
22614}
22615
22616// String returns the string representation
22617func (s DeleteMaintenanceWindowOutput) String() string {
22618	return awsutil.Prettify(s)
22619}
22620
22621// GoString returns the string representation
22622func (s DeleteMaintenanceWindowOutput) GoString() string {
22623	return s.String()
22624}
22625
22626// SetWindowId sets the WindowId field's value.
22627func (s *DeleteMaintenanceWindowOutput) SetWindowId(v string) *DeleteMaintenanceWindowOutput {
22628	s.WindowId = &v
22629	return s
22630}
22631
22632type DeleteOpsMetadataInput struct {
22633	_ struct{} `type:"structure"`
22634
22635	// The Amazon Resource Name (ARN) of an OpsMetadata Object to delete.
22636	//
22637	// OpsMetadataArn is a required field
22638	OpsMetadataArn *string `min:"1" type:"string" required:"true"`
22639}
22640
22641// String returns the string representation
22642func (s DeleteOpsMetadataInput) String() string {
22643	return awsutil.Prettify(s)
22644}
22645
22646// GoString returns the string representation
22647func (s DeleteOpsMetadataInput) GoString() string {
22648	return s.String()
22649}
22650
22651// Validate inspects the fields of the type to determine if they are valid.
22652func (s *DeleteOpsMetadataInput) Validate() error {
22653	invalidParams := request.ErrInvalidParams{Context: "DeleteOpsMetadataInput"}
22654	if s.OpsMetadataArn == nil {
22655		invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn"))
22656	}
22657	if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 {
22658		invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1))
22659	}
22660
22661	if invalidParams.Len() > 0 {
22662		return invalidParams
22663	}
22664	return nil
22665}
22666
22667// SetOpsMetadataArn sets the OpsMetadataArn field's value.
22668func (s *DeleteOpsMetadataInput) SetOpsMetadataArn(v string) *DeleteOpsMetadataInput {
22669	s.OpsMetadataArn = &v
22670	return s
22671}
22672
22673type DeleteOpsMetadataOutput struct {
22674	_ struct{} `type:"structure"`
22675}
22676
22677// String returns the string representation
22678func (s DeleteOpsMetadataOutput) String() string {
22679	return awsutil.Prettify(s)
22680}
22681
22682// GoString returns the string representation
22683func (s DeleteOpsMetadataOutput) GoString() string {
22684	return s.String()
22685}
22686
22687type DeleteParameterInput struct {
22688	_ struct{} `type:"structure"`
22689
22690	// The name of the parameter to delete.
22691	//
22692	// Name is a required field
22693	Name *string `min:"1" type:"string" required:"true"`
22694}
22695
22696// String returns the string representation
22697func (s DeleteParameterInput) String() string {
22698	return awsutil.Prettify(s)
22699}
22700
22701// GoString returns the string representation
22702func (s DeleteParameterInput) GoString() string {
22703	return s.String()
22704}
22705
22706// Validate inspects the fields of the type to determine if they are valid.
22707func (s *DeleteParameterInput) Validate() error {
22708	invalidParams := request.ErrInvalidParams{Context: "DeleteParameterInput"}
22709	if s.Name == nil {
22710		invalidParams.Add(request.NewErrParamRequired("Name"))
22711	}
22712	if s.Name != nil && len(*s.Name) < 1 {
22713		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
22714	}
22715
22716	if invalidParams.Len() > 0 {
22717		return invalidParams
22718	}
22719	return nil
22720}
22721
22722// SetName sets the Name field's value.
22723func (s *DeleteParameterInput) SetName(v string) *DeleteParameterInput {
22724	s.Name = &v
22725	return s
22726}
22727
22728type DeleteParameterOutput struct {
22729	_ struct{} `type:"structure"`
22730}
22731
22732// String returns the string representation
22733func (s DeleteParameterOutput) String() string {
22734	return awsutil.Prettify(s)
22735}
22736
22737// GoString returns the string representation
22738func (s DeleteParameterOutput) GoString() string {
22739	return s.String()
22740}
22741
22742type DeleteParametersInput struct {
22743	_ struct{} `type:"structure"`
22744
22745	// The names of the parameters to delete. After deleting a parameter, wait for
22746	// at least 30 seconds to create a parameter with the same name.
22747	//
22748	// Names is a required field
22749	Names []*string `min:"1" type:"list" required:"true"`
22750}
22751
22752// String returns the string representation
22753func (s DeleteParametersInput) String() string {
22754	return awsutil.Prettify(s)
22755}
22756
22757// GoString returns the string representation
22758func (s DeleteParametersInput) GoString() string {
22759	return s.String()
22760}
22761
22762// Validate inspects the fields of the type to determine if they are valid.
22763func (s *DeleteParametersInput) Validate() error {
22764	invalidParams := request.ErrInvalidParams{Context: "DeleteParametersInput"}
22765	if s.Names == nil {
22766		invalidParams.Add(request.NewErrParamRequired("Names"))
22767	}
22768	if s.Names != nil && len(s.Names) < 1 {
22769		invalidParams.Add(request.NewErrParamMinLen("Names", 1))
22770	}
22771
22772	if invalidParams.Len() > 0 {
22773		return invalidParams
22774	}
22775	return nil
22776}
22777
22778// SetNames sets the Names field's value.
22779func (s *DeleteParametersInput) SetNames(v []*string) *DeleteParametersInput {
22780	s.Names = v
22781	return s
22782}
22783
22784type DeleteParametersOutput struct {
22785	_ struct{} `type:"structure"`
22786
22787	// The names of the deleted parameters.
22788	DeletedParameters []*string `min:"1" type:"list"`
22789
22790	// The names of parameters that weren't deleted because the parameters aren't
22791	// valid.
22792	InvalidParameters []*string `min:"1" type:"list"`
22793}
22794
22795// String returns the string representation
22796func (s DeleteParametersOutput) String() string {
22797	return awsutil.Prettify(s)
22798}
22799
22800// GoString returns the string representation
22801func (s DeleteParametersOutput) GoString() string {
22802	return s.String()
22803}
22804
22805// SetDeletedParameters sets the DeletedParameters field's value.
22806func (s *DeleteParametersOutput) SetDeletedParameters(v []*string) *DeleteParametersOutput {
22807	s.DeletedParameters = v
22808	return s
22809}
22810
22811// SetInvalidParameters sets the InvalidParameters field's value.
22812func (s *DeleteParametersOutput) SetInvalidParameters(v []*string) *DeleteParametersOutput {
22813	s.InvalidParameters = v
22814	return s
22815}
22816
22817type DeletePatchBaselineInput struct {
22818	_ struct{} `type:"structure"`
22819
22820	// The ID of the patch baseline to delete.
22821	//
22822	// BaselineId is a required field
22823	BaselineId *string `min:"20" type:"string" required:"true"`
22824}
22825
22826// String returns the string representation
22827func (s DeletePatchBaselineInput) String() string {
22828	return awsutil.Prettify(s)
22829}
22830
22831// GoString returns the string representation
22832func (s DeletePatchBaselineInput) GoString() string {
22833	return s.String()
22834}
22835
22836// Validate inspects the fields of the type to determine if they are valid.
22837func (s *DeletePatchBaselineInput) Validate() error {
22838	invalidParams := request.ErrInvalidParams{Context: "DeletePatchBaselineInput"}
22839	if s.BaselineId == nil {
22840		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
22841	}
22842	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
22843		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
22844	}
22845
22846	if invalidParams.Len() > 0 {
22847		return invalidParams
22848	}
22849	return nil
22850}
22851
22852// SetBaselineId sets the BaselineId field's value.
22853func (s *DeletePatchBaselineInput) SetBaselineId(v string) *DeletePatchBaselineInput {
22854	s.BaselineId = &v
22855	return s
22856}
22857
22858type DeletePatchBaselineOutput struct {
22859	_ struct{} `type:"structure"`
22860
22861	// The ID of the deleted patch baseline.
22862	BaselineId *string `min:"20" type:"string"`
22863}
22864
22865// String returns the string representation
22866func (s DeletePatchBaselineOutput) String() string {
22867	return awsutil.Prettify(s)
22868}
22869
22870// GoString returns the string representation
22871func (s DeletePatchBaselineOutput) GoString() string {
22872	return s.String()
22873}
22874
22875// SetBaselineId sets the BaselineId field's value.
22876func (s *DeletePatchBaselineOutput) SetBaselineId(v string) *DeletePatchBaselineOutput {
22877	s.BaselineId = &v
22878	return s
22879}
22880
22881type DeleteResourceDataSyncInput struct {
22882	_ struct{} `type:"structure"`
22883
22884	// The name of the configuration to delete.
22885	//
22886	// SyncName is a required field
22887	SyncName *string `min:"1" type:"string" required:"true"`
22888
22889	// Specify the type of resource data sync to delete.
22890	SyncType *string `min:"1" type:"string"`
22891}
22892
22893// String returns the string representation
22894func (s DeleteResourceDataSyncInput) String() string {
22895	return awsutil.Prettify(s)
22896}
22897
22898// GoString returns the string representation
22899func (s DeleteResourceDataSyncInput) GoString() string {
22900	return s.String()
22901}
22902
22903// Validate inspects the fields of the type to determine if they are valid.
22904func (s *DeleteResourceDataSyncInput) Validate() error {
22905	invalidParams := request.ErrInvalidParams{Context: "DeleteResourceDataSyncInput"}
22906	if s.SyncName == nil {
22907		invalidParams.Add(request.NewErrParamRequired("SyncName"))
22908	}
22909	if s.SyncName != nil && len(*s.SyncName) < 1 {
22910		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
22911	}
22912	if s.SyncType != nil && len(*s.SyncType) < 1 {
22913		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
22914	}
22915
22916	if invalidParams.Len() > 0 {
22917		return invalidParams
22918	}
22919	return nil
22920}
22921
22922// SetSyncName sets the SyncName field's value.
22923func (s *DeleteResourceDataSyncInput) SetSyncName(v string) *DeleteResourceDataSyncInput {
22924	s.SyncName = &v
22925	return s
22926}
22927
22928// SetSyncType sets the SyncType field's value.
22929func (s *DeleteResourceDataSyncInput) SetSyncType(v string) *DeleteResourceDataSyncInput {
22930	s.SyncType = &v
22931	return s
22932}
22933
22934type DeleteResourceDataSyncOutput struct {
22935	_ struct{} `type:"structure"`
22936}
22937
22938// String returns the string representation
22939func (s DeleteResourceDataSyncOutput) String() string {
22940	return awsutil.Prettify(s)
22941}
22942
22943// GoString returns the string representation
22944func (s DeleteResourceDataSyncOutput) GoString() string {
22945	return s.String()
22946}
22947
22948type DeregisterManagedInstanceInput struct {
22949	_ struct{} `type:"structure"`
22950
22951	// The ID assigned to the managed instance when you registered it using the
22952	// activation process.
22953	//
22954	// InstanceId is a required field
22955	InstanceId *string `type:"string" required:"true"`
22956}
22957
22958// String returns the string representation
22959func (s DeregisterManagedInstanceInput) String() string {
22960	return awsutil.Prettify(s)
22961}
22962
22963// GoString returns the string representation
22964func (s DeregisterManagedInstanceInput) GoString() string {
22965	return s.String()
22966}
22967
22968// Validate inspects the fields of the type to determine if they are valid.
22969func (s *DeregisterManagedInstanceInput) Validate() error {
22970	invalidParams := request.ErrInvalidParams{Context: "DeregisterManagedInstanceInput"}
22971	if s.InstanceId == nil {
22972		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
22973	}
22974
22975	if invalidParams.Len() > 0 {
22976		return invalidParams
22977	}
22978	return nil
22979}
22980
22981// SetInstanceId sets the InstanceId field's value.
22982func (s *DeregisterManagedInstanceInput) SetInstanceId(v string) *DeregisterManagedInstanceInput {
22983	s.InstanceId = &v
22984	return s
22985}
22986
22987type DeregisterManagedInstanceOutput struct {
22988	_ struct{} `type:"structure"`
22989}
22990
22991// String returns the string representation
22992func (s DeregisterManagedInstanceOutput) String() string {
22993	return awsutil.Prettify(s)
22994}
22995
22996// GoString returns the string representation
22997func (s DeregisterManagedInstanceOutput) GoString() string {
22998	return s.String()
22999}
23000
23001type DeregisterPatchBaselineForPatchGroupInput struct {
23002	_ struct{} `type:"structure"`
23003
23004	// The ID of the patch baseline to deregister the patch group from.
23005	//
23006	// BaselineId is a required field
23007	BaselineId *string `min:"20" type:"string" required:"true"`
23008
23009	// The name of the patch group that should be deregistered from the patch baseline.
23010	//
23011	// PatchGroup is a required field
23012	PatchGroup *string `min:"1" type:"string" required:"true"`
23013}
23014
23015// String returns the string representation
23016func (s DeregisterPatchBaselineForPatchGroupInput) String() string {
23017	return awsutil.Prettify(s)
23018}
23019
23020// GoString returns the string representation
23021func (s DeregisterPatchBaselineForPatchGroupInput) GoString() string {
23022	return s.String()
23023}
23024
23025// Validate inspects the fields of the type to determine if they are valid.
23026func (s *DeregisterPatchBaselineForPatchGroupInput) Validate() error {
23027	invalidParams := request.ErrInvalidParams{Context: "DeregisterPatchBaselineForPatchGroupInput"}
23028	if s.BaselineId == nil {
23029		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
23030	}
23031	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
23032		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
23033	}
23034	if s.PatchGroup == nil {
23035		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
23036	}
23037	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
23038		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
23039	}
23040
23041	if invalidParams.Len() > 0 {
23042		return invalidParams
23043	}
23044	return nil
23045}
23046
23047// SetBaselineId sets the BaselineId field's value.
23048func (s *DeregisterPatchBaselineForPatchGroupInput) SetBaselineId(v string) *DeregisterPatchBaselineForPatchGroupInput {
23049	s.BaselineId = &v
23050	return s
23051}
23052
23053// SetPatchGroup sets the PatchGroup field's value.
23054func (s *DeregisterPatchBaselineForPatchGroupInput) SetPatchGroup(v string) *DeregisterPatchBaselineForPatchGroupInput {
23055	s.PatchGroup = &v
23056	return s
23057}
23058
23059type DeregisterPatchBaselineForPatchGroupOutput struct {
23060	_ struct{} `type:"structure"`
23061
23062	// The ID of the patch baseline the patch group was deregistered from.
23063	BaselineId *string `min:"20" type:"string"`
23064
23065	// The name of the patch group deregistered from the patch baseline.
23066	PatchGroup *string `min:"1" type:"string"`
23067}
23068
23069// String returns the string representation
23070func (s DeregisterPatchBaselineForPatchGroupOutput) String() string {
23071	return awsutil.Prettify(s)
23072}
23073
23074// GoString returns the string representation
23075func (s DeregisterPatchBaselineForPatchGroupOutput) GoString() string {
23076	return s.String()
23077}
23078
23079// SetBaselineId sets the BaselineId field's value.
23080func (s *DeregisterPatchBaselineForPatchGroupOutput) SetBaselineId(v string) *DeregisterPatchBaselineForPatchGroupOutput {
23081	s.BaselineId = &v
23082	return s
23083}
23084
23085// SetPatchGroup sets the PatchGroup field's value.
23086func (s *DeregisterPatchBaselineForPatchGroupOutput) SetPatchGroup(v string) *DeregisterPatchBaselineForPatchGroupOutput {
23087	s.PatchGroup = &v
23088	return s
23089}
23090
23091type DeregisterTargetFromMaintenanceWindowInput struct {
23092	_ struct{} `type:"structure"`
23093
23094	// The system checks if the target is being referenced by a task. If the target
23095	// is being referenced, the system returns an error and doesn't deregister the
23096	// target from the maintenance window.
23097	Safe *bool `type:"boolean"`
23098
23099	// The ID of the maintenance window the target should be removed from.
23100	//
23101	// WindowId is a required field
23102	WindowId *string `min:"20" type:"string" required:"true"`
23103
23104	// The ID of the target definition to remove.
23105	//
23106	// WindowTargetId is a required field
23107	WindowTargetId *string `min:"36" type:"string" required:"true"`
23108}
23109
23110// String returns the string representation
23111func (s DeregisterTargetFromMaintenanceWindowInput) String() string {
23112	return awsutil.Prettify(s)
23113}
23114
23115// GoString returns the string representation
23116func (s DeregisterTargetFromMaintenanceWindowInput) GoString() string {
23117	return s.String()
23118}
23119
23120// Validate inspects the fields of the type to determine if they are valid.
23121func (s *DeregisterTargetFromMaintenanceWindowInput) Validate() error {
23122	invalidParams := request.ErrInvalidParams{Context: "DeregisterTargetFromMaintenanceWindowInput"}
23123	if s.WindowId == nil {
23124		invalidParams.Add(request.NewErrParamRequired("WindowId"))
23125	}
23126	if s.WindowId != nil && len(*s.WindowId) < 20 {
23127		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
23128	}
23129	if s.WindowTargetId == nil {
23130		invalidParams.Add(request.NewErrParamRequired("WindowTargetId"))
23131	}
23132	if s.WindowTargetId != nil && len(*s.WindowTargetId) < 36 {
23133		invalidParams.Add(request.NewErrParamMinLen("WindowTargetId", 36))
23134	}
23135
23136	if invalidParams.Len() > 0 {
23137		return invalidParams
23138	}
23139	return nil
23140}
23141
23142// SetSafe sets the Safe field's value.
23143func (s *DeregisterTargetFromMaintenanceWindowInput) SetSafe(v bool) *DeregisterTargetFromMaintenanceWindowInput {
23144	s.Safe = &v
23145	return s
23146}
23147
23148// SetWindowId sets the WindowId field's value.
23149func (s *DeregisterTargetFromMaintenanceWindowInput) SetWindowId(v string) *DeregisterTargetFromMaintenanceWindowInput {
23150	s.WindowId = &v
23151	return s
23152}
23153
23154// SetWindowTargetId sets the WindowTargetId field's value.
23155func (s *DeregisterTargetFromMaintenanceWindowInput) SetWindowTargetId(v string) *DeregisterTargetFromMaintenanceWindowInput {
23156	s.WindowTargetId = &v
23157	return s
23158}
23159
23160type DeregisterTargetFromMaintenanceWindowOutput struct {
23161	_ struct{} `type:"structure"`
23162
23163	// The ID of the maintenance window the target was removed from.
23164	WindowId *string `min:"20" type:"string"`
23165
23166	// The ID of the removed target definition.
23167	WindowTargetId *string `min:"36" type:"string"`
23168}
23169
23170// String returns the string representation
23171func (s DeregisterTargetFromMaintenanceWindowOutput) String() string {
23172	return awsutil.Prettify(s)
23173}
23174
23175// GoString returns the string representation
23176func (s DeregisterTargetFromMaintenanceWindowOutput) GoString() string {
23177	return s.String()
23178}
23179
23180// SetWindowId sets the WindowId field's value.
23181func (s *DeregisterTargetFromMaintenanceWindowOutput) SetWindowId(v string) *DeregisterTargetFromMaintenanceWindowOutput {
23182	s.WindowId = &v
23183	return s
23184}
23185
23186// SetWindowTargetId sets the WindowTargetId field's value.
23187func (s *DeregisterTargetFromMaintenanceWindowOutput) SetWindowTargetId(v string) *DeregisterTargetFromMaintenanceWindowOutput {
23188	s.WindowTargetId = &v
23189	return s
23190}
23191
23192type DeregisterTaskFromMaintenanceWindowInput struct {
23193	_ struct{} `type:"structure"`
23194
23195	// The ID of the maintenance window the task should be removed from.
23196	//
23197	// WindowId is a required field
23198	WindowId *string `min:"20" type:"string" required:"true"`
23199
23200	// The ID of the task to remove from the maintenance window.
23201	//
23202	// WindowTaskId is a required field
23203	WindowTaskId *string `min:"36" type:"string" required:"true"`
23204}
23205
23206// String returns the string representation
23207func (s DeregisterTaskFromMaintenanceWindowInput) String() string {
23208	return awsutil.Prettify(s)
23209}
23210
23211// GoString returns the string representation
23212func (s DeregisterTaskFromMaintenanceWindowInput) GoString() string {
23213	return s.String()
23214}
23215
23216// Validate inspects the fields of the type to determine if they are valid.
23217func (s *DeregisterTaskFromMaintenanceWindowInput) Validate() error {
23218	invalidParams := request.ErrInvalidParams{Context: "DeregisterTaskFromMaintenanceWindowInput"}
23219	if s.WindowId == nil {
23220		invalidParams.Add(request.NewErrParamRequired("WindowId"))
23221	}
23222	if s.WindowId != nil && len(*s.WindowId) < 20 {
23223		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
23224	}
23225	if s.WindowTaskId == nil {
23226		invalidParams.Add(request.NewErrParamRequired("WindowTaskId"))
23227	}
23228	if s.WindowTaskId != nil && len(*s.WindowTaskId) < 36 {
23229		invalidParams.Add(request.NewErrParamMinLen("WindowTaskId", 36))
23230	}
23231
23232	if invalidParams.Len() > 0 {
23233		return invalidParams
23234	}
23235	return nil
23236}
23237
23238// SetWindowId sets the WindowId field's value.
23239func (s *DeregisterTaskFromMaintenanceWindowInput) SetWindowId(v string) *DeregisterTaskFromMaintenanceWindowInput {
23240	s.WindowId = &v
23241	return s
23242}
23243
23244// SetWindowTaskId sets the WindowTaskId field's value.
23245func (s *DeregisterTaskFromMaintenanceWindowInput) SetWindowTaskId(v string) *DeregisterTaskFromMaintenanceWindowInput {
23246	s.WindowTaskId = &v
23247	return s
23248}
23249
23250type DeregisterTaskFromMaintenanceWindowOutput struct {
23251	_ struct{} `type:"structure"`
23252
23253	// The ID of the maintenance window the task was removed from.
23254	WindowId *string `min:"20" type:"string"`
23255
23256	// The ID of the task removed from the maintenance window.
23257	WindowTaskId *string `min:"36" type:"string"`
23258}
23259
23260// String returns the string representation
23261func (s DeregisterTaskFromMaintenanceWindowOutput) String() string {
23262	return awsutil.Prettify(s)
23263}
23264
23265// GoString returns the string representation
23266func (s DeregisterTaskFromMaintenanceWindowOutput) GoString() string {
23267	return s.String()
23268}
23269
23270// SetWindowId sets the WindowId field's value.
23271func (s *DeregisterTaskFromMaintenanceWindowOutput) SetWindowId(v string) *DeregisterTaskFromMaintenanceWindowOutput {
23272	s.WindowId = &v
23273	return s
23274}
23275
23276// SetWindowTaskId sets the WindowTaskId field's value.
23277func (s *DeregisterTaskFromMaintenanceWindowOutput) SetWindowTaskId(v string) *DeregisterTaskFromMaintenanceWindowOutput {
23278	s.WindowTaskId = &v
23279	return s
23280}
23281
23282// Filter for the DescribeActivation API.
23283type DescribeActivationsFilter struct {
23284	_ struct{} `type:"structure"`
23285
23286	// The name of the filter.
23287	FilterKey *string `type:"string" enum:"DescribeActivationsFilterKeys"`
23288
23289	// The filter values.
23290	FilterValues []*string `type:"list"`
23291}
23292
23293// String returns the string representation
23294func (s DescribeActivationsFilter) String() string {
23295	return awsutil.Prettify(s)
23296}
23297
23298// GoString returns the string representation
23299func (s DescribeActivationsFilter) GoString() string {
23300	return s.String()
23301}
23302
23303// SetFilterKey sets the FilterKey field's value.
23304func (s *DescribeActivationsFilter) SetFilterKey(v string) *DescribeActivationsFilter {
23305	s.FilterKey = &v
23306	return s
23307}
23308
23309// SetFilterValues sets the FilterValues field's value.
23310func (s *DescribeActivationsFilter) SetFilterValues(v []*string) *DescribeActivationsFilter {
23311	s.FilterValues = v
23312	return s
23313}
23314
23315type DescribeActivationsInput struct {
23316	_ struct{} `type:"structure"`
23317
23318	// A filter to view information about your activations.
23319	Filters []*DescribeActivationsFilter `type:"list"`
23320
23321	// The maximum number of items to return for this call. The call also returns
23322	// a token that you can specify in a subsequent call to get the next set of
23323	// results.
23324	MaxResults *int64 `min:"1" type:"integer"`
23325
23326	// A token to start the list. Use this token to get the next set of results.
23327	NextToken *string `type:"string"`
23328}
23329
23330// String returns the string representation
23331func (s DescribeActivationsInput) String() string {
23332	return awsutil.Prettify(s)
23333}
23334
23335// GoString returns the string representation
23336func (s DescribeActivationsInput) GoString() string {
23337	return s.String()
23338}
23339
23340// Validate inspects the fields of the type to determine if they are valid.
23341func (s *DescribeActivationsInput) Validate() error {
23342	invalidParams := request.ErrInvalidParams{Context: "DescribeActivationsInput"}
23343	if s.MaxResults != nil && *s.MaxResults < 1 {
23344		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
23345	}
23346
23347	if invalidParams.Len() > 0 {
23348		return invalidParams
23349	}
23350	return nil
23351}
23352
23353// SetFilters sets the Filters field's value.
23354func (s *DescribeActivationsInput) SetFilters(v []*DescribeActivationsFilter) *DescribeActivationsInput {
23355	s.Filters = v
23356	return s
23357}
23358
23359// SetMaxResults sets the MaxResults field's value.
23360func (s *DescribeActivationsInput) SetMaxResults(v int64) *DescribeActivationsInput {
23361	s.MaxResults = &v
23362	return s
23363}
23364
23365// SetNextToken sets the NextToken field's value.
23366func (s *DescribeActivationsInput) SetNextToken(v string) *DescribeActivationsInput {
23367	s.NextToken = &v
23368	return s
23369}
23370
23371type DescribeActivationsOutput struct {
23372	_ struct{} `type:"structure"`
23373
23374	// A list of activations for your Amazon Web Services account.
23375	ActivationList []*Activation `type:"list"`
23376
23377	// The token for the next set of items to return. Use this token to get the
23378	// next set of results.
23379	NextToken *string `type:"string"`
23380}
23381
23382// String returns the string representation
23383func (s DescribeActivationsOutput) String() string {
23384	return awsutil.Prettify(s)
23385}
23386
23387// GoString returns the string representation
23388func (s DescribeActivationsOutput) GoString() string {
23389	return s.String()
23390}
23391
23392// SetActivationList sets the ActivationList field's value.
23393func (s *DescribeActivationsOutput) SetActivationList(v []*Activation) *DescribeActivationsOutput {
23394	s.ActivationList = v
23395	return s
23396}
23397
23398// SetNextToken sets the NextToken field's value.
23399func (s *DescribeActivationsOutput) SetNextToken(v string) *DescribeActivationsOutput {
23400	s.NextToken = &v
23401	return s
23402}
23403
23404type DescribeAssociationExecutionTargetsInput struct {
23405	_ struct{} `type:"structure"`
23406
23407	// The association ID that includes the execution for which you want to view
23408	// details.
23409	//
23410	// AssociationId is a required field
23411	AssociationId *string `type:"string" required:"true"`
23412
23413	// The execution ID for which you want to view details.
23414	//
23415	// ExecutionId is a required field
23416	ExecutionId *string `type:"string" required:"true"`
23417
23418	// Filters for the request. You can specify the following filters and values.
23419	//
23420	// Status (EQUAL)
23421	//
23422	// ResourceId (EQUAL)
23423	//
23424	// ResourceType (EQUAL)
23425	Filters []*AssociationExecutionTargetsFilter `min:"1" type:"list"`
23426
23427	// The maximum number of items to return for this call. The call also returns
23428	// a token that you can specify in a subsequent call to get the next set of
23429	// results.
23430	MaxResults *int64 `min:"1" type:"integer"`
23431
23432	// A token to start the list. Use this token to get the next set of results.
23433	NextToken *string `type:"string"`
23434}
23435
23436// String returns the string representation
23437func (s DescribeAssociationExecutionTargetsInput) String() string {
23438	return awsutil.Prettify(s)
23439}
23440
23441// GoString returns the string representation
23442func (s DescribeAssociationExecutionTargetsInput) GoString() string {
23443	return s.String()
23444}
23445
23446// Validate inspects the fields of the type to determine if they are valid.
23447func (s *DescribeAssociationExecutionTargetsInput) Validate() error {
23448	invalidParams := request.ErrInvalidParams{Context: "DescribeAssociationExecutionTargetsInput"}
23449	if s.AssociationId == nil {
23450		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
23451	}
23452	if s.ExecutionId == nil {
23453		invalidParams.Add(request.NewErrParamRequired("ExecutionId"))
23454	}
23455	if s.Filters != nil && len(s.Filters) < 1 {
23456		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
23457	}
23458	if s.MaxResults != nil && *s.MaxResults < 1 {
23459		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
23460	}
23461	if s.Filters != nil {
23462		for i, v := range s.Filters {
23463			if v == nil {
23464				continue
23465			}
23466			if err := v.Validate(); err != nil {
23467				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
23468			}
23469		}
23470	}
23471
23472	if invalidParams.Len() > 0 {
23473		return invalidParams
23474	}
23475	return nil
23476}
23477
23478// SetAssociationId sets the AssociationId field's value.
23479func (s *DescribeAssociationExecutionTargetsInput) SetAssociationId(v string) *DescribeAssociationExecutionTargetsInput {
23480	s.AssociationId = &v
23481	return s
23482}
23483
23484// SetExecutionId sets the ExecutionId field's value.
23485func (s *DescribeAssociationExecutionTargetsInput) SetExecutionId(v string) *DescribeAssociationExecutionTargetsInput {
23486	s.ExecutionId = &v
23487	return s
23488}
23489
23490// SetFilters sets the Filters field's value.
23491func (s *DescribeAssociationExecutionTargetsInput) SetFilters(v []*AssociationExecutionTargetsFilter) *DescribeAssociationExecutionTargetsInput {
23492	s.Filters = v
23493	return s
23494}
23495
23496// SetMaxResults sets the MaxResults field's value.
23497func (s *DescribeAssociationExecutionTargetsInput) SetMaxResults(v int64) *DescribeAssociationExecutionTargetsInput {
23498	s.MaxResults = &v
23499	return s
23500}
23501
23502// SetNextToken sets the NextToken field's value.
23503func (s *DescribeAssociationExecutionTargetsInput) SetNextToken(v string) *DescribeAssociationExecutionTargetsInput {
23504	s.NextToken = &v
23505	return s
23506}
23507
23508type DescribeAssociationExecutionTargetsOutput struct {
23509	_ struct{} `type:"structure"`
23510
23511	// Information about the execution.
23512	AssociationExecutionTargets []*AssociationExecutionTarget `type:"list"`
23513
23514	// The token for the next set of items to return. Use this token to get the
23515	// next set of results.
23516	NextToken *string `type:"string"`
23517}
23518
23519// String returns the string representation
23520func (s DescribeAssociationExecutionTargetsOutput) String() string {
23521	return awsutil.Prettify(s)
23522}
23523
23524// GoString returns the string representation
23525func (s DescribeAssociationExecutionTargetsOutput) GoString() string {
23526	return s.String()
23527}
23528
23529// SetAssociationExecutionTargets sets the AssociationExecutionTargets field's value.
23530func (s *DescribeAssociationExecutionTargetsOutput) SetAssociationExecutionTargets(v []*AssociationExecutionTarget) *DescribeAssociationExecutionTargetsOutput {
23531	s.AssociationExecutionTargets = v
23532	return s
23533}
23534
23535// SetNextToken sets the NextToken field's value.
23536func (s *DescribeAssociationExecutionTargetsOutput) SetNextToken(v string) *DescribeAssociationExecutionTargetsOutput {
23537	s.NextToken = &v
23538	return s
23539}
23540
23541type DescribeAssociationExecutionsInput struct {
23542	_ struct{} `type:"structure"`
23543
23544	// The association ID for which you want to view execution history details.
23545	//
23546	// AssociationId is a required field
23547	AssociationId *string `type:"string" required:"true"`
23548
23549	// Filters for the request. You can specify the following filters and values.
23550	//
23551	// ExecutionId (EQUAL)
23552	//
23553	// Status (EQUAL)
23554	//
23555	// CreatedTime (EQUAL, GREATER_THAN, LESS_THAN)
23556	Filters []*AssociationExecutionFilter `min:"1" type:"list"`
23557
23558	// The maximum number of items to return for this call. The call also returns
23559	// a token that you can specify in a subsequent call to get the next set of
23560	// results.
23561	MaxResults *int64 `min:"1" type:"integer"`
23562
23563	// A token to start the list. Use this token to get the next set of results.
23564	NextToken *string `type:"string"`
23565}
23566
23567// String returns the string representation
23568func (s DescribeAssociationExecutionsInput) String() string {
23569	return awsutil.Prettify(s)
23570}
23571
23572// GoString returns the string representation
23573func (s DescribeAssociationExecutionsInput) GoString() string {
23574	return s.String()
23575}
23576
23577// Validate inspects the fields of the type to determine if they are valid.
23578func (s *DescribeAssociationExecutionsInput) Validate() error {
23579	invalidParams := request.ErrInvalidParams{Context: "DescribeAssociationExecutionsInput"}
23580	if s.AssociationId == nil {
23581		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
23582	}
23583	if s.Filters != nil && len(s.Filters) < 1 {
23584		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
23585	}
23586	if s.MaxResults != nil && *s.MaxResults < 1 {
23587		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
23588	}
23589	if s.Filters != nil {
23590		for i, v := range s.Filters {
23591			if v == nil {
23592				continue
23593			}
23594			if err := v.Validate(); err != nil {
23595				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
23596			}
23597		}
23598	}
23599
23600	if invalidParams.Len() > 0 {
23601		return invalidParams
23602	}
23603	return nil
23604}
23605
23606// SetAssociationId sets the AssociationId field's value.
23607func (s *DescribeAssociationExecutionsInput) SetAssociationId(v string) *DescribeAssociationExecutionsInput {
23608	s.AssociationId = &v
23609	return s
23610}
23611
23612// SetFilters sets the Filters field's value.
23613func (s *DescribeAssociationExecutionsInput) SetFilters(v []*AssociationExecutionFilter) *DescribeAssociationExecutionsInput {
23614	s.Filters = v
23615	return s
23616}
23617
23618// SetMaxResults sets the MaxResults field's value.
23619func (s *DescribeAssociationExecutionsInput) SetMaxResults(v int64) *DescribeAssociationExecutionsInput {
23620	s.MaxResults = &v
23621	return s
23622}
23623
23624// SetNextToken sets the NextToken field's value.
23625func (s *DescribeAssociationExecutionsInput) SetNextToken(v string) *DescribeAssociationExecutionsInput {
23626	s.NextToken = &v
23627	return s
23628}
23629
23630type DescribeAssociationExecutionsOutput struct {
23631	_ struct{} `type:"structure"`
23632
23633	// A list of the executions for the specified association ID.
23634	AssociationExecutions []*AssociationExecution `type:"list"`
23635
23636	// The token for the next set of items to return. Use this token to get the
23637	// next set of results.
23638	NextToken *string `type:"string"`
23639}
23640
23641// String returns the string representation
23642func (s DescribeAssociationExecutionsOutput) String() string {
23643	return awsutil.Prettify(s)
23644}
23645
23646// GoString returns the string representation
23647func (s DescribeAssociationExecutionsOutput) GoString() string {
23648	return s.String()
23649}
23650
23651// SetAssociationExecutions sets the AssociationExecutions field's value.
23652func (s *DescribeAssociationExecutionsOutput) SetAssociationExecutions(v []*AssociationExecution) *DescribeAssociationExecutionsOutput {
23653	s.AssociationExecutions = v
23654	return s
23655}
23656
23657// SetNextToken sets the NextToken field's value.
23658func (s *DescribeAssociationExecutionsOutput) SetNextToken(v string) *DescribeAssociationExecutionsOutput {
23659	s.NextToken = &v
23660	return s
23661}
23662
23663type DescribeAssociationInput struct {
23664	_ struct{} `type:"structure"`
23665
23666	// The association ID for which you want information.
23667	AssociationId *string `type:"string"`
23668
23669	// Specify the association version to retrieve. To view the latest version,
23670	// either specify $LATEST for this parameter, or omit this parameter. To view
23671	// a list of all associations for an instance, use ListAssociations. To get
23672	// a list of versions for a specific association, use ListAssociationVersions.
23673	AssociationVersion *string `type:"string"`
23674
23675	// The instance ID.
23676	InstanceId *string `type:"string"`
23677
23678	// The name of the SSM document.
23679	Name *string `type:"string"`
23680}
23681
23682// String returns the string representation
23683func (s DescribeAssociationInput) String() string {
23684	return awsutil.Prettify(s)
23685}
23686
23687// GoString returns the string representation
23688func (s DescribeAssociationInput) GoString() string {
23689	return s.String()
23690}
23691
23692// SetAssociationId sets the AssociationId field's value.
23693func (s *DescribeAssociationInput) SetAssociationId(v string) *DescribeAssociationInput {
23694	s.AssociationId = &v
23695	return s
23696}
23697
23698// SetAssociationVersion sets the AssociationVersion field's value.
23699func (s *DescribeAssociationInput) SetAssociationVersion(v string) *DescribeAssociationInput {
23700	s.AssociationVersion = &v
23701	return s
23702}
23703
23704// SetInstanceId sets the InstanceId field's value.
23705func (s *DescribeAssociationInput) SetInstanceId(v string) *DescribeAssociationInput {
23706	s.InstanceId = &v
23707	return s
23708}
23709
23710// SetName sets the Name field's value.
23711func (s *DescribeAssociationInput) SetName(v string) *DescribeAssociationInput {
23712	s.Name = &v
23713	return s
23714}
23715
23716type DescribeAssociationOutput struct {
23717	_ struct{} `type:"structure"`
23718
23719	// Information about the association.
23720	AssociationDescription *AssociationDescription `type:"structure"`
23721}
23722
23723// String returns the string representation
23724func (s DescribeAssociationOutput) String() string {
23725	return awsutil.Prettify(s)
23726}
23727
23728// GoString returns the string representation
23729func (s DescribeAssociationOutput) GoString() string {
23730	return s.String()
23731}
23732
23733// SetAssociationDescription sets the AssociationDescription field's value.
23734func (s *DescribeAssociationOutput) SetAssociationDescription(v *AssociationDescription) *DescribeAssociationOutput {
23735	s.AssociationDescription = v
23736	return s
23737}
23738
23739type DescribeAutomationExecutionsInput struct {
23740	_ struct{} `type:"structure"`
23741
23742	// Filters used to limit the scope of executions that are requested.
23743	Filters []*AutomationExecutionFilter `min:"1" type:"list"`
23744
23745	// The maximum number of items to return for this call. The call also returns
23746	// a token that you can specify in a subsequent call to get the next set of
23747	// results.
23748	MaxResults *int64 `min:"1" type:"integer"`
23749
23750	// The token for the next set of items to return. (You received this token from
23751	// a previous call.)
23752	NextToken *string `type:"string"`
23753}
23754
23755// String returns the string representation
23756func (s DescribeAutomationExecutionsInput) String() string {
23757	return awsutil.Prettify(s)
23758}
23759
23760// GoString returns the string representation
23761func (s DescribeAutomationExecutionsInput) GoString() string {
23762	return s.String()
23763}
23764
23765// Validate inspects the fields of the type to determine if they are valid.
23766func (s *DescribeAutomationExecutionsInput) Validate() error {
23767	invalidParams := request.ErrInvalidParams{Context: "DescribeAutomationExecutionsInput"}
23768	if s.Filters != nil && len(s.Filters) < 1 {
23769		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
23770	}
23771	if s.MaxResults != nil && *s.MaxResults < 1 {
23772		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
23773	}
23774	if s.Filters != nil {
23775		for i, v := range s.Filters {
23776			if v == nil {
23777				continue
23778			}
23779			if err := v.Validate(); err != nil {
23780				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
23781			}
23782		}
23783	}
23784
23785	if invalidParams.Len() > 0 {
23786		return invalidParams
23787	}
23788	return nil
23789}
23790
23791// SetFilters sets the Filters field's value.
23792func (s *DescribeAutomationExecutionsInput) SetFilters(v []*AutomationExecutionFilter) *DescribeAutomationExecutionsInput {
23793	s.Filters = v
23794	return s
23795}
23796
23797// SetMaxResults sets the MaxResults field's value.
23798func (s *DescribeAutomationExecutionsInput) SetMaxResults(v int64) *DescribeAutomationExecutionsInput {
23799	s.MaxResults = &v
23800	return s
23801}
23802
23803// SetNextToken sets the NextToken field's value.
23804func (s *DescribeAutomationExecutionsInput) SetNextToken(v string) *DescribeAutomationExecutionsInput {
23805	s.NextToken = &v
23806	return s
23807}
23808
23809type DescribeAutomationExecutionsOutput struct {
23810	_ struct{} `type:"structure"`
23811
23812	// The list of details about each automation execution which has occurred which
23813	// matches the filter specification, if any.
23814	AutomationExecutionMetadataList []*AutomationExecutionMetadata `type:"list"`
23815
23816	// The token to use when requesting the next set of items. If there are no additional
23817	// items to return, the string is empty.
23818	NextToken *string `type:"string"`
23819}
23820
23821// String returns the string representation
23822func (s DescribeAutomationExecutionsOutput) String() string {
23823	return awsutil.Prettify(s)
23824}
23825
23826// GoString returns the string representation
23827func (s DescribeAutomationExecutionsOutput) GoString() string {
23828	return s.String()
23829}
23830
23831// SetAutomationExecutionMetadataList sets the AutomationExecutionMetadataList field's value.
23832func (s *DescribeAutomationExecutionsOutput) SetAutomationExecutionMetadataList(v []*AutomationExecutionMetadata) *DescribeAutomationExecutionsOutput {
23833	s.AutomationExecutionMetadataList = v
23834	return s
23835}
23836
23837// SetNextToken sets the NextToken field's value.
23838func (s *DescribeAutomationExecutionsOutput) SetNextToken(v string) *DescribeAutomationExecutionsOutput {
23839	s.NextToken = &v
23840	return s
23841}
23842
23843type DescribeAutomationStepExecutionsInput struct {
23844	_ struct{} `type:"structure"`
23845
23846	// The Automation execution ID for which you want step execution descriptions.
23847	//
23848	// AutomationExecutionId is a required field
23849	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
23850
23851	// One or more filters to limit the number of step executions returned by the
23852	// request.
23853	Filters []*StepExecutionFilter `min:"1" type:"list"`
23854
23855	// The maximum number of items to return for this call. The call also returns
23856	// a token that you can specify in a subsequent call to get the next set of
23857	// results.
23858	MaxResults *int64 `min:"1" type:"integer"`
23859
23860	// The token for the next set of items to return. (You received this token from
23861	// a previous call.)
23862	NextToken *string `type:"string"`
23863
23864	// Indicates whether to list step executions in reverse order by start time.
23865	// The default value is 'false'.
23866	ReverseOrder *bool `type:"boolean"`
23867}
23868
23869// String returns the string representation
23870func (s DescribeAutomationStepExecutionsInput) String() string {
23871	return awsutil.Prettify(s)
23872}
23873
23874// GoString returns the string representation
23875func (s DescribeAutomationStepExecutionsInput) GoString() string {
23876	return s.String()
23877}
23878
23879// Validate inspects the fields of the type to determine if they are valid.
23880func (s *DescribeAutomationStepExecutionsInput) Validate() error {
23881	invalidParams := request.ErrInvalidParams{Context: "DescribeAutomationStepExecutionsInput"}
23882	if s.AutomationExecutionId == nil {
23883		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
23884	}
23885	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
23886		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
23887	}
23888	if s.Filters != nil && len(s.Filters) < 1 {
23889		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
23890	}
23891	if s.MaxResults != nil && *s.MaxResults < 1 {
23892		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
23893	}
23894	if s.Filters != nil {
23895		for i, v := range s.Filters {
23896			if v == nil {
23897				continue
23898			}
23899			if err := v.Validate(); err != nil {
23900				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
23901			}
23902		}
23903	}
23904
23905	if invalidParams.Len() > 0 {
23906		return invalidParams
23907	}
23908	return nil
23909}
23910
23911// SetAutomationExecutionId sets the AutomationExecutionId field's value.
23912func (s *DescribeAutomationStepExecutionsInput) SetAutomationExecutionId(v string) *DescribeAutomationStepExecutionsInput {
23913	s.AutomationExecutionId = &v
23914	return s
23915}
23916
23917// SetFilters sets the Filters field's value.
23918func (s *DescribeAutomationStepExecutionsInput) SetFilters(v []*StepExecutionFilter) *DescribeAutomationStepExecutionsInput {
23919	s.Filters = v
23920	return s
23921}
23922
23923// SetMaxResults sets the MaxResults field's value.
23924func (s *DescribeAutomationStepExecutionsInput) SetMaxResults(v int64) *DescribeAutomationStepExecutionsInput {
23925	s.MaxResults = &v
23926	return s
23927}
23928
23929// SetNextToken sets the NextToken field's value.
23930func (s *DescribeAutomationStepExecutionsInput) SetNextToken(v string) *DescribeAutomationStepExecutionsInput {
23931	s.NextToken = &v
23932	return s
23933}
23934
23935// SetReverseOrder sets the ReverseOrder field's value.
23936func (s *DescribeAutomationStepExecutionsInput) SetReverseOrder(v bool) *DescribeAutomationStepExecutionsInput {
23937	s.ReverseOrder = &v
23938	return s
23939}
23940
23941type DescribeAutomationStepExecutionsOutput struct {
23942	_ struct{} `type:"structure"`
23943
23944	// The token to use when requesting the next set of items. If there are no additional
23945	// items to return, the string is empty.
23946	NextToken *string `type:"string"`
23947
23948	// A list of details about the current state of all steps that make up an execution.
23949	StepExecutions []*StepExecution `type:"list"`
23950}
23951
23952// String returns the string representation
23953func (s DescribeAutomationStepExecutionsOutput) String() string {
23954	return awsutil.Prettify(s)
23955}
23956
23957// GoString returns the string representation
23958func (s DescribeAutomationStepExecutionsOutput) GoString() string {
23959	return s.String()
23960}
23961
23962// SetNextToken sets the NextToken field's value.
23963func (s *DescribeAutomationStepExecutionsOutput) SetNextToken(v string) *DescribeAutomationStepExecutionsOutput {
23964	s.NextToken = &v
23965	return s
23966}
23967
23968// SetStepExecutions sets the StepExecutions field's value.
23969func (s *DescribeAutomationStepExecutionsOutput) SetStepExecutions(v []*StepExecution) *DescribeAutomationStepExecutionsOutput {
23970	s.StepExecutions = v
23971	return s
23972}
23973
23974type DescribeAvailablePatchesInput struct {
23975	_ struct{} `type:"structure"`
23976
23977	// Each element in the array is a structure containing a key-value pair.
23978	//
23979	// Windows Server
23980	//
23981	// Supported keys for Windows Server instance patches include the following:
23982	//
23983	//    * PATCH_SET Sample values: OS | APPLICATION
23984	//
23985	//    * PRODUCT Sample values: WindowsServer2012 | Office 2010 | MicrosoftDefenderAntivirus
23986	//
23987	//    * PRODUCT_FAMILY Sample values: Windows | Office
23988	//
23989	//    * MSRC_SEVERITY Sample values: ServicePacks | Important | Moderate
23990	//
23991	//    * CLASSIFICATION Sample values: ServicePacks | SecurityUpdates | DefinitionUpdates
23992	//
23993	//    * PATCH_ID Sample values: KB123456 | KB4516046
23994	//
23995	// Linux
23996	//
23997	// When specifying filters for Linux patches, you must specify a key-pair for
23998	// PRODUCT. For example, using the Command Line Interface (CLI), the following
23999	// command fails:
24000	//
24001	// aws ssm describe-available-patches --filters Key=CVE_ID,Values=CVE-2018-3615
24002	//
24003	// However, the following command succeeds:
24004	//
24005	// aws ssm describe-available-patches --filters Key=PRODUCT,Values=AmazonLinux2018.03
24006	// Key=CVE_ID,Values=CVE-2018-3615
24007	//
24008	// Supported keys for Linux instance patches include the following:
24009	//
24010	//    * PRODUCT Sample values: AmazonLinux2018.03 | AmazonLinux2.0
24011	//
24012	//    * NAME Sample values: kernel-headers | samba-python | php
24013	//
24014	//    * SEVERITY Sample values: Critical | Important | Medium | Low
24015	//
24016	//    * EPOCH Sample values: 0 | 1
24017	//
24018	//    * VERSION Sample values: 78.6.1 | 4.10.16
24019	//
24020	//    * RELEASE Sample values: 9.56.amzn1 | 1.amzn2
24021	//
24022	//    * ARCH Sample values: i686 | x86_64
24023	//
24024	//    * REPOSITORY Sample values: Core | Updates
24025	//
24026	//    * ADVISORY_ID Sample values: ALAS-2018-1058 | ALAS2-2021-1594
24027	//
24028	//    * CVE_ID Sample values: CVE-2018-3615 | CVE-2020-1472
24029	//
24030	//    * BUGZILLA_ID Sample values: 1463241
24031	Filters []*PatchOrchestratorFilter `type:"list"`
24032
24033	// The maximum number of patches to return (per page).
24034	MaxResults *int64 `min:"1" type:"integer"`
24035
24036	// The token for the next set of items to return. (You received this token from
24037	// a previous call.)
24038	NextToken *string `type:"string"`
24039}
24040
24041// String returns the string representation
24042func (s DescribeAvailablePatchesInput) String() string {
24043	return awsutil.Prettify(s)
24044}
24045
24046// GoString returns the string representation
24047func (s DescribeAvailablePatchesInput) GoString() string {
24048	return s.String()
24049}
24050
24051// Validate inspects the fields of the type to determine if they are valid.
24052func (s *DescribeAvailablePatchesInput) Validate() error {
24053	invalidParams := request.ErrInvalidParams{Context: "DescribeAvailablePatchesInput"}
24054	if s.MaxResults != nil && *s.MaxResults < 1 {
24055		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
24056	}
24057	if s.Filters != nil {
24058		for i, v := range s.Filters {
24059			if v == nil {
24060				continue
24061			}
24062			if err := v.Validate(); err != nil {
24063				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
24064			}
24065		}
24066	}
24067
24068	if invalidParams.Len() > 0 {
24069		return invalidParams
24070	}
24071	return nil
24072}
24073
24074// SetFilters sets the Filters field's value.
24075func (s *DescribeAvailablePatchesInput) SetFilters(v []*PatchOrchestratorFilter) *DescribeAvailablePatchesInput {
24076	s.Filters = v
24077	return s
24078}
24079
24080// SetMaxResults sets the MaxResults field's value.
24081func (s *DescribeAvailablePatchesInput) SetMaxResults(v int64) *DescribeAvailablePatchesInput {
24082	s.MaxResults = &v
24083	return s
24084}
24085
24086// SetNextToken sets the NextToken field's value.
24087func (s *DescribeAvailablePatchesInput) SetNextToken(v string) *DescribeAvailablePatchesInput {
24088	s.NextToken = &v
24089	return s
24090}
24091
24092type DescribeAvailablePatchesOutput struct {
24093	_ struct{} `type:"structure"`
24094
24095	// The token to use when requesting the next set of items. If there are no additional
24096	// items to return, the string is empty.
24097	NextToken *string `type:"string"`
24098
24099	// An array of patches. Each entry in the array is a patch structure.
24100	Patches []*Patch `type:"list"`
24101}
24102
24103// String returns the string representation
24104func (s DescribeAvailablePatchesOutput) String() string {
24105	return awsutil.Prettify(s)
24106}
24107
24108// GoString returns the string representation
24109func (s DescribeAvailablePatchesOutput) GoString() string {
24110	return s.String()
24111}
24112
24113// SetNextToken sets the NextToken field's value.
24114func (s *DescribeAvailablePatchesOutput) SetNextToken(v string) *DescribeAvailablePatchesOutput {
24115	s.NextToken = &v
24116	return s
24117}
24118
24119// SetPatches sets the Patches field's value.
24120func (s *DescribeAvailablePatchesOutput) SetPatches(v []*Patch) *DescribeAvailablePatchesOutput {
24121	s.Patches = v
24122	return s
24123}
24124
24125type DescribeDocumentInput struct {
24126	_ struct{} `type:"structure"`
24127
24128	// The document version for which you want information. Can be a specific version
24129	// or the default version.
24130	DocumentVersion *string `type:"string"`
24131
24132	// The name of the SSM document.
24133	//
24134	// Name is a required field
24135	Name *string `type:"string" required:"true"`
24136
24137	// An optional field specifying the version of the artifact associated with
24138	// the document. For example, "Release 12, Update 6". This value is unique across
24139	// all versions of a document, and can't be changed.
24140	VersionName *string `type:"string"`
24141}
24142
24143// String returns the string representation
24144func (s DescribeDocumentInput) String() string {
24145	return awsutil.Prettify(s)
24146}
24147
24148// GoString returns the string representation
24149func (s DescribeDocumentInput) GoString() string {
24150	return s.String()
24151}
24152
24153// Validate inspects the fields of the type to determine if they are valid.
24154func (s *DescribeDocumentInput) Validate() error {
24155	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentInput"}
24156	if s.Name == nil {
24157		invalidParams.Add(request.NewErrParamRequired("Name"))
24158	}
24159
24160	if invalidParams.Len() > 0 {
24161		return invalidParams
24162	}
24163	return nil
24164}
24165
24166// SetDocumentVersion sets the DocumentVersion field's value.
24167func (s *DescribeDocumentInput) SetDocumentVersion(v string) *DescribeDocumentInput {
24168	s.DocumentVersion = &v
24169	return s
24170}
24171
24172// SetName sets the Name field's value.
24173func (s *DescribeDocumentInput) SetName(v string) *DescribeDocumentInput {
24174	s.Name = &v
24175	return s
24176}
24177
24178// SetVersionName sets the VersionName field's value.
24179func (s *DescribeDocumentInput) SetVersionName(v string) *DescribeDocumentInput {
24180	s.VersionName = &v
24181	return s
24182}
24183
24184type DescribeDocumentOutput struct {
24185	_ struct{} `type:"structure"`
24186
24187	// Information about the SSM document.
24188	Document *DocumentDescription `type:"structure"`
24189}
24190
24191// String returns the string representation
24192func (s DescribeDocumentOutput) String() string {
24193	return awsutil.Prettify(s)
24194}
24195
24196// GoString returns the string representation
24197func (s DescribeDocumentOutput) GoString() string {
24198	return s.String()
24199}
24200
24201// SetDocument sets the Document field's value.
24202func (s *DescribeDocumentOutput) SetDocument(v *DocumentDescription) *DescribeDocumentOutput {
24203	s.Document = v
24204	return s
24205}
24206
24207type DescribeDocumentPermissionInput struct {
24208	_ struct{} `type:"structure"`
24209
24210	// The maximum number of items to return for this call. The call also returns
24211	// a token that you can specify in a subsequent call to get the next set of
24212	// results.
24213	MaxResults *int64 `min:"1" type:"integer"`
24214
24215	// The name of the document for which you are the owner.
24216	//
24217	// Name is a required field
24218	Name *string `type:"string" required:"true"`
24219
24220	// The token for the next set of items to return. (You received this token from
24221	// a previous call.)
24222	NextToken *string `type:"string"`
24223
24224	// The permission type for the document. The permission type can be Share.
24225	//
24226	// PermissionType is a required field
24227	PermissionType *string `type:"string" required:"true" enum:"DocumentPermissionType"`
24228}
24229
24230// String returns the string representation
24231func (s DescribeDocumentPermissionInput) String() string {
24232	return awsutil.Prettify(s)
24233}
24234
24235// GoString returns the string representation
24236func (s DescribeDocumentPermissionInput) GoString() string {
24237	return s.String()
24238}
24239
24240// Validate inspects the fields of the type to determine if they are valid.
24241func (s *DescribeDocumentPermissionInput) Validate() error {
24242	invalidParams := request.ErrInvalidParams{Context: "DescribeDocumentPermissionInput"}
24243	if s.MaxResults != nil && *s.MaxResults < 1 {
24244		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
24245	}
24246	if s.Name == nil {
24247		invalidParams.Add(request.NewErrParamRequired("Name"))
24248	}
24249	if s.PermissionType == nil {
24250		invalidParams.Add(request.NewErrParamRequired("PermissionType"))
24251	}
24252
24253	if invalidParams.Len() > 0 {
24254		return invalidParams
24255	}
24256	return nil
24257}
24258
24259// SetMaxResults sets the MaxResults field's value.
24260func (s *DescribeDocumentPermissionInput) SetMaxResults(v int64) *DescribeDocumentPermissionInput {
24261	s.MaxResults = &v
24262	return s
24263}
24264
24265// SetName sets the Name field's value.
24266func (s *DescribeDocumentPermissionInput) SetName(v string) *DescribeDocumentPermissionInput {
24267	s.Name = &v
24268	return s
24269}
24270
24271// SetNextToken sets the NextToken field's value.
24272func (s *DescribeDocumentPermissionInput) SetNextToken(v string) *DescribeDocumentPermissionInput {
24273	s.NextToken = &v
24274	return s
24275}
24276
24277// SetPermissionType sets the PermissionType field's value.
24278func (s *DescribeDocumentPermissionInput) SetPermissionType(v string) *DescribeDocumentPermissionInput {
24279	s.PermissionType = &v
24280	return s
24281}
24282
24283type DescribeDocumentPermissionOutput struct {
24284	_ struct{} `type:"structure"`
24285
24286	// The account IDs that have permission to use this document. The ID can be
24287	// either an Amazon Web Services account or All.
24288	AccountIds []*string `type:"list"`
24289
24290	// A list of Amazon Web Services accounts where the current document is shared
24291	// and the version shared with each account.
24292	AccountSharingInfoList []*AccountSharingInfo `type:"list"`
24293
24294	// The token for the next set of items to return. Use this token to get the
24295	// next set of results.
24296	NextToken *string `type:"string"`
24297}
24298
24299// String returns the string representation
24300func (s DescribeDocumentPermissionOutput) String() string {
24301	return awsutil.Prettify(s)
24302}
24303
24304// GoString returns the string representation
24305func (s DescribeDocumentPermissionOutput) GoString() string {
24306	return s.String()
24307}
24308
24309// SetAccountIds sets the AccountIds field's value.
24310func (s *DescribeDocumentPermissionOutput) SetAccountIds(v []*string) *DescribeDocumentPermissionOutput {
24311	s.AccountIds = v
24312	return s
24313}
24314
24315// SetAccountSharingInfoList sets the AccountSharingInfoList field's value.
24316func (s *DescribeDocumentPermissionOutput) SetAccountSharingInfoList(v []*AccountSharingInfo) *DescribeDocumentPermissionOutput {
24317	s.AccountSharingInfoList = v
24318	return s
24319}
24320
24321// SetNextToken sets the NextToken field's value.
24322func (s *DescribeDocumentPermissionOutput) SetNextToken(v string) *DescribeDocumentPermissionOutput {
24323	s.NextToken = &v
24324	return s
24325}
24326
24327type DescribeEffectiveInstanceAssociationsInput struct {
24328	_ struct{} `type:"structure"`
24329
24330	// The instance ID for which you want to view all associations.
24331	//
24332	// InstanceId is a required field
24333	InstanceId *string `type:"string" required:"true"`
24334
24335	// The maximum number of items to return for this call. The call also returns
24336	// a token that you can specify in a subsequent call to get the next set of
24337	// results.
24338	MaxResults *int64 `min:"1" type:"integer"`
24339
24340	// The token for the next set of items to return. (You received this token from
24341	// a previous call.)
24342	NextToken *string `type:"string"`
24343}
24344
24345// String returns the string representation
24346func (s DescribeEffectiveInstanceAssociationsInput) String() string {
24347	return awsutil.Prettify(s)
24348}
24349
24350// GoString returns the string representation
24351func (s DescribeEffectiveInstanceAssociationsInput) GoString() string {
24352	return s.String()
24353}
24354
24355// Validate inspects the fields of the type to determine if they are valid.
24356func (s *DescribeEffectiveInstanceAssociationsInput) Validate() error {
24357	invalidParams := request.ErrInvalidParams{Context: "DescribeEffectiveInstanceAssociationsInput"}
24358	if s.InstanceId == nil {
24359		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
24360	}
24361	if s.MaxResults != nil && *s.MaxResults < 1 {
24362		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
24363	}
24364
24365	if invalidParams.Len() > 0 {
24366		return invalidParams
24367	}
24368	return nil
24369}
24370
24371// SetInstanceId sets the InstanceId field's value.
24372func (s *DescribeEffectiveInstanceAssociationsInput) SetInstanceId(v string) *DescribeEffectiveInstanceAssociationsInput {
24373	s.InstanceId = &v
24374	return s
24375}
24376
24377// SetMaxResults sets the MaxResults field's value.
24378func (s *DescribeEffectiveInstanceAssociationsInput) SetMaxResults(v int64) *DescribeEffectiveInstanceAssociationsInput {
24379	s.MaxResults = &v
24380	return s
24381}
24382
24383// SetNextToken sets the NextToken field's value.
24384func (s *DescribeEffectiveInstanceAssociationsInput) SetNextToken(v string) *DescribeEffectiveInstanceAssociationsInput {
24385	s.NextToken = &v
24386	return s
24387}
24388
24389type DescribeEffectiveInstanceAssociationsOutput struct {
24390	_ struct{} `type:"structure"`
24391
24392	// The associations for the requested instance.
24393	Associations []*InstanceAssociation `type:"list"`
24394
24395	// The token to use when requesting the next set of items. If there are no additional
24396	// items to return, the string is empty.
24397	NextToken *string `type:"string"`
24398}
24399
24400// String returns the string representation
24401func (s DescribeEffectiveInstanceAssociationsOutput) String() string {
24402	return awsutil.Prettify(s)
24403}
24404
24405// GoString returns the string representation
24406func (s DescribeEffectiveInstanceAssociationsOutput) GoString() string {
24407	return s.String()
24408}
24409
24410// SetAssociations sets the Associations field's value.
24411func (s *DescribeEffectiveInstanceAssociationsOutput) SetAssociations(v []*InstanceAssociation) *DescribeEffectiveInstanceAssociationsOutput {
24412	s.Associations = v
24413	return s
24414}
24415
24416// SetNextToken sets the NextToken field's value.
24417func (s *DescribeEffectiveInstanceAssociationsOutput) SetNextToken(v string) *DescribeEffectiveInstanceAssociationsOutput {
24418	s.NextToken = &v
24419	return s
24420}
24421
24422type DescribeEffectivePatchesForPatchBaselineInput struct {
24423	_ struct{} `type:"structure"`
24424
24425	// The ID of the patch baseline to retrieve the effective patches for.
24426	//
24427	// BaselineId is a required field
24428	BaselineId *string `min:"20" type:"string" required:"true"`
24429
24430	// The maximum number of patches to return (per page).
24431	MaxResults *int64 `min:"1" type:"integer"`
24432
24433	// The token for the next set of items to return. (You received this token from
24434	// a previous call.)
24435	NextToken *string `type:"string"`
24436}
24437
24438// String returns the string representation
24439func (s DescribeEffectivePatchesForPatchBaselineInput) String() string {
24440	return awsutil.Prettify(s)
24441}
24442
24443// GoString returns the string representation
24444func (s DescribeEffectivePatchesForPatchBaselineInput) GoString() string {
24445	return s.String()
24446}
24447
24448// Validate inspects the fields of the type to determine if they are valid.
24449func (s *DescribeEffectivePatchesForPatchBaselineInput) Validate() error {
24450	invalidParams := request.ErrInvalidParams{Context: "DescribeEffectivePatchesForPatchBaselineInput"}
24451	if s.BaselineId == nil {
24452		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
24453	}
24454	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
24455		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
24456	}
24457	if s.MaxResults != nil && *s.MaxResults < 1 {
24458		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
24459	}
24460
24461	if invalidParams.Len() > 0 {
24462		return invalidParams
24463	}
24464	return nil
24465}
24466
24467// SetBaselineId sets the BaselineId field's value.
24468func (s *DescribeEffectivePatchesForPatchBaselineInput) SetBaselineId(v string) *DescribeEffectivePatchesForPatchBaselineInput {
24469	s.BaselineId = &v
24470	return s
24471}
24472
24473// SetMaxResults sets the MaxResults field's value.
24474func (s *DescribeEffectivePatchesForPatchBaselineInput) SetMaxResults(v int64) *DescribeEffectivePatchesForPatchBaselineInput {
24475	s.MaxResults = &v
24476	return s
24477}
24478
24479// SetNextToken sets the NextToken field's value.
24480func (s *DescribeEffectivePatchesForPatchBaselineInput) SetNextToken(v string) *DescribeEffectivePatchesForPatchBaselineInput {
24481	s.NextToken = &v
24482	return s
24483}
24484
24485type DescribeEffectivePatchesForPatchBaselineOutput struct {
24486	_ struct{} `type:"structure"`
24487
24488	// An array of patches and patch status.
24489	EffectivePatches []*EffectivePatch `type:"list"`
24490
24491	// The token to use when requesting the next set of items. If there are no additional
24492	// items to return, the string is empty.
24493	NextToken *string `type:"string"`
24494}
24495
24496// String returns the string representation
24497func (s DescribeEffectivePatchesForPatchBaselineOutput) String() string {
24498	return awsutil.Prettify(s)
24499}
24500
24501// GoString returns the string representation
24502func (s DescribeEffectivePatchesForPatchBaselineOutput) GoString() string {
24503	return s.String()
24504}
24505
24506// SetEffectivePatches sets the EffectivePatches field's value.
24507func (s *DescribeEffectivePatchesForPatchBaselineOutput) SetEffectivePatches(v []*EffectivePatch) *DescribeEffectivePatchesForPatchBaselineOutput {
24508	s.EffectivePatches = v
24509	return s
24510}
24511
24512// SetNextToken sets the NextToken field's value.
24513func (s *DescribeEffectivePatchesForPatchBaselineOutput) SetNextToken(v string) *DescribeEffectivePatchesForPatchBaselineOutput {
24514	s.NextToken = &v
24515	return s
24516}
24517
24518type DescribeInstanceAssociationsStatusInput struct {
24519	_ struct{} `type:"structure"`
24520
24521	// The instance IDs for which you want association status information.
24522	//
24523	// InstanceId is a required field
24524	InstanceId *string `type:"string" required:"true"`
24525
24526	// The maximum number of items to return for this call. The call also returns
24527	// a token that you can specify in a subsequent call to get the next set of
24528	// results.
24529	MaxResults *int64 `min:"1" type:"integer"`
24530
24531	// The token for the next set of items to return. (You received this token from
24532	// a previous call.)
24533	NextToken *string `type:"string"`
24534}
24535
24536// String returns the string representation
24537func (s DescribeInstanceAssociationsStatusInput) String() string {
24538	return awsutil.Prettify(s)
24539}
24540
24541// GoString returns the string representation
24542func (s DescribeInstanceAssociationsStatusInput) GoString() string {
24543	return s.String()
24544}
24545
24546// Validate inspects the fields of the type to determine if they are valid.
24547func (s *DescribeInstanceAssociationsStatusInput) Validate() error {
24548	invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceAssociationsStatusInput"}
24549	if s.InstanceId == nil {
24550		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
24551	}
24552	if s.MaxResults != nil && *s.MaxResults < 1 {
24553		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
24554	}
24555
24556	if invalidParams.Len() > 0 {
24557		return invalidParams
24558	}
24559	return nil
24560}
24561
24562// SetInstanceId sets the InstanceId field's value.
24563func (s *DescribeInstanceAssociationsStatusInput) SetInstanceId(v string) *DescribeInstanceAssociationsStatusInput {
24564	s.InstanceId = &v
24565	return s
24566}
24567
24568// SetMaxResults sets the MaxResults field's value.
24569func (s *DescribeInstanceAssociationsStatusInput) SetMaxResults(v int64) *DescribeInstanceAssociationsStatusInput {
24570	s.MaxResults = &v
24571	return s
24572}
24573
24574// SetNextToken sets the NextToken field's value.
24575func (s *DescribeInstanceAssociationsStatusInput) SetNextToken(v string) *DescribeInstanceAssociationsStatusInput {
24576	s.NextToken = &v
24577	return s
24578}
24579
24580type DescribeInstanceAssociationsStatusOutput struct {
24581	_ struct{} `type:"structure"`
24582
24583	// Status information about the association.
24584	InstanceAssociationStatusInfos []*InstanceAssociationStatusInfo `type:"list"`
24585
24586	// The token to use when requesting the next set of items. If there are no additional
24587	// items to return, the string is empty.
24588	NextToken *string `type:"string"`
24589}
24590
24591// String returns the string representation
24592func (s DescribeInstanceAssociationsStatusOutput) String() string {
24593	return awsutil.Prettify(s)
24594}
24595
24596// GoString returns the string representation
24597func (s DescribeInstanceAssociationsStatusOutput) GoString() string {
24598	return s.String()
24599}
24600
24601// SetInstanceAssociationStatusInfos sets the InstanceAssociationStatusInfos field's value.
24602func (s *DescribeInstanceAssociationsStatusOutput) SetInstanceAssociationStatusInfos(v []*InstanceAssociationStatusInfo) *DescribeInstanceAssociationsStatusOutput {
24603	s.InstanceAssociationStatusInfos = v
24604	return s
24605}
24606
24607// SetNextToken sets the NextToken field's value.
24608func (s *DescribeInstanceAssociationsStatusOutput) SetNextToken(v string) *DescribeInstanceAssociationsStatusOutput {
24609	s.NextToken = &v
24610	return s
24611}
24612
24613type DescribeInstanceInformationInput struct {
24614	_ struct{} `type:"structure"`
24615
24616	// One or more filters. Use a filter to return a more specific list of instances.
24617	// You can filter based on tags applied to EC2 instances. Use this Filters data
24618	// type instead of InstanceInformationFilterList, which is deprecated.
24619	Filters []*InstanceInformationStringFilter `type:"list"`
24620
24621	// This is a legacy method. We recommend that you don't use this method. Instead,
24622	// use the Filters data type. Filters enables you to return instance information
24623	// by filtering based on tags applied to managed instances.
24624	//
24625	// Attempting to use InstanceInformationFilterList and Filters leads to an exception
24626	// error.
24627	InstanceInformationFilterList []*InstanceInformationFilter `type:"list"`
24628
24629	// The maximum number of items to return for this call. The call also returns
24630	// a token that you can specify in a subsequent call to get the next set of
24631	// results.
24632	MaxResults *int64 `min:"5" type:"integer"`
24633
24634	// The token for the next set of items to return. (You received this token from
24635	// a previous call.)
24636	NextToken *string `type:"string"`
24637}
24638
24639// String returns the string representation
24640func (s DescribeInstanceInformationInput) String() string {
24641	return awsutil.Prettify(s)
24642}
24643
24644// GoString returns the string representation
24645func (s DescribeInstanceInformationInput) GoString() string {
24646	return s.String()
24647}
24648
24649// Validate inspects the fields of the type to determine if they are valid.
24650func (s *DescribeInstanceInformationInput) Validate() error {
24651	invalidParams := request.ErrInvalidParams{Context: "DescribeInstanceInformationInput"}
24652	if s.MaxResults != nil && *s.MaxResults < 5 {
24653		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5))
24654	}
24655	if s.Filters != nil {
24656		for i, v := range s.Filters {
24657			if v == nil {
24658				continue
24659			}
24660			if err := v.Validate(); err != nil {
24661				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
24662			}
24663		}
24664	}
24665	if s.InstanceInformationFilterList != nil {
24666		for i, v := range s.InstanceInformationFilterList {
24667			if v == nil {
24668				continue
24669			}
24670			if err := v.Validate(); err != nil {
24671				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceInformationFilterList", i), err.(request.ErrInvalidParams))
24672			}
24673		}
24674	}
24675
24676	if invalidParams.Len() > 0 {
24677		return invalidParams
24678	}
24679	return nil
24680}
24681
24682// SetFilters sets the Filters field's value.
24683func (s *DescribeInstanceInformationInput) SetFilters(v []*InstanceInformationStringFilter) *DescribeInstanceInformationInput {
24684	s.Filters = v
24685	return s
24686}
24687
24688// SetInstanceInformationFilterList sets the InstanceInformationFilterList field's value.
24689func (s *DescribeInstanceInformationInput) SetInstanceInformationFilterList(v []*InstanceInformationFilter) *DescribeInstanceInformationInput {
24690	s.InstanceInformationFilterList = v
24691	return s
24692}
24693
24694// SetMaxResults sets the MaxResults field's value.
24695func (s *DescribeInstanceInformationInput) SetMaxResults(v int64) *DescribeInstanceInformationInput {
24696	s.MaxResults = &v
24697	return s
24698}
24699
24700// SetNextToken sets the NextToken field's value.
24701func (s *DescribeInstanceInformationInput) SetNextToken(v string) *DescribeInstanceInformationInput {
24702	s.NextToken = &v
24703	return s
24704}
24705
24706type DescribeInstanceInformationOutput struct {
24707	_ struct{} `type:"structure"`
24708
24709	// The instance information list.
24710	InstanceInformationList []*InstanceInformation `type:"list"`
24711
24712	// The token to use when requesting the next set of items. If there are no additional
24713	// items to return, the string is empty.
24714	NextToken *string `type:"string"`
24715}
24716
24717// String returns the string representation
24718func (s DescribeInstanceInformationOutput) String() string {
24719	return awsutil.Prettify(s)
24720}
24721
24722// GoString returns the string representation
24723func (s DescribeInstanceInformationOutput) GoString() string {
24724	return s.String()
24725}
24726
24727// SetInstanceInformationList sets the InstanceInformationList field's value.
24728func (s *DescribeInstanceInformationOutput) SetInstanceInformationList(v []*InstanceInformation) *DescribeInstanceInformationOutput {
24729	s.InstanceInformationList = v
24730	return s
24731}
24732
24733// SetNextToken sets the NextToken field's value.
24734func (s *DescribeInstanceInformationOutput) SetNextToken(v string) *DescribeInstanceInformationOutput {
24735	s.NextToken = &v
24736	return s
24737}
24738
24739type DescribeInstancePatchStatesForPatchGroupInput struct {
24740	_ struct{} `type:"structure"`
24741
24742	// Each entry in the array is a structure containing:
24743	//
24744	//    * Key (string between 1 and 200 characters)
24745	//
24746	//    * Values (array containing a single string)
24747	//
24748	//    * Type (string "Equal", "NotEqual", "LessThan", "GreaterThan")
24749	Filters []*InstancePatchStateFilter `type:"list"`
24750
24751	// The maximum number of patches to return (per page).
24752	MaxResults *int64 `min:"10" type:"integer"`
24753
24754	// The token for the next set of items to return. (You received this token from
24755	// a previous call.)
24756	NextToken *string `type:"string"`
24757
24758	// The name of the patch group for which the patch state information should
24759	// be retrieved.
24760	//
24761	// PatchGroup is a required field
24762	PatchGroup *string `min:"1" type:"string" required:"true"`
24763}
24764
24765// String returns the string representation
24766func (s DescribeInstancePatchStatesForPatchGroupInput) String() string {
24767	return awsutil.Prettify(s)
24768}
24769
24770// GoString returns the string representation
24771func (s DescribeInstancePatchStatesForPatchGroupInput) GoString() string {
24772	return s.String()
24773}
24774
24775// Validate inspects the fields of the type to determine if they are valid.
24776func (s *DescribeInstancePatchStatesForPatchGroupInput) Validate() error {
24777	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancePatchStatesForPatchGroupInput"}
24778	if s.MaxResults != nil && *s.MaxResults < 10 {
24779		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
24780	}
24781	if s.PatchGroup == nil {
24782		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
24783	}
24784	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
24785		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
24786	}
24787	if s.Filters != nil {
24788		for i, v := range s.Filters {
24789			if v == nil {
24790				continue
24791			}
24792			if err := v.Validate(); err != nil {
24793				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
24794			}
24795		}
24796	}
24797
24798	if invalidParams.Len() > 0 {
24799		return invalidParams
24800	}
24801	return nil
24802}
24803
24804// SetFilters sets the Filters field's value.
24805func (s *DescribeInstancePatchStatesForPatchGroupInput) SetFilters(v []*InstancePatchStateFilter) *DescribeInstancePatchStatesForPatchGroupInput {
24806	s.Filters = v
24807	return s
24808}
24809
24810// SetMaxResults sets the MaxResults field's value.
24811func (s *DescribeInstancePatchStatesForPatchGroupInput) SetMaxResults(v int64) *DescribeInstancePatchStatesForPatchGroupInput {
24812	s.MaxResults = &v
24813	return s
24814}
24815
24816// SetNextToken sets the NextToken field's value.
24817func (s *DescribeInstancePatchStatesForPatchGroupInput) SetNextToken(v string) *DescribeInstancePatchStatesForPatchGroupInput {
24818	s.NextToken = &v
24819	return s
24820}
24821
24822// SetPatchGroup sets the PatchGroup field's value.
24823func (s *DescribeInstancePatchStatesForPatchGroupInput) SetPatchGroup(v string) *DescribeInstancePatchStatesForPatchGroupInput {
24824	s.PatchGroup = &v
24825	return s
24826}
24827
24828type DescribeInstancePatchStatesForPatchGroupOutput struct {
24829	_ struct{} `type:"structure"`
24830
24831	// The high-level patch state for the requested instances.
24832	InstancePatchStates []*InstancePatchState `min:"1" type:"list"`
24833
24834	// The token to use when requesting the next set of items. If there are no additional
24835	// items to return, the string is empty.
24836	NextToken *string `type:"string"`
24837}
24838
24839// String returns the string representation
24840func (s DescribeInstancePatchStatesForPatchGroupOutput) String() string {
24841	return awsutil.Prettify(s)
24842}
24843
24844// GoString returns the string representation
24845func (s DescribeInstancePatchStatesForPatchGroupOutput) GoString() string {
24846	return s.String()
24847}
24848
24849// SetInstancePatchStates sets the InstancePatchStates field's value.
24850func (s *DescribeInstancePatchStatesForPatchGroupOutput) SetInstancePatchStates(v []*InstancePatchState) *DescribeInstancePatchStatesForPatchGroupOutput {
24851	s.InstancePatchStates = v
24852	return s
24853}
24854
24855// SetNextToken sets the NextToken field's value.
24856func (s *DescribeInstancePatchStatesForPatchGroupOutput) SetNextToken(v string) *DescribeInstancePatchStatesForPatchGroupOutput {
24857	s.NextToken = &v
24858	return s
24859}
24860
24861type DescribeInstancePatchStatesInput struct {
24862	_ struct{} `type:"structure"`
24863
24864	// The ID of the instance for which patch state information should be retrieved.
24865	//
24866	// InstanceIds is a required field
24867	InstanceIds []*string `type:"list" required:"true"`
24868
24869	// The maximum number of instances to return (per page).
24870	MaxResults *int64 `min:"10" type:"integer"`
24871
24872	// The token for the next set of items to return. (You received this token from
24873	// a previous call.)
24874	NextToken *string `type:"string"`
24875}
24876
24877// String returns the string representation
24878func (s DescribeInstancePatchStatesInput) String() string {
24879	return awsutil.Prettify(s)
24880}
24881
24882// GoString returns the string representation
24883func (s DescribeInstancePatchStatesInput) GoString() string {
24884	return s.String()
24885}
24886
24887// Validate inspects the fields of the type to determine if they are valid.
24888func (s *DescribeInstancePatchStatesInput) Validate() error {
24889	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancePatchStatesInput"}
24890	if s.InstanceIds == nil {
24891		invalidParams.Add(request.NewErrParamRequired("InstanceIds"))
24892	}
24893	if s.MaxResults != nil && *s.MaxResults < 10 {
24894		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
24895	}
24896
24897	if invalidParams.Len() > 0 {
24898		return invalidParams
24899	}
24900	return nil
24901}
24902
24903// SetInstanceIds sets the InstanceIds field's value.
24904func (s *DescribeInstancePatchStatesInput) SetInstanceIds(v []*string) *DescribeInstancePatchStatesInput {
24905	s.InstanceIds = v
24906	return s
24907}
24908
24909// SetMaxResults sets the MaxResults field's value.
24910func (s *DescribeInstancePatchStatesInput) SetMaxResults(v int64) *DescribeInstancePatchStatesInput {
24911	s.MaxResults = &v
24912	return s
24913}
24914
24915// SetNextToken sets the NextToken field's value.
24916func (s *DescribeInstancePatchStatesInput) SetNextToken(v string) *DescribeInstancePatchStatesInput {
24917	s.NextToken = &v
24918	return s
24919}
24920
24921type DescribeInstancePatchStatesOutput struct {
24922	_ struct{} `type:"structure"`
24923
24924	// The high-level patch state for the requested instances.
24925	InstancePatchStates []*InstancePatchState `type:"list"`
24926
24927	// The token to use when requesting the next set of items. If there are no additional
24928	// items to return, the string is empty.
24929	NextToken *string `type:"string"`
24930}
24931
24932// String returns the string representation
24933func (s DescribeInstancePatchStatesOutput) String() string {
24934	return awsutil.Prettify(s)
24935}
24936
24937// GoString returns the string representation
24938func (s DescribeInstancePatchStatesOutput) GoString() string {
24939	return s.String()
24940}
24941
24942// SetInstancePatchStates sets the InstancePatchStates field's value.
24943func (s *DescribeInstancePatchStatesOutput) SetInstancePatchStates(v []*InstancePatchState) *DescribeInstancePatchStatesOutput {
24944	s.InstancePatchStates = v
24945	return s
24946}
24947
24948// SetNextToken sets the NextToken field's value.
24949func (s *DescribeInstancePatchStatesOutput) SetNextToken(v string) *DescribeInstancePatchStatesOutput {
24950	s.NextToken = &v
24951	return s
24952}
24953
24954type DescribeInstancePatchesInput struct {
24955	_ struct{} `type:"structure"`
24956
24957	// Each element in the array is a structure containing a key-value pair.
24958	//
24959	// Supported keys for DescribeInstancePatchesinclude the following:
24960	//
24961	//    * Classification Sample values: Security | SecurityUpdates
24962	//
24963	//    * KBId Sample values: KB4480056 | java-1.7.0-openjdk.x86_64
24964	//
24965	//    * Severity Sample values: Important | Medium | Low
24966	//
24967	//    * State Sample values: Installed | InstalledOther | InstalledPendingReboot
24968	Filters []*PatchOrchestratorFilter `type:"list"`
24969
24970	// The ID of the instance whose patch state information should be retrieved.
24971	//
24972	// InstanceId is a required field
24973	InstanceId *string `type:"string" required:"true"`
24974
24975	// The maximum number of patches to return (per page).
24976	MaxResults *int64 `min:"10" type:"integer"`
24977
24978	// The token for the next set of items to return. (You received this token from
24979	// a previous call.)
24980	NextToken *string `type:"string"`
24981}
24982
24983// String returns the string representation
24984func (s DescribeInstancePatchesInput) String() string {
24985	return awsutil.Prettify(s)
24986}
24987
24988// GoString returns the string representation
24989func (s DescribeInstancePatchesInput) GoString() string {
24990	return s.String()
24991}
24992
24993// Validate inspects the fields of the type to determine if they are valid.
24994func (s *DescribeInstancePatchesInput) Validate() error {
24995	invalidParams := request.ErrInvalidParams{Context: "DescribeInstancePatchesInput"}
24996	if s.InstanceId == nil {
24997		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
24998	}
24999	if s.MaxResults != nil && *s.MaxResults < 10 {
25000		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
25001	}
25002	if s.Filters != nil {
25003		for i, v := range s.Filters {
25004			if v == nil {
25005				continue
25006			}
25007			if err := v.Validate(); err != nil {
25008				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
25009			}
25010		}
25011	}
25012
25013	if invalidParams.Len() > 0 {
25014		return invalidParams
25015	}
25016	return nil
25017}
25018
25019// SetFilters sets the Filters field's value.
25020func (s *DescribeInstancePatchesInput) SetFilters(v []*PatchOrchestratorFilter) *DescribeInstancePatchesInput {
25021	s.Filters = v
25022	return s
25023}
25024
25025// SetInstanceId sets the InstanceId field's value.
25026func (s *DescribeInstancePatchesInput) SetInstanceId(v string) *DescribeInstancePatchesInput {
25027	s.InstanceId = &v
25028	return s
25029}
25030
25031// SetMaxResults sets the MaxResults field's value.
25032func (s *DescribeInstancePatchesInput) SetMaxResults(v int64) *DescribeInstancePatchesInput {
25033	s.MaxResults = &v
25034	return s
25035}
25036
25037// SetNextToken sets the NextToken field's value.
25038func (s *DescribeInstancePatchesInput) SetNextToken(v string) *DescribeInstancePatchesInput {
25039	s.NextToken = &v
25040	return s
25041}
25042
25043type DescribeInstancePatchesOutput struct {
25044	_ struct{} `type:"structure"`
25045
25046	// The token to use when requesting the next set of items. If there are no additional
25047	// items to return, the string is empty.
25048	NextToken *string `type:"string"`
25049
25050	// Each entry in the array is a structure containing:
25051	//
25052	//    * Title (string)
25053	//
25054	//    * KBId (string)
25055	//
25056	//    * Classification (string)
25057	//
25058	//    * Severity (string)
25059	//
25060	//    * State (string, such as "INSTALLED" or "FAILED")
25061	//
25062	//    * InstalledTime (DateTime)
25063	//
25064	//    * InstalledBy (string)
25065	Patches []*PatchComplianceData `type:"list"`
25066}
25067
25068// String returns the string representation
25069func (s DescribeInstancePatchesOutput) String() string {
25070	return awsutil.Prettify(s)
25071}
25072
25073// GoString returns the string representation
25074func (s DescribeInstancePatchesOutput) GoString() string {
25075	return s.String()
25076}
25077
25078// SetNextToken sets the NextToken field's value.
25079func (s *DescribeInstancePatchesOutput) SetNextToken(v string) *DescribeInstancePatchesOutput {
25080	s.NextToken = &v
25081	return s
25082}
25083
25084// SetPatches sets the Patches field's value.
25085func (s *DescribeInstancePatchesOutput) SetPatches(v []*PatchComplianceData) *DescribeInstancePatchesOutput {
25086	s.Patches = v
25087	return s
25088}
25089
25090type DescribeInventoryDeletionsInput struct {
25091	_ struct{} `type:"structure"`
25092
25093	// Specify the delete inventory ID for which you want information. This ID was
25094	// returned by the DeleteInventory operation.
25095	DeletionId *string `type:"string"`
25096
25097	// The maximum number of items to return for this call. The call also returns
25098	// a token that you can specify in a subsequent call to get the next set of
25099	// results.
25100	MaxResults *int64 `min:"1" type:"integer"`
25101
25102	// A token to start the list. Use this token to get the next set of results.
25103	NextToken *string `type:"string"`
25104}
25105
25106// String returns the string representation
25107func (s DescribeInventoryDeletionsInput) String() string {
25108	return awsutil.Prettify(s)
25109}
25110
25111// GoString returns the string representation
25112func (s DescribeInventoryDeletionsInput) GoString() string {
25113	return s.String()
25114}
25115
25116// Validate inspects the fields of the type to determine if they are valid.
25117func (s *DescribeInventoryDeletionsInput) Validate() error {
25118	invalidParams := request.ErrInvalidParams{Context: "DescribeInventoryDeletionsInput"}
25119	if s.MaxResults != nil && *s.MaxResults < 1 {
25120		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
25121	}
25122
25123	if invalidParams.Len() > 0 {
25124		return invalidParams
25125	}
25126	return nil
25127}
25128
25129// SetDeletionId sets the DeletionId field's value.
25130func (s *DescribeInventoryDeletionsInput) SetDeletionId(v string) *DescribeInventoryDeletionsInput {
25131	s.DeletionId = &v
25132	return s
25133}
25134
25135// SetMaxResults sets the MaxResults field's value.
25136func (s *DescribeInventoryDeletionsInput) SetMaxResults(v int64) *DescribeInventoryDeletionsInput {
25137	s.MaxResults = &v
25138	return s
25139}
25140
25141// SetNextToken sets the NextToken field's value.
25142func (s *DescribeInventoryDeletionsInput) SetNextToken(v string) *DescribeInventoryDeletionsInput {
25143	s.NextToken = &v
25144	return s
25145}
25146
25147type DescribeInventoryDeletionsOutput struct {
25148	_ struct{} `type:"structure"`
25149
25150	// A list of status items for deleted inventory.
25151	InventoryDeletions []*InventoryDeletionStatusItem `type:"list"`
25152
25153	// The token for the next set of items to return. Use this token to get the
25154	// next set of results.
25155	NextToken *string `type:"string"`
25156}
25157
25158// String returns the string representation
25159func (s DescribeInventoryDeletionsOutput) String() string {
25160	return awsutil.Prettify(s)
25161}
25162
25163// GoString returns the string representation
25164func (s DescribeInventoryDeletionsOutput) GoString() string {
25165	return s.String()
25166}
25167
25168// SetInventoryDeletions sets the InventoryDeletions field's value.
25169func (s *DescribeInventoryDeletionsOutput) SetInventoryDeletions(v []*InventoryDeletionStatusItem) *DescribeInventoryDeletionsOutput {
25170	s.InventoryDeletions = v
25171	return s
25172}
25173
25174// SetNextToken sets the NextToken field's value.
25175func (s *DescribeInventoryDeletionsOutput) SetNextToken(v string) *DescribeInventoryDeletionsOutput {
25176	s.NextToken = &v
25177	return s
25178}
25179
25180type DescribeMaintenanceWindowExecutionTaskInvocationsInput struct {
25181	_ struct{} `type:"structure"`
25182
25183	// Optional filters used to scope down the returned task invocations. The supported
25184	// filter key is STATUS with the corresponding values PENDING, IN_PROGRESS,
25185	// SUCCESS, FAILED, TIMED_OUT, CANCELLING, and CANCELLED.
25186	Filters []*MaintenanceWindowFilter `type:"list"`
25187
25188	// The maximum number of items to return for this call. The call also returns
25189	// a token that you can specify in a subsequent call to get the next set of
25190	// results.
25191	MaxResults *int64 `min:"10" type:"integer"`
25192
25193	// The token for the next set of items to return. (You received this token from
25194	// a previous call.)
25195	NextToken *string `type:"string"`
25196
25197	// The ID of the specific task in the maintenance window task that should be
25198	// retrieved.
25199	//
25200	// TaskId is a required field
25201	TaskId *string `min:"36" type:"string" required:"true"`
25202
25203	// The ID of the maintenance window execution the task is part of.
25204	//
25205	// WindowExecutionId is a required field
25206	WindowExecutionId *string `min:"36" type:"string" required:"true"`
25207}
25208
25209// String returns the string representation
25210func (s DescribeMaintenanceWindowExecutionTaskInvocationsInput) String() string {
25211	return awsutil.Prettify(s)
25212}
25213
25214// GoString returns the string representation
25215func (s DescribeMaintenanceWindowExecutionTaskInvocationsInput) GoString() string {
25216	return s.String()
25217}
25218
25219// Validate inspects the fields of the type to determine if they are valid.
25220func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) Validate() error {
25221	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowExecutionTaskInvocationsInput"}
25222	if s.MaxResults != nil && *s.MaxResults < 10 {
25223		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
25224	}
25225	if s.TaskId == nil {
25226		invalidParams.Add(request.NewErrParamRequired("TaskId"))
25227	}
25228	if s.TaskId != nil && len(*s.TaskId) < 36 {
25229		invalidParams.Add(request.NewErrParamMinLen("TaskId", 36))
25230	}
25231	if s.WindowExecutionId == nil {
25232		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
25233	}
25234	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
25235		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
25236	}
25237	if s.Filters != nil {
25238		for i, v := range s.Filters {
25239			if v == nil {
25240				continue
25241			}
25242			if err := v.Validate(); err != nil {
25243				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
25244			}
25245		}
25246	}
25247
25248	if invalidParams.Len() > 0 {
25249		return invalidParams
25250	}
25251	return nil
25252}
25253
25254// SetFilters sets the Filters field's value.
25255func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
25256	s.Filters = v
25257	return s
25258}
25259
25260// SetMaxResults sets the MaxResults field's value.
25261func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
25262	s.MaxResults = &v
25263	return s
25264}
25265
25266// SetNextToken sets the NextToken field's value.
25267func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
25268	s.NextToken = &v
25269	return s
25270}
25271
25272// SetTaskId sets the TaskId field's value.
25273func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetTaskId(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
25274	s.TaskId = &v
25275	return s
25276}
25277
25278// SetWindowExecutionId sets the WindowExecutionId field's value.
25279func (s *DescribeMaintenanceWindowExecutionTaskInvocationsInput) SetWindowExecutionId(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsInput {
25280	s.WindowExecutionId = &v
25281	return s
25282}
25283
25284type DescribeMaintenanceWindowExecutionTaskInvocationsOutput struct {
25285	_ struct{} `type:"structure"`
25286
25287	// The token to use when requesting the next set of items. If there are no additional
25288	// items to return, the string is empty.
25289	NextToken *string `type:"string"`
25290
25291	// Information about the task invocation results per invocation.
25292	WindowExecutionTaskInvocationIdentities []*MaintenanceWindowExecutionTaskInvocationIdentity `type:"list"`
25293}
25294
25295// String returns the string representation
25296func (s DescribeMaintenanceWindowExecutionTaskInvocationsOutput) String() string {
25297	return awsutil.Prettify(s)
25298}
25299
25300// GoString returns the string representation
25301func (s DescribeMaintenanceWindowExecutionTaskInvocationsOutput) GoString() string {
25302	return s.String()
25303}
25304
25305// SetNextToken sets the NextToken field's value.
25306func (s *DescribeMaintenanceWindowExecutionTaskInvocationsOutput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTaskInvocationsOutput {
25307	s.NextToken = &v
25308	return s
25309}
25310
25311// SetWindowExecutionTaskInvocationIdentities sets the WindowExecutionTaskInvocationIdentities field's value.
25312func (s *DescribeMaintenanceWindowExecutionTaskInvocationsOutput) SetWindowExecutionTaskInvocationIdentities(v []*MaintenanceWindowExecutionTaskInvocationIdentity) *DescribeMaintenanceWindowExecutionTaskInvocationsOutput {
25313	s.WindowExecutionTaskInvocationIdentities = v
25314	return s
25315}
25316
25317type DescribeMaintenanceWindowExecutionTasksInput struct {
25318	_ struct{} `type:"structure"`
25319
25320	// Optional filters used to scope down the returned tasks. The supported filter
25321	// key is STATUS with the corresponding values PENDING, IN_PROGRESS, SUCCESS,
25322	// FAILED, TIMED_OUT, CANCELLING, and CANCELLED.
25323	Filters []*MaintenanceWindowFilter `type:"list"`
25324
25325	// The maximum number of items to return for this call. The call also returns
25326	// a token that you can specify in a subsequent call to get the next set of
25327	// results.
25328	MaxResults *int64 `min:"10" type:"integer"`
25329
25330	// The token for the next set of items to return. (You received this token from
25331	// a previous call.)
25332	NextToken *string `type:"string"`
25333
25334	// The ID of the maintenance window execution whose task executions should be
25335	// retrieved.
25336	//
25337	// WindowExecutionId is a required field
25338	WindowExecutionId *string `min:"36" type:"string" required:"true"`
25339}
25340
25341// String returns the string representation
25342func (s DescribeMaintenanceWindowExecutionTasksInput) String() string {
25343	return awsutil.Prettify(s)
25344}
25345
25346// GoString returns the string representation
25347func (s DescribeMaintenanceWindowExecutionTasksInput) GoString() string {
25348	return s.String()
25349}
25350
25351// Validate inspects the fields of the type to determine if they are valid.
25352func (s *DescribeMaintenanceWindowExecutionTasksInput) Validate() error {
25353	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowExecutionTasksInput"}
25354	if s.MaxResults != nil && *s.MaxResults < 10 {
25355		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
25356	}
25357	if s.WindowExecutionId == nil {
25358		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
25359	}
25360	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
25361		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
25362	}
25363	if s.Filters != nil {
25364		for i, v := range s.Filters {
25365			if v == nil {
25366				continue
25367			}
25368			if err := v.Validate(); err != nil {
25369				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
25370			}
25371		}
25372	}
25373
25374	if invalidParams.Len() > 0 {
25375		return invalidParams
25376	}
25377	return nil
25378}
25379
25380// SetFilters sets the Filters field's value.
25381func (s *DescribeMaintenanceWindowExecutionTasksInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowExecutionTasksInput {
25382	s.Filters = v
25383	return s
25384}
25385
25386// SetMaxResults sets the MaxResults field's value.
25387func (s *DescribeMaintenanceWindowExecutionTasksInput) SetMaxResults(v int64) *DescribeMaintenanceWindowExecutionTasksInput {
25388	s.MaxResults = &v
25389	return s
25390}
25391
25392// SetNextToken sets the NextToken field's value.
25393func (s *DescribeMaintenanceWindowExecutionTasksInput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTasksInput {
25394	s.NextToken = &v
25395	return s
25396}
25397
25398// SetWindowExecutionId sets the WindowExecutionId field's value.
25399func (s *DescribeMaintenanceWindowExecutionTasksInput) SetWindowExecutionId(v string) *DescribeMaintenanceWindowExecutionTasksInput {
25400	s.WindowExecutionId = &v
25401	return s
25402}
25403
25404type DescribeMaintenanceWindowExecutionTasksOutput struct {
25405	_ struct{} `type:"structure"`
25406
25407	// The token to use when requesting the next set of items. If there are no additional
25408	// items to return, the string is empty.
25409	NextToken *string `type:"string"`
25410
25411	// Information about the task executions.
25412	WindowExecutionTaskIdentities []*MaintenanceWindowExecutionTaskIdentity `type:"list"`
25413}
25414
25415// String returns the string representation
25416func (s DescribeMaintenanceWindowExecutionTasksOutput) String() string {
25417	return awsutil.Prettify(s)
25418}
25419
25420// GoString returns the string representation
25421func (s DescribeMaintenanceWindowExecutionTasksOutput) GoString() string {
25422	return s.String()
25423}
25424
25425// SetNextToken sets the NextToken field's value.
25426func (s *DescribeMaintenanceWindowExecutionTasksOutput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionTasksOutput {
25427	s.NextToken = &v
25428	return s
25429}
25430
25431// SetWindowExecutionTaskIdentities sets the WindowExecutionTaskIdentities field's value.
25432func (s *DescribeMaintenanceWindowExecutionTasksOutput) SetWindowExecutionTaskIdentities(v []*MaintenanceWindowExecutionTaskIdentity) *DescribeMaintenanceWindowExecutionTasksOutput {
25433	s.WindowExecutionTaskIdentities = v
25434	return s
25435}
25436
25437type DescribeMaintenanceWindowExecutionsInput struct {
25438	_ struct{} `type:"structure"`
25439
25440	// Each entry in the array is a structure containing:
25441	//
25442	//    * Key. A string between 1 and 128 characters. Supported keys include ExecutedBefore
25443	//    and ExecutedAfter.
25444	//
25445	//    * Values. An array of strings, each between 1 and 256 characters. Supported
25446	//    values are date/time strings in a valid ISO 8601 date/time format, such
25447	//    as 2021-11-04T05:00:00Z.
25448	Filters []*MaintenanceWindowFilter `type:"list"`
25449
25450	// The maximum number of items to return for this call. The call also returns
25451	// a token that you can specify in a subsequent call to get the next set of
25452	// results.
25453	MaxResults *int64 `min:"10" type:"integer"`
25454
25455	// The token for the next set of items to return. (You received this token from
25456	// a previous call.)
25457	NextToken *string `type:"string"`
25458
25459	// The ID of the maintenance window whose executions should be retrieved.
25460	//
25461	// WindowId is a required field
25462	WindowId *string `min:"20" type:"string" required:"true"`
25463}
25464
25465// String returns the string representation
25466func (s DescribeMaintenanceWindowExecutionsInput) String() string {
25467	return awsutil.Prettify(s)
25468}
25469
25470// GoString returns the string representation
25471func (s DescribeMaintenanceWindowExecutionsInput) GoString() string {
25472	return s.String()
25473}
25474
25475// Validate inspects the fields of the type to determine if they are valid.
25476func (s *DescribeMaintenanceWindowExecutionsInput) Validate() error {
25477	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowExecutionsInput"}
25478	if s.MaxResults != nil && *s.MaxResults < 10 {
25479		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
25480	}
25481	if s.WindowId == nil {
25482		invalidParams.Add(request.NewErrParamRequired("WindowId"))
25483	}
25484	if s.WindowId != nil && len(*s.WindowId) < 20 {
25485		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
25486	}
25487	if s.Filters != nil {
25488		for i, v := range s.Filters {
25489			if v == nil {
25490				continue
25491			}
25492			if err := v.Validate(); err != nil {
25493				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
25494			}
25495		}
25496	}
25497
25498	if invalidParams.Len() > 0 {
25499		return invalidParams
25500	}
25501	return nil
25502}
25503
25504// SetFilters sets the Filters field's value.
25505func (s *DescribeMaintenanceWindowExecutionsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowExecutionsInput {
25506	s.Filters = v
25507	return s
25508}
25509
25510// SetMaxResults sets the MaxResults field's value.
25511func (s *DescribeMaintenanceWindowExecutionsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowExecutionsInput {
25512	s.MaxResults = &v
25513	return s
25514}
25515
25516// SetNextToken sets the NextToken field's value.
25517func (s *DescribeMaintenanceWindowExecutionsInput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionsInput {
25518	s.NextToken = &v
25519	return s
25520}
25521
25522// SetWindowId sets the WindowId field's value.
25523func (s *DescribeMaintenanceWindowExecutionsInput) SetWindowId(v string) *DescribeMaintenanceWindowExecutionsInput {
25524	s.WindowId = &v
25525	return s
25526}
25527
25528type DescribeMaintenanceWindowExecutionsOutput struct {
25529	_ struct{} `type:"structure"`
25530
25531	// The token to use when requesting the next set of items. If there are no additional
25532	// items to return, the string is empty.
25533	NextToken *string `type:"string"`
25534
25535	// Information about the maintenance window executions.
25536	WindowExecutions []*MaintenanceWindowExecution `type:"list"`
25537}
25538
25539// String returns the string representation
25540func (s DescribeMaintenanceWindowExecutionsOutput) String() string {
25541	return awsutil.Prettify(s)
25542}
25543
25544// GoString returns the string representation
25545func (s DescribeMaintenanceWindowExecutionsOutput) GoString() string {
25546	return s.String()
25547}
25548
25549// SetNextToken sets the NextToken field's value.
25550func (s *DescribeMaintenanceWindowExecutionsOutput) SetNextToken(v string) *DescribeMaintenanceWindowExecutionsOutput {
25551	s.NextToken = &v
25552	return s
25553}
25554
25555// SetWindowExecutions sets the WindowExecutions field's value.
25556func (s *DescribeMaintenanceWindowExecutionsOutput) SetWindowExecutions(v []*MaintenanceWindowExecution) *DescribeMaintenanceWindowExecutionsOutput {
25557	s.WindowExecutions = v
25558	return s
25559}
25560
25561type DescribeMaintenanceWindowScheduleInput struct {
25562	_ struct{} `type:"structure"`
25563
25564	// Filters used to limit the range of results. For example, you can limit maintenance
25565	// window executions to only those scheduled before or after a certain date
25566	// and time.
25567	Filters []*PatchOrchestratorFilter `type:"list"`
25568
25569	// The maximum number of items to return for this call. The call also returns
25570	// a token that you can specify in a subsequent call to get the next set of
25571	// results.
25572	MaxResults *int64 `min:"1" type:"integer"`
25573
25574	// The token for the next set of items to return. (You received this token from
25575	// a previous call.)
25576	NextToken *string `type:"string"`
25577
25578	// The type of resource you want to retrieve information about. For example,
25579	// INSTANCE.
25580	ResourceType *string `type:"string" enum:"MaintenanceWindowResourceType"`
25581
25582	// The instance ID or key-value pair to retrieve information about.
25583	Targets []*Target `type:"list"`
25584
25585	// The ID of the maintenance window to retrieve information about.
25586	WindowId *string `min:"20" type:"string"`
25587}
25588
25589// String returns the string representation
25590func (s DescribeMaintenanceWindowScheduleInput) String() string {
25591	return awsutil.Prettify(s)
25592}
25593
25594// GoString returns the string representation
25595func (s DescribeMaintenanceWindowScheduleInput) GoString() string {
25596	return s.String()
25597}
25598
25599// Validate inspects the fields of the type to determine if they are valid.
25600func (s *DescribeMaintenanceWindowScheduleInput) Validate() error {
25601	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowScheduleInput"}
25602	if s.MaxResults != nil && *s.MaxResults < 1 {
25603		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
25604	}
25605	if s.WindowId != nil && len(*s.WindowId) < 20 {
25606		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
25607	}
25608	if s.Filters != nil {
25609		for i, v := range s.Filters {
25610			if v == nil {
25611				continue
25612			}
25613			if err := v.Validate(); err != nil {
25614				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
25615			}
25616		}
25617	}
25618	if s.Targets != nil {
25619		for i, v := range s.Targets {
25620			if v == nil {
25621				continue
25622			}
25623			if err := v.Validate(); err != nil {
25624				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
25625			}
25626		}
25627	}
25628
25629	if invalidParams.Len() > 0 {
25630		return invalidParams
25631	}
25632	return nil
25633}
25634
25635// SetFilters sets the Filters field's value.
25636func (s *DescribeMaintenanceWindowScheduleInput) SetFilters(v []*PatchOrchestratorFilter) *DescribeMaintenanceWindowScheduleInput {
25637	s.Filters = v
25638	return s
25639}
25640
25641// SetMaxResults sets the MaxResults field's value.
25642func (s *DescribeMaintenanceWindowScheduleInput) SetMaxResults(v int64) *DescribeMaintenanceWindowScheduleInput {
25643	s.MaxResults = &v
25644	return s
25645}
25646
25647// SetNextToken sets the NextToken field's value.
25648func (s *DescribeMaintenanceWindowScheduleInput) SetNextToken(v string) *DescribeMaintenanceWindowScheduleInput {
25649	s.NextToken = &v
25650	return s
25651}
25652
25653// SetResourceType sets the ResourceType field's value.
25654func (s *DescribeMaintenanceWindowScheduleInput) SetResourceType(v string) *DescribeMaintenanceWindowScheduleInput {
25655	s.ResourceType = &v
25656	return s
25657}
25658
25659// SetTargets sets the Targets field's value.
25660func (s *DescribeMaintenanceWindowScheduleInput) SetTargets(v []*Target) *DescribeMaintenanceWindowScheduleInput {
25661	s.Targets = v
25662	return s
25663}
25664
25665// SetWindowId sets the WindowId field's value.
25666func (s *DescribeMaintenanceWindowScheduleInput) SetWindowId(v string) *DescribeMaintenanceWindowScheduleInput {
25667	s.WindowId = &v
25668	return s
25669}
25670
25671type DescribeMaintenanceWindowScheduleOutput struct {
25672	_ struct{} `type:"structure"`
25673
25674	// The token for the next set of items to return. (You use this token in the
25675	// next call.)
25676	NextToken *string `type:"string"`
25677
25678	// Information about maintenance window executions scheduled for the specified
25679	// time range.
25680	ScheduledWindowExecutions []*ScheduledWindowExecution `type:"list"`
25681}
25682
25683// String returns the string representation
25684func (s DescribeMaintenanceWindowScheduleOutput) String() string {
25685	return awsutil.Prettify(s)
25686}
25687
25688// GoString returns the string representation
25689func (s DescribeMaintenanceWindowScheduleOutput) GoString() string {
25690	return s.String()
25691}
25692
25693// SetNextToken sets the NextToken field's value.
25694func (s *DescribeMaintenanceWindowScheduleOutput) SetNextToken(v string) *DescribeMaintenanceWindowScheduleOutput {
25695	s.NextToken = &v
25696	return s
25697}
25698
25699// SetScheduledWindowExecutions sets the ScheduledWindowExecutions field's value.
25700func (s *DescribeMaintenanceWindowScheduleOutput) SetScheduledWindowExecutions(v []*ScheduledWindowExecution) *DescribeMaintenanceWindowScheduleOutput {
25701	s.ScheduledWindowExecutions = v
25702	return s
25703}
25704
25705type DescribeMaintenanceWindowTargetsInput struct {
25706	_ struct{} `type:"structure"`
25707
25708	// Optional filters that can be used to narrow down the scope of the returned
25709	// window targets. The supported filter keys are Type, WindowTargetId, and OwnerInformation.
25710	Filters []*MaintenanceWindowFilter `type:"list"`
25711
25712	// The maximum number of items to return for this call. The call also returns
25713	// a token that you can specify in a subsequent call to get the next set of
25714	// results.
25715	MaxResults *int64 `min:"10" type:"integer"`
25716
25717	// The token for the next set of items to return. (You received this token from
25718	// a previous call.)
25719	NextToken *string `type:"string"`
25720
25721	// The ID of the maintenance window whose targets should be retrieved.
25722	//
25723	// WindowId is a required field
25724	WindowId *string `min:"20" type:"string" required:"true"`
25725}
25726
25727// String returns the string representation
25728func (s DescribeMaintenanceWindowTargetsInput) String() string {
25729	return awsutil.Prettify(s)
25730}
25731
25732// GoString returns the string representation
25733func (s DescribeMaintenanceWindowTargetsInput) GoString() string {
25734	return s.String()
25735}
25736
25737// Validate inspects the fields of the type to determine if they are valid.
25738func (s *DescribeMaintenanceWindowTargetsInput) Validate() error {
25739	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowTargetsInput"}
25740	if s.MaxResults != nil && *s.MaxResults < 10 {
25741		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
25742	}
25743	if s.WindowId == nil {
25744		invalidParams.Add(request.NewErrParamRequired("WindowId"))
25745	}
25746	if s.WindowId != nil && len(*s.WindowId) < 20 {
25747		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
25748	}
25749	if s.Filters != nil {
25750		for i, v := range s.Filters {
25751			if v == nil {
25752				continue
25753			}
25754			if err := v.Validate(); err != nil {
25755				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
25756			}
25757		}
25758	}
25759
25760	if invalidParams.Len() > 0 {
25761		return invalidParams
25762	}
25763	return nil
25764}
25765
25766// SetFilters sets the Filters field's value.
25767func (s *DescribeMaintenanceWindowTargetsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowTargetsInput {
25768	s.Filters = v
25769	return s
25770}
25771
25772// SetMaxResults sets the MaxResults field's value.
25773func (s *DescribeMaintenanceWindowTargetsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowTargetsInput {
25774	s.MaxResults = &v
25775	return s
25776}
25777
25778// SetNextToken sets the NextToken field's value.
25779func (s *DescribeMaintenanceWindowTargetsInput) SetNextToken(v string) *DescribeMaintenanceWindowTargetsInput {
25780	s.NextToken = &v
25781	return s
25782}
25783
25784// SetWindowId sets the WindowId field's value.
25785func (s *DescribeMaintenanceWindowTargetsInput) SetWindowId(v string) *DescribeMaintenanceWindowTargetsInput {
25786	s.WindowId = &v
25787	return s
25788}
25789
25790type DescribeMaintenanceWindowTargetsOutput struct {
25791	_ struct{} `type:"structure"`
25792
25793	// The token to use when requesting the next set of items. If there are no additional
25794	// items to return, the string is empty.
25795	NextToken *string `type:"string"`
25796
25797	// Information about the targets in the maintenance window.
25798	Targets []*MaintenanceWindowTarget `type:"list"`
25799}
25800
25801// String returns the string representation
25802func (s DescribeMaintenanceWindowTargetsOutput) String() string {
25803	return awsutil.Prettify(s)
25804}
25805
25806// GoString returns the string representation
25807func (s DescribeMaintenanceWindowTargetsOutput) GoString() string {
25808	return s.String()
25809}
25810
25811// SetNextToken sets the NextToken field's value.
25812func (s *DescribeMaintenanceWindowTargetsOutput) SetNextToken(v string) *DescribeMaintenanceWindowTargetsOutput {
25813	s.NextToken = &v
25814	return s
25815}
25816
25817// SetTargets sets the Targets field's value.
25818func (s *DescribeMaintenanceWindowTargetsOutput) SetTargets(v []*MaintenanceWindowTarget) *DescribeMaintenanceWindowTargetsOutput {
25819	s.Targets = v
25820	return s
25821}
25822
25823type DescribeMaintenanceWindowTasksInput struct {
25824	_ struct{} `type:"structure"`
25825
25826	// Optional filters used to narrow down the scope of the returned tasks. The
25827	// supported filter keys are WindowTaskId, TaskArn, Priority, and TaskType.
25828	Filters []*MaintenanceWindowFilter `type:"list"`
25829
25830	// The maximum number of items to return for this call. The call also returns
25831	// a token that you can specify in a subsequent call to get the next set of
25832	// results.
25833	MaxResults *int64 `min:"10" type:"integer"`
25834
25835	// The token for the next set of items to return. (You received this token from
25836	// a previous call.)
25837	NextToken *string `type:"string"`
25838
25839	// The ID of the maintenance window whose tasks should be retrieved.
25840	//
25841	// WindowId is a required field
25842	WindowId *string `min:"20" type:"string" required:"true"`
25843}
25844
25845// String returns the string representation
25846func (s DescribeMaintenanceWindowTasksInput) String() string {
25847	return awsutil.Prettify(s)
25848}
25849
25850// GoString returns the string representation
25851func (s DescribeMaintenanceWindowTasksInput) GoString() string {
25852	return s.String()
25853}
25854
25855// Validate inspects the fields of the type to determine if they are valid.
25856func (s *DescribeMaintenanceWindowTasksInput) Validate() error {
25857	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowTasksInput"}
25858	if s.MaxResults != nil && *s.MaxResults < 10 {
25859		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
25860	}
25861	if s.WindowId == nil {
25862		invalidParams.Add(request.NewErrParamRequired("WindowId"))
25863	}
25864	if s.WindowId != nil && len(*s.WindowId) < 20 {
25865		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
25866	}
25867	if s.Filters != nil {
25868		for i, v := range s.Filters {
25869			if v == nil {
25870				continue
25871			}
25872			if err := v.Validate(); err != nil {
25873				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
25874			}
25875		}
25876	}
25877
25878	if invalidParams.Len() > 0 {
25879		return invalidParams
25880	}
25881	return nil
25882}
25883
25884// SetFilters sets the Filters field's value.
25885func (s *DescribeMaintenanceWindowTasksInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowTasksInput {
25886	s.Filters = v
25887	return s
25888}
25889
25890// SetMaxResults sets the MaxResults field's value.
25891func (s *DescribeMaintenanceWindowTasksInput) SetMaxResults(v int64) *DescribeMaintenanceWindowTasksInput {
25892	s.MaxResults = &v
25893	return s
25894}
25895
25896// SetNextToken sets the NextToken field's value.
25897func (s *DescribeMaintenanceWindowTasksInput) SetNextToken(v string) *DescribeMaintenanceWindowTasksInput {
25898	s.NextToken = &v
25899	return s
25900}
25901
25902// SetWindowId sets the WindowId field's value.
25903func (s *DescribeMaintenanceWindowTasksInput) SetWindowId(v string) *DescribeMaintenanceWindowTasksInput {
25904	s.WindowId = &v
25905	return s
25906}
25907
25908type DescribeMaintenanceWindowTasksOutput struct {
25909	_ struct{} `type:"structure"`
25910
25911	// The token to use when requesting the next set of items. If there are no additional
25912	// items to return, the string is empty.
25913	NextToken *string `type:"string"`
25914
25915	// Information about the tasks in the maintenance window.
25916	Tasks []*MaintenanceWindowTask `type:"list"`
25917}
25918
25919// String returns the string representation
25920func (s DescribeMaintenanceWindowTasksOutput) String() string {
25921	return awsutil.Prettify(s)
25922}
25923
25924// GoString returns the string representation
25925func (s DescribeMaintenanceWindowTasksOutput) GoString() string {
25926	return s.String()
25927}
25928
25929// SetNextToken sets the NextToken field's value.
25930func (s *DescribeMaintenanceWindowTasksOutput) SetNextToken(v string) *DescribeMaintenanceWindowTasksOutput {
25931	s.NextToken = &v
25932	return s
25933}
25934
25935// SetTasks sets the Tasks field's value.
25936func (s *DescribeMaintenanceWindowTasksOutput) SetTasks(v []*MaintenanceWindowTask) *DescribeMaintenanceWindowTasksOutput {
25937	s.Tasks = v
25938	return s
25939}
25940
25941type DescribeMaintenanceWindowsForTargetInput struct {
25942	_ struct{} `type:"structure"`
25943
25944	// The maximum number of items to return for this call. The call also returns
25945	// a token that you can specify in a subsequent call to get the next set of
25946	// results.
25947	MaxResults *int64 `min:"1" type:"integer"`
25948
25949	// The token for the next set of items to return. (You received this token from
25950	// a previous call.)
25951	NextToken *string `type:"string"`
25952
25953	// The type of resource you want to retrieve information about. For example,
25954	// INSTANCE.
25955	//
25956	// ResourceType is a required field
25957	ResourceType *string `type:"string" required:"true" enum:"MaintenanceWindowResourceType"`
25958
25959	// The instance ID or key-value pair to retrieve information about.
25960	//
25961	// Targets is a required field
25962	Targets []*Target `type:"list" required:"true"`
25963}
25964
25965// String returns the string representation
25966func (s DescribeMaintenanceWindowsForTargetInput) String() string {
25967	return awsutil.Prettify(s)
25968}
25969
25970// GoString returns the string representation
25971func (s DescribeMaintenanceWindowsForTargetInput) GoString() string {
25972	return s.String()
25973}
25974
25975// Validate inspects the fields of the type to determine if they are valid.
25976func (s *DescribeMaintenanceWindowsForTargetInput) Validate() error {
25977	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowsForTargetInput"}
25978	if s.MaxResults != nil && *s.MaxResults < 1 {
25979		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
25980	}
25981	if s.ResourceType == nil {
25982		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
25983	}
25984	if s.Targets == nil {
25985		invalidParams.Add(request.NewErrParamRequired("Targets"))
25986	}
25987	if s.Targets != nil {
25988		for i, v := range s.Targets {
25989			if v == nil {
25990				continue
25991			}
25992			if err := v.Validate(); err != nil {
25993				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
25994			}
25995		}
25996	}
25997
25998	if invalidParams.Len() > 0 {
25999		return invalidParams
26000	}
26001	return nil
26002}
26003
26004// SetMaxResults sets the MaxResults field's value.
26005func (s *DescribeMaintenanceWindowsForTargetInput) SetMaxResults(v int64) *DescribeMaintenanceWindowsForTargetInput {
26006	s.MaxResults = &v
26007	return s
26008}
26009
26010// SetNextToken sets the NextToken field's value.
26011func (s *DescribeMaintenanceWindowsForTargetInput) SetNextToken(v string) *DescribeMaintenanceWindowsForTargetInput {
26012	s.NextToken = &v
26013	return s
26014}
26015
26016// SetResourceType sets the ResourceType field's value.
26017func (s *DescribeMaintenanceWindowsForTargetInput) SetResourceType(v string) *DescribeMaintenanceWindowsForTargetInput {
26018	s.ResourceType = &v
26019	return s
26020}
26021
26022// SetTargets sets the Targets field's value.
26023func (s *DescribeMaintenanceWindowsForTargetInput) SetTargets(v []*Target) *DescribeMaintenanceWindowsForTargetInput {
26024	s.Targets = v
26025	return s
26026}
26027
26028type DescribeMaintenanceWindowsForTargetOutput struct {
26029	_ struct{} `type:"structure"`
26030
26031	// The token for the next set of items to return. (You use this token in the
26032	// next call.)
26033	NextToken *string `type:"string"`
26034
26035	// Information about the maintenance window targets and tasks an instance is
26036	// associated with.
26037	WindowIdentities []*MaintenanceWindowIdentityForTarget `type:"list"`
26038}
26039
26040// String returns the string representation
26041func (s DescribeMaintenanceWindowsForTargetOutput) String() string {
26042	return awsutil.Prettify(s)
26043}
26044
26045// GoString returns the string representation
26046func (s DescribeMaintenanceWindowsForTargetOutput) GoString() string {
26047	return s.String()
26048}
26049
26050// SetNextToken sets the NextToken field's value.
26051func (s *DescribeMaintenanceWindowsForTargetOutput) SetNextToken(v string) *DescribeMaintenanceWindowsForTargetOutput {
26052	s.NextToken = &v
26053	return s
26054}
26055
26056// SetWindowIdentities sets the WindowIdentities field's value.
26057func (s *DescribeMaintenanceWindowsForTargetOutput) SetWindowIdentities(v []*MaintenanceWindowIdentityForTarget) *DescribeMaintenanceWindowsForTargetOutput {
26058	s.WindowIdentities = v
26059	return s
26060}
26061
26062type DescribeMaintenanceWindowsInput struct {
26063	_ struct{} `type:"structure"`
26064
26065	// Optional filters used to narrow down the scope of the returned maintenance
26066	// windows. Supported filter keys are Name and Enabled. For example, Name=MyMaintenanceWindow
26067	// and Enabled=True.
26068	Filters []*MaintenanceWindowFilter `type:"list"`
26069
26070	// The maximum number of items to return for this call. The call also returns
26071	// a token that you can specify in a subsequent call to get the next set of
26072	// results.
26073	MaxResults *int64 `min:"10" type:"integer"`
26074
26075	// The token for the next set of items to return. (You received this token from
26076	// a previous call.)
26077	NextToken *string `type:"string"`
26078}
26079
26080// String returns the string representation
26081func (s DescribeMaintenanceWindowsInput) String() string {
26082	return awsutil.Prettify(s)
26083}
26084
26085// GoString returns the string representation
26086func (s DescribeMaintenanceWindowsInput) GoString() string {
26087	return s.String()
26088}
26089
26090// Validate inspects the fields of the type to determine if they are valid.
26091func (s *DescribeMaintenanceWindowsInput) Validate() error {
26092	invalidParams := request.ErrInvalidParams{Context: "DescribeMaintenanceWindowsInput"}
26093	if s.MaxResults != nil && *s.MaxResults < 10 {
26094		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 10))
26095	}
26096	if s.Filters != nil {
26097		for i, v := range s.Filters {
26098			if v == nil {
26099				continue
26100			}
26101			if err := v.Validate(); err != nil {
26102				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
26103			}
26104		}
26105	}
26106
26107	if invalidParams.Len() > 0 {
26108		return invalidParams
26109	}
26110	return nil
26111}
26112
26113// SetFilters sets the Filters field's value.
26114func (s *DescribeMaintenanceWindowsInput) SetFilters(v []*MaintenanceWindowFilter) *DescribeMaintenanceWindowsInput {
26115	s.Filters = v
26116	return s
26117}
26118
26119// SetMaxResults sets the MaxResults field's value.
26120func (s *DescribeMaintenanceWindowsInput) SetMaxResults(v int64) *DescribeMaintenanceWindowsInput {
26121	s.MaxResults = &v
26122	return s
26123}
26124
26125// SetNextToken sets the NextToken field's value.
26126func (s *DescribeMaintenanceWindowsInput) SetNextToken(v string) *DescribeMaintenanceWindowsInput {
26127	s.NextToken = &v
26128	return s
26129}
26130
26131type DescribeMaintenanceWindowsOutput struct {
26132	_ struct{} `type:"structure"`
26133
26134	// The token to use when requesting the next set of items. If there are no additional
26135	// items to return, the string is empty.
26136	NextToken *string `type:"string"`
26137
26138	// Information about the maintenance windows.
26139	WindowIdentities []*MaintenanceWindowIdentity `type:"list"`
26140}
26141
26142// String returns the string representation
26143func (s DescribeMaintenanceWindowsOutput) String() string {
26144	return awsutil.Prettify(s)
26145}
26146
26147// GoString returns the string representation
26148func (s DescribeMaintenanceWindowsOutput) GoString() string {
26149	return s.String()
26150}
26151
26152// SetNextToken sets the NextToken field's value.
26153func (s *DescribeMaintenanceWindowsOutput) SetNextToken(v string) *DescribeMaintenanceWindowsOutput {
26154	s.NextToken = &v
26155	return s
26156}
26157
26158// SetWindowIdentities sets the WindowIdentities field's value.
26159func (s *DescribeMaintenanceWindowsOutput) SetWindowIdentities(v []*MaintenanceWindowIdentity) *DescribeMaintenanceWindowsOutput {
26160	s.WindowIdentities = v
26161	return s
26162}
26163
26164type DescribeOpsItemsInput struct {
26165	_ struct{} `type:"structure"`
26166
26167	// The maximum number of items to return for this call. The call also returns
26168	// a token that you can specify in a subsequent call to get the next set of
26169	// results.
26170	MaxResults *int64 `min:"1" type:"integer"`
26171
26172	// A token to start the list. Use this token to get the next set of results.
26173	NextToken *string `type:"string"`
26174
26175	// One or more filters to limit the response.
26176	//
26177	//    * Key: CreatedTime Operations: GreaterThan, LessThan
26178	//
26179	//    * Key: LastModifiedBy Operations: Contains, Equals
26180	//
26181	//    * Key: LastModifiedTime Operations: GreaterThan, LessThan
26182	//
26183	//    * Key: Priority Operations: Equals
26184	//
26185	//    * Key: Source Operations: Contains, Equals
26186	//
26187	//    * Key: Status Operations: Equals
26188	//
26189	//    * Key: Title* Operations: Equals,Contains
26190	//
26191	//    * Key: OperationalData** Operations: Equals
26192	//
26193	//    * Key: OperationalDataKey Operations: Equals
26194	//
26195	//    * Key: OperationalDataValue Operations: Equals, Contains
26196	//
26197	//    * Key: OpsItemId Operations: Equals
26198	//
26199	//    * Key: ResourceId Operations: Contains
26200	//
26201	//    * Key: AutomationId Operations: Equals
26202	//
26203	// *The Equals operator for Title matches the first 100 characters. If you specify
26204	// more than 100 characters, they system returns an error that the filter value
26205	// exceeds the length limit.
26206	//
26207	// **If you filter the response by using the OperationalData operator, specify
26208	// a key-value pair by using the following JSON format: {"key":"key_name","value":"a_value"}
26209	OpsItemFilters []*OpsItemFilter `type:"list"`
26210}
26211
26212// String returns the string representation
26213func (s DescribeOpsItemsInput) String() string {
26214	return awsutil.Prettify(s)
26215}
26216
26217// GoString returns the string representation
26218func (s DescribeOpsItemsInput) GoString() string {
26219	return s.String()
26220}
26221
26222// Validate inspects the fields of the type to determine if they are valid.
26223func (s *DescribeOpsItemsInput) Validate() error {
26224	invalidParams := request.ErrInvalidParams{Context: "DescribeOpsItemsInput"}
26225	if s.MaxResults != nil && *s.MaxResults < 1 {
26226		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
26227	}
26228	if s.OpsItemFilters != nil {
26229		for i, v := range s.OpsItemFilters {
26230			if v == nil {
26231				continue
26232			}
26233			if err := v.Validate(); err != nil {
26234				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OpsItemFilters", i), err.(request.ErrInvalidParams))
26235			}
26236		}
26237	}
26238
26239	if invalidParams.Len() > 0 {
26240		return invalidParams
26241	}
26242	return nil
26243}
26244
26245// SetMaxResults sets the MaxResults field's value.
26246func (s *DescribeOpsItemsInput) SetMaxResults(v int64) *DescribeOpsItemsInput {
26247	s.MaxResults = &v
26248	return s
26249}
26250
26251// SetNextToken sets the NextToken field's value.
26252func (s *DescribeOpsItemsInput) SetNextToken(v string) *DescribeOpsItemsInput {
26253	s.NextToken = &v
26254	return s
26255}
26256
26257// SetOpsItemFilters sets the OpsItemFilters field's value.
26258func (s *DescribeOpsItemsInput) SetOpsItemFilters(v []*OpsItemFilter) *DescribeOpsItemsInput {
26259	s.OpsItemFilters = v
26260	return s
26261}
26262
26263type DescribeOpsItemsOutput struct {
26264	_ struct{} `type:"structure"`
26265
26266	// The token for the next set of items to return. Use this token to get the
26267	// next set of results.
26268	NextToken *string `type:"string"`
26269
26270	// A list of OpsItems.
26271	OpsItemSummaries []*OpsItemSummary `type:"list"`
26272}
26273
26274// String returns the string representation
26275func (s DescribeOpsItemsOutput) String() string {
26276	return awsutil.Prettify(s)
26277}
26278
26279// GoString returns the string representation
26280func (s DescribeOpsItemsOutput) GoString() string {
26281	return s.String()
26282}
26283
26284// SetNextToken sets the NextToken field's value.
26285func (s *DescribeOpsItemsOutput) SetNextToken(v string) *DescribeOpsItemsOutput {
26286	s.NextToken = &v
26287	return s
26288}
26289
26290// SetOpsItemSummaries sets the OpsItemSummaries field's value.
26291func (s *DescribeOpsItemsOutput) SetOpsItemSummaries(v []*OpsItemSummary) *DescribeOpsItemsOutput {
26292	s.OpsItemSummaries = v
26293	return s
26294}
26295
26296type DescribeParametersInput struct {
26297	_ struct{} `type:"structure"`
26298
26299	// This data type is deprecated. Instead, use ParameterFilters.
26300	Filters []*ParametersFilter `type:"list"`
26301
26302	// The maximum number of items to return for this call. The call also returns
26303	// a token that you can specify in a subsequent call to get the next set of
26304	// results.
26305	MaxResults *int64 `min:"1" type:"integer"`
26306
26307	// The token for the next set of items to return. (You received this token from
26308	// a previous call.)
26309	NextToken *string `type:"string"`
26310
26311	// Filters to limit the request results.
26312	ParameterFilters []*ParameterStringFilter `type:"list"`
26313}
26314
26315// String returns the string representation
26316func (s DescribeParametersInput) String() string {
26317	return awsutil.Prettify(s)
26318}
26319
26320// GoString returns the string representation
26321func (s DescribeParametersInput) GoString() string {
26322	return s.String()
26323}
26324
26325// Validate inspects the fields of the type to determine if they are valid.
26326func (s *DescribeParametersInput) Validate() error {
26327	invalidParams := request.ErrInvalidParams{Context: "DescribeParametersInput"}
26328	if s.MaxResults != nil && *s.MaxResults < 1 {
26329		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
26330	}
26331	if s.Filters != nil {
26332		for i, v := range s.Filters {
26333			if v == nil {
26334				continue
26335			}
26336			if err := v.Validate(); err != nil {
26337				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
26338			}
26339		}
26340	}
26341	if s.ParameterFilters != nil {
26342		for i, v := range s.ParameterFilters {
26343			if v == nil {
26344				continue
26345			}
26346			if err := v.Validate(); err != nil {
26347				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterFilters", i), err.(request.ErrInvalidParams))
26348			}
26349		}
26350	}
26351
26352	if invalidParams.Len() > 0 {
26353		return invalidParams
26354	}
26355	return nil
26356}
26357
26358// SetFilters sets the Filters field's value.
26359func (s *DescribeParametersInput) SetFilters(v []*ParametersFilter) *DescribeParametersInput {
26360	s.Filters = v
26361	return s
26362}
26363
26364// SetMaxResults sets the MaxResults field's value.
26365func (s *DescribeParametersInput) SetMaxResults(v int64) *DescribeParametersInput {
26366	s.MaxResults = &v
26367	return s
26368}
26369
26370// SetNextToken sets the NextToken field's value.
26371func (s *DescribeParametersInput) SetNextToken(v string) *DescribeParametersInput {
26372	s.NextToken = &v
26373	return s
26374}
26375
26376// SetParameterFilters sets the ParameterFilters field's value.
26377func (s *DescribeParametersInput) SetParameterFilters(v []*ParameterStringFilter) *DescribeParametersInput {
26378	s.ParameterFilters = v
26379	return s
26380}
26381
26382type DescribeParametersOutput struct {
26383	_ struct{} `type:"structure"`
26384
26385	// The token to use when requesting the next set of items.
26386	NextToken *string `type:"string"`
26387
26388	// Parameters returned by the request.
26389	Parameters []*ParameterMetadata `type:"list"`
26390}
26391
26392// String returns the string representation
26393func (s DescribeParametersOutput) String() string {
26394	return awsutil.Prettify(s)
26395}
26396
26397// GoString returns the string representation
26398func (s DescribeParametersOutput) GoString() string {
26399	return s.String()
26400}
26401
26402// SetNextToken sets the NextToken field's value.
26403func (s *DescribeParametersOutput) SetNextToken(v string) *DescribeParametersOutput {
26404	s.NextToken = &v
26405	return s
26406}
26407
26408// SetParameters sets the Parameters field's value.
26409func (s *DescribeParametersOutput) SetParameters(v []*ParameterMetadata) *DescribeParametersOutput {
26410	s.Parameters = v
26411	return s
26412}
26413
26414type DescribePatchBaselinesInput struct {
26415	_ struct{} `type:"structure"`
26416
26417	// Each element in the array is a structure containing a key-value pair.
26418	//
26419	// Supported keys for DescribePatchBaselines include the following:
26420	//
26421	//    * NAME_PREFIX Sample values: AWS- | My-
26422	//
26423	//    * OWNER Sample values: AWS | Self
26424	//
26425	//    * OPERATING_SYSTEM Sample values: AMAZON_LINUX | SUSE | WINDOWS
26426	Filters []*PatchOrchestratorFilter `type:"list"`
26427
26428	// The maximum number of patch baselines to return (per page).
26429	MaxResults *int64 `min:"1" type:"integer"`
26430
26431	// The token for the next set of items to return. (You received this token from
26432	// a previous call.)
26433	NextToken *string `type:"string"`
26434}
26435
26436// String returns the string representation
26437func (s DescribePatchBaselinesInput) String() string {
26438	return awsutil.Prettify(s)
26439}
26440
26441// GoString returns the string representation
26442func (s DescribePatchBaselinesInput) GoString() string {
26443	return s.String()
26444}
26445
26446// Validate inspects the fields of the type to determine if they are valid.
26447func (s *DescribePatchBaselinesInput) Validate() error {
26448	invalidParams := request.ErrInvalidParams{Context: "DescribePatchBaselinesInput"}
26449	if s.MaxResults != nil && *s.MaxResults < 1 {
26450		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
26451	}
26452	if s.Filters != nil {
26453		for i, v := range s.Filters {
26454			if v == nil {
26455				continue
26456			}
26457			if err := v.Validate(); err != nil {
26458				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
26459			}
26460		}
26461	}
26462
26463	if invalidParams.Len() > 0 {
26464		return invalidParams
26465	}
26466	return nil
26467}
26468
26469// SetFilters sets the Filters field's value.
26470func (s *DescribePatchBaselinesInput) SetFilters(v []*PatchOrchestratorFilter) *DescribePatchBaselinesInput {
26471	s.Filters = v
26472	return s
26473}
26474
26475// SetMaxResults sets the MaxResults field's value.
26476func (s *DescribePatchBaselinesInput) SetMaxResults(v int64) *DescribePatchBaselinesInput {
26477	s.MaxResults = &v
26478	return s
26479}
26480
26481// SetNextToken sets the NextToken field's value.
26482func (s *DescribePatchBaselinesInput) SetNextToken(v string) *DescribePatchBaselinesInput {
26483	s.NextToken = &v
26484	return s
26485}
26486
26487type DescribePatchBaselinesOutput struct {
26488	_ struct{} `type:"structure"`
26489
26490	// An array of PatchBaselineIdentity elements.
26491	BaselineIdentities []*PatchBaselineIdentity `type:"list"`
26492
26493	// The token to use when requesting the next set of items. If there are no additional
26494	// items to return, the string is empty.
26495	NextToken *string `type:"string"`
26496}
26497
26498// String returns the string representation
26499func (s DescribePatchBaselinesOutput) String() string {
26500	return awsutil.Prettify(s)
26501}
26502
26503// GoString returns the string representation
26504func (s DescribePatchBaselinesOutput) GoString() string {
26505	return s.String()
26506}
26507
26508// SetBaselineIdentities sets the BaselineIdentities field's value.
26509func (s *DescribePatchBaselinesOutput) SetBaselineIdentities(v []*PatchBaselineIdentity) *DescribePatchBaselinesOutput {
26510	s.BaselineIdentities = v
26511	return s
26512}
26513
26514// SetNextToken sets the NextToken field's value.
26515func (s *DescribePatchBaselinesOutput) SetNextToken(v string) *DescribePatchBaselinesOutput {
26516	s.NextToken = &v
26517	return s
26518}
26519
26520type DescribePatchGroupStateInput struct {
26521	_ struct{} `type:"structure"`
26522
26523	// The name of the patch group whose patch snapshot should be retrieved.
26524	//
26525	// PatchGroup is a required field
26526	PatchGroup *string `min:"1" type:"string" required:"true"`
26527}
26528
26529// String returns the string representation
26530func (s DescribePatchGroupStateInput) String() string {
26531	return awsutil.Prettify(s)
26532}
26533
26534// GoString returns the string representation
26535func (s DescribePatchGroupStateInput) GoString() string {
26536	return s.String()
26537}
26538
26539// Validate inspects the fields of the type to determine if they are valid.
26540func (s *DescribePatchGroupStateInput) Validate() error {
26541	invalidParams := request.ErrInvalidParams{Context: "DescribePatchGroupStateInput"}
26542	if s.PatchGroup == nil {
26543		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
26544	}
26545	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
26546		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
26547	}
26548
26549	if invalidParams.Len() > 0 {
26550		return invalidParams
26551	}
26552	return nil
26553}
26554
26555// SetPatchGroup sets the PatchGroup field's value.
26556func (s *DescribePatchGroupStateInput) SetPatchGroup(v string) *DescribePatchGroupStateInput {
26557	s.PatchGroup = &v
26558	return s
26559}
26560
26561type DescribePatchGroupStateOutput struct {
26562	_ struct{} `type:"structure"`
26563
26564	// The number of instances in the patch group.
26565	Instances *int64 `type:"integer"`
26566
26567	// The number of instances where patches that are specified as Critical for
26568	// compliance reporting in the patch baseline aren't installed. These patches
26569	// might be missing, have failed installation, were rejected, or were installed
26570	// but awaiting a required instance reboot. The status of these instances is
26571	// NON_COMPLIANT.
26572	InstancesWithCriticalNonCompliantPatches *int64 `type:"integer"`
26573
26574	// The number of instances with patches from the patch baseline that failed
26575	// to install.
26576	InstancesWithFailedPatches *int64 `type:"integer"`
26577
26578	// The number of instances with patches installed that aren't defined in the
26579	// patch baseline.
26580	InstancesWithInstalledOtherPatches *int64 `type:"integer"`
26581
26582	// The number of instances with installed patches.
26583	InstancesWithInstalledPatches *int64 `type:"integer"`
26584
26585	// The number of instances with patches installed by Patch Manager that haven't
26586	// been rebooted after the patch installation. The status of these instances
26587	// is NON_COMPLIANT.
26588	InstancesWithInstalledPendingRebootPatches *int64 `type:"integer"`
26589
26590	// The number of instances with patches installed that are specified in a RejectedPatches
26591	// list. Patches with a status of INSTALLED_REJECTED were typically installed
26592	// before they were added to a RejectedPatches list.
26593	//
26594	// If ALLOW_AS_DEPENDENCY is the specified option for RejectedPatchesAction,
26595	// the value of InstancesWithInstalledRejectedPatches will always be 0 (zero).
26596	InstancesWithInstalledRejectedPatches *int64 `type:"integer"`
26597
26598	// The number of instances with missing patches from the patch baseline.
26599	InstancesWithMissingPatches *int64 `type:"integer"`
26600
26601	// The number of instances with patches that aren't applicable.
26602	InstancesWithNotApplicablePatches *int64 `type:"integer"`
26603
26604	// The number of instances with patches installed that are specified as other
26605	// than Critical or Security but aren't compliant with the patch baseline. The
26606	// status of these instances is NON_COMPLIANT.
26607	InstancesWithOtherNonCompliantPatches *int64 `type:"integer"`
26608
26609	// The number of instances where patches that are specified as Security in a
26610	// patch advisory aren't installed. These patches might be missing, have failed
26611	// installation, were rejected, or were installed but awaiting a required instance
26612	// reboot. The status of these instances is NON_COMPLIANT.
26613	InstancesWithSecurityNonCompliantPatches *int64 `type:"integer"`
26614
26615	// The number of instances with NotApplicable patches beyond the supported limit,
26616	// which aren't reported by name to Inventory. Inventory is a capability of
26617	// Amazon Web Services Systems Manager.
26618	InstancesWithUnreportedNotApplicablePatches *int64 `type:"integer"`
26619}
26620
26621// String returns the string representation
26622func (s DescribePatchGroupStateOutput) String() string {
26623	return awsutil.Prettify(s)
26624}
26625
26626// GoString returns the string representation
26627func (s DescribePatchGroupStateOutput) GoString() string {
26628	return s.String()
26629}
26630
26631// SetInstances sets the Instances field's value.
26632func (s *DescribePatchGroupStateOutput) SetInstances(v int64) *DescribePatchGroupStateOutput {
26633	s.Instances = &v
26634	return s
26635}
26636
26637// SetInstancesWithCriticalNonCompliantPatches sets the InstancesWithCriticalNonCompliantPatches field's value.
26638func (s *DescribePatchGroupStateOutput) SetInstancesWithCriticalNonCompliantPatches(v int64) *DescribePatchGroupStateOutput {
26639	s.InstancesWithCriticalNonCompliantPatches = &v
26640	return s
26641}
26642
26643// SetInstancesWithFailedPatches sets the InstancesWithFailedPatches field's value.
26644func (s *DescribePatchGroupStateOutput) SetInstancesWithFailedPatches(v int64) *DescribePatchGroupStateOutput {
26645	s.InstancesWithFailedPatches = &v
26646	return s
26647}
26648
26649// SetInstancesWithInstalledOtherPatches sets the InstancesWithInstalledOtherPatches field's value.
26650func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledOtherPatches(v int64) *DescribePatchGroupStateOutput {
26651	s.InstancesWithInstalledOtherPatches = &v
26652	return s
26653}
26654
26655// SetInstancesWithInstalledPatches sets the InstancesWithInstalledPatches field's value.
26656func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledPatches(v int64) *DescribePatchGroupStateOutput {
26657	s.InstancesWithInstalledPatches = &v
26658	return s
26659}
26660
26661// SetInstancesWithInstalledPendingRebootPatches sets the InstancesWithInstalledPendingRebootPatches field's value.
26662func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledPendingRebootPatches(v int64) *DescribePatchGroupStateOutput {
26663	s.InstancesWithInstalledPendingRebootPatches = &v
26664	return s
26665}
26666
26667// SetInstancesWithInstalledRejectedPatches sets the InstancesWithInstalledRejectedPatches field's value.
26668func (s *DescribePatchGroupStateOutput) SetInstancesWithInstalledRejectedPatches(v int64) *DescribePatchGroupStateOutput {
26669	s.InstancesWithInstalledRejectedPatches = &v
26670	return s
26671}
26672
26673// SetInstancesWithMissingPatches sets the InstancesWithMissingPatches field's value.
26674func (s *DescribePatchGroupStateOutput) SetInstancesWithMissingPatches(v int64) *DescribePatchGroupStateOutput {
26675	s.InstancesWithMissingPatches = &v
26676	return s
26677}
26678
26679// SetInstancesWithNotApplicablePatches sets the InstancesWithNotApplicablePatches field's value.
26680func (s *DescribePatchGroupStateOutput) SetInstancesWithNotApplicablePatches(v int64) *DescribePatchGroupStateOutput {
26681	s.InstancesWithNotApplicablePatches = &v
26682	return s
26683}
26684
26685// SetInstancesWithOtherNonCompliantPatches sets the InstancesWithOtherNonCompliantPatches field's value.
26686func (s *DescribePatchGroupStateOutput) SetInstancesWithOtherNonCompliantPatches(v int64) *DescribePatchGroupStateOutput {
26687	s.InstancesWithOtherNonCompliantPatches = &v
26688	return s
26689}
26690
26691// SetInstancesWithSecurityNonCompliantPatches sets the InstancesWithSecurityNonCompliantPatches field's value.
26692func (s *DescribePatchGroupStateOutput) SetInstancesWithSecurityNonCompliantPatches(v int64) *DescribePatchGroupStateOutput {
26693	s.InstancesWithSecurityNonCompliantPatches = &v
26694	return s
26695}
26696
26697// SetInstancesWithUnreportedNotApplicablePatches sets the InstancesWithUnreportedNotApplicablePatches field's value.
26698func (s *DescribePatchGroupStateOutput) SetInstancesWithUnreportedNotApplicablePatches(v int64) *DescribePatchGroupStateOutput {
26699	s.InstancesWithUnreportedNotApplicablePatches = &v
26700	return s
26701}
26702
26703type DescribePatchGroupsInput struct {
26704	_ struct{} `type:"structure"`
26705
26706	// Each element in the array is a structure containing a key-value pair.
26707	//
26708	// Supported keys for DescribePatchGroups include the following:
26709	//
26710	//    * NAME_PREFIX Sample values: AWS- | My-.
26711	//
26712	//    * OPERATING_SYSTEM Sample values: AMAZON_LINUX | SUSE | WINDOWS
26713	Filters []*PatchOrchestratorFilter `type:"list"`
26714
26715	// The maximum number of patch groups to return (per page).
26716	MaxResults *int64 `min:"1" type:"integer"`
26717
26718	// The token for the next set of items to return. (You received this token from
26719	// a previous call.)
26720	NextToken *string `type:"string"`
26721}
26722
26723// String returns the string representation
26724func (s DescribePatchGroupsInput) String() string {
26725	return awsutil.Prettify(s)
26726}
26727
26728// GoString returns the string representation
26729func (s DescribePatchGroupsInput) GoString() string {
26730	return s.String()
26731}
26732
26733// Validate inspects the fields of the type to determine if they are valid.
26734func (s *DescribePatchGroupsInput) Validate() error {
26735	invalidParams := request.ErrInvalidParams{Context: "DescribePatchGroupsInput"}
26736	if s.MaxResults != nil && *s.MaxResults < 1 {
26737		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
26738	}
26739	if s.Filters != nil {
26740		for i, v := range s.Filters {
26741			if v == nil {
26742				continue
26743			}
26744			if err := v.Validate(); err != nil {
26745				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
26746			}
26747		}
26748	}
26749
26750	if invalidParams.Len() > 0 {
26751		return invalidParams
26752	}
26753	return nil
26754}
26755
26756// SetFilters sets the Filters field's value.
26757func (s *DescribePatchGroupsInput) SetFilters(v []*PatchOrchestratorFilter) *DescribePatchGroupsInput {
26758	s.Filters = v
26759	return s
26760}
26761
26762// SetMaxResults sets the MaxResults field's value.
26763func (s *DescribePatchGroupsInput) SetMaxResults(v int64) *DescribePatchGroupsInput {
26764	s.MaxResults = &v
26765	return s
26766}
26767
26768// SetNextToken sets the NextToken field's value.
26769func (s *DescribePatchGroupsInput) SetNextToken(v string) *DescribePatchGroupsInput {
26770	s.NextToken = &v
26771	return s
26772}
26773
26774type DescribePatchGroupsOutput struct {
26775	_ struct{} `type:"structure"`
26776
26777	// Each entry in the array contains:
26778	//
26779	//    * PatchGroup: string (between 1 and 256 characters. Regex: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$)
26780	//
26781	//    * PatchBaselineIdentity: A PatchBaselineIdentity element.
26782	Mappings []*PatchGroupPatchBaselineMapping `type:"list"`
26783
26784	// The token to use when requesting the next set of items. If there are no additional
26785	// items to return, the string is empty.
26786	NextToken *string `type:"string"`
26787}
26788
26789// String returns the string representation
26790func (s DescribePatchGroupsOutput) String() string {
26791	return awsutil.Prettify(s)
26792}
26793
26794// GoString returns the string representation
26795func (s DescribePatchGroupsOutput) GoString() string {
26796	return s.String()
26797}
26798
26799// SetMappings sets the Mappings field's value.
26800func (s *DescribePatchGroupsOutput) SetMappings(v []*PatchGroupPatchBaselineMapping) *DescribePatchGroupsOutput {
26801	s.Mappings = v
26802	return s
26803}
26804
26805// SetNextToken sets the NextToken field's value.
26806func (s *DescribePatchGroupsOutput) SetNextToken(v string) *DescribePatchGroupsOutput {
26807	s.NextToken = &v
26808	return s
26809}
26810
26811type DescribePatchPropertiesInput struct {
26812	_ struct{} `type:"structure"`
26813
26814	// The maximum number of items to return for this call. The call also returns
26815	// a token that you can specify in a subsequent call to get the next set of
26816	// results.
26817	MaxResults *int64 `min:"1" type:"integer"`
26818
26819	// The token for the next set of items to return. (You received this token from
26820	// a previous call.)
26821	NextToken *string `type:"string"`
26822
26823	// The operating system type for which to list patches.
26824	//
26825	// OperatingSystem is a required field
26826	OperatingSystem *string `type:"string" required:"true" enum:"OperatingSystem"`
26827
26828	// Indicates whether to list patches for the Windows operating system or for
26829	// applications released by Microsoft. Not applicable for the Linux or macOS
26830	// operating systems.
26831	PatchSet *string `type:"string" enum:"PatchSet"`
26832
26833	// The patch property for which you want to view patch details.
26834	//
26835	// Property is a required field
26836	Property *string `type:"string" required:"true" enum:"PatchProperty"`
26837}
26838
26839// String returns the string representation
26840func (s DescribePatchPropertiesInput) String() string {
26841	return awsutil.Prettify(s)
26842}
26843
26844// GoString returns the string representation
26845func (s DescribePatchPropertiesInput) GoString() string {
26846	return s.String()
26847}
26848
26849// Validate inspects the fields of the type to determine if they are valid.
26850func (s *DescribePatchPropertiesInput) Validate() error {
26851	invalidParams := request.ErrInvalidParams{Context: "DescribePatchPropertiesInput"}
26852	if s.MaxResults != nil && *s.MaxResults < 1 {
26853		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
26854	}
26855	if s.OperatingSystem == nil {
26856		invalidParams.Add(request.NewErrParamRequired("OperatingSystem"))
26857	}
26858	if s.Property == nil {
26859		invalidParams.Add(request.NewErrParamRequired("Property"))
26860	}
26861
26862	if invalidParams.Len() > 0 {
26863		return invalidParams
26864	}
26865	return nil
26866}
26867
26868// SetMaxResults sets the MaxResults field's value.
26869func (s *DescribePatchPropertiesInput) SetMaxResults(v int64) *DescribePatchPropertiesInput {
26870	s.MaxResults = &v
26871	return s
26872}
26873
26874// SetNextToken sets the NextToken field's value.
26875func (s *DescribePatchPropertiesInput) SetNextToken(v string) *DescribePatchPropertiesInput {
26876	s.NextToken = &v
26877	return s
26878}
26879
26880// SetOperatingSystem sets the OperatingSystem field's value.
26881func (s *DescribePatchPropertiesInput) SetOperatingSystem(v string) *DescribePatchPropertiesInput {
26882	s.OperatingSystem = &v
26883	return s
26884}
26885
26886// SetPatchSet sets the PatchSet field's value.
26887func (s *DescribePatchPropertiesInput) SetPatchSet(v string) *DescribePatchPropertiesInput {
26888	s.PatchSet = &v
26889	return s
26890}
26891
26892// SetProperty sets the Property field's value.
26893func (s *DescribePatchPropertiesInput) SetProperty(v string) *DescribePatchPropertiesInput {
26894	s.Property = &v
26895	return s
26896}
26897
26898type DescribePatchPropertiesOutput struct {
26899	_ struct{} `type:"structure"`
26900
26901	// The token for the next set of items to return. (You use this token in the
26902	// next call.)
26903	NextToken *string `type:"string"`
26904
26905	// A list of the properties for patches matching the filter request parameters.
26906	Properties []map[string]*string `type:"list"`
26907}
26908
26909// String returns the string representation
26910func (s DescribePatchPropertiesOutput) String() string {
26911	return awsutil.Prettify(s)
26912}
26913
26914// GoString returns the string representation
26915func (s DescribePatchPropertiesOutput) GoString() string {
26916	return s.String()
26917}
26918
26919// SetNextToken sets the NextToken field's value.
26920func (s *DescribePatchPropertiesOutput) SetNextToken(v string) *DescribePatchPropertiesOutput {
26921	s.NextToken = &v
26922	return s
26923}
26924
26925// SetProperties sets the Properties field's value.
26926func (s *DescribePatchPropertiesOutput) SetProperties(v []map[string]*string) *DescribePatchPropertiesOutput {
26927	s.Properties = v
26928	return s
26929}
26930
26931type DescribeSessionsInput struct {
26932	_ struct{} `type:"structure"`
26933
26934	// One or more filters to limit the type of sessions returned by the request.
26935	Filters []*SessionFilter `min:"1" type:"list"`
26936
26937	// The maximum number of items to return for this call. The call also returns
26938	// a token that you can specify in a subsequent call to get the next set of
26939	// results.
26940	MaxResults *int64 `min:"1" type:"integer"`
26941
26942	// The token for the next set of items to return. (You received this token from
26943	// a previous call.)
26944	NextToken *string `type:"string"`
26945
26946	// The session status to retrieve a list of sessions for. For example, "Active".
26947	//
26948	// State is a required field
26949	State *string `type:"string" required:"true" enum:"SessionState"`
26950}
26951
26952// String returns the string representation
26953func (s DescribeSessionsInput) String() string {
26954	return awsutil.Prettify(s)
26955}
26956
26957// GoString returns the string representation
26958func (s DescribeSessionsInput) GoString() string {
26959	return s.String()
26960}
26961
26962// Validate inspects the fields of the type to determine if they are valid.
26963func (s *DescribeSessionsInput) Validate() error {
26964	invalidParams := request.ErrInvalidParams{Context: "DescribeSessionsInput"}
26965	if s.Filters != nil && len(s.Filters) < 1 {
26966		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
26967	}
26968	if s.MaxResults != nil && *s.MaxResults < 1 {
26969		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
26970	}
26971	if s.State == nil {
26972		invalidParams.Add(request.NewErrParamRequired("State"))
26973	}
26974	if s.Filters != nil {
26975		for i, v := range s.Filters {
26976			if v == nil {
26977				continue
26978			}
26979			if err := v.Validate(); err != nil {
26980				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
26981			}
26982		}
26983	}
26984
26985	if invalidParams.Len() > 0 {
26986		return invalidParams
26987	}
26988	return nil
26989}
26990
26991// SetFilters sets the Filters field's value.
26992func (s *DescribeSessionsInput) SetFilters(v []*SessionFilter) *DescribeSessionsInput {
26993	s.Filters = v
26994	return s
26995}
26996
26997// SetMaxResults sets the MaxResults field's value.
26998func (s *DescribeSessionsInput) SetMaxResults(v int64) *DescribeSessionsInput {
26999	s.MaxResults = &v
27000	return s
27001}
27002
27003// SetNextToken sets the NextToken field's value.
27004func (s *DescribeSessionsInput) SetNextToken(v string) *DescribeSessionsInput {
27005	s.NextToken = &v
27006	return s
27007}
27008
27009// SetState sets the State field's value.
27010func (s *DescribeSessionsInput) SetState(v string) *DescribeSessionsInput {
27011	s.State = &v
27012	return s
27013}
27014
27015type DescribeSessionsOutput struct {
27016	_ struct{} `type:"structure"`
27017
27018	// The token for the next set of items to return. (You received this token from
27019	// a previous call.)
27020	NextToken *string `type:"string"`
27021
27022	// A list of sessions meeting the request parameters.
27023	Sessions []*Session `type:"list"`
27024}
27025
27026// String returns the string representation
27027func (s DescribeSessionsOutput) String() string {
27028	return awsutil.Prettify(s)
27029}
27030
27031// GoString returns the string representation
27032func (s DescribeSessionsOutput) GoString() string {
27033	return s.String()
27034}
27035
27036// SetNextToken sets the NextToken field's value.
27037func (s *DescribeSessionsOutput) SetNextToken(v string) *DescribeSessionsOutput {
27038	s.NextToken = &v
27039	return s
27040}
27041
27042// SetSessions sets the Sessions field's value.
27043func (s *DescribeSessionsOutput) SetSessions(v []*Session) *DescribeSessionsOutput {
27044	s.Sessions = v
27045	return s
27046}
27047
27048type DisassociateOpsItemRelatedItemInput struct {
27049	_ struct{} `type:"structure"`
27050
27051	// The ID of the association for which you want to delete an association between
27052	// the OpsItem and a related resource.
27053	//
27054	// AssociationId is a required field
27055	AssociationId *string `type:"string" required:"true"`
27056
27057	// The ID of the OpsItem for which you want to delete an association between
27058	// the OpsItem and a related resource.
27059	//
27060	// OpsItemId is a required field
27061	OpsItemId *string `type:"string" required:"true"`
27062}
27063
27064// String returns the string representation
27065func (s DisassociateOpsItemRelatedItemInput) String() string {
27066	return awsutil.Prettify(s)
27067}
27068
27069// GoString returns the string representation
27070func (s DisassociateOpsItemRelatedItemInput) GoString() string {
27071	return s.String()
27072}
27073
27074// Validate inspects the fields of the type to determine if they are valid.
27075func (s *DisassociateOpsItemRelatedItemInput) Validate() error {
27076	invalidParams := request.ErrInvalidParams{Context: "DisassociateOpsItemRelatedItemInput"}
27077	if s.AssociationId == nil {
27078		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
27079	}
27080	if s.OpsItemId == nil {
27081		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
27082	}
27083
27084	if invalidParams.Len() > 0 {
27085		return invalidParams
27086	}
27087	return nil
27088}
27089
27090// SetAssociationId sets the AssociationId field's value.
27091func (s *DisassociateOpsItemRelatedItemInput) SetAssociationId(v string) *DisassociateOpsItemRelatedItemInput {
27092	s.AssociationId = &v
27093	return s
27094}
27095
27096// SetOpsItemId sets the OpsItemId field's value.
27097func (s *DisassociateOpsItemRelatedItemInput) SetOpsItemId(v string) *DisassociateOpsItemRelatedItemInput {
27098	s.OpsItemId = &v
27099	return s
27100}
27101
27102type DisassociateOpsItemRelatedItemOutput struct {
27103	_ struct{} `type:"structure"`
27104}
27105
27106// String returns the string representation
27107func (s DisassociateOpsItemRelatedItemOutput) String() string {
27108	return awsutil.Prettify(s)
27109}
27110
27111// GoString returns the string representation
27112func (s DisassociateOpsItemRelatedItemOutput) GoString() string {
27113	return s.String()
27114}
27115
27116// The specified document already exists.
27117type DocumentAlreadyExists struct {
27118	_            struct{}                  `type:"structure"`
27119	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
27120
27121	Message_ *string `locationName:"Message" type:"string"`
27122}
27123
27124// String returns the string representation
27125func (s DocumentAlreadyExists) String() string {
27126	return awsutil.Prettify(s)
27127}
27128
27129// GoString returns the string representation
27130func (s DocumentAlreadyExists) GoString() string {
27131	return s.String()
27132}
27133
27134func newErrorDocumentAlreadyExists(v protocol.ResponseMetadata) error {
27135	return &DocumentAlreadyExists{
27136		RespMetadata: v,
27137	}
27138}
27139
27140// Code returns the exception type name.
27141func (s *DocumentAlreadyExists) Code() string {
27142	return "DocumentAlreadyExists"
27143}
27144
27145// Message returns the exception's message.
27146func (s *DocumentAlreadyExists) Message() string {
27147	if s.Message_ != nil {
27148		return *s.Message_
27149	}
27150	return ""
27151}
27152
27153// OrigErr always returns nil, satisfies awserr.Error interface.
27154func (s *DocumentAlreadyExists) OrigErr() error {
27155	return nil
27156}
27157
27158func (s *DocumentAlreadyExists) Error() string {
27159	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
27160}
27161
27162// Status code returns the HTTP status code for the request's response error.
27163func (s *DocumentAlreadyExists) StatusCode() int {
27164	return s.RespMetadata.StatusCode
27165}
27166
27167// RequestID returns the service's response RequestID for request.
27168func (s *DocumentAlreadyExists) RequestID() string {
27169	return s.RespMetadata.RequestID
27170}
27171
27172// A default version of a document.
27173type DocumentDefaultVersionDescription struct {
27174	_ struct{} `type:"structure"`
27175
27176	// The default version of the document.
27177	DefaultVersion *string `type:"string"`
27178
27179	// The default version of the artifact associated with the document.
27180	DefaultVersionName *string `type:"string"`
27181
27182	// The name of the document.
27183	Name *string `type:"string"`
27184}
27185
27186// String returns the string representation
27187func (s DocumentDefaultVersionDescription) String() string {
27188	return awsutil.Prettify(s)
27189}
27190
27191// GoString returns the string representation
27192func (s DocumentDefaultVersionDescription) GoString() string {
27193	return s.String()
27194}
27195
27196// SetDefaultVersion sets the DefaultVersion field's value.
27197func (s *DocumentDefaultVersionDescription) SetDefaultVersion(v string) *DocumentDefaultVersionDescription {
27198	s.DefaultVersion = &v
27199	return s
27200}
27201
27202// SetDefaultVersionName sets the DefaultVersionName field's value.
27203func (s *DocumentDefaultVersionDescription) SetDefaultVersionName(v string) *DocumentDefaultVersionDescription {
27204	s.DefaultVersionName = &v
27205	return s
27206}
27207
27208// SetName sets the Name field's value.
27209func (s *DocumentDefaultVersionDescription) SetName(v string) *DocumentDefaultVersionDescription {
27210	s.Name = &v
27211	return s
27212}
27213
27214// Describes a Amazon Web Services Systems Manager document (SSM document).
27215type DocumentDescription struct {
27216	_ struct{} `type:"structure"`
27217
27218	// The version of the document currently approved for use in the organization.
27219	ApprovedVersion *string `type:"string"`
27220
27221	// Details about the document attachments, including names, locations, sizes,
27222	// and so on.
27223	AttachmentsInformation []*AttachmentInformation `type:"list"`
27224
27225	// The user in your organization who created the document.
27226	Author *string `type:"string"`
27227
27228	// The date when the document was created.
27229	CreatedDate *time.Time `type:"timestamp"`
27230
27231	// The default version.
27232	DefaultVersion *string `type:"string"`
27233
27234	// A description of the document.
27235	Description *string `type:"string"`
27236
27237	// The friendly name of the SSM document. This value can differ for each version
27238	// of the document. If you want to update this value, see UpdateDocument.
27239	DisplayName *string `type:"string"`
27240
27241	// The document format, either JSON or YAML.
27242	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
27243
27244	// The type of document.
27245	DocumentType *string `type:"string" enum:"DocumentType"`
27246
27247	// The document version.
27248	DocumentVersion *string `type:"string"`
27249
27250	// The Sha256 or Sha1 hash created by the system when the document was created.
27251	//
27252	// Sha1 hashes have been deprecated.
27253	Hash *string `type:"string"`
27254
27255	// The hash type of the document. Valid values include Sha256 or Sha1.
27256	//
27257	// Sha1 hashes have been deprecated.
27258	HashType *string `type:"string" enum:"DocumentHashType"`
27259
27260	// The latest version of the document.
27261	LatestVersion *string `type:"string"`
27262
27263	// The name of the SSM document.
27264	Name *string `type:"string"`
27265
27266	// The Amazon Web Services user account that created the document.
27267	Owner *string `type:"string"`
27268
27269	// A description of the parameters for a document.
27270	Parameters []*DocumentParameter `type:"list"`
27271
27272	// The version of the document that is currently under review.
27273	PendingReviewVersion *string `type:"string"`
27274
27275	// The list of OS platforms compatible with this SSM document.
27276	PlatformTypes []*string `type:"list"`
27277
27278	// A list of SSM documents required by a document. For example, an ApplicationConfiguration
27279	// document requires an ApplicationConfigurationSchema document.
27280	Requires []*DocumentRequires `min:"1" type:"list"`
27281
27282	// Details about the review of a document.
27283	ReviewInformation []*ReviewInformation `min:"1" type:"list"`
27284
27285	// The current status of the review.
27286	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
27287
27288	// The schema version.
27289	SchemaVersion *string `type:"string"`
27290
27291	// The SHA1 hash of the document, which you can use for verification.
27292	Sha1 *string `type:"string"`
27293
27294	// The status of the SSM document.
27295	Status *string `type:"string" enum:"DocumentStatus"`
27296
27297	// A message returned by Amazon Web Services Systems Manager that explains the
27298	// Status value. For example, a Failed status might be explained by the StatusInformation
27299	// message, "The specified S3 bucket doesn't exist. Verify that the URL of the
27300	// S3 bucket is correct."
27301	StatusInformation *string `type:"string"`
27302
27303	// The tags, or metadata, that have been applied to the document.
27304	Tags []*Tag `type:"list"`
27305
27306	// The target type which defines the kinds of resources the document can run
27307	// on. For example, /AWS::EC2::Instance. For a list of valid resource types,
27308	// see Amazon Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
27309	// in the CloudFormation User Guide.
27310	TargetType *string `type:"string"`
27311
27312	// The version of the artifact associated with the document.
27313	VersionName *string `type:"string"`
27314}
27315
27316// String returns the string representation
27317func (s DocumentDescription) String() string {
27318	return awsutil.Prettify(s)
27319}
27320
27321// GoString returns the string representation
27322func (s DocumentDescription) GoString() string {
27323	return s.String()
27324}
27325
27326// SetApprovedVersion sets the ApprovedVersion field's value.
27327func (s *DocumentDescription) SetApprovedVersion(v string) *DocumentDescription {
27328	s.ApprovedVersion = &v
27329	return s
27330}
27331
27332// SetAttachmentsInformation sets the AttachmentsInformation field's value.
27333func (s *DocumentDescription) SetAttachmentsInformation(v []*AttachmentInformation) *DocumentDescription {
27334	s.AttachmentsInformation = v
27335	return s
27336}
27337
27338// SetAuthor sets the Author field's value.
27339func (s *DocumentDescription) SetAuthor(v string) *DocumentDescription {
27340	s.Author = &v
27341	return s
27342}
27343
27344// SetCreatedDate sets the CreatedDate field's value.
27345func (s *DocumentDescription) SetCreatedDate(v time.Time) *DocumentDescription {
27346	s.CreatedDate = &v
27347	return s
27348}
27349
27350// SetDefaultVersion sets the DefaultVersion field's value.
27351func (s *DocumentDescription) SetDefaultVersion(v string) *DocumentDescription {
27352	s.DefaultVersion = &v
27353	return s
27354}
27355
27356// SetDescription sets the Description field's value.
27357func (s *DocumentDescription) SetDescription(v string) *DocumentDescription {
27358	s.Description = &v
27359	return s
27360}
27361
27362// SetDisplayName sets the DisplayName field's value.
27363func (s *DocumentDescription) SetDisplayName(v string) *DocumentDescription {
27364	s.DisplayName = &v
27365	return s
27366}
27367
27368// SetDocumentFormat sets the DocumentFormat field's value.
27369func (s *DocumentDescription) SetDocumentFormat(v string) *DocumentDescription {
27370	s.DocumentFormat = &v
27371	return s
27372}
27373
27374// SetDocumentType sets the DocumentType field's value.
27375func (s *DocumentDescription) SetDocumentType(v string) *DocumentDescription {
27376	s.DocumentType = &v
27377	return s
27378}
27379
27380// SetDocumentVersion sets the DocumentVersion field's value.
27381func (s *DocumentDescription) SetDocumentVersion(v string) *DocumentDescription {
27382	s.DocumentVersion = &v
27383	return s
27384}
27385
27386// SetHash sets the Hash field's value.
27387func (s *DocumentDescription) SetHash(v string) *DocumentDescription {
27388	s.Hash = &v
27389	return s
27390}
27391
27392// SetHashType sets the HashType field's value.
27393func (s *DocumentDescription) SetHashType(v string) *DocumentDescription {
27394	s.HashType = &v
27395	return s
27396}
27397
27398// SetLatestVersion sets the LatestVersion field's value.
27399func (s *DocumentDescription) SetLatestVersion(v string) *DocumentDescription {
27400	s.LatestVersion = &v
27401	return s
27402}
27403
27404// SetName sets the Name field's value.
27405func (s *DocumentDescription) SetName(v string) *DocumentDescription {
27406	s.Name = &v
27407	return s
27408}
27409
27410// SetOwner sets the Owner field's value.
27411func (s *DocumentDescription) SetOwner(v string) *DocumentDescription {
27412	s.Owner = &v
27413	return s
27414}
27415
27416// SetParameters sets the Parameters field's value.
27417func (s *DocumentDescription) SetParameters(v []*DocumentParameter) *DocumentDescription {
27418	s.Parameters = v
27419	return s
27420}
27421
27422// SetPendingReviewVersion sets the PendingReviewVersion field's value.
27423func (s *DocumentDescription) SetPendingReviewVersion(v string) *DocumentDescription {
27424	s.PendingReviewVersion = &v
27425	return s
27426}
27427
27428// SetPlatformTypes sets the PlatformTypes field's value.
27429func (s *DocumentDescription) SetPlatformTypes(v []*string) *DocumentDescription {
27430	s.PlatformTypes = v
27431	return s
27432}
27433
27434// SetRequires sets the Requires field's value.
27435func (s *DocumentDescription) SetRequires(v []*DocumentRequires) *DocumentDescription {
27436	s.Requires = v
27437	return s
27438}
27439
27440// SetReviewInformation sets the ReviewInformation field's value.
27441func (s *DocumentDescription) SetReviewInformation(v []*ReviewInformation) *DocumentDescription {
27442	s.ReviewInformation = v
27443	return s
27444}
27445
27446// SetReviewStatus sets the ReviewStatus field's value.
27447func (s *DocumentDescription) SetReviewStatus(v string) *DocumentDescription {
27448	s.ReviewStatus = &v
27449	return s
27450}
27451
27452// SetSchemaVersion sets the SchemaVersion field's value.
27453func (s *DocumentDescription) SetSchemaVersion(v string) *DocumentDescription {
27454	s.SchemaVersion = &v
27455	return s
27456}
27457
27458// SetSha1 sets the Sha1 field's value.
27459func (s *DocumentDescription) SetSha1(v string) *DocumentDescription {
27460	s.Sha1 = &v
27461	return s
27462}
27463
27464// SetStatus sets the Status field's value.
27465func (s *DocumentDescription) SetStatus(v string) *DocumentDescription {
27466	s.Status = &v
27467	return s
27468}
27469
27470// SetStatusInformation sets the StatusInformation field's value.
27471func (s *DocumentDescription) SetStatusInformation(v string) *DocumentDescription {
27472	s.StatusInformation = &v
27473	return s
27474}
27475
27476// SetTags sets the Tags field's value.
27477func (s *DocumentDescription) SetTags(v []*Tag) *DocumentDescription {
27478	s.Tags = v
27479	return s
27480}
27481
27482// SetTargetType sets the TargetType field's value.
27483func (s *DocumentDescription) SetTargetType(v string) *DocumentDescription {
27484	s.TargetType = &v
27485	return s
27486}
27487
27488// SetVersionName sets the VersionName field's value.
27489func (s *DocumentDescription) SetVersionName(v string) *DocumentDescription {
27490	s.VersionName = &v
27491	return s
27492}
27493
27494// This data type is deprecated. Instead, use DocumentKeyValuesFilter.
27495type DocumentFilter struct {
27496	_ struct{} `type:"structure"`
27497
27498	// The name of the filter.
27499	//
27500	// Key is a required field
27501	Key *string `locationName:"key" type:"string" required:"true" enum:"DocumentFilterKey"`
27502
27503	// The value of the filter.
27504	//
27505	// Value is a required field
27506	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
27507}
27508
27509// String returns the string representation
27510func (s DocumentFilter) String() string {
27511	return awsutil.Prettify(s)
27512}
27513
27514// GoString returns the string representation
27515func (s DocumentFilter) GoString() string {
27516	return s.String()
27517}
27518
27519// Validate inspects the fields of the type to determine if they are valid.
27520func (s *DocumentFilter) Validate() error {
27521	invalidParams := request.ErrInvalidParams{Context: "DocumentFilter"}
27522	if s.Key == nil {
27523		invalidParams.Add(request.NewErrParamRequired("Key"))
27524	}
27525	if s.Value == nil {
27526		invalidParams.Add(request.NewErrParamRequired("Value"))
27527	}
27528	if s.Value != nil && len(*s.Value) < 1 {
27529		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
27530	}
27531
27532	if invalidParams.Len() > 0 {
27533		return invalidParams
27534	}
27535	return nil
27536}
27537
27538// SetKey sets the Key field's value.
27539func (s *DocumentFilter) SetKey(v string) *DocumentFilter {
27540	s.Key = &v
27541	return s
27542}
27543
27544// SetValue sets the Value field's value.
27545func (s *DocumentFilter) SetValue(v string) *DocumentFilter {
27546	s.Value = &v
27547	return s
27548}
27549
27550// Describes the name of a SSM document.
27551type DocumentIdentifier struct {
27552	_ struct{} `type:"structure"`
27553
27554	// The user in your organization who created the document.
27555	Author *string `type:"string"`
27556
27557	// The date the SSM document was created.
27558	CreatedDate *time.Time `type:"timestamp"`
27559
27560	// An optional field where you can specify a friendly name for the SSM document.
27561	// This value can differ for each version of the document. If you want to update
27562	// this value, see UpdateDocument.
27563	DisplayName *string `type:"string"`
27564
27565	// The document format, either JSON or YAML.
27566	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
27567
27568	// The document type.
27569	DocumentType *string `type:"string" enum:"DocumentType"`
27570
27571	// The document version.
27572	DocumentVersion *string `type:"string"`
27573
27574	// The name of the SSM document.
27575	Name *string `type:"string"`
27576
27577	// The Amazon Web Services user account that created the document.
27578	Owner *string `type:"string"`
27579
27580	// The operating system platform.
27581	PlatformTypes []*string `type:"list"`
27582
27583	// A list of SSM documents required by a document. For example, an ApplicationConfiguration
27584	// document requires an ApplicationConfigurationSchema document.
27585	Requires []*DocumentRequires `min:"1" type:"list"`
27586
27587	// The current status of a document review.
27588	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
27589
27590	// The schema version.
27591	SchemaVersion *string `type:"string"`
27592
27593	// The tags, or metadata, that have been applied to the document.
27594	Tags []*Tag `type:"list"`
27595
27596	// The target type which defines the kinds of resources the document can run
27597	// on. For example, /AWS::EC2::Instance. For a list of valid resource types,
27598	// see Amazon Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
27599	// in the CloudFormation User Guide.
27600	TargetType *string `type:"string"`
27601
27602	// An optional field specifying the version of the artifact associated with
27603	// the document. For example, "Release 12, Update 6". This value is unique across
27604	// all versions of a document, and can't be changed.
27605	VersionName *string `type:"string"`
27606}
27607
27608// String returns the string representation
27609func (s DocumentIdentifier) String() string {
27610	return awsutil.Prettify(s)
27611}
27612
27613// GoString returns the string representation
27614func (s DocumentIdentifier) GoString() string {
27615	return s.String()
27616}
27617
27618// SetAuthor sets the Author field's value.
27619func (s *DocumentIdentifier) SetAuthor(v string) *DocumentIdentifier {
27620	s.Author = &v
27621	return s
27622}
27623
27624// SetCreatedDate sets the CreatedDate field's value.
27625func (s *DocumentIdentifier) SetCreatedDate(v time.Time) *DocumentIdentifier {
27626	s.CreatedDate = &v
27627	return s
27628}
27629
27630// SetDisplayName sets the DisplayName field's value.
27631func (s *DocumentIdentifier) SetDisplayName(v string) *DocumentIdentifier {
27632	s.DisplayName = &v
27633	return s
27634}
27635
27636// SetDocumentFormat sets the DocumentFormat field's value.
27637func (s *DocumentIdentifier) SetDocumentFormat(v string) *DocumentIdentifier {
27638	s.DocumentFormat = &v
27639	return s
27640}
27641
27642// SetDocumentType sets the DocumentType field's value.
27643func (s *DocumentIdentifier) SetDocumentType(v string) *DocumentIdentifier {
27644	s.DocumentType = &v
27645	return s
27646}
27647
27648// SetDocumentVersion sets the DocumentVersion field's value.
27649func (s *DocumentIdentifier) SetDocumentVersion(v string) *DocumentIdentifier {
27650	s.DocumentVersion = &v
27651	return s
27652}
27653
27654// SetName sets the Name field's value.
27655func (s *DocumentIdentifier) SetName(v string) *DocumentIdentifier {
27656	s.Name = &v
27657	return s
27658}
27659
27660// SetOwner sets the Owner field's value.
27661func (s *DocumentIdentifier) SetOwner(v string) *DocumentIdentifier {
27662	s.Owner = &v
27663	return s
27664}
27665
27666// SetPlatformTypes sets the PlatformTypes field's value.
27667func (s *DocumentIdentifier) SetPlatformTypes(v []*string) *DocumentIdentifier {
27668	s.PlatformTypes = v
27669	return s
27670}
27671
27672// SetRequires sets the Requires field's value.
27673func (s *DocumentIdentifier) SetRequires(v []*DocumentRequires) *DocumentIdentifier {
27674	s.Requires = v
27675	return s
27676}
27677
27678// SetReviewStatus sets the ReviewStatus field's value.
27679func (s *DocumentIdentifier) SetReviewStatus(v string) *DocumentIdentifier {
27680	s.ReviewStatus = &v
27681	return s
27682}
27683
27684// SetSchemaVersion sets the SchemaVersion field's value.
27685func (s *DocumentIdentifier) SetSchemaVersion(v string) *DocumentIdentifier {
27686	s.SchemaVersion = &v
27687	return s
27688}
27689
27690// SetTags sets the Tags field's value.
27691func (s *DocumentIdentifier) SetTags(v []*Tag) *DocumentIdentifier {
27692	s.Tags = v
27693	return s
27694}
27695
27696// SetTargetType sets the TargetType field's value.
27697func (s *DocumentIdentifier) SetTargetType(v string) *DocumentIdentifier {
27698	s.TargetType = &v
27699	return s
27700}
27701
27702// SetVersionName sets the VersionName field's value.
27703func (s *DocumentIdentifier) SetVersionName(v string) *DocumentIdentifier {
27704	s.VersionName = &v
27705	return s
27706}
27707
27708// One or more filters. Use a filter to return a more specific list of documents.
27709//
27710// For keys, you can specify one or more tags that have been applied to a document.
27711//
27712// You can also use Amazon Web Services-provided keys, some of which have specific
27713// allowed values. These keys and their associated values are as follows:
27714//
27715// DocumentType
27716//
27717//    * ApplicationConfiguration
27718//
27719//    * ApplicationConfigurationSchema
27720//
27721//    * Automation
27722//
27723//    * ChangeCalendar
27724//
27725//    * Command
27726//
27727//    * DeploymentStrategy
27728//
27729//    * Package
27730//
27731//    * Policy
27732//
27733//    * Session
27734//
27735// Owner
27736//
27737// Note that only one Owner can be specified in a request. For example: Key=Owner,Values=Self.
27738//
27739//    * Amazon
27740//
27741//    * Private
27742//
27743//    * Public
27744//
27745//    * Self
27746//
27747//    * ThirdParty
27748//
27749// PlatformTypes
27750//
27751//    * Linux
27752//
27753//    * Windows
27754//
27755// Name is another Amazon Web Services-provided key. If you use Name as a key,
27756// you can use a name prefix to return a list of documents. For example, in
27757// the Amazon Web Services CLI, to return a list of all documents that begin
27758// with Te, run the following command:
27759//
27760// aws ssm list-documents --filters Key=Name,Values=Te
27761//
27762// You can also use the TargetType Amazon Web Services-provided key. For a list
27763// of valid resource type values that can be used with this key, see Amazon
27764// Web Services resource and property types reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)
27765// in the CloudFormation User Guide.
27766//
27767// If you specify more than two keys, only documents that are identified by
27768// all the tags are returned in the results. If you specify more than two values
27769// for a key, documents that are identified by any of the values are returned
27770// in the results.
27771//
27772// To specify a custom key-value pair, use the format Key=tag:tagName,Values=valueName.
27773//
27774// For example, if you created a key called region and are using the Amazon
27775// Web Services CLI to call the list-documents command:
27776//
27777// aws ssm list-documents --filters Key=tag:region,Values=east,west Key=Owner,Values=Self
27778type DocumentKeyValuesFilter struct {
27779	_ struct{} `type:"structure"`
27780
27781	// The name of the filter key.
27782	Key *string `min:"1" type:"string"`
27783
27784	// The value for the filter key.
27785	Values []*string `type:"list"`
27786}
27787
27788// String returns the string representation
27789func (s DocumentKeyValuesFilter) String() string {
27790	return awsutil.Prettify(s)
27791}
27792
27793// GoString returns the string representation
27794func (s DocumentKeyValuesFilter) GoString() string {
27795	return s.String()
27796}
27797
27798// Validate inspects the fields of the type to determine if they are valid.
27799func (s *DocumentKeyValuesFilter) Validate() error {
27800	invalidParams := request.ErrInvalidParams{Context: "DocumentKeyValuesFilter"}
27801	if s.Key != nil && len(*s.Key) < 1 {
27802		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
27803	}
27804
27805	if invalidParams.Len() > 0 {
27806		return invalidParams
27807	}
27808	return nil
27809}
27810
27811// SetKey sets the Key field's value.
27812func (s *DocumentKeyValuesFilter) SetKey(v string) *DocumentKeyValuesFilter {
27813	s.Key = &v
27814	return s
27815}
27816
27817// SetValues sets the Values field's value.
27818func (s *DocumentKeyValuesFilter) SetValues(v []*string) *DocumentKeyValuesFilter {
27819	s.Values = v
27820	return s
27821}
27822
27823// You can have at most 500 active SSM documents.
27824type DocumentLimitExceeded struct {
27825	_            struct{}                  `type:"structure"`
27826	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
27827
27828	Message_ *string `locationName:"Message" type:"string"`
27829}
27830
27831// String returns the string representation
27832func (s DocumentLimitExceeded) String() string {
27833	return awsutil.Prettify(s)
27834}
27835
27836// GoString returns the string representation
27837func (s DocumentLimitExceeded) GoString() string {
27838	return s.String()
27839}
27840
27841func newErrorDocumentLimitExceeded(v protocol.ResponseMetadata) error {
27842	return &DocumentLimitExceeded{
27843		RespMetadata: v,
27844	}
27845}
27846
27847// Code returns the exception type name.
27848func (s *DocumentLimitExceeded) Code() string {
27849	return "DocumentLimitExceeded"
27850}
27851
27852// Message returns the exception's message.
27853func (s *DocumentLimitExceeded) Message() string {
27854	if s.Message_ != nil {
27855		return *s.Message_
27856	}
27857	return ""
27858}
27859
27860// OrigErr always returns nil, satisfies awserr.Error interface.
27861func (s *DocumentLimitExceeded) OrigErr() error {
27862	return nil
27863}
27864
27865func (s *DocumentLimitExceeded) Error() string {
27866	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
27867}
27868
27869// Status code returns the HTTP status code for the request's response error.
27870func (s *DocumentLimitExceeded) StatusCode() int {
27871	return s.RespMetadata.StatusCode
27872}
27873
27874// RequestID returns the service's response RequestID for request.
27875func (s *DocumentLimitExceeded) RequestID() string {
27876	return s.RespMetadata.RequestID
27877}
27878
27879// Details about the response to a document review request.
27880type DocumentMetadataResponseInfo struct {
27881	_ struct{} `type:"structure"`
27882
27883	// Details about a reviewer's response to a document review request.
27884	ReviewerResponse []*DocumentReviewerResponseSource `type:"list"`
27885}
27886
27887// String returns the string representation
27888func (s DocumentMetadataResponseInfo) String() string {
27889	return awsutil.Prettify(s)
27890}
27891
27892// GoString returns the string representation
27893func (s DocumentMetadataResponseInfo) GoString() string {
27894	return s.String()
27895}
27896
27897// SetReviewerResponse sets the ReviewerResponse field's value.
27898func (s *DocumentMetadataResponseInfo) SetReviewerResponse(v []*DocumentReviewerResponseSource) *DocumentMetadataResponseInfo {
27899	s.ReviewerResponse = v
27900	return s
27901}
27902
27903// Parameters specified in a System Manager document that run on the server
27904// when the command is run.
27905type DocumentParameter struct {
27906	_ struct{} `type:"structure"`
27907
27908	// If specified, the default values for the parameters. Parameters without a
27909	// default value are required. Parameters with a default value are optional.
27910	DefaultValue *string `type:"string"`
27911
27912	// A description of what the parameter does, how to use it, the default value,
27913	// and whether or not the parameter is optional.
27914	Description *string `type:"string"`
27915
27916	// The name of the parameter.
27917	Name *string `type:"string"`
27918
27919	// The type of parameter. The type can be either String or StringList.
27920	Type *string `type:"string" enum:"DocumentParameterType"`
27921}
27922
27923// String returns the string representation
27924func (s DocumentParameter) String() string {
27925	return awsutil.Prettify(s)
27926}
27927
27928// GoString returns the string representation
27929func (s DocumentParameter) GoString() string {
27930	return s.String()
27931}
27932
27933// SetDefaultValue sets the DefaultValue field's value.
27934func (s *DocumentParameter) SetDefaultValue(v string) *DocumentParameter {
27935	s.DefaultValue = &v
27936	return s
27937}
27938
27939// SetDescription sets the Description field's value.
27940func (s *DocumentParameter) SetDescription(v string) *DocumentParameter {
27941	s.Description = &v
27942	return s
27943}
27944
27945// SetName sets the Name field's value.
27946func (s *DocumentParameter) SetName(v string) *DocumentParameter {
27947	s.Name = &v
27948	return s
27949}
27950
27951// SetType sets the Type field's value.
27952func (s *DocumentParameter) SetType(v string) *DocumentParameter {
27953	s.Type = &v
27954	return s
27955}
27956
27957// The document can't be shared with more Amazon Web Services user accounts.
27958// You can share a document with a maximum of 20 accounts. You can publicly
27959// share up to five documents. If you need to increase this limit, contact Amazon
27960// Web Services Support.
27961type DocumentPermissionLimit struct {
27962	_            struct{}                  `type:"structure"`
27963	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
27964
27965	Message_ *string `locationName:"Message" type:"string"`
27966}
27967
27968// String returns the string representation
27969func (s DocumentPermissionLimit) String() string {
27970	return awsutil.Prettify(s)
27971}
27972
27973// GoString returns the string representation
27974func (s DocumentPermissionLimit) GoString() string {
27975	return s.String()
27976}
27977
27978func newErrorDocumentPermissionLimit(v protocol.ResponseMetadata) error {
27979	return &DocumentPermissionLimit{
27980		RespMetadata: v,
27981	}
27982}
27983
27984// Code returns the exception type name.
27985func (s *DocumentPermissionLimit) Code() string {
27986	return "DocumentPermissionLimit"
27987}
27988
27989// Message returns the exception's message.
27990func (s *DocumentPermissionLimit) Message() string {
27991	if s.Message_ != nil {
27992		return *s.Message_
27993	}
27994	return ""
27995}
27996
27997// OrigErr always returns nil, satisfies awserr.Error interface.
27998func (s *DocumentPermissionLimit) OrigErr() error {
27999	return nil
28000}
28001
28002func (s *DocumentPermissionLimit) Error() string {
28003	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
28004}
28005
28006// Status code returns the HTTP status code for the request's response error.
28007func (s *DocumentPermissionLimit) StatusCode() int {
28008	return s.RespMetadata.StatusCode
28009}
28010
28011// RequestID returns the service's response RequestID for request.
28012func (s *DocumentPermissionLimit) RequestID() string {
28013	return s.RespMetadata.RequestID
28014}
28015
28016// An SSM document required by the current document.
28017type DocumentRequires struct {
28018	_ struct{} `type:"structure"`
28019
28020	// The name of the required SSM document. The name can be an Amazon Resource
28021	// Name (ARN).
28022	//
28023	// Name is a required field
28024	Name *string `type:"string" required:"true"`
28025
28026	// The document version required by the current document.
28027	Version *string `type:"string"`
28028}
28029
28030// String returns the string representation
28031func (s DocumentRequires) String() string {
28032	return awsutil.Prettify(s)
28033}
28034
28035// GoString returns the string representation
28036func (s DocumentRequires) GoString() string {
28037	return s.String()
28038}
28039
28040// Validate inspects the fields of the type to determine if they are valid.
28041func (s *DocumentRequires) Validate() error {
28042	invalidParams := request.ErrInvalidParams{Context: "DocumentRequires"}
28043	if s.Name == nil {
28044		invalidParams.Add(request.NewErrParamRequired("Name"))
28045	}
28046
28047	if invalidParams.Len() > 0 {
28048		return invalidParams
28049	}
28050	return nil
28051}
28052
28053// SetName sets the Name field's value.
28054func (s *DocumentRequires) SetName(v string) *DocumentRequires {
28055	s.Name = &v
28056	return s
28057}
28058
28059// SetVersion sets the Version field's value.
28060func (s *DocumentRequires) SetVersion(v string) *DocumentRequires {
28061	s.Version = &v
28062	return s
28063}
28064
28065// Information about comments added to a document review request.
28066type DocumentReviewCommentSource struct {
28067	_ struct{} `type:"structure"`
28068
28069	// The content of a comment entered by a user who requests a review of a new
28070	// document version, or who reviews the new version.
28071	Content *string `min:"1" type:"string"`
28072
28073	// The type of information added to a review request. Currently, only the value
28074	// Comment is supported.
28075	Type *string `type:"string" enum:"DocumentReviewCommentType"`
28076}
28077
28078// String returns the string representation
28079func (s DocumentReviewCommentSource) String() string {
28080	return awsutil.Prettify(s)
28081}
28082
28083// GoString returns the string representation
28084func (s DocumentReviewCommentSource) GoString() string {
28085	return s.String()
28086}
28087
28088// Validate inspects the fields of the type to determine if they are valid.
28089func (s *DocumentReviewCommentSource) Validate() error {
28090	invalidParams := request.ErrInvalidParams{Context: "DocumentReviewCommentSource"}
28091	if s.Content != nil && len(*s.Content) < 1 {
28092		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
28093	}
28094
28095	if invalidParams.Len() > 0 {
28096		return invalidParams
28097	}
28098	return nil
28099}
28100
28101// SetContent sets the Content field's value.
28102func (s *DocumentReviewCommentSource) SetContent(v string) *DocumentReviewCommentSource {
28103	s.Content = &v
28104	return s
28105}
28106
28107// SetType sets the Type field's value.
28108func (s *DocumentReviewCommentSource) SetType(v string) *DocumentReviewCommentSource {
28109	s.Type = &v
28110	return s
28111}
28112
28113// Information about a reviewer's response to a document review request.
28114type DocumentReviewerResponseSource struct {
28115	_ struct{} `type:"structure"`
28116
28117	// The comment entered by a reviewer as part of their document review response.
28118	Comment []*DocumentReviewCommentSource `type:"list"`
28119
28120	// The date and time that a reviewer entered a response to a document review
28121	// request.
28122	CreateTime *time.Time `type:"timestamp"`
28123
28124	// The current review status of a new custom SSM document created by a member
28125	// of your organization, or of the latest version of an existing SSM document.
28126	//
28127	// Only one version of a document can be in the APPROVED state at a time. When
28128	// a new version is approved, the status of the previous version changes to
28129	// REJECTED.
28130	//
28131	// Only one version of a document can be in review, or PENDING, at a time.
28132	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
28133
28134	// The user in your organization assigned to review a document request.
28135	Reviewer *string `type:"string"`
28136
28137	// The date and time that a reviewer last updated a response to a document review
28138	// request.
28139	UpdatedTime *time.Time `type:"timestamp"`
28140}
28141
28142// String returns the string representation
28143func (s DocumentReviewerResponseSource) String() string {
28144	return awsutil.Prettify(s)
28145}
28146
28147// GoString returns the string representation
28148func (s DocumentReviewerResponseSource) GoString() string {
28149	return s.String()
28150}
28151
28152// SetComment sets the Comment field's value.
28153func (s *DocumentReviewerResponseSource) SetComment(v []*DocumentReviewCommentSource) *DocumentReviewerResponseSource {
28154	s.Comment = v
28155	return s
28156}
28157
28158// SetCreateTime sets the CreateTime field's value.
28159func (s *DocumentReviewerResponseSource) SetCreateTime(v time.Time) *DocumentReviewerResponseSource {
28160	s.CreateTime = &v
28161	return s
28162}
28163
28164// SetReviewStatus sets the ReviewStatus field's value.
28165func (s *DocumentReviewerResponseSource) SetReviewStatus(v string) *DocumentReviewerResponseSource {
28166	s.ReviewStatus = &v
28167	return s
28168}
28169
28170// SetReviewer sets the Reviewer field's value.
28171func (s *DocumentReviewerResponseSource) SetReviewer(v string) *DocumentReviewerResponseSource {
28172	s.Reviewer = &v
28173	return s
28174}
28175
28176// SetUpdatedTime sets the UpdatedTime field's value.
28177func (s *DocumentReviewerResponseSource) SetUpdatedTime(v time.Time) *DocumentReviewerResponseSource {
28178	s.UpdatedTime = &v
28179	return s
28180}
28181
28182// Information about a document approval review.
28183type DocumentReviews struct {
28184	_ struct{} `type:"structure"`
28185
28186	// The action to take on a document approval review request.
28187	//
28188	// Action is a required field
28189	Action *string `type:"string" required:"true" enum:"DocumentReviewAction"`
28190
28191	// A comment entered by a user in your organization about the document review
28192	// request.
28193	Comment []*DocumentReviewCommentSource `type:"list"`
28194}
28195
28196// String returns the string representation
28197func (s DocumentReviews) String() string {
28198	return awsutil.Prettify(s)
28199}
28200
28201// GoString returns the string representation
28202func (s DocumentReviews) GoString() string {
28203	return s.String()
28204}
28205
28206// Validate inspects the fields of the type to determine if they are valid.
28207func (s *DocumentReviews) Validate() error {
28208	invalidParams := request.ErrInvalidParams{Context: "DocumentReviews"}
28209	if s.Action == nil {
28210		invalidParams.Add(request.NewErrParamRequired("Action"))
28211	}
28212	if s.Comment != nil {
28213		for i, v := range s.Comment {
28214			if v == nil {
28215				continue
28216			}
28217			if err := v.Validate(); err != nil {
28218				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Comment", i), err.(request.ErrInvalidParams))
28219			}
28220		}
28221	}
28222
28223	if invalidParams.Len() > 0 {
28224		return invalidParams
28225	}
28226	return nil
28227}
28228
28229// SetAction sets the Action field's value.
28230func (s *DocumentReviews) SetAction(v string) *DocumentReviews {
28231	s.Action = &v
28232	return s
28233}
28234
28235// SetComment sets the Comment field's value.
28236func (s *DocumentReviews) SetComment(v []*DocumentReviewCommentSource) *DocumentReviews {
28237	s.Comment = v
28238	return s
28239}
28240
28241// Version information about the document.
28242type DocumentVersionInfo struct {
28243	_ struct{} `type:"structure"`
28244
28245	// The date the document was created.
28246	CreatedDate *time.Time `type:"timestamp"`
28247
28248	// The friendly name of the SSM document. This value can differ for each version
28249	// of the document. If you want to update this value, see UpdateDocument.
28250	DisplayName *string `type:"string"`
28251
28252	// The document format, either JSON or YAML.
28253	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
28254
28255	// The document version.
28256	DocumentVersion *string `type:"string"`
28257
28258	// An identifier for the default version of the document.
28259	IsDefaultVersion *bool `type:"boolean"`
28260
28261	// The document name.
28262	Name *string `type:"string"`
28263
28264	// The current status of the approval review for the latest version of the document.
28265	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
28266
28267	// The status of the SSM document, such as Creating, Active, Failed, and Deleting.
28268	Status *string `type:"string" enum:"DocumentStatus"`
28269
28270	// A message returned by Amazon Web Services Systems Manager that explains the
28271	// Status value. For example, a Failed status might be explained by the StatusInformation
28272	// message, "The specified S3 bucket doesn't exist. Verify that the URL of the
28273	// S3 bucket is correct."
28274	StatusInformation *string `type:"string"`
28275
28276	// The version of the artifact associated with the document. For example, "Release
28277	// 12, Update 6". This value is unique across all versions of a document, and
28278	// can't be changed.
28279	VersionName *string `type:"string"`
28280}
28281
28282// String returns the string representation
28283func (s DocumentVersionInfo) String() string {
28284	return awsutil.Prettify(s)
28285}
28286
28287// GoString returns the string representation
28288func (s DocumentVersionInfo) GoString() string {
28289	return s.String()
28290}
28291
28292// SetCreatedDate sets the CreatedDate field's value.
28293func (s *DocumentVersionInfo) SetCreatedDate(v time.Time) *DocumentVersionInfo {
28294	s.CreatedDate = &v
28295	return s
28296}
28297
28298// SetDisplayName sets the DisplayName field's value.
28299func (s *DocumentVersionInfo) SetDisplayName(v string) *DocumentVersionInfo {
28300	s.DisplayName = &v
28301	return s
28302}
28303
28304// SetDocumentFormat sets the DocumentFormat field's value.
28305func (s *DocumentVersionInfo) SetDocumentFormat(v string) *DocumentVersionInfo {
28306	s.DocumentFormat = &v
28307	return s
28308}
28309
28310// SetDocumentVersion sets the DocumentVersion field's value.
28311func (s *DocumentVersionInfo) SetDocumentVersion(v string) *DocumentVersionInfo {
28312	s.DocumentVersion = &v
28313	return s
28314}
28315
28316// SetIsDefaultVersion sets the IsDefaultVersion field's value.
28317func (s *DocumentVersionInfo) SetIsDefaultVersion(v bool) *DocumentVersionInfo {
28318	s.IsDefaultVersion = &v
28319	return s
28320}
28321
28322// SetName sets the Name field's value.
28323func (s *DocumentVersionInfo) SetName(v string) *DocumentVersionInfo {
28324	s.Name = &v
28325	return s
28326}
28327
28328// SetReviewStatus sets the ReviewStatus field's value.
28329func (s *DocumentVersionInfo) SetReviewStatus(v string) *DocumentVersionInfo {
28330	s.ReviewStatus = &v
28331	return s
28332}
28333
28334// SetStatus sets the Status field's value.
28335func (s *DocumentVersionInfo) SetStatus(v string) *DocumentVersionInfo {
28336	s.Status = &v
28337	return s
28338}
28339
28340// SetStatusInformation sets the StatusInformation field's value.
28341func (s *DocumentVersionInfo) SetStatusInformation(v string) *DocumentVersionInfo {
28342	s.StatusInformation = &v
28343	return s
28344}
28345
28346// SetVersionName sets the VersionName field's value.
28347func (s *DocumentVersionInfo) SetVersionName(v string) *DocumentVersionInfo {
28348	s.VersionName = &v
28349	return s
28350}
28351
28352// The document has too many versions. Delete one or more document versions
28353// and try again.
28354type DocumentVersionLimitExceeded struct {
28355	_            struct{}                  `type:"structure"`
28356	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
28357
28358	Message_ *string `locationName:"Message" type:"string"`
28359}
28360
28361// String returns the string representation
28362func (s DocumentVersionLimitExceeded) String() string {
28363	return awsutil.Prettify(s)
28364}
28365
28366// GoString returns the string representation
28367func (s DocumentVersionLimitExceeded) GoString() string {
28368	return s.String()
28369}
28370
28371func newErrorDocumentVersionLimitExceeded(v protocol.ResponseMetadata) error {
28372	return &DocumentVersionLimitExceeded{
28373		RespMetadata: v,
28374	}
28375}
28376
28377// Code returns the exception type name.
28378func (s *DocumentVersionLimitExceeded) Code() string {
28379	return "DocumentVersionLimitExceeded"
28380}
28381
28382// Message returns the exception's message.
28383func (s *DocumentVersionLimitExceeded) Message() string {
28384	if s.Message_ != nil {
28385		return *s.Message_
28386	}
28387	return ""
28388}
28389
28390// OrigErr always returns nil, satisfies awserr.Error interface.
28391func (s *DocumentVersionLimitExceeded) OrigErr() error {
28392	return nil
28393}
28394
28395func (s *DocumentVersionLimitExceeded) Error() string {
28396	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
28397}
28398
28399// Status code returns the HTTP status code for the request's response error.
28400func (s *DocumentVersionLimitExceeded) StatusCode() int {
28401	return s.RespMetadata.StatusCode
28402}
28403
28404// RequestID returns the service's response RequestID for request.
28405func (s *DocumentVersionLimitExceeded) RequestID() string {
28406	return s.RespMetadata.RequestID
28407}
28408
28409// Error returned when the ID specified for a resource, such as a maintenance
28410// window or patch baseline, doesn't exist.
28411//
28412// For information about resource quotas in Amazon Web Services Systems Manager,
28413// see Systems Manager service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
28414// in the Amazon Web Services General Reference.
28415type DoesNotExistException struct {
28416	_            struct{}                  `type:"structure"`
28417	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
28418
28419	Message_ *string `locationName:"Message" type:"string"`
28420}
28421
28422// String returns the string representation
28423func (s DoesNotExistException) String() string {
28424	return awsutil.Prettify(s)
28425}
28426
28427// GoString returns the string representation
28428func (s DoesNotExistException) GoString() string {
28429	return s.String()
28430}
28431
28432func newErrorDoesNotExistException(v protocol.ResponseMetadata) error {
28433	return &DoesNotExistException{
28434		RespMetadata: v,
28435	}
28436}
28437
28438// Code returns the exception type name.
28439func (s *DoesNotExistException) Code() string {
28440	return "DoesNotExistException"
28441}
28442
28443// Message returns the exception's message.
28444func (s *DoesNotExistException) Message() string {
28445	if s.Message_ != nil {
28446		return *s.Message_
28447	}
28448	return ""
28449}
28450
28451// OrigErr always returns nil, satisfies awserr.Error interface.
28452func (s *DoesNotExistException) OrigErr() error {
28453	return nil
28454}
28455
28456func (s *DoesNotExistException) Error() string {
28457	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
28458}
28459
28460// Status code returns the HTTP status code for the request's response error.
28461func (s *DoesNotExistException) StatusCode() int {
28462	return s.RespMetadata.StatusCode
28463}
28464
28465// RequestID returns the service's response RequestID for request.
28466func (s *DoesNotExistException) RequestID() string {
28467	return s.RespMetadata.RequestID
28468}
28469
28470// The content of the association document matches another document. Change
28471// the content of the document and try again.
28472type DuplicateDocumentContent struct {
28473	_            struct{}                  `type:"structure"`
28474	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
28475
28476	Message_ *string `locationName:"Message" type:"string"`
28477}
28478
28479// String returns the string representation
28480func (s DuplicateDocumentContent) String() string {
28481	return awsutil.Prettify(s)
28482}
28483
28484// GoString returns the string representation
28485func (s DuplicateDocumentContent) GoString() string {
28486	return s.String()
28487}
28488
28489func newErrorDuplicateDocumentContent(v protocol.ResponseMetadata) error {
28490	return &DuplicateDocumentContent{
28491		RespMetadata: v,
28492	}
28493}
28494
28495// Code returns the exception type name.
28496func (s *DuplicateDocumentContent) Code() string {
28497	return "DuplicateDocumentContent"
28498}
28499
28500// Message returns the exception's message.
28501func (s *DuplicateDocumentContent) Message() string {
28502	if s.Message_ != nil {
28503		return *s.Message_
28504	}
28505	return ""
28506}
28507
28508// OrigErr always returns nil, satisfies awserr.Error interface.
28509func (s *DuplicateDocumentContent) OrigErr() error {
28510	return nil
28511}
28512
28513func (s *DuplicateDocumentContent) Error() string {
28514	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
28515}
28516
28517// Status code returns the HTTP status code for the request's response error.
28518func (s *DuplicateDocumentContent) StatusCode() int {
28519	return s.RespMetadata.StatusCode
28520}
28521
28522// RequestID returns the service's response RequestID for request.
28523func (s *DuplicateDocumentContent) RequestID() string {
28524	return s.RespMetadata.RequestID
28525}
28526
28527// The version name has already been used in this document. Specify a different
28528// version name, and then try again.
28529type DuplicateDocumentVersionName struct {
28530	_            struct{}                  `type:"structure"`
28531	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
28532
28533	Message_ *string `locationName:"Message" type:"string"`
28534}
28535
28536// String returns the string representation
28537func (s DuplicateDocumentVersionName) String() string {
28538	return awsutil.Prettify(s)
28539}
28540
28541// GoString returns the string representation
28542func (s DuplicateDocumentVersionName) GoString() string {
28543	return s.String()
28544}
28545
28546func newErrorDuplicateDocumentVersionName(v protocol.ResponseMetadata) error {
28547	return &DuplicateDocumentVersionName{
28548		RespMetadata: v,
28549	}
28550}
28551
28552// Code returns the exception type name.
28553func (s *DuplicateDocumentVersionName) Code() string {
28554	return "DuplicateDocumentVersionName"
28555}
28556
28557// Message returns the exception's message.
28558func (s *DuplicateDocumentVersionName) Message() string {
28559	if s.Message_ != nil {
28560		return *s.Message_
28561	}
28562	return ""
28563}
28564
28565// OrigErr always returns nil, satisfies awserr.Error interface.
28566func (s *DuplicateDocumentVersionName) OrigErr() error {
28567	return nil
28568}
28569
28570func (s *DuplicateDocumentVersionName) Error() string {
28571	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
28572}
28573
28574// Status code returns the HTTP status code for the request's response error.
28575func (s *DuplicateDocumentVersionName) StatusCode() int {
28576	return s.RespMetadata.StatusCode
28577}
28578
28579// RequestID returns the service's response RequestID for request.
28580func (s *DuplicateDocumentVersionName) RequestID() string {
28581	return s.RespMetadata.RequestID
28582}
28583
28584// You can't specify an instance ID in more than one association.
28585type DuplicateInstanceId struct {
28586	_            struct{}                  `type:"structure"`
28587	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
28588
28589	Message_ *string `locationName:"message" type:"string"`
28590}
28591
28592// String returns the string representation
28593func (s DuplicateInstanceId) String() string {
28594	return awsutil.Prettify(s)
28595}
28596
28597// GoString returns the string representation
28598func (s DuplicateInstanceId) GoString() string {
28599	return s.String()
28600}
28601
28602func newErrorDuplicateInstanceId(v protocol.ResponseMetadata) error {
28603	return &DuplicateInstanceId{
28604		RespMetadata: v,
28605	}
28606}
28607
28608// Code returns the exception type name.
28609func (s *DuplicateInstanceId) Code() string {
28610	return "DuplicateInstanceId"
28611}
28612
28613// Message returns the exception's message.
28614func (s *DuplicateInstanceId) Message() string {
28615	if s.Message_ != nil {
28616		return *s.Message_
28617	}
28618	return ""
28619}
28620
28621// OrigErr always returns nil, satisfies awserr.Error interface.
28622func (s *DuplicateInstanceId) OrigErr() error {
28623	return nil
28624}
28625
28626func (s *DuplicateInstanceId) Error() string {
28627	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
28628}
28629
28630// Status code returns the HTTP status code for the request's response error.
28631func (s *DuplicateInstanceId) StatusCode() int {
28632	return s.RespMetadata.StatusCode
28633}
28634
28635// RequestID returns the service's response RequestID for request.
28636func (s *DuplicateInstanceId) RequestID() string {
28637	return s.RespMetadata.RequestID
28638}
28639
28640// The EffectivePatch structure defines metadata about a patch along with the
28641// approval state of the patch in a particular patch baseline. The approval
28642// state includes information about whether the patch is currently approved,
28643// due to be approved by a rule, explicitly approved, or explicitly rejected
28644// and the date the patch was or will be approved.
28645type EffectivePatch struct {
28646	_ struct{} `type:"structure"`
28647
28648	// Provides metadata for a patch, including information such as the KB ID, severity,
28649	// classification and a URL for where more information can be obtained about
28650	// the patch.
28651	Patch *Patch `type:"structure"`
28652
28653	// The status of the patch in a patch baseline. This includes information about
28654	// whether the patch is currently approved, due to be approved by a rule, explicitly
28655	// approved, or explicitly rejected and the date the patch was or will be approved.
28656	PatchStatus *PatchStatus `type:"structure"`
28657}
28658
28659// String returns the string representation
28660func (s EffectivePatch) String() string {
28661	return awsutil.Prettify(s)
28662}
28663
28664// GoString returns the string representation
28665func (s EffectivePatch) GoString() string {
28666	return s.String()
28667}
28668
28669// SetPatch sets the Patch field's value.
28670func (s *EffectivePatch) SetPatch(v *Patch) *EffectivePatch {
28671	s.Patch = v
28672	return s
28673}
28674
28675// SetPatchStatus sets the PatchStatus field's value.
28676func (s *EffectivePatch) SetPatchStatus(v *PatchStatus) *EffectivePatch {
28677	s.PatchStatus = v
28678	return s
28679}
28680
28681// Describes a failed association.
28682type FailedCreateAssociation struct {
28683	_ struct{} `type:"structure"`
28684
28685	// The association.
28686	Entry *CreateAssociationBatchRequestEntry `type:"structure"`
28687
28688	// The source of the failure.
28689	Fault *string `type:"string" enum:"Fault"`
28690
28691	// A description of the failure.
28692	Message *string `type:"string"`
28693}
28694
28695// String returns the string representation
28696func (s FailedCreateAssociation) String() string {
28697	return awsutil.Prettify(s)
28698}
28699
28700// GoString returns the string representation
28701func (s FailedCreateAssociation) GoString() string {
28702	return s.String()
28703}
28704
28705// SetEntry sets the Entry field's value.
28706func (s *FailedCreateAssociation) SetEntry(v *CreateAssociationBatchRequestEntry) *FailedCreateAssociation {
28707	s.Entry = v
28708	return s
28709}
28710
28711// SetFault sets the Fault field's value.
28712func (s *FailedCreateAssociation) SetFault(v string) *FailedCreateAssociation {
28713	s.Fault = &v
28714	return s
28715}
28716
28717// SetMessage sets the Message field's value.
28718func (s *FailedCreateAssociation) SetMessage(v string) *FailedCreateAssociation {
28719	s.Message = &v
28720	return s
28721}
28722
28723// Information about an Automation failure.
28724type FailureDetails struct {
28725	_ struct{} `type:"structure"`
28726
28727	// Detailed information about the Automation step failure.
28728	Details map[string][]*string `min:"1" type:"map"`
28729
28730	// The stage of the Automation execution when the failure occurred. The stages
28731	// include the following: InputValidation, PreVerification, Invocation, PostVerification.
28732	FailureStage *string `type:"string"`
28733
28734	// The type of Automation failure. Failure types include the following: Action,
28735	// Permission, Throttling, Verification, Internal.
28736	FailureType *string `type:"string"`
28737}
28738
28739// String returns the string representation
28740func (s FailureDetails) String() string {
28741	return awsutil.Prettify(s)
28742}
28743
28744// GoString returns the string representation
28745func (s FailureDetails) GoString() string {
28746	return s.String()
28747}
28748
28749// SetDetails sets the Details field's value.
28750func (s *FailureDetails) SetDetails(v map[string][]*string) *FailureDetails {
28751	s.Details = v
28752	return s
28753}
28754
28755// SetFailureStage sets the FailureStage field's value.
28756func (s *FailureDetails) SetFailureStage(v string) *FailureDetails {
28757	s.FailureStage = &v
28758	return s
28759}
28760
28761// SetFailureType sets the FailureType field's value.
28762func (s *FailureDetails) SetFailureType(v string) *FailureDetails {
28763	s.FailureType = &v
28764	return s
28765}
28766
28767// You attempted to register a LAMBDA or STEP_FUNCTIONS task in a region where
28768// the corresponding service isn't available.
28769type FeatureNotAvailableException struct {
28770	_            struct{}                  `type:"structure"`
28771	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
28772
28773	Message_ *string `locationName:"Message" type:"string"`
28774}
28775
28776// String returns the string representation
28777func (s FeatureNotAvailableException) String() string {
28778	return awsutil.Prettify(s)
28779}
28780
28781// GoString returns the string representation
28782func (s FeatureNotAvailableException) GoString() string {
28783	return s.String()
28784}
28785
28786func newErrorFeatureNotAvailableException(v protocol.ResponseMetadata) error {
28787	return &FeatureNotAvailableException{
28788		RespMetadata: v,
28789	}
28790}
28791
28792// Code returns the exception type name.
28793func (s *FeatureNotAvailableException) Code() string {
28794	return "FeatureNotAvailableException"
28795}
28796
28797// Message returns the exception's message.
28798func (s *FeatureNotAvailableException) Message() string {
28799	if s.Message_ != nil {
28800		return *s.Message_
28801	}
28802	return ""
28803}
28804
28805// OrigErr always returns nil, satisfies awserr.Error interface.
28806func (s *FeatureNotAvailableException) OrigErr() error {
28807	return nil
28808}
28809
28810func (s *FeatureNotAvailableException) Error() string {
28811	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
28812}
28813
28814// Status code returns the HTTP status code for the request's response error.
28815func (s *FeatureNotAvailableException) StatusCode() int {
28816	return s.RespMetadata.StatusCode
28817}
28818
28819// RequestID returns the service's response RequestID for request.
28820func (s *FeatureNotAvailableException) RequestID() string {
28821	return s.RespMetadata.RequestID
28822}
28823
28824type GetAutomationExecutionInput struct {
28825	_ struct{} `type:"structure"`
28826
28827	// The unique identifier for an existing automation execution to examine. The
28828	// execution ID is returned by StartAutomationExecution when the execution of
28829	// an Automation runbook is initiated.
28830	//
28831	// AutomationExecutionId is a required field
28832	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
28833}
28834
28835// String returns the string representation
28836func (s GetAutomationExecutionInput) String() string {
28837	return awsutil.Prettify(s)
28838}
28839
28840// GoString returns the string representation
28841func (s GetAutomationExecutionInput) GoString() string {
28842	return s.String()
28843}
28844
28845// Validate inspects the fields of the type to determine if they are valid.
28846func (s *GetAutomationExecutionInput) Validate() error {
28847	invalidParams := request.ErrInvalidParams{Context: "GetAutomationExecutionInput"}
28848	if s.AutomationExecutionId == nil {
28849		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
28850	}
28851	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
28852		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
28853	}
28854
28855	if invalidParams.Len() > 0 {
28856		return invalidParams
28857	}
28858	return nil
28859}
28860
28861// SetAutomationExecutionId sets the AutomationExecutionId field's value.
28862func (s *GetAutomationExecutionInput) SetAutomationExecutionId(v string) *GetAutomationExecutionInput {
28863	s.AutomationExecutionId = &v
28864	return s
28865}
28866
28867type GetAutomationExecutionOutput struct {
28868	_ struct{} `type:"structure"`
28869
28870	// Detailed information about the current state of an automation execution.
28871	AutomationExecution *AutomationExecution `type:"structure"`
28872}
28873
28874// String returns the string representation
28875func (s GetAutomationExecutionOutput) String() string {
28876	return awsutil.Prettify(s)
28877}
28878
28879// GoString returns the string representation
28880func (s GetAutomationExecutionOutput) GoString() string {
28881	return s.String()
28882}
28883
28884// SetAutomationExecution sets the AutomationExecution field's value.
28885func (s *GetAutomationExecutionOutput) SetAutomationExecution(v *AutomationExecution) *GetAutomationExecutionOutput {
28886	s.AutomationExecution = v
28887	return s
28888}
28889
28890type GetCalendarStateInput struct {
28891	_ struct{} `type:"structure"`
28892
28893	// (Optional) The specific time for which you want to get calendar state information,
28894	// in ISO 8601 (https://en.wikipedia.org/wiki/ISO_8601) format. If you don't
28895	// specify a value or AtTime, the current time is used.
28896	AtTime *string `type:"string"`
28897
28898	// The names or Amazon Resource Names (ARNs) of the Systems Manager documents
28899	// (SSM documents) that represent the calendar entries for which you want to
28900	// get the state.
28901	//
28902	// CalendarNames is a required field
28903	CalendarNames []*string `type:"list" required:"true"`
28904}
28905
28906// String returns the string representation
28907func (s GetCalendarStateInput) String() string {
28908	return awsutil.Prettify(s)
28909}
28910
28911// GoString returns the string representation
28912func (s GetCalendarStateInput) GoString() string {
28913	return s.String()
28914}
28915
28916// Validate inspects the fields of the type to determine if they are valid.
28917func (s *GetCalendarStateInput) Validate() error {
28918	invalidParams := request.ErrInvalidParams{Context: "GetCalendarStateInput"}
28919	if s.CalendarNames == nil {
28920		invalidParams.Add(request.NewErrParamRequired("CalendarNames"))
28921	}
28922
28923	if invalidParams.Len() > 0 {
28924		return invalidParams
28925	}
28926	return nil
28927}
28928
28929// SetAtTime sets the AtTime field's value.
28930func (s *GetCalendarStateInput) SetAtTime(v string) *GetCalendarStateInput {
28931	s.AtTime = &v
28932	return s
28933}
28934
28935// SetCalendarNames sets the CalendarNames field's value.
28936func (s *GetCalendarStateInput) SetCalendarNames(v []*string) *GetCalendarStateInput {
28937	s.CalendarNames = v
28938	return s
28939}
28940
28941type GetCalendarStateOutput struct {
28942	_ struct{} `type:"structure"`
28943
28944	// The time, as an ISO 8601 (https://en.wikipedia.org/wiki/ISO_8601) string,
28945	// that you specified in your command. If you don't specify a time, GetCalendarState
28946	// uses the current time.
28947	AtTime *string `type:"string"`
28948
28949	// The time, as an ISO 8601 (https://en.wikipedia.org/wiki/ISO_8601) string,
28950	// that the calendar state will change. If the current calendar state is OPEN,
28951	// NextTransitionTime indicates when the calendar state changes to CLOSED, and
28952	// vice-versa.
28953	NextTransitionTime *string `type:"string"`
28954
28955	// The state of the calendar. An OPEN calendar indicates that actions are allowed
28956	// to proceed, and a CLOSED calendar indicates that actions aren't allowed to
28957	// proceed.
28958	State *string `type:"string" enum:"CalendarState"`
28959}
28960
28961// String returns the string representation
28962func (s GetCalendarStateOutput) String() string {
28963	return awsutil.Prettify(s)
28964}
28965
28966// GoString returns the string representation
28967func (s GetCalendarStateOutput) GoString() string {
28968	return s.String()
28969}
28970
28971// SetAtTime sets the AtTime field's value.
28972func (s *GetCalendarStateOutput) SetAtTime(v string) *GetCalendarStateOutput {
28973	s.AtTime = &v
28974	return s
28975}
28976
28977// SetNextTransitionTime sets the NextTransitionTime field's value.
28978func (s *GetCalendarStateOutput) SetNextTransitionTime(v string) *GetCalendarStateOutput {
28979	s.NextTransitionTime = &v
28980	return s
28981}
28982
28983// SetState sets the State field's value.
28984func (s *GetCalendarStateOutput) SetState(v string) *GetCalendarStateOutput {
28985	s.State = &v
28986	return s
28987}
28988
28989type GetCommandInvocationInput struct {
28990	_ struct{} `type:"structure"`
28991
28992	// (Required) The parent command ID of the invocation plugin.
28993	//
28994	// CommandId is a required field
28995	CommandId *string `min:"36" type:"string" required:"true"`
28996
28997	// (Required) The ID of the managed instance targeted by the command. A managed
28998	// instance can be an Amazon Elastic Compute Cloud (Amazon EC2) instance or
28999	// an instance in your hybrid environment that is configured for Amazon Web
29000	// Services Systems Manager.
29001	//
29002	// InstanceId is a required field
29003	InstanceId *string `type:"string" required:"true"`
29004
29005	// The name of the plugin for which you want detailed results. If the document
29006	// contains only one plugin, you can omit the name and details for that plugin.
29007	// If the document contains more than one plugin, you must specify the name
29008	// of the plugin for which you want to view details.
29009	//
29010	// Plugin names are also referred to as step names in Systems Manager documents
29011	// (SSM documents). For example, aws:RunShellScript is a plugin.
29012	//
29013	// To find the PluginName, check the document content and find the name of the
29014	// plugin. Alternatively, use ListCommandInvocations with the CommandId and
29015	// Details parameters. The PluginName is the Name attribute of the CommandPlugin
29016	// object in the CommandPlugins list.
29017	PluginName *string `min:"4" type:"string"`
29018}
29019
29020// String returns the string representation
29021func (s GetCommandInvocationInput) String() string {
29022	return awsutil.Prettify(s)
29023}
29024
29025// GoString returns the string representation
29026func (s GetCommandInvocationInput) GoString() string {
29027	return s.String()
29028}
29029
29030// Validate inspects the fields of the type to determine if they are valid.
29031func (s *GetCommandInvocationInput) Validate() error {
29032	invalidParams := request.ErrInvalidParams{Context: "GetCommandInvocationInput"}
29033	if s.CommandId == nil {
29034		invalidParams.Add(request.NewErrParamRequired("CommandId"))
29035	}
29036	if s.CommandId != nil && len(*s.CommandId) < 36 {
29037		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
29038	}
29039	if s.InstanceId == nil {
29040		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
29041	}
29042	if s.PluginName != nil && len(*s.PluginName) < 4 {
29043		invalidParams.Add(request.NewErrParamMinLen("PluginName", 4))
29044	}
29045
29046	if invalidParams.Len() > 0 {
29047		return invalidParams
29048	}
29049	return nil
29050}
29051
29052// SetCommandId sets the CommandId field's value.
29053func (s *GetCommandInvocationInput) SetCommandId(v string) *GetCommandInvocationInput {
29054	s.CommandId = &v
29055	return s
29056}
29057
29058// SetInstanceId sets the InstanceId field's value.
29059func (s *GetCommandInvocationInput) SetInstanceId(v string) *GetCommandInvocationInput {
29060	s.InstanceId = &v
29061	return s
29062}
29063
29064// SetPluginName sets the PluginName field's value.
29065func (s *GetCommandInvocationInput) SetPluginName(v string) *GetCommandInvocationInput {
29066	s.PluginName = &v
29067	return s
29068}
29069
29070type GetCommandInvocationOutput struct {
29071	_ struct{} `type:"structure"`
29072
29073	// Amazon CloudWatch Logs information where Systems Manager sent the command
29074	// output.
29075	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
29076
29077	// The parent command ID of the invocation plugin.
29078	CommandId *string `min:"36" type:"string"`
29079
29080	// The comment text for the command.
29081	Comment *string `type:"string"`
29082
29083	// The name of the document that was run. For example, AWS-RunShellScript.
29084	DocumentName *string `type:"string"`
29085
29086	// The Systems Manager document (SSM document) version used in the request.
29087	DocumentVersion *string `type:"string"`
29088
29089	// Duration since ExecutionStartDateTime.
29090	ExecutionElapsedTime *string `type:"string"`
29091
29092	// The date and time the plugin finished running. Date and time are written
29093	// in ISO 8601 format. For example, June 7, 2017 is represented as 2017-06-7.
29094	// The following sample Amazon Web Services CLI command uses the InvokedAfter
29095	// filter.
29096	//
29097	// aws ssm list-commands --filters key=InvokedAfter,value=2017-06-07T00:00:00Z
29098	//
29099	// If the plugin hasn't started to run, the string is empty.
29100	ExecutionEndDateTime *string `type:"string"`
29101
29102	// The date and time the plugin started running. Date and time are written in
29103	// ISO 8601 format. For example, June 7, 2017 is represented as 2017-06-7. The
29104	// following sample Amazon Web Services CLI command uses the InvokedBefore filter.
29105	//
29106	// aws ssm list-commands --filters key=InvokedBefore,value=2017-06-07T00:00:00Z
29107	//
29108	// If the plugin hasn't started to run, the string is empty.
29109	ExecutionStartDateTime *string `type:"string"`
29110
29111	// The ID of the managed instance targeted by the command. A managed instance
29112	// can be an EC2 instance or an instance in your hybrid environment that is
29113	// configured for Systems Manager.
29114	InstanceId *string `type:"string"`
29115
29116	// The name of the plugin, or step name, for which details are reported. For
29117	// example, aws:RunShellScript is a plugin.
29118	PluginName *string `min:"4" type:"string"`
29119
29120	// The error level response code for the plugin script. If the response code
29121	// is -1, then the command hasn't started running on the instance, or it wasn't
29122	// received by the instance.
29123	ResponseCode *int64 `type:"integer"`
29124
29125	// The first 8,000 characters written by the plugin to stderr. If the command
29126	// hasn't finished running, then this string is empty.
29127	StandardErrorContent *string `type:"string"`
29128
29129	// The URL for the complete text written by the plugin to stderr. If the command
29130	// hasn't finished running, then this string is empty.
29131	StandardErrorUrl *string `type:"string"`
29132
29133	// The first 24,000 characters written by the plugin to stdout. If the command
29134	// hasn't finished running, if ExecutionStatus is neither Succeeded nor Failed,
29135	// then this string is empty.
29136	StandardOutputContent *string `type:"string"`
29137
29138	// The URL for the complete text written by the plugin to stdout in Amazon Simple
29139	// Storage Service (Amazon S3). If an S3 bucket wasn't specified, then this
29140	// string is empty.
29141	StandardOutputUrl *string `type:"string"`
29142
29143	// The status of this invocation plugin. This status can be different than StatusDetails.
29144	Status *string `type:"string" enum:"CommandInvocationStatus"`
29145
29146	// A detailed status of the command execution for an invocation. StatusDetails
29147	// includes more information than Status because it includes states resulting
29148	// from error and concurrency control parameters. StatusDetails can show different
29149	// results than Status. For more information about these statuses, see Understanding
29150	// command statuses (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitor-commands.html)
29151	// in the Amazon Web Services Systems Manager User Guide. StatusDetails can
29152	// be one of the following values:
29153	//
29154	//    * Pending: The command hasn't been sent to the instance.
29155	//
29156	//    * In Progress: The command has been sent to the instance but hasn't reached
29157	//    a terminal state.
29158	//
29159	//    * Delayed: The system attempted to send the command to the target, but
29160	//    the target wasn't available. The instance might not be available because
29161	//    of network issues, because the instance was stopped, or for similar reasons.
29162	//    The system will try to send the command again.
29163	//
29164	//    * Success: The command or plugin ran successfully. This is a terminal
29165	//    state.
29166	//
29167	//    * Delivery Timed Out: The command wasn't delivered to the instance before
29168	//    the delivery timeout expired. Delivery timeouts don't count against the
29169	//    parent command's MaxErrors limit, but they do contribute to whether the
29170	//    parent command status is Success or Incomplete. This is a terminal state.
29171	//
29172	//    * Execution Timed Out: The command started to run on the instance, but
29173	//    the execution wasn't complete before the timeout expired. Execution timeouts
29174	//    count against the MaxErrors limit of the parent command. This is a terminal
29175	//    state.
29176	//
29177	//    * Failed: The command wasn't run successfully on the instance. For a plugin,
29178	//    this indicates that the result code wasn't zero. For a command invocation,
29179	//    this indicates that the result code for one or more plugins wasn't zero.
29180	//    Invocation failures count against the MaxErrors limit of the parent command.
29181	//    This is a terminal state.
29182	//
29183	//    * Canceled: The command was terminated before it was completed. This is
29184	//    a terminal state.
29185	//
29186	//    * Undeliverable: The command can't be delivered to the instance. The instance
29187	//    might not exist or might not be responding. Undeliverable invocations
29188	//    don't count against the parent command's MaxErrors limit and don't contribute
29189	//    to whether the parent command status is Success or Incomplete. This is
29190	//    a terminal state.
29191	//
29192	//    * Terminated: The parent command exceeded its MaxErrors limit and subsequent
29193	//    command invocations were canceled by the system. This is a terminal state.
29194	StatusDetails *string `type:"string"`
29195}
29196
29197// String returns the string representation
29198func (s GetCommandInvocationOutput) String() string {
29199	return awsutil.Prettify(s)
29200}
29201
29202// GoString returns the string representation
29203func (s GetCommandInvocationOutput) GoString() string {
29204	return s.String()
29205}
29206
29207// SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
29208func (s *GetCommandInvocationOutput) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *GetCommandInvocationOutput {
29209	s.CloudWatchOutputConfig = v
29210	return s
29211}
29212
29213// SetCommandId sets the CommandId field's value.
29214func (s *GetCommandInvocationOutput) SetCommandId(v string) *GetCommandInvocationOutput {
29215	s.CommandId = &v
29216	return s
29217}
29218
29219// SetComment sets the Comment field's value.
29220func (s *GetCommandInvocationOutput) SetComment(v string) *GetCommandInvocationOutput {
29221	s.Comment = &v
29222	return s
29223}
29224
29225// SetDocumentName sets the DocumentName field's value.
29226func (s *GetCommandInvocationOutput) SetDocumentName(v string) *GetCommandInvocationOutput {
29227	s.DocumentName = &v
29228	return s
29229}
29230
29231// SetDocumentVersion sets the DocumentVersion field's value.
29232func (s *GetCommandInvocationOutput) SetDocumentVersion(v string) *GetCommandInvocationOutput {
29233	s.DocumentVersion = &v
29234	return s
29235}
29236
29237// SetExecutionElapsedTime sets the ExecutionElapsedTime field's value.
29238func (s *GetCommandInvocationOutput) SetExecutionElapsedTime(v string) *GetCommandInvocationOutput {
29239	s.ExecutionElapsedTime = &v
29240	return s
29241}
29242
29243// SetExecutionEndDateTime sets the ExecutionEndDateTime field's value.
29244func (s *GetCommandInvocationOutput) SetExecutionEndDateTime(v string) *GetCommandInvocationOutput {
29245	s.ExecutionEndDateTime = &v
29246	return s
29247}
29248
29249// SetExecutionStartDateTime sets the ExecutionStartDateTime field's value.
29250func (s *GetCommandInvocationOutput) SetExecutionStartDateTime(v string) *GetCommandInvocationOutput {
29251	s.ExecutionStartDateTime = &v
29252	return s
29253}
29254
29255// SetInstanceId sets the InstanceId field's value.
29256func (s *GetCommandInvocationOutput) SetInstanceId(v string) *GetCommandInvocationOutput {
29257	s.InstanceId = &v
29258	return s
29259}
29260
29261// SetPluginName sets the PluginName field's value.
29262func (s *GetCommandInvocationOutput) SetPluginName(v string) *GetCommandInvocationOutput {
29263	s.PluginName = &v
29264	return s
29265}
29266
29267// SetResponseCode sets the ResponseCode field's value.
29268func (s *GetCommandInvocationOutput) SetResponseCode(v int64) *GetCommandInvocationOutput {
29269	s.ResponseCode = &v
29270	return s
29271}
29272
29273// SetStandardErrorContent sets the StandardErrorContent field's value.
29274func (s *GetCommandInvocationOutput) SetStandardErrorContent(v string) *GetCommandInvocationOutput {
29275	s.StandardErrorContent = &v
29276	return s
29277}
29278
29279// SetStandardErrorUrl sets the StandardErrorUrl field's value.
29280func (s *GetCommandInvocationOutput) SetStandardErrorUrl(v string) *GetCommandInvocationOutput {
29281	s.StandardErrorUrl = &v
29282	return s
29283}
29284
29285// SetStandardOutputContent sets the StandardOutputContent field's value.
29286func (s *GetCommandInvocationOutput) SetStandardOutputContent(v string) *GetCommandInvocationOutput {
29287	s.StandardOutputContent = &v
29288	return s
29289}
29290
29291// SetStandardOutputUrl sets the StandardOutputUrl field's value.
29292func (s *GetCommandInvocationOutput) SetStandardOutputUrl(v string) *GetCommandInvocationOutput {
29293	s.StandardOutputUrl = &v
29294	return s
29295}
29296
29297// SetStatus sets the Status field's value.
29298func (s *GetCommandInvocationOutput) SetStatus(v string) *GetCommandInvocationOutput {
29299	s.Status = &v
29300	return s
29301}
29302
29303// SetStatusDetails sets the StatusDetails field's value.
29304func (s *GetCommandInvocationOutput) SetStatusDetails(v string) *GetCommandInvocationOutput {
29305	s.StatusDetails = &v
29306	return s
29307}
29308
29309type GetConnectionStatusInput struct {
29310	_ struct{} `type:"structure"`
29311
29312	// The instance ID.
29313	//
29314	// Target is a required field
29315	Target *string `min:"1" type:"string" required:"true"`
29316}
29317
29318// String returns the string representation
29319func (s GetConnectionStatusInput) String() string {
29320	return awsutil.Prettify(s)
29321}
29322
29323// GoString returns the string representation
29324func (s GetConnectionStatusInput) GoString() string {
29325	return s.String()
29326}
29327
29328// Validate inspects the fields of the type to determine if they are valid.
29329func (s *GetConnectionStatusInput) Validate() error {
29330	invalidParams := request.ErrInvalidParams{Context: "GetConnectionStatusInput"}
29331	if s.Target == nil {
29332		invalidParams.Add(request.NewErrParamRequired("Target"))
29333	}
29334	if s.Target != nil && len(*s.Target) < 1 {
29335		invalidParams.Add(request.NewErrParamMinLen("Target", 1))
29336	}
29337
29338	if invalidParams.Len() > 0 {
29339		return invalidParams
29340	}
29341	return nil
29342}
29343
29344// SetTarget sets the Target field's value.
29345func (s *GetConnectionStatusInput) SetTarget(v string) *GetConnectionStatusInput {
29346	s.Target = &v
29347	return s
29348}
29349
29350type GetConnectionStatusOutput struct {
29351	_ struct{} `type:"structure"`
29352
29353	// The status of the connection to the instance. For example, 'Connected' or
29354	// 'Not Connected'.
29355	Status *string `type:"string" enum:"ConnectionStatus"`
29356
29357	// The ID of the instance to check connection status.
29358	Target *string `min:"1" type:"string"`
29359}
29360
29361// String returns the string representation
29362func (s GetConnectionStatusOutput) String() string {
29363	return awsutil.Prettify(s)
29364}
29365
29366// GoString returns the string representation
29367func (s GetConnectionStatusOutput) GoString() string {
29368	return s.String()
29369}
29370
29371// SetStatus sets the Status field's value.
29372func (s *GetConnectionStatusOutput) SetStatus(v string) *GetConnectionStatusOutput {
29373	s.Status = &v
29374	return s
29375}
29376
29377// SetTarget sets the Target field's value.
29378func (s *GetConnectionStatusOutput) SetTarget(v string) *GetConnectionStatusOutput {
29379	s.Target = &v
29380	return s
29381}
29382
29383type GetDefaultPatchBaselineInput struct {
29384	_ struct{} `type:"structure"`
29385
29386	// Returns the default patch baseline for the specified operating system.
29387	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
29388}
29389
29390// String returns the string representation
29391func (s GetDefaultPatchBaselineInput) String() string {
29392	return awsutil.Prettify(s)
29393}
29394
29395// GoString returns the string representation
29396func (s GetDefaultPatchBaselineInput) GoString() string {
29397	return s.String()
29398}
29399
29400// SetOperatingSystem sets the OperatingSystem field's value.
29401func (s *GetDefaultPatchBaselineInput) SetOperatingSystem(v string) *GetDefaultPatchBaselineInput {
29402	s.OperatingSystem = &v
29403	return s
29404}
29405
29406type GetDefaultPatchBaselineOutput struct {
29407	_ struct{} `type:"structure"`
29408
29409	// The ID of the default patch baseline.
29410	BaselineId *string `min:"20" type:"string"`
29411
29412	// The operating system for the returned patch baseline.
29413	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
29414}
29415
29416// String returns the string representation
29417func (s GetDefaultPatchBaselineOutput) String() string {
29418	return awsutil.Prettify(s)
29419}
29420
29421// GoString returns the string representation
29422func (s GetDefaultPatchBaselineOutput) GoString() string {
29423	return s.String()
29424}
29425
29426// SetBaselineId sets the BaselineId field's value.
29427func (s *GetDefaultPatchBaselineOutput) SetBaselineId(v string) *GetDefaultPatchBaselineOutput {
29428	s.BaselineId = &v
29429	return s
29430}
29431
29432// SetOperatingSystem sets the OperatingSystem field's value.
29433func (s *GetDefaultPatchBaselineOutput) SetOperatingSystem(v string) *GetDefaultPatchBaselineOutput {
29434	s.OperatingSystem = &v
29435	return s
29436}
29437
29438type GetDeployablePatchSnapshotForInstanceInput struct {
29439	_ struct{} `type:"structure"`
29440
29441	// Defines the basic information about a patch baseline override.
29442	BaselineOverride *BaselineOverride `type:"structure"`
29443
29444	// The ID of the instance for which the appropriate patch snapshot should be
29445	// retrieved.
29446	//
29447	// InstanceId is a required field
29448	InstanceId *string `type:"string" required:"true"`
29449
29450	// The snapshot ID provided by the user when running AWS-RunPatchBaseline.
29451	//
29452	// SnapshotId is a required field
29453	SnapshotId *string `min:"36" type:"string" required:"true"`
29454}
29455
29456// String returns the string representation
29457func (s GetDeployablePatchSnapshotForInstanceInput) String() string {
29458	return awsutil.Prettify(s)
29459}
29460
29461// GoString returns the string representation
29462func (s GetDeployablePatchSnapshotForInstanceInput) GoString() string {
29463	return s.String()
29464}
29465
29466// Validate inspects the fields of the type to determine if they are valid.
29467func (s *GetDeployablePatchSnapshotForInstanceInput) Validate() error {
29468	invalidParams := request.ErrInvalidParams{Context: "GetDeployablePatchSnapshotForInstanceInput"}
29469	if s.InstanceId == nil {
29470		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
29471	}
29472	if s.SnapshotId == nil {
29473		invalidParams.Add(request.NewErrParamRequired("SnapshotId"))
29474	}
29475	if s.SnapshotId != nil && len(*s.SnapshotId) < 36 {
29476		invalidParams.Add(request.NewErrParamMinLen("SnapshotId", 36))
29477	}
29478	if s.BaselineOverride != nil {
29479		if err := s.BaselineOverride.Validate(); err != nil {
29480			invalidParams.AddNested("BaselineOverride", err.(request.ErrInvalidParams))
29481		}
29482	}
29483
29484	if invalidParams.Len() > 0 {
29485		return invalidParams
29486	}
29487	return nil
29488}
29489
29490// SetBaselineOverride sets the BaselineOverride field's value.
29491func (s *GetDeployablePatchSnapshotForInstanceInput) SetBaselineOverride(v *BaselineOverride) *GetDeployablePatchSnapshotForInstanceInput {
29492	s.BaselineOverride = v
29493	return s
29494}
29495
29496// SetInstanceId sets the InstanceId field's value.
29497func (s *GetDeployablePatchSnapshotForInstanceInput) SetInstanceId(v string) *GetDeployablePatchSnapshotForInstanceInput {
29498	s.InstanceId = &v
29499	return s
29500}
29501
29502// SetSnapshotId sets the SnapshotId field's value.
29503func (s *GetDeployablePatchSnapshotForInstanceInput) SetSnapshotId(v string) *GetDeployablePatchSnapshotForInstanceInput {
29504	s.SnapshotId = &v
29505	return s
29506}
29507
29508type GetDeployablePatchSnapshotForInstanceOutput struct {
29509	_ struct{} `type:"structure"`
29510
29511	// The instance ID.
29512	InstanceId *string `type:"string"`
29513
29514	// Returns the specific operating system (for example Windows Server 2012 or
29515	// Amazon Linux 2015.09) on the instance for the specified patch snapshot.
29516	Product *string `type:"string"`
29517
29518	// A pre-signed Amazon Simple Storage Service (Amazon S3) URL that can be used
29519	// to download the patch snapshot.
29520	SnapshotDownloadUrl *string `type:"string"`
29521
29522	// The user-defined snapshot ID.
29523	SnapshotId *string `min:"36" type:"string"`
29524}
29525
29526// String returns the string representation
29527func (s GetDeployablePatchSnapshotForInstanceOutput) String() string {
29528	return awsutil.Prettify(s)
29529}
29530
29531// GoString returns the string representation
29532func (s GetDeployablePatchSnapshotForInstanceOutput) GoString() string {
29533	return s.String()
29534}
29535
29536// SetInstanceId sets the InstanceId field's value.
29537func (s *GetDeployablePatchSnapshotForInstanceOutput) SetInstanceId(v string) *GetDeployablePatchSnapshotForInstanceOutput {
29538	s.InstanceId = &v
29539	return s
29540}
29541
29542// SetProduct sets the Product field's value.
29543func (s *GetDeployablePatchSnapshotForInstanceOutput) SetProduct(v string) *GetDeployablePatchSnapshotForInstanceOutput {
29544	s.Product = &v
29545	return s
29546}
29547
29548// SetSnapshotDownloadUrl sets the SnapshotDownloadUrl field's value.
29549func (s *GetDeployablePatchSnapshotForInstanceOutput) SetSnapshotDownloadUrl(v string) *GetDeployablePatchSnapshotForInstanceOutput {
29550	s.SnapshotDownloadUrl = &v
29551	return s
29552}
29553
29554// SetSnapshotId sets the SnapshotId field's value.
29555func (s *GetDeployablePatchSnapshotForInstanceOutput) SetSnapshotId(v string) *GetDeployablePatchSnapshotForInstanceOutput {
29556	s.SnapshotId = &v
29557	return s
29558}
29559
29560type GetDocumentInput struct {
29561	_ struct{} `type:"structure"`
29562
29563	// Returns the document in the specified format. The document format can be
29564	// either JSON or YAML. JSON is the default format.
29565	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
29566
29567	// The document version for which you want information.
29568	DocumentVersion *string `type:"string"`
29569
29570	// The name of the SSM document.
29571	//
29572	// Name is a required field
29573	Name *string `type:"string" required:"true"`
29574
29575	// An optional field specifying the version of the artifact associated with
29576	// the document. For example, "Release 12, Update 6". This value is unique across
29577	// all versions of a document and can't be changed.
29578	VersionName *string `type:"string"`
29579}
29580
29581// String returns the string representation
29582func (s GetDocumentInput) String() string {
29583	return awsutil.Prettify(s)
29584}
29585
29586// GoString returns the string representation
29587func (s GetDocumentInput) GoString() string {
29588	return s.String()
29589}
29590
29591// Validate inspects the fields of the type to determine if they are valid.
29592func (s *GetDocumentInput) Validate() error {
29593	invalidParams := request.ErrInvalidParams{Context: "GetDocumentInput"}
29594	if s.Name == nil {
29595		invalidParams.Add(request.NewErrParamRequired("Name"))
29596	}
29597
29598	if invalidParams.Len() > 0 {
29599		return invalidParams
29600	}
29601	return nil
29602}
29603
29604// SetDocumentFormat sets the DocumentFormat field's value.
29605func (s *GetDocumentInput) SetDocumentFormat(v string) *GetDocumentInput {
29606	s.DocumentFormat = &v
29607	return s
29608}
29609
29610// SetDocumentVersion sets the DocumentVersion field's value.
29611func (s *GetDocumentInput) SetDocumentVersion(v string) *GetDocumentInput {
29612	s.DocumentVersion = &v
29613	return s
29614}
29615
29616// SetName sets the Name field's value.
29617func (s *GetDocumentInput) SetName(v string) *GetDocumentInput {
29618	s.Name = &v
29619	return s
29620}
29621
29622// SetVersionName sets the VersionName field's value.
29623func (s *GetDocumentInput) SetVersionName(v string) *GetDocumentInput {
29624	s.VersionName = &v
29625	return s
29626}
29627
29628type GetDocumentOutput struct {
29629	_ struct{} `type:"structure"`
29630
29631	// A description of the document attachments, including names, locations, sizes,
29632	// and so on.
29633	AttachmentsContent []*AttachmentContent `type:"list"`
29634
29635	// The contents of the SSM document.
29636	Content *string `min:"1" type:"string"`
29637
29638	// The date the SSM document was created.
29639	CreatedDate *time.Time `type:"timestamp"`
29640
29641	// The friendly name of the SSM document. This value can differ for each version
29642	// of the document. If you want to update this value, see UpdateDocument.
29643	DisplayName *string `type:"string"`
29644
29645	// The document format, either JSON or YAML.
29646	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
29647
29648	// The document type.
29649	DocumentType *string `type:"string" enum:"DocumentType"`
29650
29651	// The document version.
29652	DocumentVersion *string `type:"string"`
29653
29654	// The name of the SSM document.
29655	Name *string `type:"string"`
29656
29657	// A list of SSM documents required by a document. For example, an ApplicationConfiguration
29658	// document requires an ApplicationConfigurationSchema document.
29659	Requires []*DocumentRequires `min:"1" type:"list"`
29660
29661	// The current review status of a new custom Systems Manager document (SSM document)
29662	// created by a member of your organization, or of the latest version of an
29663	// existing SSM document.
29664	//
29665	// Only one version of an SSM document can be in the APPROVED state at a time.
29666	// When a new version is approved, the status of the previous version changes
29667	// to REJECTED.
29668	//
29669	// Only one version of an SSM document can be in review, or PENDING, at a time.
29670	ReviewStatus *string `type:"string" enum:"ReviewStatus"`
29671
29672	// The status of the SSM document, such as Creating, Active, Updating, Failed,
29673	// and Deleting.
29674	Status *string `type:"string" enum:"DocumentStatus"`
29675
29676	// A message returned by Amazon Web Services Systems Manager that explains the
29677	// Status value. For example, a Failed status might be explained by the StatusInformation
29678	// message, "The specified S3 bucket doesn't exist. Verify that the URL of the
29679	// S3 bucket is correct."
29680	StatusInformation *string `type:"string"`
29681
29682	// The version of the artifact associated with the document. For example, "Release
29683	// 12, Update 6". This value is unique across all versions of a document, and
29684	// can't be changed.
29685	VersionName *string `type:"string"`
29686}
29687
29688// String returns the string representation
29689func (s GetDocumentOutput) String() string {
29690	return awsutil.Prettify(s)
29691}
29692
29693// GoString returns the string representation
29694func (s GetDocumentOutput) GoString() string {
29695	return s.String()
29696}
29697
29698// SetAttachmentsContent sets the AttachmentsContent field's value.
29699func (s *GetDocumentOutput) SetAttachmentsContent(v []*AttachmentContent) *GetDocumentOutput {
29700	s.AttachmentsContent = v
29701	return s
29702}
29703
29704// SetContent sets the Content field's value.
29705func (s *GetDocumentOutput) SetContent(v string) *GetDocumentOutput {
29706	s.Content = &v
29707	return s
29708}
29709
29710// SetCreatedDate sets the CreatedDate field's value.
29711func (s *GetDocumentOutput) SetCreatedDate(v time.Time) *GetDocumentOutput {
29712	s.CreatedDate = &v
29713	return s
29714}
29715
29716// SetDisplayName sets the DisplayName field's value.
29717func (s *GetDocumentOutput) SetDisplayName(v string) *GetDocumentOutput {
29718	s.DisplayName = &v
29719	return s
29720}
29721
29722// SetDocumentFormat sets the DocumentFormat field's value.
29723func (s *GetDocumentOutput) SetDocumentFormat(v string) *GetDocumentOutput {
29724	s.DocumentFormat = &v
29725	return s
29726}
29727
29728// SetDocumentType sets the DocumentType field's value.
29729func (s *GetDocumentOutput) SetDocumentType(v string) *GetDocumentOutput {
29730	s.DocumentType = &v
29731	return s
29732}
29733
29734// SetDocumentVersion sets the DocumentVersion field's value.
29735func (s *GetDocumentOutput) SetDocumentVersion(v string) *GetDocumentOutput {
29736	s.DocumentVersion = &v
29737	return s
29738}
29739
29740// SetName sets the Name field's value.
29741func (s *GetDocumentOutput) SetName(v string) *GetDocumentOutput {
29742	s.Name = &v
29743	return s
29744}
29745
29746// SetRequires sets the Requires field's value.
29747func (s *GetDocumentOutput) SetRequires(v []*DocumentRequires) *GetDocumentOutput {
29748	s.Requires = v
29749	return s
29750}
29751
29752// SetReviewStatus sets the ReviewStatus field's value.
29753func (s *GetDocumentOutput) SetReviewStatus(v string) *GetDocumentOutput {
29754	s.ReviewStatus = &v
29755	return s
29756}
29757
29758// SetStatus sets the Status field's value.
29759func (s *GetDocumentOutput) SetStatus(v string) *GetDocumentOutput {
29760	s.Status = &v
29761	return s
29762}
29763
29764// SetStatusInformation sets the StatusInformation field's value.
29765func (s *GetDocumentOutput) SetStatusInformation(v string) *GetDocumentOutput {
29766	s.StatusInformation = &v
29767	return s
29768}
29769
29770// SetVersionName sets the VersionName field's value.
29771func (s *GetDocumentOutput) SetVersionName(v string) *GetDocumentOutput {
29772	s.VersionName = &v
29773	return s
29774}
29775
29776type GetInventoryInput struct {
29777	_ struct{} `type:"structure"`
29778
29779	// Returns counts of inventory types based on one or more expressions. For example,
29780	// if you aggregate by using an expression that uses the AWS:InstanceInformation.PlatformType
29781	// type, you can see a count of how many Windows and Linux instances exist in
29782	// your inventoried fleet.
29783	Aggregators []*InventoryAggregator `min:"1" type:"list"`
29784
29785	// One or more filters. Use a filter to return a more specific list of results.
29786	Filters []*InventoryFilter `min:"1" type:"list"`
29787
29788	// The maximum number of items to return for this call. The call also returns
29789	// a token that you can specify in a subsequent call to get the next set of
29790	// results.
29791	MaxResults *int64 `min:"1" type:"integer"`
29792
29793	// The token for the next set of items to return. (You received this token from
29794	// a previous call.)
29795	NextToken *string `type:"string"`
29796
29797	// The list of inventory item types to return.
29798	ResultAttributes []*ResultAttribute `min:"1" type:"list"`
29799}
29800
29801// String returns the string representation
29802func (s GetInventoryInput) String() string {
29803	return awsutil.Prettify(s)
29804}
29805
29806// GoString returns the string representation
29807func (s GetInventoryInput) GoString() string {
29808	return s.String()
29809}
29810
29811// Validate inspects the fields of the type to determine if they are valid.
29812func (s *GetInventoryInput) Validate() error {
29813	invalidParams := request.ErrInvalidParams{Context: "GetInventoryInput"}
29814	if s.Aggregators != nil && len(s.Aggregators) < 1 {
29815		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
29816	}
29817	if s.Filters != nil && len(s.Filters) < 1 {
29818		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
29819	}
29820	if s.MaxResults != nil && *s.MaxResults < 1 {
29821		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
29822	}
29823	if s.ResultAttributes != nil && len(s.ResultAttributes) < 1 {
29824		invalidParams.Add(request.NewErrParamMinLen("ResultAttributes", 1))
29825	}
29826	if s.Aggregators != nil {
29827		for i, v := range s.Aggregators {
29828			if v == nil {
29829				continue
29830			}
29831			if err := v.Validate(); err != nil {
29832				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
29833			}
29834		}
29835	}
29836	if s.Filters != nil {
29837		for i, v := range s.Filters {
29838			if v == nil {
29839				continue
29840			}
29841			if err := v.Validate(); err != nil {
29842				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
29843			}
29844		}
29845	}
29846	if s.ResultAttributes != nil {
29847		for i, v := range s.ResultAttributes {
29848			if v == nil {
29849				continue
29850			}
29851			if err := v.Validate(); err != nil {
29852				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResultAttributes", i), err.(request.ErrInvalidParams))
29853			}
29854		}
29855	}
29856
29857	if invalidParams.Len() > 0 {
29858		return invalidParams
29859	}
29860	return nil
29861}
29862
29863// SetAggregators sets the Aggregators field's value.
29864func (s *GetInventoryInput) SetAggregators(v []*InventoryAggregator) *GetInventoryInput {
29865	s.Aggregators = v
29866	return s
29867}
29868
29869// SetFilters sets the Filters field's value.
29870func (s *GetInventoryInput) SetFilters(v []*InventoryFilter) *GetInventoryInput {
29871	s.Filters = v
29872	return s
29873}
29874
29875// SetMaxResults sets the MaxResults field's value.
29876func (s *GetInventoryInput) SetMaxResults(v int64) *GetInventoryInput {
29877	s.MaxResults = &v
29878	return s
29879}
29880
29881// SetNextToken sets the NextToken field's value.
29882func (s *GetInventoryInput) SetNextToken(v string) *GetInventoryInput {
29883	s.NextToken = &v
29884	return s
29885}
29886
29887// SetResultAttributes sets the ResultAttributes field's value.
29888func (s *GetInventoryInput) SetResultAttributes(v []*ResultAttribute) *GetInventoryInput {
29889	s.ResultAttributes = v
29890	return s
29891}
29892
29893type GetInventoryOutput struct {
29894	_ struct{} `type:"structure"`
29895
29896	// Collection of inventory entities such as a collection of instance inventory.
29897	Entities []*InventoryResultEntity `type:"list"`
29898
29899	// The token to use when requesting the next set of items. If there are no additional
29900	// items to return, the string is empty.
29901	NextToken *string `type:"string"`
29902}
29903
29904// String returns the string representation
29905func (s GetInventoryOutput) String() string {
29906	return awsutil.Prettify(s)
29907}
29908
29909// GoString returns the string representation
29910func (s GetInventoryOutput) GoString() string {
29911	return s.String()
29912}
29913
29914// SetEntities sets the Entities field's value.
29915func (s *GetInventoryOutput) SetEntities(v []*InventoryResultEntity) *GetInventoryOutput {
29916	s.Entities = v
29917	return s
29918}
29919
29920// SetNextToken sets the NextToken field's value.
29921func (s *GetInventoryOutput) SetNextToken(v string) *GetInventoryOutput {
29922	s.NextToken = &v
29923	return s
29924}
29925
29926type GetInventorySchemaInput struct {
29927	_ struct{} `type:"structure"`
29928
29929	// Returns inventory schemas that support aggregation. For example, this call
29930	// returns the AWS:InstanceInformation type, because it supports aggregation
29931	// based on the PlatformName, PlatformType, and PlatformVersion attributes.
29932	Aggregator *bool `type:"boolean"`
29933
29934	// The maximum number of items to return for this call. The call also returns
29935	// a token that you can specify in a subsequent call to get the next set of
29936	// results.
29937	MaxResults *int64 `min:"50" type:"integer"`
29938
29939	// The token for the next set of items to return. (You received this token from
29940	// a previous call.)
29941	NextToken *string `type:"string"`
29942
29943	// Returns the sub-type schema for a specified inventory type.
29944	SubType *bool `type:"boolean"`
29945
29946	// The type of inventory item to return.
29947	TypeName *string `type:"string"`
29948}
29949
29950// String returns the string representation
29951func (s GetInventorySchemaInput) String() string {
29952	return awsutil.Prettify(s)
29953}
29954
29955// GoString returns the string representation
29956func (s GetInventorySchemaInput) GoString() string {
29957	return s.String()
29958}
29959
29960// Validate inspects the fields of the type to determine if they are valid.
29961func (s *GetInventorySchemaInput) Validate() error {
29962	invalidParams := request.ErrInvalidParams{Context: "GetInventorySchemaInput"}
29963	if s.MaxResults != nil && *s.MaxResults < 50 {
29964		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
29965	}
29966
29967	if invalidParams.Len() > 0 {
29968		return invalidParams
29969	}
29970	return nil
29971}
29972
29973// SetAggregator sets the Aggregator field's value.
29974func (s *GetInventorySchemaInput) SetAggregator(v bool) *GetInventorySchemaInput {
29975	s.Aggregator = &v
29976	return s
29977}
29978
29979// SetMaxResults sets the MaxResults field's value.
29980func (s *GetInventorySchemaInput) SetMaxResults(v int64) *GetInventorySchemaInput {
29981	s.MaxResults = &v
29982	return s
29983}
29984
29985// SetNextToken sets the NextToken field's value.
29986func (s *GetInventorySchemaInput) SetNextToken(v string) *GetInventorySchemaInput {
29987	s.NextToken = &v
29988	return s
29989}
29990
29991// SetSubType sets the SubType field's value.
29992func (s *GetInventorySchemaInput) SetSubType(v bool) *GetInventorySchemaInput {
29993	s.SubType = &v
29994	return s
29995}
29996
29997// SetTypeName sets the TypeName field's value.
29998func (s *GetInventorySchemaInput) SetTypeName(v string) *GetInventorySchemaInput {
29999	s.TypeName = &v
30000	return s
30001}
30002
30003type GetInventorySchemaOutput struct {
30004	_ struct{} `type:"structure"`
30005
30006	// The token to use when requesting the next set of items. If there are no additional
30007	// items to return, the string is empty.
30008	NextToken *string `type:"string"`
30009
30010	// Inventory schemas returned by the request.
30011	Schemas []*InventoryItemSchema `type:"list"`
30012}
30013
30014// String returns the string representation
30015func (s GetInventorySchemaOutput) String() string {
30016	return awsutil.Prettify(s)
30017}
30018
30019// GoString returns the string representation
30020func (s GetInventorySchemaOutput) GoString() string {
30021	return s.String()
30022}
30023
30024// SetNextToken sets the NextToken field's value.
30025func (s *GetInventorySchemaOutput) SetNextToken(v string) *GetInventorySchemaOutput {
30026	s.NextToken = &v
30027	return s
30028}
30029
30030// SetSchemas sets the Schemas field's value.
30031func (s *GetInventorySchemaOutput) SetSchemas(v []*InventoryItemSchema) *GetInventorySchemaOutput {
30032	s.Schemas = v
30033	return s
30034}
30035
30036type GetMaintenanceWindowExecutionInput struct {
30037	_ struct{} `type:"structure"`
30038
30039	// The ID of the maintenance window execution that includes the task.
30040	//
30041	// WindowExecutionId is a required field
30042	WindowExecutionId *string `min:"36" type:"string" required:"true"`
30043}
30044
30045// String returns the string representation
30046func (s GetMaintenanceWindowExecutionInput) String() string {
30047	return awsutil.Prettify(s)
30048}
30049
30050// GoString returns the string representation
30051func (s GetMaintenanceWindowExecutionInput) GoString() string {
30052	return s.String()
30053}
30054
30055// Validate inspects the fields of the type to determine if they are valid.
30056func (s *GetMaintenanceWindowExecutionInput) Validate() error {
30057	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowExecutionInput"}
30058	if s.WindowExecutionId == nil {
30059		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
30060	}
30061	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
30062		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
30063	}
30064
30065	if invalidParams.Len() > 0 {
30066		return invalidParams
30067	}
30068	return nil
30069}
30070
30071// SetWindowExecutionId sets the WindowExecutionId field's value.
30072func (s *GetMaintenanceWindowExecutionInput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionInput {
30073	s.WindowExecutionId = &v
30074	return s
30075}
30076
30077type GetMaintenanceWindowExecutionOutput struct {
30078	_ struct{} `type:"structure"`
30079
30080	// The time the maintenance window finished running.
30081	EndTime *time.Time `type:"timestamp"`
30082
30083	// The time the maintenance window started running.
30084	StartTime *time.Time `type:"timestamp"`
30085
30086	// The status of the maintenance window execution.
30087	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
30088
30089	// The details explaining the status. Not available for all status values.
30090	StatusDetails *string `type:"string"`
30091
30092	// The ID of the task executions from the maintenance window execution.
30093	TaskIds []*string `type:"list"`
30094
30095	// The ID of the maintenance window execution.
30096	WindowExecutionId *string `min:"36" type:"string"`
30097}
30098
30099// String returns the string representation
30100func (s GetMaintenanceWindowExecutionOutput) String() string {
30101	return awsutil.Prettify(s)
30102}
30103
30104// GoString returns the string representation
30105func (s GetMaintenanceWindowExecutionOutput) GoString() string {
30106	return s.String()
30107}
30108
30109// SetEndTime sets the EndTime field's value.
30110func (s *GetMaintenanceWindowExecutionOutput) SetEndTime(v time.Time) *GetMaintenanceWindowExecutionOutput {
30111	s.EndTime = &v
30112	return s
30113}
30114
30115// SetStartTime sets the StartTime field's value.
30116func (s *GetMaintenanceWindowExecutionOutput) SetStartTime(v time.Time) *GetMaintenanceWindowExecutionOutput {
30117	s.StartTime = &v
30118	return s
30119}
30120
30121// SetStatus sets the Status field's value.
30122func (s *GetMaintenanceWindowExecutionOutput) SetStatus(v string) *GetMaintenanceWindowExecutionOutput {
30123	s.Status = &v
30124	return s
30125}
30126
30127// SetStatusDetails sets the StatusDetails field's value.
30128func (s *GetMaintenanceWindowExecutionOutput) SetStatusDetails(v string) *GetMaintenanceWindowExecutionOutput {
30129	s.StatusDetails = &v
30130	return s
30131}
30132
30133// SetTaskIds sets the TaskIds field's value.
30134func (s *GetMaintenanceWindowExecutionOutput) SetTaskIds(v []*string) *GetMaintenanceWindowExecutionOutput {
30135	s.TaskIds = v
30136	return s
30137}
30138
30139// SetWindowExecutionId sets the WindowExecutionId field's value.
30140func (s *GetMaintenanceWindowExecutionOutput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionOutput {
30141	s.WindowExecutionId = &v
30142	return s
30143}
30144
30145type GetMaintenanceWindowExecutionTaskInput struct {
30146	_ struct{} `type:"structure"`
30147
30148	// The ID of the specific task execution in the maintenance window task that
30149	// should be retrieved.
30150	//
30151	// TaskId is a required field
30152	TaskId *string `min:"36" type:"string" required:"true"`
30153
30154	// The ID of the maintenance window execution that includes the task.
30155	//
30156	// WindowExecutionId is a required field
30157	WindowExecutionId *string `min:"36" type:"string" required:"true"`
30158}
30159
30160// String returns the string representation
30161func (s GetMaintenanceWindowExecutionTaskInput) String() string {
30162	return awsutil.Prettify(s)
30163}
30164
30165// GoString returns the string representation
30166func (s GetMaintenanceWindowExecutionTaskInput) GoString() string {
30167	return s.String()
30168}
30169
30170// Validate inspects the fields of the type to determine if they are valid.
30171func (s *GetMaintenanceWindowExecutionTaskInput) Validate() error {
30172	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowExecutionTaskInput"}
30173	if s.TaskId == nil {
30174		invalidParams.Add(request.NewErrParamRequired("TaskId"))
30175	}
30176	if s.TaskId != nil && len(*s.TaskId) < 36 {
30177		invalidParams.Add(request.NewErrParamMinLen("TaskId", 36))
30178	}
30179	if s.WindowExecutionId == nil {
30180		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
30181	}
30182	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
30183		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
30184	}
30185
30186	if invalidParams.Len() > 0 {
30187		return invalidParams
30188	}
30189	return nil
30190}
30191
30192// SetTaskId sets the TaskId field's value.
30193func (s *GetMaintenanceWindowExecutionTaskInput) SetTaskId(v string) *GetMaintenanceWindowExecutionTaskInput {
30194	s.TaskId = &v
30195	return s
30196}
30197
30198// SetWindowExecutionId sets the WindowExecutionId field's value.
30199func (s *GetMaintenanceWindowExecutionTaskInput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskInput {
30200	s.WindowExecutionId = &v
30201	return s
30202}
30203
30204type GetMaintenanceWindowExecutionTaskInvocationInput struct {
30205	_ struct{} `type:"structure"`
30206
30207	// The invocation ID to retrieve.
30208	//
30209	// InvocationId is a required field
30210	InvocationId *string `min:"36" type:"string" required:"true"`
30211
30212	// The ID of the specific task in the maintenance window task that should be
30213	// retrieved.
30214	//
30215	// TaskId is a required field
30216	TaskId *string `min:"36" type:"string" required:"true"`
30217
30218	// The ID of the maintenance window execution for which the task is a part.
30219	//
30220	// WindowExecutionId is a required field
30221	WindowExecutionId *string `min:"36" type:"string" required:"true"`
30222}
30223
30224// String returns the string representation
30225func (s GetMaintenanceWindowExecutionTaskInvocationInput) String() string {
30226	return awsutil.Prettify(s)
30227}
30228
30229// GoString returns the string representation
30230func (s GetMaintenanceWindowExecutionTaskInvocationInput) GoString() string {
30231	return s.String()
30232}
30233
30234// Validate inspects the fields of the type to determine if they are valid.
30235func (s *GetMaintenanceWindowExecutionTaskInvocationInput) Validate() error {
30236	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowExecutionTaskInvocationInput"}
30237	if s.InvocationId == nil {
30238		invalidParams.Add(request.NewErrParamRequired("InvocationId"))
30239	}
30240	if s.InvocationId != nil && len(*s.InvocationId) < 36 {
30241		invalidParams.Add(request.NewErrParamMinLen("InvocationId", 36))
30242	}
30243	if s.TaskId == nil {
30244		invalidParams.Add(request.NewErrParamRequired("TaskId"))
30245	}
30246	if s.TaskId != nil && len(*s.TaskId) < 36 {
30247		invalidParams.Add(request.NewErrParamMinLen("TaskId", 36))
30248	}
30249	if s.WindowExecutionId == nil {
30250		invalidParams.Add(request.NewErrParamRequired("WindowExecutionId"))
30251	}
30252	if s.WindowExecutionId != nil && len(*s.WindowExecutionId) < 36 {
30253		invalidParams.Add(request.NewErrParamMinLen("WindowExecutionId", 36))
30254	}
30255
30256	if invalidParams.Len() > 0 {
30257		return invalidParams
30258	}
30259	return nil
30260}
30261
30262// SetInvocationId sets the InvocationId field's value.
30263func (s *GetMaintenanceWindowExecutionTaskInvocationInput) SetInvocationId(v string) *GetMaintenanceWindowExecutionTaskInvocationInput {
30264	s.InvocationId = &v
30265	return s
30266}
30267
30268// SetTaskId sets the TaskId field's value.
30269func (s *GetMaintenanceWindowExecutionTaskInvocationInput) SetTaskId(v string) *GetMaintenanceWindowExecutionTaskInvocationInput {
30270	s.TaskId = &v
30271	return s
30272}
30273
30274// SetWindowExecutionId sets the WindowExecutionId field's value.
30275func (s *GetMaintenanceWindowExecutionTaskInvocationInput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationInput {
30276	s.WindowExecutionId = &v
30277	return s
30278}
30279
30280type GetMaintenanceWindowExecutionTaskInvocationOutput struct {
30281	_ struct{} `type:"structure"`
30282
30283	// The time that the task finished running on the target.
30284	EndTime *time.Time `type:"timestamp"`
30285
30286	// The execution ID.
30287	ExecutionId *string `type:"string"`
30288
30289	// The invocation ID.
30290	InvocationId *string `min:"36" type:"string"`
30291
30292	// User-provided value to be included in any Amazon CloudWatch Events or Amazon
30293	// EventBridge events raised while running tasks for these targets in this maintenance
30294	// window.
30295	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
30296
30297	// The parameters used at the time that the task ran.
30298	Parameters *string `type:"string" sensitive:"true"`
30299
30300	// The time that the task started running on the target.
30301	StartTime *time.Time `type:"timestamp"`
30302
30303	// The task status for an invocation.
30304	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
30305
30306	// The details explaining the status. Details are only available for certain
30307	// status values.
30308	StatusDetails *string `type:"string"`
30309
30310	// The task execution ID.
30311	TaskExecutionId *string `min:"36" type:"string"`
30312
30313	// Retrieves the task type for a maintenance window.
30314	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
30315
30316	// The maintenance window execution ID.
30317	WindowExecutionId *string `min:"36" type:"string"`
30318
30319	// The maintenance window target ID.
30320	WindowTargetId *string `type:"string"`
30321}
30322
30323// String returns the string representation
30324func (s GetMaintenanceWindowExecutionTaskInvocationOutput) String() string {
30325	return awsutil.Prettify(s)
30326}
30327
30328// GoString returns the string representation
30329func (s GetMaintenanceWindowExecutionTaskInvocationOutput) GoString() string {
30330	return s.String()
30331}
30332
30333// SetEndTime sets the EndTime field's value.
30334func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetEndTime(v time.Time) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30335	s.EndTime = &v
30336	return s
30337}
30338
30339// SetExecutionId sets the ExecutionId field's value.
30340func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30341	s.ExecutionId = &v
30342	return s
30343}
30344
30345// SetInvocationId sets the InvocationId field's value.
30346func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetInvocationId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30347	s.InvocationId = &v
30348	return s
30349}
30350
30351// SetOwnerInformation sets the OwnerInformation field's value.
30352func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetOwnerInformation(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30353	s.OwnerInformation = &v
30354	return s
30355}
30356
30357// SetParameters sets the Parameters field's value.
30358func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetParameters(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30359	s.Parameters = &v
30360	return s
30361}
30362
30363// SetStartTime sets the StartTime field's value.
30364func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetStartTime(v time.Time) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30365	s.StartTime = &v
30366	return s
30367}
30368
30369// SetStatus sets the Status field's value.
30370func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetStatus(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30371	s.Status = &v
30372	return s
30373}
30374
30375// SetStatusDetails sets the StatusDetails field's value.
30376func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetStatusDetails(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30377	s.StatusDetails = &v
30378	return s
30379}
30380
30381// SetTaskExecutionId sets the TaskExecutionId field's value.
30382func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetTaskExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30383	s.TaskExecutionId = &v
30384	return s
30385}
30386
30387// SetTaskType sets the TaskType field's value.
30388func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetTaskType(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30389	s.TaskType = &v
30390	return s
30391}
30392
30393// SetWindowExecutionId sets the WindowExecutionId field's value.
30394func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30395	s.WindowExecutionId = &v
30396	return s
30397}
30398
30399// SetWindowTargetId sets the WindowTargetId field's value.
30400func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetWindowTargetId(v string) *GetMaintenanceWindowExecutionTaskInvocationOutput {
30401	s.WindowTargetId = &v
30402	return s
30403}
30404
30405type GetMaintenanceWindowExecutionTaskOutput struct {
30406	_ struct{} `type:"structure"`
30407
30408	// The time the task execution completed.
30409	EndTime *time.Time `type:"timestamp"`
30410
30411	// The defined maximum number of task executions that could be run in parallel.
30412	MaxConcurrency *string `min:"1" type:"string"`
30413
30414	// The defined maximum number of task execution errors allowed before scheduling
30415	// of the task execution would have been stopped.
30416	MaxErrors *string `min:"1" type:"string"`
30417
30418	// The priority of the task.
30419	Priority *int64 `type:"integer"`
30420
30421	// The role that was assumed when running the task.
30422	ServiceRole *string `type:"string"`
30423
30424	// The time the task execution started.
30425	StartTime *time.Time `type:"timestamp"`
30426
30427	// The status of the task.
30428	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
30429
30430	// The details explaining the status. Not available for all status values.
30431	StatusDetails *string `type:"string"`
30432
30433	// The Amazon Resource Name (ARN) of the task that ran.
30434	TaskArn *string `min:"1" type:"string"`
30435
30436	// The ID of the specific task execution in the maintenance window task that
30437	// was retrieved.
30438	TaskExecutionId *string `min:"36" type:"string"`
30439
30440	// The parameters passed to the task when it was run.
30441	//
30442	// TaskParameters has been deprecated. To specify parameters to pass to a task
30443	// when it runs, instead use the Parameters option in the TaskInvocationParameters
30444	// structure. For information about how Systems Manager handles these options
30445	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
30446	//
30447	// The map has the following format:
30448	//
30449	//    * Key: string, between 1 and 255 characters
30450	//
30451	//    * Value: an array of strings, each between 1 and 255 characters
30452	TaskParameters []map[string]*MaintenanceWindowTaskParameterValueExpression `type:"list" sensitive:"true"`
30453
30454	// The type of task that was run.
30455	Type *string `type:"string" enum:"MaintenanceWindowTaskType"`
30456
30457	// The ID of the maintenance window execution that includes the task.
30458	WindowExecutionId *string `min:"36" type:"string"`
30459}
30460
30461// String returns the string representation
30462func (s GetMaintenanceWindowExecutionTaskOutput) String() string {
30463	return awsutil.Prettify(s)
30464}
30465
30466// GoString returns the string representation
30467func (s GetMaintenanceWindowExecutionTaskOutput) GoString() string {
30468	return s.String()
30469}
30470
30471// SetEndTime sets the EndTime field's value.
30472func (s *GetMaintenanceWindowExecutionTaskOutput) SetEndTime(v time.Time) *GetMaintenanceWindowExecutionTaskOutput {
30473	s.EndTime = &v
30474	return s
30475}
30476
30477// SetMaxConcurrency sets the MaxConcurrency field's value.
30478func (s *GetMaintenanceWindowExecutionTaskOutput) SetMaxConcurrency(v string) *GetMaintenanceWindowExecutionTaskOutput {
30479	s.MaxConcurrency = &v
30480	return s
30481}
30482
30483// SetMaxErrors sets the MaxErrors field's value.
30484func (s *GetMaintenanceWindowExecutionTaskOutput) SetMaxErrors(v string) *GetMaintenanceWindowExecutionTaskOutput {
30485	s.MaxErrors = &v
30486	return s
30487}
30488
30489// SetPriority sets the Priority field's value.
30490func (s *GetMaintenanceWindowExecutionTaskOutput) SetPriority(v int64) *GetMaintenanceWindowExecutionTaskOutput {
30491	s.Priority = &v
30492	return s
30493}
30494
30495// SetServiceRole sets the ServiceRole field's value.
30496func (s *GetMaintenanceWindowExecutionTaskOutput) SetServiceRole(v string) *GetMaintenanceWindowExecutionTaskOutput {
30497	s.ServiceRole = &v
30498	return s
30499}
30500
30501// SetStartTime sets the StartTime field's value.
30502func (s *GetMaintenanceWindowExecutionTaskOutput) SetStartTime(v time.Time) *GetMaintenanceWindowExecutionTaskOutput {
30503	s.StartTime = &v
30504	return s
30505}
30506
30507// SetStatus sets the Status field's value.
30508func (s *GetMaintenanceWindowExecutionTaskOutput) SetStatus(v string) *GetMaintenanceWindowExecutionTaskOutput {
30509	s.Status = &v
30510	return s
30511}
30512
30513// SetStatusDetails sets the StatusDetails field's value.
30514func (s *GetMaintenanceWindowExecutionTaskOutput) SetStatusDetails(v string) *GetMaintenanceWindowExecutionTaskOutput {
30515	s.StatusDetails = &v
30516	return s
30517}
30518
30519// SetTaskArn sets the TaskArn field's value.
30520func (s *GetMaintenanceWindowExecutionTaskOutput) SetTaskArn(v string) *GetMaintenanceWindowExecutionTaskOutput {
30521	s.TaskArn = &v
30522	return s
30523}
30524
30525// SetTaskExecutionId sets the TaskExecutionId field's value.
30526func (s *GetMaintenanceWindowExecutionTaskOutput) SetTaskExecutionId(v string) *GetMaintenanceWindowExecutionTaskOutput {
30527	s.TaskExecutionId = &v
30528	return s
30529}
30530
30531// SetTaskParameters sets the TaskParameters field's value.
30532func (s *GetMaintenanceWindowExecutionTaskOutput) SetTaskParameters(v []map[string]*MaintenanceWindowTaskParameterValueExpression) *GetMaintenanceWindowExecutionTaskOutput {
30533	s.TaskParameters = v
30534	return s
30535}
30536
30537// SetType sets the Type field's value.
30538func (s *GetMaintenanceWindowExecutionTaskOutput) SetType(v string) *GetMaintenanceWindowExecutionTaskOutput {
30539	s.Type = &v
30540	return s
30541}
30542
30543// SetWindowExecutionId sets the WindowExecutionId field's value.
30544func (s *GetMaintenanceWindowExecutionTaskOutput) SetWindowExecutionId(v string) *GetMaintenanceWindowExecutionTaskOutput {
30545	s.WindowExecutionId = &v
30546	return s
30547}
30548
30549type GetMaintenanceWindowInput struct {
30550	_ struct{} `type:"structure"`
30551
30552	// The ID of the maintenance window for which you want to retrieve information.
30553	//
30554	// WindowId is a required field
30555	WindowId *string `min:"20" type:"string" required:"true"`
30556}
30557
30558// String returns the string representation
30559func (s GetMaintenanceWindowInput) String() string {
30560	return awsutil.Prettify(s)
30561}
30562
30563// GoString returns the string representation
30564func (s GetMaintenanceWindowInput) GoString() string {
30565	return s.String()
30566}
30567
30568// Validate inspects the fields of the type to determine if they are valid.
30569func (s *GetMaintenanceWindowInput) Validate() error {
30570	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowInput"}
30571	if s.WindowId == nil {
30572		invalidParams.Add(request.NewErrParamRequired("WindowId"))
30573	}
30574	if s.WindowId != nil && len(*s.WindowId) < 20 {
30575		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
30576	}
30577
30578	if invalidParams.Len() > 0 {
30579		return invalidParams
30580	}
30581	return nil
30582}
30583
30584// SetWindowId sets the WindowId field's value.
30585func (s *GetMaintenanceWindowInput) SetWindowId(v string) *GetMaintenanceWindowInput {
30586	s.WindowId = &v
30587	return s
30588}
30589
30590type GetMaintenanceWindowOutput struct {
30591	_ struct{} `type:"structure"`
30592
30593	// Whether targets must be registered with the maintenance window before tasks
30594	// can be defined for those targets.
30595	AllowUnassociatedTargets *bool `type:"boolean"`
30596
30597	// The date the maintenance window was created.
30598	CreatedDate *time.Time `type:"timestamp"`
30599
30600	// The number of hours before the end of the maintenance window that Amazon
30601	// Web Services Systems Manager stops scheduling new tasks for execution.
30602	Cutoff *int64 `type:"integer"`
30603
30604	// The description of the maintenance window.
30605	Description *string `min:"1" type:"string" sensitive:"true"`
30606
30607	// The duration of the maintenance window in hours.
30608	Duration *int64 `min:"1" type:"integer"`
30609
30610	// Indicates whether the maintenance window is enabled.
30611	Enabled *bool `type:"boolean"`
30612
30613	// The date and time, in ISO-8601 Extended format, for when the maintenance
30614	// window is scheduled to become inactive. The maintenance window won't run
30615	// after this specified time.
30616	EndDate *string `type:"string"`
30617
30618	// The date the maintenance window was last modified.
30619	ModifiedDate *time.Time `type:"timestamp"`
30620
30621	// The name of the maintenance window.
30622	Name *string `min:"3" type:"string"`
30623
30624	// The next time the maintenance window will actually run, taking into account
30625	// any specified times for the maintenance window to become active or inactive.
30626	NextExecutionTime *string `type:"string"`
30627
30628	// The schedule of the maintenance window in the form of a cron or rate expression.
30629	Schedule *string `min:"1" type:"string"`
30630
30631	// The number of days to wait to run a maintenance window after the scheduled
30632	// cron expression date and time.
30633	ScheduleOffset *int64 `min:"1" type:"integer"`
30634
30635	// The time zone that the scheduled maintenance window executions are based
30636	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
30637	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
30638	// (https://www.iana.org/time-zones) on the IANA website.
30639	ScheduleTimezone *string `type:"string"`
30640
30641	// The date and time, in ISO-8601 Extended format, for when the maintenance
30642	// window is scheduled to become active. The maintenance window won't run before
30643	// this specified time.
30644	StartDate *string `type:"string"`
30645
30646	// The ID of the created maintenance window.
30647	WindowId *string `min:"20" type:"string"`
30648}
30649
30650// String returns the string representation
30651func (s GetMaintenanceWindowOutput) String() string {
30652	return awsutil.Prettify(s)
30653}
30654
30655// GoString returns the string representation
30656func (s GetMaintenanceWindowOutput) GoString() string {
30657	return s.String()
30658}
30659
30660// SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
30661func (s *GetMaintenanceWindowOutput) SetAllowUnassociatedTargets(v bool) *GetMaintenanceWindowOutput {
30662	s.AllowUnassociatedTargets = &v
30663	return s
30664}
30665
30666// SetCreatedDate sets the CreatedDate field's value.
30667func (s *GetMaintenanceWindowOutput) SetCreatedDate(v time.Time) *GetMaintenanceWindowOutput {
30668	s.CreatedDate = &v
30669	return s
30670}
30671
30672// SetCutoff sets the Cutoff field's value.
30673func (s *GetMaintenanceWindowOutput) SetCutoff(v int64) *GetMaintenanceWindowOutput {
30674	s.Cutoff = &v
30675	return s
30676}
30677
30678// SetDescription sets the Description field's value.
30679func (s *GetMaintenanceWindowOutput) SetDescription(v string) *GetMaintenanceWindowOutput {
30680	s.Description = &v
30681	return s
30682}
30683
30684// SetDuration sets the Duration field's value.
30685func (s *GetMaintenanceWindowOutput) SetDuration(v int64) *GetMaintenanceWindowOutput {
30686	s.Duration = &v
30687	return s
30688}
30689
30690// SetEnabled sets the Enabled field's value.
30691func (s *GetMaintenanceWindowOutput) SetEnabled(v bool) *GetMaintenanceWindowOutput {
30692	s.Enabled = &v
30693	return s
30694}
30695
30696// SetEndDate sets the EndDate field's value.
30697func (s *GetMaintenanceWindowOutput) SetEndDate(v string) *GetMaintenanceWindowOutput {
30698	s.EndDate = &v
30699	return s
30700}
30701
30702// SetModifiedDate sets the ModifiedDate field's value.
30703func (s *GetMaintenanceWindowOutput) SetModifiedDate(v time.Time) *GetMaintenanceWindowOutput {
30704	s.ModifiedDate = &v
30705	return s
30706}
30707
30708// SetName sets the Name field's value.
30709func (s *GetMaintenanceWindowOutput) SetName(v string) *GetMaintenanceWindowOutput {
30710	s.Name = &v
30711	return s
30712}
30713
30714// SetNextExecutionTime sets the NextExecutionTime field's value.
30715func (s *GetMaintenanceWindowOutput) SetNextExecutionTime(v string) *GetMaintenanceWindowOutput {
30716	s.NextExecutionTime = &v
30717	return s
30718}
30719
30720// SetSchedule sets the Schedule field's value.
30721func (s *GetMaintenanceWindowOutput) SetSchedule(v string) *GetMaintenanceWindowOutput {
30722	s.Schedule = &v
30723	return s
30724}
30725
30726// SetScheduleOffset sets the ScheduleOffset field's value.
30727func (s *GetMaintenanceWindowOutput) SetScheduleOffset(v int64) *GetMaintenanceWindowOutput {
30728	s.ScheduleOffset = &v
30729	return s
30730}
30731
30732// SetScheduleTimezone sets the ScheduleTimezone field's value.
30733func (s *GetMaintenanceWindowOutput) SetScheduleTimezone(v string) *GetMaintenanceWindowOutput {
30734	s.ScheduleTimezone = &v
30735	return s
30736}
30737
30738// SetStartDate sets the StartDate field's value.
30739func (s *GetMaintenanceWindowOutput) SetStartDate(v string) *GetMaintenanceWindowOutput {
30740	s.StartDate = &v
30741	return s
30742}
30743
30744// SetWindowId sets the WindowId field's value.
30745func (s *GetMaintenanceWindowOutput) SetWindowId(v string) *GetMaintenanceWindowOutput {
30746	s.WindowId = &v
30747	return s
30748}
30749
30750type GetMaintenanceWindowTaskInput struct {
30751	_ struct{} `type:"structure"`
30752
30753	// The maintenance window ID that includes the task to retrieve.
30754	//
30755	// WindowId is a required field
30756	WindowId *string `min:"20" type:"string" required:"true"`
30757
30758	// The maintenance window task ID to retrieve.
30759	//
30760	// WindowTaskId is a required field
30761	WindowTaskId *string `min:"36" type:"string" required:"true"`
30762}
30763
30764// String returns the string representation
30765func (s GetMaintenanceWindowTaskInput) String() string {
30766	return awsutil.Prettify(s)
30767}
30768
30769// GoString returns the string representation
30770func (s GetMaintenanceWindowTaskInput) GoString() string {
30771	return s.String()
30772}
30773
30774// Validate inspects the fields of the type to determine if they are valid.
30775func (s *GetMaintenanceWindowTaskInput) Validate() error {
30776	invalidParams := request.ErrInvalidParams{Context: "GetMaintenanceWindowTaskInput"}
30777	if s.WindowId == nil {
30778		invalidParams.Add(request.NewErrParamRequired("WindowId"))
30779	}
30780	if s.WindowId != nil && len(*s.WindowId) < 20 {
30781		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
30782	}
30783	if s.WindowTaskId == nil {
30784		invalidParams.Add(request.NewErrParamRequired("WindowTaskId"))
30785	}
30786	if s.WindowTaskId != nil && len(*s.WindowTaskId) < 36 {
30787		invalidParams.Add(request.NewErrParamMinLen("WindowTaskId", 36))
30788	}
30789
30790	if invalidParams.Len() > 0 {
30791		return invalidParams
30792	}
30793	return nil
30794}
30795
30796// SetWindowId sets the WindowId field's value.
30797func (s *GetMaintenanceWindowTaskInput) SetWindowId(v string) *GetMaintenanceWindowTaskInput {
30798	s.WindowId = &v
30799	return s
30800}
30801
30802// SetWindowTaskId sets the WindowTaskId field's value.
30803func (s *GetMaintenanceWindowTaskInput) SetWindowTaskId(v string) *GetMaintenanceWindowTaskInput {
30804	s.WindowTaskId = &v
30805	return s
30806}
30807
30808type GetMaintenanceWindowTaskOutput struct {
30809	_ struct{} `type:"structure"`
30810
30811	// The retrieved task description.
30812	Description *string `min:"1" type:"string" sensitive:"true"`
30813
30814	// The location in Amazon Simple Storage Service (Amazon S3) where the task
30815	// results are logged.
30816	//
30817	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
30818	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
30819	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
30820	// information about how Amazon Web Services Systems Manager handles these options
30821	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
30822	LoggingInfo *LoggingInfo `type:"structure"`
30823
30824	// The maximum number of targets allowed to run this task in parallel.
30825	//
30826	// For maintenance window tasks without a target specified, you can't supply
30827	// a value for this option. Instead, the system inserts a placeholder value
30828	// of 1, which may be reported in the response to this command. This value doesn't
30829	// affect the running of your task and can be ignored.
30830	MaxConcurrency *string `min:"1" type:"string"`
30831
30832	// The maximum number of errors allowed before the task stops being scheduled.
30833	//
30834	// For maintenance window tasks without a target specified, you can't supply
30835	// a value for this option. Instead, the system inserts a placeholder value
30836	// of 1, which may be reported in the response to this command. This value doesn't
30837	// affect the running of your task and can be ignored.
30838	MaxErrors *string `min:"1" type:"string"`
30839
30840	// The retrieved task name.
30841	Name *string `min:"3" type:"string"`
30842
30843	// The priority of the task when it runs. The lower the number, the higher the
30844	// priority. Tasks that have the same priority are scheduled in parallel.
30845	Priority *int64 `type:"integer"`
30846
30847	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
30848	// service role to use to publish Amazon Simple Notification Service (Amazon
30849	// SNS) notifications for maintenance window Run Command tasks.
30850	ServiceRoleArn *string `type:"string"`
30851
30852	// The targets where the task should run.
30853	Targets []*Target `type:"list"`
30854
30855	// The resource that the task used during execution. For RUN_COMMAND and AUTOMATION
30856	// task types, the value of TaskArn is the SSM document name/ARN. For LAMBDA
30857	// tasks, the value is the function name/ARN. For STEP_FUNCTIONS tasks, the
30858	// value is the state machine ARN.
30859	TaskArn *string `min:"1" type:"string"`
30860
30861	// The parameters to pass to the task when it runs.
30862	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
30863
30864	// The parameters to pass to the task when it runs.
30865	//
30866	// TaskParameters has been deprecated. To specify parameters to pass to a task
30867	// when it runs, instead use the Parameters option in the TaskInvocationParameters
30868	// structure. For information about how Systems Manager handles these options
30869	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
30870	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
30871
30872	// The type of task to run.
30873	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
30874
30875	// The retrieved maintenance window ID.
30876	WindowId *string `min:"20" type:"string"`
30877
30878	// The retrieved maintenance window task ID.
30879	WindowTaskId *string `min:"36" type:"string"`
30880}
30881
30882// String returns the string representation
30883func (s GetMaintenanceWindowTaskOutput) String() string {
30884	return awsutil.Prettify(s)
30885}
30886
30887// GoString returns the string representation
30888func (s GetMaintenanceWindowTaskOutput) GoString() string {
30889	return s.String()
30890}
30891
30892// SetDescription sets the Description field's value.
30893func (s *GetMaintenanceWindowTaskOutput) SetDescription(v string) *GetMaintenanceWindowTaskOutput {
30894	s.Description = &v
30895	return s
30896}
30897
30898// SetLoggingInfo sets the LoggingInfo field's value.
30899func (s *GetMaintenanceWindowTaskOutput) SetLoggingInfo(v *LoggingInfo) *GetMaintenanceWindowTaskOutput {
30900	s.LoggingInfo = v
30901	return s
30902}
30903
30904// SetMaxConcurrency sets the MaxConcurrency field's value.
30905func (s *GetMaintenanceWindowTaskOutput) SetMaxConcurrency(v string) *GetMaintenanceWindowTaskOutput {
30906	s.MaxConcurrency = &v
30907	return s
30908}
30909
30910// SetMaxErrors sets the MaxErrors field's value.
30911func (s *GetMaintenanceWindowTaskOutput) SetMaxErrors(v string) *GetMaintenanceWindowTaskOutput {
30912	s.MaxErrors = &v
30913	return s
30914}
30915
30916// SetName sets the Name field's value.
30917func (s *GetMaintenanceWindowTaskOutput) SetName(v string) *GetMaintenanceWindowTaskOutput {
30918	s.Name = &v
30919	return s
30920}
30921
30922// SetPriority sets the Priority field's value.
30923func (s *GetMaintenanceWindowTaskOutput) SetPriority(v int64) *GetMaintenanceWindowTaskOutput {
30924	s.Priority = &v
30925	return s
30926}
30927
30928// SetServiceRoleArn sets the ServiceRoleArn field's value.
30929func (s *GetMaintenanceWindowTaskOutput) SetServiceRoleArn(v string) *GetMaintenanceWindowTaskOutput {
30930	s.ServiceRoleArn = &v
30931	return s
30932}
30933
30934// SetTargets sets the Targets field's value.
30935func (s *GetMaintenanceWindowTaskOutput) SetTargets(v []*Target) *GetMaintenanceWindowTaskOutput {
30936	s.Targets = v
30937	return s
30938}
30939
30940// SetTaskArn sets the TaskArn field's value.
30941func (s *GetMaintenanceWindowTaskOutput) SetTaskArn(v string) *GetMaintenanceWindowTaskOutput {
30942	s.TaskArn = &v
30943	return s
30944}
30945
30946// SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
30947func (s *GetMaintenanceWindowTaskOutput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *GetMaintenanceWindowTaskOutput {
30948	s.TaskInvocationParameters = v
30949	return s
30950}
30951
30952// SetTaskParameters sets the TaskParameters field's value.
30953func (s *GetMaintenanceWindowTaskOutput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *GetMaintenanceWindowTaskOutput {
30954	s.TaskParameters = v
30955	return s
30956}
30957
30958// SetTaskType sets the TaskType field's value.
30959func (s *GetMaintenanceWindowTaskOutput) SetTaskType(v string) *GetMaintenanceWindowTaskOutput {
30960	s.TaskType = &v
30961	return s
30962}
30963
30964// SetWindowId sets the WindowId field's value.
30965func (s *GetMaintenanceWindowTaskOutput) SetWindowId(v string) *GetMaintenanceWindowTaskOutput {
30966	s.WindowId = &v
30967	return s
30968}
30969
30970// SetWindowTaskId sets the WindowTaskId field's value.
30971func (s *GetMaintenanceWindowTaskOutput) SetWindowTaskId(v string) *GetMaintenanceWindowTaskOutput {
30972	s.WindowTaskId = &v
30973	return s
30974}
30975
30976type GetOpsItemInput struct {
30977	_ struct{} `type:"structure"`
30978
30979	// The ID of the OpsItem that you want to get.
30980	//
30981	// OpsItemId is a required field
30982	OpsItemId *string `type:"string" required:"true"`
30983}
30984
30985// String returns the string representation
30986func (s GetOpsItemInput) String() string {
30987	return awsutil.Prettify(s)
30988}
30989
30990// GoString returns the string representation
30991func (s GetOpsItemInput) GoString() string {
30992	return s.String()
30993}
30994
30995// Validate inspects the fields of the type to determine if they are valid.
30996func (s *GetOpsItemInput) Validate() error {
30997	invalidParams := request.ErrInvalidParams{Context: "GetOpsItemInput"}
30998	if s.OpsItemId == nil {
30999		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
31000	}
31001
31002	if invalidParams.Len() > 0 {
31003		return invalidParams
31004	}
31005	return nil
31006}
31007
31008// SetOpsItemId sets the OpsItemId field's value.
31009func (s *GetOpsItemInput) SetOpsItemId(v string) *GetOpsItemInput {
31010	s.OpsItemId = &v
31011	return s
31012}
31013
31014type GetOpsItemOutput struct {
31015	_ struct{} `type:"structure"`
31016
31017	// The OpsItem.
31018	OpsItem *OpsItem `type:"structure"`
31019}
31020
31021// String returns the string representation
31022func (s GetOpsItemOutput) String() string {
31023	return awsutil.Prettify(s)
31024}
31025
31026// GoString returns the string representation
31027func (s GetOpsItemOutput) GoString() string {
31028	return s.String()
31029}
31030
31031// SetOpsItem sets the OpsItem field's value.
31032func (s *GetOpsItemOutput) SetOpsItem(v *OpsItem) *GetOpsItemOutput {
31033	s.OpsItem = v
31034	return s
31035}
31036
31037type GetOpsMetadataInput struct {
31038	_ struct{} `type:"structure"`
31039
31040	// The maximum number of items to return for this call. The call also returns
31041	// a token that you can specify in a subsequent call to get the next set of
31042	// results.
31043	MaxResults *int64 `min:"1" type:"integer"`
31044
31045	// A token to start the list. Use this token to get the next set of results.
31046	NextToken *string `type:"string"`
31047
31048	// The Amazon Resource Name (ARN) of an OpsMetadata Object to view.
31049	//
31050	// OpsMetadataArn is a required field
31051	OpsMetadataArn *string `min:"1" type:"string" required:"true"`
31052}
31053
31054// String returns the string representation
31055func (s GetOpsMetadataInput) String() string {
31056	return awsutil.Prettify(s)
31057}
31058
31059// GoString returns the string representation
31060func (s GetOpsMetadataInput) GoString() string {
31061	return s.String()
31062}
31063
31064// Validate inspects the fields of the type to determine if they are valid.
31065func (s *GetOpsMetadataInput) Validate() error {
31066	invalidParams := request.ErrInvalidParams{Context: "GetOpsMetadataInput"}
31067	if s.MaxResults != nil && *s.MaxResults < 1 {
31068		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
31069	}
31070	if s.OpsMetadataArn == nil {
31071		invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn"))
31072	}
31073	if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 {
31074		invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1))
31075	}
31076
31077	if invalidParams.Len() > 0 {
31078		return invalidParams
31079	}
31080	return nil
31081}
31082
31083// SetMaxResults sets the MaxResults field's value.
31084func (s *GetOpsMetadataInput) SetMaxResults(v int64) *GetOpsMetadataInput {
31085	s.MaxResults = &v
31086	return s
31087}
31088
31089// SetNextToken sets the NextToken field's value.
31090func (s *GetOpsMetadataInput) SetNextToken(v string) *GetOpsMetadataInput {
31091	s.NextToken = &v
31092	return s
31093}
31094
31095// SetOpsMetadataArn sets the OpsMetadataArn field's value.
31096func (s *GetOpsMetadataInput) SetOpsMetadataArn(v string) *GetOpsMetadataInput {
31097	s.OpsMetadataArn = &v
31098	return s
31099}
31100
31101type GetOpsMetadataOutput struct {
31102	_ struct{} `type:"structure"`
31103
31104	// OpsMetadata for an Application Manager application.
31105	Metadata map[string]*MetadataValue `min:"1" type:"map"`
31106
31107	// The token for the next set of items to return. Use this token to get the
31108	// next set of results.
31109	NextToken *string `type:"string"`
31110
31111	// The resource ID of the Application Manager application.
31112	ResourceId *string `min:"1" type:"string"`
31113}
31114
31115// String returns the string representation
31116func (s GetOpsMetadataOutput) String() string {
31117	return awsutil.Prettify(s)
31118}
31119
31120// GoString returns the string representation
31121func (s GetOpsMetadataOutput) GoString() string {
31122	return s.String()
31123}
31124
31125// SetMetadata sets the Metadata field's value.
31126func (s *GetOpsMetadataOutput) SetMetadata(v map[string]*MetadataValue) *GetOpsMetadataOutput {
31127	s.Metadata = v
31128	return s
31129}
31130
31131// SetNextToken sets the NextToken field's value.
31132func (s *GetOpsMetadataOutput) SetNextToken(v string) *GetOpsMetadataOutput {
31133	s.NextToken = &v
31134	return s
31135}
31136
31137// SetResourceId sets the ResourceId field's value.
31138func (s *GetOpsMetadataOutput) SetResourceId(v string) *GetOpsMetadataOutput {
31139	s.ResourceId = &v
31140	return s
31141}
31142
31143type GetOpsSummaryInput struct {
31144	_ struct{} `type:"structure"`
31145
31146	// Optional aggregators that return counts of OpsData based on one or more expressions.
31147	Aggregators []*OpsAggregator `min:"1" type:"list"`
31148
31149	// Optional filters used to scope down the returned OpsData.
31150	Filters []*OpsFilter `min:"1" type:"list"`
31151
31152	// The maximum number of items to return for this call. The call also returns
31153	// a token that you can specify in a subsequent call to get the next set of
31154	// results.
31155	MaxResults *int64 `min:"1" type:"integer"`
31156
31157	// A token to start the list. Use this token to get the next set of results.
31158	NextToken *string `type:"string"`
31159
31160	// The OpsData data type to return.
31161	ResultAttributes []*OpsResultAttribute `min:"1" type:"list"`
31162
31163	// Specify the name of a resource data sync to get.
31164	SyncName *string `min:"1" type:"string"`
31165}
31166
31167// String returns the string representation
31168func (s GetOpsSummaryInput) String() string {
31169	return awsutil.Prettify(s)
31170}
31171
31172// GoString returns the string representation
31173func (s GetOpsSummaryInput) GoString() string {
31174	return s.String()
31175}
31176
31177// Validate inspects the fields of the type to determine if they are valid.
31178func (s *GetOpsSummaryInput) Validate() error {
31179	invalidParams := request.ErrInvalidParams{Context: "GetOpsSummaryInput"}
31180	if s.Aggregators != nil && len(s.Aggregators) < 1 {
31181		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
31182	}
31183	if s.Filters != nil && len(s.Filters) < 1 {
31184		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
31185	}
31186	if s.MaxResults != nil && *s.MaxResults < 1 {
31187		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
31188	}
31189	if s.ResultAttributes != nil && len(s.ResultAttributes) < 1 {
31190		invalidParams.Add(request.NewErrParamMinLen("ResultAttributes", 1))
31191	}
31192	if s.SyncName != nil && len(*s.SyncName) < 1 {
31193		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
31194	}
31195	if s.Aggregators != nil {
31196		for i, v := range s.Aggregators {
31197			if v == nil {
31198				continue
31199			}
31200			if err := v.Validate(); err != nil {
31201				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
31202			}
31203		}
31204	}
31205	if s.Filters != nil {
31206		for i, v := range s.Filters {
31207			if v == nil {
31208				continue
31209			}
31210			if err := v.Validate(); err != nil {
31211				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
31212			}
31213		}
31214	}
31215	if s.ResultAttributes != nil {
31216		for i, v := range s.ResultAttributes {
31217			if v == nil {
31218				continue
31219			}
31220			if err := v.Validate(); err != nil {
31221				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResultAttributes", i), err.(request.ErrInvalidParams))
31222			}
31223		}
31224	}
31225
31226	if invalidParams.Len() > 0 {
31227		return invalidParams
31228	}
31229	return nil
31230}
31231
31232// SetAggregators sets the Aggregators field's value.
31233func (s *GetOpsSummaryInput) SetAggregators(v []*OpsAggregator) *GetOpsSummaryInput {
31234	s.Aggregators = v
31235	return s
31236}
31237
31238// SetFilters sets the Filters field's value.
31239func (s *GetOpsSummaryInput) SetFilters(v []*OpsFilter) *GetOpsSummaryInput {
31240	s.Filters = v
31241	return s
31242}
31243
31244// SetMaxResults sets the MaxResults field's value.
31245func (s *GetOpsSummaryInput) SetMaxResults(v int64) *GetOpsSummaryInput {
31246	s.MaxResults = &v
31247	return s
31248}
31249
31250// SetNextToken sets the NextToken field's value.
31251func (s *GetOpsSummaryInput) SetNextToken(v string) *GetOpsSummaryInput {
31252	s.NextToken = &v
31253	return s
31254}
31255
31256// SetResultAttributes sets the ResultAttributes field's value.
31257func (s *GetOpsSummaryInput) SetResultAttributes(v []*OpsResultAttribute) *GetOpsSummaryInput {
31258	s.ResultAttributes = v
31259	return s
31260}
31261
31262// SetSyncName sets the SyncName field's value.
31263func (s *GetOpsSummaryInput) SetSyncName(v string) *GetOpsSummaryInput {
31264	s.SyncName = &v
31265	return s
31266}
31267
31268type GetOpsSummaryOutput struct {
31269	_ struct{} `type:"structure"`
31270
31271	// The list of aggregated details and filtered OpsData.
31272	Entities []*OpsEntity `type:"list"`
31273
31274	// The token for the next set of items to return. Use this token to get the
31275	// next set of results.
31276	NextToken *string `type:"string"`
31277}
31278
31279// String returns the string representation
31280func (s GetOpsSummaryOutput) String() string {
31281	return awsutil.Prettify(s)
31282}
31283
31284// GoString returns the string representation
31285func (s GetOpsSummaryOutput) GoString() string {
31286	return s.String()
31287}
31288
31289// SetEntities sets the Entities field's value.
31290func (s *GetOpsSummaryOutput) SetEntities(v []*OpsEntity) *GetOpsSummaryOutput {
31291	s.Entities = v
31292	return s
31293}
31294
31295// SetNextToken sets the NextToken field's value.
31296func (s *GetOpsSummaryOutput) SetNextToken(v string) *GetOpsSummaryOutput {
31297	s.NextToken = &v
31298	return s
31299}
31300
31301type GetParameterHistoryInput struct {
31302	_ struct{} `type:"structure"`
31303
31304	// The maximum number of items to return for this call. The call also returns
31305	// a token that you can specify in a subsequent call to get the next set of
31306	// results.
31307	MaxResults *int64 `min:"1" type:"integer"`
31308
31309	// The name of the parameter for which you want to review history.
31310	//
31311	// Name is a required field
31312	Name *string `min:"1" type:"string" required:"true"`
31313
31314	// The token for the next set of items to return. (You received this token from
31315	// a previous call.)
31316	NextToken *string `type:"string"`
31317
31318	// Return decrypted values for secure string parameters. This flag is ignored
31319	// for String and StringList parameter types.
31320	WithDecryption *bool `type:"boolean"`
31321}
31322
31323// String returns the string representation
31324func (s GetParameterHistoryInput) String() string {
31325	return awsutil.Prettify(s)
31326}
31327
31328// GoString returns the string representation
31329func (s GetParameterHistoryInput) GoString() string {
31330	return s.String()
31331}
31332
31333// Validate inspects the fields of the type to determine if they are valid.
31334func (s *GetParameterHistoryInput) Validate() error {
31335	invalidParams := request.ErrInvalidParams{Context: "GetParameterHistoryInput"}
31336	if s.MaxResults != nil && *s.MaxResults < 1 {
31337		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
31338	}
31339	if s.Name == nil {
31340		invalidParams.Add(request.NewErrParamRequired("Name"))
31341	}
31342	if s.Name != nil && len(*s.Name) < 1 {
31343		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
31344	}
31345
31346	if invalidParams.Len() > 0 {
31347		return invalidParams
31348	}
31349	return nil
31350}
31351
31352// SetMaxResults sets the MaxResults field's value.
31353func (s *GetParameterHistoryInput) SetMaxResults(v int64) *GetParameterHistoryInput {
31354	s.MaxResults = &v
31355	return s
31356}
31357
31358// SetName sets the Name field's value.
31359func (s *GetParameterHistoryInput) SetName(v string) *GetParameterHistoryInput {
31360	s.Name = &v
31361	return s
31362}
31363
31364// SetNextToken sets the NextToken field's value.
31365func (s *GetParameterHistoryInput) SetNextToken(v string) *GetParameterHistoryInput {
31366	s.NextToken = &v
31367	return s
31368}
31369
31370// SetWithDecryption sets the WithDecryption field's value.
31371func (s *GetParameterHistoryInput) SetWithDecryption(v bool) *GetParameterHistoryInput {
31372	s.WithDecryption = &v
31373	return s
31374}
31375
31376type GetParameterHistoryOutput struct {
31377	_ struct{} `type:"structure"`
31378
31379	// The token to use when requesting the next set of items. If there are no additional
31380	// items to return, the string is empty.
31381	NextToken *string `type:"string"`
31382
31383	// A list of parameters returned by the request.
31384	Parameters []*ParameterHistory `type:"list"`
31385}
31386
31387// String returns the string representation
31388func (s GetParameterHistoryOutput) String() string {
31389	return awsutil.Prettify(s)
31390}
31391
31392// GoString returns the string representation
31393func (s GetParameterHistoryOutput) GoString() string {
31394	return s.String()
31395}
31396
31397// SetNextToken sets the NextToken field's value.
31398func (s *GetParameterHistoryOutput) SetNextToken(v string) *GetParameterHistoryOutput {
31399	s.NextToken = &v
31400	return s
31401}
31402
31403// SetParameters sets the Parameters field's value.
31404func (s *GetParameterHistoryOutput) SetParameters(v []*ParameterHistory) *GetParameterHistoryOutput {
31405	s.Parameters = v
31406	return s
31407}
31408
31409type GetParameterInput struct {
31410	_ struct{} `type:"structure"`
31411
31412	// The name of the parameter you want to query.
31413	//
31414	// To query by parameter label, use "Name": "name:label". To query by parameter
31415	// version, use "Name": "name:version".
31416	//
31417	// Name is a required field
31418	Name *string `min:"1" type:"string" required:"true"`
31419
31420	// Return decrypted values for secure string parameters. This flag is ignored
31421	// for String and StringList parameter types.
31422	WithDecryption *bool `type:"boolean"`
31423}
31424
31425// String returns the string representation
31426func (s GetParameterInput) String() string {
31427	return awsutil.Prettify(s)
31428}
31429
31430// GoString returns the string representation
31431func (s GetParameterInput) GoString() string {
31432	return s.String()
31433}
31434
31435// Validate inspects the fields of the type to determine if they are valid.
31436func (s *GetParameterInput) Validate() error {
31437	invalidParams := request.ErrInvalidParams{Context: "GetParameterInput"}
31438	if s.Name == nil {
31439		invalidParams.Add(request.NewErrParamRequired("Name"))
31440	}
31441	if s.Name != nil && len(*s.Name) < 1 {
31442		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
31443	}
31444
31445	if invalidParams.Len() > 0 {
31446		return invalidParams
31447	}
31448	return nil
31449}
31450
31451// SetName sets the Name field's value.
31452func (s *GetParameterInput) SetName(v string) *GetParameterInput {
31453	s.Name = &v
31454	return s
31455}
31456
31457// SetWithDecryption sets the WithDecryption field's value.
31458func (s *GetParameterInput) SetWithDecryption(v bool) *GetParameterInput {
31459	s.WithDecryption = &v
31460	return s
31461}
31462
31463type GetParameterOutput struct {
31464	_ struct{} `type:"structure"`
31465
31466	// Information about a parameter.
31467	Parameter *Parameter `type:"structure"`
31468}
31469
31470// String returns the string representation
31471func (s GetParameterOutput) String() string {
31472	return awsutil.Prettify(s)
31473}
31474
31475// GoString returns the string representation
31476func (s GetParameterOutput) GoString() string {
31477	return s.String()
31478}
31479
31480// SetParameter sets the Parameter field's value.
31481func (s *GetParameterOutput) SetParameter(v *Parameter) *GetParameterOutput {
31482	s.Parameter = v
31483	return s
31484}
31485
31486type GetParametersByPathInput struct {
31487	_ struct{} `type:"structure"`
31488
31489	// The maximum number of items to return for this call. The call also returns
31490	// a token that you can specify in a subsequent call to get the next set of
31491	// results.
31492	MaxResults *int64 `min:"1" type:"integer"`
31493
31494	// A token to start the list. Use this token to get the next set of results.
31495	NextToken *string `type:"string"`
31496
31497	// Filters to limit the request results.
31498	//
31499	// For GetParametersByPath, the following filter Key names are supported: Type,
31500	// KeyId, Label, and DataType.
31501	//
31502	// The following Key values are not supported for GetParametersByPath: tag,
31503	// Name, Path, and Tier.
31504	ParameterFilters []*ParameterStringFilter `type:"list"`
31505
31506	// The hierarchy for the parameter. Hierarchies start with a forward slash (/).
31507	// The hierachy is the parameter name except the last part of the parameter.
31508	// For the API call to succeeed, the last part of the parameter name can't be
31509	// in the path. A parameter name hierarchy can have a maximum of 15 levels.
31510	// Here is an example of a hierarchy: /Finance/Prod/IAD/WinServ2016/license33
31511	//
31512	// Path is a required field
31513	Path *string `min:"1" type:"string" required:"true"`
31514
31515	// Retrieve all parameters within a hierarchy.
31516	//
31517	// If a user has access to a path, then the user can access all levels of that
31518	// path. For example, if a user has permission to access path /a, then the user
31519	// can also access /a/b. Even if a user has explicitly been denied access in
31520	// IAM for parameter /a/b, they can still call the GetParametersByPath API operation
31521	// recursively for /a and view /a/b.
31522	Recursive *bool `type:"boolean"`
31523
31524	// Retrieve all parameters in a hierarchy with their value decrypted.
31525	WithDecryption *bool `type:"boolean"`
31526}
31527
31528// String returns the string representation
31529func (s GetParametersByPathInput) String() string {
31530	return awsutil.Prettify(s)
31531}
31532
31533// GoString returns the string representation
31534func (s GetParametersByPathInput) GoString() string {
31535	return s.String()
31536}
31537
31538// Validate inspects the fields of the type to determine if they are valid.
31539func (s *GetParametersByPathInput) Validate() error {
31540	invalidParams := request.ErrInvalidParams{Context: "GetParametersByPathInput"}
31541	if s.MaxResults != nil && *s.MaxResults < 1 {
31542		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
31543	}
31544	if s.Path == nil {
31545		invalidParams.Add(request.NewErrParamRequired("Path"))
31546	}
31547	if s.Path != nil && len(*s.Path) < 1 {
31548		invalidParams.Add(request.NewErrParamMinLen("Path", 1))
31549	}
31550	if s.ParameterFilters != nil {
31551		for i, v := range s.ParameterFilters {
31552			if v == nil {
31553				continue
31554			}
31555			if err := v.Validate(); err != nil {
31556				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParameterFilters", i), err.(request.ErrInvalidParams))
31557			}
31558		}
31559	}
31560
31561	if invalidParams.Len() > 0 {
31562		return invalidParams
31563	}
31564	return nil
31565}
31566
31567// SetMaxResults sets the MaxResults field's value.
31568func (s *GetParametersByPathInput) SetMaxResults(v int64) *GetParametersByPathInput {
31569	s.MaxResults = &v
31570	return s
31571}
31572
31573// SetNextToken sets the NextToken field's value.
31574func (s *GetParametersByPathInput) SetNextToken(v string) *GetParametersByPathInput {
31575	s.NextToken = &v
31576	return s
31577}
31578
31579// SetParameterFilters sets the ParameterFilters field's value.
31580func (s *GetParametersByPathInput) SetParameterFilters(v []*ParameterStringFilter) *GetParametersByPathInput {
31581	s.ParameterFilters = v
31582	return s
31583}
31584
31585// SetPath sets the Path field's value.
31586func (s *GetParametersByPathInput) SetPath(v string) *GetParametersByPathInput {
31587	s.Path = &v
31588	return s
31589}
31590
31591// SetRecursive sets the Recursive field's value.
31592func (s *GetParametersByPathInput) SetRecursive(v bool) *GetParametersByPathInput {
31593	s.Recursive = &v
31594	return s
31595}
31596
31597// SetWithDecryption sets the WithDecryption field's value.
31598func (s *GetParametersByPathInput) SetWithDecryption(v bool) *GetParametersByPathInput {
31599	s.WithDecryption = &v
31600	return s
31601}
31602
31603type GetParametersByPathOutput struct {
31604	_ struct{} `type:"structure"`
31605
31606	// The token for the next set of items to return. Use this token to get the
31607	// next set of results.
31608	NextToken *string `type:"string"`
31609
31610	// A list of parameters found in the specified hierarchy.
31611	Parameters []*Parameter `type:"list"`
31612}
31613
31614// String returns the string representation
31615func (s GetParametersByPathOutput) String() string {
31616	return awsutil.Prettify(s)
31617}
31618
31619// GoString returns the string representation
31620func (s GetParametersByPathOutput) GoString() string {
31621	return s.String()
31622}
31623
31624// SetNextToken sets the NextToken field's value.
31625func (s *GetParametersByPathOutput) SetNextToken(v string) *GetParametersByPathOutput {
31626	s.NextToken = &v
31627	return s
31628}
31629
31630// SetParameters sets the Parameters field's value.
31631func (s *GetParametersByPathOutput) SetParameters(v []*Parameter) *GetParametersByPathOutput {
31632	s.Parameters = v
31633	return s
31634}
31635
31636type GetParametersInput struct {
31637	_ struct{} `type:"structure"`
31638
31639	// Names of the parameters for which you want to query information.
31640	//
31641	// To query by parameter label, use "Name": "name:label". To query by parameter
31642	// version, use "Name": "name:version".
31643	//
31644	// Names is a required field
31645	Names []*string `min:"1" type:"list" required:"true"`
31646
31647	// Return decrypted secure string value. Return decrypted values for secure
31648	// string parameters. This flag is ignored for String and StringList parameter
31649	// types.
31650	WithDecryption *bool `type:"boolean"`
31651}
31652
31653// String returns the string representation
31654func (s GetParametersInput) String() string {
31655	return awsutil.Prettify(s)
31656}
31657
31658// GoString returns the string representation
31659func (s GetParametersInput) GoString() string {
31660	return s.String()
31661}
31662
31663// Validate inspects the fields of the type to determine if they are valid.
31664func (s *GetParametersInput) Validate() error {
31665	invalidParams := request.ErrInvalidParams{Context: "GetParametersInput"}
31666	if s.Names == nil {
31667		invalidParams.Add(request.NewErrParamRequired("Names"))
31668	}
31669	if s.Names != nil && len(s.Names) < 1 {
31670		invalidParams.Add(request.NewErrParamMinLen("Names", 1))
31671	}
31672
31673	if invalidParams.Len() > 0 {
31674		return invalidParams
31675	}
31676	return nil
31677}
31678
31679// SetNames sets the Names field's value.
31680func (s *GetParametersInput) SetNames(v []*string) *GetParametersInput {
31681	s.Names = v
31682	return s
31683}
31684
31685// SetWithDecryption sets the WithDecryption field's value.
31686func (s *GetParametersInput) SetWithDecryption(v bool) *GetParametersInput {
31687	s.WithDecryption = &v
31688	return s
31689}
31690
31691type GetParametersOutput struct {
31692	_ struct{} `type:"structure"`
31693
31694	// A list of parameters that aren't formatted correctly or don't run during
31695	// an execution.
31696	InvalidParameters []*string `min:"1" type:"list"`
31697
31698	// A list of details for a parameter.
31699	Parameters []*Parameter `type:"list"`
31700}
31701
31702// String returns the string representation
31703func (s GetParametersOutput) String() string {
31704	return awsutil.Prettify(s)
31705}
31706
31707// GoString returns the string representation
31708func (s GetParametersOutput) GoString() string {
31709	return s.String()
31710}
31711
31712// SetInvalidParameters sets the InvalidParameters field's value.
31713func (s *GetParametersOutput) SetInvalidParameters(v []*string) *GetParametersOutput {
31714	s.InvalidParameters = v
31715	return s
31716}
31717
31718// SetParameters sets the Parameters field's value.
31719func (s *GetParametersOutput) SetParameters(v []*Parameter) *GetParametersOutput {
31720	s.Parameters = v
31721	return s
31722}
31723
31724type GetPatchBaselineForPatchGroupInput struct {
31725	_ struct{} `type:"structure"`
31726
31727	// Returns he operating system rule specified for patch groups using the patch
31728	// baseline.
31729	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
31730
31731	// The name of the patch group whose patch baseline should be retrieved.
31732	//
31733	// PatchGroup is a required field
31734	PatchGroup *string `min:"1" type:"string" required:"true"`
31735}
31736
31737// String returns the string representation
31738func (s GetPatchBaselineForPatchGroupInput) String() string {
31739	return awsutil.Prettify(s)
31740}
31741
31742// GoString returns the string representation
31743func (s GetPatchBaselineForPatchGroupInput) GoString() string {
31744	return s.String()
31745}
31746
31747// Validate inspects the fields of the type to determine if they are valid.
31748func (s *GetPatchBaselineForPatchGroupInput) Validate() error {
31749	invalidParams := request.ErrInvalidParams{Context: "GetPatchBaselineForPatchGroupInput"}
31750	if s.PatchGroup == nil {
31751		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
31752	}
31753	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
31754		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
31755	}
31756
31757	if invalidParams.Len() > 0 {
31758		return invalidParams
31759	}
31760	return nil
31761}
31762
31763// SetOperatingSystem sets the OperatingSystem field's value.
31764func (s *GetPatchBaselineForPatchGroupInput) SetOperatingSystem(v string) *GetPatchBaselineForPatchGroupInput {
31765	s.OperatingSystem = &v
31766	return s
31767}
31768
31769// SetPatchGroup sets the PatchGroup field's value.
31770func (s *GetPatchBaselineForPatchGroupInput) SetPatchGroup(v string) *GetPatchBaselineForPatchGroupInput {
31771	s.PatchGroup = &v
31772	return s
31773}
31774
31775type GetPatchBaselineForPatchGroupOutput struct {
31776	_ struct{} `type:"structure"`
31777
31778	// The ID of the patch baseline that should be used for the patch group.
31779	BaselineId *string `min:"20" type:"string"`
31780
31781	// The operating system rule specified for patch groups using the patch baseline.
31782	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
31783
31784	// The name of the patch group.
31785	PatchGroup *string `min:"1" type:"string"`
31786}
31787
31788// String returns the string representation
31789func (s GetPatchBaselineForPatchGroupOutput) String() string {
31790	return awsutil.Prettify(s)
31791}
31792
31793// GoString returns the string representation
31794func (s GetPatchBaselineForPatchGroupOutput) GoString() string {
31795	return s.String()
31796}
31797
31798// SetBaselineId sets the BaselineId field's value.
31799func (s *GetPatchBaselineForPatchGroupOutput) SetBaselineId(v string) *GetPatchBaselineForPatchGroupOutput {
31800	s.BaselineId = &v
31801	return s
31802}
31803
31804// SetOperatingSystem sets the OperatingSystem field's value.
31805func (s *GetPatchBaselineForPatchGroupOutput) SetOperatingSystem(v string) *GetPatchBaselineForPatchGroupOutput {
31806	s.OperatingSystem = &v
31807	return s
31808}
31809
31810// SetPatchGroup sets the PatchGroup field's value.
31811func (s *GetPatchBaselineForPatchGroupOutput) SetPatchGroup(v string) *GetPatchBaselineForPatchGroupOutput {
31812	s.PatchGroup = &v
31813	return s
31814}
31815
31816type GetPatchBaselineInput struct {
31817	_ struct{} `type:"structure"`
31818
31819	// The ID of the patch baseline to retrieve.
31820	//
31821	// To retrieve information about an Amazon Web Services managed patch baseline,
31822	// specify the full Amazon Resource Name (ARN) of the baseline. For example,
31823	// for the baseline AWS-AmazonLinuxDefaultPatchBaseline, specify arn:aws:ssm:us-east-2:733109147000:patchbaseline/pb-0e392de35e7c563b7
31824	// instead of pb-0e392de35e7c563b7.
31825	//
31826	// BaselineId is a required field
31827	BaselineId *string `min:"20" type:"string" required:"true"`
31828}
31829
31830// String returns the string representation
31831func (s GetPatchBaselineInput) String() string {
31832	return awsutil.Prettify(s)
31833}
31834
31835// GoString returns the string representation
31836func (s GetPatchBaselineInput) GoString() string {
31837	return s.String()
31838}
31839
31840// Validate inspects the fields of the type to determine if they are valid.
31841func (s *GetPatchBaselineInput) Validate() error {
31842	invalidParams := request.ErrInvalidParams{Context: "GetPatchBaselineInput"}
31843	if s.BaselineId == nil {
31844		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
31845	}
31846	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
31847		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
31848	}
31849
31850	if invalidParams.Len() > 0 {
31851		return invalidParams
31852	}
31853	return nil
31854}
31855
31856// SetBaselineId sets the BaselineId field's value.
31857func (s *GetPatchBaselineInput) SetBaselineId(v string) *GetPatchBaselineInput {
31858	s.BaselineId = &v
31859	return s
31860}
31861
31862type GetPatchBaselineOutput struct {
31863	_ struct{} `type:"structure"`
31864
31865	// A set of rules used to include patches in the baseline.
31866	ApprovalRules *PatchRuleGroup `type:"structure"`
31867
31868	// A list of explicitly approved patches for the baseline.
31869	ApprovedPatches []*string `type:"list"`
31870
31871	// Returns the specified compliance severity level for approved patches in the
31872	// patch baseline.
31873	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
31874
31875	// Indicates whether the list of approved patches includes non-security updates
31876	// that should be applied to the instances. The default value is false. Applies
31877	// to Linux instances only.
31878	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
31879
31880	// The ID of the retrieved patch baseline.
31881	BaselineId *string `min:"20" type:"string"`
31882
31883	// The date the patch baseline was created.
31884	CreatedDate *time.Time `type:"timestamp"`
31885
31886	// A description of the patch baseline.
31887	Description *string `min:"1" type:"string"`
31888
31889	// A set of global filters used to exclude patches from the baseline.
31890	GlobalFilters *PatchFilterGroup `type:"structure"`
31891
31892	// The date the patch baseline was last modified.
31893	ModifiedDate *time.Time `type:"timestamp"`
31894
31895	// The name of the patch baseline.
31896	Name *string `min:"3" type:"string"`
31897
31898	// Returns the operating system specified for the patch baseline.
31899	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
31900
31901	// Patch groups included in the patch baseline.
31902	PatchGroups []*string `type:"list"`
31903
31904	// A list of explicitly rejected patches for the baseline.
31905	RejectedPatches []*string `type:"list"`
31906
31907	// The action specified to take on patches included in the RejectedPatches list.
31908	// A patch can be allowed only if it is a dependency of another package, or
31909	// blocked entirely along with packages that include it as a dependency.
31910	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
31911
31912	// Information about the patches to use to update the instances, including target
31913	// operating systems and source repositories. Applies to Linux instances only.
31914	Sources []*PatchSource `type:"list"`
31915}
31916
31917// String returns the string representation
31918func (s GetPatchBaselineOutput) String() string {
31919	return awsutil.Prettify(s)
31920}
31921
31922// GoString returns the string representation
31923func (s GetPatchBaselineOutput) GoString() string {
31924	return s.String()
31925}
31926
31927// SetApprovalRules sets the ApprovalRules field's value.
31928func (s *GetPatchBaselineOutput) SetApprovalRules(v *PatchRuleGroup) *GetPatchBaselineOutput {
31929	s.ApprovalRules = v
31930	return s
31931}
31932
31933// SetApprovedPatches sets the ApprovedPatches field's value.
31934func (s *GetPatchBaselineOutput) SetApprovedPatches(v []*string) *GetPatchBaselineOutput {
31935	s.ApprovedPatches = v
31936	return s
31937}
31938
31939// SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
31940func (s *GetPatchBaselineOutput) SetApprovedPatchesComplianceLevel(v string) *GetPatchBaselineOutput {
31941	s.ApprovedPatchesComplianceLevel = &v
31942	return s
31943}
31944
31945// SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
31946func (s *GetPatchBaselineOutput) SetApprovedPatchesEnableNonSecurity(v bool) *GetPatchBaselineOutput {
31947	s.ApprovedPatchesEnableNonSecurity = &v
31948	return s
31949}
31950
31951// SetBaselineId sets the BaselineId field's value.
31952func (s *GetPatchBaselineOutput) SetBaselineId(v string) *GetPatchBaselineOutput {
31953	s.BaselineId = &v
31954	return s
31955}
31956
31957// SetCreatedDate sets the CreatedDate field's value.
31958func (s *GetPatchBaselineOutput) SetCreatedDate(v time.Time) *GetPatchBaselineOutput {
31959	s.CreatedDate = &v
31960	return s
31961}
31962
31963// SetDescription sets the Description field's value.
31964func (s *GetPatchBaselineOutput) SetDescription(v string) *GetPatchBaselineOutput {
31965	s.Description = &v
31966	return s
31967}
31968
31969// SetGlobalFilters sets the GlobalFilters field's value.
31970func (s *GetPatchBaselineOutput) SetGlobalFilters(v *PatchFilterGroup) *GetPatchBaselineOutput {
31971	s.GlobalFilters = v
31972	return s
31973}
31974
31975// SetModifiedDate sets the ModifiedDate field's value.
31976func (s *GetPatchBaselineOutput) SetModifiedDate(v time.Time) *GetPatchBaselineOutput {
31977	s.ModifiedDate = &v
31978	return s
31979}
31980
31981// SetName sets the Name field's value.
31982func (s *GetPatchBaselineOutput) SetName(v string) *GetPatchBaselineOutput {
31983	s.Name = &v
31984	return s
31985}
31986
31987// SetOperatingSystem sets the OperatingSystem field's value.
31988func (s *GetPatchBaselineOutput) SetOperatingSystem(v string) *GetPatchBaselineOutput {
31989	s.OperatingSystem = &v
31990	return s
31991}
31992
31993// SetPatchGroups sets the PatchGroups field's value.
31994func (s *GetPatchBaselineOutput) SetPatchGroups(v []*string) *GetPatchBaselineOutput {
31995	s.PatchGroups = v
31996	return s
31997}
31998
31999// SetRejectedPatches sets the RejectedPatches field's value.
32000func (s *GetPatchBaselineOutput) SetRejectedPatches(v []*string) *GetPatchBaselineOutput {
32001	s.RejectedPatches = v
32002	return s
32003}
32004
32005// SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
32006func (s *GetPatchBaselineOutput) SetRejectedPatchesAction(v string) *GetPatchBaselineOutput {
32007	s.RejectedPatchesAction = &v
32008	return s
32009}
32010
32011// SetSources sets the Sources field's value.
32012func (s *GetPatchBaselineOutput) SetSources(v []*PatchSource) *GetPatchBaselineOutput {
32013	s.Sources = v
32014	return s
32015}
32016
32017// The request body of the GetServiceSetting API operation.
32018type GetServiceSettingInput struct {
32019	_ struct{} `type:"structure"`
32020
32021	// The ID of the service setting to get. The setting ID can be one of the following.
32022	//
32023	//    * /ssm/automation/customer-script-log-destination
32024	//
32025	//    * /ssm/automation/customer-script-log-group-name
32026	//
32027	//    * /ssm/documents/console/public-sharing-permission
32028	//
32029	//    * /ssm/parameter-store/default-parameter-tier
32030	//
32031	//    * /ssm/parameter-store/high-throughput-enabled
32032	//
32033	//    * /ssm/managed-instance/activation-tier
32034	//
32035	// SettingId is a required field
32036	SettingId *string `min:"1" type:"string" required:"true"`
32037}
32038
32039// String returns the string representation
32040func (s GetServiceSettingInput) String() string {
32041	return awsutil.Prettify(s)
32042}
32043
32044// GoString returns the string representation
32045func (s GetServiceSettingInput) GoString() string {
32046	return s.String()
32047}
32048
32049// Validate inspects the fields of the type to determine if they are valid.
32050func (s *GetServiceSettingInput) Validate() error {
32051	invalidParams := request.ErrInvalidParams{Context: "GetServiceSettingInput"}
32052	if s.SettingId == nil {
32053		invalidParams.Add(request.NewErrParamRequired("SettingId"))
32054	}
32055	if s.SettingId != nil && len(*s.SettingId) < 1 {
32056		invalidParams.Add(request.NewErrParamMinLen("SettingId", 1))
32057	}
32058
32059	if invalidParams.Len() > 0 {
32060		return invalidParams
32061	}
32062	return nil
32063}
32064
32065// SetSettingId sets the SettingId field's value.
32066func (s *GetServiceSettingInput) SetSettingId(v string) *GetServiceSettingInput {
32067	s.SettingId = &v
32068	return s
32069}
32070
32071// The query result body of the GetServiceSetting API operation.
32072type GetServiceSettingOutput struct {
32073	_ struct{} `type:"structure"`
32074
32075	// The query result of the current service setting.
32076	ServiceSetting *ServiceSetting `type:"structure"`
32077}
32078
32079// String returns the string representation
32080func (s GetServiceSettingOutput) String() string {
32081	return awsutil.Prettify(s)
32082}
32083
32084// GoString returns the string representation
32085func (s GetServiceSettingOutput) GoString() string {
32086	return s.String()
32087}
32088
32089// SetServiceSetting sets the ServiceSetting field's value.
32090func (s *GetServiceSettingOutput) SetServiceSetting(v *ServiceSetting) *GetServiceSettingOutput {
32091	s.ServiceSetting = v
32092	return s
32093}
32094
32095// A hierarchy can have a maximum of 15 levels. For more information, see Requirements
32096// and constraints for parameter names (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html)
32097// in the Amazon Web Services Systems Manager User Guide.
32098type HierarchyLevelLimitExceededException struct {
32099	_            struct{}                  `type:"structure"`
32100	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
32101
32102	// A hierarchy can have a maximum of 15 levels. For more information, see Requirements
32103	// and constraints for parameter names (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-parameter-name-constraints.html)
32104	// in the Amazon Web Services Systems Manager User Guide.
32105	Message_ *string `locationName:"message" type:"string"`
32106}
32107
32108// String returns the string representation
32109func (s HierarchyLevelLimitExceededException) String() string {
32110	return awsutil.Prettify(s)
32111}
32112
32113// GoString returns the string representation
32114func (s HierarchyLevelLimitExceededException) GoString() string {
32115	return s.String()
32116}
32117
32118func newErrorHierarchyLevelLimitExceededException(v protocol.ResponseMetadata) error {
32119	return &HierarchyLevelLimitExceededException{
32120		RespMetadata: v,
32121	}
32122}
32123
32124// Code returns the exception type name.
32125func (s *HierarchyLevelLimitExceededException) Code() string {
32126	return "HierarchyLevelLimitExceededException"
32127}
32128
32129// Message returns the exception's message.
32130func (s *HierarchyLevelLimitExceededException) Message() string {
32131	if s.Message_ != nil {
32132		return *s.Message_
32133	}
32134	return ""
32135}
32136
32137// OrigErr always returns nil, satisfies awserr.Error interface.
32138func (s *HierarchyLevelLimitExceededException) OrigErr() error {
32139	return nil
32140}
32141
32142func (s *HierarchyLevelLimitExceededException) Error() string {
32143	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
32144}
32145
32146// Status code returns the HTTP status code for the request's response error.
32147func (s *HierarchyLevelLimitExceededException) StatusCode() int {
32148	return s.RespMetadata.StatusCode
32149}
32150
32151// RequestID returns the service's response RequestID for request.
32152func (s *HierarchyLevelLimitExceededException) RequestID() string {
32153	return s.RespMetadata.RequestID
32154}
32155
32156// Parameter Store doesn't support changing a parameter type in a hierarchy.
32157// For example, you can't change a parameter from a String type to a SecureString
32158// type. You must create a new, unique parameter.
32159type HierarchyTypeMismatchException struct {
32160	_            struct{}                  `type:"structure"`
32161	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
32162
32163	// Parameter Store doesn't support changing a parameter type in a hierarchy.
32164	// For example, you can't change a parameter from a String type to a SecureString
32165	// type. You must create a new, unique parameter.
32166	Message_ *string `locationName:"message" type:"string"`
32167}
32168
32169// String returns the string representation
32170func (s HierarchyTypeMismatchException) String() string {
32171	return awsutil.Prettify(s)
32172}
32173
32174// GoString returns the string representation
32175func (s HierarchyTypeMismatchException) GoString() string {
32176	return s.String()
32177}
32178
32179func newErrorHierarchyTypeMismatchException(v protocol.ResponseMetadata) error {
32180	return &HierarchyTypeMismatchException{
32181		RespMetadata: v,
32182	}
32183}
32184
32185// Code returns the exception type name.
32186func (s *HierarchyTypeMismatchException) Code() string {
32187	return "HierarchyTypeMismatchException"
32188}
32189
32190// Message returns the exception's message.
32191func (s *HierarchyTypeMismatchException) Message() string {
32192	if s.Message_ != nil {
32193		return *s.Message_
32194	}
32195	return ""
32196}
32197
32198// OrigErr always returns nil, satisfies awserr.Error interface.
32199func (s *HierarchyTypeMismatchException) OrigErr() error {
32200	return nil
32201}
32202
32203func (s *HierarchyTypeMismatchException) Error() string {
32204	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
32205}
32206
32207// Status code returns the HTTP status code for the request's response error.
32208func (s *HierarchyTypeMismatchException) StatusCode() int {
32209	return s.RespMetadata.StatusCode
32210}
32211
32212// RequestID returns the service's response RequestID for request.
32213func (s *HierarchyTypeMismatchException) RequestID() string {
32214	return s.RespMetadata.RequestID
32215}
32216
32217// Error returned when an idempotent operation is retried and the parameters
32218// don't match the original call to the API with the same idempotency token.
32219type IdempotentParameterMismatch struct {
32220	_            struct{}                  `type:"structure"`
32221	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
32222
32223	Message_ *string `locationName:"Message" type:"string"`
32224}
32225
32226// String returns the string representation
32227func (s IdempotentParameterMismatch) String() string {
32228	return awsutil.Prettify(s)
32229}
32230
32231// GoString returns the string representation
32232func (s IdempotentParameterMismatch) GoString() string {
32233	return s.String()
32234}
32235
32236func newErrorIdempotentParameterMismatch(v protocol.ResponseMetadata) error {
32237	return &IdempotentParameterMismatch{
32238		RespMetadata: v,
32239	}
32240}
32241
32242// Code returns the exception type name.
32243func (s *IdempotentParameterMismatch) Code() string {
32244	return "IdempotentParameterMismatch"
32245}
32246
32247// Message returns the exception's message.
32248func (s *IdempotentParameterMismatch) Message() string {
32249	if s.Message_ != nil {
32250		return *s.Message_
32251	}
32252	return ""
32253}
32254
32255// OrigErr always returns nil, satisfies awserr.Error interface.
32256func (s *IdempotentParameterMismatch) OrigErr() error {
32257	return nil
32258}
32259
32260func (s *IdempotentParameterMismatch) Error() string {
32261	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
32262}
32263
32264// Status code returns the HTTP status code for the request's response error.
32265func (s *IdempotentParameterMismatch) StatusCode() int {
32266	return s.RespMetadata.StatusCode
32267}
32268
32269// RequestID returns the service's response RequestID for request.
32270func (s *IdempotentParameterMismatch) RequestID() string {
32271	return s.RespMetadata.RequestID
32272}
32273
32274// There is a conflict in the policies specified for this parameter. You can't,
32275// for example, specify two Expiration policies for a parameter. Review your
32276// policies, and try again.
32277type IncompatiblePolicyException struct {
32278	_            struct{}                  `type:"structure"`
32279	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
32280
32281	Message_ *string `locationName:"message" type:"string"`
32282}
32283
32284// String returns the string representation
32285func (s IncompatiblePolicyException) String() string {
32286	return awsutil.Prettify(s)
32287}
32288
32289// GoString returns the string representation
32290func (s IncompatiblePolicyException) GoString() string {
32291	return s.String()
32292}
32293
32294func newErrorIncompatiblePolicyException(v protocol.ResponseMetadata) error {
32295	return &IncompatiblePolicyException{
32296		RespMetadata: v,
32297	}
32298}
32299
32300// Code returns the exception type name.
32301func (s *IncompatiblePolicyException) Code() string {
32302	return "IncompatiblePolicyException"
32303}
32304
32305// Message returns the exception's message.
32306func (s *IncompatiblePolicyException) Message() string {
32307	if s.Message_ != nil {
32308		return *s.Message_
32309	}
32310	return ""
32311}
32312
32313// OrigErr always returns nil, satisfies awserr.Error interface.
32314func (s *IncompatiblePolicyException) OrigErr() error {
32315	return nil
32316}
32317
32318func (s *IncompatiblePolicyException) Error() string {
32319	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
32320}
32321
32322// Status code returns the HTTP status code for the request's response error.
32323func (s *IncompatiblePolicyException) StatusCode() int {
32324	return s.RespMetadata.StatusCode
32325}
32326
32327// RequestID returns the service's response RequestID for request.
32328func (s *IncompatiblePolicyException) RequestID() string {
32329	return s.RespMetadata.RequestID
32330}
32331
32332// Status information about the aggregated associations.
32333type InstanceAggregatedAssociationOverview struct {
32334	_ struct{} `type:"structure"`
32335
32336	// Detailed status information about the aggregated associations.
32337	DetailedStatus *string `type:"string"`
32338
32339	// The number of associations for the instance(s).
32340	InstanceAssociationStatusAggregatedCount map[string]*int64 `type:"map"`
32341}
32342
32343// String returns the string representation
32344func (s InstanceAggregatedAssociationOverview) String() string {
32345	return awsutil.Prettify(s)
32346}
32347
32348// GoString returns the string representation
32349func (s InstanceAggregatedAssociationOverview) GoString() string {
32350	return s.String()
32351}
32352
32353// SetDetailedStatus sets the DetailedStatus field's value.
32354func (s *InstanceAggregatedAssociationOverview) SetDetailedStatus(v string) *InstanceAggregatedAssociationOverview {
32355	s.DetailedStatus = &v
32356	return s
32357}
32358
32359// SetInstanceAssociationStatusAggregatedCount sets the InstanceAssociationStatusAggregatedCount field's value.
32360func (s *InstanceAggregatedAssociationOverview) SetInstanceAssociationStatusAggregatedCount(v map[string]*int64) *InstanceAggregatedAssociationOverview {
32361	s.InstanceAssociationStatusAggregatedCount = v
32362	return s
32363}
32364
32365// One or more association documents on the instance.
32366type InstanceAssociation struct {
32367	_ struct{} `type:"structure"`
32368
32369	// The association ID.
32370	AssociationId *string `type:"string"`
32371
32372	// Version information for the association on the instance.
32373	AssociationVersion *string `type:"string"`
32374
32375	// The content of the association document for the instance(s).
32376	Content *string `min:"1" type:"string"`
32377
32378	// The instance ID.
32379	InstanceId *string `type:"string"`
32380}
32381
32382// String returns the string representation
32383func (s InstanceAssociation) String() string {
32384	return awsutil.Prettify(s)
32385}
32386
32387// GoString returns the string representation
32388func (s InstanceAssociation) GoString() string {
32389	return s.String()
32390}
32391
32392// SetAssociationId sets the AssociationId field's value.
32393func (s *InstanceAssociation) SetAssociationId(v string) *InstanceAssociation {
32394	s.AssociationId = &v
32395	return s
32396}
32397
32398// SetAssociationVersion sets the AssociationVersion field's value.
32399func (s *InstanceAssociation) SetAssociationVersion(v string) *InstanceAssociation {
32400	s.AssociationVersion = &v
32401	return s
32402}
32403
32404// SetContent sets the Content field's value.
32405func (s *InstanceAssociation) SetContent(v string) *InstanceAssociation {
32406	s.Content = &v
32407	return s
32408}
32409
32410// SetInstanceId sets the InstanceId field's value.
32411func (s *InstanceAssociation) SetInstanceId(v string) *InstanceAssociation {
32412	s.InstanceId = &v
32413	return s
32414}
32415
32416// An S3 bucket where you want to store the results of this request.
32417//
32418// For the minimal permissions required to enable Amazon S3 output for an association,
32419// see Creating associations (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-state-assoc.html)
32420// in the Systems Manager User Guide.
32421type InstanceAssociationOutputLocation struct {
32422	_ struct{} `type:"structure"`
32423
32424	// An S3 bucket where you want to store the results of this request.
32425	S3Location *S3OutputLocation `type:"structure"`
32426}
32427
32428// String returns the string representation
32429func (s InstanceAssociationOutputLocation) String() string {
32430	return awsutil.Prettify(s)
32431}
32432
32433// GoString returns the string representation
32434func (s InstanceAssociationOutputLocation) GoString() string {
32435	return s.String()
32436}
32437
32438// Validate inspects the fields of the type to determine if they are valid.
32439func (s *InstanceAssociationOutputLocation) Validate() error {
32440	invalidParams := request.ErrInvalidParams{Context: "InstanceAssociationOutputLocation"}
32441	if s.S3Location != nil {
32442		if err := s.S3Location.Validate(); err != nil {
32443			invalidParams.AddNested("S3Location", err.(request.ErrInvalidParams))
32444		}
32445	}
32446
32447	if invalidParams.Len() > 0 {
32448		return invalidParams
32449	}
32450	return nil
32451}
32452
32453// SetS3Location sets the S3Location field's value.
32454func (s *InstanceAssociationOutputLocation) SetS3Location(v *S3OutputLocation) *InstanceAssociationOutputLocation {
32455	s.S3Location = v
32456	return s
32457}
32458
32459// The URL of S3 bucket where you want to store the results of this request.
32460type InstanceAssociationOutputUrl struct {
32461	_ struct{} `type:"structure"`
32462
32463	// The URL of S3 bucket where you want to store the results of this request.
32464	S3OutputUrl *S3OutputUrl `type:"structure"`
32465}
32466
32467// String returns the string representation
32468func (s InstanceAssociationOutputUrl) String() string {
32469	return awsutil.Prettify(s)
32470}
32471
32472// GoString returns the string representation
32473func (s InstanceAssociationOutputUrl) GoString() string {
32474	return s.String()
32475}
32476
32477// SetS3OutputUrl sets the S3OutputUrl field's value.
32478func (s *InstanceAssociationOutputUrl) SetS3OutputUrl(v *S3OutputUrl) *InstanceAssociationOutputUrl {
32479	s.S3OutputUrl = v
32480	return s
32481}
32482
32483// Status information about the instance association.
32484type InstanceAssociationStatusInfo struct {
32485	_ struct{} `type:"structure"`
32486
32487	// The association ID.
32488	AssociationId *string `type:"string"`
32489
32490	// The name of the association applied to the instance.
32491	AssociationName *string `type:"string"`
32492
32493	// The version of the association applied to the instance.
32494	AssociationVersion *string `type:"string"`
32495
32496	// Detailed status information about the instance association.
32497	DetailedStatus *string `type:"string"`
32498
32499	// The association document versions.
32500	DocumentVersion *string `type:"string"`
32501
32502	// An error code returned by the request to create the association.
32503	ErrorCode *string `type:"string"`
32504
32505	// The date the instance association ran.
32506	ExecutionDate *time.Time `type:"timestamp"`
32507
32508	// Summary information about association execution.
32509	ExecutionSummary *string `min:"1" type:"string"`
32510
32511	// The instance ID where the association was created.
32512	InstanceId *string `type:"string"`
32513
32514	// The name of the association.
32515	Name *string `type:"string"`
32516
32517	// A URL for an S3 bucket where you want to store the results of this request.
32518	OutputUrl *InstanceAssociationOutputUrl `type:"structure"`
32519
32520	// Status information about the instance association.
32521	Status *string `type:"string"`
32522}
32523
32524// String returns the string representation
32525func (s InstanceAssociationStatusInfo) String() string {
32526	return awsutil.Prettify(s)
32527}
32528
32529// GoString returns the string representation
32530func (s InstanceAssociationStatusInfo) GoString() string {
32531	return s.String()
32532}
32533
32534// SetAssociationId sets the AssociationId field's value.
32535func (s *InstanceAssociationStatusInfo) SetAssociationId(v string) *InstanceAssociationStatusInfo {
32536	s.AssociationId = &v
32537	return s
32538}
32539
32540// SetAssociationName sets the AssociationName field's value.
32541func (s *InstanceAssociationStatusInfo) SetAssociationName(v string) *InstanceAssociationStatusInfo {
32542	s.AssociationName = &v
32543	return s
32544}
32545
32546// SetAssociationVersion sets the AssociationVersion field's value.
32547func (s *InstanceAssociationStatusInfo) SetAssociationVersion(v string) *InstanceAssociationStatusInfo {
32548	s.AssociationVersion = &v
32549	return s
32550}
32551
32552// SetDetailedStatus sets the DetailedStatus field's value.
32553func (s *InstanceAssociationStatusInfo) SetDetailedStatus(v string) *InstanceAssociationStatusInfo {
32554	s.DetailedStatus = &v
32555	return s
32556}
32557
32558// SetDocumentVersion sets the DocumentVersion field's value.
32559func (s *InstanceAssociationStatusInfo) SetDocumentVersion(v string) *InstanceAssociationStatusInfo {
32560	s.DocumentVersion = &v
32561	return s
32562}
32563
32564// SetErrorCode sets the ErrorCode field's value.
32565func (s *InstanceAssociationStatusInfo) SetErrorCode(v string) *InstanceAssociationStatusInfo {
32566	s.ErrorCode = &v
32567	return s
32568}
32569
32570// SetExecutionDate sets the ExecutionDate field's value.
32571func (s *InstanceAssociationStatusInfo) SetExecutionDate(v time.Time) *InstanceAssociationStatusInfo {
32572	s.ExecutionDate = &v
32573	return s
32574}
32575
32576// SetExecutionSummary sets the ExecutionSummary field's value.
32577func (s *InstanceAssociationStatusInfo) SetExecutionSummary(v string) *InstanceAssociationStatusInfo {
32578	s.ExecutionSummary = &v
32579	return s
32580}
32581
32582// SetInstanceId sets the InstanceId field's value.
32583func (s *InstanceAssociationStatusInfo) SetInstanceId(v string) *InstanceAssociationStatusInfo {
32584	s.InstanceId = &v
32585	return s
32586}
32587
32588// SetName sets the Name field's value.
32589func (s *InstanceAssociationStatusInfo) SetName(v string) *InstanceAssociationStatusInfo {
32590	s.Name = &v
32591	return s
32592}
32593
32594// SetOutputUrl sets the OutputUrl field's value.
32595func (s *InstanceAssociationStatusInfo) SetOutputUrl(v *InstanceAssociationOutputUrl) *InstanceAssociationStatusInfo {
32596	s.OutputUrl = v
32597	return s
32598}
32599
32600// SetStatus sets the Status field's value.
32601func (s *InstanceAssociationStatusInfo) SetStatus(v string) *InstanceAssociationStatusInfo {
32602	s.Status = &v
32603	return s
32604}
32605
32606// Describes a filter for a specific list of instances.
32607type InstanceInformation struct {
32608	_ struct{} `type:"structure"`
32609
32610	// The activation ID created by Amazon Web Services Systems Manager when the
32611	// server or virtual machine (VM) was registered.
32612	ActivationId *string `type:"string"`
32613
32614	// The version of SSM Agent running on your Linux instance.
32615	AgentVersion *string `type:"string"`
32616
32617	// Information about the association.
32618	AssociationOverview *InstanceAggregatedAssociationOverview `type:"structure"`
32619
32620	// The status of the association.
32621	AssociationStatus *string `type:"string"`
32622
32623	// The fully qualified host name of the managed instance.
32624	ComputerName *string `min:"1" type:"string"`
32625
32626	// The IP address of the managed instance.
32627	IPAddress *string `min:"1" type:"string"`
32628
32629	// The Identity and Access Management (IAM) role assigned to the on-premises
32630	// Systems Manager managed instance. This call doesn't return the IAM role for
32631	// Amazon Elastic Compute Cloud (Amazon EC2) instances. To retrieve the IAM
32632	// role for an EC2 instance, use the Amazon EC2 DescribeInstances operation.
32633	// For information, see DescribeInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html)
32634	// in the Amazon EC2 API Reference or describe-instances (https://docs.aws.amazon.com/cli/latest/ec2/describe-instances.html)
32635	// in the Amazon Web Services CLI Command Reference.
32636	IamRole *string `type:"string"`
32637
32638	// The instance ID.
32639	InstanceId *string `type:"string"`
32640
32641	// Indicates whether the latest version of SSM Agent is running on your Linux
32642	// Managed Instance. This field doesn't indicate whether or not the latest version
32643	// is installed on Windows managed instances, because some older versions of
32644	// Windows Server use the EC2Config service to process Systems Manager requests.
32645	IsLatestVersion *bool `type:"boolean"`
32646
32647	// The date the association was last run.
32648	LastAssociationExecutionDate *time.Time `type:"timestamp"`
32649
32650	// The date and time when the agent last pinged the Systems Manager service.
32651	LastPingDateTime *time.Time `type:"timestamp"`
32652
32653	// The last date the association was successfully run.
32654	LastSuccessfulAssociationExecutionDate *time.Time `type:"timestamp"`
32655
32656	// The name assigned to an on-premises server or virtual machine (VM) when it
32657	// is activated as a Systems Manager managed instance. The name is specified
32658	// as the DefaultInstanceName property using the CreateActivation command. It
32659	// is applied to the managed instance by specifying the Activation Code and
32660	// Activation ID when you install SSM Agent on the instance, as explained in
32661	// Install SSM Agent for a hybrid environment (Linux) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-managed-linux.html)
32662	// and Install SSM Agent for a hybrid environment (Windows) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-install-managed-win.html).
32663	// To retrieve the Name tag of an EC2 instance, use the Amazon EC2 DescribeInstances
32664	// operation. For information, see DescribeInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html)
32665	// in the Amazon EC2 API Reference or describe-instances (https://docs.aws.amazon.com/cli/latest/ec2/describe-instances.html)
32666	// in the Amazon Web Services CLI Command Reference.
32667	Name *string `type:"string"`
32668
32669	// Connection status of SSM Agent.
32670	//
32671	// The status Inactive has been deprecated and is no longer in use.
32672	PingStatus *string `type:"string" enum:"PingStatus"`
32673
32674	// The name of the operating system platform running on your instance.
32675	PlatformName *string `type:"string"`
32676
32677	// The operating system platform type.
32678	PlatformType *string `type:"string" enum:"PlatformType"`
32679
32680	// The version of the OS platform running on your instance.
32681	PlatformVersion *string `type:"string"`
32682
32683	// The date the server or VM was registered with Amazon Web Services as a managed
32684	// instance.
32685	RegistrationDate *time.Time `type:"timestamp"`
32686
32687	// The type of instance. Instances are either EC2 instances or managed instances.
32688	ResourceType *string `type:"string" enum:"ResourceType"`
32689}
32690
32691// String returns the string representation
32692func (s InstanceInformation) String() string {
32693	return awsutil.Prettify(s)
32694}
32695
32696// GoString returns the string representation
32697func (s InstanceInformation) GoString() string {
32698	return s.String()
32699}
32700
32701// SetActivationId sets the ActivationId field's value.
32702func (s *InstanceInformation) SetActivationId(v string) *InstanceInformation {
32703	s.ActivationId = &v
32704	return s
32705}
32706
32707// SetAgentVersion sets the AgentVersion field's value.
32708func (s *InstanceInformation) SetAgentVersion(v string) *InstanceInformation {
32709	s.AgentVersion = &v
32710	return s
32711}
32712
32713// SetAssociationOverview sets the AssociationOverview field's value.
32714func (s *InstanceInformation) SetAssociationOverview(v *InstanceAggregatedAssociationOverview) *InstanceInformation {
32715	s.AssociationOverview = v
32716	return s
32717}
32718
32719// SetAssociationStatus sets the AssociationStatus field's value.
32720func (s *InstanceInformation) SetAssociationStatus(v string) *InstanceInformation {
32721	s.AssociationStatus = &v
32722	return s
32723}
32724
32725// SetComputerName sets the ComputerName field's value.
32726func (s *InstanceInformation) SetComputerName(v string) *InstanceInformation {
32727	s.ComputerName = &v
32728	return s
32729}
32730
32731// SetIPAddress sets the IPAddress field's value.
32732func (s *InstanceInformation) SetIPAddress(v string) *InstanceInformation {
32733	s.IPAddress = &v
32734	return s
32735}
32736
32737// SetIamRole sets the IamRole field's value.
32738func (s *InstanceInformation) SetIamRole(v string) *InstanceInformation {
32739	s.IamRole = &v
32740	return s
32741}
32742
32743// SetInstanceId sets the InstanceId field's value.
32744func (s *InstanceInformation) SetInstanceId(v string) *InstanceInformation {
32745	s.InstanceId = &v
32746	return s
32747}
32748
32749// SetIsLatestVersion sets the IsLatestVersion field's value.
32750func (s *InstanceInformation) SetIsLatestVersion(v bool) *InstanceInformation {
32751	s.IsLatestVersion = &v
32752	return s
32753}
32754
32755// SetLastAssociationExecutionDate sets the LastAssociationExecutionDate field's value.
32756func (s *InstanceInformation) SetLastAssociationExecutionDate(v time.Time) *InstanceInformation {
32757	s.LastAssociationExecutionDate = &v
32758	return s
32759}
32760
32761// SetLastPingDateTime sets the LastPingDateTime field's value.
32762func (s *InstanceInformation) SetLastPingDateTime(v time.Time) *InstanceInformation {
32763	s.LastPingDateTime = &v
32764	return s
32765}
32766
32767// SetLastSuccessfulAssociationExecutionDate sets the LastSuccessfulAssociationExecutionDate field's value.
32768func (s *InstanceInformation) SetLastSuccessfulAssociationExecutionDate(v time.Time) *InstanceInformation {
32769	s.LastSuccessfulAssociationExecutionDate = &v
32770	return s
32771}
32772
32773// SetName sets the Name field's value.
32774func (s *InstanceInformation) SetName(v string) *InstanceInformation {
32775	s.Name = &v
32776	return s
32777}
32778
32779// SetPingStatus sets the PingStatus field's value.
32780func (s *InstanceInformation) SetPingStatus(v string) *InstanceInformation {
32781	s.PingStatus = &v
32782	return s
32783}
32784
32785// SetPlatformName sets the PlatformName field's value.
32786func (s *InstanceInformation) SetPlatformName(v string) *InstanceInformation {
32787	s.PlatformName = &v
32788	return s
32789}
32790
32791// SetPlatformType sets the PlatformType field's value.
32792func (s *InstanceInformation) SetPlatformType(v string) *InstanceInformation {
32793	s.PlatformType = &v
32794	return s
32795}
32796
32797// SetPlatformVersion sets the PlatformVersion field's value.
32798func (s *InstanceInformation) SetPlatformVersion(v string) *InstanceInformation {
32799	s.PlatformVersion = &v
32800	return s
32801}
32802
32803// SetRegistrationDate sets the RegistrationDate field's value.
32804func (s *InstanceInformation) SetRegistrationDate(v time.Time) *InstanceInformation {
32805	s.RegistrationDate = &v
32806	return s
32807}
32808
32809// SetResourceType sets the ResourceType field's value.
32810func (s *InstanceInformation) SetResourceType(v string) *InstanceInformation {
32811	s.ResourceType = &v
32812	return s
32813}
32814
32815// Describes a filter for a specific list of instances. You can filter instances
32816// information by using tags. You specify tags by using a key-value mapping.
32817//
32818// Use this operation instead of the DescribeInstanceInformationRequest$InstanceInformationFilterList
32819// method. The InstanceInformationFilterList method is a legacy method and doesn't
32820// support tags.
32821type InstanceInformationFilter struct {
32822	_ struct{} `type:"structure"`
32823
32824	// The name of the filter.
32825	//
32826	// Key is a required field
32827	Key *string `locationName:"key" type:"string" required:"true" enum:"InstanceInformationFilterKey"`
32828
32829	// The filter values.
32830	//
32831	// ValueSet is a required field
32832	ValueSet []*string `locationName:"valueSet" min:"1" type:"list" required:"true"`
32833}
32834
32835// String returns the string representation
32836func (s InstanceInformationFilter) String() string {
32837	return awsutil.Prettify(s)
32838}
32839
32840// GoString returns the string representation
32841func (s InstanceInformationFilter) GoString() string {
32842	return s.String()
32843}
32844
32845// Validate inspects the fields of the type to determine if they are valid.
32846func (s *InstanceInformationFilter) Validate() error {
32847	invalidParams := request.ErrInvalidParams{Context: "InstanceInformationFilter"}
32848	if s.Key == nil {
32849		invalidParams.Add(request.NewErrParamRequired("Key"))
32850	}
32851	if s.ValueSet == nil {
32852		invalidParams.Add(request.NewErrParamRequired("ValueSet"))
32853	}
32854	if s.ValueSet != nil && len(s.ValueSet) < 1 {
32855		invalidParams.Add(request.NewErrParamMinLen("ValueSet", 1))
32856	}
32857
32858	if invalidParams.Len() > 0 {
32859		return invalidParams
32860	}
32861	return nil
32862}
32863
32864// SetKey sets the Key field's value.
32865func (s *InstanceInformationFilter) SetKey(v string) *InstanceInformationFilter {
32866	s.Key = &v
32867	return s
32868}
32869
32870// SetValueSet sets the ValueSet field's value.
32871func (s *InstanceInformationFilter) SetValueSet(v []*string) *InstanceInformationFilter {
32872	s.ValueSet = v
32873	return s
32874}
32875
32876// The filters to describe or get information about your managed instances.
32877type InstanceInformationStringFilter struct {
32878	_ struct{} `type:"structure"`
32879
32880	// The filter key name to describe your instances. For example:
32881	//
32882	// "InstanceIds"|"AgentVersion"|"PingStatus"|"PlatformTypes"|"ActivationIds"|"IamRole"|"ResourceType"|"AssociationStatus"|"Tag
32883	// Key"
32884	//
32885	// Tag key isn't a valid filter. You must specify either tag-key or tag:keyname
32886	// and a string. Here are some valid examples: tag-key, tag:123, tag:al!, tag:Windows.
32887	// Here are some invalid examples: tag-keys, Tag Key, tag:, tagKey, abc:keyname.
32888	//
32889	// Key is a required field
32890	Key *string `min:"1" type:"string" required:"true"`
32891
32892	// The filter values.
32893	//
32894	// Values is a required field
32895	Values []*string `min:"1" type:"list" required:"true"`
32896}
32897
32898// String returns the string representation
32899func (s InstanceInformationStringFilter) String() string {
32900	return awsutil.Prettify(s)
32901}
32902
32903// GoString returns the string representation
32904func (s InstanceInformationStringFilter) GoString() string {
32905	return s.String()
32906}
32907
32908// Validate inspects the fields of the type to determine if they are valid.
32909func (s *InstanceInformationStringFilter) Validate() error {
32910	invalidParams := request.ErrInvalidParams{Context: "InstanceInformationStringFilter"}
32911	if s.Key == nil {
32912		invalidParams.Add(request.NewErrParamRequired("Key"))
32913	}
32914	if s.Key != nil && len(*s.Key) < 1 {
32915		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
32916	}
32917	if s.Values == nil {
32918		invalidParams.Add(request.NewErrParamRequired("Values"))
32919	}
32920	if s.Values != nil && len(s.Values) < 1 {
32921		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
32922	}
32923
32924	if invalidParams.Len() > 0 {
32925		return invalidParams
32926	}
32927	return nil
32928}
32929
32930// SetKey sets the Key field's value.
32931func (s *InstanceInformationStringFilter) SetKey(v string) *InstanceInformationStringFilter {
32932	s.Key = &v
32933	return s
32934}
32935
32936// SetValues sets the Values field's value.
32937func (s *InstanceInformationStringFilter) SetValues(v []*string) *InstanceInformationStringFilter {
32938	s.Values = v
32939	return s
32940}
32941
32942// Defines the high-level patch compliance state for a managed instance, providing
32943// information about the number of installed, missing, not applicable, and failed
32944// patches along with metadata about the operation when this information was
32945// gathered for the instance.
32946type InstancePatchState struct {
32947	_ struct{} `type:"structure"`
32948
32949	// The ID of the patch baseline used to patch the instance.
32950	//
32951	// BaselineId is a required field
32952	BaselineId *string `min:"20" type:"string" required:"true"`
32953
32954	// The number of instances where patches that are specified as Critical for
32955	// compliance reporting in the patch baseline aren't installed. These patches
32956	// might be missing, have failed installation, were rejected, or were installed
32957	// but awaiting a required instance reboot. The status of these instances is
32958	// NON_COMPLIANT.
32959	CriticalNonCompliantCount *int64 `type:"integer"`
32960
32961	// The number of patches from the patch baseline that were attempted to be installed
32962	// during the last patching operation, but failed to install.
32963	FailedCount *int64 `type:"integer"`
32964
32965	// An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL
32966	// to a list of patches to be installed. This patch installation list, which
32967	// you maintain in an S3 bucket in YAML format and specify in the SSM document
32968	// AWS-RunPatchBaseline, overrides the patches specified by the default patch
32969	// baseline.
32970	//
32971	// For more information about the InstallOverrideList parameter, see About the
32972	// AWS-RunPatchBaseline (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-about-aws-runpatchbaseline.html)
32973	// SSM document in the Amazon Web Services Systems Manager User Guide.
32974	InstallOverrideList *string `min:"1" type:"string"`
32975
32976	// The number of patches from the patch baseline that are installed on the instance.
32977	InstalledCount *int64 `type:"integer"`
32978
32979	// The number of patches not specified in the patch baseline that are installed
32980	// on the instance.
32981	InstalledOtherCount *int64 `type:"integer"`
32982
32983	// The number of patches installed by Patch Manager since the last time the
32984	// instance was rebooted.
32985	InstalledPendingRebootCount *int64 `type:"integer"`
32986
32987	// The number of patches installed on an instance that are specified in a RejectedPatches
32988	// list. Patches with a status of InstalledRejected were typically installed
32989	// before they were added to a RejectedPatches list.
32990	//
32991	// If ALLOW_AS_DEPENDENCY is the specified option for RejectedPatchesAction,
32992	// the value of InstalledRejectedCount will always be 0 (zero).
32993	InstalledRejectedCount *int64 `type:"integer"`
32994
32995	// The ID of the managed instance the high-level patch compliance information
32996	// was collected for.
32997	//
32998	// InstanceId is a required field
32999	InstanceId *string `type:"string" required:"true"`
33000
33001	// The time of the last attempt to patch the instance with NoReboot specified
33002	// as the reboot option.
33003	LastNoRebootInstallOperationTime *time.Time `type:"timestamp"`
33004
33005	// The number of patches from the patch baseline that are applicable for the
33006	// instance but aren't currently installed.
33007	MissingCount *int64 `type:"integer"`
33008
33009	// The number of patches from the patch baseline that aren't applicable for
33010	// the instance and therefore aren't installed on the instance. This number
33011	// may be truncated if the list of patch names is very large. The number of
33012	// patches beyond this limit are reported in UnreportedNotApplicableCount.
33013	NotApplicableCount *int64 `type:"integer"`
33014
33015	// The type of patching operation that was performed: or
33016	//
33017	//    * SCAN assesses the patch compliance state.
33018	//
33019	//    * INSTALL installs missing patches.
33020	//
33021	// Operation is a required field
33022	Operation *string `type:"string" required:"true" enum:"PatchOperationType"`
33023
33024	// The time the most recent patching operation completed on the instance.
33025	//
33026	// OperationEndTime is a required field
33027	OperationEndTime *time.Time `type:"timestamp" required:"true"`
33028
33029	// The time the most recent patching operation was started on the instance.
33030	//
33031	// OperationStartTime is a required field
33032	OperationStartTime *time.Time `type:"timestamp" required:"true"`
33033
33034	// The number of instances with patches installed that are specified as other
33035	// than Critical or Security but aren't compliant with the patch baseline. The
33036	// status of these instances is NON_COMPLIANT.
33037	OtherNonCompliantCount *int64 `type:"integer"`
33038
33039	// Placeholder information. This field will always be empty in the current release
33040	// of the service.
33041	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
33042
33043	// The name of the patch group the managed instance belongs to.
33044	//
33045	// PatchGroup is a required field
33046	PatchGroup *string `min:"1" type:"string" required:"true"`
33047
33048	// Indicates the reboot option specified in the patch baseline.
33049	//
33050	// Reboot options apply to Install operations only. Reboots aren't attempted
33051	// for Patch Manager Scan operations.
33052	//
33053	//    * RebootIfNeeded: Patch Manager tries to reboot the instance if it installed
33054	//    any patches, or if any patches are detected with a status of InstalledPendingReboot.
33055	//
33056	//    * NoReboot: Patch Manager attempts to install missing packages without
33057	//    trying to reboot the system. Patches installed with this option are assigned
33058	//    a status of InstalledPendingReboot. These patches might not be in effect
33059	//    until a reboot is performed.
33060	RebootOption *string `type:"string" enum:"RebootOption"`
33061
33062	// The number of instances where patches that are specified as Security in a
33063	// patch advisory aren't installed. These patches might be missing, have failed
33064	// installation, were rejected, or were installed but awaiting a required instance
33065	// reboot. The status of these instances is NON_COMPLIANT.
33066	SecurityNonCompliantCount *int64 `type:"integer"`
33067
33068	// The ID of the patch baseline snapshot used during the patching operation
33069	// when this compliance data was collected.
33070	SnapshotId *string `min:"36" type:"string"`
33071
33072	// The number of patches beyond the supported limit of NotApplicableCount that
33073	// aren't reported by name to Inventory. Inventory is a capability of Amazon
33074	// Web Services Systems Manager.
33075	UnreportedNotApplicableCount *int64 `type:"integer"`
33076}
33077
33078// String returns the string representation
33079func (s InstancePatchState) String() string {
33080	return awsutil.Prettify(s)
33081}
33082
33083// GoString returns the string representation
33084func (s InstancePatchState) GoString() string {
33085	return s.String()
33086}
33087
33088// SetBaselineId sets the BaselineId field's value.
33089func (s *InstancePatchState) SetBaselineId(v string) *InstancePatchState {
33090	s.BaselineId = &v
33091	return s
33092}
33093
33094// SetCriticalNonCompliantCount sets the CriticalNonCompliantCount field's value.
33095func (s *InstancePatchState) SetCriticalNonCompliantCount(v int64) *InstancePatchState {
33096	s.CriticalNonCompliantCount = &v
33097	return s
33098}
33099
33100// SetFailedCount sets the FailedCount field's value.
33101func (s *InstancePatchState) SetFailedCount(v int64) *InstancePatchState {
33102	s.FailedCount = &v
33103	return s
33104}
33105
33106// SetInstallOverrideList sets the InstallOverrideList field's value.
33107func (s *InstancePatchState) SetInstallOverrideList(v string) *InstancePatchState {
33108	s.InstallOverrideList = &v
33109	return s
33110}
33111
33112// SetInstalledCount sets the InstalledCount field's value.
33113func (s *InstancePatchState) SetInstalledCount(v int64) *InstancePatchState {
33114	s.InstalledCount = &v
33115	return s
33116}
33117
33118// SetInstalledOtherCount sets the InstalledOtherCount field's value.
33119func (s *InstancePatchState) SetInstalledOtherCount(v int64) *InstancePatchState {
33120	s.InstalledOtherCount = &v
33121	return s
33122}
33123
33124// SetInstalledPendingRebootCount sets the InstalledPendingRebootCount field's value.
33125func (s *InstancePatchState) SetInstalledPendingRebootCount(v int64) *InstancePatchState {
33126	s.InstalledPendingRebootCount = &v
33127	return s
33128}
33129
33130// SetInstalledRejectedCount sets the InstalledRejectedCount field's value.
33131func (s *InstancePatchState) SetInstalledRejectedCount(v int64) *InstancePatchState {
33132	s.InstalledRejectedCount = &v
33133	return s
33134}
33135
33136// SetInstanceId sets the InstanceId field's value.
33137func (s *InstancePatchState) SetInstanceId(v string) *InstancePatchState {
33138	s.InstanceId = &v
33139	return s
33140}
33141
33142// SetLastNoRebootInstallOperationTime sets the LastNoRebootInstallOperationTime field's value.
33143func (s *InstancePatchState) SetLastNoRebootInstallOperationTime(v time.Time) *InstancePatchState {
33144	s.LastNoRebootInstallOperationTime = &v
33145	return s
33146}
33147
33148// SetMissingCount sets the MissingCount field's value.
33149func (s *InstancePatchState) SetMissingCount(v int64) *InstancePatchState {
33150	s.MissingCount = &v
33151	return s
33152}
33153
33154// SetNotApplicableCount sets the NotApplicableCount field's value.
33155func (s *InstancePatchState) SetNotApplicableCount(v int64) *InstancePatchState {
33156	s.NotApplicableCount = &v
33157	return s
33158}
33159
33160// SetOperation sets the Operation field's value.
33161func (s *InstancePatchState) SetOperation(v string) *InstancePatchState {
33162	s.Operation = &v
33163	return s
33164}
33165
33166// SetOperationEndTime sets the OperationEndTime field's value.
33167func (s *InstancePatchState) SetOperationEndTime(v time.Time) *InstancePatchState {
33168	s.OperationEndTime = &v
33169	return s
33170}
33171
33172// SetOperationStartTime sets the OperationStartTime field's value.
33173func (s *InstancePatchState) SetOperationStartTime(v time.Time) *InstancePatchState {
33174	s.OperationStartTime = &v
33175	return s
33176}
33177
33178// SetOtherNonCompliantCount sets the OtherNonCompliantCount field's value.
33179func (s *InstancePatchState) SetOtherNonCompliantCount(v int64) *InstancePatchState {
33180	s.OtherNonCompliantCount = &v
33181	return s
33182}
33183
33184// SetOwnerInformation sets the OwnerInformation field's value.
33185func (s *InstancePatchState) SetOwnerInformation(v string) *InstancePatchState {
33186	s.OwnerInformation = &v
33187	return s
33188}
33189
33190// SetPatchGroup sets the PatchGroup field's value.
33191func (s *InstancePatchState) SetPatchGroup(v string) *InstancePatchState {
33192	s.PatchGroup = &v
33193	return s
33194}
33195
33196// SetRebootOption sets the RebootOption field's value.
33197func (s *InstancePatchState) SetRebootOption(v string) *InstancePatchState {
33198	s.RebootOption = &v
33199	return s
33200}
33201
33202// SetSecurityNonCompliantCount sets the SecurityNonCompliantCount field's value.
33203func (s *InstancePatchState) SetSecurityNonCompliantCount(v int64) *InstancePatchState {
33204	s.SecurityNonCompliantCount = &v
33205	return s
33206}
33207
33208// SetSnapshotId sets the SnapshotId field's value.
33209func (s *InstancePatchState) SetSnapshotId(v string) *InstancePatchState {
33210	s.SnapshotId = &v
33211	return s
33212}
33213
33214// SetUnreportedNotApplicableCount sets the UnreportedNotApplicableCount field's value.
33215func (s *InstancePatchState) SetUnreportedNotApplicableCount(v int64) *InstancePatchState {
33216	s.UnreportedNotApplicableCount = &v
33217	return s
33218}
33219
33220// Defines a filter used in DescribeInstancePatchStatesForPatchGroup to scope
33221// down the information returned by the API.
33222//
33223// Example: To filter for all instances in a patch group having more than three
33224// patches with a FailedCount status, use the following for the filter:
33225//
33226//    * Value for Key: FailedCount
33227//
33228//    * Value for Type: GreaterThan
33229//
33230//    * Value for Values: 3
33231type InstancePatchStateFilter struct {
33232	_ struct{} `type:"structure"`
33233
33234	// The key for the filter. Supported values include the following:
33235	//
33236	//    * InstalledCount
33237	//
33238	//    * InstalledOtherCount
33239	//
33240	//    * InstalledPendingRebootCount
33241	//
33242	//    * InstalledRejectedCount
33243	//
33244	//    * MissingCount
33245	//
33246	//    * FailedCount
33247	//
33248	//    * UnreportedNotApplicableCount
33249	//
33250	//    * NotApplicableCount
33251	//
33252	// Key is a required field
33253	Key *string `min:"1" type:"string" required:"true"`
33254
33255	// The type of comparison that should be performed for the value.
33256	//
33257	// Type is a required field
33258	Type *string `type:"string" required:"true" enum:"InstancePatchStateOperatorType"`
33259
33260	// The value for the filter. Must be an integer greater than or equal to 0.
33261	//
33262	// Values is a required field
33263	Values []*string `min:"1" type:"list" required:"true"`
33264}
33265
33266// String returns the string representation
33267func (s InstancePatchStateFilter) String() string {
33268	return awsutil.Prettify(s)
33269}
33270
33271// GoString returns the string representation
33272func (s InstancePatchStateFilter) GoString() string {
33273	return s.String()
33274}
33275
33276// Validate inspects the fields of the type to determine if they are valid.
33277func (s *InstancePatchStateFilter) Validate() error {
33278	invalidParams := request.ErrInvalidParams{Context: "InstancePatchStateFilter"}
33279	if s.Key == nil {
33280		invalidParams.Add(request.NewErrParamRequired("Key"))
33281	}
33282	if s.Key != nil && len(*s.Key) < 1 {
33283		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
33284	}
33285	if s.Type == nil {
33286		invalidParams.Add(request.NewErrParamRequired("Type"))
33287	}
33288	if s.Values == nil {
33289		invalidParams.Add(request.NewErrParamRequired("Values"))
33290	}
33291	if s.Values != nil && len(s.Values) < 1 {
33292		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
33293	}
33294
33295	if invalidParams.Len() > 0 {
33296		return invalidParams
33297	}
33298	return nil
33299}
33300
33301// SetKey sets the Key field's value.
33302func (s *InstancePatchStateFilter) SetKey(v string) *InstancePatchStateFilter {
33303	s.Key = &v
33304	return s
33305}
33306
33307// SetType sets the Type field's value.
33308func (s *InstancePatchStateFilter) SetType(v string) *InstancePatchStateFilter {
33309	s.Type = &v
33310	return s
33311}
33312
33313// SetValues sets the Values field's value.
33314func (s *InstancePatchStateFilter) SetValues(v []*string) *InstancePatchStateFilter {
33315	s.Values = v
33316	return s
33317}
33318
33319// An error occurred on the server side.
33320type InternalServerError struct {
33321	_            struct{}                  `type:"structure"`
33322	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33323
33324	Message_ *string `locationName:"Message" type:"string"`
33325}
33326
33327// String returns the string representation
33328func (s InternalServerError) String() string {
33329	return awsutil.Prettify(s)
33330}
33331
33332// GoString returns the string representation
33333func (s InternalServerError) GoString() string {
33334	return s.String()
33335}
33336
33337func newErrorInternalServerError(v protocol.ResponseMetadata) error {
33338	return &InternalServerError{
33339		RespMetadata: v,
33340	}
33341}
33342
33343// Code returns the exception type name.
33344func (s *InternalServerError) Code() string {
33345	return "InternalServerError"
33346}
33347
33348// Message returns the exception's message.
33349func (s *InternalServerError) Message() string {
33350	if s.Message_ != nil {
33351		return *s.Message_
33352	}
33353	return ""
33354}
33355
33356// OrigErr always returns nil, satisfies awserr.Error interface.
33357func (s *InternalServerError) OrigErr() error {
33358	return nil
33359}
33360
33361func (s *InternalServerError) Error() string {
33362	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33363}
33364
33365// Status code returns the HTTP status code for the request's response error.
33366func (s *InternalServerError) StatusCode() int {
33367	return s.RespMetadata.StatusCode
33368}
33369
33370// RequestID returns the service's response RequestID for request.
33371func (s *InternalServerError) RequestID() string {
33372	return s.RespMetadata.RequestID
33373}
33374
33375// The activation isn't valid. The activation might have been deleted, or the
33376// ActivationId and the ActivationCode don't match.
33377type InvalidActivation struct {
33378	_            struct{}                  `type:"structure"`
33379	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33380
33381	Message_ *string `locationName:"Message" type:"string"`
33382}
33383
33384// String returns the string representation
33385func (s InvalidActivation) String() string {
33386	return awsutil.Prettify(s)
33387}
33388
33389// GoString returns the string representation
33390func (s InvalidActivation) GoString() string {
33391	return s.String()
33392}
33393
33394func newErrorInvalidActivation(v protocol.ResponseMetadata) error {
33395	return &InvalidActivation{
33396		RespMetadata: v,
33397	}
33398}
33399
33400// Code returns the exception type name.
33401func (s *InvalidActivation) Code() string {
33402	return "InvalidActivation"
33403}
33404
33405// Message returns the exception's message.
33406func (s *InvalidActivation) Message() string {
33407	if s.Message_ != nil {
33408		return *s.Message_
33409	}
33410	return ""
33411}
33412
33413// OrigErr always returns nil, satisfies awserr.Error interface.
33414func (s *InvalidActivation) OrigErr() error {
33415	return nil
33416}
33417
33418func (s *InvalidActivation) Error() string {
33419	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33420}
33421
33422// Status code returns the HTTP status code for the request's response error.
33423func (s *InvalidActivation) StatusCode() int {
33424	return s.RespMetadata.StatusCode
33425}
33426
33427// RequestID returns the service's response RequestID for request.
33428func (s *InvalidActivation) RequestID() string {
33429	return s.RespMetadata.RequestID
33430}
33431
33432// The activation ID isn't valid. Verify the you entered the correct ActivationId
33433// or ActivationCode and try again.
33434type InvalidActivationId struct {
33435	_            struct{}                  `type:"structure"`
33436	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33437
33438	Message_ *string `locationName:"Message" type:"string"`
33439}
33440
33441// String returns the string representation
33442func (s InvalidActivationId) String() string {
33443	return awsutil.Prettify(s)
33444}
33445
33446// GoString returns the string representation
33447func (s InvalidActivationId) GoString() string {
33448	return s.String()
33449}
33450
33451func newErrorInvalidActivationId(v protocol.ResponseMetadata) error {
33452	return &InvalidActivationId{
33453		RespMetadata: v,
33454	}
33455}
33456
33457// Code returns the exception type name.
33458func (s *InvalidActivationId) Code() string {
33459	return "InvalidActivationId"
33460}
33461
33462// Message returns the exception's message.
33463func (s *InvalidActivationId) Message() string {
33464	if s.Message_ != nil {
33465		return *s.Message_
33466	}
33467	return ""
33468}
33469
33470// OrigErr always returns nil, satisfies awserr.Error interface.
33471func (s *InvalidActivationId) OrigErr() error {
33472	return nil
33473}
33474
33475func (s *InvalidActivationId) Error() string {
33476	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33477}
33478
33479// Status code returns the HTTP status code for the request's response error.
33480func (s *InvalidActivationId) StatusCode() int {
33481	return s.RespMetadata.StatusCode
33482}
33483
33484// RequestID returns the service's response RequestID for request.
33485func (s *InvalidActivationId) RequestID() string {
33486	return s.RespMetadata.RequestID
33487}
33488
33489// The specified aggregator isn't valid for inventory groups. Verify that the
33490// aggregator uses a valid inventory type such as AWS:Application or AWS:InstanceInformation.
33491type InvalidAggregatorException struct {
33492	_            struct{}                  `type:"structure"`
33493	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33494
33495	Message_ *string `locationName:"Message" type:"string"`
33496}
33497
33498// String returns the string representation
33499func (s InvalidAggregatorException) String() string {
33500	return awsutil.Prettify(s)
33501}
33502
33503// GoString returns the string representation
33504func (s InvalidAggregatorException) GoString() string {
33505	return s.String()
33506}
33507
33508func newErrorInvalidAggregatorException(v protocol.ResponseMetadata) error {
33509	return &InvalidAggregatorException{
33510		RespMetadata: v,
33511	}
33512}
33513
33514// Code returns the exception type name.
33515func (s *InvalidAggregatorException) Code() string {
33516	return "InvalidAggregatorException"
33517}
33518
33519// Message returns the exception's message.
33520func (s *InvalidAggregatorException) Message() string {
33521	if s.Message_ != nil {
33522		return *s.Message_
33523	}
33524	return ""
33525}
33526
33527// OrigErr always returns nil, satisfies awserr.Error interface.
33528func (s *InvalidAggregatorException) OrigErr() error {
33529	return nil
33530}
33531
33532func (s *InvalidAggregatorException) Error() string {
33533	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33534}
33535
33536// Status code returns the HTTP status code for the request's response error.
33537func (s *InvalidAggregatorException) StatusCode() int {
33538	return s.RespMetadata.StatusCode
33539}
33540
33541// RequestID returns the service's response RequestID for request.
33542func (s *InvalidAggregatorException) RequestID() string {
33543	return s.RespMetadata.RequestID
33544}
33545
33546// The request doesn't meet the regular expression requirement.
33547type InvalidAllowedPatternException struct {
33548	_            struct{}                  `type:"structure"`
33549	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33550
33551	// The request doesn't meet the regular expression requirement.
33552	Message_ *string `locationName:"message" type:"string"`
33553}
33554
33555// String returns the string representation
33556func (s InvalidAllowedPatternException) String() string {
33557	return awsutil.Prettify(s)
33558}
33559
33560// GoString returns the string representation
33561func (s InvalidAllowedPatternException) GoString() string {
33562	return s.String()
33563}
33564
33565func newErrorInvalidAllowedPatternException(v protocol.ResponseMetadata) error {
33566	return &InvalidAllowedPatternException{
33567		RespMetadata: v,
33568	}
33569}
33570
33571// Code returns the exception type name.
33572func (s *InvalidAllowedPatternException) Code() string {
33573	return "InvalidAllowedPatternException"
33574}
33575
33576// Message returns the exception's message.
33577func (s *InvalidAllowedPatternException) Message() string {
33578	if s.Message_ != nil {
33579		return *s.Message_
33580	}
33581	return ""
33582}
33583
33584// OrigErr always returns nil, satisfies awserr.Error interface.
33585func (s *InvalidAllowedPatternException) OrigErr() error {
33586	return nil
33587}
33588
33589func (s *InvalidAllowedPatternException) Error() string {
33590	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33591}
33592
33593// Status code returns the HTTP status code for the request's response error.
33594func (s *InvalidAllowedPatternException) StatusCode() int {
33595	return s.RespMetadata.StatusCode
33596}
33597
33598// RequestID returns the service's response RequestID for request.
33599func (s *InvalidAllowedPatternException) RequestID() string {
33600	return s.RespMetadata.RequestID
33601}
33602
33603// The association isn't valid or doesn't exist.
33604type InvalidAssociation struct {
33605	_            struct{}                  `type:"structure"`
33606	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33607
33608	Message_ *string `locationName:"Message" type:"string"`
33609}
33610
33611// String returns the string representation
33612func (s InvalidAssociation) String() string {
33613	return awsutil.Prettify(s)
33614}
33615
33616// GoString returns the string representation
33617func (s InvalidAssociation) GoString() string {
33618	return s.String()
33619}
33620
33621func newErrorInvalidAssociation(v protocol.ResponseMetadata) error {
33622	return &InvalidAssociation{
33623		RespMetadata: v,
33624	}
33625}
33626
33627// Code returns the exception type name.
33628func (s *InvalidAssociation) Code() string {
33629	return "InvalidAssociation"
33630}
33631
33632// Message returns the exception's message.
33633func (s *InvalidAssociation) Message() string {
33634	if s.Message_ != nil {
33635		return *s.Message_
33636	}
33637	return ""
33638}
33639
33640// OrigErr always returns nil, satisfies awserr.Error interface.
33641func (s *InvalidAssociation) OrigErr() error {
33642	return nil
33643}
33644
33645func (s *InvalidAssociation) Error() string {
33646	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33647}
33648
33649// Status code returns the HTTP status code for the request's response error.
33650func (s *InvalidAssociation) StatusCode() int {
33651	return s.RespMetadata.StatusCode
33652}
33653
33654// RequestID returns the service's response RequestID for request.
33655func (s *InvalidAssociation) RequestID() string {
33656	return s.RespMetadata.RequestID
33657}
33658
33659// The version you specified isn't valid. Use ListAssociationVersions to view
33660// all versions of an association according to the association ID. Or, use the
33661// $LATEST parameter to view the latest version of the association.
33662type InvalidAssociationVersion struct {
33663	_            struct{}                  `type:"structure"`
33664	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33665
33666	Message_ *string `locationName:"Message" type:"string"`
33667}
33668
33669// String returns the string representation
33670func (s InvalidAssociationVersion) String() string {
33671	return awsutil.Prettify(s)
33672}
33673
33674// GoString returns the string representation
33675func (s InvalidAssociationVersion) GoString() string {
33676	return s.String()
33677}
33678
33679func newErrorInvalidAssociationVersion(v protocol.ResponseMetadata) error {
33680	return &InvalidAssociationVersion{
33681		RespMetadata: v,
33682	}
33683}
33684
33685// Code returns the exception type name.
33686func (s *InvalidAssociationVersion) Code() string {
33687	return "InvalidAssociationVersion"
33688}
33689
33690// Message returns the exception's message.
33691func (s *InvalidAssociationVersion) Message() string {
33692	if s.Message_ != nil {
33693		return *s.Message_
33694	}
33695	return ""
33696}
33697
33698// OrigErr always returns nil, satisfies awserr.Error interface.
33699func (s *InvalidAssociationVersion) OrigErr() error {
33700	return nil
33701}
33702
33703func (s *InvalidAssociationVersion) Error() string {
33704	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33705}
33706
33707// Status code returns the HTTP status code for the request's response error.
33708func (s *InvalidAssociationVersion) StatusCode() int {
33709	return s.RespMetadata.StatusCode
33710}
33711
33712// RequestID returns the service's response RequestID for request.
33713func (s *InvalidAssociationVersion) RequestID() string {
33714	return s.RespMetadata.RequestID
33715}
33716
33717// The supplied parameters for invoking the specified Automation runbook are
33718// incorrect. For example, they may not match the set of parameters permitted
33719// for the specified Automation document.
33720type InvalidAutomationExecutionParametersException struct {
33721	_            struct{}                  `type:"structure"`
33722	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33723
33724	Message_ *string `locationName:"Message" type:"string"`
33725}
33726
33727// String returns the string representation
33728func (s InvalidAutomationExecutionParametersException) String() string {
33729	return awsutil.Prettify(s)
33730}
33731
33732// GoString returns the string representation
33733func (s InvalidAutomationExecutionParametersException) GoString() string {
33734	return s.String()
33735}
33736
33737func newErrorInvalidAutomationExecutionParametersException(v protocol.ResponseMetadata) error {
33738	return &InvalidAutomationExecutionParametersException{
33739		RespMetadata: v,
33740	}
33741}
33742
33743// Code returns the exception type name.
33744func (s *InvalidAutomationExecutionParametersException) Code() string {
33745	return "InvalidAutomationExecutionParametersException"
33746}
33747
33748// Message returns the exception's message.
33749func (s *InvalidAutomationExecutionParametersException) Message() string {
33750	if s.Message_ != nil {
33751		return *s.Message_
33752	}
33753	return ""
33754}
33755
33756// OrigErr always returns nil, satisfies awserr.Error interface.
33757func (s *InvalidAutomationExecutionParametersException) OrigErr() error {
33758	return nil
33759}
33760
33761func (s *InvalidAutomationExecutionParametersException) Error() string {
33762	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33763}
33764
33765// Status code returns the HTTP status code for the request's response error.
33766func (s *InvalidAutomationExecutionParametersException) StatusCode() int {
33767	return s.RespMetadata.StatusCode
33768}
33769
33770// RequestID returns the service's response RequestID for request.
33771func (s *InvalidAutomationExecutionParametersException) RequestID() string {
33772	return s.RespMetadata.RequestID
33773}
33774
33775// The signal isn't valid for the current Automation execution.
33776type InvalidAutomationSignalException struct {
33777	_            struct{}                  `type:"structure"`
33778	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33779
33780	Message_ *string `locationName:"Message" type:"string"`
33781}
33782
33783// String returns the string representation
33784func (s InvalidAutomationSignalException) String() string {
33785	return awsutil.Prettify(s)
33786}
33787
33788// GoString returns the string representation
33789func (s InvalidAutomationSignalException) GoString() string {
33790	return s.String()
33791}
33792
33793func newErrorInvalidAutomationSignalException(v protocol.ResponseMetadata) error {
33794	return &InvalidAutomationSignalException{
33795		RespMetadata: v,
33796	}
33797}
33798
33799// Code returns the exception type name.
33800func (s *InvalidAutomationSignalException) Code() string {
33801	return "InvalidAutomationSignalException"
33802}
33803
33804// Message returns the exception's message.
33805func (s *InvalidAutomationSignalException) Message() string {
33806	if s.Message_ != nil {
33807		return *s.Message_
33808	}
33809	return ""
33810}
33811
33812// OrigErr always returns nil, satisfies awserr.Error interface.
33813func (s *InvalidAutomationSignalException) OrigErr() error {
33814	return nil
33815}
33816
33817func (s *InvalidAutomationSignalException) Error() string {
33818	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33819}
33820
33821// Status code returns the HTTP status code for the request's response error.
33822func (s *InvalidAutomationSignalException) StatusCode() int {
33823	return s.RespMetadata.StatusCode
33824}
33825
33826// RequestID returns the service's response RequestID for request.
33827func (s *InvalidAutomationSignalException) RequestID() string {
33828	return s.RespMetadata.RequestID
33829}
33830
33831// The specified update status operation isn't valid.
33832type InvalidAutomationStatusUpdateException struct {
33833	_            struct{}                  `type:"structure"`
33834	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33835
33836	Message_ *string `locationName:"Message" type:"string"`
33837}
33838
33839// String returns the string representation
33840func (s InvalidAutomationStatusUpdateException) String() string {
33841	return awsutil.Prettify(s)
33842}
33843
33844// GoString returns the string representation
33845func (s InvalidAutomationStatusUpdateException) GoString() string {
33846	return s.String()
33847}
33848
33849func newErrorInvalidAutomationStatusUpdateException(v protocol.ResponseMetadata) error {
33850	return &InvalidAutomationStatusUpdateException{
33851		RespMetadata: v,
33852	}
33853}
33854
33855// Code returns the exception type name.
33856func (s *InvalidAutomationStatusUpdateException) Code() string {
33857	return "InvalidAutomationStatusUpdateException"
33858}
33859
33860// Message returns the exception's message.
33861func (s *InvalidAutomationStatusUpdateException) Message() string {
33862	if s.Message_ != nil {
33863		return *s.Message_
33864	}
33865	return ""
33866}
33867
33868// OrigErr always returns nil, satisfies awserr.Error interface.
33869func (s *InvalidAutomationStatusUpdateException) OrigErr() error {
33870	return nil
33871}
33872
33873func (s *InvalidAutomationStatusUpdateException) Error() string {
33874	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33875}
33876
33877// Status code returns the HTTP status code for the request's response error.
33878func (s *InvalidAutomationStatusUpdateException) StatusCode() int {
33879	return s.RespMetadata.StatusCode
33880}
33881
33882// RequestID returns the service's response RequestID for request.
33883func (s *InvalidAutomationStatusUpdateException) RequestID() string {
33884	return s.RespMetadata.RequestID
33885}
33886
33887// The specified command ID isn't valid. Verify the ID and try again.
33888type InvalidCommandId struct {
33889	_            struct{}                  `type:"structure"`
33890	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33891
33892	Message_ *string `locationName:"message" type:"string"`
33893}
33894
33895// String returns the string representation
33896func (s InvalidCommandId) String() string {
33897	return awsutil.Prettify(s)
33898}
33899
33900// GoString returns the string representation
33901func (s InvalidCommandId) GoString() string {
33902	return s.String()
33903}
33904
33905func newErrorInvalidCommandId(v protocol.ResponseMetadata) error {
33906	return &InvalidCommandId{
33907		RespMetadata: v,
33908	}
33909}
33910
33911// Code returns the exception type name.
33912func (s *InvalidCommandId) Code() string {
33913	return "InvalidCommandId"
33914}
33915
33916// Message returns the exception's message.
33917func (s *InvalidCommandId) Message() string {
33918	if s.Message_ != nil {
33919		return *s.Message_
33920	}
33921	return ""
33922}
33923
33924// OrigErr always returns nil, satisfies awserr.Error interface.
33925func (s *InvalidCommandId) OrigErr() error {
33926	return nil
33927}
33928
33929func (s *InvalidCommandId) Error() string {
33930	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33931}
33932
33933// Status code returns the HTTP status code for the request's response error.
33934func (s *InvalidCommandId) StatusCode() int {
33935	return s.RespMetadata.StatusCode
33936}
33937
33938// RequestID returns the service's response RequestID for request.
33939func (s *InvalidCommandId) RequestID() string {
33940	return s.RespMetadata.RequestID
33941}
33942
33943// One or more of the parameters specified for the delete operation isn't valid.
33944// Verify all parameters and try again.
33945type InvalidDeleteInventoryParametersException struct {
33946	_            struct{}                  `type:"structure"`
33947	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
33948
33949	Message_ *string `locationName:"Message" type:"string"`
33950}
33951
33952// String returns the string representation
33953func (s InvalidDeleteInventoryParametersException) String() string {
33954	return awsutil.Prettify(s)
33955}
33956
33957// GoString returns the string representation
33958func (s InvalidDeleteInventoryParametersException) GoString() string {
33959	return s.String()
33960}
33961
33962func newErrorInvalidDeleteInventoryParametersException(v protocol.ResponseMetadata) error {
33963	return &InvalidDeleteInventoryParametersException{
33964		RespMetadata: v,
33965	}
33966}
33967
33968// Code returns the exception type name.
33969func (s *InvalidDeleteInventoryParametersException) Code() string {
33970	return "InvalidDeleteInventoryParametersException"
33971}
33972
33973// Message returns the exception's message.
33974func (s *InvalidDeleteInventoryParametersException) Message() string {
33975	if s.Message_ != nil {
33976		return *s.Message_
33977	}
33978	return ""
33979}
33980
33981// OrigErr always returns nil, satisfies awserr.Error interface.
33982func (s *InvalidDeleteInventoryParametersException) OrigErr() error {
33983	return nil
33984}
33985
33986func (s *InvalidDeleteInventoryParametersException) Error() string {
33987	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
33988}
33989
33990// Status code returns the HTTP status code for the request's response error.
33991func (s *InvalidDeleteInventoryParametersException) StatusCode() int {
33992	return s.RespMetadata.StatusCode
33993}
33994
33995// RequestID returns the service's response RequestID for request.
33996func (s *InvalidDeleteInventoryParametersException) RequestID() string {
33997	return s.RespMetadata.RequestID
33998}
33999
34000// The ID specified for the delete operation doesn't exist or isn't valid. Verify
34001// the ID and try again.
34002type InvalidDeletionIdException struct {
34003	_            struct{}                  `type:"structure"`
34004	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34005
34006	Message_ *string `locationName:"Message" type:"string"`
34007}
34008
34009// String returns the string representation
34010func (s InvalidDeletionIdException) String() string {
34011	return awsutil.Prettify(s)
34012}
34013
34014// GoString returns the string representation
34015func (s InvalidDeletionIdException) GoString() string {
34016	return s.String()
34017}
34018
34019func newErrorInvalidDeletionIdException(v protocol.ResponseMetadata) error {
34020	return &InvalidDeletionIdException{
34021		RespMetadata: v,
34022	}
34023}
34024
34025// Code returns the exception type name.
34026func (s *InvalidDeletionIdException) Code() string {
34027	return "InvalidDeletionIdException"
34028}
34029
34030// Message returns the exception's message.
34031func (s *InvalidDeletionIdException) Message() string {
34032	if s.Message_ != nil {
34033		return *s.Message_
34034	}
34035	return ""
34036}
34037
34038// OrigErr always returns nil, satisfies awserr.Error interface.
34039func (s *InvalidDeletionIdException) OrigErr() error {
34040	return nil
34041}
34042
34043func (s *InvalidDeletionIdException) Error() string {
34044	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34045}
34046
34047// Status code returns the HTTP status code for the request's response error.
34048func (s *InvalidDeletionIdException) StatusCode() int {
34049	return s.RespMetadata.StatusCode
34050}
34051
34052// RequestID returns the service's response RequestID for request.
34053func (s *InvalidDeletionIdException) RequestID() string {
34054	return s.RespMetadata.RequestID
34055}
34056
34057// The specified SSM document doesn't exist.
34058type InvalidDocument struct {
34059	_            struct{}                  `type:"structure"`
34060	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34061
34062	// The SSM document doesn't exist or the document isn't available to the user.
34063	// This exception can be issued by various API operations.
34064	Message_ *string `locationName:"Message" type:"string"`
34065}
34066
34067// String returns the string representation
34068func (s InvalidDocument) String() string {
34069	return awsutil.Prettify(s)
34070}
34071
34072// GoString returns the string representation
34073func (s InvalidDocument) GoString() string {
34074	return s.String()
34075}
34076
34077func newErrorInvalidDocument(v protocol.ResponseMetadata) error {
34078	return &InvalidDocument{
34079		RespMetadata: v,
34080	}
34081}
34082
34083// Code returns the exception type name.
34084func (s *InvalidDocument) Code() string {
34085	return "InvalidDocument"
34086}
34087
34088// Message returns the exception's message.
34089func (s *InvalidDocument) Message() string {
34090	if s.Message_ != nil {
34091		return *s.Message_
34092	}
34093	return ""
34094}
34095
34096// OrigErr always returns nil, satisfies awserr.Error interface.
34097func (s *InvalidDocument) OrigErr() error {
34098	return nil
34099}
34100
34101func (s *InvalidDocument) Error() string {
34102	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34103}
34104
34105// Status code returns the HTTP status code for the request's response error.
34106func (s *InvalidDocument) StatusCode() int {
34107	return s.RespMetadata.StatusCode
34108}
34109
34110// RequestID returns the service's response RequestID for request.
34111func (s *InvalidDocument) RequestID() string {
34112	return s.RespMetadata.RequestID
34113}
34114
34115// The content for the document isn't valid.
34116type InvalidDocumentContent struct {
34117	_            struct{}                  `type:"structure"`
34118	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34119
34120	// A description of the validation error.
34121	Message_ *string `locationName:"Message" type:"string"`
34122}
34123
34124// String returns the string representation
34125func (s InvalidDocumentContent) String() string {
34126	return awsutil.Prettify(s)
34127}
34128
34129// GoString returns the string representation
34130func (s InvalidDocumentContent) GoString() string {
34131	return s.String()
34132}
34133
34134func newErrorInvalidDocumentContent(v protocol.ResponseMetadata) error {
34135	return &InvalidDocumentContent{
34136		RespMetadata: v,
34137	}
34138}
34139
34140// Code returns the exception type name.
34141func (s *InvalidDocumentContent) Code() string {
34142	return "InvalidDocumentContent"
34143}
34144
34145// Message returns the exception's message.
34146func (s *InvalidDocumentContent) Message() string {
34147	if s.Message_ != nil {
34148		return *s.Message_
34149	}
34150	return ""
34151}
34152
34153// OrigErr always returns nil, satisfies awserr.Error interface.
34154func (s *InvalidDocumentContent) OrigErr() error {
34155	return nil
34156}
34157
34158func (s *InvalidDocumentContent) Error() string {
34159	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34160}
34161
34162// Status code returns the HTTP status code for the request's response error.
34163func (s *InvalidDocumentContent) StatusCode() int {
34164	return s.RespMetadata.StatusCode
34165}
34166
34167// RequestID returns the service's response RequestID for request.
34168func (s *InvalidDocumentContent) RequestID() string {
34169	return s.RespMetadata.RequestID
34170}
34171
34172// You attempted to delete a document while it is still shared. You must stop
34173// sharing the document before you can delete it.
34174type InvalidDocumentOperation struct {
34175	_            struct{}                  `type:"structure"`
34176	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34177
34178	Message_ *string `locationName:"Message" type:"string"`
34179}
34180
34181// String returns the string representation
34182func (s InvalidDocumentOperation) String() string {
34183	return awsutil.Prettify(s)
34184}
34185
34186// GoString returns the string representation
34187func (s InvalidDocumentOperation) GoString() string {
34188	return s.String()
34189}
34190
34191func newErrorInvalidDocumentOperation(v protocol.ResponseMetadata) error {
34192	return &InvalidDocumentOperation{
34193		RespMetadata: v,
34194	}
34195}
34196
34197// Code returns the exception type name.
34198func (s *InvalidDocumentOperation) Code() string {
34199	return "InvalidDocumentOperation"
34200}
34201
34202// Message returns the exception's message.
34203func (s *InvalidDocumentOperation) Message() string {
34204	if s.Message_ != nil {
34205		return *s.Message_
34206	}
34207	return ""
34208}
34209
34210// OrigErr always returns nil, satisfies awserr.Error interface.
34211func (s *InvalidDocumentOperation) OrigErr() error {
34212	return nil
34213}
34214
34215func (s *InvalidDocumentOperation) Error() string {
34216	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34217}
34218
34219// Status code returns the HTTP status code for the request's response error.
34220func (s *InvalidDocumentOperation) StatusCode() int {
34221	return s.RespMetadata.StatusCode
34222}
34223
34224// RequestID returns the service's response RequestID for request.
34225func (s *InvalidDocumentOperation) RequestID() string {
34226	return s.RespMetadata.RequestID
34227}
34228
34229// The version of the document schema isn't supported.
34230type InvalidDocumentSchemaVersion struct {
34231	_            struct{}                  `type:"structure"`
34232	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34233
34234	Message_ *string `locationName:"Message" type:"string"`
34235}
34236
34237// String returns the string representation
34238func (s InvalidDocumentSchemaVersion) String() string {
34239	return awsutil.Prettify(s)
34240}
34241
34242// GoString returns the string representation
34243func (s InvalidDocumentSchemaVersion) GoString() string {
34244	return s.String()
34245}
34246
34247func newErrorInvalidDocumentSchemaVersion(v protocol.ResponseMetadata) error {
34248	return &InvalidDocumentSchemaVersion{
34249		RespMetadata: v,
34250	}
34251}
34252
34253// Code returns the exception type name.
34254func (s *InvalidDocumentSchemaVersion) Code() string {
34255	return "InvalidDocumentSchemaVersion"
34256}
34257
34258// Message returns the exception's message.
34259func (s *InvalidDocumentSchemaVersion) Message() string {
34260	if s.Message_ != nil {
34261		return *s.Message_
34262	}
34263	return ""
34264}
34265
34266// OrigErr always returns nil, satisfies awserr.Error interface.
34267func (s *InvalidDocumentSchemaVersion) OrigErr() error {
34268	return nil
34269}
34270
34271func (s *InvalidDocumentSchemaVersion) Error() string {
34272	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34273}
34274
34275// Status code returns the HTTP status code for the request's response error.
34276func (s *InvalidDocumentSchemaVersion) StatusCode() int {
34277	return s.RespMetadata.StatusCode
34278}
34279
34280// RequestID returns the service's response RequestID for request.
34281func (s *InvalidDocumentSchemaVersion) RequestID() string {
34282	return s.RespMetadata.RequestID
34283}
34284
34285// The SSM document type isn't valid. Valid document types are described in
34286// the DocumentType property.
34287type InvalidDocumentType struct {
34288	_            struct{}                  `type:"structure"`
34289	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34290
34291	Message_ *string `locationName:"Message" type:"string"`
34292}
34293
34294// String returns the string representation
34295func (s InvalidDocumentType) String() string {
34296	return awsutil.Prettify(s)
34297}
34298
34299// GoString returns the string representation
34300func (s InvalidDocumentType) GoString() string {
34301	return s.String()
34302}
34303
34304func newErrorInvalidDocumentType(v protocol.ResponseMetadata) error {
34305	return &InvalidDocumentType{
34306		RespMetadata: v,
34307	}
34308}
34309
34310// Code returns the exception type name.
34311func (s *InvalidDocumentType) Code() string {
34312	return "InvalidDocumentType"
34313}
34314
34315// Message returns the exception's message.
34316func (s *InvalidDocumentType) Message() string {
34317	if s.Message_ != nil {
34318		return *s.Message_
34319	}
34320	return ""
34321}
34322
34323// OrigErr always returns nil, satisfies awserr.Error interface.
34324func (s *InvalidDocumentType) OrigErr() error {
34325	return nil
34326}
34327
34328func (s *InvalidDocumentType) Error() string {
34329	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34330}
34331
34332// Status code returns the HTTP status code for the request's response error.
34333func (s *InvalidDocumentType) StatusCode() int {
34334	return s.RespMetadata.StatusCode
34335}
34336
34337// RequestID returns the service's response RequestID for request.
34338func (s *InvalidDocumentType) RequestID() string {
34339	return s.RespMetadata.RequestID
34340}
34341
34342// The document version isn't valid or doesn't exist.
34343type InvalidDocumentVersion struct {
34344	_            struct{}                  `type:"structure"`
34345	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34346
34347	Message_ *string `locationName:"Message" type:"string"`
34348}
34349
34350// String returns the string representation
34351func (s InvalidDocumentVersion) String() string {
34352	return awsutil.Prettify(s)
34353}
34354
34355// GoString returns the string representation
34356func (s InvalidDocumentVersion) GoString() string {
34357	return s.String()
34358}
34359
34360func newErrorInvalidDocumentVersion(v protocol.ResponseMetadata) error {
34361	return &InvalidDocumentVersion{
34362		RespMetadata: v,
34363	}
34364}
34365
34366// Code returns the exception type name.
34367func (s *InvalidDocumentVersion) Code() string {
34368	return "InvalidDocumentVersion"
34369}
34370
34371// Message returns the exception's message.
34372func (s *InvalidDocumentVersion) Message() string {
34373	if s.Message_ != nil {
34374		return *s.Message_
34375	}
34376	return ""
34377}
34378
34379// OrigErr always returns nil, satisfies awserr.Error interface.
34380func (s *InvalidDocumentVersion) OrigErr() error {
34381	return nil
34382}
34383
34384func (s *InvalidDocumentVersion) Error() string {
34385	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34386}
34387
34388// Status code returns the HTTP status code for the request's response error.
34389func (s *InvalidDocumentVersion) StatusCode() int {
34390	return s.RespMetadata.StatusCode
34391}
34392
34393// RequestID returns the service's response RequestID for request.
34394func (s *InvalidDocumentVersion) RequestID() string {
34395	return s.RespMetadata.RequestID
34396}
34397
34398// The filter name isn't valid. Verify the you entered the correct name and
34399// try again.
34400type InvalidFilter struct {
34401	_            struct{}                  `type:"structure"`
34402	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34403
34404	Message_ *string `locationName:"Message" type:"string"`
34405}
34406
34407// String returns the string representation
34408func (s InvalidFilter) String() string {
34409	return awsutil.Prettify(s)
34410}
34411
34412// GoString returns the string representation
34413func (s InvalidFilter) GoString() string {
34414	return s.String()
34415}
34416
34417func newErrorInvalidFilter(v protocol.ResponseMetadata) error {
34418	return &InvalidFilter{
34419		RespMetadata: v,
34420	}
34421}
34422
34423// Code returns the exception type name.
34424func (s *InvalidFilter) Code() string {
34425	return "InvalidFilter"
34426}
34427
34428// Message returns the exception's message.
34429func (s *InvalidFilter) Message() string {
34430	if s.Message_ != nil {
34431		return *s.Message_
34432	}
34433	return ""
34434}
34435
34436// OrigErr always returns nil, satisfies awserr.Error interface.
34437func (s *InvalidFilter) OrigErr() error {
34438	return nil
34439}
34440
34441func (s *InvalidFilter) Error() string {
34442	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34443}
34444
34445// Status code returns the HTTP status code for the request's response error.
34446func (s *InvalidFilter) StatusCode() int {
34447	return s.RespMetadata.StatusCode
34448}
34449
34450// RequestID returns the service's response RequestID for request.
34451func (s *InvalidFilter) RequestID() string {
34452	return s.RespMetadata.RequestID
34453}
34454
34455// The specified key isn't valid.
34456type InvalidFilterKey struct {
34457	_            struct{}                  `type:"structure"`
34458	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34459
34460	Message_ *string `locationName:"message" type:"string"`
34461}
34462
34463// String returns the string representation
34464func (s InvalidFilterKey) String() string {
34465	return awsutil.Prettify(s)
34466}
34467
34468// GoString returns the string representation
34469func (s InvalidFilterKey) GoString() string {
34470	return s.String()
34471}
34472
34473func newErrorInvalidFilterKey(v protocol.ResponseMetadata) error {
34474	return &InvalidFilterKey{
34475		RespMetadata: v,
34476	}
34477}
34478
34479// Code returns the exception type name.
34480func (s *InvalidFilterKey) Code() string {
34481	return "InvalidFilterKey"
34482}
34483
34484// Message returns the exception's message.
34485func (s *InvalidFilterKey) Message() string {
34486	if s.Message_ != nil {
34487		return *s.Message_
34488	}
34489	return ""
34490}
34491
34492// OrigErr always returns nil, satisfies awserr.Error interface.
34493func (s *InvalidFilterKey) OrigErr() error {
34494	return nil
34495}
34496
34497func (s *InvalidFilterKey) Error() string {
34498	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34499}
34500
34501// Status code returns the HTTP status code for the request's response error.
34502func (s *InvalidFilterKey) StatusCode() int {
34503	return s.RespMetadata.StatusCode
34504}
34505
34506// RequestID returns the service's response RequestID for request.
34507func (s *InvalidFilterKey) RequestID() string {
34508	return s.RespMetadata.RequestID
34509}
34510
34511// The specified filter option isn't valid. Valid options are Equals and BeginsWith.
34512// For Path filter, valid options are Recursive and OneLevel.
34513type InvalidFilterOption struct {
34514	_            struct{}                  `type:"structure"`
34515	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34516
34517	// The specified filter option isn't valid. Valid options are Equals and BeginsWith.
34518	// For Path filter, valid options are Recursive and OneLevel.
34519	Message_ *string `locationName:"message" type:"string"`
34520}
34521
34522// String returns the string representation
34523func (s InvalidFilterOption) String() string {
34524	return awsutil.Prettify(s)
34525}
34526
34527// GoString returns the string representation
34528func (s InvalidFilterOption) GoString() string {
34529	return s.String()
34530}
34531
34532func newErrorInvalidFilterOption(v protocol.ResponseMetadata) error {
34533	return &InvalidFilterOption{
34534		RespMetadata: v,
34535	}
34536}
34537
34538// Code returns the exception type name.
34539func (s *InvalidFilterOption) Code() string {
34540	return "InvalidFilterOption"
34541}
34542
34543// Message returns the exception's message.
34544func (s *InvalidFilterOption) Message() string {
34545	if s.Message_ != nil {
34546		return *s.Message_
34547	}
34548	return ""
34549}
34550
34551// OrigErr always returns nil, satisfies awserr.Error interface.
34552func (s *InvalidFilterOption) OrigErr() error {
34553	return nil
34554}
34555
34556func (s *InvalidFilterOption) Error() string {
34557	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34558}
34559
34560// Status code returns the HTTP status code for the request's response error.
34561func (s *InvalidFilterOption) StatusCode() int {
34562	return s.RespMetadata.StatusCode
34563}
34564
34565// RequestID returns the service's response RequestID for request.
34566func (s *InvalidFilterOption) RequestID() string {
34567	return s.RespMetadata.RequestID
34568}
34569
34570// The filter value isn't valid. Verify the value and try again.
34571type InvalidFilterValue struct {
34572	_            struct{}                  `type:"structure"`
34573	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34574
34575	Message_ *string `locationName:"Message" type:"string"`
34576}
34577
34578// String returns the string representation
34579func (s InvalidFilterValue) String() string {
34580	return awsutil.Prettify(s)
34581}
34582
34583// GoString returns the string representation
34584func (s InvalidFilterValue) GoString() string {
34585	return s.String()
34586}
34587
34588func newErrorInvalidFilterValue(v protocol.ResponseMetadata) error {
34589	return &InvalidFilterValue{
34590		RespMetadata: v,
34591	}
34592}
34593
34594// Code returns the exception type name.
34595func (s *InvalidFilterValue) Code() string {
34596	return "InvalidFilterValue"
34597}
34598
34599// Message returns the exception's message.
34600func (s *InvalidFilterValue) Message() string {
34601	if s.Message_ != nil {
34602		return *s.Message_
34603	}
34604	return ""
34605}
34606
34607// OrigErr always returns nil, satisfies awserr.Error interface.
34608func (s *InvalidFilterValue) OrigErr() error {
34609	return nil
34610}
34611
34612func (s *InvalidFilterValue) Error() string {
34613	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34614}
34615
34616// Status code returns the HTTP status code for the request's response error.
34617func (s *InvalidFilterValue) StatusCode() int {
34618	return s.RespMetadata.StatusCode
34619}
34620
34621// RequestID returns the service's response RequestID for request.
34622func (s *InvalidFilterValue) RequestID() string {
34623	return s.RespMetadata.RequestID
34624}
34625
34626// The following problems can cause this exception:
34627//
34628//    * You don't have permission to access the instance.
34629//
34630//    * Amazon Web Services Systems Manager Agent(SSM Agent) isn't running.
34631//    Verify that SSM Agent is running.
34632//
34633//    * SSM Agent isn't registered with the SSM endpoint. Try reinstalling SSM
34634//    Agent.
34635//
34636//    * The instance isn't in valid state. Valid states are: Running, Pending,
34637//    Stopped, and Stopping. Invalid states are: Shutting-down and Terminated.
34638type InvalidInstanceId struct {
34639	_            struct{}                  `type:"structure"`
34640	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34641
34642	Message_ *string `locationName:"Message" type:"string"`
34643}
34644
34645// String returns the string representation
34646func (s InvalidInstanceId) String() string {
34647	return awsutil.Prettify(s)
34648}
34649
34650// GoString returns the string representation
34651func (s InvalidInstanceId) GoString() string {
34652	return s.String()
34653}
34654
34655func newErrorInvalidInstanceId(v protocol.ResponseMetadata) error {
34656	return &InvalidInstanceId{
34657		RespMetadata: v,
34658	}
34659}
34660
34661// Code returns the exception type name.
34662func (s *InvalidInstanceId) Code() string {
34663	return "InvalidInstanceId"
34664}
34665
34666// Message returns the exception's message.
34667func (s *InvalidInstanceId) Message() string {
34668	if s.Message_ != nil {
34669		return *s.Message_
34670	}
34671	return ""
34672}
34673
34674// OrigErr always returns nil, satisfies awserr.Error interface.
34675func (s *InvalidInstanceId) OrigErr() error {
34676	return nil
34677}
34678
34679func (s *InvalidInstanceId) Error() string {
34680	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34681}
34682
34683// Status code returns the HTTP status code for the request's response error.
34684func (s *InvalidInstanceId) StatusCode() int {
34685	return s.RespMetadata.StatusCode
34686}
34687
34688// RequestID returns the service's response RequestID for request.
34689func (s *InvalidInstanceId) RequestID() string {
34690	return s.RespMetadata.RequestID
34691}
34692
34693// The specified filter value isn't valid.
34694type InvalidInstanceInformationFilterValue struct {
34695	_            struct{}                  `type:"structure"`
34696	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34697
34698	Message_ *string `locationName:"message" type:"string"`
34699}
34700
34701// String returns the string representation
34702func (s InvalidInstanceInformationFilterValue) String() string {
34703	return awsutil.Prettify(s)
34704}
34705
34706// GoString returns the string representation
34707func (s InvalidInstanceInformationFilterValue) GoString() string {
34708	return s.String()
34709}
34710
34711func newErrorInvalidInstanceInformationFilterValue(v protocol.ResponseMetadata) error {
34712	return &InvalidInstanceInformationFilterValue{
34713		RespMetadata: v,
34714	}
34715}
34716
34717// Code returns the exception type name.
34718func (s *InvalidInstanceInformationFilterValue) Code() string {
34719	return "InvalidInstanceInformationFilterValue"
34720}
34721
34722// Message returns the exception's message.
34723func (s *InvalidInstanceInformationFilterValue) Message() string {
34724	if s.Message_ != nil {
34725		return *s.Message_
34726	}
34727	return ""
34728}
34729
34730// OrigErr always returns nil, satisfies awserr.Error interface.
34731func (s *InvalidInstanceInformationFilterValue) OrigErr() error {
34732	return nil
34733}
34734
34735func (s *InvalidInstanceInformationFilterValue) Error() string {
34736	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34737}
34738
34739// Status code returns the HTTP status code for the request's response error.
34740func (s *InvalidInstanceInformationFilterValue) StatusCode() int {
34741	return s.RespMetadata.StatusCode
34742}
34743
34744// RequestID returns the service's response RequestID for request.
34745func (s *InvalidInstanceInformationFilterValue) RequestID() string {
34746	return s.RespMetadata.RequestID
34747}
34748
34749// The specified inventory group isn't valid.
34750type InvalidInventoryGroupException struct {
34751	_            struct{}                  `type:"structure"`
34752	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34753
34754	Message_ *string `locationName:"Message" type:"string"`
34755}
34756
34757// String returns the string representation
34758func (s InvalidInventoryGroupException) String() string {
34759	return awsutil.Prettify(s)
34760}
34761
34762// GoString returns the string representation
34763func (s InvalidInventoryGroupException) GoString() string {
34764	return s.String()
34765}
34766
34767func newErrorInvalidInventoryGroupException(v protocol.ResponseMetadata) error {
34768	return &InvalidInventoryGroupException{
34769		RespMetadata: v,
34770	}
34771}
34772
34773// Code returns the exception type name.
34774func (s *InvalidInventoryGroupException) Code() string {
34775	return "InvalidInventoryGroupException"
34776}
34777
34778// Message returns the exception's message.
34779func (s *InvalidInventoryGroupException) Message() string {
34780	if s.Message_ != nil {
34781		return *s.Message_
34782	}
34783	return ""
34784}
34785
34786// OrigErr always returns nil, satisfies awserr.Error interface.
34787func (s *InvalidInventoryGroupException) OrigErr() error {
34788	return nil
34789}
34790
34791func (s *InvalidInventoryGroupException) Error() string {
34792	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34793}
34794
34795// Status code returns the HTTP status code for the request's response error.
34796func (s *InvalidInventoryGroupException) StatusCode() int {
34797	return s.RespMetadata.StatusCode
34798}
34799
34800// RequestID returns the service's response RequestID for request.
34801func (s *InvalidInventoryGroupException) RequestID() string {
34802	return s.RespMetadata.RequestID
34803}
34804
34805// You specified invalid keys or values in the Context attribute for InventoryItem.
34806// Verify the keys and values, and try again.
34807type InvalidInventoryItemContextException struct {
34808	_            struct{}                  `type:"structure"`
34809	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34810
34811	Message_ *string `locationName:"Message" type:"string"`
34812}
34813
34814// String returns the string representation
34815func (s InvalidInventoryItemContextException) String() string {
34816	return awsutil.Prettify(s)
34817}
34818
34819// GoString returns the string representation
34820func (s InvalidInventoryItemContextException) GoString() string {
34821	return s.String()
34822}
34823
34824func newErrorInvalidInventoryItemContextException(v protocol.ResponseMetadata) error {
34825	return &InvalidInventoryItemContextException{
34826		RespMetadata: v,
34827	}
34828}
34829
34830// Code returns the exception type name.
34831func (s *InvalidInventoryItemContextException) Code() string {
34832	return "InvalidInventoryItemContextException"
34833}
34834
34835// Message returns the exception's message.
34836func (s *InvalidInventoryItemContextException) Message() string {
34837	if s.Message_ != nil {
34838		return *s.Message_
34839	}
34840	return ""
34841}
34842
34843// OrigErr always returns nil, satisfies awserr.Error interface.
34844func (s *InvalidInventoryItemContextException) OrigErr() error {
34845	return nil
34846}
34847
34848func (s *InvalidInventoryItemContextException) Error() string {
34849	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34850}
34851
34852// Status code returns the HTTP status code for the request's response error.
34853func (s *InvalidInventoryItemContextException) StatusCode() int {
34854	return s.RespMetadata.StatusCode
34855}
34856
34857// RequestID returns the service's response RequestID for request.
34858func (s *InvalidInventoryItemContextException) RequestID() string {
34859	return s.RespMetadata.RequestID
34860}
34861
34862// The request isn't valid.
34863type InvalidInventoryRequestException struct {
34864	_            struct{}                  `type:"structure"`
34865	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34866
34867	Message_ *string `locationName:"Message" type:"string"`
34868}
34869
34870// String returns the string representation
34871func (s InvalidInventoryRequestException) String() string {
34872	return awsutil.Prettify(s)
34873}
34874
34875// GoString returns the string representation
34876func (s InvalidInventoryRequestException) GoString() string {
34877	return s.String()
34878}
34879
34880func newErrorInvalidInventoryRequestException(v protocol.ResponseMetadata) error {
34881	return &InvalidInventoryRequestException{
34882		RespMetadata: v,
34883	}
34884}
34885
34886// Code returns the exception type name.
34887func (s *InvalidInventoryRequestException) Code() string {
34888	return "InvalidInventoryRequestException"
34889}
34890
34891// Message returns the exception's message.
34892func (s *InvalidInventoryRequestException) Message() string {
34893	if s.Message_ != nil {
34894		return *s.Message_
34895	}
34896	return ""
34897}
34898
34899// OrigErr always returns nil, satisfies awserr.Error interface.
34900func (s *InvalidInventoryRequestException) OrigErr() error {
34901	return nil
34902}
34903
34904func (s *InvalidInventoryRequestException) Error() string {
34905	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
34906}
34907
34908// Status code returns the HTTP status code for the request's response error.
34909func (s *InvalidInventoryRequestException) StatusCode() int {
34910	return s.RespMetadata.StatusCode
34911}
34912
34913// RequestID returns the service's response RequestID for request.
34914func (s *InvalidInventoryRequestException) RequestID() string {
34915	return s.RespMetadata.RequestID
34916}
34917
34918// One or more content items isn't valid.
34919type InvalidItemContentException struct {
34920	_            struct{}                  `type:"structure"`
34921	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34922
34923	Message_ *string `locationName:"Message" type:"string"`
34924
34925	TypeName *string `min:"1" type:"string"`
34926}
34927
34928// String returns the string representation
34929func (s InvalidItemContentException) String() string {
34930	return awsutil.Prettify(s)
34931}
34932
34933// GoString returns the string representation
34934func (s InvalidItemContentException) GoString() string {
34935	return s.String()
34936}
34937
34938func newErrorInvalidItemContentException(v protocol.ResponseMetadata) error {
34939	return &InvalidItemContentException{
34940		RespMetadata: v,
34941	}
34942}
34943
34944// Code returns the exception type name.
34945func (s *InvalidItemContentException) Code() string {
34946	return "InvalidItemContentException"
34947}
34948
34949// Message returns the exception's message.
34950func (s *InvalidItemContentException) Message() string {
34951	if s.Message_ != nil {
34952		return *s.Message_
34953	}
34954	return ""
34955}
34956
34957// OrigErr always returns nil, satisfies awserr.Error interface.
34958func (s *InvalidItemContentException) OrigErr() error {
34959	return nil
34960}
34961
34962func (s *InvalidItemContentException) Error() string {
34963	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
34964}
34965
34966// Status code returns the HTTP status code for the request's response error.
34967func (s *InvalidItemContentException) StatusCode() int {
34968	return s.RespMetadata.StatusCode
34969}
34970
34971// RequestID returns the service's response RequestID for request.
34972func (s *InvalidItemContentException) RequestID() string {
34973	return s.RespMetadata.RequestID
34974}
34975
34976// The query key ID isn't valid.
34977type InvalidKeyId struct {
34978	_            struct{}                  `type:"structure"`
34979	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
34980
34981	Message_ *string `locationName:"message" type:"string"`
34982}
34983
34984// String returns the string representation
34985func (s InvalidKeyId) String() string {
34986	return awsutil.Prettify(s)
34987}
34988
34989// GoString returns the string representation
34990func (s InvalidKeyId) GoString() string {
34991	return s.String()
34992}
34993
34994func newErrorInvalidKeyId(v protocol.ResponseMetadata) error {
34995	return &InvalidKeyId{
34996		RespMetadata: v,
34997	}
34998}
34999
35000// Code returns the exception type name.
35001func (s *InvalidKeyId) Code() string {
35002	return "InvalidKeyId"
35003}
35004
35005// Message returns the exception's message.
35006func (s *InvalidKeyId) Message() string {
35007	if s.Message_ != nil {
35008		return *s.Message_
35009	}
35010	return ""
35011}
35012
35013// OrigErr always returns nil, satisfies awserr.Error interface.
35014func (s *InvalidKeyId) OrigErr() error {
35015	return nil
35016}
35017
35018func (s *InvalidKeyId) Error() string {
35019	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35020}
35021
35022// Status code returns the HTTP status code for the request's response error.
35023func (s *InvalidKeyId) StatusCode() int {
35024	return s.RespMetadata.StatusCode
35025}
35026
35027// RequestID returns the service's response RequestID for request.
35028func (s *InvalidKeyId) RequestID() string {
35029	return s.RespMetadata.RequestID
35030}
35031
35032// The specified token isn't valid.
35033type InvalidNextToken struct {
35034	_            struct{}                  `type:"structure"`
35035	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35036
35037	Message_ *string `locationName:"Message" type:"string"`
35038}
35039
35040// String returns the string representation
35041func (s InvalidNextToken) String() string {
35042	return awsutil.Prettify(s)
35043}
35044
35045// GoString returns the string representation
35046func (s InvalidNextToken) GoString() string {
35047	return s.String()
35048}
35049
35050func newErrorInvalidNextToken(v protocol.ResponseMetadata) error {
35051	return &InvalidNextToken{
35052		RespMetadata: v,
35053	}
35054}
35055
35056// Code returns the exception type name.
35057func (s *InvalidNextToken) Code() string {
35058	return "InvalidNextToken"
35059}
35060
35061// Message returns the exception's message.
35062func (s *InvalidNextToken) Message() string {
35063	if s.Message_ != nil {
35064		return *s.Message_
35065	}
35066	return ""
35067}
35068
35069// OrigErr always returns nil, satisfies awserr.Error interface.
35070func (s *InvalidNextToken) OrigErr() error {
35071	return nil
35072}
35073
35074func (s *InvalidNextToken) Error() string {
35075	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35076}
35077
35078// Status code returns the HTTP status code for the request's response error.
35079func (s *InvalidNextToken) StatusCode() int {
35080	return s.RespMetadata.StatusCode
35081}
35082
35083// RequestID returns the service's response RequestID for request.
35084func (s *InvalidNextToken) RequestID() string {
35085	return s.RespMetadata.RequestID
35086}
35087
35088// One or more configuration items isn't valid. Verify that a valid Amazon Resource
35089// Name (ARN) was provided for an Amazon Simple Notification Service topic.
35090type InvalidNotificationConfig struct {
35091	_            struct{}                  `type:"structure"`
35092	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35093
35094	Message_ *string `locationName:"Message" type:"string"`
35095}
35096
35097// String returns the string representation
35098func (s InvalidNotificationConfig) String() string {
35099	return awsutil.Prettify(s)
35100}
35101
35102// GoString returns the string representation
35103func (s InvalidNotificationConfig) GoString() string {
35104	return s.String()
35105}
35106
35107func newErrorInvalidNotificationConfig(v protocol.ResponseMetadata) error {
35108	return &InvalidNotificationConfig{
35109		RespMetadata: v,
35110	}
35111}
35112
35113// Code returns the exception type name.
35114func (s *InvalidNotificationConfig) Code() string {
35115	return "InvalidNotificationConfig"
35116}
35117
35118// Message returns the exception's message.
35119func (s *InvalidNotificationConfig) Message() string {
35120	if s.Message_ != nil {
35121		return *s.Message_
35122	}
35123	return ""
35124}
35125
35126// OrigErr always returns nil, satisfies awserr.Error interface.
35127func (s *InvalidNotificationConfig) OrigErr() error {
35128	return nil
35129}
35130
35131func (s *InvalidNotificationConfig) Error() string {
35132	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35133}
35134
35135// Status code returns the HTTP status code for the request's response error.
35136func (s *InvalidNotificationConfig) StatusCode() int {
35137	return s.RespMetadata.StatusCode
35138}
35139
35140// RequestID returns the service's response RequestID for request.
35141func (s *InvalidNotificationConfig) RequestID() string {
35142	return s.RespMetadata.RequestID
35143}
35144
35145// The delete inventory option specified isn't valid. Verify the option and
35146// try again.
35147type InvalidOptionException struct {
35148	_            struct{}                  `type:"structure"`
35149	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35150
35151	Message_ *string `locationName:"Message" type:"string"`
35152}
35153
35154// String returns the string representation
35155func (s InvalidOptionException) String() string {
35156	return awsutil.Prettify(s)
35157}
35158
35159// GoString returns the string representation
35160func (s InvalidOptionException) GoString() string {
35161	return s.String()
35162}
35163
35164func newErrorInvalidOptionException(v protocol.ResponseMetadata) error {
35165	return &InvalidOptionException{
35166		RespMetadata: v,
35167	}
35168}
35169
35170// Code returns the exception type name.
35171func (s *InvalidOptionException) Code() string {
35172	return "InvalidOptionException"
35173}
35174
35175// Message returns the exception's message.
35176func (s *InvalidOptionException) Message() string {
35177	if s.Message_ != nil {
35178		return *s.Message_
35179	}
35180	return ""
35181}
35182
35183// OrigErr always returns nil, satisfies awserr.Error interface.
35184func (s *InvalidOptionException) OrigErr() error {
35185	return nil
35186}
35187
35188func (s *InvalidOptionException) Error() string {
35189	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35190}
35191
35192// Status code returns the HTTP status code for the request's response error.
35193func (s *InvalidOptionException) StatusCode() int {
35194	return s.RespMetadata.StatusCode
35195}
35196
35197// RequestID returns the service's response RequestID for request.
35198func (s *InvalidOptionException) RequestID() string {
35199	return s.RespMetadata.RequestID
35200}
35201
35202// The S3 bucket doesn't exist.
35203type InvalidOutputFolder struct {
35204	_            struct{}                  `type:"structure"`
35205	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35206
35207	Message_ *string `locationName:"message" type:"string"`
35208}
35209
35210// String returns the string representation
35211func (s InvalidOutputFolder) String() string {
35212	return awsutil.Prettify(s)
35213}
35214
35215// GoString returns the string representation
35216func (s InvalidOutputFolder) GoString() string {
35217	return s.String()
35218}
35219
35220func newErrorInvalidOutputFolder(v protocol.ResponseMetadata) error {
35221	return &InvalidOutputFolder{
35222		RespMetadata: v,
35223	}
35224}
35225
35226// Code returns the exception type name.
35227func (s *InvalidOutputFolder) Code() string {
35228	return "InvalidOutputFolder"
35229}
35230
35231// Message returns the exception's message.
35232func (s *InvalidOutputFolder) Message() string {
35233	if s.Message_ != nil {
35234		return *s.Message_
35235	}
35236	return ""
35237}
35238
35239// OrigErr always returns nil, satisfies awserr.Error interface.
35240func (s *InvalidOutputFolder) OrigErr() error {
35241	return nil
35242}
35243
35244func (s *InvalidOutputFolder) Error() string {
35245	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35246}
35247
35248// Status code returns the HTTP status code for the request's response error.
35249func (s *InvalidOutputFolder) StatusCode() int {
35250	return s.RespMetadata.StatusCode
35251}
35252
35253// RequestID returns the service's response RequestID for request.
35254func (s *InvalidOutputFolder) RequestID() string {
35255	return s.RespMetadata.RequestID
35256}
35257
35258// The output location isn't valid or doesn't exist.
35259type InvalidOutputLocation struct {
35260	_            struct{}                  `type:"structure"`
35261	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35262
35263	Message_ *string `locationName:"message" type:"string"`
35264}
35265
35266// String returns the string representation
35267func (s InvalidOutputLocation) String() string {
35268	return awsutil.Prettify(s)
35269}
35270
35271// GoString returns the string representation
35272func (s InvalidOutputLocation) GoString() string {
35273	return s.String()
35274}
35275
35276func newErrorInvalidOutputLocation(v protocol.ResponseMetadata) error {
35277	return &InvalidOutputLocation{
35278		RespMetadata: v,
35279	}
35280}
35281
35282// Code returns the exception type name.
35283func (s *InvalidOutputLocation) Code() string {
35284	return "InvalidOutputLocation"
35285}
35286
35287// Message returns the exception's message.
35288func (s *InvalidOutputLocation) Message() string {
35289	if s.Message_ != nil {
35290		return *s.Message_
35291	}
35292	return ""
35293}
35294
35295// OrigErr always returns nil, satisfies awserr.Error interface.
35296func (s *InvalidOutputLocation) OrigErr() error {
35297	return nil
35298}
35299
35300func (s *InvalidOutputLocation) Error() string {
35301	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35302}
35303
35304// Status code returns the HTTP status code for the request's response error.
35305func (s *InvalidOutputLocation) StatusCode() int {
35306	return s.RespMetadata.StatusCode
35307}
35308
35309// RequestID returns the service's response RequestID for request.
35310func (s *InvalidOutputLocation) RequestID() string {
35311	return s.RespMetadata.RequestID
35312}
35313
35314// You must specify values for all required parameters in the Amazon Web Services
35315// Systems Manager document (SSM document). You can only supply values to parameters
35316// defined in the SSM document.
35317type InvalidParameters struct {
35318	_            struct{}                  `type:"structure"`
35319	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35320
35321	Message_ *string `locationName:"Message" type:"string"`
35322}
35323
35324// String returns the string representation
35325func (s InvalidParameters) String() string {
35326	return awsutil.Prettify(s)
35327}
35328
35329// GoString returns the string representation
35330func (s InvalidParameters) GoString() string {
35331	return s.String()
35332}
35333
35334func newErrorInvalidParameters(v protocol.ResponseMetadata) error {
35335	return &InvalidParameters{
35336		RespMetadata: v,
35337	}
35338}
35339
35340// Code returns the exception type name.
35341func (s *InvalidParameters) Code() string {
35342	return "InvalidParameters"
35343}
35344
35345// Message returns the exception's message.
35346func (s *InvalidParameters) Message() string {
35347	if s.Message_ != nil {
35348		return *s.Message_
35349	}
35350	return ""
35351}
35352
35353// OrigErr always returns nil, satisfies awserr.Error interface.
35354func (s *InvalidParameters) OrigErr() error {
35355	return nil
35356}
35357
35358func (s *InvalidParameters) Error() string {
35359	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35360}
35361
35362// Status code returns the HTTP status code for the request's response error.
35363func (s *InvalidParameters) StatusCode() int {
35364	return s.RespMetadata.StatusCode
35365}
35366
35367// RequestID returns the service's response RequestID for request.
35368func (s *InvalidParameters) RequestID() string {
35369	return s.RespMetadata.RequestID
35370}
35371
35372// The permission type isn't supported. Share is the only supported permission
35373// type.
35374type InvalidPermissionType struct {
35375	_            struct{}                  `type:"structure"`
35376	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35377
35378	Message_ *string `locationName:"Message" type:"string"`
35379}
35380
35381// String returns the string representation
35382func (s InvalidPermissionType) String() string {
35383	return awsutil.Prettify(s)
35384}
35385
35386// GoString returns the string representation
35387func (s InvalidPermissionType) GoString() string {
35388	return s.String()
35389}
35390
35391func newErrorInvalidPermissionType(v protocol.ResponseMetadata) error {
35392	return &InvalidPermissionType{
35393		RespMetadata: v,
35394	}
35395}
35396
35397// Code returns the exception type name.
35398func (s *InvalidPermissionType) Code() string {
35399	return "InvalidPermissionType"
35400}
35401
35402// Message returns the exception's message.
35403func (s *InvalidPermissionType) Message() string {
35404	if s.Message_ != nil {
35405		return *s.Message_
35406	}
35407	return ""
35408}
35409
35410// OrigErr always returns nil, satisfies awserr.Error interface.
35411func (s *InvalidPermissionType) OrigErr() error {
35412	return nil
35413}
35414
35415func (s *InvalidPermissionType) Error() string {
35416	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35417}
35418
35419// Status code returns the HTTP status code for the request's response error.
35420func (s *InvalidPermissionType) StatusCode() int {
35421	return s.RespMetadata.StatusCode
35422}
35423
35424// RequestID returns the service's response RequestID for request.
35425func (s *InvalidPermissionType) RequestID() string {
35426	return s.RespMetadata.RequestID
35427}
35428
35429// The plugin name isn't valid.
35430type InvalidPluginName struct {
35431	_            struct{}                  `type:"structure"`
35432	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35433
35434	Message_ *string `locationName:"message" type:"string"`
35435}
35436
35437// String returns the string representation
35438func (s InvalidPluginName) String() string {
35439	return awsutil.Prettify(s)
35440}
35441
35442// GoString returns the string representation
35443func (s InvalidPluginName) GoString() string {
35444	return s.String()
35445}
35446
35447func newErrorInvalidPluginName(v protocol.ResponseMetadata) error {
35448	return &InvalidPluginName{
35449		RespMetadata: v,
35450	}
35451}
35452
35453// Code returns the exception type name.
35454func (s *InvalidPluginName) Code() string {
35455	return "InvalidPluginName"
35456}
35457
35458// Message returns the exception's message.
35459func (s *InvalidPluginName) Message() string {
35460	if s.Message_ != nil {
35461		return *s.Message_
35462	}
35463	return ""
35464}
35465
35466// OrigErr always returns nil, satisfies awserr.Error interface.
35467func (s *InvalidPluginName) OrigErr() error {
35468	return nil
35469}
35470
35471func (s *InvalidPluginName) Error() string {
35472	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35473}
35474
35475// Status code returns the HTTP status code for the request's response error.
35476func (s *InvalidPluginName) StatusCode() int {
35477	return s.RespMetadata.StatusCode
35478}
35479
35480// RequestID returns the service's response RequestID for request.
35481func (s *InvalidPluginName) RequestID() string {
35482	return s.RespMetadata.RequestID
35483}
35484
35485// A policy attribute or its value is invalid.
35486type InvalidPolicyAttributeException struct {
35487	_            struct{}                  `type:"structure"`
35488	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35489
35490	Message_ *string `locationName:"message" type:"string"`
35491}
35492
35493// String returns the string representation
35494func (s InvalidPolicyAttributeException) String() string {
35495	return awsutil.Prettify(s)
35496}
35497
35498// GoString returns the string representation
35499func (s InvalidPolicyAttributeException) GoString() string {
35500	return s.String()
35501}
35502
35503func newErrorInvalidPolicyAttributeException(v protocol.ResponseMetadata) error {
35504	return &InvalidPolicyAttributeException{
35505		RespMetadata: v,
35506	}
35507}
35508
35509// Code returns the exception type name.
35510func (s *InvalidPolicyAttributeException) Code() string {
35511	return "InvalidPolicyAttributeException"
35512}
35513
35514// Message returns the exception's message.
35515func (s *InvalidPolicyAttributeException) Message() string {
35516	if s.Message_ != nil {
35517		return *s.Message_
35518	}
35519	return ""
35520}
35521
35522// OrigErr always returns nil, satisfies awserr.Error interface.
35523func (s *InvalidPolicyAttributeException) OrigErr() error {
35524	return nil
35525}
35526
35527func (s *InvalidPolicyAttributeException) Error() string {
35528	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35529}
35530
35531// Status code returns the HTTP status code for the request's response error.
35532func (s *InvalidPolicyAttributeException) StatusCode() int {
35533	return s.RespMetadata.StatusCode
35534}
35535
35536// RequestID returns the service's response RequestID for request.
35537func (s *InvalidPolicyAttributeException) RequestID() string {
35538	return s.RespMetadata.RequestID
35539}
35540
35541// The policy type isn't supported. Parameter Store supports the following policy
35542// types: Expiration, ExpirationNotification, and NoChangeNotification.
35543type InvalidPolicyTypeException struct {
35544	_            struct{}                  `type:"structure"`
35545	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35546
35547	Message_ *string `locationName:"message" type:"string"`
35548}
35549
35550// String returns the string representation
35551func (s InvalidPolicyTypeException) String() string {
35552	return awsutil.Prettify(s)
35553}
35554
35555// GoString returns the string representation
35556func (s InvalidPolicyTypeException) GoString() string {
35557	return s.String()
35558}
35559
35560func newErrorInvalidPolicyTypeException(v protocol.ResponseMetadata) error {
35561	return &InvalidPolicyTypeException{
35562		RespMetadata: v,
35563	}
35564}
35565
35566// Code returns the exception type name.
35567func (s *InvalidPolicyTypeException) Code() string {
35568	return "InvalidPolicyTypeException"
35569}
35570
35571// Message returns the exception's message.
35572func (s *InvalidPolicyTypeException) Message() string {
35573	if s.Message_ != nil {
35574		return *s.Message_
35575	}
35576	return ""
35577}
35578
35579// OrigErr always returns nil, satisfies awserr.Error interface.
35580func (s *InvalidPolicyTypeException) OrigErr() error {
35581	return nil
35582}
35583
35584func (s *InvalidPolicyTypeException) Error() string {
35585	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35586}
35587
35588// Status code returns the HTTP status code for the request's response error.
35589func (s *InvalidPolicyTypeException) StatusCode() int {
35590	return s.RespMetadata.StatusCode
35591}
35592
35593// RequestID returns the service's response RequestID for request.
35594func (s *InvalidPolicyTypeException) RequestID() string {
35595	return s.RespMetadata.RequestID
35596}
35597
35598// The resource ID isn't valid. Verify that you entered the correct ID and try
35599// again.
35600type InvalidResourceId struct {
35601	_            struct{}                  `type:"structure"`
35602	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35603
35604	Message_ *string `locationName:"message" type:"string"`
35605}
35606
35607// String returns the string representation
35608func (s InvalidResourceId) String() string {
35609	return awsutil.Prettify(s)
35610}
35611
35612// GoString returns the string representation
35613func (s InvalidResourceId) GoString() string {
35614	return s.String()
35615}
35616
35617func newErrorInvalidResourceId(v protocol.ResponseMetadata) error {
35618	return &InvalidResourceId{
35619		RespMetadata: v,
35620	}
35621}
35622
35623// Code returns the exception type name.
35624func (s *InvalidResourceId) Code() string {
35625	return "InvalidResourceId"
35626}
35627
35628// Message returns the exception's message.
35629func (s *InvalidResourceId) Message() string {
35630	if s.Message_ != nil {
35631		return *s.Message_
35632	}
35633	return ""
35634}
35635
35636// OrigErr always returns nil, satisfies awserr.Error interface.
35637func (s *InvalidResourceId) OrigErr() error {
35638	return nil
35639}
35640
35641func (s *InvalidResourceId) Error() string {
35642	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35643}
35644
35645// Status code returns the HTTP status code for the request's response error.
35646func (s *InvalidResourceId) StatusCode() int {
35647	return s.RespMetadata.StatusCode
35648}
35649
35650// RequestID returns the service's response RequestID for request.
35651func (s *InvalidResourceId) RequestID() string {
35652	return s.RespMetadata.RequestID
35653}
35654
35655// The resource type isn't valid. For example, if you are attempting to tag
35656// an instance, the instance must be a registered, managed instance.
35657type InvalidResourceType struct {
35658	_            struct{}                  `type:"structure"`
35659	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35660
35661	Message_ *string `locationName:"message" type:"string"`
35662}
35663
35664// String returns the string representation
35665func (s InvalidResourceType) String() string {
35666	return awsutil.Prettify(s)
35667}
35668
35669// GoString returns the string representation
35670func (s InvalidResourceType) GoString() string {
35671	return s.String()
35672}
35673
35674func newErrorInvalidResourceType(v protocol.ResponseMetadata) error {
35675	return &InvalidResourceType{
35676		RespMetadata: v,
35677	}
35678}
35679
35680// Code returns the exception type name.
35681func (s *InvalidResourceType) Code() string {
35682	return "InvalidResourceType"
35683}
35684
35685// Message returns the exception's message.
35686func (s *InvalidResourceType) Message() string {
35687	if s.Message_ != nil {
35688		return *s.Message_
35689	}
35690	return ""
35691}
35692
35693// OrigErr always returns nil, satisfies awserr.Error interface.
35694func (s *InvalidResourceType) OrigErr() error {
35695	return nil
35696}
35697
35698func (s *InvalidResourceType) Error() string {
35699	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35700}
35701
35702// Status code returns the HTTP status code for the request's response error.
35703func (s *InvalidResourceType) StatusCode() int {
35704	return s.RespMetadata.StatusCode
35705}
35706
35707// RequestID returns the service's response RequestID for request.
35708func (s *InvalidResourceType) RequestID() string {
35709	return s.RespMetadata.RequestID
35710}
35711
35712// The specified inventory item result attribute isn't valid.
35713type InvalidResultAttributeException struct {
35714	_            struct{}                  `type:"structure"`
35715	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35716
35717	Message_ *string `locationName:"Message" type:"string"`
35718}
35719
35720// String returns the string representation
35721func (s InvalidResultAttributeException) String() string {
35722	return awsutil.Prettify(s)
35723}
35724
35725// GoString returns the string representation
35726func (s InvalidResultAttributeException) GoString() string {
35727	return s.String()
35728}
35729
35730func newErrorInvalidResultAttributeException(v protocol.ResponseMetadata) error {
35731	return &InvalidResultAttributeException{
35732		RespMetadata: v,
35733	}
35734}
35735
35736// Code returns the exception type name.
35737func (s *InvalidResultAttributeException) Code() string {
35738	return "InvalidResultAttributeException"
35739}
35740
35741// Message returns the exception's message.
35742func (s *InvalidResultAttributeException) Message() string {
35743	if s.Message_ != nil {
35744		return *s.Message_
35745	}
35746	return ""
35747}
35748
35749// OrigErr always returns nil, satisfies awserr.Error interface.
35750func (s *InvalidResultAttributeException) OrigErr() error {
35751	return nil
35752}
35753
35754func (s *InvalidResultAttributeException) Error() string {
35755	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35756}
35757
35758// Status code returns the HTTP status code for the request's response error.
35759func (s *InvalidResultAttributeException) StatusCode() int {
35760	return s.RespMetadata.StatusCode
35761}
35762
35763// RequestID returns the service's response RequestID for request.
35764func (s *InvalidResultAttributeException) RequestID() string {
35765	return s.RespMetadata.RequestID
35766}
35767
35768// The role name can't contain invalid characters. Also verify that you specified
35769// an IAM role for notifications that includes the required trust policy. For
35770// information about configuring the IAM role for Run Command notifications,
35771// see Configuring Amazon SNS Notifications for Run Command (https://docs.aws.amazon.com/systems-manager/latest/userguide/rc-sns-notifications.html)
35772// in the Amazon Web Services Systems Manager User Guide.
35773type InvalidRole struct {
35774	_            struct{}                  `type:"structure"`
35775	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35776
35777	Message_ *string `locationName:"Message" type:"string"`
35778}
35779
35780// String returns the string representation
35781func (s InvalidRole) String() string {
35782	return awsutil.Prettify(s)
35783}
35784
35785// GoString returns the string representation
35786func (s InvalidRole) GoString() string {
35787	return s.String()
35788}
35789
35790func newErrorInvalidRole(v protocol.ResponseMetadata) error {
35791	return &InvalidRole{
35792		RespMetadata: v,
35793	}
35794}
35795
35796// Code returns the exception type name.
35797func (s *InvalidRole) Code() string {
35798	return "InvalidRole"
35799}
35800
35801// Message returns the exception's message.
35802func (s *InvalidRole) Message() string {
35803	if s.Message_ != nil {
35804		return *s.Message_
35805	}
35806	return ""
35807}
35808
35809// OrigErr always returns nil, satisfies awserr.Error interface.
35810func (s *InvalidRole) OrigErr() error {
35811	return nil
35812}
35813
35814func (s *InvalidRole) Error() string {
35815	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35816}
35817
35818// Status code returns the HTTP status code for the request's response error.
35819func (s *InvalidRole) StatusCode() int {
35820	return s.RespMetadata.StatusCode
35821}
35822
35823// RequestID returns the service's response RequestID for request.
35824func (s *InvalidRole) RequestID() string {
35825	return s.RespMetadata.RequestID
35826}
35827
35828// The schedule is invalid. Verify your cron or rate expression and try again.
35829type InvalidSchedule struct {
35830	_            struct{}                  `type:"structure"`
35831	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35832
35833	Message_ *string `locationName:"Message" type:"string"`
35834}
35835
35836// String returns the string representation
35837func (s InvalidSchedule) String() string {
35838	return awsutil.Prettify(s)
35839}
35840
35841// GoString returns the string representation
35842func (s InvalidSchedule) GoString() string {
35843	return s.String()
35844}
35845
35846func newErrorInvalidSchedule(v protocol.ResponseMetadata) error {
35847	return &InvalidSchedule{
35848		RespMetadata: v,
35849	}
35850}
35851
35852// Code returns the exception type name.
35853func (s *InvalidSchedule) Code() string {
35854	return "InvalidSchedule"
35855}
35856
35857// Message returns the exception's message.
35858func (s *InvalidSchedule) Message() string {
35859	if s.Message_ != nil {
35860		return *s.Message_
35861	}
35862	return ""
35863}
35864
35865// OrigErr always returns nil, satisfies awserr.Error interface.
35866func (s *InvalidSchedule) OrigErr() error {
35867	return nil
35868}
35869
35870func (s *InvalidSchedule) Error() string {
35871	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35872}
35873
35874// Status code returns the HTTP status code for the request's response error.
35875func (s *InvalidSchedule) StatusCode() int {
35876	return s.RespMetadata.StatusCode
35877}
35878
35879// RequestID returns the service's response RequestID for request.
35880func (s *InvalidSchedule) RequestID() string {
35881	return s.RespMetadata.RequestID
35882}
35883
35884// The target isn't valid or doesn't exist. It might not be configured for Systems
35885// Manager or you might not have permission to perform the operation.
35886type InvalidTarget struct {
35887	_            struct{}                  `type:"structure"`
35888	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35889
35890	Message_ *string `locationName:"Message" type:"string"`
35891}
35892
35893// String returns the string representation
35894func (s InvalidTarget) String() string {
35895	return awsutil.Prettify(s)
35896}
35897
35898// GoString returns the string representation
35899func (s InvalidTarget) GoString() string {
35900	return s.String()
35901}
35902
35903func newErrorInvalidTarget(v protocol.ResponseMetadata) error {
35904	return &InvalidTarget{
35905		RespMetadata: v,
35906	}
35907}
35908
35909// Code returns the exception type name.
35910func (s *InvalidTarget) Code() string {
35911	return "InvalidTarget"
35912}
35913
35914// Message returns the exception's message.
35915func (s *InvalidTarget) Message() string {
35916	if s.Message_ != nil {
35917		return *s.Message_
35918	}
35919	return ""
35920}
35921
35922// OrigErr always returns nil, satisfies awserr.Error interface.
35923func (s *InvalidTarget) OrigErr() error {
35924	return nil
35925}
35926
35927func (s *InvalidTarget) Error() string {
35928	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35929}
35930
35931// Status code returns the HTTP status code for the request's response error.
35932func (s *InvalidTarget) StatusCode() int {
35933	return s.RespMetadata.StatusCode
35934}
35935
35936// RequestID returns the service's response RequestID for request.
35937func (s *InvalidTarget) RequestID() string {
35938	return s.RespMetadata.RequestID
35939}
35940
35941// The parameter type name isn't valid.
35942type InvalidTypeNameException struct {
35943	_            struct{}                  `type:"structure"`
35944	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
35945
35946	Message_ *string `locationName:"Message" type:"string"`
35947}
35948
35949// String returns the string representation
35950func (s InvalidTypeNameException) String() string {
35951	return awsutil.Prettify(s)
35952}
35953
35954// GoString returns the string representation
35955func (s InvalidTypeNameException) GoString() string {
35956	return s.String()
35957}
35958
35959func newErrorInvalidTypeNameException(v protocol.ResponseMetadata) error {
35960	return &InvalidTypeNameException{
35961		RespMetadata: v,
35962	}
35963}
35964
35965// Code returns the exception type name.
35966func (s *InvalidTypeNameException) Code() string {
35967	return "InvalidTypeNameException"
35968}
35969
35970// Message returns the exception's message.
35971func (s *InvalidTypeNameException) Message() string {
35972	if s.Message_ != nil {
35973		return *s.Message_
35974	}
35975	return ""
35976}
35977
35978// OrigErr always returns nil, satisfies awserr.Error interface.
35979func (s *InvalidTypeNameException) OrigErr() error {
35980	return nil
35981}
35982
35983func (s *InvalidTypeNameException) Error() string {
35984	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
35985}
35986
35987// Status code returns the HTTP status code for the request's response error.
35988func (s *InvalidTypeNameException) StatusCode() int {
35989	return s.RespMetadata.StatusCode
35990}
35991
35992// RequestID returns the service's response RequestID for request.
35993func (s *InvalidTypeNameException) RequestID() string {
35994	return s.RespMetadata.RequestID
35995}
35996
35997// The update isn't valid.
35998type InvalidUpdate struct {
35999	_            struct{}                  `type:"structure"`
36000	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
36001
36002	Message_ *string `locationName:"Message" type:"string"`
36003}
36004
36005// String returns the string representation
36006func (s InvalidUpdate) String() string {
36007	return awsutil.Prettify(s)
36008}
36009
36010// GoString returns the string representation
36011func (s InvalidUpdate) GoString() string {
36012	return s.String()
36013}
36014
36015func newErrorInvalidUpdate(v protocol.ResponseMetadata) error {
36016	return &InvalidUpdate{
36017		RespMetadata: v,
36018	}
36019}
36020
36021// Code returns the exception type name.
36022func (s *InvalidUpdate) Code() string {
36023	return "InvalidUpdate"
36024}
36025
36026// Message returns the exception's message.
36027func (s *InvalidUpdate) Message() string {
36028	if s.Message_ != nil {
36029		return *s.Message_
36030	}
36031	return ""
36032}
36033
36034// OrigErr always returns nil, satisfies awserr.Error interface.
36035func (s *InvalidUpdate) OrigErr() error {
36036	return nil
36037}
36038
36039func (s *InvalidUpdate) Error() string {
36040	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
36041}
36042
36043// Status code returns the HTTP status code for the request's response error.
36044func (s *InvalidUpdate) StatusCode() int {
36045	return s.RespMetadata.StatusCode
36046}
36047
36048// RequestID returns the service's response RequestID for request.
36049func (s *InvalidUpdate) RequestID() string {
36050	return s.RespMetadata.RequestID
36051}
36052
36053// Specifies the inventory type and attribute for the aggregation execution.
36054type InventoryAggregator struct {
36055	_ struct{} `type:"structure"`
36056
36057	// Nested aggregators to further refine aggregation for an inventory type.
36058	Aggregators []*InventoryAggregator `min:"1" type:"list"`
36059
36060	// The inventory type and attribute name for aggregation.
36061	Expression *string `min:"1" type:"string"`
36062
36063	// A user-defined set of one or more filters on which to aggregate inventory
36064	// data. Groups return a count of resources that match and don't match the specified
36065	// criteria.
36066	Groups []*InventoryGroup `min:"1" type:"list"`
36067}
36068
36069// String returns the string representation
36070func (s InventoryAggregator) String() string {
36071	return awsutil.Prettify(s)
36072}
36073
36074// GoString returns the string representation
36075func (s InventoryAggregator) GoString() string {
36076	return s.String()
36077}
36078
36079// Validate inspects the fields of the type to determine if they are valid.
36080func (s *InventoryAggregator) Validate() error {
36081	invalidParams := request.ErrInvalidParams{Context: "InventoryAggregator"}
36082	if s.Aggregators != nil && len(s.Aggregators) < 1 {
36083		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
36084	}
36085	if s.Expression != nil && len(*s.Expression) < 1 {
36086		invalidParams.Add(request.NewErrParamMinLen("Expression", 1))
36087	}
36088	if s.Groups != nil && len(s.Groups) < 1 {
36089		invalidParams.Add(request.NewErrParamMinLen("Groups", 1))
36090	}
36091	if s.Aggregators != nil {
36092		for i, v := range s.Aggregators {
36093			if v == nil {
36094				continue
36095			}
36096			if err := v.Validate(); err != nil {
36097				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
36098			}
36099		}
36100	}
36101	if s.Groups != nil {
36102		for i, v := range s.Groups {
36103			if v == nil {
36104				continue
36105			}
36106			if err := v.Validate(); err != nil {
36107				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Groups", i), err.(request.ErrInvalidParams))
36108			}
36109		}
36110	}
36111
36112	if invalidParams.Len() > 0 {
36113		return invalidParams
36114	}
36115	return nil
36116}
36117
36118// SetAggregators sets the Aggregators field's value.
36119func (s *InventoryAggregator) SetAggregators(v []*InventoryAggregator) *InventoryAggregator {
36120	s.Aggregators = v
36121	return s
36122}
36123
36124// SetExpression sets the Expression field's value.
36125func (s *InventoryAggregator) SetExpression(v string) *InventoryAggregator {
36126	s.Expression = &v
36127	return s
36128}
36129
36130// SetGroups sets the Groups field's value.
36131func (s *InventoryAggregator) SetGroups(v []*InventoryGroup) *InventoryAggregator {
36132	s.Groups = v
36133	return s
36134}
36135
36136// Status information returned by the DeleteInventory operation.
36137type InventoryDeletionStatusItem struct {
36138	_ struct{} `type:"structure"`
36139
36140	// The deletion ID returned by the DeleteInventory operation.
36141	DeletionId *string `type:"string"`
36142
36143	// The UTC timestamp when the delete operation started.
36144	DeletionStartTime *time.Time `type:"timestamp"`
36145
36146	// Information about the delete operation. For more information about this summary,
36147	// see Understanding the delete inventory summary (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-custom.html#sysman-inventory-delete)
36148	// in the Amazon Web Services Systems Manager User Guide.
36149	DeletionSummary *InventoryDeletionSummary `type:"structure"`
36150
36151	// The status of the operation. Possible values are InProgress and Complete.
36152	LastStatus *string `type:"string" enum:"InventoryDeletionStatus"`
36153
36154	// Information about the status.
36155	LastStatusMessage *string `type:"string"`
36156
36157	// The UTC timestamp of when the last status report.
36158	LastStatusUpdateTime *time.Time `type:"timestamp"`
36159
36160	// The name of the inventory data type.
36161	TypeName *string `min:"1" type:"string"`
36162}
36163
36164// String returns the string representation
36165func (s InventoryDeletionStatusItem) String() string {
36166	return awsutil.Prettify(s)
36167}
36168
36169// GoString returns the string representation
36170func (s InventoryDeletionStatusItem) GoString() string {
36171	return s.String()
36172}
36173
36174// SetDeletionId sets the DeletionId field's value.
36175func (s *InventoryDeletionStatusItem) SetDeletionId(v string) *InventoryDeletionStatusItem {
36176	s.DeletionId = &v
36177	return s
36178}
36179
36180// SetDeletionStartTime sets the DeletionStartTime field's value.
36181func (s *InventoryDeletionStatusItem) SetDeletionStartTime(v time.Time) *InventoryDeletionStatusItem {
36182	s.DeletionStartTime = &v
36183	return s
36184}
36185
36186// SetDeletionSummary sets the DeletionSummary field's value.
36187func (s *InventoryDeletionStatusItem) SetDeletionSummary(v *InventoryDeletionSummary) *InventoryDeletionStatusItem {
36188	s.DeletionSummary = v
36189	return s
36190}
36191
36192// SetLastStatus sets the LastStatus field's value.
36193func (s *InventoryDeletionStatusItem) SetLastStatus(v string) *InventoryDeletionStatusItem {
36194	s.LastStatus = &v
36195	return s
36196}
36197
36198// SetLastStatusMessage sets the LastStatusMessage field's value.
36199func (s *InventoryDeletionStatusItem) SetLastStatusMessage(v string) *InventoryDeletionStatusItem {
36200	s.LastStatusMessage = &v
36201	return s
36202}
36203
36204// SetLastStatusUpdateTime sets the LastStatusUpdateTime field's value.
36205func (s *InventoryDeletionStatusItem) SetLastStatusUpdateTime(v time.Time) *InventoryDeletionStatusItem {
36206	s.LastStatusUpdateTime = &v
36207	return s
36208}
36209
36210// SetTypeName sets the TypeName field's value.
36211func (s *InventoryDeletionStatusItem) SetTypeName(v string) *InventoryDeletionStatusItem {
36212	s.TypeName = &v
36213	return s
36214}
36215
36216// Information about the delete operation.
36217type InventoryDeletionSummary struct {
36218	_ struct{} `type:"structure"`
36219
36220	// Remaining number of items to delete.
36221	RemainingCount *int64 `type:"integer"`
36222
36223	// A list of counts and versions for deleted items.
36224	SummaryItems []*InventoryDeletionSummaryItem `type:"list"`
36225
36226	// The total number of items to delete. This count doesn't change during the
36227	// delete operation.
36228	TotalCount *int64 `type:"integer"`
36229}
36230
36231// String returns the string representation
36232func (s InventoryDeletionSummary) String() string {
36233	return awsutil.Prettify(s)
36234}
36235
36236// GoString returns the string representation
36237func (s InventoryDeletionSummary) GoString() string {
36238	return s.String()
36239}
36240
36241// SetRemainingCount sets the RemainingCount field's value.
36242func (s *InventoryDeletionSummary) SetRemainingCount(v int64) *InventoryDeletionSummary {
36243	s.RemainingCount = &v
36244	return s
36245}
36246
36247// SetSummaryItems sets the SummaryItems field's value.
36248func (s *InventoryDeletionSummary) SetSummaryItems(v []*InventoryDeletionSummaryItem) *InventoryDeletionSummary {
36249	s.SummaryItems = v
36250	return s
36251}
36252
36253// SetTotalCount sets the TotalCount field's value.
36254func (s *InventoryDeletionSummary) SetTotalCount(v int64) *InventoryDeletionSummary {
36255	s.TotalCount = &v
36256	return s
36257}
36258
36259// Either a count, remaining count, or a version number in a delete inventory
36260// summary.
36261type InventoryDeletionSummaryItem struct {
36262	_ struct{} `type:"structure"`
36263
36264	// A count of the number of deleted items.
36265	Count *int64 `type:"integer"`
36266
36267	// The remaining number of items to delete.
36268	RemainingCount *int64 `type:"integer"`
36269
36270	// The inventory type version.
36271	Version *string `type:"string"`
36272}
36273
36274// String returns the string representation
36275func (s InventoryDeletionSummaryItem) String() string {
36276	return awsutil.Prettify(s)
36277}
36278
36279// GoString returns the string representation
36280func (s InventoryDeletionSummaryItem) GoString() string {
36281	return s.String()
36282}
36283
36284// SetCount sets the Count field's value.
36285func (s *InventoryDeletionSummaryItem) SetCount(v int64) *InventoryDeletionSummaryItem {
36286	s.Count = &v
36287	return s
36288}
36289
36290// SetRemainingCount sets the RemainingCount field's value.
36291func (s *InventoryDeletionSummaryItem) SetRemainingCount(v int64) *InventoryDeletionSummaryItem {
36292	s.RemainingCount = &v
36293	return s
36294}
36295
36296// SetVersion sets the Version field's value.
36297func (s *InventoryDeletionSummaryItem) SetVersion(v string) *InventoryDeletionSummaryItem {
36298	s.Version = &v
36299	return s
36300}
36301
36302// One or more filters. Use a filter to return a more specific list of results.
36303type InventoryFilter struct {
36304	_ struct{} `type:"structure"`
36305
36306	// The name of the filter key.
36307	//
36308	// Key is a required field
36309	Key *string `min:"1" type:"string" required:"true"`
36310
36311	// The type of filter.
36312	//
36313	// The Exists filter must be used with aggregators. For more information, see
36314	// Aggregating inventory data (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-aggregate.html)
36315	// in the Amazon Web Services Systems Manager User Guide.
36316	Type *string `type:"string" enum:"InventoryQueryOperatorType"`
36317
36318	// Inventory filter values. Example: inventory filter where instance IDs are
36319	// specified as values Key=AWS:InstanceInformation.InstanceId,Values= i-a12b3c4d5e6g,
36320	// i-1a2b3c4d5e6,Type=Equal.
36321	//
36322	// Values is a required field
36323	Values []*string `min:"1" type:"list" required:"true"`
36324}
36325
36326// String returns the string representation
36327func (s InventoryFilter) String() string {
36328	return awsutil.Prettify(s)
36329}
36330
36331// GoString returns the string representation
36332func (s InventoryFilter) GoString() string {
36333	return s.String()
36334}
36335
36336// Validate inspects the fields of the type to determine if they are valid.
36337func (s *InventoryFilter) Validate() error {
36338	invalidParams := request.ErrInvalidParams{Context: "InventoryFilter"}
36339	if s.Key == nil {
36340		invalidParams.Add(request.NewErrParamRequired("Key"))
36341	}
36342	if s.Key != nil && len(*s.Key) < 1 {
36343		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
36344	}
36345	if s.Values == nil {
36346		invalidParams.Add(request.NewErrParamRequired("Values"))
36347	}
36348	if s.Values != nil && len(s.Values) < 1 {
36349		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
36350	}
36351
36352	if invalidParams.Len() > 0 {
36353		return invalidParams
36354	}
36355	return nil
36356}
36357
36358// SetKey sets the Key field's value.
36359func (s *InventoryFilter) SetKey(v string) *InventoryFilter {
36360	s.Key = &v
36361	return s
36362}
36363
36364// SetType sets the Type field's value.
36365func (s *InventoryFilter) SetType(v string) *InventoryFilter {
36366	s.Type = &v
36367	return s
36368}
36369
36370// SetValues sets the Values field's value.
36371func (s *InventoryFilter) SetValues(v []*string) *InventoryFilter {
36372	s.Values = v
36373	return s
36374}
36375
36376// A user-defined set of one or more filters on which to aggregate inventory
36377// data. Groups return a count of resources that match and don't match the specified
36378// criteria.
36379type InventoryGroup struct {
36380	_ struct{} `type:"structure"`
36381
36382	// Filters define the criteria for the group. The matchingCount field displays
36383	// the number of resources that match the criteria. The notMatchingCount field
36384	// displays the number of resources that don't match the criteria.
36385	//
36386	// Filters is a required field
36387	Filters []*InventoryFilter `min:"1" type:"list" required:"true"`
36388
36389	// The name of the group.
36390	//
36391	// Name is a required field
36392	Name *string `min:"1" type:"string" required:"true"`
36393}
36394
36395// String returns the string representation
36396func (s InventoryGroup) String() string {
36397	return awsutil.Prettify(s)
36398}
36399
36400// GoString returns the string representation
36401func (s InventoryGroup) GoString() string {
36402	return s.String()
36403}
36404
36405// Validate inspects the fields of the type to determine if they are valid.
36406func (s *InventoryGroup) Validate() error {
36407	invalidParams := request.ErrInvalidParams{Context: "InventoryGroup"}
36408	if s.Filters == nil {
36409		invalidParams.Add(request.NewErrParamRequired("Filters"))
36410	}
36411	if s.Filters != nil && len(s.Filters) < 1 {
36412		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
36413	}
36414	if s.Name == nil {
36415		invalidParams.Add(request.NewErrParamRequired("Name"))
36416	}
36417	if s.Name != nil && len(*s.Name) < 1 {
36418		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
36419	}
36420	if s.Filters != nil {
36421		for i, v := range s.Filters {
36422			if v == nil {
36423				continue
36424			}
36425			if err := v.Validate(); err != nil {
36426				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
36427			}
36428		}
36429	}
36430
36431	if invalidParams.Len() > 0 {
36432		return invalidParams
36433	}
36434	return nil
36435}
36436
36437// SetFilters sets the Filters field's value.
36438func (s *InventoryGroup) SetFilters(v []*InventoryFilter) *InventoryGroup {
36439	s.Filters = v
36440	return s
36441}
36442
36443// SetName sets the Name field's value.
36444func (s *InventoryGroup) SetName(v string) *InventoryGroup {
36445	s.Name = &v
36446	return s
36447}
36448
36449// Information collected from managed instances based on your inventory policy
36450// document
36451type InventoryItem struct {
36452	_ struct{} `type:"structure"`
36453
36454	// The time the inventory information was collected.
36455	//
36456	// CaptureTime is a required field
36457	CaptureTime *string `type:"string" required:"true"`
36458
36459	// The inventory data of the inventory type.
36460	Content []map[string]*string `type:"list"`
36461
36462	// MD5 hash of the inventory item type contents. The content hash is used to
36463	// determine whether to update inventory information. The PutInventory API doesn't
36464	// update the inventory item type contents if the MD5 hash hasn't changed since
36465	// last update.
36466	ContentHash *string `type:"string"`
36467
36468	// A map of associated properties for a specified inventory type. For example,
36469	// with this attribute, you can specify the ExecutionId, ExecutionType, ComplianceType
36470	// properties of the AWS:ComplianceItem type.
36471	Context map[string]*string `type:"map"`
36472
36473	// The schema version for the inventory item.
36474	//
36475	// SchemaVersion is a required field
36476	SchemaVersion *string `type:"string" required:"true"`
36477
36478	// The name of the inventory type. Default inventory item type names start with
36479	// AWS. Custom inventory type names will start with Custom. Default inventory
36480	// item types include the following: AWS:AWSComponent, AWS:Application, AWS:InstanceInformation,
36481	// AWS:Network, and AWS:WindowsUpdate.
36482	//
36483	// TypeName is a required field
36484	TypeName *string `min:"1" type:"string" required:"true"`
36485}
36486
36487// String returns the string representation
36488func (s InventoryItem) String() string {
36489	return awsutil.Prettify(s)
36490}
36491
36492// GoString returns the string representation
36493func (s InventoryItem) GoString() string {
36494	return s.String()
36495}
36496
36497// Validate inspects the fields of the type to determine if they are valid.
36498func (s *InventoryItem) Validate() error {
36499	invalidParams := request.ErrInvalidParams{Context: "InventoryItem"}
36500	if s.CaptureTime == nil {
36501		invalidParams.Add(request.NewErrParamRequired("CaptureTime"))
36502	}
36503	if s.SchemaVersion == nil {
36504		invalidParams.Add(request.NewErrParamRequired("SchemaVersion"))
36505	}
36506	if s.TypeName == nil {
36507		invalidParams.Add(request.NewErrParamRequired("TypeName"))
36508	}
36509	if s.TypeName != nil && len(*s.TypeName) < 1 {
36510		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
36511	}
36512
36513	if invalidParams.Len() > 0 {
36514		return invalidParams
36515	}
36516	return nil
36517}
36518
36519// SetCaptureTime sets the CaptureTime field's value.
36520func (s *InventoryItem) SetCaptureTime(v string) *InventoryItem {
36521	s.CaptureTime = &v
36522	return s
36523}
36524
36525// SetContent sets the Content field's value.
36526func (s *InventoryItem) SetContent(v []map[string]*string) *InventoryItem {
36527	s.Content = v
36528	return s
36529}
36530
36531// SetContentHash sets the ContentHash field's value.
36532func (s *InventoryItem) SetContentHash(v string) *InventoryItem {
36533	s.ContentHash = &v
36534	return s
36535}
36536
36537// SetContext sets the Context field's value.
36538func (s *InventoryItem) SetContext(v map[string]*string) *InventoryItem {
36539	s.Context = v
36540	return s
36541}
36542
36543// SetSchemaVersion sets the SchemaVersion field's value.
36544func (s *InventoryItem) SetSchemaVersion(v string) *InventoryItem {
36545	s.SchemaVersion = &v
36546	return s
36547}
36548
36549// SetTypeName sets the TypeName field's value.
36550func (s *InventoryItem) SetTypeName(v string) *InventoryItem {
36551	s.TypeName = &v
36552	return s
36553}
36554
36555// Attributes are the entries within the inventory item content. It contains
36556// name and value.
36557type InventoryItemAttribute struct {
36558	_ struct{} `type:"structure"`
36559
36560	// The data type of the inventory item attribute.
36561	//
36562	// DataType is a required field
36563	DataType *string `type:"string" required:"true" enum:"InventoryAttributeDataType"`
36564
36565	// Name of the inventory item attribute.
36566	//
36567	// Name is a required field
36568	Name *string `type:"string" required:"true"`
36569}
36570
36571// String returns the string representation
36572func (s InventoryItemAttribute) String() string {
36573	return awsutil.Prettify(s)
36574}
36575
36576// GoString returns the string representation
36577func (s InventoryItemAttribute) GoString() string {
36578	return s.String()
36579}
36580
36581// SetDataType sets the DataType field's value.
36582func (s *InventoryItemAttribute) SetDataType(v string) *InventoryItemAttribute {
36583	s.DataType = &v
36584	return s
36585}
36586
36587// SetName sets the Name field's value.
36588func (s *InventoryItemAttribute) SetName(v string) *InventoryItemAttribute {
36589	s.Name = &v
36590	return s
36591}
36592
36593// The inventory item schema definition. Users can use this to compose inventory
36594// query filters.
36595type InventoryItemSchema struct {
36596	_ struct{} `type:"structure"`
36597
36598	// The schema attributes for inventory. This contains data type and attribute
36599	// name.
36600	//
36601	// Attributes is a required field
36602	Attributes []*InventoryItemAttribute `min:"1" type:"list" required:"true"`
36603
36604	// The alias name of the inventory type. The alias name is used for display
36605	// purposes.
36606	DisplayName *string `type:"string"`
36607
36608	// The name of the inventory type. Default inventory item type names start with
36609	// Amazon Web Services. Custom inventory type names will start with Custom.
36610	// Default inventory item types include the following: AWS:AWSComponent, AWS:Application,
36611	// AWS:InstanceInformation, AWS:Network, and AWS:WindowsUpdate.
36612	//
36613	// TypeName is a required field
36614	TypeName *string `min:"1" type:"string" required:"true"`
36615
36616	// The schema version for the inventory item.
36617	Version *string `type:"string"`
36618}
36619
36620// String returns the string representation
36621func (s InventoryItemSchema) String() string {
36622	return awsutil.Prettify(s)
36623}
36624
36625// GoString returns the string representation
36626func (s InventoryItemSchema) GoString() string {
36627	return s.String()
36628}
36629
36630// SetAttributes sets the Attributes field's value.
36631func (s *InventoryItemSchema) SetAttributes(v []*InventoryItemAttribute) *InventoryItemSchema {
36632	s.Attributes = v
36633	return s
36634}
36635
36636// SetDisplayName sets the DisplayName field's value.
36637func (s *InventoryItemSchema) SetDisplayName(v string) *InventoryItemSchema {
36638	s.DisplayName = &v
36639	return s
36640}
36641
36642// SetTypeName sets the TypeName field's value.
36643func (s *InventoryItemSchema) SetTypeName(v string) *InventoryItemSchema {
36644	s.TypeName = &v
36645	return s
36646}
36647
36648// SetVersion sets the Version field's value.
36649func (s *InventoryItemSchema) SetVersion(v string) *InventoryItemSchema {
36650	s.Version = &v
36651	return s
36652}
36653
36654// Inventory query results.
36655type InventoryResultEntity struct {
36656	_ struct{} `type:"structure"`
36657
36658	// The data section in the inventory result entity JSON.
36659	Data map[string]*InventoryResultItem `type:"map"`
36660
36661	// ID of the inventory result entity. For example, for managed instance inventory
36662	// the result will be the managed instance ID. For EC2 instance inventory, the
36663	// result will be the instance ID.
36664	Id *string `type:"string"`
36665}
36666
36667// String returns the string representation
36668func (s InventoryResultEntity) String() string {
36669	return awsutil.Prettify(s)
36670}
36671
36672// GoString returns the string representation
36673func (s InventoryResultEntity) GoString() string {
36674	return s.String()
36675}
36676
36677// SetData sets the Data field's value.
36678func (s *InventoryResultEntity) SetData(v map[string]*InventoryResultItem) *InventoryResultEntity {
36679	s.Data = v
36680	return s
36681}
36682
36683// SetId sets the Id field's value.
36684func (s *InventoryResultEntity) SetId(v string) *InventoryResultEntity {
36685	s.Id = &v
36686	return s
36687}
36688
36689// The inventory result item.
36690type InventoryResultItem struct {
36691	_ struct{} `type:"structure"`
36692
36693	// The time inventory item data was captured.
36694	CaptureTime *string `type:"string"`
36695
36696	// Contains all the inventory data of the item type. Results include attribute
36697	// names and values.
36698	//
36699	// Content is a required field
36700	Content []map[string]*string `type:"list" required:"true"`
36701
36702	// MD5 hash of the inventory item type contents. The content hash is used to
36703	// determine whether to update inventory information. The PutInventory API doesn't
36704	// update the inventory item type contents if the MD5 hash hasn't changed since
36705	// last update.
36706	ContentHash *string `type:"string"`
36707
36708	// The schema version for the inventory result item/
36709	//
36710	// SchemaVersion is a required field
36711	SchemaVersion *string `type:"string" required:"true"`
36712
36713	// The name of the inventory result item type.
36714	//
36715	// TypeName is a required field
36716	TypeName *string `min:"1" type:"string" required:"true"`
36717}
36718
36719// String returns the string representation
36720func (s InventoryResultItem) String() string {
36721	return awsutil.Prettify(s)
36722}
36723
36724// GoString returns the string representation
36725func (s InventoryResultItem) GoString() string {
36726	return s.String()
36727}
36728
36729// SetCaptureTime sets the CaptureTime field's value.
36730func (s *InventoryResultItem) SetCaptureTime(v string) *InventoryResultItem {
36731	s.CaptureTime = &v
36732	return s
36733}
36734
36735// SetContent sets the Content field's value.
36736func (s *InventoryResultItem) SetContent(v []map[string]*string) *InventoryResultItem {
36737	s.Content = v
36738	return s
36739}
36740
36741// SetContentHash sets the ContentHash field's value.
36742func (s *InventoryResultItem) SetContentHash(v string) *InventoryResultItem {
36743	s.ContentHash = &v
36744	return s
36745}
36746
36747// SetSchemaVersion sets the SchemaVersion field's value.
36748func (s *InventoryResultItem) SetSchemaVersion(v string) *InventoryResultItem {
36749	s.SchemaVersion = &v
36750	return s
36751}
36752
36753// SetTypeName sets the TypeName field's value.
36754func (s *InventoryResultItem) SetTypeName(v string) *InventoryResultItem {
36755	s.TypeName = &v
36756	return s
36757}
36758
36759// The command ID and instance ID you specified didn't match any invocations.
36760// Verify the command ID and the instance ID and try again.
36761type InvocationDoesNotExist struct {
36762	_            struct{}                  `type:"structure"`
36763	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
36764
36765	Message_ *string `locationName:"message" type:"string"`
36766}
36767
36768// String returns the string representation
36769func (s InvocationDoesNotExist) String() string {
36770	return awsutil.Prettify(s)
36771}
36772
36773// GoString returns the string representation
36774func (s InvocationDoesNotExist) GoString() string {
36775	return s.String()
36776}
36777
36778func newErrorInvocationDoesNotExist(v protocol.ResponseMetadata) error {
36779	return &InvocationDoesNotExist{
36780		RespMetadata: v,
36781	}
36782}
36783
36784// Code returns the exception type name.
36785func (s *InvocationDoesNotExist) Code() string {
36786	return "InvocationDoesNotExist"
36787}
36788
36789// Message returns the exception's message.
36790func (s *InvocationDoesNotExist) Message() string {
36791	if s.Message_ != nil {
36792		return *s.Message_
36793	}
36794	return ""
36795}
36796
36797// OrigErr always returns nil, satisfies awserr.Error interface.
36798func (s *InvocationDoesNotExist) OrigErr() error {
36799	return nil
36800}
36801
36802func (s *InvocationDoesNotExist) Error() string {
36803	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
36804}
36805
36806// Status code returns the HTTP status code for the request's response error.
36807func (s *InvocationDoesNotExist) StatusCode() int {
36808	return s.RespMetadata.StatusCode
36809}
36810
36811// RequestID returns the service's response RequestID for request.
36812func (s *InvocationDoesNotExist) RequestID() string {
36813	return s.RespMetadata.RequestID
36814}
36815
36816// The inventory item has invalid content.
36817type ItemContentMismatchException struct {
36818	_            struct{}                  `type:"structure"`
36819	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
36820
36821	Message_ *string `locationName:"Message" type:"string"`
36822
36823	TypeName *string `min:"1" type:"string"`
36824}
36825
36826// String returns the string representation
36827func (s ItemContentMismatchException) String() string {
36828	return awsutil.Prettify(s)
36829}
36830
36831// GoString returns the string representation
36832func (s ItemContentMismatchException) GoString() string {
36833	return s.String()
36834}
36835
36836func newErrorItemContentMismatchException(v protocol.ResponseMetadata) error {
36837	return &ItemContentMismatchException{
36838		RespMetadata: v,
36839	}
36840}
36841
36842// Code returns the exception type name.
36843func (s *ItemContentMismatchException) Code() string {
36844	return "ItemContentMismatchException"
36845}
36846
36847// Message returns the exception's message.
36848func (s *ItemContentMismatchException) Message() string {
36849	if s.Message_ != nil {
36850		return *s.Message_
36851	}
36852	return ""
36853}
36854
36855// OrigErr always returns nil, satisfies awserr.Error interface.
36856func (s *ItemContentMismatchException) OrigErr() error {
36857	return nil
36858}
36859
36860func (s *ItemContentMismatchException) Error() string {
36861	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
36862}
36863
36864// Status code returns the HTTP status code for the request's response error.
36865func (s *ItemContentMismatchException) StatusCode() int {
36866	return s.RespMetadata.StatusCode
36867}
36868
36869// RequestID returns the service's response RequestID for request.
36870func (s *ItemContentMismatchException) RequestID() string {
36871	return s.RespMetadata.RequestID
36872}
36873
36874// The inventory item size has exceeded the size limit.
36875type ItemSizeLimitExceededException struct {
36876	_            struct{}                  `type:"structure"`
36877	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
36878
36879	Message_ *string `locationName:"Message" type:"string"`
36880
36881	TypeName *string `min:"1" type:"string"`
36882}
36883
36884// String returns the string representation
36885func (s ItemSizeLimitExceededException) String() string {
36886	return awsutil.Prettify(s)
36887}
36888
36889// GoString returns the string representation
36890func (s ItemSizeLimitExceededException) GoString() string {
36891	return s.String()
36892}
36893
36894func newErrorItemSizeLimitExceededException(v protocol.ResponseMetadata) error {
36895	return &ItemSizeLimitExceededException{
36896		RespMetadata: v,
36897	}
36898}
36899
36900// Code returns the exception type name.
36901func (s *ItemSizeLimitExceededException) Code() string {
36902	return "ItemSizeLimitExceededException"
36903}
36904
36905// Message returns the exception's message.
36906func (s *ItemSizeLimitExceededException) Message() string {
36907	if s.Message_ != nil {
36908		return *s.Message_
36909	}
36910	return ""
36911}
36912
36913// OrigErr always returns nil, satisfies awserr.Error interface.
36914func (s *ItemSizeLimitExceededException) OrigErr() error {
36915	return nil
36916}
36917
36918func (s *ItemSizeLimitExceededException) Error() string {
36919	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
36920}
36921
36922// Status code returns the HTTP status code for the request's response error.
36923func (s *ItemSizeLimitExceededException) StatusCode() int {
36924	return s.RespMetadata.StatusCode
36925}
36926
36927// RequestID returns the service's response RequestID for request.
36928func (s *ItemSizeLimitExceededException) RequestID() string {
36929	return s.RespMetadata.RequestID
36930}
36931
36932type LabelParameterVersionInput struct {
36933	_ struct{} `type:"structure"`
36934
36935	// One or more labels to attach to the specified parameter version.
36936	//
36937	// Labels is a required field
36938	Labels []*string `min:"1" type:"list" required:"true"`
36939
36940	// The parameter name on which you want to attach one or more labels.
36941	//
36942	// Name is a required field
36943	Name *string `min:"1" type:"string" required:"true"`
36944
36945	// The specific version of the parameter on which you want to attach one or
36946	// more labels. If no version is specified, the system attaches the label to
36947	// the latest version.
36948	ParameterVersion *int64 `type:"long"`
36949}
36950
36951// String returns the string representation
36952func (s LabelParameterVersionInput) String() string {
36953	return awsutil.Prettify(s)
36954}
36955
36956// GoString returns the string representation
36957func (s LabelParameterVersionInput) GoString() string {
36958	return s.String()
36959}
36960
36961// Validate inspects the fields of the type to determine if they are valid.
36962func (s *LabelParameterVersionInput) Validate() error {
36963	invalidParams := request.ErrInvalidParams{Context: "LabelParameterVersionInput"}
36964	if s.Labels == nil {
36965		invalidParams.Add(request.NewErrParamRequired("Labels"))
36966	}
36967	if s.Labels != nil && len(s.Labels) < 1 {
36968		invalidParams.Add(request.NewErrParamMinLen("Labels", 1))
36969	}
36970	if s.Name == nil {
36971		invalidParams.Add(request.NewErrParamRequired("Name"))
36972	}
36973	if s.Name != nil && len(*s.Name) < 1 {
36974		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
36975	}
36976
36977	if invalidParams.Len() > 0 {
36978		return invalidParams
36979	}
36980	return nil
36981}
36982
36983// SetLabels sets the Labels field's value.
36984func (s *LabelParameterVersionInput) SetLabels(v []*string) *LabelParameterVersionInput {
36985	s.Labels = v
36986	return s
36987}
36988
36989// SetName sets the Name field's value.
36990func (s *LabelParameterVersionInput) SetName(v string) *LabelParameterVersionInput {
36991	s.Name = &v
36992	return s
36993}
36994
36995// SetParameterVersion sets the ParameterVersion field's value.
36996func (s *LabelParameterVersionInput) SetParameterVersion(v int64) *LabelParameterVersionInput {
36997	s.ParameterVersion = &v
36998	return s
36999}
37000
37001type LabelParameterVersionOutput struct {
37002	_ struct{} `type:"structure"`
37003
37004	// The label doesn't meet the requirements. For information about parameter
37005	// label requirements, see Labeling parameters (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html)
37006	// in the Amazon Web Services Systems Manager User Guide.
37007	InvalidLabels []*string `min:"1" type:"list"`
37008
37009	// The version of the parameter that has been labeled.
37010	ParameterVersion *int64 `type:"long"`
37011}
37012
37013// String returns the string representation
37014func (s LabelParameterVersionOutput) String() string {
37015	return awsutil.Prettify(s)
37016}
37017
37018// GoString returns the string representation
37019func (s LabelParameterVersionOutput) GoString() string {
37020	return s.String()
37021}
37022
37023// SetInvalidLabels sets the InvalidLabels field's value.
37024func (s *LabelParameterVersionOutput) SetInvalidLabels(v []*string) *LabelParameterVersionOutput {
37025	s.InvalidLabels = v
37026	return s
37027}
37028
37029// SetParameterVersion sets the ParameterVersion field's value.
37030func (s *LabelParameterVersionOutput) SetParameterVersion(v int64) *LabelParameterVersionOutput {
37031	s.ParameterVersion = &v
37032	return s
37033}
37034
37035type ListAssociationVersionsInput struct {
37036	_ struct{} `type:"structure"`
37037
37038	// The association ID for which you want to view all versions.
37039	//
37040	// AssociationId is a required field
37041	AssociationId *string `type:"string" required:"true"`
37042
37043	// The maximum number of items to return for this call. The call also returns
37044	// a token that you can specify in a subsequent call to get the next set of
37045	// results.
37046	MaxResults *int64 `min:"1" type:"integer"`
37047
37048	// A token to start the list. Use this token to get the next set of results.
37049	NextToken *string `type:"string"`
37050}
37051
37052// String returns the string representation
37053func (s ListAssociationVersionsInput) String() string {
37054	return awsutil.Prettify(s)
37055}
37056
37057// GoString returns the string representation
37058func (s ListAssociationVersionsInput) GoString() string {
37059	return s.String()
37060}
37061
37062// Validate inspects the fields of the type to determine if they are valid.
37063func (s *ListAssociationVersionsInput) Validate() error {
37064	invalidParams := request.ErrInvalidParams{Context: "ListAssociationVersionsInput"}
37065	if s.AssociationId == nil {
37066		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
37067	}
37068	if s.MaxResults != nil && *s.MaxResults < 1 {
37069		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37070	}
37071
37072	if invalidParams.Len() > 0 {
37073		return invalidParams
37074	}
37075	return nil
37076}
37077
37078// SetAssociationId sets the AssociationId field's value.
37079func (s *ListAssociationVersionsInput) SetAssociationId(v string) *ListAssociationVersionsInput {
37080	s.AssociationId = &v
37081	return s
37082}
37083
37084// SetMaxResults sets the MaxResults field's value.
37085func (s *ListAssociationVersionsInput) SetMaxResults(v int64) *ListAssociationVersionsInput {
37086	s.MaxResults = &v
37087	return s
37088}
37089
37090// SetNextToken sets the NextToken field's value.
37091func (s *ListAssociationVersionsInput) SetNextToken(v string) *ListAssociationVersionsInput {
37092	s.NextToken = &v
37093	return s
37094}
37095
37096type ListAssociationVersionsOutput struct {
37097	_ struct{} `type:"structure"`
37098
37099	// Information about all versions of the association for the specified association
37100	// ID.
37101	AssociationVersions []*AssociationVersionInfo `min:"1" type:"list"`
37102
37103	// The token for the next set of items to return. Use this token to get the
37104	// next set of results.
37105	NextToken *string `type:"string"`
37106}
37107
37108// String returns the string representation
37109func (s ListAssociationVersionsOutput) String() string {
37110	return awsutil.Prettify(s)
37111}
37112
37113// GoString returns the string representation
37114func (s ListAssociationVersionsOutput) GoString() string {
37115	return s.String()
37116}
37117
37118// SetAssociationVersions sets the AssociationVersions field's value.
37119func (s *ListAssociationVersionsOutput) SetAssociationVersions(v []*AssociationVersionInfo) *ListAssociationVersionsOutput {
37120	s.AssociationVersions = v
37121	return s
37122}
37123
37124// SetNextToken sets the NextToken field's value.
37125func (s *ListAssociationVersionsOutput) SetNextToken(v string) *ListAssociationVersionsOutput {
37126	s.NextToken = &v
37127	return s
37128}
37129
37130type ListAssociationsInput struct {
37131	_ struct{} `type:"structure"`
37132
37133	// One or more filters. Use a filter to return a more specific list of results.
37134	//
37135	// Filtering associations using the InstanceID attribute only returns legacy
37136	// associations created using the InstanceID attribute. Associations targeting
37137	// the instance that are part of the Target Attributes ResourceGroup or Tags
37138	// aren't returned.
37139	AssociationFilterList []*AssociationFilter `min:"1" type:"list"`
37140
37141	// The maximum number of items to return for this call. The call also returns
37142	// a token that you can specify in a subsequent call to get the next set of
37143	// results.
37144	MaxResults *int64 `min:"1" type:"integer"`
37145
37146	// The token for the next set of items to return. (You received this token from
37147	// a previous call.)
37148	NextToken *string `type:"string"`
37149}
37150
37151// String returns the string representation
37152func (s ListAssociationsInput) String() string {
37153	return awsutil.Prettify(s)
37154}
37155
37156// GoString returns the string representation
37157func (s ListAssociationsInput) GoString() string {
37158	return s.String()
37159}
37160
37161// Validate inspects the fields of the type to determine if they are valid.
37162func (s *ListAssociationsInput) Validate() error {
37163	invalidParams := request.ErrInvalidParams{Context: "ListAssociationsInput"}
37164	if s.AssociationFilterList != nil && len(s.AssociationFilterList) < 1 {
37165		invalidParams.Add(request.NewErrParamMinLen("AssociationFilterList", 1))
37166	}
37167	if s.MaxResults != nil && *s.MaxResults < 1 {
37168		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37169	}
37170	if s.AssociationFilterList != nil {
37171		for i, v := range s.AssociationFilterList {
37172			if v == nil {
37173				continue
37174			}
37175			if err := v.Validate(); err != nil {
37176				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssociationFilterList", i), err.(request.ErrInvalidParams))
37177			}
37178		}
37179	}
37180
37181	if invalidParams.Len() > 0 {
37182		return invalidParams
37183	}
37184	return nil
37185}
37186
37187// SetAssociationFilterList sets the AssociationFilterList field's value.
37188func (s *ListAssociationsInput) SetAssociationFilterList(v []*AssociationFilter) *ListAssociationsInput {
37189	s.AssociationFilterList = v
37190	return s
37191}
37192
37193// SetMaxResults sets the MaxResults field's value.
37194func (s *ListAssociationsInput) SetMaxResults(v int64) *ListAssociationsInput {
37195	s.MaxResults = &v
37196	return s
37197}
37198
37199// SetNextToken sets the NextToken field's value.
37200func (s *ListAssociationsInput) SetNextToken(v string) *ListAssociationsInput {
37201	s.NextToken = &v
37202	return s
37203}
37204
37205type ListAssociationsOutput struct {
37206	_ struct{} `type:"structure"`
37207
37208	// The associations.
37209	Associations []*Association `type:"list"`
37210
37211	// The token to use when requesting the next set of items. If there are no additional
37212	// items to return, the string is empty.
37213	NextToken *string `type:"string"`
37214}
37215
37216// String returns the string representation
37217func (s ListAssociationsOutput) String() string {
37218	return awsutil.Prettify(s)
37219}
37220
37221// GoString returns the string representation
37222func (s ListAssociationsOutput) GoString() string {
37223	return s.String()
37224}
37225
37226// SetAssociations sets the Associations field's value.
37227func (s *ListAssociationsOutput) SetAssociations(v []*Association) *ListAssociationsOutput {
37228	s.Associations = v
37229	return s
37230}
37231
37232// SetNextToken sets the NextToken field's value.
37233func (s *ListAssociationsOutput) SetNextToken(v string) *ListAssociationsOutput {
37234	s.NextToken = &v
37235	return s
37236}
37237
37238type ListCommandInvocationsInput struct {
37239	_ struct{} `type:"structure"`
37240
37241	// (Optional) The invocations for a specific command ID.
37242	CommandId *string `min:"36" type:"string"`
37243
37244	// (Optional) If set this returns the response of the command executions and
37245	// any command output. The default value is false.
37246	Details *bool `type:"boolean"`
37247
37248	// (Optional) One or more filters. Use a filter to return a more specific list
37249	// of results.
37250	Filters []*CommandFilter `min:"1" type:"list"`
37251
37252	// (Optional) The command execution details for a specific instance ID.
37253	InstanceId *string `type:"string"`
37254
37255	// (Optional) The maximum number of items to return for this call. The call
37256	// also returns a token that you can specify in a subsequent call to get the
37257	// next set of results.
37258	MaxResults *int64 `min:"1" type:"integer"`
37259
37260	// (Optional) The token for the next set of items to return. (You received this
37261	// token from a previous call.)
37262	NextToken *string `type:"string"`
37263}
37264
37265// String returns the string representation
37266func (s ListCommandInvocationsInput) String() string {
37267	return awsutil.Prettify(s)
37268}
37269
37270// GoString returns the string representation
37271func (s ListCommandInvocationsInput) GoString() string {
37272	return s.String()
37273}
37274
37275// Validate inspects the fields of the type to determine if they are valid.
37276func (s *ListCommandInvocationsInput) Validate() error {
37277	invalidParams := request.ErrInvalidParams{Context: "ListCommandInvocationsInput"}
37278	if s.CommandId != nil && len(*s.CommandId) < 36 {
37279		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
37280	}
37281	if s.Filters != nil && len(s.Filters) < 1 {
37282		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
37283	}
37284	if s.MaxResults != nil && *s.MaxResults < 1 {
37285		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37286	}
37287	if s.Filters != nil {
37288		for i, v := range s.Filters {
37289			if v == nil {
37290				continue
37291			}
37292			if err := v.Validate(); err != nil {
37293				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
37294			}
37295		}
37296	}
37297
37298	if invalidParams.Len() > 0 {
37299		return invalidParams
37300	}
37301	return nil
37302}
37303
37304// SetCommandId sets the CommandId field's value.
37305func (s *ListCommandInvocationsInput) SetCommandId(v string) *ListCommandInvocationsInput {
37306	s.CommandId = &v
37307	return s
37308}
37309
37310// SetDetails sets the Details field's value.
37311func (s *ListCommandInvocationsInput) SetDetails(v bool) *ListCommandInvocationsInput {
37312	s.Details = &v
37313	return s
37314}
37315
37316// SetFilters sets the Filters field's value.
37317func (s *ListCommandInvocationsInput) SetFilters(v []*CommandFilter) *ListCommandInvocationsInput {
37318	s.Filters = v
37319	return s
37320}
37321
37322// SetInstanceId sets the InstanceId field's value.
37323func (s *ListCommandInvocationsInput) SetInstanceId(v string) *ListCommandInvocationsInput {
37324	s.InstanceId = &v
37325	return s
37326}
37327
37328// SetMaxResults sets the MaxResults field's value.
37329func (s *ListCommandInvocationsInput) SetMaxResults(v int64) *ListCommandInvocationsInput {
37330	s.MaxResults = &v
37331	return s
37332}
37333
37334// SetNextToken sets the NextToken field's value.
37335func (s *ListCommandInvocationsInput) SetNextToken(v string) *ListCommandInvocationsInput {
37336	s.NextToken = &v
37337	return s
37338}
37339
37340type ListCommandInvocationsOutput struct {
37341	_ struct{} `type:"structure"`
37342
37343	// (Optional) A list of all invocations.
37344	CommandInvocations []*CommandInvocation `type:"list"`
37345
37346	// (Optional) The token for the next set of items to return. (You received this
37347	// token from a previous call.)
37348	NextToken *string `type:"string"`
37349}
37350
37351// String returns the string representation
37352func (s ListCommandInvocationsOutput) String() string {
37353	return awsutil.Prettify(s)
37354}
37355
37356// GoString returns the string representation
37357func (s ListCommandInvocationsOutput) GoString() string {
37358	return s.String()
37359}
37360
37361// SetCommandInvocations sets the CommandInvocations field's value.
37362func (s *ListCommandInvocationsOutput) SetCommandInvocations(v []*CommandInvocation) *ListCommandInvocationsOutput {
37363	s.CommandInvocations = v
37364	return s
37365}
37366
37367// SetNextToken sets the NextToken field's value.
37368func (s *ListCommandInvocationsOutput) SetNextToken(v string) *ListCommandInvocationsOutput {
37369	s.NextToken = &v
37370	return s
37371}
37372
37373type ListCommandsInput struct {
37374	_ struct{} `type:"structure"`
37375
37376	// (Optional) If provided, lists only the specified command.
37377	CommandId *string `min:"36" type:"string"`
37378
37379	// (Optional) One or more filters. Use a filter to return a more specific list
37380	// of results.
37381	Filters []*CommandFilter `min:"1" type:"list"`
37382
37383	// (Optional) Lists commands issued against this instance ID.
37384	//
37385	// You can't specify an instance ID in the same command that you specify Status
37386	// = Pending. This is because the command hasn't reached the instance yet.
37387	InstanceId *string `type:"string"`
37388
37389	// (Optional) The maximum number of items to return for this call. The call
37390	// also returns a token that you can specify in a subsequent call to get the
37391	// next set of results.
37392	MaxResults *int64 `min:"1" type:"integer"`
37393
37394	// (Optional) The token for the next set of items to return. (You received this
37395	// token from a previous call.)
37396	NextToken *string `type:"string"`
37397}
37398
37399// String returns the string representation
37400func (s ListCommandsInput) String() string {
37401	return awsutil.Prettify(s)
37402}
37403
37404// GoString returns the string representation
37405func (s ListCommandsInput) GoString() string {
37406	return s.String()
37407}
37408
37409// Validate inspects the fields of the type to determine if they are valid.
37410func (s *ListCommandsInput) Validate() error {
37411	invalidParams := request.ErrInvalidParams{Context: "ListCommandsInput"}
37412	if s.CommandId != nil && len(*s.CommandId) < 36 {
37413		invalidParams.Add(request.NewErrParamMinLen("CommandId", 36))
37414	}
37415	if s.Filters != nil && len(s.Filters) < 1 {
37416		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
37417	}
37418	if s.MaxResults != nil && *s.MaxResults < 1 {
37419		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37420	}
37421	if s.Filters != nil {
37422		for i, v := range s.Filters {
37423			if v == nil {
37424				continue
37425			}
37426			if err := v.Validate(); err != nil {
37427				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
37428			}
37429		}
37430	}
37431
37432	if invalidParams.Len() > 0 {
37433		return invalidParams
37434	}
37435	return nil
37436}
37437
37438// SetCommandId sets the CommandId field's value.
37439func (s *ListCommandsInput) SetCommandId(v string) *ListCommandsInput {
37440	s.CommandId = &v
37441	return s
37442}
37443
37444// SetFilters sets the Filters field's value.
37445func (s *ListCommandsInput) SetFilters(v []*CommandFilter) *ListCommandsInput {
37446	s.Filters = v
37447	return s
37448}
37449
37450// SetInstanceId sets the InstanceId field's value.
37451func (s *ListCommandsInput) SetInstanceId(v string) *ListCommandsInput {
37452	s.InstanceId = &v
37453	return s
37454}
37455
37456// SetMaxResults sets the MaxResults field's value.
37457func (s *ListCommandsInput) SetMaxResults(v int64) *ListCommandsInput {
37458	s.MaxResults = &v
37459	return s
37460}
37461
37462// SetNextToken sets the NextToken field's value.
37463func (s *ListCommandsInput) SetNextToken(v string) *ListCommandsInput {
37464	s.NextToken = &v
37465	return s
37466}
37467
37468type ListCommandsOutput struct {
37469	_ struct{} `type:"structure"`
37470
37471	// (Optional) The list of commands requested by the user.
37472	Commands []*Command `type:"list"`
37473
37474	// (Optional) The token for the next set of items to return. (You received this
37475	// token from a previous call.)
37476	NextToken *string `type:"string"`
37477}
37478
37479// String returns the string representation
37480func (s ListCommandsOutput) String() string {
37481	return awsutil.Prettify(s)
37482}
37483
37484// GoString returns the string representation
37485func (s ListCommandsOutput) GoString() string {
37486	return s.String()
37487}
37488
37489// SetCommands sets the Commands field's value.
37490func (s *ListCommandsOutput) SetCommands(v []*Command) *ListCommandsOutput {
37491	s.Commands = v
37492	return s
37493}
37494
37495// SetNextToken sets the NextToken field's value.
37496func (s *ListCommandsOutput) SetNextToken(v string) *ListCommandsOutput {
37497	s.NextToken = &v
37498	return s
37499}
37500
37501type ListComplianceItemsInput struct {
37502	_ struct{} `type:"structure"`
37503
37504	// One or more compliance filters. Use a filter to return a more specific list
37505	// of results.
37506	Filters []*ComplianceStringFilter `type:"list"`
37507
37508	// The maximum number of items to return for this call. The call also returns
37509	// a token that you can specify in a subsequent call to get the next set of
37510	// results.
37511	MaxResults *int64 `min:"1" type:"integer"`
37512
37513	// A token to start the list. Use this token to get the next set of results.
37514	NextToken *string `type:"string"`
37515
37516	// The ID for the resources from which to get compliance information. Currently,
37517	// you can only specify one resource ID.
37518	ResourceIds []*string `min:"1" type:"list"`
37519
37520	// The type of resource from which to get compliance information. Currently,
37521	// the only supported resource type is ManagedInstance.
37522	ResourceTypes []*string `min:"1" type:"list"`
37523}
37524
37525// String returns the string representation
37526func (s ListComplianceItemsInput) String() string {
37527	return awsutil.Prettify(s)
37528}
37529
37530// GoString returns the string representation
37531func (s ListComplianceItemsInput) GoString() string {
37532	return s.String()
37533}
37534
37535// Validate inspects the fields of the type to determine if they are valid.
37536func (s *ListComplianceItemsInput) Validate() error {
37537	invalidParams := request.ErrInvalidParams{Context: "ListComplianceItemsInput"}
37538	if s.MaxResults != nil && *s.MaxResults < 1 {
37539		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37540	}
37541	if s.ResourceIds != nil && len(s.ResourceIds) < 1 {
37542		invalidParams.Add(request.NewErrParamMinLen("ResourceIds", 1))
37543	}
37544	if s.ResourceTypes != nil && len(s.ResourceTypes) < 1 {
37545		invalidParams.Add(request.NewErrParamMinLen("ResourceTypes", 1))
37546	}
37547	if s.Filters != nil {
37548		for i, v := range s.Filters {
37549			if v == nil {
37550				continue
37551			}
37552			if err := v.Validate(); err != nil {
37553				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
37554			}
37555		}
37556	}
37557
37558	if invalidParams.Len() > 0 {
37559		return invalidParams
37560	}
37561	return nil
37562}
37563
37564// SetFilters sets the Filters field's value.
37565func (s *ListComplianceItemsInput) SetFilters(v []*ComplianceStringFilter) *ListComplianceItemsInput {
37566	s.Filters = v
37567	return s
37568}
37569
37570// SetMaxResults sets the MaxResults field's value.
37571func (s *ListComplianceItemsInput) SetMaxResults(v int64) *ListComplianceItemsInput {
37572	s.MaxResults = &v
37573	return s
37574}
37575
37576// SetNextToken sets the NextToken field's value.
37577func (s *ListComplianceItemsInput) SetNextToken(v string) *ListComplianceItemsInput {
37578	s.NextToken = &v
37579	return s
37580}
37581
37582// SetResourceIds sets the ResourceIds field's value.
37583func (s *ListComplianceItemsInput) SetResourceIds(v []*string) *ListComplianceItemsInput {
37584	s.ResourceIds = v
37585	return s
37586}
37587
37588// SetResourceTypes sets the ResourceTypes field's value.
37589func (s *ListComplianceItemsInput) SetResourceTypes(v []*string) *ListComplianceItemsInput {
37590	s.ResourceTypes = v
37591	return s
37592}
37593
37594type ListComplianceItemsOutput struct {
37595	_ struct{} `type:"structure"`
37596
37597	// A list of compliance information for the specified resource ID.
37598	ComplianceItems []*ComplianceItem `type:"list"`
37599
37600	// The token for the next set of items to return. Use this token to get the
37601	// next set of results.
37602	NextToken *string `type:"string"`
37603}
37604
37605// String returns the string representation
37606func (s ListComplianceItemsOutput) String() string {
37607	return awsutil.Prettify(s)
37608}
37609
37610// GoString returns the string representation
37611func (s ListComplianceItemsOutput) GoString() string {
37612	return s.String()
37613}
37614
37615// SetComplianceItems sets the ComplianceItems field's value.
37616func (s *ListComplianceItemsOutput) SetComplianceItems(v []*ComplianceItem) *ListComplianceItemsOutput {
37617	s.ComplianceItems = v
37618	return s
37619}
37620
37621// SetNextToken sets the NextToken field's value.
37622func (s *ListComplianceItemsOutput) SetNextToken(v string) *ListComplianceItemsOutput {
37623	s.NextToken = &v
37624	return s
37625}
37626
37627type ListComplianceSummariesInput struct {
37628	_ struct{} `type:"structure"`
37629
37630	// One or more compliance or inventory filters. Use a filter to return a more
37631	// specific list of results.
37632	Filters []*ComplianceStringFilter `type:"list"`
37633
37634	// The maximum number of items to return for this call. Currently, you can specify
37635	// null or 50. The call also returns a token that you can specify in a subsequent
37636	// call to get the next set of results.
37637	MaxResults *int64 `min:"1" type:"integer"`
37638
37639	// A token to start the list. Use this token to get the next set of results.
37640	NextToken *string `type:"string"`
37641}
37642
37643// String returns the string representation
37644func (s ListComplianceSummariesInput) String() string {
37645	return awsutil.Prettify(s)
37646}
37647
37648// GoString returns the string representation
37649func (s ListComplianceSummariesInput) GoString() string {
37650	return s.String()
37651}
37652
37653// Validate inspects the fields of the type to determine if they are valid.
37654func (s *ListComplianceSummariesInput) Validate() error {
37655	invalidParams := request.ErrInvalidParams{Context: "ListComplianceSummariesInput"}
37656	if s.MaxResults != nil && *s.MaxResults < 1 {
37657		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37658	}
37659	if s.Filters != nil {
37660		for i, v := range s.Filters {
37661			if v == nil {
37662				continue
37663			}
37664			if err := v.Validate(); err != nil {
37665				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
37666			}
37667		}
37668	}
37669
37670	if invalidParams.Len() > 0 {
37671		return invalidParams
37672	}
37673	return nil
37674}
37675
37676// SetFilters sets the Filters field's value.
37677func (s *ListComplianceSummariesInput) SetFilters(v []*ComplianceStringFilter) *ListComplianceSummariesInput {
37678	s.Filters = v
37679	return s
37680}
37681
37682// SetMaxResults sets the MaxResults field's value.
37683func (s *ListComplianceSummariesInput) SetMaxResults(v int64) *ListComplianceSummariesInput {
37684	s.MaxResults = &v
37685	return s
37686}
37687
37688// SetNextToken sets the NextToken field's value.
37689func (s *ListComplianceSummariesInput) SetNextToken(v string) *ListComplianceSummariesInput {
37690	s.NextToken = &v
37691	return s
37692}
37693
37694type ListComplianceSummariesOutput struct {
37695	_ struct{} `type:"structure"`
37696
37697	// A list of compliant and non-compliant summary counts based on compliance
37698	// types. For example, this call returns State Manager associations, patches,
37699	// or custom compliance types according to the filter criteria that you specified.
37700	ComplianceSummaryItems []*ComplianceSummaryItem `type:"list"`
37701
37702	// The token for the next set of items to return. Use this token to get the
37703	// next set of results.
37704	NextToken *string `type:"string"`
37705}
37706
37707// String returns the string representation
37708func (s ListComplianceSummariesOutput) String() string {
37709	return awsutil.Prettify(s)
37710}
37711
37712// GoString returns the string representation
37713func (s ListComplianceSummariesOutput) GoString() string {
37714	return s.String()
37715}
37716
37717// SetComplianceSummaryItems sets the ComplianceSummaryItems field's value.
37718func (s *ListComplianceSummariesOutput) SetComplianceSummaryItems(v []*ComplianceSummaryItem) *ListComplianceSummariesOutput {
37719	s.ComplianceSummaryItems = v
37720	return s
37721}
37722
37723// SetNextToken sets the NextToken field's value.
37724func (s *ListComplianceSummariesOutput) SetNextToken(v string) *ListComplianceSummariesOutput {
37725	s.NextToken = &v
37726	return s
37727}
37728
37729type ListDocumentMetadataHistoryInput struct {
37730	_ struct{} `type:"structure"`
37731
37732	// The version of the change template.
37733	DocumentVersion *string `type:"string"`
37734
37735	// The maximum number of items to return for this call. The call also returns
37736	// a token that you can specify in a subsequent call to get the next set of
37737	// results.
37738	MaxResults *int64 `min:"1" type:"integer"`
37739
37740	// The type of data for which details are being requested. Currently, the only
37741	// supported value is DocumentReviews.
37742	//
37743	// Metadata is a required field
37744	Metadata *string `type:"string" required:"true" enum:"DocumentMetadataEnum"`
37745
37746	// The name of the change template.
37747	//
37748	// Name is a required field
37749	Name *string `type:"string" required:"true"`
37750
37751	// The token for the next set of items to return. (You received this token from
37752	// a previous call.)
37753	NextToken *string `type:"string"`
37754}
37755
37756// String returns the string representation
37757func (s ListDocumentMetadataHistoryInput) String() string {
37758	return awsutil.Prettify(s)
37759}
37760
37761// GoString returns the string representation
37762func (s ListDocumentMetadataHistoryInput) GoString() string {
37763	return s.String()
37764}
37765
37766// Validate inspects the fields of the type to determine if they are valid.
37767func (s *ListDocumentMetadataHistoryInput) Validate() error {
37768	invalidParams := request.ErrInvalidParams{Context: "ListDocumentMetadataHistoryInput"}
37769	if s.MaxResults != nil && *s.MaxResults < 1 {
37770		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37771	}
37772	if s.Metadata == nil {
37773		invalidParams.Add(request.NewErrParamRequired("Metadata"))
37774	}
37775	if s.Name == nil {
37776		invalidParams.Add(request.NewErrParamRequired("Name"))
37777	}
37778
37779	if invalidParams.Len() > 0 {
37780		return invalidParams
37781	}
37782	return nil
37783}
37784
37785// SetDocumentVersion sets the DocumentVersion field's value.
37786func (s *ListDocumentMetadataHistoryInput) SetDocumentVersion(v string) *ListDocumentMetadataHistoryInput {
37787	s.DocumentVersion = &v
37788	return s
37789}
37790
37791// SetMaxResults sets the MaxResults field's value.
37792func (s *ListDocumentMetadataHistoryInput) SetMaxResults(v int64) *ListDocumentMetadataHistoryInput {
37793	s.MaxResults = &v
37794	return s
37795}
37796
37797// SetMetadata sets the Metadata field's value.
37798func (s *ListDocumentMetadataHistoryInput) SetMetadata(v string) *ListDocumentMetadataHistoryInput {
37799	s.Metadata = &v
37800	return s
37801}
37802
37803// SetName sets the Name field's value.
37804func (s *ListDocumentMetadataHistoryInput) SetName(v string) *ListDocumentMetadataHistoryInput {
37805	s.Name = &v
37806	return s
37807}
37808
37809// SetNextToken sets the NextToken field's value.
37810func (s *ListDocumentMetadataHistoryInput) SetNextToken(v string) *ListDocumentMetadataHistoryInput {
37811	s.NextToken = &v
37812	return s
37813}
37814
37815type ListDocumentMetadataHistoryOutput struct {
37816	_ struct{} `type:"structure"`
37817
37818	// The user ID of the person in the organization who requested the review of
37819	// the change template.
37820	Author *string `type:"string"`
37821
37822	// The version of the change template.
37823	DocumentVersion *string `type:"string"`
37824
37825	// Information about the response to the change template approval request.
37826	Metadata *DocumentMetadataResponseInfo `type:"structure"`
37827
37828	// The name of the change template.
37829	Name *string `type:"string"`
37830
37831	// The maximum number of items to return for this call. The call also returns
37832	// a token that you can specify in a subsequent call to get the next set of
37833	// results.
37834	NextToken *string `type:"string"`
37835}
37836
37837// String returns the string representation
37838func (s ListDocumentMetadataHistoryOutput) String() string {
37839	return awsutil.Prettify(s)
37840}
37841
37842// GoString returns the string representation
37843func (s ListDocumentMetadataHistoryOutput) GoString() string {
37844	return s.String()
37845}
37846
37847// SetAuthor sets the Author field's value.
37848func (s *ListDocumentMetadataHistoryOutput) SetAuthor(v string) *ListDocumentMetadataHistoryOutput {
37849	s.Author = &v
37850	return s
37851}
37852
37853// SetDocumentVersion sets the DocumentVersion field's value.
37854func (s *ListDocumentMetadataHistoryOutput) SetDocumentVersion(v string) *ListDocumentMetadataHistoryOutput {
37855	s.DocumentVersion = &v
37856	return s
37857}
37858
37859// SetMetadata sets the Metadata field's value.
37860func (s *ListDocumentMetadataHistoryOutput) SetMetadata(v *DocumentMetadataResponseInfo) *ListDocumentMetadataHistoryOutput {
37861	s.Metadata = v
37862	return s
37863}
37864
37865// SetName sets the Name field's value.
37866func (s *ListDocumentMetadataHistoryOutput) SetName(v string) *ListDocumentMetadataHistoryOutput {
37867	s.Name = &v
37868	return s
37869}
37870
37871// SetNextToken sets the NextToken field's value.
37872func (s *ListDocumentMetadataHistoryOutput) SetNextToken(v string) *ListDocumentMetadataHistoryOutput {
37873	s.NextToken = &v
37874	return s
37875}
37876
37877type ListDocumentVersionsInput struct {
37878	_ struct{} `type:"structure"`
37879
37880	// The maximum number of items to return for this call. The call also returns
37881	// a token that you can specify in a subsequent call to get the next set of
37882	// results.
37883	MaxResults *int64 `min:"1" type:"integer"`
37884
37885	// The name of the document. You can specify an Amazon Resource Name (ARN).
37886	//
37887	// Name is a required field
37888	Name *string `type:"string" required:"true"`
37889
37890	// The token for the next set of items to return. (You received this token from
37891	// a previous call.)
37892	NextToken *string `type:"string"`
37893}
37894
37895// String returns the string representation
37896func (s ListDocumentVersionsInput) String() string {
37897	return awsutil.Prettify(s)
37898}
37899
37900// GoString returns the string representation
37901func (s ListDocumentVersionsInput) GoString() string {
37902	return s.String()
37903}
37904
37905// Validate inspects the fields of the type to determine if they are valid.
37906func (s *ListDocumentVersionsInput) Validate() error {
37907	invalidParams := request.ErrInvalidParams{Context: "ListDocumentVersionsInput"}
37908	if s.MaxResults != nil && *s.MaxResults < 1 {
37909		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
37910	}
37911	if s.Name == nil {
37912		invalidParams.Add(request.NewErrParamRequired("Name"))
37913	}
37914
37915	if invalidParams.Len() > 0 {
37916		return invalidParams
37917	}
37918	return nil
37919}
37920
37921// SetMaxResults sets the MaxResults field's value.
37922func (s *ListDocumentVersionsInput) SetMaxResults(v int64) *ListDocumentVersionsInput {
37923	s.MaxResults = &v
37924	return s
37925}
37926
37927// SetName sets the Name field's value.
37928func (s *ListDocumentVersionsInput) SetName(v string) *ListDocumentVersionsInput {
37929	s.Name = &v
37930	return s
37931}
37932
37933// SetNextToken sets the NextToken field's value.
37934func (s *ListDocumentVersionsInput) SetNextToken(v string) *ListDocumentVersionsInput {
37935	s.NextToken = &v
37936	return s
37937}
37938
37939type ListDocumentVersionsOutput struct {
37940	_ struct{} `type:"structure"`
37941
37942	// The document versions.
37943	DocumentVersions []*DocumentVersionInfo `min:"1" type:"list"`
37944
37945	// The token to use when requesting the next set of items. If there are no additional
37946	// items to return, the string is empty.
37947	NextToken *string `type:"string"`
37948}
37949
37950// String returns the string representation
37951func (s ListDocumentVersionsOutput) String() string {
37952	return awsutil.Prettify(s)
37953}
37954
37955// GoString returns the string representation
37956func (s ListDocumentVersionsOutput) GoString() string {
37957	return s.String()
37958}
37959
37960// SetDocumentVersions sets the DocumentVersions field's value.
37961func (s *ListDocumentVersionsOutput) SetDocumentVersions(v []*DocumentVersionInfo) *ListDocumentVersionsOutput {
37962	s.DocumentVersions = v
37963	return s
37964}
37965
37966// SetNextToken sets the NextToken field's value.
37967func (s *ListDocumentVersionsOutput) SetNextToken(v string) *ListDocumentVersionsOutput {
37968	s.NextToken = &v
37969	return s
37970}
37971
37972type ListDocumentsInput struct {
37973	_ struct{} `type:"structure"`
37974
37975	// This data type is deprecated. Instead, use Filters.
37976	DocumentFilterList []*DocumentFilter `min:"1" type:"list"`
37977
37978	// One or more DocumentKeyValuesFilter objects. Use a filter to return a more
37979	// specific list of results. For keys, you can specify one or more key-value
37980	// pair tags that have been applied to a document. Other valid keys include
37981	// Owner, Name, PlatformTypes, DocumentType, and TargetType. For example, to
37982	// return documents you own use Key=Owner,Values=Self. To specify a custom key-value
37983	// pair, use the format Key=tag:tagName,Values=valueName.
37984	//
37985	// This API operation only supports filtering documents by using a single tag
37986	// key and one or more tag values. For example: Key=tag:tagName,Values=valueName1,valueName2
37987	Filters []*DocumentKeyValuesFilter `type:"list"`
37988
37989	// The maximum number of items to return for this call. The call also returns
37990	// a token that you can specify in a subsequent call to get the next set of
37991	// results.
37992	MaxResults *int64 `min:"1" type:"integer"`
37993
37994	// The token for the next set of items to return. (You received this token from
37995	// a previous call.)
37996	NextToken *string `type:"string"`
37997}
37998
37999// String returns the string representation
38000func (s ListDocumentsInput) String() string {
38001	return awsutil.Prettify(s)
38002}
38003
38004// GoString returns the string representation
38005func (s ListDocumentsInput) GoString() string {
38006	return s.String()
38007}
38008
38009// Validate inspects the fields of the type to determine if they are valid.
38010func (s *ListDocumentsInput) Validate() error {
38011	invalidParams := request.ErrInvalidParams{Context: "ListDocumentsInput"}
38012	if s.DocumentFilterList != nil && len(s.DocumentFilterList) < 1 {
38013		invalidParams.Add(request.NewErrParamMinLen("DocumentFilterList", 1))
38014	}
38015	if s.MaxResults != nil && *s.MaxResults < 1 {
38016		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
38017	}
38018	if s.DocumentFilterList != nil {
38019		for i, v := range s.DocumentFilterList {
38020			if v == nil {
38021				continue
38022			}
38023			if err := v.Validate(); err != nil {
38024				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DocumentFilterList", i), err.(request.ErrInvalidParams))
38025			}
38026		}
38027	}
38028	if s.Filters != nil {
38029		for i, v := range s.Filters {
38030			if v == nil {
38031				continue
38032			}
38033			if err := v.Validate(); err != nil {
38034				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
38035			}
38036		}
38037	}
38038
38039	if invalidParams.Len() > 0 {
38040		return invalidParams
38041	}
38042	return nil
38043}
38044
38045// SetDocumentFilterList sets the DocumentFilterList field's value.
38046func (s *ListDocumentsInput) SetDocumentFilterList(v []*DocumentFilter) *ListDocumentsInput {
38047	s.DocumentFilterList = v
38048	return s
38049}
38050
38051// SetFilters sets the Filters field's value.
38052func (s *ListDocumentsInput) SetFilters(v []*DocumentKeyValuesFilter) *ListDocumentsInput {
38053	s.Filters = v
38054	return s
38055}
38056
38057// SetMaxResults sets the MaxResults field's value.
38058func (s *ListDocumentsInput) SetMaxResults(v int64) *ListDocumentsInput {
38059	s.MaxResults = &v
38060	return s
38061}
38062
38063// SetNextToken sets the NextToken field's value.
38064func (s *ListDocumentsInput) SetNextToken(v string) *ListDocumentsInput {
38065	s.NextToken = &v
38066	return s
38067}
38068
38069type ListDocumentsOutput struct {
38070	_ struct{} `type:"structure"`
38071
38072	// The names of the SSM documents.
38073	DocumentIdentifiers []*DocumentIdentifier `type:"list"`
38074
38075	// The token to use when requesting the next set of items. If there are no additional
38076	// items to return, the string is empty.
38077	NextToken *string `type:"string"`
38078}
38079
38080// String returns the string representation
38081func (s ListDocumentsOutput) String() string {
38082	return awsutil.Prettify(s)
38083}
38084
38085// GoString returns the string representation
38086func (s ListDocumentsOutput) GoString() string {
38087	return s.String()
38088}
38089
38090// SetDocumentIdentifiers sets the DocumentIdentifiers field's value.
38091func (s *ListDocumentsOutput) SetDocumentIdentifiers(v []*DocumentIdentifier) *ListDocumentsOutput {
38092	s.DocumentIdentifiers = v
38093	return s
38094}
38095
38096// SetNextToken sets the NextToken field's value.
38097func (s *ListDocumentsOutput) SetNextToken(v string) *ListDocumentsOutput {
38098	s.NextToken = &v
38099	return s
38100}
38101
38102type ListInventoryEntriesInput struct {
38103	_ struct{} `type:"structure"`
38104
38105	// One or more filters. Use a filter to return a more specific list of results.
38106	Filters []*InventoryFilter `min:"1" type:"list"`
38107
38108	// The instance ID for which you want inventory information.
38109	//
38110	// InstanceId is a required field
38111	InstanceId *string `type:"string" required:"true"`
38112
38113	// The maximum number of items to return for this call. The call also returns
38114	// a token that you can specify in a subsequent call to get the next set of
38115	// results.
38116	MaxResults *int64 `min:"1" type:"integer"`
38117
38118	// The token for the next set of items to return. (You received this token from
38119	// a previous call.)
38120	NextToken *string `type:"string"`
38121
38122	// The type of inventory item for which you want information.
38123	//
38124	// TypeName is a required field
38125	TypeName *string `min:"1" type:"string" required:"true"`
38126}
38127
38128// String returns the string representation
38129func (s ListInventoryEntriesInput) String() string {
38130	return awsutil.Prettify(s)
38131}
38132
38133// GoString returns the string representation
38134func (s ListInventoryEntriesInput) GoString() string {
38135	return s.String()
38136}
38137
38138// Validate inspects the fields of the type to determine if they are valid.
38139func (s *ListInventoryEntriesInput) Validate() error {
38140	invalidParams := request.ErrInvalidParams{Context: "ListInventoryEntriesInput"}
38141	if s.Filters != nil && len(s.Filters) < 1 {
38142		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
38143	}
38144	if s.InstanceId == nil {
38145		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
38146	}
38147	if s.MaxResults != nil && *s.MaxResults < 1 {
38148		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
38149	}
38150	if s.TypeName == nil {
38151		invalidParams.Add(request.NewErrParamRequired("TypeName"))
38152	}
38153	if s.TypeName != nil && len(*s.TypeName) < 1 {
38154		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
38155	}
38156	if s.Filters != nil {
38157		for i, v := range s.Filters {
38158			if v == nil {
38159				continue
38160			}
38161			if err := v.Validate(); err != nil {
38162				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
38163			}
38164		}
38165	}
38166
38167	if invalidParams.Len() > 0 {
38168		return invalidParams
38169	}
38170	return nil
38171}
38172
38173// SetFilters sets the Filters field's value.
38174func (s *ListInventoryEntriesInput) SetFilters(v []*InventoryFilter) *ListInventoryEntriesInput {
38175	s.Filters = v
38176	return s
38177}
38178
38179// SetInstanceId sets the InstanceId field's value.
38180func (s *ListInventoryEntriesInput) SetInstanceId(v string) *ListInventoryEntriesInput {
38181	s.InstanceId = &v
38182	return s
38183}
38184
38185// SetMaxResults sets the MaxResults field's value.
38186func (s *ListInventoryEntriesInput) SetMaxResults(v int64) *ListInventoryEntriesInput {
38187	s.MaxResults = &v
38188	return s
38189}
38190
38191// SetNextToken sets the NextToken field's value.
38192func (s *ListInventoryEntriesInput) SetNextToken(v string) *ListInventoryEntriesInput {
38193	s.NextToken = &v
38194	return s
38195}
38196
38197// SetTypeName sets the TypeName field's value.
38198func (s *ListInventoryEntriesInput) SetTypeName(v string) *ListInventoryEntriesInput {
38199	s.TypeName = &v
38200	return s
38201}
38202
38203type ListInventoryEntriesOutput struct {
38204	_ struct{} `type:"structure"`
38205
38206	// The time that inventory information was collected for the instance(s).
38207	CaptureTime *string `type:"string"`
38208
38209	// A list of inventory items on the instance(s).
38210	Entries []map[string]*string `type:"list"`
38211
38212	// The instance ID targeted by the request to query inventory information.
38213	InstanceId *string `type:"string"`
38214
38215	// The token to use when requesting the next set of items. If there are no additional
38216	// items to return, the string is empty.
38217	NextToken *string `type:"string"`
38218
38219	// The inventory schema version used by the instance(s).
38220	SchemaVersion *string `type:"string"`
38221
38222	// The type of inventory item returned by the request.
38223	TypeName *string `min:"1" type:"string"`
38224}
38225
38226// String returns the string representation
38227func (s ListInventoryEntriesOutput) String() string {
38228	return awsutil.Prettify(s)
38229}
38230
38231// GoString returns the string representation
38232func (s ListInventoryEntriesOutput) GoString() string {
38233	return s.String()
38234}
38235
38236// SetCaptureTime sets the CaptureTime field's value.
38237func (s *ListInventoryEntriesOutput) SetCaptureTime(v string) *ListInventoryEntriesOutput {
38238	s.CaptureTime = &v
38239	return s
38240}
38241
38242// SetEntries sets the Entries field's value.
38243func (s *ListInventoryEntriesOutput) SetEntries(v []map[string]*string) *ListInventoryEntriesOutput {
38244	s.Entries = v
38245	return s
38246}
38247
38248// SetInstanceId sets the InstanceId field's value.
38249func (s *ListInventoryEntriesOutput) SetInstanceId(v string) *ListInventoryEntriesOutput {
38250	s.InstanceId = &v
38251	return s
38252}
38253
38254// SetNextToken sets the NextToken field's value.
38255func (s *ListInventoryEntriesOutput) SetNextToken(v string) *ListInventoryEntriesOutput {
38256	s.NextToken = &v
38257	return s
38258}
38259
38260// SetSchemaVersion sets the SchemaVersion field's value.
38261func (s *ListInventoryEntriesOutput) SetSchemaVersion(v string) *ListInventoryEntriesOutput {
38262	s.SchemaVersion = &v
38263	return s
38264}
38265
38266// SetTypeName sets the TypeName field's value.
38267func (s *ListInventoryEntriesOutput) SetTypeName(v string) *ListInventoryEntriesOutput {
38268	s.TypeName = &v
38269	return s
38270}
38271
38272type ListOpsItemEventsInput struct {
38273	_ struct{} `type:"structure"`
38274
38275	// One or more OpsItem filters. Use a filter to return a more specific list
38276	// of results.
38277	Filters []*OpsItemEventFilter `type:"list"`
38278
38279	// The maximum number of items to return for this call. The call also returns
38280	// a token that you can specify in a subsequent call to get the next set of
38281	// results.
38282	MaxResults *int64 `min:"1" type:"integer"`
38283
38284	// A token to start the list. Use this token to get the next set of results.
38285	NextToken *string `type:"string"`
38286}
38287
38288// String returns the string representation
38289func (s ListOpsItemEventsInput) String() string {
38290	return awsutil.Prettify(s)
38291}
38292
38293// GoString returns the string representation
38294func (s ListOpsItemEventsInput) GoString() string {
38295	return s.String()
38296}
38297
38298// Validate inspects the fields of the type to determine if they are valid.
38299func (s *ListOpsItemEventsInput) Validate() error {
38300	invalidParams := request.ErrInvalidParams{Context: "ListOpsItemEventsInput"}
38301	if s.MaxResults != nil && *s.MaxResults < 1 {
38302		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
38303	}
38304	if s.Filters != nil {
38305		for i, v := range s.Filters {
38306			if v == nil {
38307				continue
38308			}
38309			if err := v.Validate(); err != nil {
38310				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
38311			}
38312		}
38313	}
38314
38315	if invalidParams.Len() > 0 {
38316		return invalidParams
38317	}
38318	return nil
38319}
38320
38321// SetFilters sets the Filters field's value.
38322func (s *ListOpsItemEventsInput) SetFilters(v []*OpsItemEventFilter) *ListOpsItemEventsInput {
38323	s.Filters = v
38324	return s
38325}
38326
38327// SetMaxResults sets the MaxResults field's value.
38328func (s *ListOpsItemEventsInput) SetMaxResults(v int64) *ListOpsItemEventsInput {
38329	s.MaxResults = &v
38330	return s
38331}
38332
38333// SetNextToken sets the NextToken field's value.
38334func (s *ListOpsItemEventsInput) SetNextToken(v string) *ListOpsItemEventsInput {
38335	s.NextToken = &v
38336	return s
38337}
38338
38339type ListOpsItemEventsOutput struct {
38340	_ struct{} `type:"structure"`
38341
38342	// The token for the next set of items to return. Use this token to get the
38343	// next set of results.
38344	NextToken *string `type:"string"`
38345
38346	// A list of event information for the specified OpsItems.
38347	Summaries []*OpsItemEventSummary `type:"list"`
38348}
38349
38350// String returns the string representation
38351func (s ListOpsItemEventsOutput) String() string {
38352	return awsutil.Prettify(s)
38353}
38354
38355// GoString returns the string representation
38356func (s ListOpsItemEventsOutput) GoString() string {
38357	return s.String()
38358}
38359
38360// SetNextToken sets the NextToken field's value.
38361func (s *ListOpsItemEventsOutput) SetNextToken(v string) *ListOpsItemEventsOutput {
38362	s.NextToken = &v
38363	return s
38364}
38365
38366// SetSummaries sets the Summaries field's value.
38367func (s *ListOpsItemEventsOutput) SetSummaries(v []*OpsItemEventSummary) *ListOpsItemEventsOutput {
38368	s.Summaries = v
38369	return s
38370}
38371
38372type ListOpsItemRelatedItemsInput struct {
38373	_ struct{} `type:"structure"`
38374
38375	// One or more OpsItem filters. Use a filter to return a more specific list
38376	// of results.
38377	Filters []*OpsItemRelatedItemsFilter `type:"list"`
38378
38379	// The maximum number of items to return for this call. The call also returns
38380	// a token that you can specify in a subsequent call to get the next set of
38381	// results.
38382	MaxResults *int64 `min:"1" type:"integer"`
38383
38384	// The token for the next set of items to return. (You received this token from
38385	// a previous call.)
38386	NextToken *string `type:"string"`
38387
38388	// The ID of the OpsItem for which you want to list all related-item resources.
38389	OpsItemId *string `type:"string"`
38390}
38391
38392// String returns the string representation
38393func (s ListOpsItemRelatedItemsInput) String() string {
38394	return awsutil.Prettify(s)
38395}
38396
38397// GoString returns the string representation
38398func (s ListOpsItemRelatedItemsInput) GoString() string {
38399	return s.String()
38400}
38401
38402// Validate inspects the fields of the type to determine if they are valid.
38403func (s *ListOpsItemRelatedItemsInput) Validate() error {
38404	invalidParams := request.ErrInvalidParams{Context: "ListOpsItemRelatedItemsInput"}
38405	if s.MaxResults != nil && *s.MaxResults < 1 {
38406		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
38407	}
38408	if s.Filters != nil {
38409		for i, v := range s.Filters {
38410			if v == nil {
38411				continue
38412			}
38413			if err := v.Validate(); err != nil {
38414				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
38415			}
38416		}
38417	}
38418
38419	if invalidParams.Len() > 0 {
38420		return invalidParams
38421	}
38422	return nil
38423}
38424
38425// SetFilters sets the Filters field's value.
38426func (s *ListOpsItemRelatedItemsInput) SetFilters(v []*OpsItemRelatedItemsFilter) *ListOpsItemRelatedItemsInput {
38427	s.Filters = v
38428	return s
38429}
38430
38431// SetMaxResults sets the MaxResults field's value.
38432func (s *ListOpsItemRelatedItemsInput) SetMaxResults(v int64) *ListOpsItemRelatedItemsInput {
38433	s.MaxResults = &v
38434	return s
38435}
38436
38437// SetNextToken sets the NextToken field's value.
38438func (s *ListOpsItemRelatedItemsInput) SetNextToken(v string) *ListOpsItemRelatedItemsInput {
38439	s.NextToken = &v
38440	return s
38441}
38442
38443// SetOpsItemId sets the OpsItemId field's value.
38444func (s *ListOpsItemRelatedItemsInput) SetOpsItemId(v string) *ListOpsItemRelatedItemsInput {
38445	s.OpsItemId = &v
38446	return s
38447}
38448
38449type ListOpsItemRelatedItemsOutput struct {
38450	_ struct{} `type:"structure"`
38451
38452	// The token for the next set of items to return. Use this token to get the
38453	// next set of results.
38454	NextToken *string `type:"string"`
38455
38456	// A list of related-item resources for the specified OpsItem.
38457	Summaries []*OpsItemRelatedItemSummary `type:"list"`
38458}
38459
38460// String returns the string representation
38461func (s ListOpsItemRelatedItemsOutput) String() string {
38462	return awsutil.Prettify(s)
38463}
38464
38465// GoString returns the string representation
38466func (s ListOpsItemRelatedItemsOutput) GoString() string {
38467	return s.String()
38468}
38469
38470// SetNextToken sets the NextToken field's value.
38471func (s *ListOpsItemRelatedItemsOutput) SetNextToken(v string) *ListOpsItemRelatedItemsOutput {
38472	s.NextToken = &v
38473	return s
38474}
38475
38476// SetSummaries sets the Summaries field's value.
38477func (s *ListOpsItemRelatedItemsOutput) SetSummaries(v []*OpsItemRelatedItemSummary) *ListOpsItemRelatedItemsOutput {
38478	s.Summaries = v
38479	return s
38480}
38481
38482type ListOpsMetadataInput struct {
38483	_ struct{} `type:"structure"`
38484
38485	// One or more filters to limit the number of OpsMetadata objects returned by
38486	// the call.
38487	Filters []*OpsMetadataFilter `type:"list"`
38488
38489	// The maximum number of items to return for this call. The call also returns
38490	// a token that you can specify in a subsequent call to get the next set of
38491	// results.
38492	MaxResults *int64 `min:"1" type:"integer"`
38493
38494	// A token to start the list. Use this token to get the next set of results.
38495	NextToken *string `type:"string"`
38496}
38497
38498// String returns the string representation
38499func (s ListOpsMetadataInput) String() string {
38500	return awsutil.Prettify(s)
38501}
38502
38503// GoString returns the string representation
38504func (s ListOpsMetadataInput) GoString() string {
38505	return s.String()
38506}
38507
38508// Validate inspects the fields of the type to determine if they are valid.
38509func (s *ListOpsMetadataInput) Validate() error {
38510	invalidParams := request.ErrInvalidParams{Context: "ListOpsMetadataInput"}
38511	if s.MaxResults != nil && *s.MaxResults < 1 {
38512		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
38513	}
38514	if s.Filters != nil {
38515		for i, v := range s.Filters {
38516			if v == nil {
38517				continue
38518			}
38519			if err := v.Validate(); err != nil {
38520				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
38521			}
38522		}
38523	}
38524
38525	if invalidParams.Len() > 0 {
38526		return invalidParams
38527	}
38528	return nil
38529}
38530
38531// SetFilters sets the Filters field's value.
38532func (s *ListOpsMetadataInput) SetFilters(v []*OpsMetadataFilter) *ListOpsMetadataInput {
38533	s.Filters = v
38534	return s
38535}
38536
38537// SetMaxResults sets the MaxResults field's value.
38538func (s *ListOpsMetadataInput) SetMaxResults(v int64) *ListOpsMetadataInput {
38539	s.MaxResults = &v
38540	return s
38541}
38542
38543// SetNextToken sets the NextToken field's value.
38544func (s *ListOpsMetadataInput) SetNextToken(v string) *ListOpsMetadataInput {
38545	s.NextToken = &v
38546	return s
38547}
38548
38549type ListOpsMetadataOutput struct {
38550	_ struct{} `type:"structure"`
38551
38552	// The token for the next set of items to return. Use this token to get the
38553	// next set of results.
38554	NextToken *string `type:"string"`
38555
38556	// Returns a list of OpsMetadata objects.
38557	OpsMetadataList []*OpsMetadata `min:"1" type:"list"`
38558}
38559
38560// String returns the string representation
38561func (s ListOpsMetadataOutput) String() string {
38562	return awsutil.Prettify(s)
38563}
38564
38565// GoString returns the string representation
38566func (s ListOpsMetadataOutput) GoString() string {
38567	return s.String()
38568}
38569
38570// SetNextToken sets the NextToken field's value.
38571func (s *ListOpsMetadataOutput) SetNextToken(v string) *ListOpsMetadataOutput {
38572	s.NextToken = &v
38573	return s
38574}
38575
38576// SetOpsMetadataList sets the OpsMetadataList field's value.
38577func (s *ListOpsMetadataOutput) SetOpsMetadataList(v []*OpsMetadata) *ListOpsMetadataOutput {
38578	s.OpsMetadataList = v
38579	return s
38580}
38581
38582type ListResourceComplianceSummariesInput struct {
38583	_ struct{} `type:"structure"`
38584
38585	// One or more filters. Use a filter to return a more specific list of results.
38586	Filters []*ComplianceStringFilter `type:"list"`
38587
38588	// The maximum number of items to return for this call. The call also returns
38589	// a token that you can specify in a subsequent call to get the next set of
38590	// results.
38591	MaxResults *int64 `min:"1" type:"integer"`
38592
38593	// A token to start the list. Use this token to get the next set of results.
38594	NextToken *string `type:"string"`
38595}
38596
38597// String returns the string representation
38598func (s ListResourceComplianceSummariesInput) String() string {
38599	return awsutil.Prettify(s)
38600}
38601
38602// GoString returns the string representation
38603func (s ListResourceComplianceSummariesInput) GoString() string {
38604	return s.String()
38605}
38606
38607// Validate inspects the fields of the type to determine if they are valid.
38608func (s *ListResourceComplianceSummariesInput) Validate() error {
38609	invalidParams := request.ErrInvalidParams{Context: "ListResourceComplianceSummariesInput"}
38610	if s.MaxResults != nil && *s.MaxResults < 1 {
38611		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
38612	}
38613	if s.Filters != nil {
38614		for i, v := range s.Filters {
38615			if v == nil {
38616				continue
38617			}
38618			if err := v.Validate(); err != nil {
38619				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
38620			}
38621		}
38622	}
38623
38624	if invalidParams.Len() > 0 {
38625		return invalidParams
38626	}
38627	return nil
38628}
38629
38630// SetFilters sets the Filters field's value.
38631func (s *ListResourceComplianceSummariesInput) SetFilters(v []*ComplianceStringFilter) *ListResourceComplianceSummariesInput {
38632	s.Filters = v
38633	return s
38634}
38635
38636// SetMaxResults sets the MaxResults field's value.
38637func (s *ListResourceComplianceSummariesInput) SetMaxResults(v int64) *ListResourceComplianceSummariesInput {
38638	s.MaxResults = &v
38639	return s
38640}
38641
38642// SetNextToken sets the NextToken field's value.
38643func (s *ListResourceComplianceSummariesInput) SetNextToken(v string) *ListResourceComplianceSummariesInput {
38644	s.NextToken = &v
38645	return s
38646}
38647
38648type ListResourceComplianceSummariesOutput struct {
38649	_ struct{} `type:"structure"`
38650
38651	// The token for the next set of items to return. Use this token to get the
38652	// next set of results.
38653	NextToken *string `type:"string"`
38654
38655	// A summary count for specified or targeted managed instances. Summary count
38656	// includes information about compliant and non-compliant State Manager associations,
38657	// patch status, or custom items according to the filter criteria that you specify.
38658	ResourceComplianceSummaryItems []*ResourceComplianceSummaryItem `type:"list"`
38659}
38660
38661// String returns the string representation
38662func (s ListResourceComplianceSummariesOutput) String() string {
38663	return awsutil.Prettify(s)
38664}
38665
38666// GoString returns the string representation
38667func (s ListResourceComplianceSummariesOutput) GoString() string {
38668	return s.String()
38669}
38670
38671// SetNextToken sets the NextToken field's value.
38672func (s *ListResourceComplianceSummariesOutput) SetNextToken(v string) *ListResourceComplianceSummariesOutput {
38673	s.NextToken = &v
38674	return s
38675}
38676
38677// SetResourceComplianceSummaryItems sets the ResourceComplianceSummaryItems field's value.
38678func (s *ListResourceComplianceSummariesOutput) SetResourceComplianceSummaryItems(v []*ResourceComplianceSummaryItem) *ListResourceComplianceSummariesOutput {
38679	s.ResourceComplianceSummaryItems = v
38680	return s
38681}
38682
38683type ListResourceDataSyncInput struct {
38684	_ struct{} `type:"structure"`
38685
38686	// The maximum number of items to return for this call. The call also returns
38687	// a token that you can specify in a subsequent call to get the next set of
38688	// results.
38689	MaxResults *int64 `min:"1" type:"integer"`
38690
38691	// A token to start the list. Use this token to get the next set of results.
38692	NextToken *string `type:"string"`
38693
38694	// View a list of resource data syncs according to the sync type. Specify SyncToDestination
38695	// to view resource data syncs that synchronize data to an Amazon S3 bucket.
38696	// Specify SyncFromSource to view resource data syncs from Organizations or
38697	// from multiple Amazon Web Services Regions.
38698	SyncType *string `min:"1" type:"string"`
38699}
38700
38701// String returns the string representation
38702func (s ListResourceDataSyncInput) String() string {
38703	return awsutil.Prettify(s)
38704}
38705
38706// GoString returns the string representation
38707func (s ListResourceDataSyncInput) GoString() string {
38708	return s.String()
38709}
38710
38711// Validate inspects the fields of the type to determine if they are valid.
38712func (s *ListResourceDataSyncInput) Validate() error {
38713	invalidParams := request.ErrInvalidParams{Context: "ListResourceDataSyncInput"}
38714	if s.MaxResults != nil && *s.MaxResults < 1 {
38715		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
38716	}
38717	if s.SyncType != nil && len(*s.SyncType) < 1 {
38718		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
38719	}
38720
38721	if invalidParams.Len() > 0 {
38722		return invalidParams
38723	}
38724	return nil
38725}
38726
38727// SetMaxResults sets the MaxResults field's value.
38728func (s *ListResourceDataSyncInput) SetMaxResults(v int64) *ListResourceDataSyncInput {
38729	s.MaxResults = &v
38730	return s
38731}
38732
38733// SetNextToken sets the NextToken field's value.
38734func (s *ListResourceDataSyncInput) SetNextToken(v string) *ListResourceDataSyncInput {
38735	s.NextToken = &v
38736	return s
38737}
38738
38739// SetSyncType sets the SyncType field's value.
38740func (s *ListResourceDataSyncInput) SetSyncType(v string) *ListResourceDataSyncInput {
38741	s.SyncType = &v
38742	return s
38743}
38744
38745type ListResourceDataSyncOutput struct {
38746	_ struct{} `type:"structure"`
38747
38748	// The token for the next set of items to return. Use this token to get the
38749	// next set of results.
38750	NextToken *string `type:"string"`
38751
38752	// A list of your current resource data sync configurations and their statuses.
38753	ResourceDataSyncItems []*ResourceDataSyncItem `type:"list"`
38754}
38755
38756// String returns the string representation
38757func (s ListResourceDataSyncOutput) String() string {
38758	return awsutil.Prettify(s)
38759}
38760
38761// GoString returns the string representation
38762func (s ListResourceDataSyncOutput) GoString() string {
38763	return s.String()
38764}
38765
38766// SetNextToken sets the NextToken field's value.
38767func (s *ListResourceDataSyncOutput) SetNextToken(v string) *ListResourceDataSyncOutput {
38768	s.NextToken = &v
38769	return s
38770}
38771
38772// SetResourceDataSyncItems sets the ResourceDataSyncItems field's value.
38773func (s *ListResourceDataSyncOutput) SetResourceDataSyncItems(v []*ResourceDataSyncItem) *ListResourceDataSyncOutput {
38774	s.ResourceDataSyncItems = v
38775	return s
38776}
38777
38778type ListTagsForResourceInput struct {
38779	_ struct{} `type:"structure"`
38780
38781	// The resource ID for which you want to see a list of tags.
38782	//
38783	// ResourceId is a required field
38784	ResourceId *string `type:"string" required:"true"`
38785
38786	// Returns a list of tags for a specific resource type.
38787	//
38788	// ResourceType is a required field
38789	ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"`
38790}
38791
38792// String returns the string representation
38793func (s ListTagsForResourceInput) String() string {
38794	return awsutil.Prettify(s)
38795}
38796
38797// GoString returns the string representation
38798func (s ListTagsForResourceInput) GoString() string {
38799	return s.String()
38800}
38801
38802// Validate inspects the fields of the type to determine if they are valid.
38803func (s *ListTagsForResourceInput) Validate() error {
38804	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
38805	if s.ResourceId == nil {
38806		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
38807	}
38808	if s.ResourceType == nil {
38809		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
38810	}
38811
38812	if invalidParams.Len() > 0 {
38813		return invalidParams
38814	}
38815	return nil
38816}
38817
38818// SetResourceId sets the ResourceId field's value.
38819func (s *ListTagsForResourceInput) SetResourceId(v string) *ListTagsForResourceInput {
38820	s.ResourceId = &v
38821	return s
38822}
38823
38824// SetResourceType sets the ResourceType field's value.
38825func (s *ListTagsForResourceInput) SetResourceType(v string) *ListTagsForResourceInput {
38826	s.ResourceType = &v
38827	return s
38828}
38829
38830type ListTagsForResourceOutput struct {
38831	_ struct{} `type:"structure"`
38832
38833	// A list of tags.
38834	TagList []*Tag `type:"list"`
38835}
38836
38837// String returns the string representation
38838func (s ListTagsForResourceOutput) String() string {
38839	return awsutil.Prettify(s)
38840}
38841
38842// GoString returns the string representation
38843func (s ListTagsForResourceOutput) GoString() string {
38844	return s.String()
38845}
38846
38847// SetTagList sets the TagList field's value.
38848func (s *ListTagsForResourceOutput) SetTagList(v []*Tag) *ListTagsForResourceOutput {
38849	s.TagList = v
38850	return s
38851}
38852
38853// Information about an Amazon Simple Storage Service (Amazon S3) bucket to
38854// write instance-level logs to.
38855//
38856// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
38857// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
38858// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
38859// information about how Amazon Web Services Systems Manager handles these options
38860// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
38861type LoggingInfo struct {
38862	_ struct{} `type:"structure"`
38863
38864	// The name of an S3 bucket where execution logs are stored .
38865	//
38866	// S3BucketName is a required field
38867	S3BucketName *string `min:"3" type:"string" required:"true"`
38868
38869	// (Optional) The S3 bucket subfolder.
38870	S3KeyPrefix *string `type:"string"`
38871
38872	// The Amazon Web Services Region where the S3 bucket is located.
38873	//
38874	// S3Region is a required field
38875	S3Region *string `min:"3" type:"string" required:"true"`
38876}
38877
38878// String returns the string representation
38879func (s LoggingInfo) String() string {
38880	return awsutil.Prettify(s)
38881}
38882
38883// GoString returns the string representation
38884func (s LoggingInfo) GoString() string {
38885	return s.String()
38886}
38887
38888// Validate inspects the fields of the type to determine if they are valid.
38889func (s *LoggingInfo) Validate() error {
38890	invalidParams := request.ErrInvalidParams{Context: "LoggingInfo"}
38891	if s.S3BucketName == nil {
38892		invalidParams.Add(request.NewErrParamRequired("S3BucketName"))
38893	}
38894	if s.S3BucketName != nil && len(*s.S3BucketName) < 3 {
38895		invalidParams.Add(request.NewErrParamMinLen("S3BucketName", 3))
38896	}
38897	if s.S3Region == nil {
38898		invalidParams.Add(request.NewErrParamRequired("S3Region"))
38899	}
38900	if s.S3Region != nil && len(*s.S3Region) < 3 {
38901		invalidParams.Add(request.NewErrParamMinLen("S3Region", 3))
38902	}
38903
38904	if invalidParams.Len() > 0 {
38905		return invalidParams
38906	}
38907	return nil
38908}
38909
38910// SetS3BucketName sets the S3BucketName field's value.
38911func (s *LoggingInfo) SetS3BucketName(v string) *LoggingInfo {
38912	s.S3BucketName = &v
38913	return s
38914}
38915
38916// SetS3KeyPrefix sets the S3KeyPrefix field's value.
38917func (s *LoggingInfo) SetS3KeyPrefix(v string) *LoggingInfo {
38918	s.S3KeyPrefix = &v
38919	return s
38920}
38921
38922// SetS3Region sets the S3Region field's value.
38923func (s *LoggingInfo) SetS3Region(v string) *LoggingInfo {
38924	s.S3Region = &v
38925	return s
38926}
38927
38928// The parameters for an AUTOMATION task type.
38929type MaintenanceWindowAutomationParameters struct {
38930	_ struct{} `type:"structure"`
38931
38932	// The version of an Automation runbook to use during task execution.
38933	DocumentVersion *string `type:"string"`
38934
38935	// The parameters for the AUTOMATION task.
38936	//
38937	// For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
38938	// and UpdateMaintenanceWindowTask.
38939	//
38940	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
38941	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
38942	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
38943	// information about how Amazon Web Services Systems Manager handles these options
38944	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
38945	//
38946	// TaskParameters has been deprecated. To specify parameters to pass to a task
38947	// when it runs, instead use the Parameters option in the TaskInvocationParameters
38948	// structure. For information about how Systems Manager handles these options
38949	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
38950	//
38951	// For AUTOMATION task types, Amazon Web Services Systems Manager ignores any
38952	// values specified for these parameters.
38953	Parameters map[string][]*string `min:"1" type:"map"`
38954}
38955
38956// String returns the string representation
38957func (s MaintenanceWindowAutomationParameters) String() string {
38958	return awsutil.Prettify(s)
38959}
38960
38961// GoString returns the string representation
38962func (s MaintenanceWindowAutomationParameters) GoString() string {
38963	return s.String()
38964}
38965
38966// Validate inspects the fields of the type to determine if they are valid.
38967func (s *MaintenanceWindowAutomationParameters) Validate() error {
38968	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowAutomationParameters"}
38969	if s.Parameters != nil && len(s.Parameters) < 1 {
38970		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
38971	}
38972
38973	if invalidParams.Len() > 0 {
38974		return invalidParams
38975	}
38976	return nil
38977}
38978
38979// SetDocumentVersion sets the DocumentVersion field's value.
38980func (s *MaintenanceWindowAutomationParameters) SetDocumentVersion(v string) *MaintenanceWindowAutomationParameters {
38981	s.DocumentVersion = &v
38982	return s
38983}
38984
38985// SetParameters sets the Parameters field's value.
38986func (s *MaintenanceWindowAutomationParameters) SetParameters(v map[string][]*string) *MaintenanceWindowAutomationParameters {
38987	s.Parameters = v
38988	return s
38989}
38990
38991// Describes the information about an execution of a maintenance window.
38992type MaintenanceWindowExecution struct {
38993	_ struct{} `type:"structure"`
38994
38995	// The time the execution finished.
38996	EndTime *time.Time `type:"timestamp"`
38997
38998	// The time the execution started.
38999	StartTime *time.Time `type:"timestamp"`
39000
39001	// The status of the execution.
39002	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
39003
39004	// The details explaining the status. Not available for all status values.
39005	StatusDetails *string `type:"string"`
39006
39007	// The ID of the maintenance window execution.
39008	WindowExecutionId *string `min:"36" type:"string"`
39009
39010	// The ID of the maintenance window.
39011	WindowId *string `min:"20" type:"string"`
39012}
39013
39014// String returns the string representation
39015func (s MaintenanceWindowExecution) String() string {
39016	return awsutil.Prettify(s)
39017}
39018
39019// GoString returns the string representation
39020func (s MaintenanceWindowExecution) GoString() string {
39021	return s.String()
39022}
39023
39024// SetEndTime sets the EndTime field's value.
39025func (s *MaintenanceWindowExecution) SetEndTime(v time.Time) *MaintenanceWindowExecution {
39026	s.EndTime = &v
39027	return s
39028}
39029
39030// SetStartTime sets the StartTime field's value.
39031func (s *MaintenanceWindowExecution) SetStartTime(v time.Time) *MaintenanceWindowExecution {
39032	s.StartTime = &v
39033	return s
39034}
39035
39036// SetStatus sets the Status field's value.
39037func (s *MaintenanceWindowExecution) SetStatus(v string) *MaintenanceWindowExecution {
39038	s.Status = &v
39039	return s
39040}
39041
39042// SetStatusDetails sets the StatusDetails field's value.
39043func (s *MaintenanceWindowExecution) SetStatusDetails(v string) *MaintenanceWindowExecution {
39044	s.StatusDetails = &v
39045	return s
39046}
39047
39048// SetWindowExecutionId sets the WindowExecutionId field's value.
39049func (s *MaintenanceWindowExecution) SetWindowExecutionId(v string) *MaintenanceWindowExecution {
39050	s.WindowExecutionId = &v
39051	return s
39052}
39053
39054// SetWindowId sets the WindowId field's value.
39055func (s *MaintenanceWindowExecution) SetWindowId(v string) *MaintenanceWindowExecution {
39056	s.WindowId = &v
39057	return s
39058}
39059
39060// Information about a task execution performed as part of a maintenance window
39061// execution.
39062type MaintenanceWindowExecutionTaskIdentity struct {
39063	_ struct{} `type:"structure"`
39064
39065	// The time the task execution finished.
39066	EndTime *time.Time `type:"timestamp"`
39067
39068	// The time the task execution started.
39069	StartTime *time.Time `type:"timestamp"`
39070
39071	// The status of the task execution.
39072	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
39073
39074	// The details explaining the status of the task execution. Not available for
39075	// all status values.
39076	StatusDetails *string `type:"string"`
39077
39078	// The Amazon Resource Name (ARN) of the task that ran.
39079	TaskArn *string `min:"1" type:"string"`
39080
39081	// The ID of the specific task execution in the maintenance window execution.
39082	TaskExecutionId *string `min:"36" type:"string"`
39083
39084	// The type of task that ran.
39085	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
39086
39087	// The ID of the maintenance window execution that ran the task.
39088	WindowExecutionId *string `min:"36" type:"string"`
39089}
39090
39091// String returns the string representation
39092func (s MaintenanceWindowExecutionTaskIdentity) String() string {
39093	return awsutil.Prettify(s)
39094}
39095
39096// GoString returns the string representation
39097func (s MaintenanceWindowExecutionTaskIdentity) GoString() string {
39098	return s.String()
39099}
39100
39101// SetEndTime sets the EndTime field's value.
39102func (s *MaintenanceWindowExecutionTaskIdentity) SetEndTime(v time.Time) *MaintenanceWindowExecutionTaskIdentity {
39103	s.EndTime = &v
39104	return s
39105}
39106
39107// SetStartTime sets the StartTime field's value.
39108func (s *MaintenanceWindowExecutionTaskIdentity) SetStartTime(v time.Time) *MaintenanceWindowExecutionTaskIdentity {
39109	s.StartTime = &v
39110	return s
39111}
39112
39113// SetStatus sets the Status field's value.
39114func (s *MaintenanceWindowExecutionTaskIdentity) SetStatus(v string) *MaintenanceWindowExecutionTaskIdentity {
39115	s.Status = &v
39116	return s
39117}
39118
39119// SetStatusDetails sets the StatusDetails field's value.
39120func (s *MaintenanceWindowExecutionTaskIdentity) SetStatusDetails(v string) *MaintenanceWindowExecutionTaskIdentity {
39121	s.StatusDetails = &v
39122	return s
39123}
39124
39125// SetTaskArn sets the TaskArn field's value.
39126func (s *MaintenanceWindowExecutionTaskIdentity) SetTaskArn(v string) *MaintenanceWindowExecutionTaskIdentity {
39127	s.TaskArn = &v
39128	return s
39129}
39130
39131// SetTaskExecutionId sets the TaskExecutionId field's value.
39132func (s *MaintenanceWindowExecutionTaskIdentity) SetTaskExecutionId(v string) *MaintenanceWindowExecutionTaskIdentity {
39133	s.TaskExecutionId = &v
39134	return s
39135}
39136
39137// SetTaskType sets the TaskType field's value.
39138func (s *MaintenanceWindowExecutionTaskIdentity) SetTaskType(v string) *MaintenanceWindowExecutionTaskIdentity {
39139	s.TaskType = &v
39140	return s
39141}
39142
39143// SetWindowExecutionId sets the WindowExecutionId field's value.
39144func (s *MaintenanceWindowExecutionTaskIdentity) SetWindowExecutionId(v string) *MaintenanceWindowExecutionTaskIdentity {
39145	s.WindowExecutionId = &v
39146	return s
39147}
39148
39149// Describes the information about a task invocation for a particular target
39150// as part of a task execution performed as part of a maintenance window execution.
39151type MaintenanceWindowExecutionTaskInvocationIdentity struct {
39152	_ struct{} `type:"structure"`
39153
39154	// The time the invocation finished.
39155	EndTime *time.Time `type:"timestamp"`
39156
39157	// The ID of the action performed in the service that actually handled the task
39158	// invocation. If the task type is RUN_COMMAND, this value is the command ID.
39159	ExecutionId *string `type:"string"`
39160
39161	// The ID of the task invocation.
39162	InvocationId *string `min:"36" type:"string"`
39163
39164	// User-provided value that was specified when the target was registered with
39165	// the maintenance window. This was also included in any Amazon CloudWatch Events
39166	// events raised during the task invocation.
39167	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
39168
39169	// The parameters that were provided for the invocation when it was run.
39170	Parameters *string `type:"string" sensitive:"true"`
39171
39172	// The time the invocation started.
39173	StartTime *time.Time `type:"timestamp"`
39174
39175	// The status of the task invocation.
39176	Status *string `type:"string" enum:"MaintenanceWindowExecutionStatus"`
39177
39178	// The details explaining the status of the task invocation. Not available for
39179	// all status values.
39180	StatusDetails *string `type:"string"`
39181
39182	// The ID of the specific task execution in the maintenance window execution.
39183	TaskExecutionId *string `min:"36" type:"string"`
39184
39185	// The task type.
39186	TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"`
39187
39188	// The ID of the maintenance window execution that ran the task.
39189	WindowExecutionId *string `min:"36" type:"string"`
39190
39191	// The ID of the target definition in this maintenance window the invocation
39192	// was performed for.
39193	WindowTargetId *string `type:"string"`
39194}
39195
39196// String returns the string representation
39197func (s MaintenanceWindowExecutionTaskInvocationIdentity) String() string {
39198	return awsutil.Prettify(s)
39199}
39200
39201// GoString returns the string representation
39202func (s MaintenanceWindowExecutionTaskInvocationIdentity) GoString() string {
39203	return s.String()
39204}
39205
39206// SetEndTime sets the EndTime field's value.
39207func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetEndTime(v time.Time) *MaintenanceWindowExecutionTaskInvocationIdentity {
39208	s.EndTime = &v
39209	return s
39210}
39211
39212// SetExecutionId sets the ExecutionId field's value.
39213func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetExecutionId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39214	s.ExecutionId = &v
39215	return s
39216}
39217
39218// SetInvocationId sets the InvocationId field's value.
39219func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetInvocationId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39220	s.InvocationId = &v
39221	return s
39222}
39223
39224// SetOwnerInformation sets the OwnerInformation field's value.
39225func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetOwnerInformation(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39226	s.OwnerInformation = &v
39227	return s
39228}
39229
39230// SetParameters sets the Parameters field's value.
39231func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetParameters(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39232	s.Parameters = &v
39233	return s
39234}
39235
39236// SetStartTime sets the StartTime field's value.
39237func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetStartTime(v time.Time) *MaintenanceWindowExecutionTaskInvocationIdentity {
39238	s.StartTime = &v
39239	return s
39240}
39241
39242// SetStatus sets the Status field's value.
39243func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetStatus(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39244	s.Status = &v
39245	return s
39246}
39247
39248// SetStatusDetails sets the StatusDetails field's value.
39249func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetStatusDetails(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39250	s.StatusDetails = &v
39251	return s
39252}
39253
39254// SetTaskExecutionId sets the TaskExecutionId field's value.
39255func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetTaskExecutionId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39256	s.TaskExecutionId = &v
39257	return s
39258}
39259
39260// SetTaskType sets the TaskType field's value.
39261func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetTaskType(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39262	s.TaskType = &v
39263	return s
39264}
39265
39266// SetWindowExecutionId sets the WindowExecutionId field's value.
39267func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetWindowExecutionId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39268	s.WindowExecutionId = &v
39269	return s
39270}
39271
39272// SetWindowTargetId sets the WindowTargetId field's value.
39273func (s *MaintenanceWindowExecutionTaskInvocationIdentity) SetWindowTargetId(v string) *MaintenanceWindowExecutionTaskInvocationIdentity {
39274	s.WindowTargetId = &v
39275	return s
39276}
39277
39278// Filter used in the request. Supported filter keys depend on the API operation
39279// that includes the filter. API operations that use MaintenanceWindowFilter>
39280// include the following:
39281//
39282//    * DescribeMaintenanceWindowExecutions
39283//
39284//    * DescribeMaintenanceWindowExecutionTaskInvocations
39285//
39286//    * DescribeMaintenanceWindowExecutionTasks
39287//
39288//    * DescribeMaintenanceWindows
39289//
39290//    * DescribeMaintenanceWindowTargets
39291//
39292//    * DescribeMaintenanceWindowTasks
39293type MaintenanceWindowFilter struct {
39294	_ struct{} `type:"structure"`
39295
39296	// The name of the filter.
39297	Key *string `min:"1" type:"string"`
39298
39299	// The filter values.
39300	Values []*string `type:"list"`
39301}
39302
39303// String returns the string representation
39304func (s MaintenanceWindowFilter) String() string {
39305	return awsutil.Prettify(s)
39306}
39307
39308// GoString returns the string representation
39309func (s MaintenanceWindowFilter) GoString() string {
39310	return s.String()
39311}
39312
39313// Validate inspects the fields of the type to determine if they are valid.
39314func (s *MaintenanceWindowFilter) Validate() error {
39315	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowFilter"}
39316	if s.Key != nil && len(*s.Key) < 1 {
39317		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
39318	}
39319
39320	if invalidParams.Len() > 0 {
39321		return invalidParams
39322	}
39323	return nil
39324}
39325
39326// SetKey sets the Key field's value.
39327func (s *MaintenanceWindowFilter) SetKey(v string) *MaintenanceWindowFilter {
39328	s.Key = &v
39329	return s
39330}
39331
39332// SetValues sets the Values field's value.
39333func (s *MaintenanceWindowFilter) SetValues(v []*string) *MaintenanceWindowFilter {
39334	s.Values = v
39335	return s
39336}
39337
39338// Information about the maintenance window.
39339type MaintenanceWindowIdentity struct {
39340	_ struct{} `type:"structure"`
39341
39342	// The number of hours before the end of the maintenance window that Amazon
39343	// Web Services Systems Manager stops scheduling new tasks for execution.
39344	Cutoff *int64 `type:"integer"`
39345
39346	// A description of the maintenance window.
39347	Description *string `min:"1" type:"string" sensitive:"true"`
39348
39349	// The duration of the maintenance window in hours.
39350	Duration *int64 `min:"1" type:"integer"`
39351
39352	// Indicates whether the maintenance window is enabled.
39353	Enabled *bool `type:"boolean"`
39354
39355	// The date and time, in ISO-8601 Extended format, for when the maintenance
39356	// window is scheduled to become inactive.
39357	EndDate *string `type:"string"`
39358
39359	// The name of the maintenance window.
39360	Name *string `min:"3" type:"string"`
39361
39362	// The next time the maintenance window will actually run, taking into account
39363	// any specified times for the maintenance window to become active or inactive.
39364	NextExecutionTime *string `type:"string"`
39365
39366	// The schedule of the maintenance window in the form of a cron or rate expression.
39367	Schedule *string `min:"1" type:"string"`
39368
39369	// The number of days to wait to run a maintenance window after the scheduled
39370	// cron expression date and time.
39371	ScheduleOffset *int64 `min:"1" type:"integer"`
39372
39373	// The time zone that the scheduled maintenance window executions are based
39374	// on, in Internet Assigned Numbers Authority (IANA) format.
39375	ScheduleTimezone *string `type:"string"`
39376
39377	// The date and time, in ISO-8601 Extended format, for when the maintenance
39378	// window is scheduled to become active.
39379	StartDate *string `type:"string"`
39380
39381	// The ID of the maintenance window.
39382	WindowId *string `min:"20" type:"string"`
39383}
39384
39385// String returns the string representation
39386func (s MaintenanceWindowIdentity) String() string {
39387	return awsutil.Prettify(s)
39388}
39389
39390// GoString returns the string representation
39391func (s MaintenanceWindowIdentity) GoString() string {
39392	return s.String()
39393}
39394
39395// SetCutoff sets the Cutoff field's value.
39396func (s *MaintenanceWindowIdentity) SetCutoff(v int64) *MaintenanceWindowIdentity {
39397	s.Cutoff = &v
39398	return s
39399}
39400
39401// SetDescription sets the Description field's value.
39402func (s *MaintenanceWindowIdentity) SetDescription(v string) *MaintenanceWindowIdentity {
39403	s.Description = &v
39404	return s
39405}
39406
39407// SetDuration sets the Duration field's value.
39408func (s *MaintenanceWindowIdentity) SetDuration(v int64) *MaintenanceWindowIdentity {
39409	s.Duration = &v
39410	return s
39411}
39412
39413// SetEnabled sets the Enabled field's value.
39414func (s *MaintenanceWindowIdentity) SetEnabled(v bool) *MaintenanceWindowIdentity {
39415	s.Enabled = &v
39416	return s
39417}
39418
39419// SetEndDate sets the EndDate field's value.
39420func (s *MaintenanceWindowIdentity) SetEndDate(v string) *MaintenanceWindowIdentity {
39421	s.EndDate = &v
39422	return s
39423}
39424
39425// SetName sets the Name field's value.
39426func (s *MaintenanceWindowIdentity) SetName(v string) *MaintenanceWindowIdentity {
39427	s.Name = &v
39428	return s
39429}
39430
39431// SetNextExecutionTime sets the NextExecutionTime field's value.
39432func (s *MaintenanceWindowIdentity) SetNextExecutionTime(v string) *MaintenanceWindowIdentity {
39433	s.NextExecutionTime = &v
39434	return s
39435}
39436
39437// SetSchedule sets the Schedule field's value.
39438func (s *MaintenanceWindowIdentity) SetSchedule(v string) *MaintenanceWindowIdentity {
39439	s.Schedule = &v
39440	return s
39441}
39442
39443// SetScheduleOffset sets the ScheduleOffset field's value.
39444func (s *MaintenanceWindowIdentity) SetScheduleOffset(v int64) *MaintenanceWindowIdentity {
39445	s.ScheduleOffset = &v
39446	return s
39447}
39448
39449// SetScheduleTimezone sets the ScheduleTimezone field's value.
39450func (s *MaintenanceWindowIdentity) SetScheduleTimezone(v string) *MaintenanceWindowIdentity {
39451	s.ScheduleTimezone = &v
39452	return s
39453}
39454
39455// SetStartDate sets the StartDate field's value.
39456func (s *MaintenanceWindowIdentity) SetStartDate(v string) *MaintenanceWindowIdentity {
39457	s.StartDate = &v
39458	return s
39459}
39460
39461// SetWindowId sets the WindowId field's value.
39462func (s *MaintenanceWindowIdentity) SetWindowId(v string) *MaintenanceWindowIdentity {
39463	s.WindowId = &v
39464	return s
39465}
39466
39467// The maintenance window to which the specified target belongs.
39468type MaintenanceWindowIdentityForTarget struct {
39469	_ struct{} `type:"structure"`
39470
39471	// The name of the maintenance window.
39472	Name *string `min:"3" type:"string"`
39473
39474	// The ID of the maintenance window.
39475	WindowId *string `min:"20" type:"string"`
39476}
39477
39478// String returns the string representation
39479func (s MaintenanceWindowIdentityForTarget) String() string {
39480	return awsutil.Prettify(s)
39481}
39482
39483// GoString returns the string representation
39484func (s MaintenanceWindowIdentityForTarget) GoString() string {
39485	return s.String()
39486}
39487
39488// SetName sets the Name field's value.
39489func (s *MaintenanceWindowIdentityForTarget) SetName(v string) *MaintenanceWindowIdentityForTarget {
39490	s.Name = &v
39491	return s
39492}
39493
39494// SetWindowId sets the WindowId field's value.
39495func (s *MaintenanceWindowIdentityForTarget) SetWindowId(v string) *MaintenanceWindowIdentityForTarget {
39496	s.WindowId = &v
39497	return s
39498}
39499
39500// The parameters for a LAMBDA task type.
39501//
39502// For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
39503// and UpdateMaintenanceWindowTask.
39504//
39505// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
39506// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
39507// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
39508// information about how Amazon Web Services Systems Manager handles these options
39509// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39510//
39511// TaskParameters has been deprecated. To specify parameters to pass to a task
39512// when it runs, instead use the Parameters option in the TaskInvocationParameters
39513// structure. For information about how Systems Manager handles these options
39514// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39515//
39516// For Lambda tasks, Systems Manager ignores any values specified for TaskParameters
39517// and LoggingInfo.
39518type MaintenanceWindowLambdaParameters struct {
39519	_ struct{} `type:"structure"`
39520
39521	// Pass client-specific information to the Lambda function that you are invoking.
39522	// You can then process the client information in your Lambda function as you
39523	// choose through the context variable.
39524	ClientContext *string `min:"1" type:"string"`
39525
39526	// JSON to provide to your Lambda function as input.
39527	//
39528	// Payload is automatically base64 encoded/decoded by the SDK.
39529	Payload []byte `type:"blob" sensitive:"true"`
39530
39531	// (Optional) Specify an Lambda function version or alias name. If you specify
39532	// a function version, the operation uses the qualified function Amazon Resource
39533	// Name (ARN) to invoke a specific Lambda function. If you specify an alias
39534	// name, the operation uses the alias ARN to invoke the Lambda function version
39535	// to which the alias points.
39536	Qualifier *string `min:"1" type:"string"`
39537}
39538
39539// String returns the string representation
39540func (s MaintenanceWindowLambdaParameters) String() string {
39541	return awsutil.Prettify(s)
39542}
39543
39544// GoString returns the string representation
39545func (s MaintenanceWindowLambdaParameters) GoString() string {
39546	return s.String()
39547}
39548
39549// Validate inspects the fields of the type to determine if they are valid.
39550func (s *MaintenanceWindowLambdaParameters) Validate() error {
39551	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowLambdaParameters"}
39552	if s.ClientContext != nil && len(*s.ClientContext) < 1 {
39553		invalidParams.Add(request.NewErrParamMinLen("ClientContext", 1))
39554	}
39555	if s.Qualifier != nil && len(*s.Qualifier) < 1 {
39556		invalidParams.Add(request.NewErrParamMinLen("Qualifier", 1))
39557	}
39558
39559	if invalidParams.Len() > 0 {
39560		return invalidParams
39561	}
39562	return nil
39563}
39564
39565// SetClientContext sets the ClientContext field's value.
39566func (s *MaintenanceWindowLambdaParameters) SetClientContext(v string) *MaintenanceWindowLambdaParameters {
39567	s.ClientContext = &v
39568	return s
39569}
39570
39571// SetPayload sets the Payload field's value.
39572func (s *MaintenanceWindowLambdaParameters) SetPayload(v []byte) *MaintenanceWindowLambdaParameters {
39573	s.Payload = v
39574	return s
39575}
39576
39577// SetQualifier sets the Qualifier field's value.
39578func (s *MaintenanceWindowLambdaParameters) SetQualifier(v string) *MaintenanceWindowLambdaParameters {
39579	s.Qualifier = &v
39580	return s
39581}
39582
39583// The parameters for a RUN_COMMAND task type.
39584//
39585// For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
39586// and UpdateMaintenanceWindowTask.
39587//
39588// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
39589// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
39590// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
39591// information about how Amazon Web Services Systems Manager handles these options
39592// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39593//
39594// TaskParameters has been deprecated. To specify parameters to pass to a task
39595// when it runs, instead use the Parameters option in the TaskInvocationParameters
39596// structure. For information about how Systems Manager handles these options
39597// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39598//
39599// For RUN_COMMAND tasks, Systems Manager uses specified values for TaskParameters
39600// and LoggingInfo only if no values are specified for TaskInvocationParameters.
39601type MaintenanceWindowRunCommandParameters struct {
39602	_ struct{} `type:"structure"`
39603
39604	// Configuration options for sending command output to Amazon CloudWatch Logs.
39605	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
39606
39607	// Information about the commands to run.
39608	Comment *string `type:"string"`
39609
39610	// The SHA-256 or SHA-1 hash created by the system when the document was created.
39611	// SHA-1 hashes have been deprecated.
39612	DocumentHash *string `type:"string"`
39613
39614	// SHA-256 or SHA-1. SHA-1 hashes have been deprecated.
39615	DocumentHashType *string `type:"string" enum:"DocumentHashType"`
39616
39617	// The Amazon Web Services Systems Manager document (SSM document) version to
39618	// use in the request. You can specify $DEFAULT, $LATEST, or a specific version
39619	// number. If you run commands by using the Amazon Web Services CLI, then you
39620	// must escape the first two options by using a backslash. If you specify a
39621	// version number, then you don't need to use the backslash. For example:
39622	//
39623	// --document-version "\$DEFAULT"
39624	//
39625	// --document-version "\$LATEST"
39626	//
39627	// --document-version "3"
39628	DocumentVersion *string `type:"string"`
39629
39630	// Configurations for sending notifications about command status changes on
39631	// a per-instance basis.
39632	NotificationConfig *NotificationConfig `type:"structure"`
39633
39634	// The name of the Amazon Simple Storage Service (Amazon S3) bucket.
39635	OutputS3BucketName *string `min:"3" type:"string"`
39636
39637	// The S3 bucket subfolder.
39638	OutputS3KeyPrefix *string `type:"string"`
39639
39640	// The parameters for the RUN_COMMAND task execution.
39641	Parameters map[string][]*string `type:"map"`
39642
39643	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
39644	// service role to use to publish Amazon Simple Notification Service (Amazon
39645	// SNS) notifications for maintenance window Run Command tasks.
39646	ServiceRoleArn *string `type:"string"`
39647
39648	// If this time is reached and the command hasn't already started running, it
39649	// doesn't run.
39650	TimeoutSeconds *int64 `min:"30" type:"integer"`
39651}
39652
39653// String returns the string representation
39654func (s MaintenanceWindowRunCommandParameters) String() string {
39655	return awsutil.Prettify(s)
39656}
39657
39658// GoString returns the string representation
39659func (s MaintenanceWindowRunCommandParameters) GoString() string {
39660	return s.String()
39661}
39662
39663// Validate inspects the fields of the type to determine if they are valid.
39664func (s *MaintenanceWindowRunCommandParameters) Validate() error {
39665	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowRunCommandParameters"}
39666	if s.OutputS3BucketName != nil && len(*s.OutputS3BucketName) < 3 {
39667		invalidParams.Add(request.NewErrParamMinLen("OutputS3BucketName", 3))
39668	}
39669	if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 30 {
39670		invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 30))
39671	}
39672	if s.CloudWatchOutputConfig != nil {
39673		if err := s.CloudWatchOutputConfig.Validate(); err != nil {
39674			invalidParams.AddNested("CloudWatchOutputConfig", err.(request.ErrInvalidParams))
39675		}
39676	}
39677
39678	if invalidParams.Len() > 0 {
39679		return invalidParams
39680	}
39681	return nil
39682}
39683
39684// SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
39685func (s *MaintenanceWindowRunCommandParameters) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *MaintenanceWindowRunCommandParameters {
39686	s.CloudWatchOutputConfig = v
39687	return s
39688}
39689
39690// SetComment sets the Comment field's value.
39691func (s *MaintenanceWindowRunCommandParameters) SetComment(v string) *MaintenanceWindowRunCommandParameters {
39692	s.Comment = &v
39693	return s
39694}
39695
39696// SetDocumentHash sets the DocumentHash field's value.
39697func (s *MaintenanceWindowRunCommandParameters) SetDocumentHash(v string) *MaintenanceWindowRunCommandParameters {
39698	s.DocumentHash = &v
39699	return s
39700}
39701
39702// SetDocumentHashType sets the DocumentHashType field's value.
39703func (s *MaintenanceWindowRunCommandParameters) SetDocumentHashType(v string) *MaintenanceWindowRunCommandParameters {
39704	s.DocumentHashType = &v
39705	return s
39706}
39707
39708// SetDocumentVersion sets the DocumentVersion field's value.
39709func (s *MaintenanceWindowRunCommandParameters) SetDocumentVersion(v string) *MaintenanceWindowRunCommandParameters {
39710	s.DocumentVersion = &v
39711	return s
39712}
39713
39714// SetNotificationConfig sets the NotificationConfig field's value.
39715func (s *MaintenanceWindowRunCommandParameters) SetNotificationConfig(v *NotificationConfig) *MaintenanceWindowRunCommandParameters {
39716	s.NotificationConfig = v
39717	return s
39718}
39719
39720// SetOutputS3BucketName sets the OutputS3BucketName field's value.
39721func (s *MaintenanceWindowRunCommandParameters) SetOutputS3BucketName(v string) *MaintenanceWindowRunCommandParameters {
39722	s.OutputS3BucketName = &v
39723	return s
39724}
39725
39726// SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
39727func (s *MaintenanceWindowRunCommandParameters) SetOutputS3KeyPrefix(v string) *MaintenanceWindowRunCommandParameters {
39728	s.OutputS3KeyPrefix = &v
39729	return s
39730}
39731
39732// SetParameters sets the Parameters field's value.
39733func (s *MaintenanceWindowRunCommandParameters) SetParameters(v map[string][]*string) *MaintenanceWindowRunCommandParameters {
39734	s.Parameters = v
39735	return s
39736}
39737
39738// SetServiceRoleArn sets the ServiceRoleArn field's value.
39739func (s *MaintenanceWindowRunCommandParameters) SetServiceRoleArn(v string) *MaintenanceWindowRunCommandParameters {
39740	s.ServiceRoleArn = &v
39741	return s
39742}
39743
39744// SetTimeoutSeconds sets the TimeoutSeconds field's value.
39745func (s *MaintenanceWindowRunCommandParameters) SetTimeoutSeconds(v int64) *MaintenanceWindowRunCommandParameters {
39746	s.TimeoutSeconds = &v
39747	return s
39748}
39749
39750// The parameters for a STEP_FUNCTIONS task.
39751//
39752// For information about specifying and updating task parameters, see RegisterTaskWithMaintenanceWindow
39753// and UpdateMaintenanceWindowTask.
39754//
39755// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
39756// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
39757// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
39758// information about how Amazon Web Services Systems Manager handles these options
39759// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39760//
39761// TaskParameters has been deprecated. To specify parameters to pass to a task
39762// when it runs, instead use the Parameters option in the TaskInvocationParameters
39763// structure. For information about how Systems Manager handles these options
39764// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39765//
39766// For Step Functions tasks, Systems Manager ignores any values specified for
39767// TaskParameters and LoggingInfo.
39768type MaintenanceWindowStepFunctionsParameters struct {
39769	_ struct{} `type:"structure"`
39770
39771	// The inputs for the STEP_FUNCTIONS task.
39772	Input *string `type:"string" sensitive:"true"`
39773
39774	// The name of the STEP_FUNCTIONS task.
39775	Name *string `min:"1" type:"string"`
39776}
39777
39778// String returns the string representation
39779func (s MaintenanceWindowStepFunctionsParameters) String() string {
39780	return awsutil.Prettify(s)
39781}
39782
39783// GoString returns the string representation
39784func (s MaintenanceWindowStepFunctionsParameters) GoString() string {
39785	return s.String()
39786}
39787
39788// Validate inspects the fields of the type to determine if they are valid.
39789func (s *MaintenanceWindowStepFunctionsParameters) Validate() error {
39790	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowStepFunctionsParameters"}
39791	if s.Name != nil && len(*s.Name) < 1 {
39792		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
39793	}
39794
39795	if invalidParams.Len() > 0 {
39796		return invalidParams
39797	}
39798	return nil
39799}
39800
39801// SetInput sets the Input field's value.
39802func (s *MaintenanceWindowStepFunctionsParameters) SetInput(v string) *MaintenanceWindowStepFunctionsParameters {
39803	s.Input = &v
39804	return s
39805}
39806
39807// SetName sets the Name field's value.
39808func (s *MaintenanceWindowStepFunctionsParameters) SetName(v string) *MaintenanceWindowStepFunctionsParameters {
39809	s.Name = &v
39810	return s
39811}
39812
39813// The target registered with the maintenance window.
39814type MaintenanceWindowTarget struct {
39815	_ struct{} `type:"structure"`
39816
39817	// A description for the target.
39818	Description *string `min:"1" type:"string" sensitive:"true"`
39819
39820	// The name for the maintenance window target.
39821	Name *string `min:"3" type:"string"`
39822
39823	// A user-provided value that will be included in any Amazon CloudWatch Events
39824	// events that are raised while running tasks for these targets in this maintenance
39825	// window.
39826	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
39827
39828	// The type of target that is being registered with the maintenance window.
39829	ResourceType *string `type:"string" enum:"MaintenanceWindowResourceType"`
39830
39831	// The targets, either instances or tags.
39832	//
39833	// Specify instances using the following format:
39834	//
39835	// Key=instanceids,Values=<instanceid1>,<instanceid2>
39836	//
39837	// Tags are specified using the following format:
39838	//
39839	// Key=<tag name>,Values=<tag value>.
39840	Targets []*Target `type:"list"`
39841
39842	// The ID of the maintenance window to register the target with.
39843	WindowId *string `min:"20" type:"string"`
39844
39845	// The ID of the target.
39846	WindowTargetId *string `min:"36" type:"string"`
39847}
39848
39849// String returns the string representation
39850func (s MaintenanceWindowTarget) String() string {
39851	return awsutil.Prettify(s)
39852}
39853
39854// GoString returns the string representation
39855func (s MaintenanceWindowTarget) GoString() string {
39856	return s.String()
39857}
39858
39859// SetDescription sets the Description field's value.
39860func (s *MaintenanceWindowTarget) SetDescription(v string) *MaintenanceWindowTarget {
39861	s.Description = &v
39862	return s
39863}
39864
39865// SetName sets the Name field's value.
39866func (s *MaintenanceWindowTarget) SetName(v string) *MaintenanceWindowTarget {
39867	s.Name = &v
39868	return s
39869}
39870
39871// SetOwnerInformation sets the OwnerInformation field's value.
39872func (s *MaintenanceWindowTarget) SetOwnerInformation(v string) *MaintenanceWindowTarget {
39873	s.OwnerInformation = &v
39874	return s
39875}
39876
39877// SetResourceType sets the ResourceType field's value.
39878func (s *MaintenanceWindowTarget) SetResourceType(v string) *MaintenanceWindowTarget {
39879	s.ResourceType = &v
39880	return s
39881}
39882
39883// SetTargets sets the Targets field's value.
39884func (s *MaintenanceWindowTarget) SetTargets(v []*Target) *MaintenanceWindowTarget {
39885	s.Targets = v
39886	return s
39887}
39888
39889// SetWindowId sets the WindowId field's value.
39890func (s *MaintenanceWindowTarget) SetWindowId(v string) *MaintenanceWindowTarget {
39891	s.WindowId = &v
39892	return s
39893}
39894
39895// SetWindowTargetId sets the WindowTargetId field's value.
39896func (s *MaintenanceWindowTarget) SetWindowTargetId(v string) *MaintenanceWindowTarget {
39897	s.WindowTargetId = &v
39898	return s
39899}
39900
39901// Information about a task defined for a maintenance window.
39902type MaintenanceWindowTask struct {
39903	_ struct{} `type:"structure"`
39904
39905	// A description of the task.
39906	Description *string `min:"1" type:"string" sensitive:"true"`
39907
39908	// Information about an S3 bucket to write task-level logs to.
39909	//
39910	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
39911	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
39912	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
39913	// information about how Amazon Web Services Systems Manager handles these options
39914	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39915	LoggingInfo *LoggingInfo `type:"structure"`
39916
39917	// The maximum number of targets this task can be run for, in parallel.
39918	MaxConcurrency *string `min:"1" type:"string"`
39919
39920	// The maximum number of errors allowed before this task stops being scheduled.
39921	MaxErrors *string `min:"1" type:"string"`
39922
39923	// The task name.
39924	Name *string `min:"3" type:"string"`
39925
39926	// The priority of the task in the maintenance window. The lower the number,
39927	// the higher the priority. Tasks that have the same priority are scheduled
39928	// in parallel.
39929	Priority *int64 `type:"integer"`
39930
39931	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
39932	// service role to use to publish Amazon Simple Notification Service (Amazon
39933	// SNS) notifications for maintenance window Run Command tasks.
39934	ServiceRoleArn *string `type:"string"`
39935
39936	// The targets (either instances or tags). Instances are specified using Key=instanceids,Values=<instanceid1>,<instanceid2>.
39937	// Tags are specified using Key=<tag name>,Values=<tag value>.
39938	Targets []*Target `type:"list"`
39939
39940	// The resource that the task uses during execution. For RUN_COMMAND and AUTOMATION
39941	// task types, TaskArn is the Amazon Web Services Systems Manager (SSM document)
39942	// name or ARN. For LAMBDA tasks, it's the function name or ARN. For STEP_FUNCTIONS
39943	// tasks, it's the state machine ARN.
39944	TaskArn *string `min:"1" type:"string"`
39945
39946	// The parameters that should be passed to the task when it is run.
39947	//
39948	// TaskParameters has been deprecated. To specify parameters to pass to a task
39949	// when it runs, instead use the Parameters option in the TaskInvocationParameters
39950	// structure. For information about how Systems Manager handles these options
39951	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
39952	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
39953
39954	// The type of task.
39955	Type *string `type:"string" enum:"MaintenanceWindowTaskType"`
39956
39957	// The ID of the maintenance window where the task is registered.
39958	WindowId *string `min:"20" type:"string"`
39959
39960	// The task ID.
39961	WindowTaskId *string `min:"36" type:"string"`
39962}
39963
39964// String returns the string representation
39965func (s MaintenanceWindowTask) String() string {
39966	return awsutil.Prettify(s)
39967}
39968
39969// GoString returns the string representation
39970func (s MaintenanceWindowTask) GoString() string {
39971	return s.String()
39972}
39973
39974// SetDescription sets the Description field's value.
39975func (s *MaintenanceWindowTask) SetDescription(v string) *MaintenanceWindowTask {
39976	s.Description = &v
39977	return s
39978}
39979
39980// SetLoggingInfo sets the LoggingInfo field's value.
39981func (s *MaintenanceWindowTask) SetLoggingInfo(v *LoggingInfo) *MaintenanceWindowTask {
39982	s.LoggingInfo = v
39983	return s
39984}
39985
39986// SetMaxConcurrency sets the MaxConcurrency field's value.
39987func (s *MaintenanceWindowTask) SetMaxConcurrency(v string) *MaintenanceWindowTask {
39988	s.MaxConcurrency = &v
39989	return s
39990}
39991
39992// SetMaxErrors sets the MaxErrors field's value.
39993func (s *MaintenanceWindowTask) SetMaxErrors(v string) *MaintenanceWindowTask {
39994	s.MaxErrors = &v
39995	return s
39996}
39997
39998// SetName sets the Name field's value.
39999func (s *MaintenanceWindowTask) SetName(v string) *MaintenanceWindowTask {
40000	s.Name = &v
40001	return s
40002}
40003
40004// SetPriority sets the Priority field's value.
40005func (s *MaintenanceWindowTask) SetPriority(v int64) *MaintenanceWindowTask {
40006	s.Priority = &v
40007	return s
40008}
40009
40010// SetServiceRoleArn sets the ServiceRoleArn field's value.
40011func (s *MaintenanceWindowTask) SetServiceRoleArn(v string) *MaintenanceWindowTask {
40012	s.ServiceRoleArn = &v
40013	return s
40014}
40015
40016// SetTargets sets the Targets field's value.
40017func (s *MaintenanceWindowTask) SetTargets(v []*Target) *MaintenanceWindowTask {
40018	s.Targets = v
40019	return s
40020}
40021
40022// SetTaskArn sets the TaskArn field's value.
40023func (s *MaintenanceWindowTask) SetTaskArn(v string) *MaintenanceWindowTask {
40024	s.TaskArn = &v
40025	return s
40026}
40027
40028// SetTaskParameters sets the TaskParameters field's value.
40029func (s *MaintenanceWindowTask) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *MaintenanceWindowTask {
40030	s.TaskParameters = v
40031	return s
40032}
40033
40034// SetType sets the Type field's value.
40035func (s *MaintenanceWindowTask) SetType(v string) *MaintenanceWindowTask {
40036	s.Type = &v
40037	return s
40038}
40039
40040// SetWindowId sets the WindowId field's value.
40041func (s *MaintenanceWindowTask) SetWindowId(v string) *MaintenanceWindowTask {
40042	s.WindowId = &v
40043	return s
40044}
40045
40046// SetWindowTaskId sets the WindowTaskId field's value.
40047func (s *MaintenanceWindowTask) SetWindowTaskId(v string) *MaintenanceWindowTask {
40048	s.WindowTaskId = &v
40049	return s
40050}
40051
40052// The parameters for task execution.
40053type MaintenanceWindowTaskInvocationParameters struct {
40054	_ struct{} `type:"structure"`
40055
40056	// The parameters for an AUTOMATION task type.
40057	Automation *MaintenanceWindowAutomationParameters `type:"structure"`
40058
40059	// The parameters for a LAMBDA task type.
40060	Lambda *MaintenanceWindowLambdaParameters `type:"structure"`
40061
40062	// The parameters for a RUN_COMMAND task type.
40063	RunCommand *MaintenanceWindowRunCommandParameters `type:"structure"`
40064
40065	// The parameters for a STEP_FUNCTIONS task type.
40066	StepFunctions *MaintenanceWindowStepFunctionsParameters `type:"structure"`
40067}
40068
40069// String returns the string representation
40070func (s MaintenanceWindowTaskInvocationParameters) String() string {
40071	return awsutil.Prettify(s)
40072}
40073
40074// GoString returns the string representation
40075func (s MaintenanceWindowTaskInvocationParameters) GoString() string {
40076	return s.String()
40077}
40078
40079// Validate inspects the fields of the type to determine if they are valid.
40080func (s *MaintenanceWindowTaskInvocationParameters) Validate() error {
40081	invalidParams := request.ErrInvalidParams{Context: "MaintenanceWindowTaskInvocationParameters"}
40082	if s.Automation != nil {
40083		if err := s.Automation.Validate(); err != nil {
40084			invalidParams.AddNested("Automation", err.(request.ErrInvalidParams))
40085		}
40086	}
40087	if s.Lambda != nil {
40088		if err := s.Lambda.Validate(); err != nil {
40089			invalidParams.AddNested("Lambda", err.(request.ErrInvalidParams))
40090		}
40091	}
40092	if s.RunCommand != nil {
40093		if err := s.RunCommand.Validate(); err != nil {
40094			invalidParams.AddNested("RunCommand", err.(request.ErrInvalidParams))
40095		}
40096	}
40097	if s.StepFunctions != nil {
40098		if err := s.StepFunctions.Validate(); err != nil {
40099			invalidParams.AddNested("StepFunctions", err.(request.ErrInvalidParams))
40100		}
40101	}
40102
40103	if invalidParams.Len() > 0 {
40104		return invalidParams
40105	}
40106	return nil
40107}
40108
40109// SetAutomation sets the Automation field's value.
40110func (s *MaintenanceWindowTaskInvocationParameters) SetAutomation(v *MaintenanceWindowAutomationParameters) *MaintenanceWindowTaskInvocationParameters {
40111	s.Automation = v
40112	return s
40113}
40114
40115// SetLambda sets the Lambda field's value.
40116func (s *MaintenanceWindowTaskInvocationParameters) SetLambda(v *MaintenanceWindowLambdaParameters) *MaintenanceWindowTaskInvocationParameters {
40117	s.Lambda = v
40118	return s
40119}
40120
40121// SetRunCommand sets the RunCommand field's value.
40122func (s *MaintenanceWindowTaskInvocationParameters) SetRunCommand(v *MaintenanceWindowRunCommandParameters) *MaintenanceWindowTaskInvocationParameters {
40123	s.RunCommand = v
40124	return s
40125}
40126
40127// SetStepFunctions sets the StepFunctions field's value.
40128func (s *MaintenanceWindowTaskInvocationParameters) SetStepFunctions(v *MaintenanceWindowStepFunctionsParameters) *MaintenanceWindowTaskInvocationParameters {
40129	s.StepFunctions = v
40130	return s
40131}
40132
40133// Defines the values for a task parameter.
40134type MaintenanceWindowTaskParameterValueExpression struct {
40135	_ struct{} `type:"structure" sensitive:"true"`
40136
40137	// This field contains an array of 0 or more strings, each 1 to 255 characters
40138	// in length.
40139	Values []*string `type:"list" sensitive:"true"`
40140}
40141
40142// String returns the string representation
40143func (s MaintenanceWindowTaskParameterValueExpression) String() string {
40144	return awsutil.Prettify(s)
40145}
40146
40147// GoString returns the string representation
40148func (s MaintenanceWindowTaskParameterValueExpression) GoString() string {
40149	return s.String()
40150}
40151
40152// SetValues sets the Values field's value.
40153func (s *MaintenanceWindowTaskParameterValueExpression) SetValues(v []*string) *MaintenanceWindowTaskParameterValueExpression {
40154	s.Values = v
40155	return s
40156}
40157
40158// The size limit of a document is 64 KB.
40159type MaxDocumentSizeExceeded struct {
40160	_            struct{}                  `type:"structure"`
40161	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
40162
40163	Message_ *string `locationName:"Message" type:"string"`
40164}
40165
40166// String returns the string representation
40167func (s MaxDocumentSizeExceeded) String() string {
40168	return awsutil.Prettify(s)
40169}
40170
40171// GoString returns the string representation
40172func (s MaxDocumentSizeExceeded) GoString() string {
40173	return s.String()
40174}
40175
40176func newErrorMaxDocumentSizeExceeded(v protocol.ResponseMetadata) error {
40177	return &MaxDocumentSizeExceeded{
40178		RespMetadata: v,
40179	}
40180}
40181
40182// Code returns the exception type name.
40183func (s *MaxDocumentSizeExceeded) Code() string {
40184	return "MaxDocumentSizeExceeded"
40185}
40186
40187// Message returns the exception's message.
40188func (s *MaxDocumentSizeExceeded) Message() string {
40189	if s.Message_ != nil {
40190		return *s.Message_
40191	}
40192	return ""
40193}
40194
40195// OrigErr always returns nil, satisfies awserr.Error interface.
40196func (s *MaxDocumentSizeExceeded) OrigErr() error {
40197	return nil
40198}
40199
40200func (s *MaxDocumentSizeExceeded) Error() string {
40201	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
40202}
40203
40204// Status code returns the HTTP status code for the request's response error.
40205func (s *MaxDocumentSizeExceeded) StatusCode() int {
40206	return s.RespMetadata.StatusCode
40207}
40208
40209// RequestID returns the service's response RequestID for request.
40210func (s *MaxDocumentSizeExceeded) RequestID() string {
40211	return s.RespMetadata.RequestID
40212}
40213
40214// Metadata to assign to an Application Manager application.
40215type MetadataValue struct {
40216	_ struct{} `type:"structure"`
40217
40218	// Metadata value to assign to an Application Manager application.
40219	Value *string `min:"1" type:"string"`
40220}
40221
40222// String returns the string representation
40223func (s MetadataValue) String() string {
40224	return awsutil.Prettify(s)
40225}
40226
40227// GoString returns the string representation
40228func (s MetadataValue) GoString() string {
40229	return s.String()
40230}
40231
40232// Validate inspects the fields of the type to determine if they are valid.
40233func (s *MetadataValue) Validate() error {
40234	invalidParams := request.ErrInvalidParams{Context: "MetadataValue"}
40235	if s.Value != nil && len(*s.Value) < 1 {
40236		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
40237	}
40238
40239	if invalidParams.Len() > 0 {
40240		return invalidParams
40241	}
40242	return nil
40243}
40244
40245// SetValue sets the Value field's value.
40246func (s *MetadataValue) SetValue(v string) *MetadataValue {
40247	s.Value = &v
40248	return s
40249}
40250
40251type ModifyDocumentPermissionInput struct {
40252	_ struct{} `type:"structure"`
40253
40254	// The Amazon Web Services user accounts that should have access to the document.
40255	// The account IDs can either be a group of account IDs or All.
40256	AccountIdsToAdd []*string `type:"list"`
40257
40258	// The Amazon Web Services user accounts that should no longer have access to
40259	// the document. The Amazon Web Services user account can either be a group
40260	// of account IDs or All. This action has a higher priority than AccountIdsToAdd.
40261	// If you specify an account ID to add and the same ID to remove, the system
40262	// removes access to the document.
40263	AccountIdsToRemove []*string `type:"list"`
40264
40265	// The name of the document that you want to share.
40266	//
40267	// Name is a required field
40268	Name *string `type:"string" required:"true"`
40269
40270	// The permission type for the document. The permission type can be Share.
40271	//
40272	// PermissionType is a required field
40273	PermissionType *string `type:"string" required:"true" enum:"DocumentPermissionType"`
40274
40275	// (Optional) The version of the document to share. If it isn't specified, the
40276	// system choose the Default version to share.
40277	SharedDocumentVersion *string `type:"string"`
40278}
40279
40280// String returns the string representation
40281func (s ModifyDocumentPermissionInput) String() string {
40282	return awsutil.Prettify(s)
40283}
40284
40285// GoString returns the string representation
40286func (s ModifyDocumentPermissionInput) GoString() string {
40287	return s.String()
40288}
40289
40290// Validate inspects the fields of the type to determine if they are valid.
40291func (s *ModifyDocumentPermissionInput) Validate() error {
40292	invalidParams := request.ErrInvalidParams{Context: "ModifyDocumentPermissionInput"}
40293	if s.Name == nil {
40294		invalidParams.Add(request.NewErrParamRequired("Name"))
40295	}
40296	if s.PermissionType == nil {
40297		invalidParams.Add(request.NewErrParamRequired("PermissionType"))
40298	}
40299
40300	if invalidParams.Len() > 0 {
40301		return invalidParams
40302	}
40303	return nil
40304}
40305
40306// SetAccountIdsToAdd sets the AccountIdsToAdd field's value.
40307func (s *ModifyDocumentPermissionInput) SetAccountIdsToAdd(v []*string) *ModifyDocumentPermissionInput {
40308	s.AccountIdsToAdd = v
40309	return s
40310}
40311
40312// SetAccountIdsToRemove sets the AccountIdsToRemove field's value.
40313func (s *ModifyDocumentPermissionInput) SetAccountIdsToRemove(v []*string) *ModifyDocumentPermissionInput {
40314	s.AccountIdsToRemove = v
40315	return s
40316}
40317
40318// SetName sets the Name field's value.
40319func (s *ModifyDocumentPermissionInput) SetName(v string) *ModifyDocumentPermissionInput {
40320	s.Name = &v
40321	return s
40322}
40323
40324// SetPermissionType sets the PermissionType field's value.
40325func (s *ModifyDocumentPermissionInput) SetPermissionType(v string) *ModifyDocumentPermissionInput {
40326	s.PermissionType = &v
40327	return s
40328}
40329
40330// SetSharedDocumentVersion sets the SharedDocumentVersion field's value.
40331func (s *ModifyDocumentPermissionInput) SetSharedDocumentVersion(v string) *ModifyDocumentPermissionInput {
40332	s.SharedDocumentVersion = &v
40333	return s
40334}
40335
40336type ModifyDocumentPermissionOutput struct {
40337	_ struct{} `type:"structure"`
40338}
40339
40340// String returns the string representation
40341func (s ModifyDocumentPermissionOutput) String() string {
40342	return awsutil.Prettify(s)
40343}
40344
40345// GoString returns the string representation
40346func (s ModifyDocumentPermissionOutput) GoString() string {
40347	return s.String()
40348}
40349
40350// A summary of resources that aren't compliant. The summary is organized according
40351// to resource type.
40352type NonCompliantSummary struct {
40353	_ struct{} `type:"structure"`
40354
40355	// The total number of compliance items that aren't compliant.
40356	NonCompliantCount *int64 `type:"integer"`
40357
40358	// A summary of the non-compliance severity by compliance type
40359	SeveritySummary *SeveritySummary `type:"structure"`
40360}
40361
40362// String returns the string representation
40363func (s NonCompliantSummary) String() string {
40364	return awsutil.Prettify(s)
40365}
40366
40367// GoString returns the string representation
40368func (s NonCompliantSummary) GoString() string {
40369	return s.String()
40370}
40371
40372// SetNonCompliantCount sets the NonCompliantCount field's value.
40373func (s *NonCompliantSummary) SetNonCompliantCount(v int64) *NonCompliantSummary {
40374	s.NonCompliantCount = &v
40375	return s
40376}
40377
40378// SetSeveritySummary sets the SeveritySummary field's value.
40379func (s *NonCompliantSummary) SetSeveritySummary(v *SeveritySummary) *NonCompliantSummary {
40380	s.SeveritySummary = v
40381	return s
40382}
40383
40384// Configurations for sending notifications.
40385type NotificationConfig struct {
40386	_ struct{} `type:"structure"`
40387
40388	// An Amazon Resource Name (ARN) for an Amazon Simple Notification Service (Amazon
40389	// SNS) topic. Run Command pushes notifications about command status changes
40390	// to this topic.
40391	NotificationArn *string `type:"string"`
40392
40393	// The different events for which you can receive notifications. To learn more
40394	// about these events, see Monitoring Systems Manager status changes using Amazon
40395	// SNS notifications (https://docs.aws.amazon.com/systems-manager/latest/userguide/monitoring-sns-notifications.html)
40396	// in the Amazon Web Services Systems Manager User Guide.
40397	NotificationEvents []*string `type:"list"`
40398
40399	// The type of notification.
40400	//
40401	//    * Command: Receive notification when the status of a command changes.
40402	//
40403	//    * Invocation: For commands sent to multiple instances, receive notification
40404	//    on a per-instance basis when the status of a command changes.
40405	NotificationType *string `type:"string" enum:"NotificationType"`
40406}
40407
40408// String returns the string representation
40409func (s NotificationConfig) String() string {
40410	return awsutil.Prettify(s)
40411}
40412
40413// GoString returns the string representation
40414func (s NotificationConfig) GoString() string {
40415	return s.String()
40416}
40417
40418// SetNotificationArn sets the NotificationArn field's value.
40419func (s *NotificationConfig) SetNotificationArn(v string) *NotificationConfig {
40420	s.NotificationArn = &v
40421	return s
40422}
40423
40424// SetNotificationEvents sets the NotificationEvents field's value.
40425func (s *NotificationConfig) SetNotificationEvents(v []*string) *NotificationConfig {
40426	s.NotificationEvents = v
40427	return s
40428}
40429
40430// SetNotificationType sets the NotificationType field's value.
40431func (s *NotificationConfig) SetNotificationType(v string) *NotificationConfig {
40432	s.NotificationType = &v
40433	return s
40434}
40435
40436// One or more aggregators for viewing counts of OpsData using different dimensions
40437// such as Source, CreatedTime, or Source and CreatedTime, to name a few.
40438type OpsAggregator struct {
40439	_ struct{} `type:"structure"`
40440
40441	// Either a Range or Count aggregator for limiting an OpsData summary.
40442	AggregatorType *string `min:"1" type:"string"`
40443
40444	// A nested aggregator for viewing counts of OpsData.
40445	Aggregators []*OpsAggregator `min:"1" type:"list"`
40446
40447	// The name of an OpsData attribute on which to limit the count of OpsData.
40448	AttributeName *string `min:"1" type:"string"`
40449
40450	// The aggregator filters.
40451	Filters []*OpsFilter `min:"1" type:"list"`
40452
40453	// The data type name to use for viewing counts of OpsData.
40454	TypeName *string `min:"1" type:"string"`
40455
40456	// The aggregator value.
40457	Values map[string]*string `type:"map"`
40458}
40459
40460// String returns the string representation
40461func (s OpsAggregator) String() string {
40462	return awsutil.Prettify(s)
40463}
40464
40465// GoString returns the string representation
40466func (s OpsAggregator) GoString() string {
40467	return s.String()
40468}
40469
40470// Validate inspects the fields of the type to determine if they are valid.
40471func (s *OpsAggregator) Validate() error {
40472	invalidParams := request.ErrInvalidParams{Context: "OpsAggregator"}
40473	if s.AggregatorType != nil && len(*s.AggregatorType) < 1 {
40474		invalidParams.Add(request.NewErrParamMinLen("AggregatorType", 1))
40475	}
40476	if s.Aggregators != nil && len(s.Aggregators) < 1 {
40477		invalidParams.Add(request.NewErrParamMinLen("Aggregators", 1))
40478	}
40479	if s.AttributeName != nil && len(*s.AttributeName) < 1 {
40480		invalidParams.Add(request.NewErrParamMinLen("AttributeName", 1))
40481	}
40482	if s.Filters != nil && len(s.Filters) < 1 {
40483		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
40484	}
40485	if s.TypeName != nil && len(*s.TypeName) < 1 {
40486		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
40487	}
40488	if s.Aggregators != nil {
40489		for i, v := range s.Aggregators {
40490			if v == nil {
40491				continue
40492			}
40493			if err := v.Validate(); err != nil {
40494				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Aggregators", i), err.(request.ErrInvalidParams))
40495			}
40496		}
40497	}
40498	if s.Filters != nil {
40499		for i, v := range s.Filters {
40500			if v == nil {
40501				continue
40502			}
40503			if err := v.Validate(); err != nil {
40504				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
40505			}
40506		}
40507	}
40508
40509	if invalidParams.Len() > 0 {
40510		return invalidParams
40511	}
40512	return nil
40513}
40514
40515// SetAggregatorType sets the AggregatorType field's value.
40516func (s *OpsAggregator) SetAggregatorType(v string) *OpsAggregator {
40517	s.AggregatorType = &v
40518	return s
40519}
40520
40521// SetAggregators sets the Aggregators field's value.
40522func (s *OpsAggregator) SetAggregators(v []*OpsAggregator) *OpsAggregator {
40523	s.Aggregators = v
40524	return s
40525}
40526
40527// SetAttributeName sets the AttributeName field's value.
40528func (s *OpsAggregator) SetAttributeName(v string) *OpsAggregator {
40529	s.AttributeName = &v
40530	return s
40531}
40532
40533// SetFilters sets the Filters field's value.
40534func (s *OpsAggregator) SetFilters(v []*OpsFilter) *OpsAggregator {
40535	s.Filters = v
40536	return s
40537}
40538
40539// SetTypeName sets the TypeName field's value.
40540func (s *OpsAggregator) SetTypeName(v string) *OpsAggregator {
40541	s.TypeName = &v
40542	return s
40543}
40544
40545// SetValues sets the Values field's value.
40546func (s *OpsAggregator) SetValues(v map[string]*string) *OpsAggregator {
40547	s.Values = v
40548	return s
40549}
40550
40551// The result of the query.
40552type OpsEntity struct {
40553	_ struct{} `type:"structure"`
40554
40555	// The data returned by the query.
40556	Data map[string]*OpsEntityItem `type:"map"`
40557
40558	// The query ID.
40559	Id *string `type:"string"`
40560}
40561
40562// String returns the string representation
40563func (s OpsEntity) String() string {
40564	return awsutil.Prettify(s)
40565}
40566
40567// GoString returns the string representation
40568func (s OpsEntity) GoString() string {
40569	return s.String()
40570}
40571
40572// SetData sets the Data field's value.
40573func (s *OpsEntity) SetData(v map[string]*OpsEntityItem) *OpsEntity {
40574	s.Data = v
40575	return s
40576}
40577
40578// SetId sets the Id field's value.
40579func (s *OpsEntity) SetId(v string) *OpsEntity {
40580	s.Id = &v
40581	return s
40582}
40583
40584// The OpsData summary.
40585type OpsEntityItem struct {
40586	_ struct{} `type:"structure"`
40587
40588	// The time the OpsData was captured.
40589	CaptureTime *string `type:"string"`
40590
40591	// The details of an OpsData summary.
40592	Content []map[string]*string `type:"list"`
40593}
40594
40595// String returns the string representation
40596func (s OpsEntityItem) String() string {
40597	return awsutil.Prettify(s)
40598}
40599
40600// GoString returns the string representation
40601func (s OpsEntityItem) GoString() string {
40602	return s.String()
40603}
40604
40605// SetCaptureTime sets the CaptureTime field's value.
40606func (s *OpsEntityItem) SetCaptureTime(v string) *OpsEntityItem {
40607	s.CaptureTime = &v
40608	return s
40609}
40610
40611// SetContent sets the Content field's value.
40612func (s *OpsEntityItem) SetContent(v []map[string]*string) *OpsEntityItem {
40613	s.Content = v
40614	return s
40615}
40616
40617// A filter for viewing OpsData summaries.
40618type OpsFilter struct {
40619	_ struct{} `type:"structure"`
40620
40621	// The name of the filter.
40622	//
40623	// Key is a required field
40624	Key *string `min:"1" type:"string" required:"true"`
40625
40626	// The type of filter.
40627	Type *string `type:"string" enum:"OpsFilterOperatorType"`
40628
40629	// The filter value.
40630	//
40631	// Values is a required field
40632	Values []*string `min:"1" type:"list" required:"true"`
40633}
40634
40635// String returns the string representation
40636func (s OpsFilter) String() string {
40637	return awsutil.Prettify(s)
40638}
40639
40640// GoString returns the string representation
40641func (s OpsFilter) GoString() string {
40642	return s.String()
40643}
40644
40645// Validate inspects the fields of the type to determine if they are valid.
40646func (s *OpsFilter) Validate() error {
40647	invalidParams := request.ErrInvalidParams{Context: "OpsFilter"}
40648	if s.Key == nil {
40649		invalidParams.Add(request.NewErrParamRequired("Key"))
40650	}
40651	if s.Key != nil && len(*s.Key) < 1 {
40652		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
40653	}
40654	if s.Values == nil {
40655		invalidParams.Add(request.NewErrParamRequired("Values"))
40656	}
40657	if s.Values != nil && len(s.Values) < 1 {
40658		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
40659	}
40660
40661	if invalidParams.Len() > 0 {
40662		return invalidParams
40663	}
40664	return nil
40665}
40666
40667// SetKey sets the Key field's value.
40668func (s *OpsFilter) SetKey(v string) *OpsFilter {
40669	s.Key = &v
40670	return s
40671}
40672
40673// SetType sets the Type field's value.
40674func (s *OpsFilter) SetType(v string) *OpsFilter {
40675	s.Type = &v
40676	return s
40677}
40678
40679// SetValues sets the Values field's value.
40680func (s *OpsFilter) SetValues(v []*string) *OpsFilter {
40681	s.Values = v
40682	return s
40683}
40684
40685// Operations engineers and IT professionals use Amazon Web Services Systems
40686// Manager OpsCenter to view, investigate, and remediate operational work items
40687// (OpsItems) impacting the performance and health of their Amazon Web Services
40688// resources. OpsCenter is integrated with Amazon EventBridge and Amazon CloudWatch.
40689// This means you can configure these services to automatically create an OpsItem
40690// in OpsCenter when a CloudWatch alarm enters the ALARM state or when EventBridge
40691// processes an event from any Amazon Web Services service that publishes events.
40692// Configuring Amazon CloudWatch alarms and EventBridge events to automatically
40693// create OpsItems allows you to quickly diagnose and remediate issues with
40694// Amazon Web Services resources from a single console.
40695//
40696// To help you diagnose issues, each OpsItem includes contextually relevant
40697// information such as the name and ID of the Amazon Web Services resource that
40698// generated the OpsItem, alarm or event details, alarm history, and an alarm
40699// timeline graph. For the Amazon Web Services resource, OpsCenter aggregates
40700// information from Config, CloudTrail logs, and EventBridge, so you don't have
40701// to navigate across multiple console pages during your investigation. For
40702// more information, see OpsCenter (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html)
40703// in the Amazon Web Services Systems Manager User Guide.
40704type OpsItem struct {
40705	_ struct{} `type:"structure"`
40706
40707	// The time a runbook workflow ended. Currently reported only for the OpsItem
40708	// type /aws/changerequest.
40709	ActualEndTime *time.Time `type:"timestamp"`
40710
40711	// The time a runbook workflow started. Currently reported only for the OpsItem
40712	// type /aws/changerequest.
40713	ActualStartTime *time.Time `type:"timestamp"`
40714
40715	// An OpsItem category. Category options include: Availability, Cost, Performance,
40716	// Recovery, Security.
40717	Category *string `min:"1" type:"string"`
40718
40719	// The ARN of the Amazon Web Services account that created the OpsItem.
40720	CreatedBy *string `type:"string"`
40721
40722	// The date and time the OpsItem was created.
40723	CreatedTime *time.Time `type:"timestamp"`
40724
40725	// The OpsItem description.
40726	Description *string `min:"1" type:"string"`
40727
40728	// The ARN of the Amazon Web Services account that last updated the OpsItem.
40729	LastModifiedBy *string `type:"string"`
40730
40731	// The date and time the OpsItem was last updated.
40732	LastModifiedTime *time.Time `type:"timestamp"`
40733
40734	// The Amazon Resource Name (ARN) of an Amazon Simple Notification Service (Amazon
40735	// SNS) topic where notifications are sent when this OpsItem is edited or changed.
40736	Notifications []*OpsItemNotification `type:"list"`
40737
40738	// Operational data is custom data that provides useful reference details about
40739	// the OpsItem. For example, you can specify log files, error strings, license
40740	// keys, troubleshooting tips, or other relevant data. You enter operational
40741	// data as key-value pairs. The key has a maximum length of 128 characters.
40742	// The value has a maximum size of 20 KB.
40743	//
40744	// Operational data keys can't begin with the following: amazon, aws, amzn,
40745	// ssm, /amazon, /aws, /amzn, /ssm.
40746	//
40747	// You can choose to make the data searchable by other users in the account
40748	// or you can restrict search access. Searchable data means that all users with
40749	// access to the OpsItem Overview page (as provided by the DescribeOpsItems
40750	// API operation) can view and search on the specified data. Operational data
40751	// that isn't searchable is only viewable by users who have access to the OpsItem
40752	// (as provided by the GetOpsItem API operation).
40753	//
40754	// Use the /aws/resources key in OperationalData to specify a related resource
40755	// in the request. Use the /aws/automations key in OperationalData to associate
40756	// an Automation runbook with the OpsItem. To view Amazon Web Services CLI example
40757	// commands that use these keys, see Creating OpsItems manually (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-creating-OpsItems.html#OpsCenter-manually-create-OpsItems)
40758	// in the Amazon Web Services Systems Manager User Guide.
40759	OperationalData map[string]*OpsItemDataValue `type:"map"`
40760
40761	// The ID of the OpsItem.
40762	OpsItemId *string `type:"string"`
40763
40764	// The type of OpsItem. Currently, the only valid values are /aws/changerequest
40765	// and /aws/issue.
40766	OpsItemType *string `type:"string"`
40767
40768	// The time specified in a change request for a runbook workflow to end. Currently
40769	// supported only for the OpsItem type /aws/changerequest.
40770	PlannedEndTime *time.Time `type:"timestamp"`
40771
40772	// The time specified in a change request for a runbook workflow to start. Currently
40773	// supported only for the OpsItem type /aws/changerequest.
40774	PlannedStartTime *time.Time `type:"timestamp"`
40775
40776	// The importance of this OpsItem in relation to other OpsItems in the system.
40777	Priority *int64 `min:"1" type:"integer"`
40778
40779	// One or more OpsItems that share something in common with the current OpsItem.
40780	// For example, related OpsItems can include OpsItems with similar error messages,
40781	// impacted resources, or statuses for the impacted resource.
40782	RelatedOpsItems []*RelatedOpsItem `type:"list"`
40783
40784	// The severity of the OpsItem. Severity options range from 1 to 4.
40785	Severity *string `min:"1" type:"string"`
40786
40787	// The origin of the OpsItem, such as Amazon EC2 or Systems Manager. The impacted
40788	// resource is a subset of source.
40789	Source *string `min:"1" type:"string"`
40790
40791	// The OpsItem status. Status can be Open, In Progress, or Resolved. For more
40792	// information, see Editing OpsItem details (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-working-with-OpsItems-editing-details.html)
40793	// in the Amazon Web Services Systems Manager User Guide.
40794	Status *string `type:"string" enum:"OpsItemStatus"`
40795
40796	// A short heading that describes the nature of the OpsItem and the impacted
40797	// resource.
40798	Title *string `min:"1" type:"string"`
40799
40800	// The version of this OpsItem. Each time the OpsItem is edited the version
40801	// number increments by one.
40802	Version *string `type:"string"`
40803}
40804
40805// String returns the string representation
40806func (s OpsItem) String() string {
40807	return awsutil.Prettify(s)
40808}
40809
40810// GoString returns the string representation
40811func (s OpsItem) GoString() string {
40812	return s.String()
40813}
40814
40815// SetActualEndTime sets the ActualEndTime field's value.
40816func (s *OpsItem) SetActualEndTime(v time.Time) *OpsItem {
40817	s.ActualEndTime = &v
40818	return s
40819}
40820
40821// SetActualStartTime sets the ActualStartTime field's value.
40822func (s *OpsItem) SetActualStartTime(v time.Time) *OpsItem {
40823	s.ActualStartTime = &v
40824	return s
40825}
40826
40827// SetCategory sets the Category field's value.
40828func (s *OpsItem) SetCategory(v string) *OpsItem {
40829	s.Category = &v
40830	return s
40831}
40832
40833// SetCreatedBy sets the CreatedBy field's value.
40834func (s *OpsItem) SetCreatedBy(v string) *OpsItem {
40835	s.CreatedBy = &v
40836	return s
40837}
40838
40839// SetCreatedTime sets the CreatedTime field's value.
40840func (s *OpsItem) SetCreatedTime(v time.Time) *OpsItem {
40841	s.CreatedTime = &v
40842	return s
40843}
40844
40845// SetDescription sets the Description field's value.
40846func (s *OpsItem) SetDescription(v string) *OpsItem {
40847	s.Description = &v
40848	return s
40849}
40850
40851// SetLastModifiedBy sets the LastModifiedBy field's value.
40852func (s *OpsItem) SetLastModifiedBy(v string) *OpsItem {
40853	s.LastModifiedBy = &v
40854	return s
40855}
40856
40857// SetLastModifiedTime sets the LastModifiedTime field's value.
40858func (s *OpsItem) SetLastModifiedTime(v time.Time) *OpsItem {
40859	s.LastModifiedTime = &v
40860	return s
40861}
40862
40863// SetNotifications sets the Notifications field's value.
40864func (s *OpsItem) SetNotifications(v []*OpsItemNotification) *OpsItem {
40865	s.Notifications = v
40866	return s
40867}
40868
40869// SetOperationalData sets the OperationalData field's value.
40870func (s *OpsItem) SetOperationalData(v map[string]*OpsItemDataValue) *OpsItem {
40871	s.OperationalData = v
40872	return s
40873}
40874
40875// SetOpsItemId sets the OpsItemId field's value.
40876func (s *OpsItem) SetOpsItemId(v string) *OpsItem {
40877	s.OpsItemId = &v
40878	return s
40879}
40880
40881// SetOpsItemType sets the OpsItemType field's value.
40882func (s *OpsItem) SetOpsItemType(v string) *OpsItem {
40883	s.OpsItemType = &v
40884	return s
40885}
40886
40887// SetPlannedEndTime sets the PlannedEndTime field's value.
40888func (s *OpsItem) SetPlannedEndTime(v time.Time) *OpsItem {
40889	s.PlannedEndTime = &v
40890	return s
40891}
40892
40893// SetPlannedStartTime sets the PlannedStartTime field's value.
40894func (s *OpsItem) SetPlannedStartTime(v time.Time) *OpsItem {
40895	s.PlannedStartTime = &v
40896	return s
40897}
40898
40899// SetPriority sets the Priority field's value.
40900func (s *OpsItem) SetPriority(v int64) *OpsItem {
40901	s.Priority = &v
40902	return s
40903}
40904
40905// SetRelatedOpsItems sets the RelatedOpsItems field's value.
40906func (s *OpsItem) SetRelatedOpsItems(v []*RelatedOpsItem) *OpsItem {
40907	s.RelatedOpsItems = v
40908	return s
40909}
40910
40911// SetSeverity sets the Severity field's value.
40912func (s *OpsItem) SetSeverity(v string) *OpsItem {
40913	s.Severity = &v
40914	return s
40915}
40916
40917// SetSource sets the Source field's value.
40918func (s *OpsItem) SetSource(v string) *OpsItem {
40919	s.Source = &v
40920	return s
40921}
40922
40923// SetStatus sets the Status field's value.
40924func (s *OpsItem) SetStatus(v string) *OpsItem {
40925	s.Status = &v
40926	return s
40927}
40928
40929// SetTitle sets the Title field's value.
40930func (s *OpsItem) SetTitle(v string) *OpsItem {
40931	s.Title = &v
40932	return s
40933}
40934
40935// SetVersion sets the Version field's value.
40936func (s *OpsItem) SetVersion(v string) *OpsItem {
40937	s.Version = &v
40938	return s
40939}
40940
40941// The OpsItem already exists.
40942type OpsItemAlreadyExistsException struct {
40943	_            struct{}                  `type:"structure"`
40944	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
40945
40946	Message_ *string `locationName:"Message" type:"string"`
40947
40948	OpsItemId *string `type:"string"`
40949}
40950
40951// String returns the string representation
40952func (s OpsItemAlreadyExistsException) String() string {
40953	return awsutil.Prettify(s)
40954}
40955
40956// GoString returns the string representation
40957func (s OpsItemAlreadyExistsException) GoString() string {
40958	return s.String()
40959}
40960
40961func newErrorOpsItemAlreadyExistsException(v protocol.ResponseMetadata) error {
40962	return &OpsItemAlreadyExistsException{
40963		RespMetadata: v,
40964	}
40965}
40966
40967// Code returns the exception type name.
40968func (s *OpsItemAlreadyExistsException) Code() string {
40969	return "OpsItemAlreadyExistsException"
40970}
40971
40972// Message returns the exception's message.
40973func (s *OpsItemAlreadyExistsException) Message() string {
40974	if s.Message_ != nil {
40975		return *s.Message_
40976	}
40977	return ""
40978}
40979
40980// OrigErr always returns nil, satisfies awserr.Error interface.
40981func (s *OpsItemAlreadyExistsException) OrigErr() error {
40982	return nil
40983}
40984
40985func (s *OpsItemAlreadyExistsException) Error() string {
40986	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
40987}
40988
40989// Status code returns the HTTP status code for the request's response error.
40990func (s *OpsItemAlreadyExistsException) StatusCode() int {
40991	return s.RespMetadata.StatusCode
40992}
40993
40994// RequestID returns the service's response RequestID for request.
40995func (s *OpsItemAlreadyExistsException) RequestID() string {
40996	return s.RespMetadata.RequestID
40997}
40998
40999// An object that defines the value of the key and its type in the OperationalData
41000// map.
41001type OpsItemDataValue struct {
41002	_ struct{} `type:"structure"`
41003
41004	// The type of key-value pair. Valid types include SearchableString and String.
41005	Type *string `type:"string" enum:"OpsItemDataType"`
41006
41007	// The value of the OperationalData key.
41008	Value *string `type:"string"`
41009}
41010
41011// String returns the string representation
41012func (s OpsItemDataValue) String() string {
41013	return awsutil.Prettify(s)
41014}
41015
41016// GoString returns the string representation
41017func (s OpsItemDataValue) GoString() string {
41018	return s.String()
41019}
41020
41021// SetType sets the Type field's value.
41022func (s *OpsItemDataValue) SetType(v string) *OpsItemDataValue {
41023	s.Type = &v
41024	return s
41025}
41026
41027// SetValue sets the Value field's value.
41028func (s *OpsItemDataValue) SetValue(v string) *OpsItemDataValue {
41029	s.Value = &v
41030	return s
41031}
41032
41033// Describes a filter for a specific list of OpsItem events. You can filter
41034// event information by using tags. You specify tags by using a key-value pair
41035// mapping.
41036type OpsItemEventFilter struct {
41037	_ struct{} `type:"structure"`
41038
41039	// The name of the filter key. Currently, the only supported value is OpsItemId.
41040	//
41041	// Key is a required field
41042	Key *string `type:"string" required:"true" enum:"OpsItemEventFilterKey"`
41043
41044	// The operator used by the filter call. Currently, the only supported value
41045	// is Equal.
41046	//
41047	// Operator is a required field
41048	Operator *string `type:"string" required:"true" enum:"OpsItemEventFilterOperator"`
41049
41050	// The values for the filter, consisting of one or more OpsItem IDs.
41051	//
41052	// Values is a required field
41053	Values []*string `type:"list" required:"true"`
41054}
41055
41056// String returns the string representation
41057func (s OpsItemEventFilter) String() string {
41058	return awsutil.Prettify(s)
41059}
41060
41061// GoString returns the string representation
41062func (s OpsItemEventFilter) GoString() string {
41063	return s.String()
41064}
41065
41066// Validate inspects the fields of the type to determine if they are valid.
41067func (s *OpsItemEventFilter) Validate() error {
41068	invalidParams := request.ErrInvalidParams{Context: "OpsItemEventFilter"}
41069	if s.Key == nil {
41070		invalidParams.Add(request.NewErrParamRequired("Key"))
41071	}
41072	if s.Operator == nil {
41073		invalidParams.Add(request.NewErrParamRequired("Operator"))
41074	}
41075	if s.Values == nil {
41076		invalidParams.Add(request.NewErrParamRequired("Values"))
41077	}
41078
41079	if invalidParams.Len() > 0 {
41080		return invalidParams
41081	}
41082	return nil
41083}
41084
41085// SetKey sets the Key field's value.
41086func (s *OpsItemEventFilter) SetKey(v string) *OpsItemEventFilter {
41087	s.Key = &v
41088	return s
41089}
41090
41091// SetOperator sets the Operator field's value.
41092func (s *OpsItemEventFilter) SetOperator(v string) *OpsItemEventFilter {
41093	s.Operator = &v
41094	return s
41095}
41096
41097// SetValues sets the Values field's value.
41098func (s *OpsItemEventFilter) SetValues(v []*string) *OpsItemEventFilter {
41099	s.Values = v
41100	return s
41101}
41102
41103// Summary information about an OpsItem event or that associated an OpsItem
41104// with a related item.
41105type OpsItemEventSummary struct {
41106	_ struct{} `type:"structure"`
41107
41108	// Information about the user or resource that created the OpsItem event.
41109	CreatedBy *OpsItemIdentity `type:"structure"`
41110
41111	// The date and time the OpsItem event was created.
41112	CreatedTime *time.Time `type:"timestamp"`
41113
41114	// Specific information about the OpsItem event.
41115	Detail *string `type:"string"`
41116
41117	// The type of information provided as a detail.
41118	DetailType *string `type:"string"`
41119
41120	// The ID of the OpsItem event.
41121	EventId *string `type:"string"`
41122
41123	// The ID of the OpsItem.
41124	OpsItemId *string `type:"string"`
41125
41126	// The source of the OpsItem event.
41127	Source *string `type:"string"`
41128}
41129
41130// String returns the string representation
41131func (s OpsItemEventSummary) String() string {
41132	return awsutil.Prettify(s)
41133}
41134
41135// GoString returns the string representation
41136func (s OpsItemEventSummary) GoString() string {
41137	return s.String()
41138}
41139
41140// SetCreatedBy sets the CreatedBy field's value.
41141func (s *OpsItemEventSummary) SetCreatedBy(v *OpsItemIdentity) *OpsItemEventSummary {
41142	s.CreatedBy = v
41143	return s
41144}
41145
41146// SetCreatedTime sets the CreatedTime field's value.
41147func (s *OpsItemEventSummary) SetCreatedTime(v time.Time) *OpsItemEventSummary {
41148	s.CreatedTime = &v
41149	return s
41150}
41151
41152// SetDetail sets the Detail field's value.
41153func (s *OpsItemEventSummary) SetDetail(v string) *OpsItemEventSummary {
41154	s.Detail = &v
41155	return s
41156}
41157
41158// SetDetailType sets the DetailType field's value.
41159func (s *OpsItemEventSummary) SetDetailType(v string) *OpsItemEventSummary {
41160	s.DetailType = &v
41161	return s
41162}
41163
41164// SetEventId sets the EventId field's value.
41165func (s *OpsItemEventSummary) SetEventId(v string) *OpsItemEventSummary {
41166	s.EventId = &v
41167	return s
41168}
41169
41170// SetOpsItemId sets the OpsItemId field's value.
41171func (s *OpsItemEventSummary) SetOpsItemId(v string) *OpsItemEventSummary {
41172	s.OpsItemId = &v
41173	return s
41174}
41175
41176// SetSource sets the Source field's value.
41177func (s *OpsItemEventSummary) SetSource(v string) *OpsItemEventSummary {
41178	s.Source = &v
41179	return s
41180}
41181
41182// Describes an OpsItem filter.
41183type OpsItemFilter struct {
41184	_ struct{} `type:"structure"`
41185
41186	// The name of the filter.
41187	//
41188	// Key is a required field
41189	Key *string `type:"string" required:"true" enum:"OpsItemFilterKey"`
41190
41191	// The operator used by the filter call.
41192	//
41193	// Operator is a required field
41194	Operator *string `type:"string" required:"true" enum:"OpsItemFilterOperator"`
41195
41196	// The filter value.
41197	//
41198	// Values is a required field
41199	Values []*string `type:"list" required:"true"`
41200}
41201
41202// String returns the string representation
41203func (s OpsItemFilter) String() string {
41204	return awsutil.Prettify(s)
41205}
41206
41207// GoString returns the string representation
41208func (s OpsItemFilter) GoString() string {
41209	return s.String()
41210}
41211
41212// Validate inspects the fields of the type to determine if they are valid.
41213func (s *OpsItemFilter) Validate() error {
41214	invalidParams := request.ErrInvalidParams{Context: "OpsItemFilter"}
41215	if s.Key == nil {
41216		invalidParams.Add(request.NewErrParamRequired("Key"))
41217	}
41218	if s.Operator == nil {
41219		invalidParams.Add(request.NewErrParamRequired("Operator"))
41220	}
41221	if s.Values == nil {
41222		invalidParams.Add(request.NewErrParamRequired("Values"))
41223	}
41224
41225	if invalidParams.Len() > 0 {
41226		return invalidParams
41227	}
41228	return nil
41229}
41230
41231// SetKey sets the Key field's value.
41232func (s *OpsItemFilter) SetKey(v string) *OpsItemFilter {
41233	s.Key = &v
41234	return s
41235}
41236
41237// SetOperator sets the Operator field's value.
41238func (s *OpsItemFilter) SetOperator(v string) *OpsItemFilter {
41239	s.Operator = &v
41240	return s
41241}
41242
41243// SetValues sets the Values field's value.
41244func (s *OpsItemFilter) SetValues(v []*string) *OpsItemFilter {
41245	s.Values = v
41246	return s
41247}
41248
41249// Information about the user or resource that created an OpsItem event.
41250type OpsItemIdentity struct {
41251	_ struct{} `type:"structure"`
41252
41253	// The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem
41254	// event.
41255	Arn *string `type:"string"`
41256}
41257
41258// String returns the string representation
41259func (s OpsItemIdentity) String() string {
41260	return awsutil.Prettify(s)
41261}
41262
41263// GoString returns the string representation
41264func (s OpsItemIdentity) GoString() string {
41265	return s.String()
41266}
41267
41268// SetArn sets the Arn field's value.
41269func (s *OpsItemIdentity) SetArn(v string) *OpsItemIdentity {
41270	s.Arn = &v
41271	return s
41272}
41273
41274// A specified parameter argument isn't valid. Verify the available arguments
41275// and try again.
41276type OpsItemInvalidParameterException struct {
41277	_            struct{}                  `type:"structure"`
41278	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
41279
41280	Message_ *string `locationName:"Message" type:"string"`
41281
41282	ParameterNames []*string `type:"list"`
41283}
41284
41285// String returns the string representation
41286func (s OpsItemInvalidParameterException) String() string {
41287	return awsutil.Prettify(s)
41288}
41289
41290// GoString returns the string representation
41291func (s OpsItemInvalidParameterException) GoString() string {
41292	return s.String()
41293}
41294
41295func newErrorOpsItemInvalidParameterException(v protocol.ResponseMetadata) error {
41296	return &OpsItemInvalidParameterException{
41297		RespMetadata: v,
41298	}
41299}
41300
41301// Code returns the exception type name.
41302func (s *OpsItemInvalidParameterException) Code() string {
41303	return "OpsItemInvalidParameterException"
41304}
41305
41306// Message returns the exception's message.
41307func (s *OpsItemInvalidParameterException) Message() string {
41308	if s.Message_ != nil {
41309		return *s.Message_
41310	}
41311	return ""
41312}
41313
41314// OrigErr always returns nil, satisfies awserr.Error interface.
41315func (s *OpsItemInvalidParameterException) OrigErr() error {
41316	return nil
41317}
41318
41319func (s *OpsItemInvalidParameterException) Error() string {
41320	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
41321}
41322
41323// Status code returns the HTTP status code for the request's response error.
41324func (s *OpsItemInvalidParameterException) StatusCode() int {
41325	return s.RespMetadata.StatusCode
41326}
41327
41328// RequestID returns the service's response RequestID for request.
41329func (s *OpsItemInvalidParameterException) RequestID() string {
41330	return s.RespMetadata.RequestID
41331}
41332
41333// The request caused OpsItems to exceed one or more quotas. For information
41334// about OpsItem quotas, see What are the resource limits for OpsCenter? (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-learn-more.html#OpsCenter-learn-more-limits).
41335type OpsItemLimitExceededException struct {
41336	_            struct{}                  `type:"structure"`
41337	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
41338
41339	Limit *int64 `type:"integer"`
41340
41341	LimitType *string `type:"string"`
41342
41343	Message_ *string `locationName:"Message" type:"string"`
41344
41345	ResourceTypes []*string `type:"list"`
41346}
41347
41348// String returns the string representation
41349func (s OpsItemLimitExceededException) String() string {
41350	return awsutil.Prettify(s)
41351}
41352
41353// GoString returns the string representation
41354func (s OpsItemLimitExceededException) GoString() string {
41355	return s.String()
41356}
41357
41358func newErrorOpsItemLimitExceededException(v protocol.ResponseMetadata) error {
41359	return &OpsItemLimitExceededException{
41360		RespMetadata: v,
41361	}
41362}
41363
41364// Code returns the exception type name.
41365func (s *OpsItemLimitExceededException) Code() string {
41366	return "OpsItemLimitExceededException"
41367}
41368
41369// Message returns the exception's message.
41370func (s *OpsItemLimitExceededException) Message() string {
41371	if s.Message_ != nil {
41372		return *s.Message_
41373	}
41374	return ""
41375}
41376
41377// OrigErr always returns nil, satisfies awserr.Error interface.
41378func (s *OpsItemLimitExceededException) OrigErr() error {
41379	return nil
41380}
41381
41382func (s *OpsItemLimitExceededException) Error() string {
41383	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
41384}
41385
41386// Status code returns the HTTP status code for the request's response error.
41387func (s *OpsItemLimitExceededException) StatusCode() int {
41388	return s.RespMetadata.StatusCode
41389}
41390
41391// RequestID returns the service's response RequestID for request.
41392func (s *OpsItemLimitExceededException) RequestID() string {
41393	return s.RespMetadata.RequestID
41394}
41395
41396// The specified OpsItem ID doesn't exist. Verify the ID and try again.
41397type OpsItemNotFoundException struct {
41398	_            struct{}                  `type:"structure"`
41399	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
41400
41401	Message_ *string `locationName:"Message" type:"string"`
41402}
41403
41404// String returns the string representation
41405func (s OpsItemNotFoundException) String() string {
41406	return awsutil.Prettify(s)
41407}
41408
41409// GoString returns the string representation
41410func (s OpsItemNotFoundException) GoString() string {
41411	return s.String()
41412}
41413
41414func newErrorOpsItemNotFoundException(v protocol.ResponseMetadata) error {
41415	return &OpsItemNotFoundException{
41416		RespMetadata: v,
41417	}
41418}
41419
41420// Code returns the exception type name.
41421func (s *OpsItemNotFoundException) Code() string {
41422	return "OpsItemNotFoundException"
41423}
41424
41425// Message returns the exception's message.
41426func (s *OpsItemNotFoundException) Message() string {
41427	if s.Message_ != nil {
41428		return *s.Message_
41429	}
41430	return ""
41431}
41432
41433// OrigErr always returns nil, satisfies awserr.Error interface.
41434func (s *OpsItemNotFoundException) OrigErr() error {
41435	return nil
41436}
41437
41438func (s *OpsItemNotFoundException) Error() string {
41439	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
41440}
41441
41442// Status code returns the HTTP status code for the request's response error.
41443func (s *OpsItemNotFoundException) StatusCode() int {
41444	return s.RespMetadata.StatusCode
41445}
41446
41447// RequestID returns the service's response RequestID for request.
41448func (s *OpsItemNotFoundException) RequestID() string {
41449	return s.RespMetadata.RequestID
41450}
41451
41452// A notification about the OpsItem.
41453type OpsItemNotification struct {
41454	_ struct{} `type:"structure"`
41455
41456	// The Amazon Resource Name (ARN) of an Amazon Simple Notification Service (Amazon
41457	// SNS) topic where notifications are sent when this OpsItem is edited or changed.
41458	Arn *string `type:"string"`
41459}
41460
41461// String returns the string representation
41462func (s OpsItemNotification) String() string {
41463	return awsutil.Prettify(s)
41464}
41465
41466// GoString returns the string representation
41467func (s OpsItemNotification) GoString() string {
41468	return s.String()
41469}
41470
41471// SetArn sets the Arn field's value.
41472func (s *OpsItemNotification) SetArn(v string) *OpsItemNotification {
41473	s.Arn = &v
41474	return s
41475}
41476
41477// The Amazon Resource Name (ARN) is already associated with the OpsItem.
41478type OpsItemRelatedItemAlreadyExistsException struct {
41479	_            struct{}                  `type:"structure"`
41480	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
41481
41482	Message_ *string `locationName:"Message" type:"string"`
41483
41484	OpsItemId *string `type:"string"`
41485
41486	ResourceUri *string `type:"string"`
41487}
41488
41489// String returns the string representation
41490func (s OpsItemRelatedItemAlreadyExistsException) String() string {
41491	return awsutil.Prettify(s)
41492}
41493
41494// GoString returns the string representation
41495func (s OpsItemRelatedItemAlreadyExistsException) GoString() string {
41496	return s.String()
41497}
41498
41499func newErrorOpsItemRelatedItemAlreadyExistsException(v protocol.ResponseMetadata) error {
41500	return &OpsItemRelatedItemAlreadyExistsException{
41501		RespMetadata: v,
41502	}
41503}
41504
41505// Code returns the exception type name.
41506func (s *OpsItemRelatedItemAlreadyExistsException) Code() string {
41507	return "OpsItemRelatedItemAlreadyExistsException"
41508}
41509
41510// Message returns the exception's message.
41511func (s *OpsItemRelatedItemAlreadyExistsException) Message() string {
41512	if s.Message_ != nil {
41513		return *s.Message_
41514	}
41515	return ""
41516}
41517
41518// OrigErr always returns nil, satisfies awserr.Error interface.
41519func (s *OpsItemRelatedItemAlreadyExistsException) OrigErr() error {
41520	return nil
41521}
41522
41523func (s *OpsItemRelatedItemAlreadyExistsException) Error() string {
41524	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
41525}
41526
41527// Status code returns the HTTP status code for the request's response error.
41528func (s *OpsItemRelatedItemAlreadyExistsException) StatusCode() int {
41529	return s.RespMetadata.StatusCode
41530}
41531
41532// RequestID returns the service's response RequestID for request.
41533func (s *OpsItemRelatedItemAlreadyExistsException) RequestID() string {
41534	return s.RespMetadata.RequestID
41535}
41536
41537// The association wasn't found using the parameters you specified in the call.
41538// Verify the information and try again.
41539type OpsItemRelatedItemAssociationNotFoundException struct {
41540	_            struct{}                  `type:"structure"`
41541	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
41542
41543	Message_ *string `locationName:"Message" type:"string"`
41544}
41545
41546// String returns the string representation
41547func (s OpsItemRelatedItemAssociationNotFoundException) String() string {
41548	return awsutil.Prettify(s)
41549}
41550
41551// GoString returns the string representation
41552func (s OpsItemRelatedItemAssociationNotFoundException) GoString() string {
41553	return s.String()
41554}
41555
41556func newErrorOpsItemRelatedItemAssociationNotFoundException(v protocol.ResponseMetadata) error {
41557	return &OpsItemRelatedItemAssociationNotFoundException{
41558		RespMetadata: v,
41559	}
41560}
41561
41562// Code returns the exception type name.
41563func (s *OpsItemRelatedItemAssociationNotFoundException) Code() string {
41564	return "OpsItemRelatedItemAssociationNotFoundException"
41565}
41566
41567// Message returns the exception's message.
41568func (s *OpsItemRelatedItemAssociationNotFoundException) Message() string {
41569	if s.Message_ != nil {
41570		return *s.Message_
41571	}
41572	return ""
41573}
41574
41575// OrigErr always returns nil, satisfies awserr.Error interface.
41576func (s *OpsItemRelatedItemAssociationNotFoundException) OrigErr() error {
41577	return nil
41578}
41579
41580func (s *OpsItemRelatedItemAssociationNotFoundException) Error() string {
41581	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
41582}
41583
41584// Status code returns the HTTP status code for the request's response error.
41585func (s *OpsItemRelatedItemAssociationNotFoundException) StatusCode() int {
41586	return s.RespMetadata.StatusCode
41587}
41588
41589// RequestID returns the service's response RequestID for request.
41590func (s *OpsItemRelatedItemAssociationNotFoundException) RequestID() string {
41591	return s.RespMetadata.RequestID
41592}
41593
41594// Summary information about related-item resources for an OpsItem.
41595type OpsItemRelatedItemSummary struct {
41596	_ struct{} `type:"structure"`
41597
41598	// The association ID.
41599	AssociationId *string `type:"string"`
41600
41601	// The association type.
41602	AssociationType *string `type:"string"`
41603
41604	// Information about the user or resource that created an OpsItem event.
41605	CreatedBy *OpsItemIdentity `type:"structure"`
41606
41607	// The time the related-item association was created.
41608	CreatedTime *time.Time `type:"timestamp"`
41609
41610	// Information about the user or resource that created an OpsItem event.
41611	LastModifiedBy *OpsItemIdentity `type:"structure"`
41612
41613	// The time the related-item association was last updated.
41614	LastModifiedTime *time.Time `type:"timestamp"`
41615
41616	// The OpsItem ID.
41617	OpsItemId *string `type:"string"`
41618
41619	// The resource type.
41620	ResourceType *string `type:"string"`
41621
41622	// The Amazon Resource Name (ARN) of the related-item resource.
41623	ResourceUri *string `type:"string"`
41624}
41625
41626// String returns the string representation
41627func (s OpsItemRelatedItemSummary) String() string {
41628	return awsutil.Prettify(s)
41629}
41630
41631// GoString returns the string representation
41632func (s OpsItemRelatedItemSummary) GoString() string {
41633	return s.String()
41634}
41635
41636// SetAssociationId sets the AssociationId field's value.
41637func (s *OpsItemRelatedItemSummary) SetAssociationId(v string) *OpsItemRelatedItemSummary {
41638	s.AssociationId = &v
41639	return s
41640}
41641
41642// SetAssociationType sets the AssociationType field's value.
41643func (s *OpsItemRelatedItemSummary) SetAssociationType(v string) *OpsItemRelatedItemSummary {
41644	s.AssociationType = &v
41645	return s
41646}
41647
41648// SetCreatedBy sets the CreatedBy field's value.
41649func (s *OpsItemRelatedItemSummary) SetCreatedBy(v *OpsItemIdentity) *OpsItemRelatedItemSummary {
41650	s.CreatedBy = v
41651	return s
41652}
41653
41654// SetCreatedTime sets the CreatedTime field's value.
41655func (s *OpsItemRelatedItemSummary) SetCreatedTime(v time.Time) *OpsItemRelatedItemSummary {
41656	s.CreatedTime = &v
41657	return s
41658}
41659
41660// SetLastModifiedBy sets the LastModifiedBy field's value.
41661func (s *OpsItemRelatedItemSummary) SetLastModifiedBy(v *OpsItemIdentity) *OpsItemRelatedItemSummary {
41662	s.LastModifiedBy = v
41663	return s
41664}
41665
41666// SetLastModifiedTime sets the LastModifiedTime field's value.
41667func (s *OpsItemRelatedItemSummary) SetLastModifiedTime(v time.Time) *OpsItemRelatedItemSummary {
41668	s.LastModifiedTime = &v
41669	return s
41670}
41671
41672// SetOpsItemId sets the OpsItemId field's value.
41673func (s *OpsItemRelatedItemSummary) SetOpsItemId(v string) *OpsItemRelatedItemSummary {
41674	s.OpsItemId = &v
41675	return s
41676}
41677
41678// SetResourceType sets the ResourceType field's value.
41679func (s *OpsItemRelatedItemSummary) SetResourceType(v string) *OpsItemRelatedItemSummary {
41680	s.ResourceType = &v
41681	return s
41682}
41683
41684// SetResourceUri sets the ResourceUri field's value.
41685func (s *OpsItemRelatedItemSummary) SetResourceUri(v string) *OpsItemRelatedItemSummary {
41686	s.ResourceUri = &v
41687	return s
41688}
41689
41690// Describes a filter for a specific list of related-item resources.
41691type OpsItemRelatedItemsFilter struct {
41692	_ struct{} `type:"structure"`
41693
41694	// The name of the filter key. Supported values include ResourceUri, ResourceType,
41695	// or AssociationId.
41696	//
41697	// Key is a required field
41698	Key *string `type:"string" required:"true" enum:"OpsItemRelatedItemsFilterKey"`
41699
41700	// The operator used by the filter call. The only supported operator is EQUAL.
41701	//
41702	// Operator is a required field
41703	Operator *string `type:"string" required:"true" enum:"OpsItemRelatedItemsFilterOperator"`
41704
41705	// The values for the filter.
41706	//
41707	// Values is a required field
41708	Values []*string `type:"list" required:"true"`
41709}
41710
41711// String returns the string representation
41712func (s OpsItemRelatedItemsFilter) String() string {
41713	return awsutil.Prettify(s)
41714}
41715
41716// GoString returns the string representation
41717func (s OpsItemRelatedItemsFilter) GoString() string {
41718	return s.String()
41719}
41720
41721// Validate inspects the fields of the type to determine if they are valid.
41722func (s *OpsItemRelatedItemsFilter) Validate() error {
41723	invalidParams := request.ErrInvalidParams{Context: "OpsItemRelatedItemsFilter"}
41724	if s.Key == nil {
41725		invalidParams.Add(request.NewErrParamRequired("Key"))
41726	}
41727	if s.Operator == nil {
41728		invalidParams.Add(request.NewErrParamRequired("Operator"))
41729	}
41730	if s.Values == nil {
41731		invalidParams.Add(request.NewErrParamRequired("Values"))
41732	}
41733
41734	if invalidParams.Len() > 0 {
41735		return invalidParams
41736	}
41737	return nil
41738}
41739
41740// SetKey sets the Key field's value.
41741func (s *OpsItemRelatedItemsFilter) SetKey(v string) *OpsItemRelatedItemsFilter {
41742	s.Key = &v
41743	return s
41744}
41745
41746// SetOperator sets the Operator field's value.
41747func (s *OpsItemRelatedItemsFilter) SetOperator(v string) *OpsItemRelatedItemsFilter {
41748	s.Operator = &v
41749	return s
41750}
41751
41752// SetValues sets the Values field's value.
41753func (s *OpsItemRelatedItemsFilter) SetValues(v []*string) *OpsItemRelatedItemsFilter {
41754	s.Values = v
41755	return s
41756}
41757
41758// A count of OpsItems.
41759type OpsItemSummary struct {
41760	_ struct{} `type:"structure"`
41761
41762	// The time a runbook workflow ended. Currently reported only for the OpsItem
41763	// type /aws/changerequest.
41764	ActualEndTime *time.Time `type:"timestamp"`
41765
41766	// The time a runbook workflow started. Currently reported only for the OpsItem
41767	// type /aws/changerequest.
41768	ActualStartTime *time.Time `type:"timestamp"`
41769
41770	// A list of OpsItems by category.
41771	Category *string `min:"1" type:"string"`
41772
41773	// The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem.
41774	CreatedBy *string `type:"string"`
41775
41776	// The date and time the OpsItem was created.
41777	CreatedTime *time.Time `type:"timestamp"`
41778
41779	// The Amazon Resource Name (ARN) of the IAM entity that created the OpsItem.
41780	LastModifiedBy *string `type:"string"`
41781
41782	// The date and time the OpsItem was last updated.
41783	LastModifiedTime *time.Time `type:"timestamp"`
41784
41785	// Operational data is custom data that provides useful reference details about
41786	// the OpsItem.
41787	OperationalData map[string]*OpsItemDataValue `type:"map"`
41788
41789	// The ID of the OpsItem.
41790	OpsItemId *string `type:"string"`
41791
41792	// The type of OpsItem. Currently, the only valid values are /aws/changerequest
41793	// and /aws/issue.
41794	OpsItemType *string `type:"string"`
41795
41796	// The time specified in a change request for a runbook workflow to end. Currently
41797	// supported only for the OpsItem type /aws/changerequest.
41798	PlannedEndTime *time.Time `type:"timestamp"`
41799
41800	// The time specified in a change request for a runbook workflow to start. Currently
41801	// supported only for the OpsItem type /aws/changerequest.
41802	PlannedStartTime *time.Time `type:"timestamp"`
41803
41804	// The importance of this OpsItem in relation to other OpsItems in the system.
41805	Priority *int64 `min:"1" type:"integer"`
41806
41807	// A list of OpsItems by severity.
41808	Severity *string `min:"1" type:"string"`
41809
41810	// The impacted Amazon Web Services resource.
41811	Source *string `min:"1" type:"string"`
41812
41813	// The OpsItem status. Status can be Open, In Progress, or Resolved.
41814	Status *string `type:"string" enum:"OpsItemStatus"`
41815
41816	// A short heading that describes the nature of the OpsItem and the impacted
41817	// resource.
41818	Title *string `min:"1" type:"string"`
41819}
41820
41821// String returns the string representation
41822func (s OpsItemSummary) String() string {
41823	return awsutil.Prettify(s)
41824}
41825
41826// GoString returns the string representation
41827func (s OpsItemSummary) GoString() string {
41828	return s.String()
41829}
41830
41831// SetActualEndTime sets the ActualEndTime field's value.
41832func (s *OpsItemSummary) SetActualEndTime(v time.Time) *OpsItemSummary {
41833	s.ActualEndTime = &v
41834	return s
41835}
41836
41837// SetActualStartTime sets the ActualStartTime field's value.
41838func (s *OpsItemSummary) SetActualStartTime(v time.Time) *OpsItemSummary {
41839	s.ActualStartTime = &v
41840	return s
41841}
41842
41843// SetCategory sets the Category field's value.
41844func (s *OpsItemSummary) SetCategory(v string) *OpsItemSummary {
41845	s.Category = &v
41846	return s
41847}
41848
41849// SetCreatedBy sets the CreatedBy field's value.
41850func (s *OpsItemSummary) SetCreatedBy(v string) *OpsItemSummary {
41851	s.CreatedBy = &v
41852	return s
41853}
41854
41855// SetCreatedTime sets the CreatedTime field's value.
41856func (s *OpsItemSummary) SetCreatedTime(v time.Time) *OpsItemSummary {
41857	s.CreatedTime = &v
41858	return s
41859}
41860
41861// SetLastModifiedBy sets the LastModifiedBy field's value.
41862func (s *OpsItemSummary) SetLastModifiedBy(v string) *OpsItemSummary {
41863	s.LastModifiedBy = &v
41864	return s
41865}
41866
41867// SetLastModifiedTime sets the LastModifiedTime field's value.
41868func (s *OpsItemSummary) SetLastModifiedTime(v time.Time) *OpsItemSummary {
41869	s.LastModifiedTime = &v
41870	return s
41871}
41872
41873// SetOperationalData sets the OperationalData field's value.
41874func (s *OpsItemSummary) SetOperationalData(v map[string]*OpsItemDataValue) *OpsItemSummary {
41875	s.OperationalData = v
41876	return s
41877}
41878
41879// SetOpsItemId sets the OpsItemId field's value.
41880func (s *OpsItemSummary) SetOpsItemId(v string) *OpsItemSummary {
41881	s.OpsItemId = &v
41882	return s
41883}
41884
41885// SetOpsItemType sets the OpsItemType field's value.
41886func (s *OpsItemSummary) SetOpsItemType(v string) *OpsItemSummary {
41887	s.OpsItemType = &v
41888	return s
41889}
41890
41891// SetPlannedEndTime sets the PlannedEndTime field's value.
41892func (s *OpsItemSummary) SetPlannedEndTime(v time.Time) *OpsItemSummary {
41893	s.PlannedEndTime = &v
41894	return s
41895}
41896
41897// SetPlannedStartTime sets the PlannedStartTime field's value.
41898func (s *OpsItemSummary) SetPlannedStartTime(v time.Time) *OpsItemSummary {
41899	s.PlannedStartTime = &v
41900	return s
41901}
41902
41903// SetPriority sets the Priority field's value.
41904func (s *OpsItemSummary) SetPriority(v int64) *OpsItemSummary {
41905	s.Priority = &v
41906	return s
41907}
41908
41909// SetSeverity sets the Severity field's value.
41910func (s *OpsItemSummary) SetSeverity(v string) *OpsItemSummary {
41911	s.Severity = &v
41912	return s
41913}
41914
41915// SetSource sets the Source field's value.
41916func (s *OpsItemSummary) SetSource(v string) *OpsItemSummary {
41917	s.Source = &v
41918	return s
41919}
41920
41921// SetStatus sets the Status field's value.
41922func (s *OpsItemSummary) SetStatus(v string) *OpsItemSummary {
41923	s.Status = &v
41924	return s
41925}
41926
41927// SetTitle sets the Title field's value.
41928func (s *OpsItemSummary) SetTitle(v string) *OpsItemSummary {
41929	s.Title = &v
41930	return s
41931}
41932
41933// Operational metadata for an application in Application Manager.
41934type OpsMetadata struct {
41935	_ struct{} `type:"structure"`
41936
41937	// The date the OpsMetadata objects was created.
41938	CreationDate *time.Time `type:"timestamp"`
41939
41940	// The date the OpsMetadata object was last updated.
41941	LastModifiedDate *time.Time `type:"timestamp"`
41942
41943	// The user name who last updated the OpsMetadata object.
41944	LastModifiedUser *string `type:"string"`
41945
41946	// The Amazon Resource Name (ARN) of the OpsMetadata Object or blob.
41947	OpsMetadataArn *string `min:"1" type:"string"`
41948
41949	// The ID of the Application Manager application.
41950	ResourceId *string `min:"1" type:"string"`
41951}
41952
41953// String returns the string representation
41954func (s OpsMetadata) String() string {
41955	return awsutil.Prettify(s)
41956}
41957
41958// GoString returns the string representation
41959func (s OpsMetadata) GoString() string {
41960	return s.String()
41961}
41962
41963// SetCreationDate sets the CreationDate field's value.
41964func (s *OpsMetadata) SetCreationDate(v time.Time) *OpsMetadata {
41965	s.CreationDate = &v
41966	return s
41967}
41968
41969// SetLastModifiedDate sets the LastModifiedDate field's value.
41970func (s *OpsMetadata) SetLastModifiedDate(v time.Time) *OpsMetadata {
41971	s.LastModifiedDate = &v
41972	return s
41973}
41974
41975// SetLastModifiedUser sets the LastModifiedUser field's value.
41976func (s *OpsMetadata) SetLastModifiedUser(v string) *OpsMetadata {
41977	s.LastModifiedUser = &v
41978	return s
41979}
41980
41981// SetOpsMetadataArn sets the OpsMetadataArn field's value.
41982func (s *OpsMetadata) SetOpsMetadataArn(v string) *OpsMetadata {
41983	s.OpsMetadataArn = &v
41984	return s
41985}
41986
41987// SetResourceId sets the ResourceId field's value.
41988func (s *OpsMetadata) SetResourceId(v string) *OpsMetadata {
41989	s.ResourceId = &v
41990	return s
41991}
41992
41993// An OpsMetadata object already exists for the selected resource.
41994type OpsMetadataAlreadyExistsException struct {
41995	_            struct{}                  `type:"structure"`
41996	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
41997
41998	Message_ *string `locationName:"message" type:"string"`
41999}
42000
42001// String returns the string representation
42002func (s OpsMetadataAlreadyExistsException) String() string {
42003	return awsutil.Prettify(s)
42004}
42005
42006// GoString returns the string representation
42007func (s OpsMetadataAlreadyExistsException) GoString() string {
42008	return s.String()
42009}
42010
42011func newErrorOpsMetadataAlreadyExistsException(v protocol.ResponseMetadata) error {
42012	return &OpsMetadataAlreadyExistsException{
42013		RespMetadata: v,
42014	}
42015}
42016
42017// Code returns the exception type name.
42018func (s *OpsMetadataAlreadyExistsException) Code() string {
42019	return "OpsMetadataAlreadyExistsException"
42020}
42021
42022// Message returns the exception's message.
42023func (s *OpsMetadataAlreadyExistsException) Message() string {
42024	if s.Message_ != nil {
42025		return *s.Message_
42026	}
42027	return ""
42028}
42029
42030// OrigErr always returns nil, satisfies awserr.Error interface.
42031func (s *OpsMetadataAlreadyExistsException) OrigErr() error {
42032	return nil
42033}
42034
42035func (s *OpsMetadataAlreadyExistsException) Error() string {
42036	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42037}
42038
42039// Status code returns the HTTP status code for the request's response error.
42040func (s *OpsMetadataAlreadyExistsException) StatusCode() int {
42041	return s.RespMetadata.StatusCode
42042}
42043
42044// RequestID returns the service's response RequestID for request.
42045func (s *OpsMetadataAlreadyExistsException) RequestID() string {
42046	return s.RespMetadata.RequestID
42047}
42048
42049// A filter to limit the number of OpsMetadata objects displayed.
42050type OpsMetadataFilter struct {
42051	_ struct{} `type:"structure"`
42052
42053	// A filter key.
42054	//
42055	// Key is a required field
42056	Key *string `min:"1" type:"string" required:"true"`
42057
42058	// A filter value.
42059	//
42060	// Values is a required field
42061	Values []*string `min:"1" type:"list" required:"true"`
42062}
42063
42064// String returns the string representation
42065func (s OpsMetadataFilter) String() string {
42066	return awsutil.Prettify(s)
42067}
42068
42069// GoString returns the string representation
42070func (s OpsMetadataFilter) GoString() string {
42071	return s.String()
42072}
42073
42074// Validate inspects the fields of the type to determine if they are valid.
42075func (s *OpsMetadataFilter) Validate() error {
42076	invalidParams := request.ErrInvalidParams{Context: "OpsMetadataFilter"}
42077	if s.Key == nil {
42078		invalidParams.Add(request.NewErrParamRequired("Key"))
42079	}
42080	if s.Key != nil && len(*s.Key) < 1 {
42081		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
42082	}
42083	if s.Values == nil {
42084		invalidParams.Add(request.NewErrParamRequired("Values"))
42085	}
42086	if s.Values != nil && len(s.Values) < 1 {
42087		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
42088	}
42089
42090	if invalidParams.Len() > 0 {
42091		return invalidParams
42092	}
42093	return nil
42094}
42095
42096// SetKey sets the Key field's value.
42097func (s *OpsMetadataFilter) SetKey(v string) *OpsMetadataFilter {
42098	s.Key = &v
42099	return s
42100}
42101
42102// SetValues sets the Values field's value.
42103func (s *OpsMetadataFilter) SetValues(v []*string) *OpsMetadataFilter {
42104	s.Values = v
42105	return s
42106}
42107
42108// One of the arguments passed is invalid.
42109type OpsMetadataInvalidArgumentException struct {
42110	_            struct{}                  `type:"structure"`
42111	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42112
42113	Message_ *string `locationName:"message" type:"string"`
42114}
42115
42116// String returns the string representation
42117func (s OpsMetadataInvalidArgumentException) String() string {
42118	return awsutil.Prettify(s)
42119}
42120
42121// GoString returns the string representation
42122func (s OpsMetadataInvalidArgumentException) GoString() string {
42123	return s.String()
42124}
42125
42126func newErrorOpsMetadataInvalidArgumentException(v protocol.ResponseMetadata) error {
42127	return &OpsMetadataInvalidArgumentException{
42128		RespMetadata: v,
42129	}
42130}
42131
42132// Code returns the exception type name.
42133func (s *OpsMetadataInvalidArgumentException) Code() string {
42134	return "OpsMetadataInvalidArgumentException"
42135}
42136
42137// Message returns the exception's message.
42138func (s *OpsMetadataInvalidArgumentException) Message() string {
42139	if s.Message_ != nil {
42140		return *s.Message_
42141	}
42142	return ""
42143}
42144
42145// OrigErr always returns nil, satisfies awserr.Error interface.
42146func (s *OpsMetadataInvalidArgumentException) OrigErr() error {
42147	return nil
42148}
42149
42150func (s *OpsMetadataInvalidArgumentException) Error() string {
42151	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42152}
42153
42154// Status code returns the HTTP status code for the request's response error.
42155func (s *OpsMetadataInvalidArgumentException) StatusCode() int {
42156	return s.RespMetadata.StatusCode
42157}
42158
42159// RequestID returns the service's response RequestID for request.
42160func (s *OpsMetadataInvalidArgumentException) RequestID() string {
42161	return s.RespMetadata.RequestID
42162}
42163
42164// The OpsMetadata object exceeds the maximum number of OpsMetadata keys that
42165// you can assign to an application in Application Manager.
42166type OpsMetadataKeyLimitExceededException struct {
42167	_            struct{}                  `type:"structure"`
42168	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42169
42170	Message_ *string `locationName:"message" type:"string"`
42171}
42172
42173// String returns the string representation
42174func (s OpsMetadataKeyLimitExceededException) String() string {
42175	return awsutil.Prettify(s)
42176}
42177
42178// GoString returns the string representation
42179func (s OpsMetadataKeyLimitExceededException) GoString() string {
42180	return s.String()
42181}
42182
42183func newErrorOpsMetadataKeyLimitExceededException(v protocol.ResponseMetadata) error {
42184	return &OpsMetadataKeyLimitExceededException{
42185		RespMetadata: v,
42186	}
42187}
42188
42189// Code returns the exception type name.
42190func (s *OpsMetadataKeyLimitExceededException) Code() string {
42191	return "OpsMetadataKeyLimitExceededException"
42192}
42193
42194// Message returns the exception's message.
42195func (s *OpsMetadataKeyLimitExceededException) Message() string {
42196	if s.Message_ != nil {
42197		return *s.Message_
42198	}
42199	return ""
42200}
42201
42202// OrigErr always returns nil, satisfies awserr.Error interface.
42203func (s *OpsMetadataKeyLimitExceededException) OrigErr() error {
42204	return nil
42205}
42206
42207func (s *OpsMetadataKeyLimitExceededException) Error() string {
42208	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42209}
42210
42211// Status code returns the HTTP status code for the request's response error.
42212func (s *OpsMetadataKeyLimitExceededException) StatusCode() int {
42213	return s.RespMetadata.StatusCode
42214}
42215
42216// RequestID returns the service's response RequestID for request.
42217func (s *OpsMetadataKeyLimitExceededException) RequestID() string {
42218	return s.RespMetadata.RequestID
42219}
42220
42221// Your account reached the maximum number of OpsMetadata objects allowed by
42222// Application Manager. The maximum is 200 OpsMetadata objects. Delete one or
42223// more OpsMetadata object and try again.
42224type OpsMetadataLimitExceededException struct {
42225	_            struct{}                  `type:"structure"`
42226	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42227
42228	Message_ *string `locationName:"message" type:"string"`
42229}
42230
42231// String returns the string representation
42232func (s OpsMetadataLimitExceededException) String() string {
42233	return awsutil.Prettify(s)
42234}
42235
42236// GoString returns the string representation
42237func (s OpsMetadataLimitExceededException) GoString() string {
42238	return s.String()
42239}
42240
42241func newErrorOpsMetadataLimitExceededException(v protocol.ResponseMetadata) error {
42242	return &OpsMetadataLimitExceededException{
42243		RespMetadata: v,
42244	}
42245}
42246
42247// Code returns the exception type name.
42248func (s *OpsMetadataLimitExceededException) Code() string {
42249	return "OpsMetadataLimitExceededException"
42250}
42251
42252// Message returns the exception's message.
42253func (s *OpsMetadataLimitExceededException) Message() string {
42254	if s.Message_ != nil {
42255		return *s.Message_
42256	}
42257	return ""
42258}
42259
42260// OrigErr always returns nil, satisfies awserr.Error interface.
42261func (s *OpsMetadataLimitExceededException) OrigErr() error {
42262	return nil
42263}
42264
42265func (s *OpsMetadataLimitExceededException) Error() string {
42266	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42267}
42268
42269// Status code returns the HTTP status code for the request's response error.
42270func (s *OpsMetadataLimitExceededException) StatusCode() int {
42271	return s.RespMetadata.StatusCode
42272}
42273
42274// RequestID returns the service's response RequestID for request.
42275func (s *OpsMetadataLimitExceededException) RequestID() string {
42276	return s.RespMetadata.RequestID
42277}
42278
42279// The OpsMetadata object doesn't exist.
42280type OpsMetadataNotFoundException struct {
42281	_            struct{}                  `type:"structure"`
42282	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42283
42284	Message_ *string `locationName:"message" type:"string"`
42285}
42286
42287// String returns the string representation
42288func (s OpsMetadataNotFoundException) String() string {
42289	return awsutil.Prettify(s)
42290}
42291
42292// GoString returns the string representation
42293func (s OpsMetadataNotFoundException) GoString() string {
42294	return s.String()
42295}
42296
42297func newErrorOpsMetadataNotFoundException(v protocol.ResponseMetadata) error {
42298	return &OpsMetadataNotFoundException{
42299		RespMetadata: v,
42300	}
42301}
42302
42303// Code returns the exception type name.
42304func (s *OpsMetadataNotFoundException) Code() string {
42305	return "OpsMetadataNotFoundException"
42306}
42307
42308// Message returns the exception's message.
42309func (s *OpsMetadataNotFoundException) Message() string {
42310	if s.Message_ != nil {
42311		return *s.Message_
42312	}
42313	return ""
42314}
42315
42316// OrigErr always returns nil, satisfies awserr.Error interface.
42317func (s *OpsMetadataNotFoundException) OrigErr() error {
42318	return nil
42319}
42320
42321func (s *OpsMetadataNotFoundException) Error() string {
42322	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42323}
42324
42325// Status code returns the HTTP status code for the request's response error.
42326func (s *OpsMetadataNotFoundException) StatusCode() int {
42327	return s.RespMetadata.StatusCode
42328}
42329
42330// RequestID returns the service's response RequestID for request.
42331func (s *OpsMetadataNotFoundException) RequestID() string {
42332	return s.RespMetadata.RequestID
42333}
42334
42335// The system is processing too many concurrent updates. Wait a few moments
42336// and try again.
42337type OpsMetadataTooManyUpdatesException struct {
42338	_            struct{}                  `type:"structure"`
42339	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42340
42341	Message_ *string `locationName:"message" type:"string"`
42342}
42343
42344// String returns the string representation
42345func (s OpsMetadataTooManyUpdatesException) String() string {
42346	return awsutil.Prettify(s)
42347}
42348
42349// GoString returns the string representation
42350func (s OpsMetadataTooManyUpdatesException) GoString() string {
42351	return s.String()
42352}
42353
42354func newErrorOpsMetadataTooManyUpdatesException(v protocol.ResponseMetadata) error {
42355	return &OpsMetadataTooManyUpdatesException{
42356		RespMetadata: v,
42357	}
42358}
42359
42360// Code returns the exception type name.
42361func (s *OpsMetadataTooManyUpdatesException) Code() string {
42362	return "OpsMetadataTooManyUpdatesException"
42363}
42364
42365// Message returns the exception's message.
42366func (s *OpsMetadataTooManyUpdatesException) Message() string {
42367	if s.Message_ != nil {
42368		return *s.Message_
42369	}
42370	return ""
42371}
42372
42373// OrigErr always returns nil, satisfies awserr.Error interface.
42374func (s *OpsMetadataTooManyUpdatesException) OrigErr() error {
42375	return nil
42376}
42377
42378func (s *OpsMetadataTooManyUpdatesException) Error() string {
42379	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42380}
42381
42382// Status code returns the HTTP status code for the request's response error.
42383func (s *OpsMetadataTooManyUpdatesException) StatusCode() int {
42384	return s.RespMetadata.StatusCode
42385}
42386
42387// RequestID returns the service's response RequestID for request.
42388func (s *OpsMetadataTooManyUpdatesException) RequestID() string {
42389	return s.RespMetadata.RequestID
42390}
42391
42392// The OpsItem data type to return.
42393type OpsResultAttribute struct {
42394	_ struct{} `type:"structure"`
42395
42396	// Name of the data type. Valid value: AWS:OpsItem, AWS:EC2InstanceInformation,
42397	// AWS:OpsItemTrendline, or AWS:ComplianceSummary.
42398	//
42399	// TypeName is a required field
42400	TypeName *string `min:"1" type:"string" required:"true"`
42401}
42402
42403// String returns the string representation
42404func (s OpsResultAttribute) String() string {
42405	return awsutil.Prettify(s)
42406}
42407
42408// GoString returns the string representation
42409func (s OpsResultAttribute) GoString() string {
42410	return s.String()
42411}
42412
42413// Validate inspects the fields of the type to determine if they are valid.
42414func (s *OpsResultAttribute) Validate() error {
42415	invalidParams := request.ErrInvalidParams{Context: "OpsResultAttribute"}
42416	if s.TypeName == nil {
42417		invalidParams.Add(request.NewErrParamRequired("TypeName"))
42418	}
42419	if s.TypeName != nil && len(*s.TypeName) < 1 {
42420		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
42421	}
42422
42423	if invalidParams.Len() > 0 {
42424		return invalidParams
42425	}
42426	return nil
42427}
42428
42429// SetTypeName sets the TypeName field's value.
42430func (s *OpsResultAttribute) SetTypeName(v string) *OpsResultAttribute {
42431	s.TypeName = &v
42432	return s
42433}
42434
42435// Information about the source where the association execution details are
42436// stored.
42437type OutputSource struct {
42438	_ struct{} `type:"structure"`
42439
42440	// The ID of the output source, for example the URL of an S3 bucket.
42441	OutputSourceId *string `min:"36" type:"string"`
42442
42443	// The type of source where the association execution details are stored, for
42444	// example, Amazon S3.
42445	OutputSourceType *string `type:"string"`
42446}
42447
42448// String returns the string representation
42449func (s OutputSource) String() string {
42450	return awsutil.Prettify(s)
42451}
42452
42453// GoString returns the string representation
42454func (s OutputSource) GoString() string {
42455	return s.String()
42456}
42457
42458// SetOutputSourceId sets the OutputSourceId field's value.
42459func (s *OutputSource) SetOutputSourceId(v string) *OutputSource {
42460	s.OutputSourceId = &v
42461	return s
42462}
42463
42464// SetOutputSourceType sets the OutputSourceType field's value.
42465func (s *OutputSource) SetOutputSourceType(v string) *OutputSource {
42466	s.OutputSourceType = &v
42467	return s
42468}
42469
42470// An Amazon Web Services Systems Manager parameter in Parameter Store.
42471type Parameter struct {
42472	_ struct{} `type:"structure"`
42473
42474	// The Amazon Resource Name (ARN) of the parameter.
42475	ARN *string `type:"string"`
42476
42477	// The data type of the parameter, such as text or aws:ec2:image. The default
42478	// is text.
42479	DataType *string `type:"string"`
42480
42481	// Date the parameter was last changed or updated and the parameter version
42482	// was created.
42483	LastModifiedDate *time.Time `type:"timestamp"`
42484
42485	// The name of the parameter.
42486	Name *string `min:"1" type:"string"`
42487
42488	// Either the version number or the label used to retrieve the parameter value.
42489	// Specify selectors by using one of the following formats:
42490	//
42491	// parameter_name:version
42492	//
42493	// parameter_name:label
42494	Selector *string `type:"string"`
42495
42496	// Applies to parameters that reference information in other Amazon Web Services
42497	// services. SourceResult is the raw result or response from the source.
42498	SourceResult *string `type:"string"`
42499
42500	// The type of parameter. Valid values include the following: String, StringList,
42501	// and SecureString.
42502	Type *string `type:"string" enum:"ParameterType"`
42503
42504	// The parameter value.
42505	Value *string `type:"string"`
42506
42507	// The parameter version.
42508	Version *int64 `type:"long"`
42509}
42510
42511// String returns the string representation
42512func (s Parameter) String() string {
42513	return awsutil.Prettify(s)
42514}
42515
42516// GoString returns the string representation
42517func (s Parameter) GoString() string {
42518	return s.String()
42519}
42520
42521// SetARN sets the ARN field's value.
42522func (s *Parameter) SetARN(v string) *Parameter {
42523	s.ARN = &v
42524	return s
42525}
42526
42527// SetDataType sets the DataType field's value.
42528func (s *Parameter) SetDataType(v string) *Parameter {
42529	s.DataType = &v
42530	return s
42531}
42532
42533// SetLastModifiedDate sets the LastModifiedDate field's value.
42534func (s *Parameter) SetLastModifiedDate(v time.Time) *Parameter {
42535	s.LastModifiedDate = &v
42536	return s
42537}
42538
42539// SetName sets the Name field's value.
42540func (s *Parameter) SetName(v string) *Parameter {
42541	s.Name = &v
42542	return s
42543}
42544
42545// SetSelector sets the Selector field's value.
42546func (s *Parameter) SetSelector(v string) *Parameter {
42547	s.Selector = &v
42548	return s
42549}
42550
42551// SetSourceResult sets the SourceResult field's value.
42552func (s *Parameter) SetSourceResult(v string) *Parameter {
42553	s.SourceResult = &v
42554	return s
42555}
42556
42557// SetType sets the Type field's value.
42558func (s *Parameter) SetType(v string) *Parameter {
42559	s.Type = &v
42560	return s
42561}
42562
42563// SetValue sets the Value field's value.
42564func (s *Parameter) SetValue(v string) *Parameter {
42565	s.Value = &v
42566	return s
42567}
42568
42569// SetVersion sets the Version field's value.
42570func (s *Parameter) SetVersion(v int64) *Parameter {
42571	s.Version = &v
42572	return s
42573}
42574
42575// The parameter already exists. You can't create duplicate parameters.
42576type ParameterAlreadyExists struct {
42577	_            struct{}                  `type:"structure"`
42578	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42579
42580	Message_ *string `locationName:"message" type:"string"`
42581}
42582
42583// String returns the string representation
42584func (s ParameterAlreadyExists) String() string {
42585	return awsutil.Prettify(s)
42586}
42587
42588// GoString returns the string representation
42589func (s ParameterAlreadyExists) GoString() string {
42590	return s.String()
42591}
42592
42593func newErrorParameterAlreadyExists(v protocol.ResponseMetadata) error {
42594	return &ParameterAlreadyExists{
42595		RespMetadata: v,
42596	}
42597}
42598
42599// Code returns the exception type name.
42600func (s *ParameterAlreadyExists) Code() string {
42601	return "ParameterAlreadyExists"
42602}
42603
42604// Message returns the exception's message.
42605func (s *ParameterAlreadyExists) Message() string {
42606	if s.Message_ != nil {
42607		return *s.Message_
42608	}
42609	return ""
42610}
42611
42612// OrigErr always returns nil, satisfies awserr.Error interface.
42613func (s *ParameterAlreadyExists) OrigErr() error {
42614	return nil
42615}
42616
42617func (s *ParameterAlreadyExists) Error() string {
42618	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42619}
42620
42621// Status code returns the HTTP status code for the request's response error.
42622func (s *ParameterAlreadyExists) StatusCode() int {
42623	return s.RespMetadata.StatusCode
42624}
42625
42626// RequestID returns the service's response RequestID for request.
42627func (s *ParameterAlreadyExists) RequestID() string {
42628	return s.RespMetadata.RequestID
42629}
42630
42631// Information about parameter usage.
42632type ParameterHistory struct {
42633	_ struct{} `type:"structure"`
42634
42635	// Parameter names can include the following letters and symbols.
42636	//
42637	// a-zA-Z0-9_.-
42638	AllowedPattern *string `type:"string"`
42639
42640	// The data type of the parameter, such as text or aws:ec2:image. The default
42641	// is text.
42642	DataType *string `type:"string"`
42643
42644	// Information about the parameter.
42645	Description *string `type:"string"`
42646
42647	// The ID of the query key used for this parameter.
42648	KeyId *string `min:"1" type:"string"`
42649
42650	// Labels assigned to the parameter version.
42651	Labels []*string `min:"1" type:"list"`
42652
42653	// Date the parameter was last changed or updated.
42654	LastModifiedDate *time.Time `type:"timestamp"`
42655
42656	// Amazon Resource Name (ARN) of the Amazon Web Services user who last changed
42657	// the parameter.
42658	LastModifiedUser *string `type:"string"`
42659
42660	// The name of the parameter.
42661	Name *string `min:"1" type:"string"`
42662
42663	// Information about the policies assigned to a parameter.
42664	//
42665	// Assigning parameter policies (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html)
42666	// in the Amazon Web Services Systems Manager User Guide.
42667	Policies []*ParameterInlinePolicy `type:"list"`
42668
42669	// The parameter tier.
42670	Tier *string `type:"string" enum:"ParameterTier"`
42671
42672	// The type of parameter used.
42673	Type *string `type:"string" enum:"ParameterType"`
42674
42675	// The parameter value.
42676	Value *string `type:"string"`
42677
42678	// The parameter version.
42679	Version *int64 `type:"long"`
42680}
42681
42682// String returns the string representation
42683func (s ParameterHistory) String() string {
42684	return awsutil.Prettify(s)
42685}
42686
42687// GoString returns the string representation
42688func (s ParameterHistory) GoString() string {
42689	return s.String()
42690}
42691
42692// SetAllowedPattern sets the AllowedPattern field's value.
42693func (s *ParameterHistory) SetAllowedPattern(v string) *ParameterHistory {
42694	s.AllowedPattern = &v
42695	return s
42696}
42697
42698// SetDataType sets the DataType field's value.
42699func (s *ParameterHistory) SetDataType(v string) *ParameterHistory {
42700	s.DataType = &v
42701	return s
42702}
42703
42704// SetDescription sets the Description field's value.
42705func (s *ParameterHistory) SetDescription(v string) *ParameterHistory {
42706	s.Description = &v
42707	return s
42708}
42709
42710// SetKeyId sets the KeyId field's value.
42711func (s *ParameterHistory) SetKeyId(v string) *ParameterHistory {
42712	s.KeyId = &v
42713	return s
42714}
42715
42716// SetLabels sets the Labels field's value.
42717func (s *ParameterHistory) SetLabels(v []*string) *ParameterHistory {
42718	s.Labels = v
42719	return s
42720}
42721
42722// SetLastModifiedDate sets the LastModifiedDate field's value.
42723func (s *ParameterHistory) SetLastModifiedDate(v time.Time) *ParameterHistory {
42724	s.LastModifiedDate = &v
42725	return s
42726}
42727
42728// SetLastModifiedUser sets the LastModifiedUser field's value.
42729func (s *ParameterHistory) SetLastModifiedUser(v string) *ParameterHistory {
42730	s.LastModifiedUser = &v
42731	return s
42732}
42733
42734// SetName sets the Name field's value.
42735func (s *ParameterHistory) SetName(v string) *ParameterHistory {
42736	s.Name = &v
42737	return s
42738}
42739
42740// SetPolicies sets the Policies field's value.
42741func (s *ParameterHistory) SetPolicies(v []*ParameterInlinePolicy) *ParameterHistory {
42742	s.Policies = v
42743	return s
42744}
42745
42746// SetTier sets the Tier field's value.
42747func (s *ParameterHistory) SetTier(v string) *ParameterHistory {
42748	s.Tier = &v
42749	return s
42750}
42751
42752// SetType sets the Type field's value.
42753func (s *ParameterHistory) SetType(v string) *ParameterHistory {
42754	s.Type = &v
42755	return s
42756}
42757
42758// SetValue sets the Value field's value.
42759func (s *ParameterHistory) SetValue(v string) *ParameterHistory {
42760	s.Value = &v
42761	return s
42762}
42763
42764// SetVersion sets the Version field's value.
42765func (s *ParameterHistory) SetVersion(v int64) *ParameterHistory {
42766	s.Version = &v
42767	return s
42768}
42769
42770// One or more policies assigned to a parameter.
42771type ParameterInlinePolicy struct {
42772	_ struct{} `type:"structure"`
42773
42774	// The status of the policy. Policies report the following statuses: Pending
42775	// (the policy hasn't been enforced or applied yet), Finished (the policy was
42776	// applied), Failed (the policy wasn't applied), or InProgress (the policy is
42777	// being applied now).
42778	PolicyStatus *string `type:"string"`
42779
42780	// The JSON text of the policy.
42781	PolicyText *string `type:"string"`
42782
42783	// The type of policy. Parameter Store, a capablility of Amazon Web Services
42784	// Systems Manager, supports the following policy types: Expiration, ExpirationNotification,
42785	// and NoChangeNotification.
42786	PolicyType *string `type:"string"`
42787}
42788
42789// String returns the string representation
42790func (s ParameterInlinePolicy) String() string {
42791	return awsutil.Prettify(s)
42792}
42793
42794// GoString returns the string representation
42795func (s ParameterInlinePolicy) GoString() string {
42796	return s.String()
42797}
42798
42799// SetPolicyStatus sets the PolicyStatus field's value.
42800func (s *ParameterInlinePolicy) SetPolicyStatus(v string) *ParameterInlinePolicy {
42801	s.PolicyStatus = &v
42802	return s
42803}
42804
42805// SetPolicyText sets the PolicyText field's value.
42806func (s *ParameterInlinePolicy) SetPolicyText(v string) *ParameterInlinePolicy {
42807	s.PolicyText = &v
42808	return s
42809}
42810
42811// SetPolicyType sets the PolicyType field's value.
42812func (s *ParameterInlinePolicy) SetPolicyType(v string) *ParameterInlinePolicy {
42813	s.PolicyType = &v
42814	return s
42815}
42816
42817// You have exceeded the number of parameters for this Amazon Web Services account.
42818// Delete one or more parameters and try again.
42819type ParameterLimitExceeded struct {
42820	_            struct{}                  `type:"structure"`
42821	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42822
42823	Message_ *string `locationName:"message" type:"string"`
42824}
42825
42826// String returns the string representation
42827func (s ParameterLimitExceeded) String() string {
42828	return awsutil.Prettify(s)
42829}
42830
42831// GoString returns the string representation
42832func (s ParameterLimitExceeded) GoString() string {
42833	return s.String()
42834}
42835
42836func newErrorParameterLimitExceeded(v protocol.ResponseMetadata) error {
42837	return &ParameterLimitExceeded{
42838		RespMetadata: v,
42839	}
42840}
42841
42842// Code returns the exception type name.
42843func (s *ParameterLimitExceeded) Code() string {
42844	return "ParameterLimitExceeded"
42845}
42846
42847// Message returns the exception's message.
42848func (s *ParameterLimitExceeded) Message() string {
42849	if s.Message_ != nil {
42850		return *s.Message_
42851	}
42852	return ""
42853}
42854
42855// OrigErr always returns nil, satisfies awserr.Error interface.
42856func (s *ParameterLimitExceeded) OrigErr() error {
42857	return nil
42858}
42859
42860func (s *ParameterLimitExceeded) Error() string {
42861	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42862}
42863
42864// Status code returns the HTTP status code for the request's response error.
42865func (s *ParameterLimitExceeded) StatusCode() int {
42866	return s.RespMetadata.StatusCode
42867}
42868
42869// RequestID returns the service's response RequestID for request.
42870func (s *ParameterLimitExceeded) RequestID() string {
42871	return s.RespMetadata.RequestID
42872}
42873
42874// Parameter Store retains the 100 most recently created versions of a parameter.
42875// After this number of versions has been created, Parameter Store deletes the
42876// oldest version when a new one is created. However, if the oldest version
42877// has a label attached to it, Parameter Store won't delete the version and
42878// instead presents this error message:
42879//
42880// An error occurred (ParameterMaxVersionLimitExceeded) when calling the PutParameter
42881// operation: You attempted to create a new version of parameter-name by calling
42882// the PutParameter API with the overwrite flag. Version version-number, the
42883// oldest version, can't be deleted because it has a label associated with it.
42884// Move the label to another version of the parameter, and try again.
42885//
42886// This safeguard is to prevent parameter versions with mission critical labels
42887// assigned to them from being deleted. To continue creating new parameters,
42888// first move the label from the oldest version of the parameter to a newer
42889// one for use in your operations. For information about moving parameter labels,
42890// see Move a parameter label (console) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-console-move)
42891// or Move a parameter label (CLI) (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-labels.html#sysman-paramstore-labels-cli-move)
42892// in the Amazon Web Services Systems Manager User Guide.
42893type ParameterMaxVersionLimitExceeded struct {
42894	_            struct{}                  `type:"structure"`
42895	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
42896
42897	Message_ *string `locationName:"message" type:"string"`
42898}
42899
42900// String returns the string representation
42901func (s ParameterMaxVersionLimitExceeded) String() string {
42902	return awsutil.Prettify(s)
42903}
42904
42905// GoString returns the string representation
42906func (s ParameterMaxVersionLimitExceeded) GoString() string {
42907	return s.String()
42908}
42909
42910func newErrorParameterMaxVersionLimitExceeded(v protocol.ResponseMetadata) error {
42911	return &ParameterMaxVersionLimitExceeded{
42912		RespMetadata: v,
42913	}
42914}
42915
42916// Code returns the exception type name.
42917func (s *ParameterMaxVersionLimitExceeded) Code() string {
42918	return "ParameterMaxVersionLimitExceeded"
42919}
42920
42921// Message returns the exception's message.
42922func (s *ParameterMaxVersionLimitExceeded) Message() string {
42923	if s.Message_ != nil {
42924		return *s.Message_
42925	}
42926	return ""
42927}
42928
42929// OrigErr always returns nil, satisfies awserr.Error interface.
42930func (s *ParameterMaxVersionLimitExceeded) OrigErr() error {
42931	return nil
42932}
42933
42934func (s *ParameterMaxVersionLimitExceeded) Error() string {
42935	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
42936}
42937
42938// Status code returns the HTTP status code for the request's response error.
42939func (s *ParameterMaxVersionLimitExceeded) StatusCode() int {
42940	return s.RespMetadata.StatusCode
42941}
42942
42943// RequestID returns the service's response RequestID for request.
42944func (s *ParameterMaxVersionLimitExceeded) RequestID() string {
42945	return s.RespMetadata.RequestID
42946}
42947
42948// Metadata includes information like the ARN of the last user and the date/time
42949// the parameter was last used.
42950type ParameterMetadata struct {
42951	_ struct{} `type:"structure"`
42952
42953	// A parameter name can include only the following letters and symbols.
42954	//
42955	// a-zA-Z0-9_.-
42956	AllowedPattern *string `type:"string"`
42957
42958	// The data type of the parameter, such as text or aws:ec2:image. The default
42959	// is text.
42960	DataType *string `type:"string"`
42961
42962	// Description of the parameter actions.
42963	Description *string `type:"string"`
42964
42965	// The ID of the query key used for this parameter.
42966	KeyId *string `min:"1" type:"string"`
42967
42968	// Date the parameter was last changed or updated.
42969	LastModifiedDate *time.Time `type:"timestamp"`
42970
42971	// Amazon Resource Name (ARN) of the Amazon Web Services user who last changed
42972	// the parameter.
42973	LastModifiedUser *string `type:"string"`
42974
42975	// The parameter name.
42976	Name *string `min:"1" type:"string"`
42977
42978	// A list of policies associated with a parameter.
42979	Policies []*ParameterInlinePolicy `type:"list"`
42980
42981	// The parameter tier.
42982	Tier *string `type:"string" enum:"ParameterTier"`
42983
42984	// The type of parameter. Valid parameter types include the following: String,
42985	// StringList, and SecureString.
42986	Type *string `type:"string" enum:"ParameterType"`
42987
42988	// The parameter version.
42989	Version *int64 `type:"long"`
42990}
42991
42992// String returns the string representation
42993func (s ParameterMetadata) String() string {
42994	return awsutil.Prettify(s)
42995}
42996
42997// GoString returns the string representation
42998func (s ParameterMetadata) GoString() string {
42999	return s.String()
43000}
43001
43002// SetAllowedPattern sets the AllowedPattern field's value.
43003func (s *ParameterMetadata) SetAllowedPattern(v string) *ParameterMetadata {
43004	s.AllowedPattern = &v
43005	return s
43006}
43007
43008// SetDataType sets the DataType field's value.
43009func (s *ParameterMetadata) SetDataType(v string) *ParameterMetadata {
43010	s.DataType = &v
43011	return s
43012}
43013
43014// SetDescription sets the Description field's value.
43015func (s *ParameterMetadata) SetDescription(v string) *ParameterMetadata {
43016	s.Description = &v
43017	return s
43018}
43019
43020// SetKeyId sets the KeyId field's value.
43021func (s *ParameterMetadata) SetKeyId(v string) *ParameterMetadata {
43022	s.KeyId = &v
43023	return s
43024}
43025
43026// SetLastModifiedDate sets the LastModifiedDate field's value.
43027func (s *ParameterMetadata) SetLastModifiedDate(v time.Time) *ParameterMetadata {
43028	s.LastModifiedDate = &v
43029	return s
43030}
43031
43032// SetLastModifiedUser sets the LastModifiedUser field's value.
43033func (s *ParameterMetadata) SetLastModifiedUser(v string) *ParameterMetadata {
43034	s.LastModifiedUser = &v
43035	return s
43036}
43037
43038// SetName sets the Name field's value.
43039func (s *ParameterMetadata) SetName(v string) *ParameterMetadata {
43040	s.Name = &v
43041	return s
43042}
43043
43044// SetPolicies sets the Policies field's value.
43045func (s *ParameterMetadata) SetPolicies(v []*ParameterInlinePolicy) *ParameterMetadata {
43046	s.Policies = v
43047	return s
43048}
43049
43050// SetTier sets the Tier field's value.
43051func (s *ParameterMetadata) SetTier(v string) *ParameterMetadata {
43052	s.Tier = &v
43053	return s
43054}
43055
43056// SetType sets the Type field's value.
43057func (s *ParameterMetadata) SetType(v string) *ParameterMetadata {
43058	s.Type = &v
43059	return s
43060}
43061
43062// SetVersion sets the Version field's value.
43063func (s *ParameterMetadata) SetVersion(v int64) *ParameterMetadata {
43064	s.Version = &v
43065	return s
43066}
43067
43068// The parameter couldn't be found. Verify the name and try again.
43069type ParameterNotFound struct {
43070	_            struct{}                  `type:"structure"`
43071	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
43072
43073	Message_ *string `locationName:"message" type:"string"`
43074}
43075
43076// String returns the string representation
43077func (s ParameterNotFound) String() string {
43078	return awsutil.Prettify(s)
43079}
43080
43081// GoString returns the string representation
43082func (s ParameterNotFound) GoString() string {
43083	return s.String()
43084}
43085
43086func newErrorParameterNotFound(v protocol.ResponseMetadata) error {
43087	return &ParameterNotFound{
43088		RespMetadata: v,
43089	}
43090}
43091
43092// Code returns the exception type name.
43093func (s *ParameterNotFound) Code() string {
43094	return "ParameterNotFound"
43095}
43096
43097// Message returns the exception's message.
43098func (s *ParameterNotFound) Message() string {
43099	if s.Message_ != nil {
43100		return *s.Message_
43101	}
43102	return ""
43103}
43104
43105// OrigErr always returns nil, satisfies awserr.Error interface.
43106func (s *ParameterNotFound) OrigErr() error {
43107	return nil
43108}
43109
43110func (s *ParameterNotFound) Error() string {
43111	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
43112}
43113
43114// Status code returns the HTTP status code for the request's response error.
43115func (s *ParameterNotFound) StatusCode() int {
43116	return s.RespMetadata.StatusCode
43117}
43118
43119// RequestID returns the service's response RequestID for request.
43120func (s *ParameterNotFound) RequestID() string {
43121	return s.RespMetadata.RequestID
43122}
43123
43124// The parameter name isn't valid.
43125type ParameterPatternMismatchException struct {
43126	_            struct{}                  `type:"structure"`
43127	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
43128
43129	// The parameter name isn't valid.
43130	Message_ *string `locationName:"message" type:"string"`
43131}
43132
43133// String returns the string representation
43134func (s ParameterPatternMismatchException) String() string {
43135	return awsutil.Prettify(s)
43136}
43137
43138// GoString returns the string representation
43139func (s ParameterPatternMismatchException) GoString() string {
43140	return s.String()
43141}
43142
43143func newErrorParameterPatternMismatchException(v protocol.ResponseMetadata) error {
43144	return &ParameterPatternMismatchException{
43145		RespMetadata: v,
43146	}
43147}
43148
43149// Code returns the exception type name.
43150func (s *ParameterPatternMismatchException) Code() string {
43151	return "ParameterPatternMismatchException"
43152}
43153
43154// Message returns the exception's message.
43155func (s *ParameterPatternMismatchException) Message() string {
43156	if s.Message_ != nil {
43157		return *s.Message_
43158	}
43159	return ""
43160}
43161
43162// OrigErr always returns nil, satisfies awserr.Error interface.
43163func (s *ParameterPatternMismatchException) OrigErr() error {
43164	return nil
43165}
43166
43167func (s *ParameterPatternMismatchException) Error() string {
43168	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
43169}
43170
43171// Status code returns the HTTP status code for the request's response error.
43172func (s *ParameterPatternMismatchException) StatusCode() int {
43173	return s.RespMetadata.StatusCode
43174}
43175
43176// RequestID returns the service's response RequestID for request.
43177func (s *ParameterPatternMismatchException) RequestID() string {
43178	return s.RespMetadata.RequestID
43179}
43180
43181// One or more filters. Use a filter to return a more specific list of results.
43182type ParameterStringFilter struct {
43183	_ struct{} `type:"structure"`
43184
43185	// The name of the filter.
43186	//
43187	// The ParameterStringFilter object is used by the DescribeParameters and GetParametersByPath
43188	// API operations. However, not all of the pattern values listed for Key can
43189	// be used with both operations.
43190	//
43191	// For DescribeActions, all of the listed patterns are valid, with the exception
43192	// of Label.
43193	//
43194	// For GetParametersByPath, the following patterns listed for Key aren't valid:
43195	// tag, Name, Path, and Tier.
43196	//
43197	// For examples of Amazon Web Services CLI commands demonstrating valid parameter
43198	// filter constructions, see Searching for Systems Manager parameters (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-search.html)
43199	// in the Amazon Web Services Systems Manager User Guide.
43200	//
43201	// Key is a required field
43202	Key *string `min:"1" type:"string" required:"true"`
43203
43204	// For all filters used with DescribeParameters, valid options include Equals
43205	// and BeginsWith. The Name filter additionally supports the Contains option.
43206	// (Exception: For filters using the key Path, valid options include Recursive
43207	// and OneLevel.)
43208	//
43209	// For filters used with GetParametersByPath, valid options include Equals and
43210	// BeginsWith. (Exception: For filters using Label as the Key name, the only
43211	// valid option is Equals.)
43212	Option *string `min:"1" type:"string"`
43213
43214	// The value you want to search for.
43215	Values []*string `min:"1" type:"list"`
43216}
43217
43218// String returns the string representation
43219func (s ParameterStringFilter) String() string {
43220	return awsutil.Prettify(s)
43221}
43222
43223// GoString returns the string representation
43224func (s ParameterStringFilter) GoString() string {
43225	return s.String()
43226}
43227
43228// Validate inspects the fields of the type to determine if they are valid.
43229func (s *ParameterStringFilter) Validate() error {
43230	invalidParams := request.ErrInvalidParams{Context: "ParameterStringFilter"}
43231	if s.Key == nil {
43232		invalidParams.Add(request.NewErrParamRequired("Key"))
43233	}
43234	if s.Key != nil && len(*s.Key) < 1 {
43235		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
43236	}
43237	if s.Option != nil && len(*s.Option) < 1 {
43238		invalidParams.Add(request.NewErrParamMinLen("Option", 1))
43239	}
43240	if s.Values != nil && len(s.Values) < 1 {
43241		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
43242	}
43243
43244	if invalidParams.Len() > 0 {
43245		return invalidParams
43246	}
43247	return nil
43248}
43249
43250// SetKey sets the Key field's value.
43251func (s *ParameterStringFilter) SetKey(v string) *ParameterStringFilter {
43252	s.Key = &v
43253	return s
43254}
43255
43256// SetOption sets the Option field's value.
43257func (s *ParameterStringFilter) SetOption(v string) *ParameterStringFilter {
43258	s.Option = &v
43259	return s
43260}
43261
43262// SetValues sets the Values field's value.
43263func (s *ParameterStringFilter) SetValues(v []*string) *ParameterStringFilter {
43264	s.Values = v
43265	return s
43266}
43267
43268// A parameter version can have a maximum of ten labels.
43269type ParameterVersionLabelLimitExceeded struct {
43270	_            struct{}                  `type:"structure"`
43271	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
43272
43273	Message_ *string `locationName:"message" type:"string"`
43274}
43275
43276// String returns the string representation
43277func (s ParameterVersionLabelLimitExceeded) String() string {
43278	return awsutil.Prettify(s)
43279}
43280
43281// GoString returns the string representation
43282func (s ParameterVersionLabelLimitExceeded) GoString() string {
43283	return s.String()
43284}
43285
43286func newErrorParameterVersionLabelLimitExceeded(v protocol.ResponseMetadata) error {
43287	return &ParameterVersionLabelLimitExceeded{
43288		RespMetadata: v,
43289	}
43290}
43291
43292// Code returns the exception type name.
43293func (s *ParameterVersionLabelLimitExceeded) Code() string {
43294	return "ParameterVersionLabelLimitExceeded"
43295}
43296
43297// Message returns the exception's message.
43298func (s *ParameterVersionLabelLimitExceeded) Message() string {
43299	if s.Message_ != nil {
43300		return *s.Message_
43301	}
43302	return ""
43303}
43304
43305// OrigErr always returns nil, satisfies awserr.Error interface.
43306func (s *ParameterVersionLabelLimitExceeded) OrigErr() error {
43307	return nil
43308}
43309
43310func (s *ParameterVersionLabelLimitExceeded) Error() string {
43311	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
43312}
43313
43314// Status code returns the HTTP status code for the request's response error.
43315func (s *ParameterVersionLabelLimitExceeded) StatusCode() int {
43316	return s.RespMetadata.StatusCode
43317}
43318
43319// RequestID returns the service's response RequestID for request.
43320func (s *ParameterVersionLabelLimitExceeded) RequestID() string {
43321	return s.RespMetadata.RequestID
43322}
43323
43324// The specified parameter version wasn't found. Verify the parameter name and
43325// version, and try again.
43326type ParameterVersionNotFound struct {
43327	_            struct{}                  `type:"structure"`
43328	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
43329
43330	Message_ *string `locationName:"message" type:"string"`
43331}
43332
43333// String returns the string representation
43334func (s ParameterVersionNotFound) String() string {
43335	return awsutil.Prettify(s)
43336}
43337
43338// GoString returns the string representation
43339func (s ParameterVersionNotFound) GoString() string {
43340	return s.String()
43341}
43342
43343func newErrorParameterVersionNotFound(v protocol.ResponseMetadata) error {
43344	return &ParameterVersionNotFound{
43345		RespMetadata: v,
43346	}
43347}
43348
43349// Code returns the exception type name.
43350func (s *ParameterVersionNotFound) Code() string {
43351	return "ParameterVersionNotFound"
43352}
43353
43354// Message returns the exception's message.
43355func (s *ParameterVersionNotFound) Message() string {
43356	if s.Message_ != nil {
43357		return *s.Message_
43358	}
43359	return ""
43360}
43361
43362// OrigErr always returns nil, satisfies awserr.Error interface.
43363func (s *ParameterVersionNotFound) OrigErr() error {
43364	return nil
43365}
43366
43367func (s *ParameterVersionNotFound) Error() string {
43368	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
43369}
43370
43371// Status code returns the HTTP status code for the request's response error.
43372func (s *ParameterVersionNotFound) StatusCode() int {
43373	return s.RespMetadata.StatusCode
43374}
43375
43376// RequestID returns the service's response RequestID for request.
43377func (s *ParameterVersionNotFound) RequestID() string {
43378	return s.RespMetadata.RequestID
43379}
43380
43381// This data type is deprecated. Instead, use ParameterStringFilter.
43382type ParametersFilter struct {
43383	_ struct{} `type:"structure"`
43384
43385	// The name of the filter.
43386	//
43387	// Key is a required field
43388	Key *string `type:"string" required:"true" enum:"ParametersFilterKey"`
43389
43390	// The filter values.
43391	//
43392	// Values is a required field
43393	Values []*string `min:"1" type:"list" required:"true"`
43394}
43395
43396// String returns the string representation
43397func (s ParametersFilter) String() string {
43398	return awsutil.Prettify(s)
43399}
43400
43401// GoString returns the string representation
43402func (s ParametersFilter) GoString() string {
43403	return s.String()
43404}
43405
43406// Validate inspects the fields of the type to determine if they are valid.
43407func (s *ParametersFilter) Validate() error {
43408	invalidParams := request.ErrInvalidParams{Context: "ParametersFilter"}
43409	if s.Key == nil {
43410		invalidParams.Add(request.NewErrParamRequired("Key"))
43411	}
43412	if s.Values == nil {
43413		invalidParams.Add(request.NewErrParamRequired("Values"))
43414	}
43415	if s.Values != nil && len(s.Values) < 1 {
43416		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
43417	}
43418
43419	if invalidParams.Len() > 0 {
43420		return invalidParams
43421	}
43422	return nil
43423}
43424
43425// SetKey sets the Key field's value.
43426func (s *ParametersFilter) SetKey(v string) *ParametersFilter {
43427	s.Key = &v
43428	return s
43429}
43430
43431// SetValues sets the Values field's value.
43432func (s *ParametersFilter) SetValues(v []*string) *ParametersFilter {
43433	s.Values = v
43434	return s
43435}
43436
43437// Represents metadata about a patch.
43438type Patch struct {
43439	_ struct{} `type:"structure"`
43440
43441	// The Advisory ID of the patch. For example, RHSA-2020:3779. Applies to Linux-based
43442	// instances only.
43443	AdvisoryIds []*string `type:"list"`
43444
43445	// The architecture of the patch. For example, in example-pkg-0.710.10-2.7.abcd.x86_64,
43446	// the architecture is indicated by x86_64. Applies to Linux-based instances
43447	// only.
43448	Arch *string `type:"string"`
43449
43450	// The Bugzilla ID of the patch. For example, 1600646. Applies to Linux-based
43451	// instances only.
43452	BugzillaIds []*string `type:"list"`
43453
43454	// The Common Vulnerabilities and Exposures (CVE) ID of the patch. For example,
43455	// CVE-2011-3192. Applies to Linux-based instances only.
43456	CVEIds []*string `type:"list"`
43457
43458	// The classification of the patch. For example, SecurityUpdates, Updates, or
43459	// CriticalUpdates.
43460	Classification *string `type:"string"`
43461
43462	// The URL where more information can be obtained about the patch.
43463	ContentUrl *string `type:"string"`
43464
43465	// The description of the patch.
43466	Description *string `type:"string"`
43467
43468	// The epoch of the patch. For example in pkg-example-EE-20180914-2.2.amzn1.noarch,
43469	// the epoch value is 20180914-2. Applies to Linux-based instances only.
43470	Epoch *int64 `type:"integer"`
43471
43472	// The ID of the patch. Applies to Windows patches only.
43473	//
43474	// This ID isn't the same as the Microsoft Knowledge Base ID.
43475	Id *string `min:"1" type:"string"`
43476
43477	// The Microsoft Knowledge Base ID of the patch. Applies to Windows patches
43478	// only.
43479	KbNumber *string `type:"string"`
43480
43481	// The language of the patch if it's language-specific.
43482	Language *string `type:"string"`
43483
43484	// The ID of the Microsoft Security Response Center (MSRC) bulletin the patch
43485	// is related to. For example, MS14-045. Applies to Windows patches only.
43486	MsrcNumber *string `type:"string"`
43487
43488	// The severity of the patch, such as Critical, Important, or Moderate. Applies
43489	// to Windows patches only.
43490	MsrcSeverity *string `type:"string"`
43491
43492	// The name of the patch. Applies to Linux-based instances only.
43493	Name *string `type:"string"`
43494
43495	// The specific product the patch is applicable for. For example, WindowsServer2016
43496	// or AmazonLinux2018.03.
43497	Product *string `type:"string"`
43498
43499	// The product family the patch is applicable for. For example, Windows or Amazon
43500	// Linux 2.
43501	ProductFamily *string `type:"string"`
43502
43503	// The particular release of a patch. For example, in pkg-example-EE-20180914-2.2.amzn1.noarch,
43504	// the release is 2.amaz1. Applies to Linux-based instances only.
43505	Release *string `type:"string"`
43506
43507	// The date the patch was released.
43508	ReleaseDate *time.Time `type:"timestamp"`
43509
43510	// The source patch repository for the operating system and version, such as
43511	// trusty-security for Ubuntu Server 14.04 LTE and focal-security for Ubuntu
43512	// Server 20.04 LTE. Applies to Linux-based instances only.
43513	Repository *string `type:"string"`
43514
43515	// The severity level of the patch. For example, CRITICAL or MODERATE.
43516	Severity *string `type:"string"`
43517
43518	// The title of the patch.
43519	Title *string `type:"string"`
43520
43521	// The name of the vendor providing the patch.
43522	Vendor *string `type:"string"`
43523
43524	// The version number of the patch. For example, in example-pkg-1.710.10-2.7.abcd.x86_64,
43525	// the version number is indicated by -1. Applies to Linux-based instances only.
43526	Version *string `type:"string"`
43527}
43528
43529// String returns the string representation
43530func (s Patch) String() string {
43531	return awsutil.Prettify(s)
43532}
43533
43534// GoString returns the string representation
43535func (s Patch) GoString() string {
43536	return s.String()
43537}
43538
43539// SetAdvisoryIds sets the AdvisoryIds field's value.
43540func (s *Patch) SetAdvisoryIds(v []*string) *Patch {
43541	s.AdvisoryIds = v
43542	return s
43543}
43544
43545// SetArch sets the Arch field's value.
43546func (s *Patch) SetArch(v string) *Patch {
43547	s.Arch = &v
43548	return s
43549}
43550
43551// SetBugzillaIds sets the BugzillaIds field's value.
43552func (s *Patch) SetBugzillaIds(v []*string) *Patch {
43553	s.BugzillaIds = v
43554	return s
43555}
43556
43557// SetCVEIds sets the CVEIds field's value.
43558func (s *Patch) SetCVEIds(v []*string) *Patch {
43559	s.CVEIds = v
43560	return s
43561}
43562
43563// SetClassification sets the Classification field's value.
43564func (s *Patch) SetClassification(v string) *Patch {
43565	s.Classification = &v
43566	return s
43567}
43568
43569// SetContentUrl sets the ContentUrl field's value.
43570func (s *Patch) SetContentUrl(v string) *Patch {
43571	s.ContentUrl = &v
43572	return s
43573}
43574
43575// SetDescription sets the Description field's value.
43576func (s *Patch) SetDescription(v string) *Patch {
43577	s.Description = &v
43578	return s
43579}
43580
43581// SetEpoch sets the Epoch field's value.
43582func (s *Patch) SetEpoch(v int64) *Patch {
43583	s.Epoch = &v
43584	return s
43585}
43586
43587// SetId sets the Id field's value.
43588func (s *Patch) SetId(v string) *Patch {
43589	s.Id = &v
43590	return s
43591}
43592
43593// SetKbNumber sets the KbNumber field's value.
43594func (s *Patch) SetKbNumber(v string) *Patch {
43595	s.KbNumber = &v
43596	return s
43597}
43598
43599// SetLanguage sets the Language field's value.
43600func (s *Patch) SetLanguage(v string) *Patch {
43601	s.Language = &v
43602	return s
43603}
43604
43605// SetMsrcNumber sets the MsrcNumber field's value.
43606func (s *Patch) SetMsrcNumber(v string) *Patch {
43607	s.MsrcNumber = &v
43608	return s
43609}
43610
43611// SetMsrcSeverity sets the MsrcSeverity field's value.
43612func (s *Patch) SetMsrcSeverity(v string) *Patch {
43613	s.MsrcSeverity = &v
43614	return s
43615}
43616
43617// SetName sets the Name field's value.
43618func (s *Patch) SetName(v string) *Patch {
43619	s.Name = &v
43620	return s
43621}
43622
43623// SetProduct sets the Product field's value.
43624func (s *Patch) SetProduct(v string) *Patch {
43625	s.Product = &v
43626	return s
43627}
43628
43629// SetProductFamily sets the ProductFamily field's value.
43630func (s *Patch) SetProductFamily(v string) *Patch {
43631	s.ProductFamily = &v
43632	return s
43633}
43634
43635// SetRelease sets the Release field's value.
43636func (s *Patch) SetRelease(v string) *Patch {
43637	s.Release = &v
43638	return s
43639}
43640
43641// SetReleaseDate sets the ReleaseDate field's value.
43642func (s *Patch) SetReleaseDate(v time.Time) *Patch {
43643	s.ReleaseDate = &v
43644	return s
43645}
43646
43647// SetRepository sets the Repository field's value.
43648func (s *Patch) SetRepository(v string) *Patch {
43649	s.Repository = &v
43650	return s
43651}
43652
43653// SetSeverity sets the Severity field's value.
43654func (s *Patch) SetSeverity(v string) *Patch {
43655	s.Severity = &v
43656	return s
43657}
43658
43659// SetTitle sets the Title field's value.
43660func (s *Patch) SetTitle(v string) *Patch {
43661	s.Title = &v
43662	return s
43663}
43664
43665// SetVendor sets the Vendor field's value.
43666func (s *Patch) SetVendor(v string) *Patch {
43667	s.Vendor = &v
43668	return s
43669}
43670
43671// SetVersion sets the Version field's value.
43672func (s *Patch) SetVersion(v string) *Patch {
43673	s.Version = &v
43674	return s
43675}
43676
43677// Defines the basic information about a patch baseline.
43678type PatchBaselineIdentity struct {
43679	_ struct{} `type:"structure"`
43680
43681	// The description of the patch baseline.
43682	BaselineDescription *string `min:"1" type:"string"`
43683
43684	// The ID of the patch baseline.
43685	BaselineId *string `min:"20" type:"string"`
43686
43687	// The name of the patch baseline.
43688	BaselineName *string `min:"3" type:"string"`
43689
43690	// Whether this is the default baseline. Amazon Web Services Systems Manager
43691	// supports creating multiple default patch baselines. For example, you can
43692	// create a default patch baseline for each operating system.
43693	DefaultBaseline *bool `type:"boolean"`
43694
43695	// Defines the operating system the patch baseline applies to. The default value
43696	// is WINDOWS.
43697	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
43698}
43699
43700// String returns the string representation
43701func (s PatchBaselineIdentity) String() string {
43702	return awsutil.Prettify(s)
43703}
43704
43705// GoString returns the string representation
43706func (s PatchBaselineIdentity) GoString() string {
43707	return s.String()
43708}
43709
43710// SetBaselineDescription sets the BaselineDescription field's value.
43711func (s *PatchBaselineIdentity) SetBaselineDescription(v string) *PatchBaselineIdentity {
43712	s.BaselineDescription = &v
43713	return s
43714}
43715
43716// SetBaselineId sets the BaselineId field's value.
43717func (s *PatchBaselineIdentity) SetBaselineId(v string) *PatchBaselineIdentity {
43718	s.BaselineId = &v
43719	return s
43720}
43721
43722// SetBaselineName sets the BaselineName field's value.
43723func (s *PatchBaselineIdentity) SetBaselineName(v string) *PatchBaselineIdentity {
43724	s.BaselineName = &v
43725	return s
43726}
43727
43728// SetDefaultBaseline sets the DefaultBaseline field's value.
43729func (s *PatchBaselineIdentity) SetDefaultBaseline(v bool) *PatchBaselineIdentity {
43730	s.DefaultBaseline = &v
43731	return s
43732}
43733
43734// SetOperatingSystem sets the OperatingSystem field's value.
43735func (s *PatchBaselineIdentity) SetOperatingSystem(v string) *PatchBaselineIdentity {
43736	s.OperatingSystem = &v
43737	return s
43738}
43739
43740// Information about the state of a patch on a particular instance as it relates
43741// to the patch baseline used to patch the instance.
43742type PatchComplianceData struct {
43743	_ struct{} `type:"structure"`
43744
43745	// The IDs of one or more Common Vulnerabilities and Exposure (CVE) issues that
43746	// are resolved by the patch.
43747	CVEIds *string `type:"string"`
43748
43749	// The classification of the patch, such as SecurityUpdates, Updates, and CriticalUpdates.
43750	//
43751	// Classification is a required field
43752	Classification *string `type:"string" required:"true"`
43753
43754	// The date/time the patch was installed on the instance. Not all operating
43755	// systems provide this level of information.
43756	//
43757	// InstalledTime is a required field
43758	InstalledTime *time.Time `type:"timestamp" required:"true"`
43759
43760	// The operating system-specific ID of the patch.
43761	//
43762	// KBId is a required field
43763	KBId *string `type:"string" required:"true"`
43764
43765	// The severity of the patchsuch as Critical, Important, and Moderate.
43766	//
43767	// Severity is a required field
43768	Severity *string `type:"string" required:"true"`
43769
43770	// The state of the patch on the instance, such as INSTALLED or FAILED.
43771	//
43772	// For descriptions of each patch state, see About patch compliance (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-compliance-about.html#sysman-compliance-monitor-patch)
43773	// in the Amazon Web Services Systems Manager User Guide.
43774	//
43775	// State is a required field
43776	State *string `type:"string" required:"true" enum:"PatchComplianceDataState"`
43777
43778	// The title of the patch.
43779	//
43780	// Title is a required field
43781	Title *string `type:"string" required:"true"`
43782}
43783
43784// String returns the string representation
43785func (s PatchComplianceData) String() string {
43786	return awsutil.Prettify(s)
43787}
43788
43789// GoString returns the string representation
43790func (s PatchComplianceData) GoString() string {
43791	return s.String()
43792}
43793
43794// SetCVEIds sets the CVEIds field's value.
43795func (s *PatchComplianceData) SetCVEIds(v string) *PatchComplianceData {
43796	s.CVEIds = &v
43797	return s
43798}
43799
43800// SetClassification sets the Classification field's value.
43801func (s *PatchComplianceData) SetClassification(v string) *PatchComplianceData {
43802	s.Classification = &v
43803	return s
43804}
43805
43806// SetInstalledTime sets the InstalledTime field's value.
43807func (s *PatchComplianceData) SetInstalledTime(v time.Time) *PatchComplianceData {
43808	s.InstalledTime = &v
43809	return s
43810}
43811
43812// SetKBId sets the KBId field's value.
43813func (s *PatchComplianceData) SetKBId(v string) *PatchComplianceData {
43814	s.KBId = &v
43815	return s
43816}
43817
43818// SetSeverity sets the Severity field's value.
43819func (s *PatchComplianceData) SetSeverity(v string) *PatchComplianceData {
43820	s.Severity = &v
43821	return s
43822}
43823
43824// SetState sets the State field's value.
43825func (s *PatchComplianceData) SetState(v string) *PatchComplianceData {
43826	s.State = &v
43827	return s
43828}
43829
43830// SetTitle sets the Title field's value.
43831func (s *PatchComplianceData) SetTitle(v string) *PatchComplianceData {
43832	s.Title = &v
43833	return s
43834}
43835
43836// Defines which patches should be included in a patch baseline.
43837//
43838// A patch filter consists of a key and a set of values. The filter key is a
43839// patch property. For example, the available filter keys for WINDOWS are PATCH_SET,
43840// PRODUCT, PRODUCT_FAMILY, CLASSIFICATION, and MSRC_SEVERITY.
43841//
43842// The filter values define a matching criterion for the patch property indicated
43843// by the key. For example, if the filter key is PRODUCT and the filter values
43844// are ["Office 2013", "Office 2016"], then the filter accepts all patches where
43845// product name is either "Office 2013" or "Office 2016". The filter values
43846// can be exact values for the patch property given as a key, or a wildcard
43847// (*), which matches all values.
43848//
43849// You can view lists of valid values for the patch properties by running the
43850// DescribePatchProperties command. For information about which patch properties
43851// can be used with each major operating system, see DescribePatchProperties.
43852type PatchFilter struct {
43853	_ struct{} `type:"structure"`
43854
43855	// The key for the filter.
43856	//
43857	// Run the DescribePatchProperties command to view lists of valid keys for each
43858	// operating system type.
43859	//
43860	// Key is a required field
43861	Key *string `type:"string" required:"true" enum:"PatchFilterKey"`
43862
43863	// The value for the filter key.
43864	//
43865	// Run the DescribePatchProperties command to view lists of valid values for
43866	// each key based on operating system type.
43867	//
43868	// Values is a required field
43869	Values []*string `min:"1" type:"list" required:"true"`
43870}
43871
43872// String returns the string representation
43873func (s PatchFilter) String() string {
43874	return awsutil.Prettify(s)
43875}
43876
43877// GoString returns the string representation
43878func (s PatchFilter) GoString() string {
43879	return s.String()
43880}
43881
43882// Validate inspects the fields of the type to determine if they are valid.
43883func (s *PatchFilter) Validate() error {
43884	invalidParams := request.ErrInvalidParams{Context: "PatchFilter"}
43885	if s.Key == nil {
43886		invalidParams.Add(request.NewErrParamRequired("Key"))
43887	}
43888	if s.Values == nil {
43889		invalidParams.Add(request.NewErrParamRequired("Values"))
43890	}
43891	if s.Values != nil && len(s.Values) < 1 {
43892		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
43893	}
43894
43895	if invalidParams.Len() > 0 {
43896		return invalidParams
43897	}
43898	return nil
43899}
43900
43901// SetKey sets the Key field's value.
43902func (s *PatchFilter) SetKey(v string) *PatchFilter {
43903	s.Key = &v
43904	return s
43905}
43906
43907// SetValues sets the Values field's value.
43908func (s *PatchFilter) SetValues(v []*string) *PatchFilter {
43909	s.Values = v
43910	return s
43911}
43912
43913// A set of patch filters, typically used for approval rules.
43914type PatchFilterGroup struct {
43915	_ struct{} `type:"structure"`
43916
43917	// The set of patch filters that make up the group.
43918	//
43919	// PatchFilters is a required field
43920	PatchFilters []*PatchFilter `type:"list" required:"true"`
43921}
43922
43923// String returns the string representation
43924func (s PatchFilterGroup) String() string {
43925	return awsutil.Prettify(s)
43926}
43927
43928// GoString returns the string representation
43929func (s PatchFilterGroup) GoString() string {
43930	return s.String()
43931}
43932
43933// Validate inspects the fields of the type to determine if they are valid.
43934func (s *PatchFilterGroup) Validate() error {
43935	invalidParams := request.ErrInvalidParams{Context: "PatchFilterGroup"}
43936	if s.PatchFilters == nil {
43937		invalidParams.Add(request.NewErrParamRequired("PatchFilters"))
43938	}
43939	if s.PatchFilters != nil {
43940		for i, v := range s.PatchFilters {
43941			if v == nil {
43942				continue
43943			}
43944			if err := v.Validate(); err != nil {
43945				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PatchFilters", i), err.(request.ErrInvalidParams))
43946			}
43947		}
43948	}
43949
43950	if invalidParams.Len() > 0 {
43951		return invalidParams
43952	}
43953	return nil
43954}
43955
43956// SetPatchFilters sets the PatchFilters field's value.
43957func (s *PatchFilterGroup) SetPatchFilters(v []*PatchFilter) *PatchFilterGroup {
43958	s.PatchFilters = v
43959	return s
43960}
43961
43962// The mapping between a patch group and the patch baseline the patch group
43963// is registered with.
43964type PatchGroupPatchBaselineMapping struct {
43965	_ struct{} `type:"structure"`
43966
43967	// The patch baseline the patch group is registered with.
43968	BaselineIdentity *PatchBaselineIdentity `type:"structure"`
43969
43970	// The name of the patch group registered with the patch baseline.
43971	PatchGroup *string `min:"1" type:"string"`
43972}
43973
43974// String returns the string representation
43975func (s PatchGroupPatchBaselineMapping) String() string {
43976	return awsutil.Prettify(s)
43977}
43978
43979// GoString returns the string representation
43980func (s PatchGroupPatchBaselineMapping) GoString() string {
43981	return s.String()
43982}
43983
43984// SetBaselineIdentity sets the BaselineIdentity field's value.
43985func (s *PatchGroupPatchBaselineMapping) SetBaselineIdentity(v *PatchBaselineIdentity) *PatchGroupPatchBaselineMapping {
43986	s.BaselineIdentity = v
43987	return s
43988}
43989
43990// SetPatchGroup sets the PatchGroup field's value.
43991func (s *PatchGroupPatchBaselineMapping) SetPatchGroup(v string) *PatchGroupPatchBaselineMapping {
43992	s.PatchGroup = &v
43993	return s
43994}
43995
43996// Defines a filter used in Patch Manager APIs. Supported filter keys depend
43997// on the API operation that includes the filter. Patch Manager API operations
43998// that use PatchOrchestratorFilter include the following:
43999//
44000//    * DescribeAvailablePatches
44001//
44002//    * DescribeInstancePatches
44003//
44004//    * DescribePatchBaselines
44005//
44006//    * DescribePatchGroups
44007type PatchOrchestratorFilter struct {
44008	_ struct{} `type:"structure"`
44009
44010	// The key for the filter.
44011	Key *string `min:"1" type:"string"`
44012
44013	// The value for the filter.
44014	Values []*string `type:"list"`
44015}
44016
44017// String returns the string representation
44018func (s PatchOrchestratorFilter) String() string {
44019	return awsutil.Prettify(s)
44020}
44021
44022// GoString returns the string representation
44023func (s PatchOrchestratorFilter) GoString() string {
44024	return s.String()
44025}
44026
44027// Validate inspects the fields of the type to determine if they are valid.
44028func (s *PatchOrchestratorFilter) Validate() error {
44029	invalidParams := request.ErrInvalidParams{Context: "PatchOrchestratorFilter"}
44030	if s.Key != nil && len(*s.Key) < 1 {
44031		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
44032	}
44033
44034	if invalidParams.Len() > 0 {
44035		return invalidParams
44036	}
44037	return nil
44038}
44039
44040// SetKey sets the Key field's value.
44041func (s *PatchOrchestratorFilter) SetKey(v string) *PatchOrchestratorFilter {
44042	s.Key = &v
44043	return s
44044}
44045
44046// SetValues sets the Values field's value.
44047func (s *PatchOrchestratorFilter) SetValues(v []*string) *PatchOrchestratorFilter {
44048	s.Values = v
44049	return s
44050}
44051
44052// Defines an approval rule for a patch baseline.
44053type PatchRule struct {
44054	_ struct{} `type:"structure"`
44055
44056	// The number of days after the release date of each patch matched by the rule
44057	// that the patch is marked as approved in the patch baseline. For example,
44058	// a value of 7 means that patches are approved seven days after they are released.
44059	// Not supported on Debian Server or Ubuntu Server.
44060	ApproveAfterDays *int64 `type:"integer"`
44061
44062	// The cutoff date for auto approval of released patches. Any patches released
44063	// on or before this date are installed automatically. Not supported on Debian
44064	// Server or Ubuntu Server.
44065	//
44066	// Enter dates in the format YYYY-MM-DD. For example, 2021-12-31.
44067	ApproveUntilDate *string `min:"1" type:"string"`
44068
44069	// A compliance severity level for all approved patches in a patch baseline.
44070	ComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
44071
44072	// For instances identified by the approval rule filters, enables a patch baseline
44073	// to apply non-security updates available in the specified repository. The
44074	// default value is false. Applies to Linux instances only.
44075	EnableNonSecurity *bool `type:"boolean"`
44076
44077	// The patch filter group that defines the criteria for the rule.
44078	//
44079	// PatchFilterGroup is a required field
44080	PatchFilterGroup *PatchFilterGroup `type:"structure" required:"true"`
44081}
44082
44083// String returns the string representation
44084func (s PatchRule) String() string {
44085	return awsutil.Prettify(s)
44086}
44087
44088// GoString returns the string representation
44089func (s PatchRule) GoString() string {
44090	return s.String()
44091}
44092
44093// Validate inspects the fields of the type to determine if they are valid.
44094func (s *PatchRule) Validate() error {
44095	invalidParams := request.ErrInvalidParams{Context: "PatchRule"}
44096	if s.ApproveUntilDate != nil && len(*s.ApproveUntilDate) < 1 {
44097		invalidParams.Add(request.NewErrParamMinLen("ApproveUntilDate", 1))
44098	}
44099	if s.PatchFilterGroup == nil {
44100		invalidParams.Add(request.NewErrParamRequired("PatchFilterGroup"))
44101	}
44102	if s.PatchFilterGroup != nil {
44103		if err := s.PatchFilterGroup.Validate(); err != nil {
44104			invalidParams.AddNested("PatchFilterGroup", err.(request.ErrInvalidParams))
44105		}
44106	}
44107
44108	if invalidParams.Len() > 0 {
44109		return invalidParams
44110	}
44111	return nil
44112}
44113
44114// SetApproveAfterDays sets the ApproveAfterDays field's value.
44115func (s *PatchRule) SetApproveAfterDays(v int64) *PatchRule {
44116	s.ApproveAfterDays = &v
44117	return s
44118}
44119
44120// SetApproveUntilDate sets the ApproveUntilDate field's value.
44121func (s *PatchRule) SetApproveUntilDate(v string) *PatchRule {
44122	s.ApproveUntilDate = &v
44123	return s
44124}
44125
44126// SetComplianceLevel sets the ComplianceLevel field's value.
44127func (s *PatchRule) SetComplianceLevel(v string) *PatchRule {
44128	s.ComplianceLevel = &v
44129	return s
44130}
44131
44132// SetEnableNonSecurity sets the EnableNonSecurity field's value.
44133func (s *PatchRule) SetEnableNonSecurity(v bool) *PatchRule {
44134	s.EnableNonSecurity = &v
44135	return s
44136}
44137
44138// SetPatchFilterGroup sets the PatchFilterGroup field's value.
44139func (s *PatchRule) SetPatchFilterGroup(v *PatchFilterGroup) *PatchRule {
44140	s.PatchFilterGroup = v
44141	return s
44142}
44143
44144// A set of rules defining the approval rules for a patch baseline.
44145type PatchRuleGroup struct {
44146	_ struct{} `type:"structure"`
44147
44148	// The rules that make up the rule group.
44149	//
44150	// PatchRules is a required field
44151	PatchRules []*PatchRule `type:"list" required:"true"`
44152}
44153
44154// String returns the string representation
44155func (s PatchRuleGroup) String() string {
44156	return awsutil.Prettify(s)
44157}
44158
44159// GoString returns the string representation
44160func (s PatchRuleGroup) GoString() string {
44161	return s.String()
44162}
44163
44164// Validate inspects the fields of the type to determine if they are valid.
44165func (s *PatchRuleGroup) Validate() error {
44166	invalidParams := request.ErrInvalidParams{Context: "PatchRuleGroup"}
44167	if s.PatchRules == nil {
44168		invalidParams.Add(request.NewErrParamRequired("PatchRules"))
44169	}
44170	if s.PatchRules != nil {
44171		for i, v := range s.PatchRules {
44172			if v == nil {
44173				continue
44174			}
44175			if err := v.Validate(); err != nil {
44176				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PatchRules", i), err.(request.ErrInvalidParams))
44177			}
44178		}
44179	}
44180
44181	if invalidParams.Len() > 0 {
44182		return invalidParams
44183	}
44184	return nil
44185}
44186
44187// SetPatchRules sets the PatchRules field's value.
44188func (s *PatchRuleGroup) SetPatchRules(v []*PatchRule) *PatchRuleGroup {
44189	s.PatchRules = v
44190	return s
44191}
44192
44193// Information about the patches to use to update the instances, including target
44194// operating systems and source repository. Applies to Linux instances only.
44195type PatchSource struct {
44196	_ struct{} `type:"structure"`
44197
44198	// The value of the yum repo configuration. For example:
44199	//
44200	// [main]
44201	//
44202	// name=MyCustomRepository
44203	//
44204	// baseurl=https://my-custom-repository
44205	//
44206	// enabled=1
44207	//
44208	// For information about other options available for your yum repository configuration,
44209	// see dnf.conf(5) (https://man7.org/linux/man-pages/man5/dnf.conf.5.html).
44210	//
44211	// Configuration is a required field
44212	Configuration *string `min:"1" type:"string" required:"true" sensitive:"true"`
44213
44214	// The name specified to identify the patch source.
44215	//
44216	// Name is a required field
44217	Name *string `type:"string" required:"true"`
44218
44219	// The specific operating system versions a patch repository applies to, such
44220	// as "Ubuntu16.04", "AmazonLinux2016.09", "RedhatEnterpriseLinux7.2" or "Suse12.7".
44221	// For lists of supported product values, see PatchFilter.
44222	//
44223	// Products is a required field
44224	Products []*string `min:"1" type:"list" required:"true"`
44225}
44226
44227// String returns the string representation
44228func (s PatchSource) String() string {
44229	return awsutil.Prettify(s)
44230}
44231
44232// GoString returns the string representation
44233func (s PatchSource) GoString() string {
44234	return s.String()
44235}
44236
44237// Validate inspects the fields of the type to determine if they are valid.
44238func (s *PatchSource) Validate() error {
44239	invalidParams := request.ErrInvalidParams{Context: "PatchSource"}
44240	if s.Configuration == nil {
44241		invalidParams.Add(request.NewErrParamRequired("Configuration"))
44242	}
44243	if s.Configuration != nil && len(*s.Configuration) < 1 {
44244		invalidParams.Add(request.NewErrParamMinLen("Configuration", 1))
44245	}
44246	if s.Name == nil {
44247		invalidParams.Add(request.NewErrParamRequired("Name"))
44248	}
44249	if s.Products == nil {
44250		invalidParams.Add(request.NewErrParamRequired("Products"))
44251	}
44252	if s.Products != nil && len(s.Products) < 1 {
44253		invalidParams.Add(request.NewErrParamMinLen("Products", 1))
44254	}
44255
44256	if invalidParams.Len() > 0 {
44257		return invalidParams
44258	}
44259	return nil
44260}
44261
44262// SetConfiguration sets the Configuration field's value.
44263func (s *PatchSource) SetConfiguration(v string) *PatchSource {
44264	s.Configuration = &v
44265	return s
44266}
44267
44268// SetName sets the Name field's value.
44269func (s *PatchSource) SetName(v string) *PatchSource {
44270	s.Name = &v
44271	return s
44272}
44273
44274// SetProducts sets the Products field's value.
44275func (s *PatchSource) SetProducts(v []*string) *PatchSource {
44276	s.Products = v
44277	return s
44278}
44279
44280// Information about the approval status of a patch.
44281type PatchStatus struct {
44282	_ struct{} `type:"structure"`
44283
44284	// The date the patch was approved (or will be approved if the status is PENDING_APPROVAL).
44285	ApprovalDate *time.Time `type:"timestamp"`
44286
44287	// The compliance severity level for a patch.
44288	ComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
44289
44290	// The approval status of a patch.
44291	DeploymentStatus *string `type:"string" enum:"PatchDeploymentStatus"`
44292}
44293
44294// String returns the string representation
44295func (s PatchStatus) String() string {
44296	return awsutil.Prettify(s)
44297}
44298
44299// GoString returns the string representation
44300func (s PatchStatus) GoString() string {
44301	return s.String()
44302}
44303
44304// SetApprovalDate sets the ApprovalDate field's value.
44305func (s *PatchStatus) SetApprovalDate(v time.Time) *PatchStatus {
44306	s.ApprovalDate = &v
44307	return s
44308}
44309
44310// SetComplianceLevel sets the ComplianceLevel field's value.
44311func (s *PatchStatus) SetComplianceLevel(v string) *PatchStatus {
44312	s.ComplianceLevel = &v
44313	return s
44314}
44315
44316// SetDeploymentStatus sets the DeploymentStatus field's value.
44317func (s *PatchStatus) SetDeploymentStatus(v string) *PatchStatus {
44318	s.DeploymentStatus = &v
44319	return s
44320}
44321
44322// You specified more than the maximum number of allowed policies for the parameter.
44323// The maximum is 10.
44324type PoliciesLimitExceededException struct {
44325	_            struct{}                  `type:"structure"`
44326	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
44327
44328	Message_ *string `locationName:"message" type:"string"`
44329}
44330
44331// String returns the string representation
44332func (s PoliciesLimitExceededException) String() string {
44333	return awsutil.Prettify(s)
44334}
44335
44336// GoString returns the string representation
44337func (s PoliciesLimitExceededException) GoString() string {
44338	return s.String()
44339}
44340
44341func newErrorPoliciesLimitExceededException(v protocol.ResponseMetadata) error {
44342	return &PoliciesLimitExceededException{
44343		RespMetadata: v,
44344	}
44345}
44346
44347// Code returns the exception type name.
44348func (s *PoliciesLimitExceededException) Code() string {
44349	return "PoliciesLimitExceededException"
44350}
44351
44352// Message returns the exception's message.
44353func (s *PoliciesLimitExceededException) Message() string {
44354	if s.Message_ != nil {
44355		return *s.Message_
44356	}
44357	return ""
44358}
44359
44360// OrigErr always returns nil, satisfies awserr.Error interface.
44361func (s *PoliciesLimitExceededException) OrigErr() error {
44362	return nil
44363}
44364
44365func (s *PoliciesLimitExceededException) Error() string {
44366	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
44367}
44368
44369// Status code returns the HTTP status code for the request's response error.
44370func (s *PoliciesLimitExceededException) StatusCode() int {
44371	return s.RespMetadata.StatusCode
44372}
44373
44374// RequestID returns the service's response RequestID for request.
44375func (s *PoliciesLimitExceededException) RequestID() string {
44376	return s.RespMetadata.RequestID
44377}
44378
44379// An aggregate of step execution statuses displayed in the Amazon Web Services
44380// Systems Manager console for a multi-Region and multi-account Automation execution.
44381type ProgressCounters struct {
44382	_ struct{} `type:"structure"`
44383
44384	// The total number of steps that the system cancelled in all specified Amazon
44385	// Web Services Regions and Amazon Web Services accounts for the current Automation
44386	// execution.
44387	CancelledSteps *int64 `type:"integer"`
44388
44389	// The total number of steps that failed to run in all specified Amazon Web
44390	// Services Regions and Amazon Web Services accounts for the current Automation
44391	// execution.
44392	FailedSteps *int64 `type:"integer"`
44393
44394	// The total number of steps that successfully completed in all specified Amazon
44395	// Web Services Regions and Amazon Web Services accounts for the current Automation
44396	// execution.
44397	SuccessSteps *int64 `type:"integer"`
44398
44399	// The total number of steps that timed out in all specified Amazon Web Services
44400	// Regions and Amazon Web Services accounts for the current Automation execution.
44401	TimedOutSteps *int64 `type:"integer"`
44402
44403	// The total number of steps run in all specified Amazon Web Services Regions
44404	// and Amazon Web Services accounts for the current Automation execution.
44405	TotalSteps *int64 `type:"integer"`
44406}
44407
44408// String returns the string representation
44409func (s ProgressCounters) String() string {
44410	return awsutil.Prettify(s)
44411}
44412
44413// GoString returns the string representation
44414func (s ProgressCounters) GoString() string {
44415	return s.String()
44416}
44417
44418// SetCancelledSteps sets the CancelledSteps field's value.
44419func (s *ProgressCounters) SetCancelledSteps(v int64) *ProgressCounters {
44420	s.CancelledSteps = &v
44421	return s
44422}
44423
44424// SetFailedSteps sets the FailedSteps field's value.
44425func (s *ProgressCounters) SetFailedSteps(v int64) *ProgressCounters {
44426	s.FailedSteps = &v
44427	return s
44428}
44429
44430// SetSuccessSteps sets the SuccessSteps field's value.
44431func (s *ProgressCounters) SetSuccessSteps(v int64) *ProgressCounters {
44432	s.SuccessSteps = &v
44433	return s
44434}
44435
44436// SetTimedOutSteps sets the TimedOutSteps field's value.
44437func (s *ProgressCounters) SetTimedOutSteps(v int64) *ProgressCounters {
44438	s.TimedOutSteps = &v
44439	return s
44440}
44441
44442// SetTotalSteps sets the TotalSteps field's value.
44443func (s *ProgressCounters) SetTotalSteps(v int64) *ProgressCounters {
44444	s.TotalSteps = &v
44445	return s
44446}
44447
44448type PutComplianceItemsInput struct {
44449	_ struct{} `type:"structure"`
44450
44451	// Specify the compliance type. For example, specify Association (for a State
44452	// Manager association), Patch, or Custom:string.
44453	//
44454	// ComplianceType is a required field
44455	ComplianceType *string `min:"1" type:"string" required:"true"`
44456
44457	// A summary of the call execution that includes an execution ID, the type of
44458	// execution (for example, Command), and the date/time of the execution using
44459	// a datetime object that is saved in the following format: yyyy-MM-dd'T'HH:mm:ss'Z'.
44460	//
44461	// ExecutionSummary is a required field
44462	ExecutionSummary *ComplianceExecutionSummary `type:"structure" required:"true"`
44463
44464	// MD5 or SHA-256 content hash. The content hash is used to determine if existing
44465	// information should be overwritten or ignored. If the content hashes match,
44466	// the request to put compliance information is ignored.
44467	ItemContentHash *string `type:"string"`
44468
44469	// Information about the compliance as defined by the resource type. For example,
44470	// for a patch compliance type, Items includes information about the PatchSeverity,
44471	// Classification, and so on.
44472	//
44473	// Items is a required field
44474	Items []*ComplianceItemEntry `type:"list" required:"true"`
44475
44476	// Specify an ID for this resource. For a managed instance, this is the instance
44477	// ID.
44478	//
44479	// ResourceId is a required field
44480	ResourceId *string `min:"1" type:"string" required:"true"`
44481
44482	// Specify the type of resource. ManagedInstance is currently the only supported
44483	// resource type.
44484	//
44485	// ResourceType is a required field
44486	ResourceType *string `min:"1" type:"string" required:"true"`
44487
44488	// The mode for uploading compliance items. You can specify COMPLETE or PARTIAL.
44489	// In COMPLETE mode, the system overwrites all existing compliance information
44490	// for the resource. You must provide a full list of compliance items each time
44491	// you send the request.
44492	//
44493	// In PARTIAL mode, the system overwrites compliance information for a specific
44494	// association. The association must be configured with SyncCompliance set to
44495	// MANUAL. By default, all requests use COMPLETE mode.
44496	//
44497	// This attribute is only valid for association compliance.
44498	UploadType *string `type:"string" enum:"ComplianceUploadType"`
44499}
44500
44501// String returns the string representation
44502func (s PutComplianceItemsInput) String() string {
44503	return awsutil.Prettify(s)
44504}
44505
44506// GoString returns the string representation
44507func (s PutComplianceItemsInput) GoString() string {
44508	return s.String()
44509}
44510
44511// Validate inspects the fields of the type to determine if they are valid.
44512func (s *PutComplianceItemsInput) Validate() error {
44513	invalidParams := request.ErrInvalidParams{Context: "PutComplianceItemsInput"}
44514	if s.ComplianceType == nil {
44515		invalidParams.Add(request.NewErrParamRequired("ComplianceType"))
44516	}
44517	if s.ComplianceType != nil && len(*s.ComplianceType) < 1 {
44518		invalidParams.Add(request.NewErrParamMinLen("ComplianceType", 1))
44519	}
44520	if s.ExecutionSummary == nil {
44521		invalidParams.Add(request.NewErrParamRequired("ExecutionSummary"))
44522	}
44523	if s.Items == nil {
44524		invalidParams.Add(request.NewErrParamRequired("Items"))
44525	}
44526	if s.ResourceId == nil {
44527		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
44528	}
44529	if s.ResourceId != nil && len(*s.ResourceId) < 1 {
44530		invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1))
44531	}
44532	if s.ResourceType == nil {
44533		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
44534	}
44535	if s.ResourceType != nil && len(*s.ResourceType) < 1 {
44536		invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1))
44537	}
44538	if s.ExecutionSummary != nil {
44539		if err := s.ExecutionSummary.Validate(); err != nil {
44540			invalidParams.AddNested("ExecutionSummary", err.(request.ErrInvalidParams))
44541		}
44542	}
44543	if s.Items != nil {
44544		for i, v := range s.Items {
44545			if v == nil {
44546				continue
44547			}
44548			if err := v.Validate(); err != nil {
44549				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
44550			}
44551		}
44552	}
44553
44554	if invalidParams.Len() > 0 {
44555		return invalidParams
44556	}
44557	return nil
44558}
44559
44560// SetComplianceType sets the ComplianceType field's value.
44561func (s *PutComplianceItemsInput) SetComplianceType(v string) *PutComplianceItemsInput {
44562	s.ComplianceType = &v
44563	return s
44564}
44565
44566// SetExecutionSummary sets the ExecutionSummary field's value.
44567func (s *PutComplianceItemsInput) SetExecutionSummary(v *ComplianceExecutionSummary) *PutComplianceItemsInput {
44568	s.ExecutionSummary = v
44569	return s
44570}
44571
44572// SetItemContentHash sets the ItemContentHash field's value.
44573func (s *PutComplianceItemsInput) SetItemContentHash(v string) *PutComplianceItemsInput {
44574	s.ItemContentHash = &v
44575	return s
44576}
44577
44578// SetItems sets the Items field's value.
44579func (s *PutComplianceItemsInput) SetItems(v []*ComplianceItemEntry) *PutComplianceItemsInput {
44580	s.Items = v
44581	return s
44582}
44583
44584// SetResourceId sets the ResourceId field's value.
44585func (s *PutComplianceItemsInput) SetResourceId(v string) *PutComplianceItemsInput {
44586	s.ResourceId = &v
44587	return s
44588}
44589
44590// SetResourceType sets the ResourceType field's value.
44591func (s *PutComplianceItemsInput) SetResourceType(v string) *PutComplianceItemsInput {
44592	s.ResourceType = &v
44593	return s
44594}
44595
44596// SetUploadType sets the UploadType field's value.
44597func (s *PutComplianceItemsInput) SetUploadType(v string) *PutComplianceItemsInput {
44598	s.UploadType = &v
44599	return s
44600}
44601
44602type PutComplianceItemsOutput struct {
44603	_ struct{} `type:"structure"`
44604}
44605
44606// String returns the string representation
44607func (s PutComplianceItemsOutput) String() string {
44608	return awsutil.Prettify(s)
44609}
44610
44611// GoString returns the string representation
44612func (s PutComplianceItemsOutput) GoString() string {
44613	return s.String()
44614}
44615
44616type PutInventoryInput struct {
44617	_ struct{} `type:"structure"`
44618
44619	// An instance ID where you want to add or update inventory items.
44620	//
44621	// InstanceId is a required field
44622	InstanceId *string `type:"string" required:"true"`
44623
44624	// The inventory items that you want to add or update on instances.
44625	//
44626	// Items is a required field
44627	Items []*InventoryItem `min:"1" type:"list" required:"true"`
44628}
44629
44630// String returns the string representation
44631func (s PutInventoryInput) String() string {
44632	return awsutil.Prettify(s)
44633}
44634
44635// GoString returns the string representation
44636func (s PutInventoryInput) GoString() string {
44637	return s.String()
44638}
44639
44640// Validate inspects the fields of the type to determine if they are valid.
44641func (s *PutInventoryInput) Validate() error {
44642	invalidParams := request.ErrInvalidParams{Context: "PutInventoryInput"}
44643	if s.InstanceId == nil {
44644		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
44645	}
44646	if s.Items == nil {
44647		invalidParams.Add(request.NewErrParamRequired("Items"))
44648	}
44649	if s.Items != nil && len(s.Items) < 1 {
44650		invalidParams.Add(request.NewErrParamMinLen("Items", 1))
44651	}
44652	if s.Items != nil {
44653		for i, v := range s.Items {
44654			if v == nil {
44655				continue
44656			}
44657			if err := v.Validate(); err != nil {
44658				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
44659			}
44660		}
44661	}
44662
44663	if invalidParams.Len() > 0 {
44664		return invalidParams
44665	}
44666	return nil
44667}
44668
44669// SetInstanceId sets the InstanceId field's value.
44670func (s *PutInventoryInput) SetInstanceId(v string) *PutInventoryInput {
44671	s.InstanceId = &v
44672	return s
44673}
44674
44675// SetItems sets the Items field's value.
44676func (s *PutInventoryInput) SetItems(v []*InventoryItem) *PutInventoryInput {
44677	s.Items = v
44678	return s
44679}
44680
44681type PutInventoryOutput struct {
44682	_ struct{} `type:"structure"`
44683
44684	// Information about the request.
44685	Message *string `type:"string"`
44686}
44687
44688// String returns the string representation
44689func (s PutInventoryOutput) String() string {
44690	return awsutil.Prettify(s)
44691}
44692
44693// GoString returns the string representation
44694func (s PutInventoryOutput) GoString() string {
44695	return s.String()
44696}
44697
44698// SetMessage sets the Message field's value.
44699func (s *PutInventoryOutput) SetMessage(v string) *PutInventoryOutput {
44700	s.Message = &v
44701	return s
44702}
44703
44704type PutParameterInput struct {
44705	_ struct{} `type:"structure"`
44706
44707	// A regular expression used to validate the parameter value. For example, for
44708	// String types with values restricted to numbers, you can specify the following:
44709	// AllowedPattern=^\d+$
44710	AllowedPattern *string `type:"string"`
44711
44712	// The data type for a String parameter. Supported data types include plain
44713	// text and Amazon Machine Image (AMI) IDs.
44714	//
44715	// The following data type values are supported.
44716	//
44717	//    * text
44718	//
44719	//    * aws:ec2:image
44720	//
44721	// When you create a String parameter and specify aws:ec2:image, Amazon Web
44722	// Services Systems Manager validates the parameter value is in the required
44723	// format, such as ami-12345abcdeEXAMPLE, and that the specified AMI is available
44724	// in your Amazon Web Services account. For more information, see Native parameter
44725	// support for Amazon Machine Image (AMI) IDs (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-ec2-aliases.html)
44726	// in the Amazon Web Services Systems Manager User Guide.
44727	DataType *string `type:"string"`
44728
44729	// Information about the parameter that you want to add to the system. Optional
44730	// but recommended.
44731	//
44732	// Don't enter personally identifiable information in this field.
44733	Description *string `type:"string"`
44734
44735	// The Key Management Service (KMS) ID that you want to use to encrypt a parameter.
44736	// Either the default KMS key automatically assigned to your Amazon Web Services
44737	// account or a custom key. Required for parameters that use the SecureString
44738	// data type.
44739	//
44740	// If you don't specify a key ID, the system uses the default key associated
44741	// with your Amazon Web Services account.
44742	//
44743	//    * To use your default KMS key, choose the SecureString data type, and
44744	//    do not specify the Key ID when you create the parameter. The system automatically
44745	//    populates Key ID with your default KMS key.
44746	//
44747	//    * To use a custom KMS key, choose the SecureString data type with the
44748	//    Key ID parameter.
44749	KeyId *string `min:"1" type:"string"`
44750
44751	// The fully qualified name of the parameter that you want to add to the system.
44752	// The fully qualified name includes the complete hierarchy of the parameter
44753	// path and name. For parameters in a hierarchy, you must include a leading
44754	// forward slash character (/) when you create or reference a parameter. For
44755	// example: /Dev/DBServer/MySQL/db-string13
44756	//
44757	// Naming Constraints:
44758	//
44759	//    * Parameter names are case sensitive.
44760	//
44761	//    * A parameter name must be unique within an Amazon Web Services Region
44762	//
44763	//    * A parameter name can't be prefixed with "aws" or "ssm" (case-insensitive).
44764	//
44765	//    * Parameter names can include only the following symbols and letters:
44766	//    a-zA-Z0-9_.- In addition, the slash character ( / ) is used to delineate
44767	//    hierarchies in parameter names. For example: /Dev/Production/East/Project-ABC/MyParameter
44768	//
44769	//    * A parameter name can't include spaces.
44770	//
44771	//    * Parameter hierarchies are limited to a maximum depth of fifteen levels.
44772	//
44773	// For additional information about valid values for parameter names, see Creating
44774	// Systems Manager parameters (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html)
44775	// in the Amazon Web Services Systems Manager User Guide.
44776	//
44777	// The maximum length constraint listed below includes capacity for additional
44778	// system attributes that aren't part of the name. The maximum length for a
44779	// parameter name, including the full length of the parameter ARN, is 1011 characters.
44780	// For example, the length of the following parameter name is 65 characters,
44781	// not 20 characters:
44782	//
44783	// arn:aws:ssm:us-east-2:111122223333:parameter/ExampleParameterName
44784	//
44785	// Name is a required field
44786	Name *string `min:"1" type:"string" required:"true"`
44787
44788	// Overwrite an existing parameter. The default value is false.
44789	Overwrite *bool `type:"boolean"`
44790
44791	// One or more policies to apply to a parameter. This operation takes a JSON
44792	// array. Parameter Store, a capability of Amazon Web Services Systems Manager
44793	// supports the following policy types:
44794	//
44795	// Expiration: This policy deletes the parameter after it expires. When you
44796	// create the policy, you specify the expiration date. You can update the expiration
44797	// date and time by updating the policy. Updating the parameter doesn't affect
44798	// the expiration date and time. When the expiration time is reached, Parameter
44799	// Store deletes the parameter.
44800	//
44801	// ExpirationNotification: This policy triggers an event in Amazon CloudWatch
44802	// Events that notifies you about the expiration. By using this policy, you
44803	// can receive notification before or after the expiration time is reached,
44804	// in units of days or hours.
44805	//
44806	// NoChangeNotification: This policy triggers a CloudWatch Events event if a
44807	// parameter hasn't been modified for a specified period of time. This policy
44808	// type is useful when, for example, a secret needs to be changed within a period
44809	// of time, but it hasn't been changed.
44810	//
44811	// All existing policies are preserved until you send new policies or an empty
44812	// policy. For more information about parameter policies, see Assigning parameter
44813	// policies (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html).
44814	Policies *string `min:"1" type:"string"`
44815
44816	// Optional metadata that you assign to a resource. Tags enable you to categorize
44817	// a resource in different ways, such as by purpose, owner, or environment.
44818	// For example, you might want to tag a Systems Manager parameter to identify
44819	// the type of resource to which it applies, the environment, or the type of
44820	// configuration data referenced by the parameter. In this case, you could specify
44821	// the following key-value pairs:
44822	//
44823	//    * Key=Resource,Value=S3bucket
44824	//
44825	//    * Key=OS,Value=Windows
44826	//
44827	//    * Key=ParameterType,Value=LicenseKey
44828	//
44829	// To add tags to an existing Systems Manager parameter, use the AddTagsToResource
44830	// operation.
44831	Tags []*Tag `type:"list"`
44832
44833	// The parameter tier to assign to a parameter.
44834	//
44835	// Parameter Store offers a standard tier and an advanced tier for parameters.
44836	// Standard parameters have a content size limit of 4 KB and can't be configured
44837	// to use parameter policies. You can create a maximum of 10,000 standard parameters
44838	// for each Region in an Amazon Web Services account. Standard parameters are
44839	// offered at no additional cost.
44840	//
44841	// Advanced parameters have a content size limit of 8 KB and can be configured
44842	// to use parameter policies. You can create a maximum of 100,000 advanced parameters
44843	// for each Region in an Amazon Web Services account. Advanced parameters incur
44844	// a charge. For more information, see Standard and advanced parameter tiers
44845	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-advanced-parameters.html)
44846	// in the Amazon Web Services Systems Manager User Guide.
44847	//
44848	// You can change a standard parameter to an advanced parameter any time. But
44849	// you can't revert an advanced parameter to a standard parameter. Reverting
44850	// an advanced parameter to a standard parameter would result in data loss because
44851	// the system would truncate the size of the parameter from 8 KB to 4 KB. Reverting
44852	// would also remove any policies attached to the parameter. Lastly, advanced
44853	// parameters use a different form of encryption than standard parameters.
44854	//
44855	// If you no longer need an advanced parameter, or if you no longer want to
44856	// incur charges for an advanced parameter, you must delete it and recreate
44857	// it as a new standard parameter.
44858	//
44859	// Using the Default Tier Configuration
44860	//
44861	// In PutParameter requests, you can specify the tier to create the parameter
44862	// in. Whenever you specify a tier in the request, Parameter Store creates or
44863	// updates the parameter according to that request. However, if you don't specify
44864	// a tier in a request, Parameter Store assigns the tier based on the current
44865	// Parameter Store default tier configuration.
44866	//
44867	// The default tier when you begin using Parameter Store is the standard-parameter
44868	// tier. If you use the advanced-parameter tier, you can specify one of the
44869	// following as the default:
44870	//
44871	//    * Advanced: With this option, Parameter Store evaluates all requests as
44872	//    advanced parameters.
44873	//
44874	//    * Intelligent-Tiering: With this option, Parameter Store evaluates each
44875	//    request to determine if the parameter is standard or advanced. If the
44876	//    request doesn't include any options that require an advanced parameter,
44877	//    the parameter is created in the standard-parameter tier. If one or more
44878	//    options requiring an advanced parameter are included in the request, Parameter
44879	//    Store create a parameter in the advanced-parameter tier. This approach
44880	//    helps control your parameter-related costs by always creating standard
44881	//    parameters unless an advanced parameter is necessary.
44882	//
44883	// Options that require an advanced parameter include the following:
44884	//
44885	//    * The content size of the parameter is more than 4 KB.
44886	//
44887	//    * The parameter uses a parameter policy.
44888	//
44889	//    * More than 10,000 parameters already exist in your Amazon Web Services
44890	//    account in the current Amazon Web Services Region.
44891	//
44892	// For more information about configuring the default tier option, see Specifying
44893	// a default parameter tier (https://docs.aws.amazon.com/systems-manager/latest/userguide/ps-default-tier.html)
44894	// in the Amazon Web Services Systems Manager User Guide.
44895	Tier *string `type:"string" enum:"ParameterTier"`
44896
44897	// The type of parameter that you want to add to the system.
44898	//
44899	// SecureString isn't currently supported for CloudFormation templates.
44900	//
44901	// Items in a StringList must be separated by a comma (,). You can't use other
44902	// punctuation or special character to escape items in the list. If you have
44903	// a parameter value that requires a comma, then use the String data type.
44904	//
44905	// Specifying a parameter type isn't required when updating a parameter. You
44906	// must specify a parameter type when creating a parameter.
44907	Type *string `type:"string" enum:"ParameterType"`
44908
44909	// The parameter value that you want to add to the system. Standard parameters
44910	// have a value limit of 4 KB. Advanced parameters have a value limit of 8 KB.
44911	//
44912	// Parameters can't be referenced or nested in the values of other parameters.
44913	// You can't include {{}} or {{ssm:parameter-name}} in a parameter value.
44914	//
44915	// Value is a required field
44916	Value *string `type:"string" required:"true"`
44917}
44918
44919// String returns the string representation
44920func (s PutParameterInput) String() string {
44921	return awsutil.Prettify(s)
44922}
44923
44924// GoString returns the string representation
44925func (s PutParameterInput) GoString() string {
44926	return s.String()
44927}
44928
44929// Validate inspects the fields of the type to determine if they are valid.
44930func (s *PutParameterInput) Validate() error {
44931	invalidParams := request.ErrInvalidParams{Context: "PutParameterInput"}
44932	if s.KeyId != nil && len(*s.KeyId) < 1 {
44933		invalidParams.Add(request.NewErrParamMinLen("KeyId", 1))
44934	}
44935	if s.Name == nil {
44936		invalidParams.Add(request.NewErrParamRequired("Name"))
44937	}
44938	if s.Name != nil && len(*s.Name) < 1 {
44939		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
44940	}
44941	if s.Policies != nil && len(*s.Policies) < 1 {
44942		invalidParams.Add(request.NewErrParamMinLen("Policies", 1))
44943	}
44944	if s.Value == nil {
44945		invalidParams.Add(request.NewErrParamRequired("Value"))
44946	}
44947	if s.Tags != nil {
44948		for i, v := range s.Tags {
44949			if v == nil {
44950				continue
44951			}
44952			if err := v.Validate(); err != nil {
44953				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
44954			}
44955		}
44956	}
44957
44958	if invalidParams.Len() > 0 {
44959		return invalidParams
44960	}
44961	return nil
44962}
44963
44964// SetAllowedPattern sets the AllowedPattern field's value.
44965func (s *PutParameterInput) SetAllowedPattern(v string) *PutParameterInput {
44966	s.AllowedPattern = &v
44967	return s
44968}
44969
44970// SetDataType sets the DataType field's value.
44971func (s *PutParameterInput) SetDataType(v string) *PutParameterInput {
44972	s.DataType = &v
44973	return s
44974}
44975
44976// SetDescription sets the Description field's value.
44977func (s *PutParameterInput) SetDescription(v string) *PutParameterInput {
44978	s.Description = &v
44979	return s
44980}
44981
44982// SetKeyId sets the KeyId field's value.
44983func (s *PutParameterInput) SetKeyId(v string) *PutParameterInput {
44984	s.KeyId = &v
44985	return s
44986}
44987
44988// SetName sets the Name field's value.
44989func (s *PutParameterInput) SetName(v string) *PutParameterInput {
44990	s.Name = &v
44991	return s
44992}
44993
44994// SetOverwrite sets the Overwrite field's value.
44995func (s *PutParameterInput) SetOverwrite(v bool) *PutParameterInput {
44996	s.Overwrite = &v
44997	return s
44998}
44999
45000// SetPolicies sets the Policies field's value.
45001func (s *PutParameterInput) SetPolicies(v string) *PutParameterInput {
45002	s.Policies = &v
45003	return s
45004}
45005
45006// SetTags sets the Tags field's value.
45007func (s *PutParameterInput) SetTags(v []*Tag) *PutParameterInput {
45008	s.Tags = v
45009	return s
45010}
45011
45012// SetTier sets the Tier field's value.
45013func (s *PutParameterInput) SetTier(v string) *PutParameterInput {
45014	s.Tier = &v
45015	return s
45016}
45017
45018// SetType sets the Type field's value.
45019func (s *PutParameterInput) SetType(v string) *PutParameterInput {
45020	s.Type = &v
45021	return s
45022}
45023
45024// SetValue sets the Value field's value.
45025func (s *PutParameterInput) SetValue(v string) *PutParameterInput {
45026	s.Value = &v
45027	return s
45028}
45029
45030type PutParameterOutput struct {
45031	_ struct{} `type:"structure"`
45032
45033	// The tier assigned to the parameter.
45034	Tier *string `type:"string" enum:"ParameterTier"`
45035
45036	// The new version number of a parameter. If you edit a parameter value, Parameter
45037	// Store automatically creates a new version and assigns this new version a
45038	// unique ID. You can reference a parameter version ID in API operations or
45039	// in Systems Manager documents (SSM documents). By default, if you don't specify
45040	// a specific version, the system returns the latest parameter value when a
45041	// parameter is called.
45042	Version *int64 `type:"long"`
45043}
45044
45045// String returns the string representation
45046func (s PutParameterOutput) String() string {
45047	return awsutil.Prettify(s)
45048}
45049
45050// GoString returns the string representation
45051func (s PutParameterOutput) GoString() string {
45052	return s.String()
45053}
45054
45055// SetTier sets the Tier field's value.
45056func (s *PutParameterOutput) SetTier(v string) *PutParameterOutput {
45057	s.Tier = &v
45058	return s
45059}
45060
45061// SetVersion sets the Version field's value.
45062func (s *PutParameterOutput) SetVersion(v int64) *PutParameterOutput {
45063	s.Version = &v
45064	return s
45065}
45066
45067type RegisterDefaultPatchBaselineInput struct {
45068	_ struct{} `type:"structure"`
45069
45070	// The ID of the patch baseline that should be the default patch baseline.
45071	//
45072	// BaselineId is a required field
45073	BaselineId *string `min:"20" type:"string" required:"true"`
45074}
45075
45076// String returns the string representation
45077func (s RegisterDefaultPatchBaselineInput) String() string {
45078	return awsutil.Prettify(s)
45079}
45080
45081// GoString returns the string representation
45082func (s RegisterDefaultPatchBaselineInput) GoString() string {
45083	return s.String()
45084}
45085
45086// Validate inspects the fields of the type to determine if they are valid.
45087func (s *RegisterDefaultPatchBaselineInput) Validate() error {
45088	invalidParams := request.ErrInvalidParams{Context: "RegisterDefaultPatchBaselineInput"}
45089	if s.BaselineId == nil {
45090		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
45091	}
45092	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
45093		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
45094	}
45095
45096	if invalidParams.Len() > 0 {
45097		return invalidParams
45098	}
45099	return nil
45100}
45101
45102// SetBaselineId sets the BaselineId field's value.
45103func (s *RegisterDefaultPatchBaselineInput) SetBaselineId(v string) *RegisterDefaultPatchBaselineInput {
45104	s.BaselineId = &v
45105	return s
45106}
45107
45108type RegisterDefaultPatchBaselineOutput struct {
45109	_ struct{} `type:"structure"`
45110
45111	// The ID of the default patch baseline.
45112	BaselineId *string `min:"20" type:"string"`
45113}
45114
45115// String returns the string representation
45116func (s RegisterDefaultPatchBaselineOutput) String() string {
45117	return awsutil.Prettify(s)
45118}
45119
45120// GoString returns the string representation
45121func (s RegisterDefaultPatchBaselineOutput) GoString() string {
45122	return s.String()
45123}
45124
45125// SetBaselineId sets the BaselineId field's value.
45126func (s *RegisterDefaultPatchBaselineOutput) SetBaselineId(v string) *RegisterDefaultPatchBaselineOutput {
45127	s.BaselineId = &v
45128	return s
45129}
45130
45131type RegisterPatchBaselineForPatchGroupInput struct {
45132	_ struct{} `type:"structure"`
45133
45134	// The ID of the patch baseline to register with the patch group.
45135	//
45136	// BaselineId is a required field
45137	BaselineId *string `min:"20" type:"string" required:"true"`
45138
45139	// The name of the patch group to be registered with the patch baseline.
45140	//
45141	// PatchGroup is a required field
45142	PatchGroup *string `min:"1" type:"string" required:"true"`
45143}
45144
45145// String returns the string representation
45146func (s RegisterPatchBaselineForPatchGroupInput) String() string {
45147	return awsutil.Prettify(s)
45148}
45149
45150// GoString returns the string representation
45151func (s RegisterPatchBaselineForPatchGroupInput) GoString() string {
45152	return s.String()
45153}
45154
45155// Validate inspects the fields of the type to determine if they are valid.
45156func (s *RegisterPatchBaselineForPatchGroupInput) Validate() error {
45157	invalidParams := request.ErrInvalidParams{Context: "RegisterPatchBaselineForPatchGroupInput"}
45158	if s.BaselineId == nil {
45159		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
45160	}
45161	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
45162		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
45163	}
45164	if s.PatchGroup == nil {
45165		invalidParams.Add(request.NewErrParamRequired("PatchGroup"))
45166	}
45167	if s.PatchGroup != nil && len(*s.PatchGroup) < 1 {
45168		invalidParams.Add(request.NewErrParamMinLen("PatchGroup", 1))
45169	}
45170
45171	if invalidParams.Len() > 0 {
45172		return invalidParams
45173	}
45174	return nil
45175}
45176
45177// SetBaselineId sets the BaselineId field's value.
45178func (s *RegisterPatchBaselineForPatchGroupInput) SetBaselineId(v string) *RegisterPatchBaselineForPatchGroupInput {
45179	s.BaselineId = &v
45180	return s
45181}
45182
45183// SetPatchGroup sets the PatchGroup field's value.
45184func (s *RegisterPatchBaselineForPatchGroupInput) SetPatchGroup(v string) *RegisterPatchBaselineForPatchGroupInput {
45185	s.PatchGroup = &v
45186	return s
45187}
45188
45189type RegisterPatchBaselineForPatchGroupOutput struct {
45190	_ struct{} `type:"structure"`
45191
45192	// The ID of the patch baseline the patch group was registered with.
45193	BaselineId *string `min:"20" type:"string"`
45194
45195	// The name of the patch group registered with the patch baseline.
45196	PatchGroup *string `min:"1" type:"string"`
45197}
45198
45199// String returns the string representation
45200func (s RegisterPatchBaselineForPatchGroupOutput) String() string {
45201	return awsutil.Prettify(s)
45202}
45203
45204// GoString returns the string representation
45205func (s RegisterPatchBaselineForPatchGroupOutput) GoString() string {
45206	return s.String()
45207}
45208
45209// SetBaselineId sets the BaselineId field's value.
45210func (s *RegisterPatchBaselineForPatchGroupOutput) SetBaselineId(v string) *RegisterPatchBaselineForPatchGroupOutput {
45211	s.BaselineId = &v
45212	return s
45213}
45214
45215// SetPatchGroup sets the PatchGroup field's value.
45216func (s *RegisterPatchBaselineForPatchGroupOutput) SetPatchGroup(v string) *RegisterPatchBaselineForPatchGroupOutput {
45217	s.PatchGroup = &v
45218	return s
45219}
45220
45221type RegisterTargetWithMaintenanceWindowInput struct {
45222	_ struct{} `type:"structure"`
45223
45224	// User-provided idempotency token.
45225	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
45226
45227	// An optional description for the target.
45228	Description *string `min:"1" type:"string" sensitive:"true"`
45229
45230	// An optional name for the target.
45231	Name *string `min:"3" type:"string"`
45232
45233	// User-provided value that will be included in any Amazon CloudWatch Events
45234	// events raised while running tasks for these targets in this maintenance window.
45235	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
45236
45237	// The type of target being registered with the maintenance window.
45238	//
45239	// ResourceType is a required field
45240	ResourceType *string `type:"string" required:"true" enum:"MaintenanceWindowResourceType"`
45241
45242	// The targets to register with the maintenance window. In other words, the
45243	// instances to run commands on when the maintenance window runs.
45244	//
45245	// If a single maintenance window task is registered with multiple targets,
45246	// its task invocations occur sequentially and not in parallel. If your task
45247	// must run on multiple targets at the same time, register a task for each target
45248	// individually and assign each task the same priority level.
45249	//
45250	// You can specify targets using instance IDs, resource group names, or tags
45251	// that have been applied to instances.
45252	//
45253	// Example 1: Specify instance IDs
45254	//
45255	// Key=InstanceIds,Values=instance-id-1,instance-id-2,instance-id-3
45256	//
45257	// Example 2: Use tag key-pairs applied to instances
45258	//
45259	// Key=tag:my-tag-key,Values=my-tag-value-1,my-tag-value-2
45260	//
45261	// Example 3: Use tag-keys applied to instances
45262	//
45263	// Key=tag-key,Values=my-tag-key-1,my-tag-key-2
45264	//
45265	// Example 4: Use resource group names
45266	//
45267	// Key=resource-groups:Name,Values=resource-group-name
45268	//
45269	// Example 5: Use filters for resource group types
45270	//
45271	// Key=resource-groups:ResourceTypeFilters,Values=resource-type-1,resource-type-2
45272	//
45273	// For Key=resource-groups:ResourceTypeFilters, specify resource types in the
45274	// following format
45275	//
45276	// Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::INSTANCE,AWS::EC2::VPC
45277	//
45278	// For more information about these examples formats, including the best use
45279	// case for each one, see Examples: Register targets with a maintenance window
45280	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/mw-cli-tutorial-targets-examples.html)
45281	// in the Amazon Web Services Systems Manager User Guide.
45282	//
45283	// Targets is a required field
45284	Targets []*Target `type:"list" required:"true"`
45285
45286	// The ID of the maintenance window the target should be registered with.
45287	//
45288	// WindowId is a required field
45289	WindowId *string `min:"20" type:"string" required:"true"`
45290}
45291
45292// String returns the string representation
45293func (s RegisterTargetWithMaintenanceWindowInput) String() string {
45294	return awsutil.Prettify(s)
45295}
45296
45297// GoString returns the string representation
45298func (s RegisterTargetWithMaintenanceWindowInput) GoString() string {
45299	return s.String()
45300}
45301
45302// Validate inspects the fields of the type to determine if they are valid.
45303func (s *RegisterTargetWithMaintenanceWindowInput) Validate() error {
45304	invalidParams := request.ErrInvalidParams{Context: "RegisterTargetWithMaintenanceWindowInput"}
45305	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
45306		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
45307	}
45308	if s.Description != nil && len(*s.Description) < 1 {
45309		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
45310	}
45311	if s.Name != nil && len(*s.Name) < 3 {
45312		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
45313	}
45314	if s.OwnerInformation != nil && len(*s.OwnerInformation) < 1 {
45315		invalidParams.Add(request.NewErrParamMinLen("OwnerInformation", 1))
45316	}
45317	if s.ResourceType == nil {
45318		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
45319	}
45320	if s.Targets == nil {
45321		invalidParams.Add(request.NewErrParamRequired("Targets"))
45322	}
45323	if s.WindowId == nil {
45324		invalidParams.Add(request.NewErrParamRequired("WindowId"))
45325	}
45326	if s.WindowId != nil && len(*s.WindowId) < 20 {
45327		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
45328	}
45329	if s.Targets != nil {
45330		for i, v := range s.Targets {
45331			if v == nil {
45332				continue
45333			}
45334			if err := v.Validate(); err != nil {
45335				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
45336			}
45337		}
45338	}
45339
45340	if invalidParams.Len() > 0 {
45341		return invalidParams
45342	}
45343	return nil
45344}
45345
45346// SetClientToken sets the ClientToken field's value.
45347func (s *RegisterTargetWithMaintenanceWindowInput) SetClientToken(v string) *RegisterTargetWithMaintenanceWindowInput {
45348	s.ClientToken = &v
45349	return s
45350}
45351
45352// SetDescription sets the Description field's value.
45353func (s *RegisterTargetWithMaintenanceWindowInput) SetDescription(v string) *RegisterTargetWithMaintenanceWindowInput {
45354	s.Description = &v
45355	return s
45356}
45357
45358// SetName sets the Name field's value.
45359func (s *RegisterTargetWithMaintenanceWindowInput) SetName(v string) *RegisterTargetWithMaintenanceWindowInput {
45360	s.Name = &v
45361	return s
45362}
45363
45364// SetOwnerInformation sets the OwnerInformation field's value.
45365func (s *RegisterTargetWithMaintenanceWindowInput) SetOwnerInformation(v string) *RegisterTargetWithMaintenanceWindowInput {
45366	s.OwnerInformation = &v
45367	return s
45368}
45369
45370// SetResourceType sets the ResourceType field's value.
45371func (s *RegisterTargetWithMaintenanceWindowInput) SetResourceType(v string) *RegisterTargetWithMaintenanceWindowInput {
45372	s.ResourceType = &v
45373	return s
45374}
45375
45376// SetTargets sets the Targets field's value.
45377func (s *RegisterTargetWithMaintenanceWindowInput) SetTargets(v []*Target) *RegisterTargetWithMaintenanceWindowInput {
45378	s.Targets = v
45379	return s
45380}
45381
45382// SetWindowId sets the WindowId field's value.
45383func (s *RegisterTargetWithMaintenanceWindowInput) SetWindowId(v string) *RegisterTargetWithMaintenanceWindowInput {
45384	s.WindowId = &v
45385	return s
45386}
45387
45388type RegisterTargetWithMaintenanceWindowOutput struct {
45389	_ struct{} `type:"structure"`
45390
45391	// The ID of the target definition in this maintenance window.
45392	WindowTargetId *string `min:"36" type:"string"`
45393}
45394
45395// String returns the string representation
45396func (s RegisterTargetWithMaintenanceWindowOutput) String() string {
45397	return awsutil.Prettify(s)
45398}
45399
45400// GoString returns the string representation
45401func (s RegisterTargetWithMaintenanceWindowOutput) GoString() string {
45402	return s.String()
45403}
45404
45405// SetWindowTargetId sets the WindowTargetId field's value.
45406func (s *RegisterTargetWithMaintenanceWindowOutput) SetWindowTargetId(v string) *RegisterTargetWithMaintenanceWindowOutput {
45407	s.WindowTargetId = &v
45408	return s
45409}
45410
45411type RegisterTaskWithMaintenanceWindowInput struct {
45412	_ struct{} `type:"structure"`
45413
45414	// User-provided idempotency token.
45415	ClientToken *string `min:"1" type:"string" idempotencyToken:"true"`
45416
45417	// An optional description for the task.
45418	Description *string `min:"1" type:"string" sensitive:"true"`
45419
45420	// A structure containing information about an Amazon Simple Storage Service
45421	// (Amazon S3) bucket to write instance-level logs to.
45422	//
45423	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
45424	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
45425	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
45426	// information about how Amazon Web Services Systems Manager handles these options
45427	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
45428	LoggingInfo *LoggingInfo `type:"structure"`
45429
45430	// The maximum number of targets this task can be run for in parallel.
45431	//
45432	// For maintenance window tasks without a target specified, you can't supply
45433	// a value for this option. Instead, the system inserts a placeholder value
45434	// of 1. This value doesn't affect the running of your task.
45435	MaxConcurrency *string `min:"1" type:"string"`
45436
45437	// The maximum number of errors allowed before this task stops being scheduled.
45438	//
45439	// For maintenance window tasks without a target specified, you can't supply
45440	// a value for this option. Instead, the system inserts a placeholder value
45441	// of 1. This value doesn't affect the running of your task.
45442	MaxErrors *string `min:"1" type:"string"`
45443
45444	// An optional name for the task.
45445	Name *string `min:"3" type:"string"`
45446
45447	// The priority of the task in the maintenance window, the lower the number
45448	// the higher the priority. Tasks in a maintenance window are scheduled in priority
45449	// order with tasks that have the same priority scheduled in parallel.
45450	Priority *int64 `type:"integer"`
45451
45452	// The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services
45453	// Systems Manager to assume when running a maintenance window task. If you
45454	// do not specify a service role ARN, Systems Manager uses your account's service-linked
45455	// role. If no service-linked role for Systems Manager exists in your account,
45456	// it is created when you run RegisterTaskWithMaintenanceWindow.
45457	//
45458	// For more information, see the following topics in the in the Amazon Web Services
45459	// Systems Manager User Guide:
45460	//
45461	//    * Using service-linked roles for Systems Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions)
45462	//
45463	//    * Should I use a service-linked role or a custom service role to run maintenance
45464	//    window tasks? (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html#maintenance-window-tasks-service-role)
45465	ServiceRoleArn *string `type:"string"`
45466
45467	// The targets (either instances or maintenance window targets).
45468	//
45469	// One or more targets must be specified for maintenance window Run Command-type
45470	// tasks. Depending on the task, targets are optional for other maintenance
45471	// window task types (Automation, Lambda, and Step Functions). For more information
45472	// about running tasks that don't specify targets, see Registering maintenance
45473	// window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
45474	// in the Amazon Web Services Systems Manager User Guide.
45475	//
45476	// Specify instances using the following format:
45477	//
45478	// Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>
45479	//
45480	// Specify maintenance window targets using the following format:
45481	//
45482	// Key=WindowTargetIds,Values=<window-target-id-1>,<window-target-id-2>
45483	Targets []*Target `type:"list"`
45484
45485	// The ARN of the task to run.
45486	//
45487	// TaskArn is a required field
45488	TaskArn *string `min:"1" type:"string" required:"true"`
45489
45490	// The parameters that the task should use during execution. Populate only the
45491	// fields that match the task type. All other fields should be empty.
45492	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
45493
45494	// The parameters that should be passed to the task when it is run.
45495	//
45496	// TaskParameters has been deprecated. To specify parameters to pass to a task
45497	// when it runs, instead use the Parameters option in the TaskInvocationParameters
45498	// structure. For information about how Systems Manager handles these options
45499	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
45500	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
45501
45502	// The type of task being registered.
45503	//
45504	// TaskType is a required field
45505	TaskType *string `type:"string" required:"true" enum:"MaintenanceWindowTaskType"`
45506
45507	// The ID of the maintenance window the task should be added to.
45508	//
45509	// WindowId is a required field
45510	WindowId *string `min:"20" type:"string" required:"true"`
45511}
45512
45513// String returns the string representation
45514func (s RegisterTaskWithMaintenanceWindowInput) String() string {
45515	return awsutil.Prettify(s)
45516}
45517
45518// GoString returns the string representation
45519func (s RegisterTaskWithMaintenanceWindowInput) GoString() string {
45520	return s.String()
45521}
45522
45523// Validate inspects the fields of the type to determine if they are valid.
45524func (s *RegisterTaskWithMaintenanceWindowInput) Validate() error {
45525	invalidParams := request.ErrInvalidParams{Context: "RegisterTaskWithMaintenanceWindowInput"}
45526	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
45527		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
45528	}
45529	if s.Description != nil && len(*s.Description) < 1 {
45530		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
45531	}
45532	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
45533		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
45534	}
45535	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
45536		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
45537	}
45538	if s.Name != nil && len(*s.Name) < 3 {
45539		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
45540	}
45541	if s.TaskArn == nil {
45542		invalidParams.Add(request.NewErrParamRequired("TaskArn"))
45543	}
45544	if s.TaskArn != nil && len(*s.TaskArn) < 1 {
45545		invalidParams.Add(request.NewErrParamMinLen("TaskArn", 1))
45546	}
45547	if s.TaskType == nil {
45548		invalidParams.Add(request.NewErrParamRequired("TaskType"))
45549	}
45550	if s.WindowId == nil {
45551		invalidParams.Add(request.NewErrParamRequired("WindowId"))
45552	}
45553	if s.WindowId != nil && len(*s.WindowId) < 20 {
45554		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
45555	}
45556	if s.LoggingInfo != nil {
45557		if err := s.LoggingInfo.Validate(); err != nil {
45558			invalidParams.AddNested("LoggingInfo", err.(request.ErrInvalidParams))
45559		}
45560	}
45561	if s.Targets != nil {
45562		for i, v := range s.Targets {
45563			if v == nil {
45564				continue
45565			}
45566			if err := v.Validate(); err != nil {
45567				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
45568			}
45569		}
45570	}
45571	if s.TaskInvocationParameters != nil {
45572		if err := s.TaskInvocationParameters.Validate(); err != nil {
45573			invalidParams.AddNested("TaskInvocationParameters", err.(request.ErrInvalidParams))
45574		}
45575	}
45576
45577	if invalidParams.Len() > 0 {
45578		return invalidParams
45579	}
45580	return nil
45581}
45582
45583// SetClientToken sets the ClientToken field's value.
45584func (s *RegisterTaskWithMaintenanceWindowInput) SetClientToken(v string) *RegisterTaskWithMaintenanceWindowInput {
45585	s.ClientToken = &v
45586	return s
45587}
45588
45589// SetDescription sets the Description field's value.
45590func (s *RegisterTaskWithMaintenanceWindowInput) SetDescription(v string) *RegisterTaskWithMaintenanceWindowInput {
45591	s.Description = &v
45592	return s
45593}
45594
45595// SetLoggingInfo sets the LoggingInfo field's value.
45596func (s *RegisterTaskWithMaintenanceWindowInput) SetLoggingInfo(v *LoggingInfo) *RegisterTaskWithMaintenanceWindowInput {
45597	s.LoggingInfo = v
45598	return s
45599}
45600
45601// SetMaxConcurrency sets the MaxConcurrency field's value.
45602func (s *RegisterTaskWithMaintenanceWindowInput) SetMaxConcurrency(v string) *RegisterTaskWithMaintenanceWindowInput {
45603	s.MaxConcurrency = &v
45604	return s
45605}
45606
45607// SetMaxErrors sets the MaxErrors field's value.
45608func (s *RegisterTaskWithMaintenanceWindowInput) SetMaxErrors(v string) *RegisterTaskWithMaintenanceWindowInput {
45609	s.MaxErrors = &v
45610	return s
45611}
45612
45613// SetName sets the Name field's value.
45614func (s *RegisterTaskWithMaintenanceWindowInput) SetName(v string) *RegisterTaskWithMaintenanceWindowInput {
45615	s.Name = &v
45616	return s
45617}
45618
45619// SetPriority sets the Priority field's value.
45620func (s *RegisterTaskWithMaintenanceWindowInput) SetPriority(v int64) *RegisterTaskWithMaintenanceWindowInput {
45621	s.Priority = &v
45622	return s
45623}
45624
45625// SetServiceRoleArn sets the ServiceRoleArn field's value.
45626func (s *RegisterTaskWithMaintenanceWindowInput) SetServiceRoleArn(v string) *RegisterTaskWithMaintenanceWindowInput {
45627	s.ServiceRoleArn = &v
45628	return s
45629}
45630
45631// SetTargets sets the Targets field's value.
45632func (s *RegisterTaskWithMaintenanceWindowInput) SetTargets(v []*Target) *RegisterTaskWithMaintenanceWindowInput {
45633	s.Targets = v
45634	return s
45635}
45636
45637// SetTaskArn sets the TaskArn field's value.
45638func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskArn(v string) *RegisterTaskWithMaintenanceWindowInput {
45639	s.TaskArn = &v
45640	return s
45641}
45642
45643// SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
45644func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *RegisterTaskWithMaintenanceWindowInput {
45645	s.TaskInvocationParameters = v
45646	return s
45647}
45648
45649// SetTaskParameters sets the TaskParameters field's value.
45650func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *RegisterTaskWithMaintenanceWindowInput {
45651	s.TaskParameters = v
45652	return s
45653}
45654
45655// SetTaskType sets the TaskType field's value.
45656func (s *RegisterTaskWithMaintenanceWindowInput) SetTaskType(v string) *RegisterTaskWithMaintenanceWindowInput {
45657	s.TaskType = &v
45658	return s
45659}
45660
45661// SetWindowId sets the WindowId field's value.
45662func (s *RegisterTaskWithMaintenanceWindowInput) SetWindowId(v string) *RegisterTaskWithMaintenanceWindowInput {
45663	s.WindowId = &v
45664	return s
45665}
45666
45667type RegisterTaskWithMaintenanceWindowOutput struct {
45668	_ struct{} `type:"structure"`
45669
45670	// The ID of the task in the maintenance window.
45671	WindowTaskId *string `min:"36" type:"string"`
45672}
45673
45674// String returns the string representation
45675func (s RegisterTaskWithMaintenanceWindowOutput) String() string {
45676	return awsutil.Prettify(s)
45677}
45678
45679// GoString returns the string representation
45680func (s RegisterTaskWithMaintenanceWindowOutput) GoString() string {
45681	return s.String()
45682}
45683
45684// SetWindowTaskId sets the WindowTaskId field's value.
45685func (s *RegisterTaskWithMaintenanceWindowOutput) SetWindowTaskId(v string) *RegisterTaskWithMaintenanceWindowOutput {
45686	s.WindowTaskId = &v
45687	return s
45688}
45689
45690// An OpsItems that shares something in common with the current OpsItem. For
45691// example, related OpsItems can include OpsItems with similar error messages,
45692// impacted resources, or statuses for the impacted resource.
45693type RelatedOpsItem struct {
45694	_ struct{} `type:"structure"`
45695
45696	// The ID of an OpsItem related to the current OpsItem.
45697	//
45698	// OpsItemId is a required field
45699	OpsItemId *string `type:"string" required:"true"`
45700}
45701
45702// String returns the string representation
45703func (s RelatedOpsItem) String() string {
45704	return awsutil.Prettify(s)
45705}
45706
45707// GoString returns the string representation
45708func (s RelatedOpsItem) GoString() string {
45709	return s.String()
45710}
45711
45712// Validate inspects the fields of the type to determine if they are valid.
45713func (s *RelatedOpsItem) Validate() error {
45714	invalidParams := request.ErrInvalidParams{Context: "RelatedOpsItem"}
45715	if s.OpsItemId == nil {
45716		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
45717	}
45718
45719	if invalidParams.Len() > 0 {
45720		return invalidParams
45721	}
45722	return nil
45723}
45724
45725// SetOpsItemId sets the OpsItemId field's value.
45726func (s *RelatedOpsItem) SetOpsItemId(v string) *RelatedOpsItem {
45727	s.OpsItemId = &v
45728	return s
45729}
45730
45731type RemoveTagsFromResourceInput struct {
45732	_ struct{} `type:"structure"`
45733
45734	// The ID of the resource from which you want to remove tags. For example:
45735	//
45736	// ManagedInstance: mi-012345abcde
45737	//
45738	// MaintenanceWindow: mw-012345abcde
45739	//
45740	// PatchBaseline: pb-012345abcde
45741	//
45742	// OpsMetadata object: ResourceID for tagging is created from the Amazon Resource
45743	// Name (ARN) for the object. Specifically, ResourceID is created from the strings
45744	// that come after the word opsmetadata in the ARN. For example, an OpsMetadata
45745	// object with an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
45746	// has a ResourceID of either aws/ssm/MyGroup/appmanager or /aws/ssm/MyGroup/appmanager.
45747	//
45748	// For the Document and Parameter values, use the name of the resource.
45749	//
45750	// The ManagedInstance type for this API operation is only for on-premises managed
45751	// instances. Specify the name of the managed instance in the following format:
45752	// mi-ID_number. For example, mi-1a2b3c4d5e6f.
45753	//
45754	// ResourceId is a required field
45755	ResourceId *string `type:"string" required:"true"`
45756
45757	// The type of resource from which you want to remove a tag.
45758	//
45759	// The ManagedInstance type for this API operation is only for on-premises managed
45760	// instances. Specify the name of the managed instance in the following format:
45761	// mi-ID_number . For example, mi-1a2b3c4d5e6f.
45762	//
45763	// ResourceType is a required field
45764	ResourceType *string `type:"string" required:"true" enum:"ResourceTypeForTagging"`
45765
45766	// Tag keys that you want to remove from the specified resource.
45767	//
45768	// TagKeys is a required field
45769	TagKeys []*string `type:"list" required:"true"`
45770}
45771
45772// String returns the string representation
45773func (s RemoveTagsFromResourceInput) String() string {
45774	return awsutil.Prettify(s)
45775}
45776
45777// GoString returns the string representation
45778func (s RemoveTagsFromResourceInput) GoString() string {
45779	return s.String()
45780}
45781
45782// Validate inspects the fields of the type to determine if they are valid.
45783func (s *RemoveTagsFromResourceInput) Validate() error {
45784	invalidParams := request.ErrInvalidParams{Context: "RemoveTagsFromResourceInput"}
45785	if s.ResourceId == nil {
45786		invalidParams.Add(request.NewErrParamRequired("ResourceId"))
45787	}
45788	if s.ResourceType == nil {
45789		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
45790	}
45791	if s.TagKeys == nil {
45792		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
45793	}
45794
45795	if invalidParams.Len() > 0 {
45796		return invalidParams
45797	}
45798	return nil
45799}
45800
45801// SetResourceId sets the ResourceId field's value.
45802func (s *RemoveTagsFromResourceInput) SetResourceId(v string) *RemoveTagsFromResourceInput {
45803	s.ResourceId = &v
45804	return s
45805}
45806
45807// SetResourceType sets the ResourceType field's value.
45808func (s *RemoveTagsFromResourceInput) SetResourceType(v string) *RemoveTagsFromResourceInput {
45809	s.ResourceType = &v
45810	return s
45811}
45812
45813// SetTagKeys sets the TagKeys field's value.
45814func (s *RemoveTagsFromResourceInput) SetTagKeys(v []*string) *RemoveTagsFromResourceInput {
45815	s.TagKeys = v
45816	return s
45817}
45818
45819type RemoveTagsFromResourceOutput struct {
45820	_ struct{} `type:"structure"`
45821}
45822
45823// String returns the string representation
45824func (s RemoveTagsFromResourceOutput) String() string {
45825	return awsutil.Prettify(s)
45826}
45827
45828// GoString returns the string representation
45829func (s RemoveTagsFromResourceOutput) GoString() string {
45830	return s.String()
45831}
45832
45833// The request body of the ResetServiceSetting API operation.
45834type ResetServiceSettingInput struct {
45835	_ struct{} `type:"structure"`
45836
45837	// The Amazon Resource Name (ARN) of the service setting to reset. The setting
45838	// ID can be one of the following.
45839	//
45840	//    * /ssm/automation/customer-script-log-destination
45841	//
45842	//    * /ssm/automation/customer-script-log-group-name
45843	//
45844	//    * /ssm/documents/console/public-sharing-permission
45845	//
45846	//    * /ssm/parameter-store/default-parameter-tier
45847	//
45848	//    * /ssm/parameter-store/high-throughput-enabled
45849	//
45850	//    * /ssm/managed-instance/activation-tier
45851	//
45852	// SettingId is a required field
45853	SettingId *string `min:"1" type:"string" required:"true"`
45854}
45855
45856// String returns the string representation
45857func (s ResetServiceSettingInput) String() string {
45858	return awsutil.Prettify(s)
45859}
45860
45861// GoString returns the string representation
45862func (s ResetServiceSettingInput) GoString() string {
45863	return s.String()
45864}
45865
45866// Validate inspects the fields of the type to determine if they are valid.
45867func (s *ResetServiceSettingInput) Validate() error {
45868	invalidParams := request.ErrInvalidParams{Context: "ResetServiceSettingInput"}
45869	if s.SettingId == nil {
45870		invalidParams.Add(request.NewErrParamRequired("SettingId"))
45871	}
45872	if s.SettingId != nil && len(*s.SettingId) < 1 {
45873		invalidParams.Add(request.NewErrParamMinLen("SettingId", 1))
45874	}
45875
45876	if invalidParams.Len() > 0 {
45877		return invalidParams
45878	}
45879	return nil
45880}
45881
45882// SetSettingId sets the SettingId field's value.
45883func (s *ResetServiceSettingInput) SetSettingId(v string) *ResetServiceSettingInput {
45884	s.SettingId = &v
45885	return s
45886}
45887
45888// The result body of the ResetServiceSetting API operation.
45889type ResetServiceSettingOutput struct {
45890	_ struct{} `type:"structure"`
45891
45892	// The current, effective service setting after calling the ResetServiceSetting
45893	// API operation.
45894	ServiceSetting *ServiceSetting `type:"structure"`
45895}
45896
45897// String returns the string representation
45898func (s ResetServiceSettingOutput) String() string {
45899	return awsutil.Prettify(s)
45900}
45901
45902// GoString returns the string representation
45903func (s ResetServiceSettingOutput) GoString() string {
45904	return s.String()
45905}
45906
45907// SetServiceSetting sets the ServiceSetting field's value.
45908func (s *ResetServiceSettingOutput) SetServiceSetting(v *ServiceSetting) *ResetServiceSettingOutput {
45909	s.ServiceSetting = v
45910	return s
45911}
45912
45913// Information about targets that resolved during the Automation execution.
45914type ResolvedTargets struct {
45915	_ struct{} `type:"structure"`
45916
45917	// A list of parameter values sent to targets that resolved during the Automation
45918	// execution.
45919	ParameterValues []*string `type:"list"`
45920
45921	// A boolean value indicating whether the resolved target list is truncated.
45922	Truncated *bool `type:"boolean"`
45923}
45924
45925// String returns the string representation
45926func (s ResolvedTargets) String() string {
45927	return awsutil.Prettify(s)
45928}
45929
45930// GoString returns the string representation
45931func (s ResolvedTargets) GoString() string {
45932	return s.String()
45933}
45934
45935// SetParameterValues sets the ParameterValues field's value.
45936func (s *ResolvedTargets) SetParameterValues(v []*string) *ResolvedTargets {
45937	s.ParameterValues = v
45938	return s
45939}
45940
45941// SetTruncated sets the Truncated field's value.
45942func (s *ResolvedTargets) SetTruncated(v bool) *ResolvedTargets {
45943	s.Truncated = &v
45944	return s
45945}
45946
45947// Compliance summary information for a specific resource.
45948type ResourceComplianceSummaryItem struct {
45949	_ struct{} `type:"structure"`
45950
45951	// The compliance type.
45952	ComplianceType *string `min:"1" type:"string"`
45953
45954	// A list of items that are compliant for the resource.
45955	CompliantSummary *CompliantSummary `type:"structure"`
45956
45957	// Information about the execution.
45958	ExecutionSummary *ComplianceExecutionSummary `type:"structure"`
45959
45960	// A list of items that aren't compliant for the resource.
45961	NonCompliantSummary *NonCompliantSummary `type:"structure"`
45962
45963	// The highest severity item found for the resource. The resource is compliant
45964	// for this item.
45965	OverallSeverity *string `type:"string" enum:"ComplianceSeverity"`
45966
45967	// The resource ID.
45968	ResourceId *string `min:"1" type:"string"`
45969
45970	// The resource type.
45971	ResourceType *string `min:"1" type:"string"`
45972
45973	// The compliance status for the resource.
45974	Status *string `type:"string" enum:"ComplianceStatus"`
45975}
45976
45977// String returns the string representation
45978func (s ResourceComplianceSummaryItem) String() string {
45979	return awsutil.Prettify(s)
45980}
45981
45982// GoString returns the string representation
45983func (s ResourceComplianceSummaryItem) GoString() string {
45984	return s.String()
45985}
45986
45987// SetComplianceType sets the ComplianceType field's value.
45988func (s *ResourceComplianceSummaryItem) SetComplianceType(v string) *ResourceComplianceSummaryItem {
45989	s.ComplianceType = &v
45990	return s
45991}
45992
45993// SetCompliantSummary sets the CompliantSummary field's value.
45994func (s *ResourceComplianceSummaryItem) SetCompliantSummary(v *CompliantSummary) *ResourceComplianceSummaryItem {
45995	s.CompliantSummary = v
45996	return s
45997}
45998
45999// SetExecutionSummary sets the ExecutionSummary field's value.
46000func (s *ResourceComplianceSummaryItem) SetExecutionSummary(v *ComplianceExecutionSummary) *ResourceComplianceSummaryItem {
46001	s.ExecutionSummary = v
46002	return s
46003}
46004
46005// SetNonCompliantSummary sets the NonCompliantSummary field's value.
46006func (s *ResourceComplianceSummaryItem) SetNonCompliantSummary(v *NonCompliantSummary) *ResourceComplianceSummaryItem {
46007	s.NonCompliantSummary = v
46008	return s
46009}
46010
46011// SetOverallSeverity sets the OverallSeverity field's value.
46012func (s *ResourceComplianceSummaryItem) SetOverallSeverity(v string) *ResourceComplianceSummaryItem {
46013	s.OverallSeverity = &v
46014	return s
46015}
46016
46017// SetResourceId sets the ResourceId field's value.
46018func (s *ResourceComplianceSummaryItem) SetResourceId(v string) *ResourceComplianceSummaryItem {
46019	s.ResourceId = &v
46020	return s
46021}
46022
46023// SetResourceType sets the ResourceType field's value.
46024func (s *ResourceComplianceSummaryItem) SetResourceType(v string) *ResourceComplianceSummaryItem {
46025	s.ResourceType = &v
46026	return s
46027}
46028
46029// SetStatus sets the Status field's value.
46030func (s *ResourceComplianceSummaryItem) SetStatus(v string) *ResourceComplianceSummaryItem {
46031	s.Status = &v
46032	return s
46033}
46034
46035// A sync configuration with the same name already exists.
46036type ResourceDataSyncAlreadyExistsException struct {
46037	_            struct{}                  `type:"structure"`
46038	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
46039
46040	Message_ *string `locationName:"message" type:"string"`
46041
46042	SyncName *string `min:"1" type:"string"`
46043}
46044
46045// String returns the string representation
46046func (s ResourceDataSyncAlreadyExistsException) String() string {
46047	return awsutil.Prettify(s)
46048}
46049
46050// GoString returns the string representation
46051func (s ResourceDataSyncAlreadyExistsException) GoString() string {
46052	return s.String()
46053}
46054
46055func newErrorResourceDataSyncAlreadyExistsException(v protocol.ResponseMetadata) error {
46056	return &ResourceDataSyncAlreadyExistsException{
46057		RespMetadata: v,
46058	}
46059}
46060
46061// Code returns the exception type name.
46062func (s *ResourceDataSyncAlreadyExistsException) Code() string {
46063	return "ResourceDataSyncAlreadyExistsException"
46064}
46065
46066// Message returns the exception's message.
46067func (s *ResourceDataSyncAlreadyExistsException) Message() string {
46068	if s.Message_ != nil {
46069		return *s.Message_
46070	}
46071	return ""
46072}
46073
46074// OrigErr always returns nil, satisfies awserr.Error interface.
46075func (s *ResourceDataSyncAlreadyExistsException) OrigErr() error {
46076	return nil
46077}
46078
46079func (s *ResourceDataSyncAlreadyExistsException) Error() string {
46080	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
46081}
46082
46083// Status code returns the HTTP status code for the request's response error.
46084func (s *ResourceDataSyncAlreadyExistsException) StatusCode() int {
46085	return s.RespMetadata.StatusCode
46086}
46087
46088// RequestID returns the service's response RequestID for request.
46089func (s *ResourceDataSyncAlreadyExistsException) RequestID() string {
46090	return s.RespMetadata.RequestID
46091}
46092
46093// Information about the AwsOrganizationsSource resource data sync source. A
46094// sync source of this type can synchronize data from Organizations or, if an
46095// Amazon Web Services organization isn't present, from multiple Amazon Web
46096// Services Regions.
46097type ResourceDataSyncAwsOrganizationsSource struct {
46098	_ struct{} `type:"structure"`
46099
46100	// If an Amazon Web Services organization is present, this is either OrganizationalUnits
46101	// or EntireOrganization. For OrganizationalUnits, the data is aggregated from
46102	// a set of organization units. For EntireOrganization, the data is aggregated
46103	// from the entire Amazon Web Services organization.
46104	//
46105	// OrganizationSourceType is a required field
46106	OrganizationSourceType *string `min:"1" type:"string" required:"true"`
46107
46108	// The Organizations organization units included in the sync.
46109	OrganizationalUnits []*ResourceDataSyncOrganizationalUnit `min:"1" type:"list"`
46110}
46111
46112// String returns the string representation
46113func (s ResourceDataSyncAwsOrganizationsSource) String() string {
46114	return awsutil.Prettify(s)
46115}
46116
46117// GoString returns the string representation
46118func (s ResourceDataSyncAwsOrganizationsSource) GoString() string {
46119	return s.String()
46120}
46121
46122// Validate inspects the fields of the type to determine if they are valid.
46123func (s *ResourceDataSyncAwsOrganizationsSource) Validate() error {
46124	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncAwsOrganizationsSource"}
46125	if s.OrganizationSourceType == nil {
46126		invalidParams.Add(request.NewErrParamRequired("OrganizationSourceType"))
46127	}
46128	if s.OrganizationSourceType != nil && len(*s.OrganizationSourceType) < 1 {
46129		invalidParams.Add(request.NewErrParamMinLen("OrganizationSourceType", 1))
46130	}
46131	if s.OrganizationalUnits != nil && len(s.OrganizationalUnits) < 1 {
46132		invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnits", 1))
46133	}
46134	if s.OrganizationalUnits != nil {
46135		for i, v := range s.OrganizationalUnits {
46136			if v == nil {
46137				continue
46138			}
46139			if err := v.Validate(); err != nil {
46140				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OrganizationalUnits", i), err.(request.ErrInvalidParams))
46141			}
46142		}
46143	}
46144
46145	if invalidParams.Len() > 0 {
46146		return invalidParams
46147	}
46148	return nil
46149}
46150
46151// SetOrganizationSourceType sets the OrganizationSourceType field's value.
46152func (s *ResourceDataSyncAwsOrganizationsSource) SetOrganizationSourceType(v string) *ResourceDataSyncAwsOrganizationsSource {
46153	s.OrganizationSourceType = &v
46154	return s
46155}
46156
46157// SetOrganizationalUnits sets the OrganizationalUnits field's value.
46158func (s *ResourceDataSyncAwsOrganizationsSource) SetOrganizationalUnits(v []*ResourceDataSyncOrganizationalUnit) *ResourceDataSyncAwsOrganizationsSource {
46159	s.OrganizationalUnits = v
46160	return s
46161}
46162
46163// Another UpdateResourceDataSync request is being processed. Wait a few minutes
46164// and try again.
46165type ResourceDataSyncConflictException struct {
46166	_            struct{}                  `type:"structure"`
46167	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
46168
46169	Message_ *string `locationName:"Message" type:"string"`
46170}
46171
46172// String returns the string representation
46173func (s ResourceDataSyncConflictException) String() string {
46174	return awsutil.Prettify(s)
46175}
46176
46177// GoString returns the string representation
46178func (s ResourceDataSyncConflictException) GoString() string {
46179	return s.String()
46180}
46181
46182func newErrorResourceDataSyncConflictException(v protocol.ResponseMetadata) error {
46183	return &ResourceDataSyncConflictException{
46184		RespMetadata: v,
46185	}
46186}
46187
46188// Code returns the exception type name.
46189func (s *ResourceDataSyncConflictException) Code() string {
46190	return "ResourceDataSyncConflictException"
46191}
46192
46193// Message returns the exception's message.
46194func (s *ResourceDataSyncConflictException) Message() string {
46195	if s.Message_ != nil {
46196		return *s.Message_
46197	}
46198	return ""
46199}
46200
46201// OrigErr always returns nil, satisfies awserr.Error interface.
46202func (s *ResourceDataSyncConflictException) OrigErr() error {
46203	return nil
46204}
46205
46206func (s *ResourceDataSyncConflictException) Error() string {
46207	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
46208}
46209
46210// Status code returns the HTTP status code for the request's response error.
46211func (s *ResourceDataSyncConflictException) StatusCode() int {
46212	return s.RespMetadata.StatusCode
46213}
46214
46215// RequestID returns the service's response RequestID for request.
46216func (s *ResourceDataSyncConflictException) RequestID() string {
46217	return s.RespMetadata.RequestID
46218}
46219
46220// You have exceeded the allowed maximum sync configurations.
46221type ResourceDataSyncCountExceededException struct {
46222	_            struct{}                  `type:"structure"`
46223	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
46224
46225	Message_ *string `locationName:"Message" type:"string"`
46226}
46227
46228// String returns the string representation
46229func (s ResourceDataSyncCountExceededException) String() string {
46230	return awsutil.Prettify(s)
46231}
46232
46233// GoString returns the string representation
46234func (s ResourceDataSyncCountExceededException) GoString() string {
46235	return s.String()
46236}
46237
46238func newErrorResourceDataSyncCountExceededException(v protocol.ResponseMetadata) error {
46239	return &ResourceDataSyncCountExceededException{
46240		RespMetadata: v,
46241	}
46242}
46243
46244// Code returns the exception type name.
46245func (s *ResourceDataSyncCountExceededException) Code() string {
46246	return "ResourceDataSyncCountExceededException"
46247}
46248
46249// Message returns the exception's message.
46250func (s *ResourceDataSyncCountExceededException) Message() string {
46251	if s.Message_ != nil {
46252		return *s.Message_
46253	}
46254	return ""
46255}
46256
46257// OrigErr always returns nil, satisfies awserr.Error interface.
46258func (s *ResourceDataSyncCountExceededException) OrigErr() error {
46259	return nil
46260}
46261
46262func (s *ResourceDataSyncCountExceededException) Error() string {
46263	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
46264}
46265
46266// Status code returns the HTTP status code for the request's response error.
46267func (s *ResourceDataSyncCountExceededException) StatusCode() int {
46268	return s.RespMetadata.StatusCode
46269}
46270
46271// RequestID returns the service's response RequestID for request.
46272func (s *ResourceDataSyncCountExceededException) RequestID() string {
46273	return s.RespMetadata.RequestID
46274}
46275
46276// Synchronize Amazon Web Services Systems Manager Inventory data from multiple
46277// Amazon Web Services accounts defined in Organizations to a centralized Amazon
46278// S3 bucket. Data is synchronized to individual key prefixes in the central
46279// bucket. Each key prefix represents a different Amazon Web Services account
46280// ID.
46281type ResourceDataSyncDestinationDataSharing struct {
46282	_ struct{} `type:"structure"`
46283
46284	// The sharing data type. Only Organization is supported.
46285	DestinationDataSharingType *string `min:"1" type:"string"`
46286}
46287
46288// String returns the string representation
46289func (s ResourceDataSyncDestinationDataSharing) String() string {
46290	return awsutil.Prettify(s)
46291}
46292
46293// GoString returns the string representation
46294func (s ResourceDataSyncDestinationDataSharing) GoString() string {
46295	return s.String()
46296}
46297
46298// Validate inspects the fields of the type to determine if they are valid.
46299func (s *ResourceDataSyncDestinationDataSharing) Validate() error {
46300	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncDestinationDataSharing"}
46301	if s.DestinationDataSharingType != nil && len(*s.DestinationDataSharingType) < 1 {
46302		invalidParams.Add(request.NewErrParamMinLen("DestinationDataSharingType", 1))
46303	}
46304
46305	if invalidParams.Len() > 0 {
46306		return invalidParams
46307	}
46308	return nil
46309}
46310
46311// SetDestinationDataSharingType sets the DestinationDataSharingType field's value.
46312func (s *ResourceDataSyncDestinationDataSharing) SetDestinationDataSharingType(v string) *ResourceDataSyncDestinationDataSharing {
46313	s.DestinationDataSharingType = &v
46314	return s
46315}
46316
46317// The specified sync configuration is invalid.
46318type ResourceDataSyncInvalidConfigurationException struct {
46319	_            struct{}                  `type:"structure"`
46320	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
46321
46322	Message_ *string `locationName:"Message" type:"string"`
46323}
46324
46325// String returns the string representation
46326func (s ResourceDataSyncInvalidConfigurationException) String() string {
46327	return awsutil.Prettify(s)
46328}
46329
46330// GoString returns the string representation
46331func (s ResourceDataSyncInvalidConfigurationException) GoString() string {
46332	return s.String()
46333}
46334
46335func newErrorResourceDataSyncInvalidConfigurationException(v protocol.ResponseMetadata) error {
46336	return &ResourceDataSyncInvalidConfigurationException{
46337		RespMetadata: v,
46338	}
46339}
46340
46341// Code returns the exception type name.
46342func (s *ResourceDataSyncInvalidConfigurationException) Code() string {
46343	return "ResourceDataSyncInvalidConfigurationException"
46344}
46345
46346// Message returns the exception's message.
46347func (s *ResourceDataSyncInvalidConfigurationException) Message() string {
46348	if s.Message_ != nil {
46349		return *s.Message_
46350	}
46351	return ""
46352}
46353
46354// OrigErr always returns nil, satisfies awserr.Error interface.
46355func (s *ResourceDataSyncInvalidConfigurationException) OrigErr() error {
46356	return nil
46357}
46358
46359func (s *ResourceDataSyncInvalidConfigurationException) Error() string {
46360	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
46361}
46362
46363// Status code returns the HTTP status code for the request's response error.
46364func (s *ResourceDataSyncInvalidConfigurationException) StatusCode() int {
46365	return s.RespMetadata.StatusCode
46366}
46367
46368// RequestID returns the service's response RequestID for request.
46369func (s *ResourceDataSyncInvalidConfigurationException) RequestID() string {
46370	return s.RespMetadata.RequestID
46371}
46372
46373// Information about a resource data sync configuration, including its current
46374// status and last successful sync.
46375type ResourceDataSyncItem struct {
46376	_ struct{} `type:"structure"`
46377
46378	// The status reported by the last sync.
46379	LastStatus *string `type:"string" enum:"LastResourceDataSyncStatus"`
46380
46381	// The last time the sync operations returned a status of SUCCESSFUL (UTC).
46382	LastSuccessfulSyncTime *time.Time `type:"timestamp"`
46383
46384	// The status message details reported by the last sync.
46385	LastSyncStatusMessage *string `type:"string"`
46386
46387	// The last time the configuration attempted to sync (UTC).
46388	LastSyncTime *time.Time `type:"timestamp"`
46389
46390	// Configuration information for the target S3 bucket.
46391	S3Destination *ResourceDataSyncS3Destination `type:"structure"`
46392
46393	// The date and time the configuration was created (UTC).
46394	SyncCreatedTime *time.Time `type:"timestamp"`
46395
46396	// The date and time the resource data sync was changed.
46397	SyncLastModifiedTime *time.Time `type:"timestamp"`
46398
46399	// The name of the resource data sync.
46400	SyncName *string `min:"1" type:"string"`
46401
46402	// Information about the source where the data was synchronized.
46403	SyncSource *ResourceDataSyncSourceWithState `type:"structure"`
46404
46405	// The type of resource data sync. If SyncType is SyncToDestination, then the
46406	// resource data sync synchronizes data to an S3 bucket. If the SyncType is
46407	// SyncFromSource then the resource data sync synchronizes data from Organizations
46408	// or from multiple Amazon Web Services Regions.
46409	SyncType *string `min:"1" type:"string"`
46410}
46411
46412// String returns the string representation
46413func (s ResourceDataSyncItem) String() string {
46414	return awsutil.Prettify(s)
46415}
46416
46417// GoString returns the string representation
46418func (s ResourceDataSyncItem) GoString() string {
46419	return s.String()
46420}
46421
46422// SetLastStatus sets the LastStatus field's value.
46423func (s *ResourceDataSyncItem) SetLastStatus(v string) *ResourceDataSyncItem {
46424	s.LastStatus = &v
46425	return s
46426}
46427
46428// SetLastSuccessfulSyncTime sets the LastSuccessfulSyncTime field's value.
46429func (s *ResourceDataSyncItem) SetLastSuccessfulSyncTime(v time.Time) *ResourceDataSyncItem {
46430	s.LastSuccessfulSyncTime = &v
46431	return s
46432}
46433
46434// SetLastSyncStatusMessage sets the LastSyncStatusMessage field's value.
46435func (s *ResourceDataSyncItem) SetLastSyncStatusMessage(v string) *ResourceDataSyncItem {
46436	s.LastSyncStatusMessage = &v
46437	return s
46438}
46439
46440// SetLastSyncTime sets the LastSyncTime field's value.
46441func (s *ResourceDataSyncItem) SetLastSyncTime(v time.Time) *ResourceDataSyncItem {
46442	s.LastSyncTime = &v
46443	return s
46444}
46445
46446// SetS3Destination sets the S3Destination field's value.
46447func (s *ResourceDataSyncItem) SetS3Destination(v *ResourceDataSyncS3Destination) *ResourceDataSyncItem {
46448	s.S3Destination = v
46449	return s
46450}
46451
46452// SetSyncCreatedTime sets the SyncCreatedTime field's value.
46453func (s *ResourceDataSyncItem) SetSyncCreatedTime(v time.Time) *ResourceDataSyncItem {
46454	s.SyncCreatedTime = &v
46455	return s
46456}
46457
46458// SetSyncLastModifiedTime sets the SyncLastModifiedTime field's value.
46459func (s *ResourceDataSyncItem) SetSyncLastModifiedTime(v time.Time) *ResourceDataSyncItem {
46460	s.SyncLastModifiedTime = &v
46461	return s
46462}
46463
46464// SetSyncName sets the SyncName field's value.
46465func (s *ResourceDataSyncItem) SetSyncName(v string) *ResourceDataSyncItem {
46466	s.SyncName = &v
46467	return s
46468}
46469
46470// SetSyncSource sets the SyncSource field's value.
46471func (s *ResourceDataSyncItem) SetSyncSource(v *ResourceDataSyncSourceWithState) *ResourceDataSyncItem {
46472	s.SyncSource = v
46473	return s
46474}
46475
46476// SetSyncType sets the SyncType field's value.
46477func (s *ResourceDataSyncItem) SetSyncType(v string) *ResourceDataSyncItem {
46478	s.SyncType = &v
46479	return s
46480}
46481
46482// The specified sync name wasn't found.
46483type ResourceDataSyncNotFoundException struct {
46484	_            struct{}                  `type:"structure"`
46485	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
46486
46487	Message_ *string `locationName:"Message" type:"string"`
46488
46489	SyncName *string `min:"1" type:"string"`
46490
46491	SyncType *string `min:"1" type:"string"`
46492}
46493
46494// String returns the string representation
46495func (s ResourceDataSyncNotFoundException) String() string {
46496	return awsutil.Prettify(s)
46497}
46498
46499// GoString returns the string representation
46500func (s ResourceDataSyncNotFoundException) GoString() string {
46501	return s.String()
46502}
46503
46504func newErrorResourceDataSyncNotFoundException(v protocol.ResponseMetadata) error {
46505	return &ResourceDataSyncNotFoundException{
46506		RespMetadata: v,
46507	}
46508}
46509
46510// Code returns the exception type name.
46511func (s *ResourceDataSyncNotFoundException) Code() string {
46512	return "ResourceDataSyncNotFoundException"
46513}
46514
46515// Message returns the exception's message.
46516func (s *ResourceDataSyncNotFoundException) Message() string {
46517	if s.Message_ != nil {
46518		return *s.Message_
46519	}
46520	return ""
46521}
46522
46523// OrigErr always returns nil, satisfies awserr.Error interface.
46524func (s *ResourceDataSyncNotFoundException) OrigErr() error {
46525	return nil
46526}
46527
46528func (s *ResourceDataSyncNotFoundException) Error() string {
46529	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
46530}
46531
46532// Status code returns the HTTP status code for the request's response error.
46533func (s *ResourceDataSyncNotFoundException) StatusCode() int {
46534	return s.RespMetadata.StatusCode
46535}
46536
46537// RequestID returns the service's response RequestID for request.
46538func (s *ResourceDataSyncNotFoundException) RequestID() string {
46539	return s.RespMetadata.RequestID
46540}
46541
46542// The Organizations organizational unit data source for the sync.
46543type ResourceDataSyncOrganizationalUnit struct {
46544	_ struct{} `type:"structure"`
46545
46546	// The Organizations unit ID data source for the sync.
46547	OrganizationalUnitId *string `min:"1" type:"string"`
46548}
46549
46550// String returns the string representation
46551func (s ResourceDataSyncOrganizationalUnit) String() string {
46552	return awsutil.Prettify(s)
46553}
46554
46555// GoString returns the string representation
46556func (s ResourceDataSyncOrganizationalUnit) GoString() string {
46557	return s.String()
46558}
46559
46560// Validate inspects the fields of the type to determine if they are valid.
46561func (s *ResourceDataSyncOrganizationalUnit) Validate() error {
46562	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncOrganizationalUnit"}
46563	if s.OrganizationalUnitId != nil && len(*s.OrganizationalUnitId) < 1 {
46564		invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnitId", 1))
46565	}
46566
46567	if invalidParams.Len() > 0 {
46568		return invalidParams
46569	}
46570	return nil
46571}
46572
46573// SetOrganizationalUnitId sets the OrganizationalUnitId field's value.
46574func (s *ResourceDataSyncOrganizationalUnit) SetOrganizationalUnitId(v string) *ResourceDataSyncOrganizationalUnit {
46575	s.OrganizationalUnitId = &v
46576	return s
46577}
46578
46579// Information about the target S3 bucket for the resource data sync.
46580type ResourceDataSyncS3Destination struct {
46581	_ struct{} `type:"structure"`
46582
46583	// The ARN of an encryption key for a destination in Amazon S3. Must belong
46584	// to the same Region as the destination S3 bucket.
46585	AWSKMSKeyARN *string `min:"1" type:"string"`
46586
46587	// The name of the S3 bucket where the aggregated data is stored.
46588	//
46589	// BucketName is a required field
46590	BucketName *string `min:"1" type:"string" required:"true"`
46591
46592	// Enables destination data sharing. By default, this field is null.
46593	DestinationDataSharing *ResourceDataSyncDestinationDataSharing `type:"structure"`
46594
46595	// An Amazon S3 prefix for the bucket.
46596	Prefix *string `min:"1" type:"string"`
46597
46598	// The Amazon Web Services Region with the S3 bucket targeted by the resource
46599	// data sync.
46600	//
46601	// Region is a required field
46602	Region *string `min:"1" type:"string" required:"true"`
46603
46604	// A supported sync format. The following format is currently supported: JsonSerDe
46605	//
46606	// SyncFormat is a required field
46607	SyncFormat *string `type:"string" required:"true" enum:"ResourceDataSyncS3Format"`
46608}
46609
46610// String returns the string representation
46611func (s ResourceDataSyncS3Destination) String() string {
46612	return awsutil.Prettify(s)
46613}
46614
46615// GoString returns the string representation
46616func (s ResourceDataSyncS3Destination) GoString() string {
46617	return s.String()
46618}
46619
46620// Validate inspects the fields of the type to determine if they are valid.
46621func (s *ResourceDataSyncS3Destination) Validate() error {
46622	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncS3Destination"}
46623	if s.AWSKMSKeyARN != nil && len(*s.AWSKMSKeyARN) < 1 {
46624		invalidParams.Add(request.NewErrParamMinLen("AWSKMSKeyARN", 1))
46625	}
46626	if s.BucketName == nil {
46627		invalidParams.Add(request.NewErrParamRequired("BucketName"))
46628	}
46629	if s.BucketName != nil && len(*s.BucketName) < 1 {
46630		invalidParams.Add(request.NewErrParamMinLen("BucketName", 1))
46631	}
46632	if s.Prefix != nil && len(*s.Prefix) < 1 {
46633		invalidParams.Add(request.NewErrParamMinLen("Prefix", 1))
46634	}
46635	if s.Region == nil {
46636		invalidParams.Add(request.NewErrParamRequired("Region"))
46637	}
46638	if s.Region != nil && len(*s.Region) < 1 {
46639		invalidParams.Add(request.NewErrParamMinLen("Region", 1))
46640	}
46641	if s.SyncFormat == nil {
46642		invalidParams.Add(request.NewErrParamRequired("SyncFormat"))
46643	}
46644	if s.DestinationDataSharing != nil {
46645		if err := s.DestinationDataSharing.Validate(); err != nil {
46646			invalidParams.AddNested("DestinationDataSharing", err.(request.ErrInvalidParams))
46647		}
46648	}
46649
46650	if invalidParams.Len() > 0 {
46651		return invalidParams
46652	}
46653	return nil
46654}
46655
46656// SetAWSKMSKeyARN sets the AWSKMSKeyARN field's value.
46657func (s *ResourceDataSyncS3Destination) SetAWSKMSKeyARN(v string) *ResourceDataSyncS3Destination {
46658	s.AWSKMSKeyARN = &v
46659	return s
46660}
46661
46662// SetBucketName sets the BucketName field's value.
46663func (s *ResourceDataSyncS3Destination) SetBucketName(v string) *ResourceDataSyncS3Destination {
46664	s.BucketName = &v
46665	return s
46666}
46667
46668// SetDestinationDataSharing sets the DestinationDataSharing field's value.
46669func (s *ResourceDataSyncS3Destination) SetDestinationDataSharing(v *ResourceDataSyncDestinationDataSharing) *ResourceDataSyncS3Destination {
46670	s.DestinationDataSharing = v
46671	return s
46672}
46673
46674// SetPrefix sets the Prefix field's value.
46675func (s *ResourceDataSyncS3Destination) SetPrefix(v string) *ResourceDataSyncS3Destination {
46676	s.Prefix = &v
46677	return s
46678}
46679
46680// SetRegion sets the Region field's value.
46681func (s *ResourceDataSyncS3Destination) SetRegion(v string) *ResourceDataSyncS3Destination {
46682	s.Region = &v
46683	return s
46684}
46685
46686// SetSyncFormat sets the SyncFormat field's value.
46687func (s *ResourceDataSyncS3Destination) SetSyncFormat(v string) *ResourceDataSyncS3Destination {
46688	s.SyncFormat = &v
46689	return s
46690}
46691
46692// Information about the source of the data included in the resource data sync.
46693type ResourceDataSyncSource struct {
46694	_ struct{} `type:"structure"`
46695
46696	// Information about the AwsOrganizationsSource resource data sync source. A
46697	// sync source of this type can synchronize data from Organizations.
46698	AwsOrganizationsSource *ResourceDataSyncAwsOrganizationsSource `type:"structure"`
46699
46700	// When you create a resource data sync, if you choose one of the Organizations
46701	// options, then Systems Manager automatically enables all OpsData sources in
46702	// the selected Amazon Web Services Regions for all Amazon Web Services accounts
46703	// in your organization (or in the selected organization units). For more information,
46704	// see About multiple account and Region resource data syncs (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resouce-data-sync-multiple-accounts-and-regions.html)
46705	// in the Amazon Web Services Systems Manager User Guide.
46706	EnableAllOpsDataSources *bool `type:"boolean"`
46707
46708	// Whether to automatically synchronize and aggregate data from new Amazon Web
46709	// Services Regions when those Regions come online.
46710	IncludeFutureRegions *bool `type:"boolean"`
46711
46712	// The SyncSource Amazon Web Services Regions included in the resource data
46713	// sync.
46714	//
46715	// SourceRegions is a required field
46716	SourceRegions []*string `type:"list" required:"true"`
46717
46718	// The type of data source for the resource data sync. SourceType is either
46719	// AwsOrganizations (if an organization is present in Organizations) or SingleAccountMultiRegions.
46720	//
46721	// SourceType is a required field
46722	SourceType *string `min:"1" type:"string" required:"true"`
46723}
46724
46725// String returns the string representation
46726func (s ResourceDataSyncSource) String() string {
46727	return awsutil.Prettify(s)
46728}
46729
46730// GoString returns the string representation
46731func (s ResourceDataSyncSource) GoString() string {
46732	return s.String()
46733}
46734
46735// Validate inspects the fields of the type to determine if they are valid.
46736func (s *ResourceDataSyncSource) Validate() error {
46737	invalidParams := request.ErrInvalidParams{Context: "ResourceDataSyncSource"}
46738	if s.SourceRegions == nil {
46739		invalidParams.Add(request.NewErrParamRequired("SourceRegions"))
46740	}
46741	if s.SourceType == nil {
46742		invalidParams.Add(request.NewErrParamRequired("SourceType"))
46743	}
46744	if s.SourceType != nil && len(*s.SourceType) < 1 {
46745		invalidParams.Add(request.NewErrParamMinLen("SourceType", 1))
46746	}
46747	if s.AwsOrganizationsSource != nil {
46748		if err := s.AwsOrganizationsSource.Validate(); err != nil {
46749			invalidParams.AddNested("AwsOrganizationsSource", err.(request.ErrInvalidParams))
46750		}
46751	}
46752
46753	if invalidParams.Len() > 0 {
46754		return invalidParams
46755	}
46756	return nil
46757}
46758
46759// SetAwsOrganizationsSource sets the AwsOrganizationsSource field's value.
46760func (s *ResourceDataSyncSource) SetAwsOrganizationsSource(v *ResourceDataSyncAwsOrganizationsSource) *ResourceDataSyncSource {
46761	s.AwsOrganizationsSource = v
46762	return s
46763}
46764
46765// SetEnableAllOpsDataSources sets the EnableAllOpsDataSources field's value.
46766func (s *ResourceDataSyncSource) SetEnableAllOpsDataSources(v bool) *ResourceDataSyncSource {
46767	s.EnableAllOpsDataSources = &v
46768	return s
46769}
46770
46771// SetIncludeFutureRegions sets the IncludeFutureRegions field's value.
46772func (s *ResourceDataSyncSource) SetIncludeFutureRegions(v bool) *ResourceDataSyncSource {
46773	s.IncludeFutureRegions = &v
46774	return s
46775}
46776
46777// SetSourceRegions sets the SourceRegions field's value.
46778func (s *ResourceDataSyncSource) SetSourceRegions(v []*string) *ResourceDataSyncSource {
46779	s.SourceRegions = v
46780	return s
46781}
46782
46783// SetSourceType sets the SourceType field's value.
46784func (s *ResourceDataSyncSource) SetSourceType(v string) *ResourceDataSyncSource {
46785	s.SourceType = &v
46786	return s
46787}
46788
46789// The data type name for including resource data sync state. There are four
46790// sync states:
46791//
46792// OrganizationNotExists (Your organization doesn't exist)
46793//
46794// NoPermissions (The system can't locate the service-linked role. This role
46795// is automatically created when a user creates a resource data sync in Amazon
46796// Web Services Systems Manager Explorer.)
46797//
46798// InvalidOrganizationalUnit (You specified or selected an invalid unit in the
46799// resource data sync configuration.)
46800//
46801// TrustedAccessDisabled (You disabled Systems Manager access in the organization
46802// in Organizations.)
46803type ResourceDataSyncSourceWithState struct {
46804	_ struct{} `type:"structure"`
46805
46806	// The field name in SyncSource for the ResourceDataSyncAwsOrganizationsSource
46807	// type.
46808	AwsOrganizationsSource *ResourceDataSyncAwsOrganizationsSource `type:"structure"`
46809
46810	// When you create a resource data sync, if you choose one of the Organizations
46811	// options, then Systems Manager automatically enables all OpsData sources in
46812	// the selected Amazon Web Services Regions for all Amazon Web Services accounts
46813	// in your organization (or in the selected organization units). For more information,
46814	// see About multiple account and Region resource data syncs (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resouce-data-sync-multiple-accounts-and-regions.html)
46815	// in the Amazon Web Services Systems Manager User Guide.
46816	EnableAllOpsDataSources *bool `type:"boolean"`
46817
46818	// Whether to automatically synchronize and aggregate data from new Amazon Web
46819	// Services Regions when those Regions come online.
46820	IncludeFutureRegions *bool `type:"boolean"`
46821
46822	// The SyncSource Amazon Web Services Regions included in the resource data
46823	// sync.
46824	SourceRegions []*string `type:"list"`
46825
46826	// The type of data source for the resource data sync. SourceType is either
46827	// AwsOrganizations (if an organization is present in Organizations) or singleAccountMultiRegions.
46828	SourceType *string `min:"1" type:"string"`
46829
46830	// The data type name for including resource data sync state. There are four
46831	// sync states:
46832	//
46833	// OrganizationNotExists: Your organization doesn't exist.
46834	//
46835	// NoPermissions: The system can't locate the service-linked role. This role
46836	// is automatically created when a user creates a resource data sync in Explorer.
46837	//
46838	// InvalidOrganizationalUnit: You specified or selected an invalid unit in the
46839	// resource data sync configuration.
46840	//
46841	// TrustedAccessDisabled: You disabled Systems Manager access in the organization
46842	// in Organizations.
46843	State *string `min:"1" type:"string"`
46844}
46845
46846// String returns the string representation
46847func (s ResourceDataSyncSourceWithState) String() string {
46848	return awsutil.Prettify(s)
46849}
46850
46851// GoString returns the string representation
46852func (s ResourceDataSyncSourceWithState) GoString() string {
46853	return s.String()
46854}
46855
46856// SetAwsOrganizationsSource sets the AwsOrganizationsSource field's value.
46857func (s *ResourceDataSyncSourceWithState) SetAwsOrganizationsSource(v *ResourceDataSyncAwsOrganizationsSource) *ResourceDataSyncSourceWithState {
46858	s.AwsOrganizationsSource = v
46859	return s
46860}
46861
46862// SetEnableAllOpsDataSources sets the EnableAllOpsDataSources field's value.
46863func (s *ResourceDataSyncSourceWithState) SetEnableAllOpsDataSources(v bool) *ResourceDataSyncSourceWithState {
46864	s.EnableAllOpsDataSources = &v
46865	return s
46866}
46867
46868// SetIncludeFutureRegions sets the IncludeFutureRegions field's value.
46869func (s *ResourceDataSyncSourceWithState) SetIncludeFutureRegions(v bool) *ResourceDataSyncSourceWithState {
46870	s.IncludeFutureRegions = &v
46871	return s
46872}
46873
46874// SetSourceRegions sets the SourceRegions field's value.
46875func (s *ResourceDataSyncSourceWithState) SetSourceRegions(v []*string) *ResourceDataSyncSourceWithState {
46876	s.SourceRegions = v
46877	return s
46878}
46879
46880// SetSourceType sets the SourceType field's value.
46881func (s *ResourceDataSyncSourceWithState) SetSourceType(v string) *ResourceDataSyncSourceWithState {
46882	s.SourceType = &v
46883	return s
46884}
46885
46886// SetState sets the State field's value.
46887func (s *ResourceDataSyncSourceWithState) SetState(v string) *ResourceDataSyncSourceWithState {
46888	s.State = &v
46889	return s
46890}
46891
46892// Error returned if an attempt is made to delete a patch baseline that is registered
46893// for a patch group.
46894type ResourceInUseException struct {
46895	_            struct{}                  `type:"structure"`
46896	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
46897
46898	Message_ *string `locationName:"Message" type:"string"`
46899}
46900
46901// String returns the string representation
46902func (s ResourceInUseException) String() string {
46903	return awsutil.Prettify(s)
46904}
46905
46906// GoString returns the string representation
46907func (s ResourceInUseException) GoString() string {
46908	return s.String()
46909}
46910
46911func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
46912	return &ResourceInUseException{
46913		RespMetadata: v,
46914	}
46915}
46916
46917// Code returns the exception type name.
46918func (s *ResourceInUseException) Code() string {
46919	return "ResourceInUseException"
46920}
46921
46922// Message returns the exception's message.
46923func (s *ResourceInUseException) Message() string {
46924	if s.Message_ != nil {
46925		return *s.Message_
46926	}
46927	return ""
46928}
46929
46930// OrigErr always returns nil, satisfies awserr.Error interface.
46931func (s *ResourceInUseException) OrigErr() error {
46932	return nil
46933}
46934
46935func (s *ResourceInUseException) Error() string {
46936	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
46937}
46938
46939// Status code returns the HTTP status code for the request's response error.
46940func (s *ResourceInUseException) StatusCode() int {
46941	return s.RespMetadata.StatusCode
46942}
46943
46944// RequestID returns the service's response RequestID for request.
46945func (s *ResourceInUseException) RequestID() string {
46946	return s.RespMetadata.RequestID
46947}
46948
46949// Error returned when the caller has exceeded the default resource quotas.
46950// For example, too many maintenance windows or patch baselines have been created.
46951//
46952// For information about resource quotas in Systems Manager, see Systems Manager
46953// service quotas (https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)
46954// in the Amazon Web Services General Reference.
46955type ResourceLimitExceededException struct {
46956	_            struct{}                  `type:"structure"`
46957	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
46958
46959	Message_ *string `locationName:"Message" type:"string"`
46960}
46961
46962// String returns the string representation
46963func (s ResourceLimitExceededException) String() string {
46964	return awsutil.Prettify(s)
46965}
46966
46967// GoString returns the string representation
46968func (s ResourceLimitExceededException) GoString() string {
46969	return s.String()
46970}
46971
46972func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error {
46973	return &ResourceLimitExceededException{
46974		RespMetadata: v,
46975	}
46976}
46977
46978// Code returns the exception type name.
46979func (s *ResourceLimitExceededException) Code() string {
46980	return "ResourceLimitExceededException"
46981}
46982
46983// Message returns the exception's message.
46984func (s *ResourceLimitExceededException) Message() string {
46985	if s.Message_ != nil {
46986		return *s.Message_
46987	}
46988	return ""
46989}
46990
46991// OrigErr always returns nil, satisfies awserr.Error interface.
46992func (s *ResourceLimitExceededException) OrigErr() error {
46993	return nil
46994}
46995
46996func (s *ResourceLimitExceededException) Error() string {
46997	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
46998}
46999
47000// Status code returns the HTTP status code for the request's response error.
47001func (s *ResourceLimitExceededException) StatusCode() int {
47002	return s.RespMetadata.StatusCode
47003}
47004
47005// RequestID returns the service's response RequestID for request.
47006func (s *ResourceLimitExceededException) RequestID() string {
47007	return s.RespMetadata.RequestID
47008}
47009
47010// The inventory item result attribute.
47011type ResultAttribute struct {
47012	_ struct{} `type:"structure"`
47013
47014	// Name of the inventory item type. Valid value: AWS:InstanceInformation. Default
47015	// Value: AWS:InstanceInformation.
47016	//
47017	// TypeName is a required field
47018	TypeName *string `min:"1" type:"string" required:"true"`
47019}
47020
47021// String returns the string representation
47022func (s ResultAttribute) String() string {
47023	return awsutil.Prettify(s)
47024}
47025
47026// GoString returns the string representation
47027func (s ResultAttribute) GoString() string {
47028	return s.String()
47029}
47030
47031// Validate inspects the fields of the type to determine if they are valid.
47032func (s *ResultAttribute) Validate() error {
47033	invalidParams := request.ErrInvalidParams{Context: "ResultAttribute"}
47034	if s.TypeName == nil {
47035		invalidParams.Add(request.NewErrParamRequired("TypeName"))
47036	}
47037	if s.TypeName != nil && len(*s.TypeName) < 1 {
47038		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
47039	}
47040
47041	if invalidParams.Len() > 0 {
47042		return invalidParams
47043	}
47044	return nil
47045}
47046
47047// SetTypeName sets the TypeName field's value.
47048func (s *ResultAttribute) SetTypeName(v string) *ResultAttribute {
47049	s.TypeName = &v
47050	return s
47051}
47052
47053type ResumeSessionInput struct {
47054	_ struct{} `type:"structure"`
47055
47056	// The ID of the disconnected session to resume.
47057	//
47058	// SessionId is a required field
47059	SessionId *string `min:"1" type:"string" required:"true"`
47060}
47061
47062// String returns the string representation
47063func (s ResumeSessionInput) String() string {
47064	return awsutil.Prettify(s)
47065}
47066
47067// GoString returns the string representation
47068func (s ResumeSessionInput) GoString() string {
47069	return s.String()
47070}
47071
47072// Validate inspects the fields of the type to determine if they are valid.
47073func (s *ResumeSessionInput) Validate() error {
47074	invalidParams := request.ErrInvalidParams{Context: "ResumeSessionInput"}
47075	if s.SessionId == nil {
47076		invalidParams.Add(request.NewErrParamRequired("SessionId"))
47077	}
47078	if s.SessionId != nil && len(*s.SessionId) < 1 {
47079		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
47080	}
47081
47082	if invalidParams.Len() > 0 {
47083		return invalidParams
47084	}
47085	return nil
47086}
47087
47088// SetSessionId sets the SessionId field's value.
47089func (s *ResumeSessionInput) SetSessionId(v string) *ResumeSessionInput {
47090	s.SessionId = &v
47091	return s
47092}
47093
47094type ResumeSessionOutput struct {
47095	_ struct{} `type:"structure"`
47096
47097	// The ID of the session.
47098	SessionId *string `min:"1" type:"string"`
47099
47100	// A URL back to SSM Agent on the instance that the Session Manager client uses
47101	// to send commands and receive output from the instance. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output).
47102	//
47103	// region represents the Region identifier for an Amazon Web Services Region
47104	// supported by Amazon Web Services Systems Manager, such as us-east-2 for the
47105	// US East (Ohio) Region. For a list of supported region values, see the Region
47106	// column in Systems Manager service endpoints (https://docs.aws.amazon.com/general/latest/gr/ssm.html#ssm_region)
47107	// in the Amazon Web Services General Reference.
47108	//
47109	// session-id represents the ID of a Session Manager session, such as 1a2b3c4dEXAMPLE.
47110	StreamUrl *string `type:"string"`
47111
47112	// An encrypted token value containing session and caller information. Used
47113	// to authenticate the connection to the instance.
47114	TokenValue *string `type:"string"`
47115}
47116
47117// String returns the string representation
47118func (s ResumeSessionOutput) String() string {
47119	return awsutil.Prettify(s)
47120}
47121
47122// GoString returns the string representation
47123func (s ResumeSessionOutput) GoString() string {
47124	return s.String()
47125}
47126
47127// SetSessionId sets the SessionId field's value.
47128func (s *ResumeSessionOutput) SetSessionId(v string) *ResumeSessionOutput {
47129	s.SessionId = &v
47130	return s
47131}
47132
47133// SetStreamUrl sets the StreamUrl field's value.
47134func (s *ResumeSessionOutput) SetStreamUrl(v string) *ResumeSessionOutput {
47135	s.StreamUrl = &v
47136	return s
47137}
47138
47139// SetTokenValue sets the TokenValue field's value.
47140func (s *ResumeSessionOutput) SetTokenValue(v string) *ResumeSessionOutput {
47141	s.TokenValue = &v
47142	return s
47143}
47144
47145// Information about the result of a document review request.
47146type ReviewInformation struct {
47147	_ struct{} `type:"structure"`
47148
47149	// The time that the reviewer took action on the document review request.
47150	ReviewedTime *time.Time `type:"timestamp"`
47151
47152	// The reviewer assigned to take action on the document review request.
47153	Reviewer *string `type:"string"`
47154
47155	// The current status of the document review request.
47156	Status *string `type:"string" enum:"ReviewStatus"`
47157}
47158
47159// String returns the string representation
47160func (s ReviewInformation) String() string {
47161	return awsutil.Prettify(s)
47162}
47163
47164// GoString returns the string representation
47165func (s ReviewInformation) GoString() string {
47166	return s.String()
47167}
47168
47169// SetReviewedTime sets the ReviewedTime field's value.
47170func (s *ReviewInformation) SetReviewedTime(v time.Time) *ReviewInformation {
47171	s.ReviewedTime = &v
47172	return s
47173}
47174
47175// SetReviewer sets the Reviewer field's value.
47176func (s *ReviewInformation) SetReviewer(v string) *ReviewInformation {
47177	s.Reviewer = &v
47178	return s
47179}
47180
47181// SetStatus sets the Status field's value.
47182func (s *ReviewInformation) SetStatus(v string) *ReviewInformation {
47183	s.Status = &v
47184	return s
47185}
47186
47187// Information about an Automation runbook used in a runbook workflow in Change
47188// Manager.
47189//
47190// The Automation runbooks specified for the runbook workflow can't run until
47191// all required approvals for the change request have been received.
47192type Runbook struct {
47193	_ struct{} `type:"structure"`
47194
47195	// The name of the Automation runbook used in a runbook workflow.
47196	//
47197	// DocumentName is a required field
47198	DocumentName *string `type:"string" required:"true"`
47199
47200	// The version of the Automation runbook used in a runbook workflow.
47201	DocumentVersion *string `type:"string"`
47202
47203	// The MaxConcurrency value specified by the user when the operation started,
47204	// indicating the maximum number of resources that the runbook operation can
47205	// run on at the same time.
47206	MaxConcurrency *string `min:"1" type:"string"`
47207
47208	// The MaxErrors value specified by the user when the execution started, indicating
47209	// the maximum number of errors that can occur during the operation before the
47210	// updates are stopped or rolled back.
47211	MaxErrors *string `min:"1" type:"string"`
47212
47213	// The key-value map of execution parameters, which were supplied when calling
47214	// StartChangeRequestExecution.
47215	Parameters map[string][]*string `min:"1" type:"map"`
47216
47217	// Information about the Amazon Web Services Regions and Amazon Web Services
47218	// accounts targeted by the current Runbook operation.
47219	TargetLocations []*TargetLocation `min:"1" type:"list"`
47220
47221	// The name of the parameter used as the target resource for the rate-controlled
47222	// runbook workflow. Required if you specify Targets.
47223	TargetParameterName *string `min:"1" type:"string"`
47224
47225	// A key-value mapping to target resources that the runbook operation performs
47226	// tasks on. Required if you specify TargetParameterName.
47227	Targets []*Target `type:"list"`
47228}
47229
47230// String returns the string representation
47231func (s Runbook) String() string {
47232	return awsutil.Prettify(s)
47233}
47234
47235// GoString returns the string representation
47236func (s Runbook) GoString() string {
47237	return s.String()
47238}
47239
47240// Validate inspects the fields of the type to determine if they are valid.
47241func (s *Runbook) Validate() error {
47242	invalidParams := request.ErrInvalidParams{Context: "Runbook"}
47243	if s.DocumentName == nil {
47244		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
47245	}
47246	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
47247		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
47248	}
47249	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
47250		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
47251	}
47252	if s.Parameters != nil && len(s.Parameters) < 1 {
47253		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
47254	}
47255	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
47256		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
47257	}
47258	if s.TargetParameterName != nil && len(*s.TargetParameterName) < 1 {
47259		invalidParams.Add(request.NewErrParamMinLen("TargetParameterName", 1))
47260	}
47261	if s.TargetLocations != nil {
47262		for i, v := range s.TargetLocations {
47263			if v == nil {
47264				continue
47265			}
47266			if err := v.Validate(); err != nil {
47267				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
47268			}
47269		}
47270	}
47271	if s.Targets != nil {
47272		for i, v := range s.Targets {
47273			if v == nil {
47274				continue
47275			}
47276			if err := v.Validate(); err != nil {
47277				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
47278			}
47279		}
47280	}
47281
47282	if invalidParams.Len() > 0 {
47283		return invalidParams
47284	}
47285	return nil
47286}
47287
47288// SetDocumentName sets the DocumentName field's value.
47289func (s *Runbook) SetDocumentName(v string) *Runbook {
47290	s.DocumentName = &v
47291	return s
47292}
47293
47294// SetDocumentVersion sets the DocumentVersion field's value.
47295func (s *Runbook) SetDocumentVersion(v string) *Runbook {
47296	s.DocumentVersion = &v
47297	return s
47298}
47299
47300// SetMaxConcurrency sets the MaxConcurrency field's value.
47301func (s *Runbook) SetMaxConcurrency(v string) *Runbook {
47302	s.MaxConcurrency = &v
47303	return s
47304}
47305
47306// SetMaxErrors sets the MaxErrors field's value.
47307func (s *Runbook) SetMaxErrors(v string) *Runbook {
47308	s.MaxErrors = &v
47309	return s
47310}
47311
47312// SetParameters sets the Parameters field's value.
47313func (s *Runbook) SetParameters(v map[string][]*string) *Runbook {
47314	s.Parameters = v
47315	return s
47316}
47317
47318// SetTargetLocations sets the TargetLocations field's value.
47319func (s *Runbook) SetTargetLocations(v []*TargetLocation) *Runbook {
47320	s.TargetLocations = v
47321	return s
47322}
47323
47324// SetTargetParameterName sets the TargetParameterName field's value.
47325func (s *Runbook) SetTargetParameterName(v string) *Runbook {
47326	s.TargetParameterName = &v
47327	return s
47328}
47329
47330// SetTargets sets the Targets field's value.
47331func (s *Runbook) SetTargets(v []*Target) *Runbook {
47332	s.Targets = v
47333	return s
47334}
47335
47336// An S3 bucket where you want to store the results of this request.
47337type S3OutputLocation struct {
47338	_ struct{} `type:"structure"`
47339
47340	// The name of the S3 bucket.
47341	OutputS3BucketName *string `min:"3" type:"string"`
47342
47343	// The S3 bucket subfolder.
47344	OutputS3KeyPrefix *string `type:"string"`
47345
47346	// (Deprecated) You can no longer specify this parameter. The system ignores
47347	// it. Instead, Amazon Web Services Systems Manager automatically determines
47348	// the Region of the S3 bucket.
47349	OutputS3Region *string `min:"3" type:"string"`
47350}
47351
47352// String returns the string representation
47353func (s S3OutputLocation) String() string {
47354	return awsutil.Prettify(s)
47355}
47356
47357// GoString returns the string representation
47358func (s S3OutputLocation) GoString() string {
47359	return s.String()
47360}
47361
47362// Validate inspects the fields of the type to determine if they are valid.
47363func (s *S3OutputLocation) Validate() error {
47364	invalidParams := request.ErrInvalidParams{Context: "S3OutputLocation"}
47365	if s.OutputS3BucketName != nil && len(*s.OutputS3BucketName) < 3 {
47366		invalidParams.Add(request.NewErrParamMinLen("OutputS3BucketName", 3))
47367	}
47368	if s.OutputS3Region != nil && len(*s.OutputS3Region) < 3 {
47369		invalidParams.Add(request.NewErrParamMinLen("OutputS3Region", 3))
47370	}
47371
47372	if invalidParams.Len() > 0 {
47373		return invalidParams
47374	}
47375	return nil
47376}
47377
47378// SetOutputS3BucketName sets the OutputS3BucketName field's value.
47379func (s *S3OutputLocation) SetOutputS3BucketName(v string) *S3OutputLocation {
47380	s.OutputS3BucketName = &v
47381	return s
47382}
47383
47384// SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
47385func (s *S3OutputLocation) SetOutputS3KeyPrefix(v string) *S3OutputLocation {
47386	s.OutputS3KeyPrefix = &v
47387	return s
47388}
47389
47390// SetOutputS3Region sets the OutputS3Region field's value.
47391func (s *S3OutputLocation) SetOutputS3Region(v string) *S3OutputLocation {
47392	s.OutputS3Region = &v
47393	return s
47394}
47395
47396// A URL for the Amazon Web Services Systems Manager (Systems Manager) bucket
47397// where you want to store the results of this request.
47398type S3OutputUrl struct {
47399	_ struct{} `type:"structure"`
47400
47401	// A URL for an S3 bucket where you want to store the results of this request.
47402	OutputUrl *string `type:"string"`
47403}
47404
47405// String returns the string representation
47406func (s S3OutputUrl) String() string {
47407	return awsutil.Prettify(s)
47408}
47409
47410// GoString returns the string representation
47411func (s S3OutputUrl) GoString() string {
47412	return s.String()
47413}
47414
47415// SetOutputUrl sets the OutputUrl field's value.
47416func (s *S3OutputUrl) SetOutputUrl(v string) *S3OutputUrl {
47417	s.OutputUrl = &v
47418	return s
47419}
47420
47421// Information about a scheduled execution for a maintenance window.
47422type ScheduledWindowExecution struct {
47423	_ struct{} `type:"structure"`
47424
47425	// The time, in ISO-8601 Extended format, that the maintenance window is scheduled
47426	// to be run.
47427	ExecutionTime *string `type:"string"`
47428
47429	// The name of the maintenance window to be run.
47430	Name *string `min:"3" type:"string"`
47431
47432	// The ID of the maintenance window to be run.
47433	WindowId *string `min:"20" type:"string"`
47434}
47435
47436// String returns the string representation
47437func (s ScheduledWindowExecution) String() string {
47438	return awsutil.Prettify(s)
47439}
47440
47441// GoString returns the string representation
47442func (s ScheduledWindowExecution) GoString() string {
47443	return s.String()
47444}
47445
47446// SetExecutionTime sets the ExecutionTime field's value.
47447func (s *ScheduledWindowExecution) SetExecutionTime(v string) *ScheduledWindowExecution {
47448	s.ExecutionTime = &v
47449	return s
47450}
47451
47452// SetName sets the Name field's value.
47453func (s *ScheduledWindowExecution) SetName(v string) *ScheduledWindowExecution {
47454	s.Name = &v
47455	return s
47456}
47457
47458// SetWindowId sets the WindowId field's value.
47459func (s *ScheduledWindowExecution) SetWindowId(v string) *ScheduledWindowExecution {
47460	s.WindowId = &v
47461	return s
47462}
47463
47464type SendAutomationSignalInput struct {
47465	_ struct{} `type:"structure"`
47466
47467	// The unique identifier for an existing Automation execution that you want
47468	// to send the signal to.
47469	//
47470	// AutomationExecutionId is a required field
47471	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
47472
47473	// The data sent with the signal. The data schema depends on the type of signal
47474	// used in the request.
47475	//
47476	// For Approve and Reject signal types, the payload is an optional comment that
47477	// you can send with the signal type. For example:
47478	//
47479	// Comment="Looks good"
47480	//
47481	// For StartStep and Resume signal types, you must send the name of the Automation
47482	// step to start or resume as the payload. For example:
47483	//
47484	// StepName="step1"
47485	//
47486	// For the StopStep signal type, you must send the step execution ID as the
47487	// payload. For example:
47488	//
47489	// StepExecutionId="97fff367-fc5a-4299-aed8-0123456789ab"
47490	Payload map[string][]*string `min:"1" type:"map"`
47491
47492	// The type of signal to send to an Automation execution.
47493	//
47494	// SignalType is a required field
47495	SignalType *string `type:"string" required:"true" enum:"SignalType"`
47496}
47497
47498// String returns the string representation
47499func (s SendAutomationSignalInput) String() string {
47500	return awsutil.Prettify(s)
47501}
47502
47503// GoString returns the string representation
47504func (s SendAutomationSignalInput) GoString() string {
47505	return s.String()
47506}
47507
47508// Validate inspects the fields of the type to determine if they are valid.
47509func (s *SendAutomationSignalInput) Validate() error {
47510	invalidParams := request.ErrInvalidParams{Context: "SendAutomationSignalInput"}
47511	if s.AutomationExecutionId == nil {
47512		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
47513	}
47514	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
47515		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
47516	}
47517	if s.Payload != nil && len(s.Payload) < 1 {
47518		invalidParams.Add(request.NewErrParamMinLen("Payload", 1))
47519	}
47520	if s.SignalType == nil {
47521		invalidParams.Add(request.NewErrParamRequired("SignalType"))
47522	}
47523
47524	if invalidParams.Len() > 0 {
47525		return invalidParams
47526	}
47527	return nil
47528}
47529
47530// SetAutomationExecutionId sets the AutomationExecutionId field's value.
47531func (s *SendAutomationSignalInput) SetAutomationExecutionId(v string) *SendAutomationSignalInput {
47532	s.AutomationExecutionId = &v
47533	return s
47534}
47535
47536// SetPayload sets the Payload field's value.
47537func (s *SendAutomationSignalInput) SetPayload(v map[string][]*string) *SendAutomationSignalInput {
47538	s.Payload = v
47539	return s
47540}
47541
47542// SetSignalType sets the SignalType field's value.
47543func (s *SendAutomationSignalInput) SetSignalType(v string) *SendAutomationSignalInput {
47544	s.SignalType = &v
47545	return s
47546}
47547
47548type SendAutomationSignalOutput struct {
47549	_ struct{} `type:"structure"`
47550}
47551
47552// String returns the string representation
47553func (s SendAutomationSignalOutput) String() string {
47554	return awsutil.Prettify(s)
47555}
47556
47557// GoString returns the string representation
47558func (s SendAutomationSignalOutput) GoString() string {
47559	return s.String()
47560}
47561
47562type SendCommandInput struct {
47563	_ struct{} `type:"structure"`
47564
47565	// Enables Amazon Web Services Systems Manager to send Run Command output to
47566	// Amazon CloudWatch Logs. Run Command is a capability of Amazon Web Services
47567	// Systems Manager.
47568	CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"`
47569
47570	// User-specified information about the command, such as a brief description
47571	// of what the command should do.
47572	Comment *string `type:"string"`
47573
47574	// The Sha256 or Sha1 hash created by the system when the document was created.
47575	//
47576	// Sha1 hashes have been deprecated.
47577	DocumentHash *string `type:"string"`
47578
47579	// Sha256 or Sha1.
47580	//
47581	// Sha1 hashes have been deprecated.
47582	DocumentHashType *string `type:"string" enum:"DocumentHashType"`
47583
47584	// The name of the Amazon Web Services Systems Manager document (SSM document)
47585	// to run. This can be a public document or a custom document. To run a shared
47586	// document belonging to another account, specify the document ARN. For more
47587	// information about how to use shared documents, see Using shared SSM documents
47588	// (https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-using-shared.html)
47589	// in the Amazon Web Services Systems Manager User Guide.
47590	//
47591	// DocumentName is a required field
47592	DocumentName *string `type:"string" required:"true"`
47593
47594	// The SSM document version to use in the request. You can specify $DEFAULT,
47595	// $LATEST, or a specific version number. If you run commands by using the Command
47596	// Line Interface (Amazon Web Services CLI), then you must escape the first
47597	// two options by using a backslash. If you specify a version number, then you
47598	// don't need to use the backslash. For example:
47599	//
47600	// --document-version "\$DEFAULT"
47601	//
47602	// --document-version "\$LATEST"
47603	//
47604	// --document-version "3"
47605	DocumentVersion *string `type:"string"`
47606
47607	// The IDs of the instances where the command should run. Specifying instance
47608	// IDs is most useful when you are targeting a limited number of instances,
47609	// though you can specify up to 50 IDs.
47610	//
47611	// To target a larger number of instances, or if you prefer not to list individual
47612	// instance IDs, we recommend using the Targets option instead. Using Targets,
47613	// which accepts tag key-value pairs to identify the instances to send commands
47614	// to, you can a send command to tens, hundreds, or thousands of instances at
47615	// once.
47616	//
47617	// For more information about how to use targets, see Using targets and rate
47618	// controls to send commands to a fleet (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html)
47619	// in the Amazon Web Services Systems Manager User Guide.
47620	InstanceIds []*string `type:"list"`
47621
47622	// (Optional) The maximum number of instances that are allowed to run the command
47623	// at the same time. You can specify a number such as 10 or a percentage such
47624	// as 10%. The default value is 50. For more information about how to use MaxConcurrency,
47625	// see Using concurrency controls (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html#send-commands-velocity)
47626	// in the Amazon Web Services Systems Manager User Guide.
47627	MaxConcurrency *string `min:"1" type:"string"`
47628
47629	// The maximum number of errors allowed without the command failing. When the
47630	// command fails one more time beyond the value of MaxErrors, the systems stops
47631	// sending the command to additional targets. You can specify a number like
47632	// 10 or a percentage like 10%. The default value is 0. For more information
47633	// about how to use MaxErrors, see Using error controls (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html#send-commands-maxerrors)
47634	// in the Amazon Web Services Systems Manager User Guide.
47635	MaxErrors *string `min:"1" type:"string"`
47636
47637	// Configurations for sending notifications.
47638	NotificationConfig *NotificationConfig `type:"structure"`
47639
47640	// The name of the S3 bucket where command execution responses should be stored.
47641	OutputS3BucketName *string `min:"3" type:"string"`
47642
47643	// The directory structure within the S3 bucket where the responses should be
47644	// stored.
47645	OutputS3KeyPrefix *string `type:"string"`
47646
47647	// (Deprecated) You can no longer specify this parameter. The system ignores
47648	// it. Instead, Systems Manager automatically determines the Amazon Web Services
47649	// Region of the S3 bucket.
47650	OutputS3Region *string `min:"3" type:"string"`
47651
47652	// The required and optional parameters specified in the document being run.
47653	Parameters map[string][]*string `type:"map"`
47654
47655	// The ARN of the Identity and Access Management (IAM) service role to use to
47656	// publish Amazon Simple Notification Service (Amazon SNS) notifications for
47657	// Run Command commands.
47658	ServiceRoleArn *string `type:"string"`
47659
47660	// An array of search criteria that targets instances using a Key,Value combination
47661	// that you specify. Specifying targets is most useful when you want to send
47662	// a command to a large number of instances at once. Using Targets, which accepts
47663	// tag key-value pairs to identify instances, you can send a command to tens,
47664	// hundreds, or thousands of instances at once.
47665	//
47666	// To send a command to a smaller number of instances, you can use the InstanceIds
47667	// option instead.
47668	//
47669	// For more information about how to use targets, see Sending commands to a
47670	// fleet (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html)
47671	// in the Amazon Web Services Systems Manager User Guide.
47672	Targets []*Target `type:"list"`
47673
47674	// If this time is reached and the command hasn't already started running, it
47675	// won't run.
47676	TimeoutSeconds *int64 `min:"30" type:"integer"`
47677}
47678
47679// String returns the string representation
47680func (s SendCommandInput) String() string {
47681	return awsutil.Prettify(s)
47682}
47683
47684// GoString returns the string representation
47685func (s SendCommandInput) GoString() string {
47686	return s.String()
47687}
47688
47689// Validate inspects the fields of the type to determine if they are valid.
47690func (s *SendCommandInput) Validate() error {
47691	invalidParams := request.ErrInvalidParams{Context: "SendCommandInput"}
47692	if s.DocumentName == nil {
47693		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
47694	}
47695	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
47696		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
47697	}
47698	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
47699		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
47700	}
47701	if s.OutputS3BucketName != nil && len(*s.OutputS3BucketName) < 3 {
47702		invalidParams.Add(request.NewErrParamMinLen("OutputS3BucketName", 3))
47703	}
47704	if s.OutputS3Region != nil && len(*s.OutputS3Region) < 3 {
47705		invalidParams.Add(request.NewErrParamMinLen("OutputS3Region", 3))
47706	}
47707	if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 30 {
47708		invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 30))
47709	}
47710	if s.CloudWatchOutputConfig != nil {
47711		if err := s.CloudWatchOutputConfig.Validate(); err != nil {
47712			invalidParams.AddNested("CloudWatchOutputConfig", err.(request.ErrInvalidParams))
47713		}
47714	}
47715	if s.Targets != nil {
47716		for i, v := range s.Targets {
47717			if v == nil {
47718				continue
47719			}
47720			if err := v.Validate(); err != nil {
47721				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
47722			}
47723		}
47724	}
47725
47726	if invalidParams.Len() > 0 {
47727		return invalidParams
47728	}
47729	return nil
47730}
47731
47732// SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value.
47733func (s *SendCommandInput) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *SendCommandInput {
47734	s.CloudWatchOutputConfig = v
47735	return s
47736}
47737
47738// SetComment sets the Comment field's value.
47739func (s *SendCommandInput) SetComment(v string) *SendCommandInput {
47740	s.Comment = &v
47741	return s
47742}
47743
47744// SetDocumentHash sets the DocumentHash field's value.
47745func (s *SendCommandInput) SetDocumentHash(v string) *SendCommandInput {
47746	s.DocumentHash = &v
47747	return s
47748}
47749
47750// SetDocumentHashType sets the DocumentHashType field's value.
47751func (s *SendCommandInput) SetDocumentHashType(v string) *SendCommandInput {
47752	s.DocumentHashType = &v
47753	return s
47754}
47755
47756// SetDocumentName sets the DocumentName field's value.
47757func (s *SendCommandInput) SetDocumentName(v string) *SendCommandInput {
47758	s.DocumentName = &v
47759	return s
47760}
47761
47762// SetDocumentVersion sets the DocumentVersion field's value.
47763func (s *SendCommandInput) SetDocumentVersion(v string) *SendCommandInput {
47764	s.DocumentVersion = &v
47765	return s
47766}
47767
47768// SetInstanceIds sets the InstanceIds field's value.
47769func (s *SendCommandInput) SetInstanceIds(v []*string) *SendCommandInput {
47770	s.InstanceIds = v
47771	return s
47772}
47773
47774// SetMaxConcurrency sets the MaxConcurrency field's value.
47775func (s *SendCommandInput) SetMaxConcurrency(v string) *SendCommandInput {
47776	s.MaxConcurrency = &v
47777	return s
47778}
47779
47780// SetMaxErrors sets the MaxErrors field's value.
47781func (s *SendCommandInput) SetMaxErrors(v string) *SendCommandInput {
47782	s.MaxErrors = &v
47783	return s
47784}
47785
47786// SetNotificationConfig sets the NotificationConfig field's value.
47787func (s *SendCommandInput) SetNotificationConfig(v *NotificationConfig) *SendCommandInput {
47788	s.NotificationConfig = v
47789	return s
47790}
47791
47792// SetOutputS3BucketName sets the OutputS3BucketName field's value.
47793func (s *SendCommandInput) SetOutputS3BucketName(v string) *SendCommandInput {
47794	s.OutputS3BucketName = &v
47795	return s
47796}
47797
47798// SetOutputS3KeyPrefix sets the OutputS3KeyPrefix field's value.
47799func (s *SendCommandInput) SetOutputS3KeyPrefix(v string) *SendCommandInput {
47800	s.OutputS3KeyPrefix = &v
47801	return s
47802}
47803
47804// SetOutputS3Region sets the OutputS3Region field's value.
47805func (s *SendCommandInput) SetOutputS3Region(v string) *SendCommandInput {
47806	s.OutputS3Region = &v
47807	return s
47808}
47809
47810// SetParameters sets the Parameters field's value.
47811func (s *SendCommandInput) SetParameters(v map[string][]*string) *SendCommandInput {
47812	s.Parameters = v
47813	return s
47814}
47815
47816// SetServiceRoleArn sets the ServiceRoleArn field's value.
47817func (s *SendCommandInput) SetServiceRoleArn(v string) *SendCommandInput {
47818	s.ServiceRoleArn = &v
47819	return s
47820}
47821
47822// SetTargets sets the Targets field's value.
47823func (s *SendCommandInput) SetTargets(v []*Target) *SendCommandInput {
47824	s.Targets = v
47825	return s
47826}
47827
47828// SetTimeoutSeconds sets the TimeoutSeconds field's value.
47829func (s *SendCommandInput) SetTimeoutSeconds(v int64) *SendCommandInput {
47830	s.TimeoutSeconds = &v
47831	return s
47832}
47833
47834type SendCommandOutput struct {
47835	_ struct{} `type:"structure"`
47836
47837	// The request as it was received by Systems Manager. Also provides the command
47838	// ID which can be used future references to this request.
47839	Command *Command `type:"structure"`
47840}
47841
47842// String returns the string representation
47843func (s SendCommandOutput) String() string {
47844	return awsutil.Prettify(s)
47845}
47846
47847// GoString returns the string representation
47848func (s SendCommandOutput) GoString() string {
47849	return s.String()
47850}
47851
47852// SetCommand sets the Command field's value.
47853func (s *SendCommandOutput) SetCommand(v *Command) *SendCommandOutput {
47854	s.Command = v
47855	return s
47856}
47857
47858// The service setting data structure.
47859//
47860// ServiceSetting is an account-level setting for an Amazon Web Services service.
47861// This setting defines how a user interacts with or uses a service or a feature
47862// of a service. For example, if an Amazon Web Services service charges money
47863// to the account based on feature or service usage, then the Amazon Web Services
47864// service team might create a default setting of "false". This means the user
47865// can't use this feature unless they change the setting to "true" and intentionally
47866// opt in for a paid feature.
47867//
47868// Services map a SettingId object to a setting value. Amazon Web Services services
47869// teams define the default value for a SettingId. You can't create a new SettingId,
47870// but you can overwrite the default value if you have the ssm:UpdateServiceSetting
47871// permission for the setting. Use the UpdateServiceSetting API operation to
47872// change the default setting. Or, use the ResetServiceSetting to change the
47873// value back to the original value defined by the Amazon Web Services service
47874// team.
47875type ServiceSetting struct {
47876	_ struct{} `type:"structure"`
47877
47878	// The ARN of the service setting.
47879	ARN *string `type:"string"`
47880
47881	// The last time the service setting was modified.
47882	LastModifiedDate *time.Time `type:"timestamp"`
47883
47884	// The ARN of the last modified user. This field is populated only if the setting
47885	// value was overwritten.
47886	LastModifiedUser *string `type:"string"`
47887
47888	// The ID of the service setting.
47889	SettingId *string `min:"1" type:"string"`
47890
47891	// The value of the service setting.
47892	SettingValue *string `min:"1" type:"string"`
47893
47894	// The status of the service setting. The value can be Default, Customized or
47895	// PendingUpdate.
47896	//
47897	//    * Default: The current setting uses a default value provisioned by the
47898	//    Amazon Web Services service team.
47899	//
47900	//    * Customized: The current setting use a custom value specified by the
47901	//    customer.
47902	//
47903	//    * PendingUpdate: The current setting uses a default or custom value, but
47904	//    a setting change request is pending approval.
47905	Status *string `type:"string"`
47906}
47907
47908// String returns the string representation
47909func (s ServiceSetting) String() string {
47910	return awsutil.Prettify(s)
47911}
47912
47913// GoString returns the string representation
47914func (s ServiceSetting) GoString() string {
47915	return s.String()
47916}
47917
47918// SetARN sets the ARN field's value.
47919func (s *ServiceSetting) SetARN(v string) *ServiceSetting {
47920	s.ARN = &v
47921	return s
47922}
47923
47924// SetLastModifiedDate sets the LastModifiedDate field's value.
47925func (s *ServiceSetting) SetLastModifiedDate(v time.Time) *ServiceSetting {
47926	s.LastModifiedDate = &v
47927	return s
47928}
47929
47930// SetLastModifiedUser sets the LastModifiedUser field's value.
47931func (s *ServiceSetting) SetLastModifiedUser(v string) *ServiceSetting {
47932	s.LastModifiedUser = &v
47933	return s
47934}
47935
47936// SetSettingId sets the SettingId field's value.
47937func (s *ServiceSetting) SetSettingId(v string) *ServiceSetting {
47938	s.SettingId = &v
47939	return s
47940}
47941
47942// SetSettingValue sets the SettingValue field's value.
47943func (s *ServiceSetting) SetSettingValue(v string) *ServiceSetting {
47944	s.SettingValue = &v
47945	return s
47946}
47947
47948// SetStatus sets the Status field's value.
47949func (s *ServiceSetting) SetStatus(v string) *ServiceSetting {
47950	s.Status = &v
47951	return s
47952}
47953
47954// The specified service setting wasn't found. Either the service name or the
47955// setting hasn't been provisioned by the Amazon Web Services service team.
47956type ServiceSettingNotFound struct {
47957	_            struct{}                  `type:"structure"`
47958	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
47959
47960	Message_ *string `locationName:"Message" type:"string"`
47961}
47962
47963// String returns the string representation
47964func (s ServiceSettingNotFound) String() string {
47965	return awsutil.Prettify(s)
47966}
47967
47968// GoString returns the string representation
47969func (s ServiceSettingNotFound) GoString() string {
47970	return s.String()
47971}
47972
47973func newErrorServiceSettingNotFound(v protocol.ResponseMetadata) error {
47974	return &ServiceSettingNotFound{
47975		RespMetadata: v,
47976	}
47977}
47978
47979// Code returns the exception type name.
47980func (s *ServiceSettingNotFound) Code() string {
47981	return "ServiceSettingNotFound"
47982}
47983
47984// Message returns the exception's message.
47985func (s *ServiceSettingNotFound) Message() string {
47986	if s.Message_ != nil {
47987		return *s.Message_
47988	}
47989	return ""
47990}
47991
47992// OrigErr always returns nil, satisfies awserr.Error interface.
47993func (s *ServiceSettingNotFound) OrigErr() error {
47994	return nil
47995}
47996
47997func (s *ServiceSettingNotFound) Error() string {
47998	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
47999}
48000
48001// Status code returns the HTTP status code for the request's response error.
48002func (s *ServiceSettingNotFound) StatusCode() int {
48003	return s.RespMetadata.StatusCode
48004}
48005
48006// RequestID returns the service's response RequestID for request.
48007func (s *ServiceSettingNotFound) RequestID() string {
48008	return s.RespMetadata.RequestID
48009}
48010
48011// Information about a Session Manager connection to an instance.
48012type Session struct {
48013	_ struct{} `type:"structure"`
48014
48015	// Reserved for future use.
48016	Details *string `min:"1" type:"string"`
48017
48018	// The name of the Session Manager SSM document used to define the parameters
48019	// and plugin settings for the session. For example, SSM-SessionManagerRunShell.
48020	DocumentName *string `type:"string"`
48021
48022	// The date and time, in ISO-8601 Extended format, when the session was terminated.
48023	EndDate *time.Time `type:"timestamp"`
48024
48025	// Reserved for future use.
48026	OutputUrl *SessionManagerOutputUrl `type:"structure"`
48027
48028	// The ID of the Amazon Web Services user account that started the session.
48029	Owner *string `min:"1" type:"string"`
48030
48031	// The ID of the session.
48032	SessionId *string `min:"1" type:"string"`
48033
48034	// The date and time, in ISO-8601 Extended format, when the session began.
48035	StartDate *time.Time `type:"timestamp"`
48036
48037	// The status of the session. For example, "Connected" or "Terminated".
48038	Status *string `type:"string" enum:"SessionStatus"`
48039
48040	// The instance that the Session Manager session connected to.
48041	Target *string `min:"1" type:"string"`
48042}
48043
48044// String returns the string representation
48045func (s Session) String() string {
48046	return awsutil.Prettify(s)
48047}
48048
48049// GoString returns the string representation
48050func (s Session) GoString() string {
48051	return s.String()
48052}
48053
48054// SetDetails sets the Details field's value.
48055func (s *Session) SetDetails(v string) *Session {
48056	s.Details = &v
48057	return s
48058}
48059
48060// SetDocumentName sets the DocumentName field's value.
48061func (s *Session) SetDocumentName(v string) *Session {
48062	s.DocumentName = &v
48063	return s
48064}
48065
48066// SetEndDate sets the EndDate field's value.
48067func (s *Session) SetEndDate(v time.Time) *Session {
48068	s.EndDate = &v
48069	return s
48070}
48071
48072// SetOutputUrl sets the OutputUrl field's value.
48073func (s *Session) SetOutputUrl(v *SessionManagerOutputUrl) *Session {
48074	s.OutputUrl = v
48075	return s
48076}
48077
48078// SetOwner sets the Owner field's value.
48079func (s *Session) SetOwner(v string) *Session {
48080	s.Owner = &v
48081	return s
48082}
48083
48084// SetSessionId sets the SessionId field's value.
48085func (s *Session) SetSessionId(v string) *Session {
48086	s.SessionId = &v
48087	return s
48088}
48089
48090// SetStartDate sets the StartDate field's value.
48091func (s *Session) SetStartDate(v time.Time) *Session {
48092	s.StartDate = &v
48093	return s
48094}
48095
48096// SetStatus sets the Status field's value.
48097func (s *Session) SetStatus(v string) *Session {
48098	s.Status = &v
48099	return s
48100}
48101
48102// SetTarget sets the Target field's value.
48103func (s *Session) SetTarget(v string) *Session {
48104	s.Target = &v
48105	return s
48106}
48107
48108// Describes a filter for Session Manager information.
48109type SessionFilter struct {
48110	_ struct{} `type:"structure"`
48111
48112	// The name of the filter.
48113	//
48114	// Key is a required field
48115	Key *string `locationName:"key" type:"string" required:"true" enum:"SessionFilterKey"`
48116
48117	// The filter value. Valid values for each filter key are as follows:
48118	//
48119	//    * InvokedAfter: Specify a timestamp to limit your results. For example,
48120	//    specify 2018-08-29T00:00:00Z to see sessions that started August 29, 2018,
48121	//    and later.
48122	//
48123	//    * InvokedBefore: Specify a timestamp to limit your results. For example,
48124	//    specify 2018-08-29T00:00:00Z to see sessions that started before August
48125	//    29, 2018.
48126	//
48127	//    * Target: Specify an instance to which session connections have been made.
48128	//
48129	//    * Owner: Specify an Amazon Web Services user account to see a list of
48130	//    sessions started by that user.
48131	//
48132	//    * Status: Specify a valid session status to see a list of all sessions
48133	//    with that status. Status values you can specify include: Connected Connecting
48134	//    Disconnected Terminated Terminating Failed
48135	//
48136	//    * SessionId: Specify a session ID to return details about the session.
48137	//
48138	// Value is a required field
48139	Value *string `locationName:"value" min:"1" type:"string" required:"true"`
48140}
48141
48142// String returns the string representation
48143func (s SessionFilter) String() string {
48144	return awsutil.Prettify(s)
48145}
48146
48147// GoString returns the string representation
48148func (s SessionFilter) GoString() string {
48149	return s.String()
48150}
48151
48152// Validate inspects the fields of the type to determine if they are valid.
48153func (s *SessionFilter) Validate() error {
48154	invalidParams := request.ErrInvalidParams{Context: "SessionFilter"}
48155	if s.Key == nil {
48156		invalidParams.Add(request.NewErrParamRequired("Key"))
48157	}
48158	if s.Value == nil {
48159		invalidParams.Add(request.NewErrParamRequired("Value"))
48160	}
48161	if s.Value != nil && len(*s.Value) < 1 {
48162		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
48163	}
48164
48165	if invalidParams.Len() > 0 {
48166		return invalidParams
48167	}
48168	return nil
48169}
48170
48171// SetKey sets the Key field's value.
48172func (s *SessionFilter) SetKey(v string) *SessionFilter {
48173	s.Key = &v
48174	return s
48175}
48176
48177// SetValue sets the Value field's value.
48178func (s *SessionFilter) SetValue(v string) *SessionFilter {
48179	s.Value = &v
48180	return s
48181}
48182
48183// Reserved for future use.
48184type SessionManagerOutputUrl struct {
48185	_ struct{} `type:"structure"`
48186
48187	// Reserved for future use.
48188	CloudWatchOutputUrl *string `min:"1" type:"string"`
48189
48190	// Reserved for future use.
48191	S3OutputUrl *string `min:"1" type:"string"`
48192}
48193
48194// String returns the string representation
48195func (s SessionManagerOutputUrl) String() string {
48196	return awsutil.Prettify(s)
48197}
48198
48199// GoString returns the string representation
48200func (s SessionManagerOutputUrl) GoString() string {
48201	return s.String()
48202}
48203
48204// SetCloudWatchOutputUrl sets the CloudWatchOutputUrl field's value.
48205func (s *SessionManagerOutputUrl) SetCloudWatchOutputUrl(v string) *SessionManagerOutputUrl {
48206	s.CloudWatchOutputUrl = &v
48207	return s
48208}
48209
48210// SetS3OutputUrl sets the S3OutputUrl field's value.
48211func (s *SessionManagerOutputUrl) SetS3OutputUrl(v string) *SessionManagerOutputUrl {
48212	s.S3OutputUrl = &v
48213	return s
48214}
48215
48216// The number of managed instances found for each patch severity level defined
48217// in the request filter.
48218type SeveritySummary struct {
48219	_ struct{} `type:"structure"`
48220
48221	// The total number of resources or compliance items that have a severity level
48222	// of critical. Critical severity is determined by the organization that published
48223	// the compliance items.
48224	CriticalCount *int64 `type:"integer"`
48225
48226	// The total number of resources or compliance items that have a severity level
48227	// of high. High severity is determined by the organization that published the
48228	// compliance items.
48229	HighCount *int64 `type:"integer"`
48230
48231	// The total number of resources or compliance items that have a severity level
48232	// of informational. Informational severity is determined by the organization
48233	// that published the compliance items.
48234	InformationalCount *int64 `type:"integer"`
48235
48236	// The total number of resources or compliance items that have a severity level
48237	// of low. Low severity is determined by the organization that published the
48238	// compliance items.
48239	LowCount *int64 `type:"integer"`
48240
48241	// The total number of resources or compliance items that have a severity level
48242	// of medium. Medium severity is determined by the organization that published
48243	// the compliance items.
48244	MediumCount *int64 `type:"integer"`
48245
48246	// The total number of resources or compliance items that have a severity level
48247	// of unspecified. Unspecified severity is determined by the organization that
48248	// published the compliance items.
48249	UnspecifiedCount *int64 `type:"integer"`
48250}
48251
48252// String returns the string representation
48253func (s SeveritySummary) String() string {
48254	return awsutil.Prettify(s)
48255}
48256
48257// GoString returns the string representation
48258func (s SeveritySummary) GoString() string {
48259	return s.String()
48260}
48261
48262// SetCriticalCount sets the CriticalCount field's value.
48263func (s *SeveritySummary) SetCriticalCount(v int64) *SeveritySummary {
48264	s.CriticalCount = &v
48265	return s
48266}
48267
48268// SetHighCount sets the HighCount field's value.
48269func (s *SeveritySummary) SetHighCount(v int64) *SeveritySummary {
48270	s.HighCount = &v
48271	return s
48272}
48273
48274// SetInformationalCount sets the InformationalCount field's value.
48275func (s *SeveritySummary) SetInformationalCount(v int64) *SeveritySummary {
48276	s.InformationalCount = &v
48277	return s
48278}
48279
48280// SetLowCount sets the LowCount field's value.
48281func (s *SeveritySummary) SetLowCount(v int64) *SeveritySummary {
48282	s.LowCount = &v
48283	return s
48284}
48285
48286// SetMediumCount sets the MediumCount field's value.
48287func (s *SeveritySummary) SetMediumCount(v int64) *SeveritySummary {
48288	s.MediumCount = &v
48289	return s
48290}
48291
48292// SetUnspecifiedCount sets the UnspecifiedCount field's value.
48293func (s *SeveritySummary) SetUnspecifiedCount(v int64) *SeveritySummary {
48294	s.UnspecifiedCount = &v
48295	return s
48296}
48297
48298type StartAssociationsOnceInput struct {
48299	_ struct{} `type:"structure"`
48300
48301	// The association IDs that you want to run immediately and only one time.
48302	//
48303	// AssociationIds is a required field
48304	AssociationIds []*string `min:"1" type:"list" required:"true"`
48305}
48306
48307// String returns the string representation
48308func (s StartAssociationsOnceInput) String() string {
48309	return awsutil.Prettify(s)
48310}
48311
48312// GoString returns the string representation
48313func (s StartAssociationsOnceInput) GoString() string {
48314	return s.String()
48315}
48316
48317// Validate inspects the fields of the type to determine if they are valid.
48318func (s *StartAssociationsOnceInput) Validate() error {
48319	invalidParams := request.ErrInvalidParams{Context: "StartAssociationsOnceInput"}
48320	if s.AssociationIds == nil {
48321		invalidParams.Add(request.NewErrParamRequired("AssociationIds"))
48322	}
48323	if s.AssociationIds != nil && len(s.AssociationIds) < 1 {
48324		invalidParams.Add(request.NewErrParamMinLen("AssociationIds", 1))
48325	}
48326
48327	if invalidParams.Len() > 0 {
48328		return invalidParams
48329	}
48330	return nil
48331}
48332
48333// SetAssociationIds sets the AssociationIds field's value.
48334func (s *StartAssociationsOnceInput) SetAssociationIds(v []*string) *StartAssociationsOnceInput {
48335	s.AssociationIds = v
48336	return s
48337}
48338
48339type StartAssociationsOnceOutput struct {
48340	_ struct{} `type:"structure"`
48341}
48342
48343// String returns the string representation
48344func (s StartAssociationsOnceOutput) String() string {
48345	return awsutil.Prettify(s)
48346}
48347
48348// GoString returns the string representation
48349func (s StartAssociationsOnceOutput) GoString() string {
48350	return s.String()
48351}
48352
48353type StartAutomationExecutionInput struct {
48354	_ struct{} `type:"structure"`
48355
48356	// User-provided idempotency token. The token must be unique, is case insensitive,
48357	// enforces the UUID format, and can't be reused.
48358	ClientToken *string `min:"36" type:"string"`
48359
48360	// The name of the SSM document to run. This can be a public document or a custom
48361	// document. To run a shared document belonging to another account, specify
48362	// the document ARN. For more information about how to use shared documents,
48363	// see Using shared SSM documents (https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-using-shared.html)
48364	// in the Amazon Web Services Systems Manager User Guide.
48365	//
48366	// DocumentName is a required field
48367	DocumentName *string `type:"string" required:"true"`
48368
48369	// The version of the Automation runbook to use for this execution.
48370	DocumentVersion *string `type:"string"`
48371
48372	// The maximum number of targets allowed to run this task in parallel. You can
48373	// specify a number, such as 10, or a percentage, such as 10%. The default value
48374	// is 10.
48375	MaxConcurrency *string `min:"1" type:"string"`
48376
48377	// The number of errors that are allowed before the system stops running the
48378	// automation on additional targets. You can specify either an absolute number
48379	// of errors, for example 10, or a percentage of the target set, for example
48380	// 10%. If you specify 3, for example, the system stops running the automation
48381	// when the fourth error is received. If you specify 0, then the system stops
48382	// running the automation on additional targets after the first error result
48383	// is returned. If you run an automation on 50 resources and set max-errors
48384	// to 10%, then the system stops running the automation on additional targets
48385	// when the sixth error is received.
48386	//
48387	// Executions that are already running an automation when max-errors is reached
48388	// are allowed to complete, but some of these executions may fail as well. If
48389	// you need to ensure that there won't be more than max-errors failed executions,
48390	// set max-concurrency to 1 so the executions proceed one at a time.
48391	MaxErrors *string `min:"1" type:"string"`
48392
48393	// The execution mode of the automation. Valid modes include the following:
48394	// Auto and Interactive. The default mode is Auto.
48395	Mode *string `type:"string" enum:"ExecutionMode"`
48396
48397	// A key-value map of execution parameters, which match the declared parameters
48398	// in the Automation runbook.
48399	Parameters map[string][]*string `min:"1" type:"map"`
48400
48401	// Optional metadata that you assign to a resource. You can specify a maximum
48402	// of five tags for an automation. Tags enable you to categorize a resource
48403	// in different ways, such as by purpose, owner, or environment. For example,
48404	// you might want to tag an automation to identify an environment or operating
48405	// system. In this case, you could specify the following key-value pairs:
48406	//
48407	//    * Key=environment,Value=test
48408	//
48409	//    * Key=OS,Value=Windows
48410	//
48411	// To add tags to an existing patch baseline, use the AddTagsToResource operation.
48412	Tags []*Tag `type:"list"`
48413
48414	// A location is a combination of Amazon Web Services Regions and/or Amazon
48415	// Web Services accounts where you want to run the automation. Use this operation
48416	// to start an automation in multiple Amazon Web Services Regions and multiple
48417	// Amazon Web Services accounts. For more information, see Running Automation
48418	// workflows in multiple Amazon Web Services Regions and Amazon Web Services
48419	// accounts (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation-multiple-accounts-and-regions.html)
48420	// in the Amazon Web Services Systems Manager User Guide.
48421	TargetLocations []*TargetLocation `min:"1" type:"list"`
48422
48423	// A key-value mapping of document parameters to target resources. Both Targets
48424	// and TargetMaps can't be specified together.
48425	TargetMaps []map[string][]*string `type:"list"`
48426
48427	// The name of the parameter used as the target resource for the rate-controlled
48428	// execution. Required if you specify targets.
48429	TargetParameterName *string `min:"1" type:"string"`
48430
48431	// A key-value mapping to target resources. Required if you specify TargetParameterName.
48432	Targets []*Target `type:"list"`
48433}
48434
48435// String returns the string representation
48436func (s StartAutomationExecutionInput) String() string {
48437	return awsutil.Prettify(s)
48438}
48439
48440// GoString returns the string representation
48441func (s StartAutomationExecutionInput) GoString() string {
48442	return s.String()
48443}
48444
48445// Validate inspects the fields of the type to determine if they are valid.
48446func (s *StartAutomationExecutionInput) Validate() error {
48447	invalidParams := request.ErrInvalidParams{Context: "StartAutomationExecutionInput"}
48448	if s.ClientToken != nil && len(*s.ClientToken) < 36 {
48449		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36))
48450	}
48451	if s.DocumentName == nil {
48452		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
48453	}
48454	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
48455		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
48456	}
48457	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
48458		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
48459	}
48460	if s.Parameters != nil && len(s.Parameters) < 1 {
48461		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
48462	}
48463	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
48464		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
48465	}
48466	if s.TargetParameterName != nil && len(*s.TargetParameterName) < 1 {
48467		invalidParams.Add(request.NewErrParamMinLen("TargetParameterName", 1))
48468	}
48469	if s.Tags != nil {
48470		for i, v := range s.Tags {
48471			if v == nil {
48472				continue
48473			}
48474			if err := v.Validate(); err != nil {
48475				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
48476			}
48477		}
48478	}
48479	if s.TargetLocations != nil {
48480		for i, v := range s.TargetLocations {
48481			if v == nil {
48482				continue
48483			}
48484			if err := v.Validate(); err != nil {
48485				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
48486			}
48487		}
48488	}
48489	if s.Targets != nil {
48490		for i, v := range s.Targets {
48491			if v == nil {
48492				continue
48493			}
48494			if err := v.Validate(); err != nil {
48495				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
48496			}
48497		}
48498	}
48499
48500	if invalidParams.Len() > 0 {
48501		return invalidParams
48502	}
48503	return nil
48504}
48505
48506// SetClientToken sets the ClientToken field's value.
48507func (s *StartAutomationExecutionInput) SetClientToken(v string) *StartAutomationExecutionInput {
48508	s.ClientToken = &v
48509	return s
48510}
48511
48512// SetDocumentName sets the DocumentName field's value.
48513func (s *StartAutomationExecutionInput) SetDocumentName(v string) *StartAutomationExecutionInput {
48514	s.DocumentName = &v
48515	return s
48516}
48517
48518// SetDocumentVersion sets the DocumentVersion field's value.
48519func (s *StartAutomationExecutionInput) SetDocumentVersion(v string) *StartAutomationExecutionInput {
48520	s.DocumentVersion = &v
48521	return s
48522}
48523
48524// SetMaxConcurrency sets the MaxConcurrency field's value.
48525func (s *StartAutomationExecutionInput) SetMaxConcurrency(v string) *StartAutomationExecutionInput {
48526	s.MaxConcurrency = &v
48527	return s
48528}
48529
48530// SetMaxErrors sets the MaxErrors field's value.
48531func (s *StartAutomationExecutionInput) SetMaxErrors(v string) *StartAutomationExecutionInput {
48532	s.MaxErrors = &v
48533	return s
48534}
48535
48536// SetMode sets the Mode field's value.
48537func (s *StartAutomationExecutionInput) SetMode(v string) *StartAutomationExecutionInput {
48538	s.Mode = &v
48539	return s
48540}
48541
48542// SetParameters sets the Parameters field's value.
48543func (s *StartAutomationExecutionInput) SetParameters(v map[string][]*string) *StartAutomationExecutionInput {
48544	s.Parameters = v
48545	return s
48546}
48547
48548// SetTags sets the Tags field's value.
48549func (s *StartAutomationExecutionInput) SetTags(v []*Tag) *StartAutomationExecutionInput {
48550	s.Tags = v
48551	return s
48552}
48553
48554// SetTargetLocations sets the TargetLocations field's value.
48555func (s *StartAutomationExecutionInput) SetTargetLocations(v []*TargetLocation) *StartAutomationExecutionInput {
48556	s.TargetLocations = v
48557	return s
48558}
48559
48560// SetTargetMaps sets the TargetMaps field's value.
48561func (s *StartAutomationExecutionInput) SetTargetMaps(v []map[string][]*string) *StartAutomationExecutionInput {
48562	s.TargetMaps = v
48563	return s
48564}
48565
48566// SetTargetParameterName sets the TargetParameterName field's value.
48567func (s *StartAutomationExecutionInput) SetTargetParameterName(v string) *StartAutomationExecutionInput {
48568	s.TargetParameterName = &v
48569	return s
48570}
48571
48572// SetTargets sets the Targets field's value.
48573func (s *StartAutomationExecutionInput) SetTargets(v []*Target) *StartAutomationExecutionInput {
48574	s.Targets = v
48575	return s
48576}
48577
48578type StartAutomationExecutionOutput struct {
48579	_ struct{} `type:"structure"`
48580
48581	// The unique ID of a newly scheduled automation execution.
48582	AutomationExecutionId *string `min:"36" type:"string"`
48583}
48584
48585// String returns the string representation
48586func (s StartAutomationExecutionOutput) String() string {
48587	return awsutil.Prettify(s)
48588}
48589
48590// GoString returns the string representation
48591func (s StartAutomationExecutionOutput) GoString() string {
48592	return s.String()
48593}
48594
48595// SetAutomationExecutionId sets the AutomationExecutionId field's value.
48596func (s *StartAutomationExecutionOutput) SetAutomationExecutionId(v string) *StartAutomationExecutionOutput {
48597	s.AutomationExecutionId = &v
48598	return s
48599}
48600
48601type StartChangeRequestExecutionInput struct {
48602	_ struct{} `type:"structure"`
48603
48604	// User-provided details about the change. If no details are provided, content
48605	// specified in the Template information section of the associated change template
48606	// is added.
48607	ChangeDetails *string `min:"1" type:"string"`
48608
48609	// The name of the change request associated with the runbook workflow to be
48610	// run.
48611	ChangeRequestName *string `min:"1" type:"string"`
48612
48613	// The user-provided idempotency token. The token must be unique, is case insensitive,
48614	// enforces the UUID format, and can't be reused.
48615	ClientToken *string `min:"36" type:"string"`
48616
48617	// The name of the change template document to run during the runbook workflow.
48618	//
48619	// DocumentName is a required field
48620	DocumentName *string `type:"string" required:"true"`
48621
48622	// The version of the change template document to run during the runbook workflow.
48623	DocumentVersion *string `type:"string"`
48624
48625	// A key-value map of parameters that match the declared parameters in the change
48626	// template document.
48627	Parameters map[string][]*string `min:"1" type:"map"`
48628
48629	// Information about the Automation runbooks that are run during the runbook
48630	// workflow.
48631	//
48632	// The Automation runbooks specified for the runbook workflow can't run until
48633	// all required approvals for the change request have been received.
48634	//
48635	// Runbooks is a required field
48636	Runbooks []*Runbook `min:"1" type:"list" required:"true"`
48637
48638	// The time that the requester expects the runbook workflow related to the change
48639	// request to complete. The time is an estimate only that the requester provides
48640	// for reviewers.
48641	ScheduledEndTime *time.Time `type:"timestamp"`
48642
48643	// The date and time specified in the change request to run the Automation runbooks.
48644	//
48645	// The Automation runbooks specified for the runbook workflow can't run until
48646	// all required approvals for the change request have been received.
48647	ScheduledTime *time.Time `type:"timestamp"`
48648
48649	// Optional metadata that you assign to a resource. You can specify a maximum
48650	// of five tags for a change request. Tags enable you to categorize a resource
48651	// in different ways, such as by purpose, owner, or environment. For example,
48652	// you might want to tag a change request to identify an environment or target
48653	// Amazon Web Services Region. In this case, you could specify the following
48654	// key-value pairs:
48655	//
48656	//    * Key=Environment,Value=Production
48657	//
48658	//    * Key=Region,Value=us-east-2
48659	Tags []*Tag `type:"list"`
48660}
48661
48662// String returns the string representation
48663func (s StartChangeRequestExecutionInput) String() string {
48664	return awsutil.Prettify(s)
48665}
48666
48667// GoString returns the string representation
48668func (s StartChangeRequestExecutionInput) GoString() string {
48669	return s.String()
48670}
48671
48672// Validate inspects the fields of the type to determine if they are valid.
48673func (s *StartChangeRequestExecutionInput) Validate() error {
48674	invalidParams := request.ErrInvalidParams{Context: "StartChangeRequestExecutionInput"}
48675	if s.ChangeDetails != nil && len(*s.ChangeDetails) < 1 {
48676		invalidParams.Add(request.NewErrParamMinLen("ChangeDetails", 1))
48677	}
48678	if s.ChangeRequestName != nil && len(*s.ChangeRequestName) < 1 {
48679		invalidParams.Add(request.NewErrParamMinLen("ChangeRequestName", 1))
48680	}
48681	if s.ClientToken != nil && len(*s.ClientToken) < 36 {
48682		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 36))
48683	}
48684	if s.DocumentName == nil {
48685		invalidParams.Add(request.NewErrParamRequired("DocumentName"))
48686	}
48687	if s.Parameters != nil && len(s.Parameters) < 1 {
48688		invalidParams.Add(request.NewErrParamMinLen("Parameters", 1))
48689	}
48690	if s.Runbooks == nil {
48691		invalidParams.Add(request.NewErrParamRequired("Runbooks"))
48692	}
48693	if s.Runbooks != nil && len(s.Runbooks) < 1 {
48694		invalidParams.Add(request.NewErrParamMinLen("Runbooks", 1))
48695	}
48696	if s.Runbooks != nil {
48697		for i, v := range s.Runbooks {
48698			if v == nil {
48699				continue
48700			}
48701			if err := v.Validate(); err != nil {
48702				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Runbooks", i), err.(request.ErrInvalidParams))
48703			}
48704		}
48705	}
48706	if s.Tags != nil {
48707		for i, v := range s.Tags {
48708			if v == nil {
48709				continue
48710			}
48711			if err := v.Validate(); err != nil {
48712				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
48713			}
48714		}
48715	}
48716
48717	if invalidParams.Len() > 0 {
48718		return invalidParams
48719	}
48720	return nil
48721}
48722
48723// SetChangeDetails sets the ChangeDetails field's value.
48724func (s *StartChangeRequestExecutionInput) SetChangeDetails(v string) *StartChangeRequestExecutionInput {
48725	s.ChangeDetails = &v
48726	return s
48727}
48728
48729// SetChangeRequestName sets the ChangeRequestName field's value.
48730func (s *StartChangeRequestExecutionInput) SetChangeRequestName(v string) *StartChangeRequestExecutionInput {
48731	s.ChangeRequestName = &v
48732	return s
48733}
48734
48735// SetClientToken sets the ClientToken field's value.
48736func (s *StartChangeRequestExecutionInput) SetClientToken(v string) *StartChangeRequestExecutionInput {
48737	s.ClientToken = &v
48738	return s
48739}
48740
48741// SetDocumentName sets the DocumentName field's value.
48742func (s *StartChangeRequestExecutionInput) SetDocumentName(v string) *StartChangeRequestExecutionInput {
48743	s.DocumentName = &v
48744	return s
48745}
48746
48747// SetDocumentVersion sets the DocumentVersion field's value.
48748func (s *StartChangeRequestExecutionInput) SetDocumentVersion(v string) *StartChangeRequestExecutionInput {
48749	s.DocumentVersion = &v
48750	return s
48751}
48752
48753// SetParameters sets the Parameters field's value.
48754func (s *StartChangeRequestExecutionInput) SetParameters(v map[string][]*string) *StartChangeRequestExecutionInput {
48755	s.Parameters = v
48756	return s
48757}
48758
48759// SetRunbooks sets the Runbooks field's value.
48760func (s *StartChangeRequestExecutionInput) SetRunbooks(v []*Runbook) *StartChangeRequestExecutionInput {
48761	s.Runbooks = v
48762	return s
48763}
48764
48765// SetScheduledEndTime sets the ScheduledEndTime field's value.
48766func (s *StartChangeRequestExecutionInput) SetScheduledEndTime(v time.Time) *StartChangeRequestExecutionInput {
48767	s.ScheduledEndTime = &v
48768	return s
48769}
48770
48771// SetScheduledTime sets the ScheduledTime field's value.
48772func (s *StartChangeRequestExecutionInput) SetScheduledTime(v time.Time) *StartChangeRequestExecutionInput {
48773	s.ScheduledTime = &v
48774	return s
48775}
48776
48777// SetTags sets the Tags field's value.
48778func (s *StartChangeRequestExecutionInput) SetTags(v []*Tag) *StartChangeRequestExecutionInput {
48779	s.Tags = v
48780	return s
48781}
48782
48783type StartChangeRequestExecutionOutput struct {
48784	_ struct{} `type:"structure"`
48785
48786	// The unique ID of a runbook workflow operation. (A runbook workflow is a type
48787	// of Automation operation.)
48788	AutomationExecutionId *string `min:"36" type:"string"`
48789}
48790
48791// String returns the string representation
48792func (s StartChangeRequestExecutionOutput) String() string {
48793	return awsutil.Prettify(s)
48794}
48795
48796// GoString returns the string representation
48797func (s StartChangeRequestExecutionOutput) GoString() string {
48798	return s.String()
48799}
48800
48801// SetAutomationExecutionId sets the AutomationExecutionId field's value.
48802func (s *StartChangeRequestExecutionOutput) SetAutomationExecutionId(v string) *StartChangeRequestExecutionOutput {
48803	s.AutomationExecutionId = &v
48804	return s
48805}
48806
48807type StartSessionInput struct {
48808	_ struct{} `type:"structure"`
48809
48810	// The name of the SSM document to define the parameters and plugin settings
48811	// for the session. For example, SSM-SessionManagerRunShell. You can call the
48812	// GetDocument API to verify the document exists before attempting to start
48813	// a session. If no document name is provided, a shell to the instance is launched
48814	// by default.
48815	DocumentName *string `type:"string"`
48816
48817	// Reserved for future use.
48818	Parameters map[string][]*string `type:"map"`
48819
48820	// The instance to connect to for the session.
48821	//
48822	// Target is a required field
48823	Target *string `min:"1" type:"string" required:"true"`
48824}
48825
48826// String returns the string representation
48827func (s StartSessionInput) String() string {
48828	return awsutil.Prettify(s)
48829}
48830
48831// GoString returns the string representation
48832func (s StartSessionInput) GoString() string {
48833	return s.String()
48834}
48835
48836// Validate inspects the fields of the type to determine if they are valid.
48837func (s *StartSessionInput) Validate() error {
48838	invalidParams := request.ErrInvalidParams{Context: "StartSessionInput"}
48839	if s.Target == nil {
48840		invalidParams.Add(request.NewErrParamRequired("Target"))
48841	}
48842	if s.Target != nil && len(*s.Target) < 1 {
48843		invalidParams.Add(request.NewErrParamMinLen("Target", 1))
48844	}
48845
48846	if invalidParams.Len() > 0 {
48847		return invalidParams
48848	}
48849	return nil
48850}
48851
48852// SetDocumentName sets the DocumentName field's value.
48853func (s *StartSessionInput) SetDocumentName(v string) *StartSessionInput {
48854	s.DocumentName = &v
48855	return s
48856}
48857
48858// SetParameters sets the Parameters field's value.
48859func (s *StartSessionInput) SetParameters(v map[string][]*string) *StartSessionInput {
48860	s.Parameters = v
48861	return s
48862}
48863
48864// SetTarget sets the Target field's value.
48865func (s *StartSessionInput) SetTarget(v string) *StartSessionInput {
48866	s.Target = &v
48867	return s
48868}
48869
48870type StartSessionOutput struct {
48871	_ struct{} `type:"structure"`
48872
48873	// The ID of the session.
48874	SessionId *string `min:"1" type:"string"`
48875
48876	// A URL back to SSM Agent on the instance that the Session Manager client uses
48877	// to send commands and receive output from the instance. Format: wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output)
48878	//
48879	// region represents the Region identifier for an Amazon Web Services Region
48880	// supported by Amazon Web Services Systems Manager, such as us-east-2 for the
48881	// US East (Ohio) Region. For a list of supported region values, see the Region
48882	// column in Systems Manager service endpoints (https://docs.aws.amazon.com/general/latest/gr/ssm.html#ssm_region)
48883	// in the Amazon Web Services General Reference.
48884	//
48885	// session-id represents the ID of a Session Manager session, such as 1a2b3c4dEXAMPLE.
48886	StreamUrl *string `type:"string"`
48887
48888	// An encrypted token value containing session and caller information. Used
48889	// to authenticate the connection to the instance.
48890	TokenValue *string `type:"string"`
48891}
48892
48893// String returns the string representation
48894func (s StartSessionOutput) String() string {
48895	return awsutil.Prettify(s)
48896}
48897
48898// GoString returns the string representation
48899func (s StartSessionOutput) GoString() string {
48900	return s.String()
48901}
48902
48903// SetSessionId sets the SessionId field's value.
48904func (s *StartSessionOutput) SetSessionId(v string) *StartSessionOutput {
48905	s.SessionId = &v
48906	return s
48907}
48908
48909// SetStreamUrl sets the StreamUrl field's value.
48910func (s *StartSessionOutput) SetStreamUrl(v string) *StartSessionOutput {
48911	s.StreamUrl = &v
48912	return s
48913}
48914
48915// SetTokenValue sets the TokenValue field's value.
48916func (s *StartSessionOutput) SetTokenValue(v string) *StartSessionOutput {
48917	s.TokenValue = &v
48918	return s
48919}
48920
48921// The updated status is the same as the current status.
48922type StatusUnchanged struct {
48923	_            struct{}                  `type:"structure"`
48924	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
48925
48926	Message_ *string `locationName:"message" type:"string"`
48927}
48928
48929// String returns the string representation
48930func (s StatusUnchanged) String() string {
48931	return awsutil.Prettify(s)
48932}
48933
48934// GoString returns the string representation
48935func (s StatusUnchanged) GoString() string {
48936	return s.String()
48937}
48938
48939func newErrorStatusUnchanged(v protocol.ResponseMetadata) error {
48940	return &StatusUnchanged{
48941		RespMetadata: v,
48942	}
48943}
48944
48945// Code returns the exception type name.
48946func (s *StatusUnchanged) Code() string {
48947	return "StatusUnchanged"
48948}
48949
48950// Message returns the exception's message.
48951func (s *StatusUnchanged) Message() string {
48952	if s.Message_ != nil {
48953		return *s.Message_
48954	}
48955	return ""
48956}
48957
48958// OrigErr always returns nil, satisfies awserr.Error interface.
48959func (s *StatusUnchanged) OrigErr() error {
48960	return nil
48961}
48962
48963func (s *StatusUnchanged) Error() string {
48964	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
48965}
48966
48967// Status code returns the HTTP status code for the request's response error.
48968func (s *StatusUnchanged) StatusCode() int {
48969	return s.RespMetadata.StatusCode
48970}
48971
48972// RequestID returns the service's response RequestID for request.
48973func (s *StatusUnchanged) RequestID() string {
48974	return s.RespMetadata.RequestID
48975}
48976
48977// Detailed information about an the execution state of an Automation step.
48978type StepExecution struct {
48979	_ struct{} `type:"structure"`
48980
48981	// The action this step performs. The action determines the behavior of the
48982	// step.
48983	Action *string `type:"string"`
48984
48985	// If a step has finished execution, this contains the time the execution ended.
48986	// If the step hasn't yet concluded, this field isn't populated.
48987	ExecutionEndTime *time.Time `type:"timestamp"`
48988
48989	// If a step has begun execution, this contains the time the step started. If
48990	// the step is in Pending status, this field isn't populated.
48991	ExecutionStartTime *time.Time `type:"timestamp"`
48992
48993	// Information about the Automation failure.
48994	FailureDetails *FailureDetails `type:"structure"`
48995
48996	// If a step failed, this message explains why the execution failed.
48997	FailureMessage *string `type:"string"`
48998
48999	// Fully-resolved values passed into the step before execution.
49000	Inputs map[string]*string `type:"map"`
49001
49002	// The flag which can be used to help decide whether the failure of current
49003	// step leads to the Automation failure.
49004	IsCritical *bool `type:"boolean"`
49005
49006	// The flag which can be used to end automation no matter whether the step succeeds
49007	// or fails.
49008	IsEnd *bool `type:"boolean"`
49009
49010	// The maximum number of tries to run the action of the step. The default value
49011	// is 1.
49012	MaxAttempts *int64 `type:"integer"`
49013
49014	// The next step after the step succeeds.
49015	NextStep *string `type:"string"`
49016
49017	// The action to take if the step fails. The default value is Abort.
49018	OnFailure *string `type:"string"`
49019
49020	// Returned values from the execution of the step.
49021	Outputs map[string][]*string `min:"1" type:"map"`
49022
49023	// A user-specified list of parameters to override when running a step.
49024	OverriddenParameters map[string][]*string `min:"1" type:"map"`
49025
49026	// A message associated with the response code for an execution.
49027	Response *string `type:"string"`
49028
49029	// The response code returned by the execution of the step.
49030	ResponseCode *string `type:"string"`
49031
49032	// The unique ID of a step execution.
49033	StepExecutionId *string `type:"string"`
49034
49035	// The name of this execution step.
49036	StepName *string `type:"string"`
49037
49038	// The execution status for this step.
49039	StepStatus *string `type:"string" enum:"AutomationExecutionStatus"`
49040
49041	// The combination of Amazon Web Services Regions and Amazon Web Services accounts
49042	// targeted by the current Automation execution.
49043	TargetLocation *TargetLocation `type:"structure"`
49044
49045	// The targets for the step execution.
49046	Targets []*Target `type:"list"`
49047
49048	// The timeout seconds of the step.
49049	TimeoutSeconds *int64 `type:"long"`
49050
49051	// Strategies used when step fails, we support Continue and Abort. Abort will
49052	// fail the automation when the step fails. Continue will ignore the failure
49053	// of current step and allow automation to run the next step. With conditional
49054	// branching, we add step:stepName to support the automation to go to another
49055	// specific step.
49056	ValidNextSteps []*string `type:"list"`
49057}
49058
49059// String returns the string representation
49060func (s StepExecution) String() string {
49061	return awsutil.Prettify(s)
49062}
49063
49064// GoString returns the string representation
49065func (s StepExecution) GoString() string {
49066	return s.String()
49067}
49068
49069// SetAction sets the Action field's value.
49070func (s *StepExecution) SetAction(v string) *StepExecution {
49071	s.Action = &v
49072	return s
49073}
49074
49075// SetExecutionEndTime sets the ExecutionEndTime field's value.
49076func (s *StepExecution) SetExecutionEndTime(v time.Time) *StepExecution {
49077	s.ExecutionEndTime = &v
49078	return s
49079}
49080
49081// SetExecutionStartTime sets the ExecutionStartTime field's value.
49082func (s *StepExecution) SetExecutionStartTime(v time.Time) *StepExecution {
49083	s.ExecutionStartTime = &v
49084	return s
49085}
49086
49087// SetFailureDetails sets the FailureDetails field's value.
49088func (s *StepExecution) SetFailureDetails(v *FailureDetails) *StepExecution {
49089	s.FailureDetails = v
49090	return s
49091}
49092
49093// SetFailureMessage sets the FailureMessage field's value.
49094func (s *StepExecution) SetFailureMessage(v string) *StepExecution {
49095	s.FailureMessage = &v
49096	return s
49097}
49098
49099// SetInputs sets the Inputs field's value.
49100func (s *StepExecution) SetInputs(v map[string]*string) *StepExecution {
49101	s.Inputs = v
49102	return s
49103}
49104
49105// SetIsCritical sets the IsCritical field's value.
49106func (s *StepExecution) SetIsCritical(v bool) *StepExecution {
49107	s.IsCritical = &v
49108	return s
49109}
49110
49111// SetIsEnd sets the IsEnd field's value.
49112func (s *StepExecution) SetIsEnd(v bool) *StepExecution {
49113	s.IsEnd = &v
49114	return s
49115}
49116
49117// SetMaxAttempts sets the MaxAttempts field's value.
49118func (s *StepExecution) SetMaxAttempts(v int64) *StepExecution {
49119	s.MaxAttempts = &v
49120	return s
49121}
49122
49123// SetNextStep sets the NextStep field's value.
49124func (s *StepExecution) SetNextStep(v string) *StepExecution {
49125	s.NextStep = &v
49126	return s
49127}
49128
49129// SetOnFailure sets the OnFailure field's value.
49130func (s *StepExecution) SetOnFailure(v string) *StepExecution {
49131	s.OnFailure = &v
49132	return s
49133}
49134
49135// SetOutputs sets the Outputs field's value.
49136func (s *StepExecution) SetOutputs(v map[string][]*string) *StepExecution {
49137	s.Outputs = v
49138	return s
49139}
49140
49141// SetOverriddenParameters sets the OverriddenParameters field's value.
49142func (s *StepExecution) SetOverriddenParameters(v map[string][]*string) *StepExecution {
49143	s.OverriddenParameters = v
49144	return s
49145}
49146
49147// SetResponse sets the Response field's value.
49148func (s *StepExecution) SetResponse(v string) *StepExecution {
49149	s.Response = &v
49150	return s
49151}
49152
49153// SetResponseCode sets the ResponseCode field's value.
49154func (s *StepExecution) SetResponseCode(v string) *StepExecution {
49155	s.ResponseCode = &v
49156	return s
49157}
49158
49159// SetStepExecutionId sets the StepExecutionId field's value.
49160func (s *StepExecution) SetStepExecutionId(v string) *StepExecution {
49161	s.StepExecutionId = &v
49162	return s
49163}
49164
49165// SetStepName sets the StepName field's value.
49166func (s *StepExecution) SetStepName(v string) *StepExecution {
49167	s.StepName = &v
49168	return s
49169}
49170
49171// SetStepStatus sets the StepStatus field's value.
49172func (s *StepExecution) SetStepStatus(v string) *StepExecution {
49173	s.StepStatus = &v
49174	return s
49175}
49176
49177// SetTargetLocation sets the TargetLocation field's value.
49178func (s *StepExecution) SetTargetLocation(v *TargetLocation) *StepExecution {
49179	s.TargetLocation = v
49180	return s
49181}
49182
49183// SetTargets sets the Targets field's value.
49184func (s *StepExecution) SetTargets(v []*Target) *StepExecution {
49185	s.Targets = v
49186	return s
49187}
49188
49189// SetTimeoutSeconds sets the TimeoutSeconds field's value.
49190func (s *StepExecution) SetTimeoutSeconds(v int64) *StepExecution {
49191	s.TimeoutSeconds = &v
49192	return s
49193}
49194
49195// SetValidNextSteps sets the ValidNextSteps field's value.
49196func (s *StepExecution) SetValidNextSteps(v []*string) *StepExecution {
49197	s.ValidNextSteps = v
49198	return s
49199}
49200
49201// A filter to limit the amount of step execution information returned by the
49202// call.
49203type StepExecutionFilter struct {
49204	_ struct{} `type:"structure"`
49205
49206	// One or more keys to limit the results. Valid filter keys include the following:
49207	// StepName, Action, StepExecutionId, StepExecutionStatus, StartTimeBefore,
49208	// StartTimeAfter.
49209	//
49210	// Key is a required field
49211	Key *string `type:"string" required:"true" enum:"StepExecutionFilterKey"`
49212
49213	// The values of the filter key.
49214	//
49215	// Values is a required field
49216	Values []*string `min:"1" type:"list" required:"true"`
49217}
49218
49219// String returns the string representation
49220func (s StepExecutionFilter) String() string {
49221	return awsutil.Prettify(s)
49222}
49223
49224// GoString returns the string representation
49225func (s StepExecutionFilter) GoString() string {
49226	return s.String()
49227}
49228
49229// Validate inspects the fields of the type to determine if they are valid.
49230func (s *StepExecutionFilter) Validate() error {
49231	invalidParams := request.ErrInvalidParams{Context: "StepExecutionFilter"}
49232	if s.Key == nil {
49233		invalidParams.Add(request.NewErrParamRequired("Key"))
49234	}
49235	if s.Values == nil {
49236		invalidParams.Add(request.NewErrParamRequired("Values"))
49237	}
49238	if s.Values != nil && len(s.Values) < 1 {
49239		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
49240	}
49241
49242	if invalidParams.Len() > 0 {
49243		return invalidParams
49244	}
49245	return nil
49246}
49247
49248// SetKey sets the Key field's value.
49249func (s *StepExecutionFilter) SetKey(v string) *StepExecutionFilter {
49250	s.Key = &v
49251	return s
49252}
49253
49254// SetValues sets the Values field's value.
49255func (s *StepExecutionFilter) SetValues(v []*string) *StepExecutionFilter {
49256	s.Values = v
49257	return s
49258}
49259
49260type StopAutomationExecutionInput struct {
49261	_ struct{} `type:"structure"`
49262
49263	// The execution ID of the Automation to stop.
49264	//
49265	// AutomationExecutionId is a required field
49266	AutomationExecutionId *string `min:"36" type:"string" required:"true"`
49267
49268	// The stop request type. Valid types include the following: Cancel and Complete.
49269	// The default type is Cancel.
49270	Type *string `type:"string" enum:"StopType"`
49271}
49272
49273// String returns the string representation
49274func (s StopAutomationExecutionInput) String() string {
49275	return awsutil.Prettify(s)
49276}
49277
49278// GoString returns the string representation
49279func (s StopAutomationExecutionInput) GoString() string {
49280	return s.String()
49281}
49282
49283// Validate inspects the fields of the type to determine if they are valid.
49284func (s *StopAutomationExecutionInput) Validate() error {
49285	invalidParams := request.ErrInvalidParams{Context: "StopAutomationExecutionInput"}
49286	if s.AutomationExecutionId == nil {
49287		invalidParams.Add(request.NewErrParamRequired("AutomationExecutionId"))
49288	}
49289	if s.AutomationExecutionId != nil && len(*s.AutomationExecutionId) < 36 {
49290		invalidParams.Add(request.NewErrParamMinLen("AutomationExecutionId", 36))
49291	}
49292
49293	if invalidParams.Len() > 0 {
49294		return invalidParams
49295	}
49296	return nil
49297}
49298
49299// SetAutomationExecutionId sets the AutomationExecutionId field's value.
49300func (s *StopAutomationExecutionInput) SetAutomationExecutionId(v string) *StopAutomationExecutionInput {
49301	s.AutomationExecutionId = &v
49302	return s
49303}
49304
49305// SetType sets the Type field's value.
49306func (s *StopAutomationExecutionInput) SetType(v string) *StopAutomationExecutionInput {
49307	s.Type = &v
49308	return s
49309}
49310
49311type StopAutomationExecutionOutput struct {
49312	_ struct{} `type:"structure"`
49313}
49314
49315// String returns the string representation
49316func (s StopAutomationExecutionOutput) String() string {
49317	return awsutil.Prettify(s)
49318}
49319
49320// GoString returns the string representation
49321func (s StopAutomationExecutionOutput) GoString() string {
49322	return s.String()
49323}
49324
49325// The sub-type count exceeded the limit for the inventory type.
49326type SubTypeCountLimitExceededException struct {
49327	_            struct{}                  `type:"structure"`
49328	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
49329
49330	Message_ *string `locationName:"Message" type:"string"`
49331}
49332
49333// String returns the string representation
49334func (s SubTypeCountLimitExceededException) String() string {
49335	return awsutil.Prettify(s)
49336}
49337
49338// GoString returns the string representation
49339func (s SubTypeCountLimitExceededException) GoString() string {
49340	return s.String()
49341}
49342
49343func newErrorSubTypeCountLimitExceededException(v protocol.ResponseMetadata) error {
49344	return &SubTypeCountLimitExceededException{
49345		RespMetadata: v,
49346	}
49347}
49348
49349// Code returns the exception type name.
49350func (s *SubTypeCountLimitExceededException) Code() string {
49351	return "SubTypeCountLimitExceededException"
49352}
49353
49354// Message returns the exception's message.
49355func (s *SubTypeCountLimitExceededException) Message() string {
49356	if s.Message_ != nil {
49357		return *s.Message_
49358	}
49359	return ""
49360}
49361
49362// OrigErr always returns nil, satisfies awserr.Error interface.
49363func (s *SubTypeCountLimitExceededException) OrigErr() error {
49364	return nil
49365}
49366
49367func (s *SubTypeCountLimitExceededException) Error() string {
49368	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
49369}
49370
49371// Status code returns the HTTP status code for the request's response error.
49372func (s *SubTypeCountLimitExceededException) StatusCode() int {
49373	return s.RespMetadata.StatusCode
49374}
49375
49376// RequestID returns the service's response RequestID for request.
49377func (s *SubTypeCountLimitExceededException) RequestID() string {
49378	return s.RespMetadata.RequestID
49379}
49380
49381// Metadata that you assign to your Amazon Web Services resources. Tags enable
49382// you to categorize your resources in different ways, for example, by purpose,
49383// owner, or environment. In Amazon Web Services Systems Manager, you can apply
49384// tags to Systems Manager documents (SSM documents), managed instances, maintenance
49385// windows, parameters, patch baselines, OpsItems, and OpsMetadata.
49386type Tag struct {
49387	_ struct{} `type:"structure"`
49388
49389	// The name of the tag.
49390	//
49391	// Key is a required field
49392	Key *string `min:"1" type:"string" required:"true"`
49393
49394	// The value of the tag.
49395	//
49396	// Value is a required field
49397	Value *string `min:"1" type:"string" required:"true"`
49398}
49399
49400// String returns the string representation
49401func (s Tag) String() string {
49402	return awsutil.Prettify(s)
49403}
49404
49405// GoString returns the string representation
49406func (s Tag) GoString() string {
49407	return s.String()
49408}
49409
49410// Validate inspects the fields of the type to determine if they are valid.
49411func (s *Tag) Validate() error {
49412	invalidParams := request.ErrInvalidParams{Context: "Tag"}
49413	if s.Key == nil {
49414		invalidParams.Add(request.NewErrParamRequired("Key"))
49415	}
49416	if s.Key != nil && len(*s.Key) < 1 {
49417		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
49418	}
49419	if s.Value == nil {
49420		invalidParams.Add(request.NewErrParamRequired("Value"))
49421	}
49422	if s.Value != nil && len(*s.Value) < 1 {
49423		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
49424	}
49425
49426	if invalidParams.Len() > 0 {
49427		return invalidParams
49428	}
49429	return nil
49430}
49431
49432// SetKey sets the Key field's value.
49433func (s *Tag) SetKey(v string) *Tag {
49434	s.Key = &v
49435	return s
49436}
49437
49438// SetValue sets the Value field's value.
49439func (s *Tag) SetValue(v string) *Tag {
49440	s.Value = &v
49441	return s
49442}
49443
49444// An array of search criteria that targets instances using a key-value pair
49445// that you specify.
49446//
49447// One or more targets must be specified for maintenance window Run Command-type
49448// tasks. Depending on the task, targets are optional for other maintenance
49449// window task types (Automation, Lambda, and Step Functions). For more information
49450// about running tasks that don't specify targets, see Registering maintenance
49451// window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
49452// in the Amazon Web Services Systems Manager User Guide.
49453//
49454// Supported formats include the following.
49455//
49456//    * Key=InstanceIds,Values=instance-id-1,instance-id-2,instance-id-3
49457//
49458//    * Key=tag:my-tag-key,Values=my-tag-value-1,my-tag-value-2
49459//
49460//    * Key=tag-key,Values=my-tag-key-1,my-tag-key-2
49461//
49462//    * Run Command and Maintenance window targets only: Key=resource-groups:Name,Values=resource-group-name
49463//
49464//    * Maintenance window targets only: Key=resource-groups:ResourceTypeFilters,Values=resource-type-1,resource-type-2
49465//
49466//    * Automation targets only: Key=ResourceGroup;Values=resource-group-name
49467//
49468// For example:
49469//
49470//    * Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE
49471//
49472//    * Key=tag:CostCenter,Values=CostCenter1,CostCenter2,CostCenter3
49473//
49474//    * Key=tag-key,Values=Name,Instance-Type,CostCenter
49475//
49476//    * Run Command and Maintenance window targets only: Key=resource-groups:Name,Values=ProductionResourceGroup
49477//    This example demonstrates how to target all resources in the resource
49478//    group ProductionResourceGroup in your maintenance window.
49479//
49480//    * Maintenance window targets only: Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::INSTANCE,AWS::EC2::VPC
49481//    This example demonstrates how to target only Amazon Elastic Compute Cloud
49482//    (Amazon EC2) instances and VPCs in your maintenance window.
49483//
49484//    * Automation targets only: Key=ResourceGroup,Values=MyResourceGroup
49485//
49486//    * State Manager association targets only: Key=InstanceIds,Values=* This
49487//    example demonstrates how to target all managed instances in the Amazon
49488//    Web Services Region where the association was created.
49489//
49490// For more information about how to send commands that target instances using
49491// Key,Value parameters, see Targeting multiple instances (https://docs.aws.amazon.com/systems-manager/latest/userguide/send-commands-multiple.html#send-commands-targeting)
49492// in the Amazon Web Services Systems Manager User Guide.
49493type Target struct {
49494	_ struct{} `type:"structure"`
49495
49496	// User-defined criteria for sending commands that target instances that meet
49497	// the criteria.
49498	Key *string `min:"1" type:"string"`
49499
49500	// User-defined criteria that maps to Key. For example, if you specified tag:ServerRole,
49501	// you could specify value:WebServer to run a command on instances that include
49502	// EC2 tags of ServerRole,WebServer.
49503	//
49504	// Depending on the type of target, the maximum number of values for a key might
49505	// be lower than the global maximum of 50.
49506	Values []*string `type:"list"`
49507}
49508
49509// String returns the string representation
49510func (s Target) String() string {
49511	return awsutil.Prettify(s)
49512}
49513
49514// GoString returns the string representation
49515func (s Target) GoString() string {
49516	return s.String()
49517}
49518
49519// Validate inspects the fields of the type to determine if they are valid.
49520func (s *Target) Validate() error {
49521	invalidParams := request.ErrInvalidParams{Context: "Target"}
49522	if s.Key != nil && len(*s.Key) < 1 {
49523		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
49524	}
49525
49526	if invalidParams.Len() > 0 {
49527		return invalidParams
49528	}
49529	return nil
49530}
49531
49532// SetKey sets the Key field's value.
49533func (s *Target) SetKey(v string) *Target {
49534	s.Key = &v
49535	return s
49536}
49537
49538// SetValues sets the Values field's value.
49539func (s *Target) SetValues(v []*string) *Target {
49540	s.Values = v
49541	return s
49542}
49543
49544// You specified the Safe option for the DeregisterTargetFromMaintenanceWindow
49545// operation, but the target is still referenced in a task.
49546type TargetInUseException struct {
49547	_            struct{}                  `type:"structure"`
49548	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
49549
49550	Message_ *string `locationName:"Message" type:"string"`
49551}
49552
49553// String returns the string representation
49554func (s TargetInUseException) String() string {
49555	return awsutil.Prettify(s)
49556}
49557
49558// GoString returns the string representation
49559func (s TargetInUseException) GoString() string {
49560	return s.String()
49561}
49562
49563func newErrorTargetInUseException(v protocol.ResponseMetadata) error {
49564	return &TargetInUseException{
49565		RespMetadata: v,
49566	}
49567}
49568
49569// Code returns the exception type name.
49570func (s *TargetInUseException) Code() string {
49571	return "TargetInUseException"
49572}
49573
49574// Message returns the exception's message.
49575func (s *TargetInUseException) Message() string {
49576	if s.Message_ != nil {
49577		return *s.Message_
49578	}
49579	return ""
49580}
49581
49582// OrigErr always returns nil, satisfies awserr.Error interface.
49583func (s *TargetInUseException) OrigErr() error {
49584	return nil
49585}
49586
49587func (s *TargetInUseException) Error() string {
49588	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
49589}
49590
49591// Status code returns the HTTP status code for the request's response error.
49592func (s *TargetInUseException) StatusCode() int {
49593	return s.RespMetadata.StatusCode
49594}
49595
49596// RequestID returns the service's response RequestID for request.
49597func (s *TargetInUseException) RequestID() string {
49598	return s.RespMetadata.RequestID
49599}
49600
49601// The combination of Amazon Web Services Regions and Amazon Web Services accounts
49602// targeted by the current Automation execution.
49603type TargetLocation struct {
49604	_ struct{} `type:"structure"`
49605
49606	// The Amazon Web Services accounts targeted by the current Automation execution.
49607	Accounts []*string `min:"1" type:"list"`
49608
49609	// The Automation execution role used by the currently running Automation. If
49610	// not specified, the default value is AWS-SystemsManager-AutomationExecutionRole.
49611	ExecutionRoleName *string `min:"1" type:"string"`
49612
49613	// The Amazon Web Services Regions targeted by the current Automation execution.
49614	Regions []*string `min:"1" type:"list"`
49615
49616	// The maximum number of Amazon Web Services Regions and Amazon Web Services
49617	// accounts allowed to run the Automation concurrently.
49618	TargetLocationMaxConcurrency *string `min:"1" type:"string"`
49619
49620	// The maximum number of errors allowed before the system stops queueing additional
49621	// Automation executions for the currently running Automation.
49622	TargetLocationMaxErrors *string `min:"1" type:"string"`
49623}
49624
49625// String returns the string representation
49626func (s TargetLocation) String() string {
49627	return awsutil.Prettify(s)
49628}
49629
49630// GoString returns the string representation
49631func (s TargetLocation) GoString() string {
49632	return s.String()
49633}
49634
49635// Validate inspects the fields of the type to determine if they are valid.
49636func (s *TargetLocation) Validate() error {
49637	invalidParams := request.ErrInvalidParams{Context: "TargetLocation"}
49638	if s.Accounts != nil && len(s.Accounts) < 1 {
49639		invalidParams.Add(request.NewErrParamMinLen("Accounts", 1))
49640	}
49641	if s.ExecutionRoleName != nil && len(*s.ExecutionRoleName) < 1 {
49642		invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleName", 1))
49643	}
49644	if s.Regions != nil && len(s.Regions) < 1 {
49645		invalidParams.Add(request.NewErrParamMinLen("Regions", 1))
49646	}
49647	if s.TargetLocationMaxConcurrency != nil && len(*s.TargetLocationMaxConcurrency) < 1 {
49648		invalidParams.Add(request.NewErrParamMinLen("TargetLocationMaxConcurrency", 1))
49649	}
49650	if s.TargetLocationMaxErrors != nil && len(*s.TargetLocationMaxErrors) < 1 {
49651		invalidParams.Add(request.NewErrParamMinLen("TargetLocationMaxErrors", 1))
49652	}
49653
49654	if invalidParams.Len() > 0 {
49655		return invalidParams
49656	}
49657	return nil
49658}
49659
49660// SetAccounts sets the Accounts field's value.
49661func (s *TargetLocation) SetAccounts(v []*string) *TargetLocation {
49662	s.Accounts = v
49663	return s
49664}
49665
49666// SetExecutionRoleName sets the ExecutionRoleName field's value.
49667func (s *TargetLocation) SetExecutionRoleName(v string) *TargetLocation {
49668	s.ExecutionRoleName = &v
49669	return s
49670}
49671
49672// SetRegions sets the Regions field's value.
49673func (s *TargetLocation) SetRegions(v []*string) *TargetLocation {
49674	s.Regions = v
49675	return s
49676}
49677
49678// SetTargetLocationMaxConcurrency sets the TargetLocationMaxConcurrency field's value.
49679func (s *TargetLocation) SetTargetLocationMaxConcurrency(v string) *TargetLocation {
49680	s.TargetLocationMaxConcurrency = &v
49681	return s
49682}
49683
49684// SetTargetLocationMaxErrors sets the TargetLocationMaxErrors field's value.
49685func (s *TargetLocation) SetTargetLocationMaxErrors(v string) *TargetLocation {
49686	s.TargetLocationMaxErrors = &v
49687	return s
49688}
49689
49690// The specified target instance for the session isn't fully configured for
49691// use with Session Manager. For more information, see Getting started with
49692// Session Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html)
49693// in the Amazon Web Services Systems Manager User Guide. This error is also
49694// returned if you attempt to start a session on an instance that is located
49695// in a different account or Region
49696type TargetNotConnected struct {
49697	_            struct{}                  `type:"structure"`
49698	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
49699
49700	Message_ *string `locationName:"Message" type:"string"`
49701}
49702
49703// String returns the string representation
49704func (s TargetNotConnected) String() string {
49705	return awsutil.Prettify(s)
49706}
49707
49708// GoString returns the string representation
49709func (s TargetNotConnected) GoString() string {
49710	return s.String()
49711}
49712
49713func newErrorTargetNotConnected(v protocol.ResponseMetadata) error {
49714	return &TargetNotConnected{
49715		RespMetadata: v,
49716	}
49717}
49718
49719// Code returns the exception type name.
49720func (s *TargetNotConnected) Code() string {
49721	return "TargetNotConnected"
49722}
49723
49724// Message returns the exception's message.
49725func (s *TargetNotConnected) Message() string {
49726	if s.Message_ != nil {
49727		return *s.Message_
49728	}
49729	return ""
49730}
49731
49732// OrigErr always returns nil, satisfies awserr.Error interface.
49733func (s *TargetNotConnected) OrigErr() error {
49734	return nil
49735}
49736
49737func (s *TargetNotConnected) Error() string {
49738	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
49739}
49740
49741// Status code returns the HTTP status code for the request's response error.
49742func (s *TargetNotConnected) StatusCode() int {
49743	return s.RespMetadata.StatusCode
49744}
49745
49746// RequestID returns the service's response RequestID for request.
49747func (s *TargetNotConnected) RequestID() string {
49748	return s.RespMetadata.RequestID
49749}
49750
49751type TerminateSessionInput struct {
49752	_ struct{} `type:"structure"`
49753
49754	// The ID of the session to terminate.
49755	//
49756	// SessionId is a required field
49757	SessionId *string `min:"1" type:"string" required:"true"`
49758}
49759
49760// String returns the string representation
49761func (s TerminateSessionInput) String() string {
49762	return awsutil.Prettify(s)
49763}
49764
49765// GoString returns the string representation
49766func (s TerminateSessionInput) GoString() string {
49767	return s.String()
49768}
49769
49770// Validate inspects the fields of the type to determine if they are valid.
49771func (s *TerminateSessionInput) Validate() error {
49772	invalidParams := request.ErrInvalidParams{Context: "TerminateSessionInput"}
49773	if s.SessionId == nil {
49774		invalidParams.Add(request.NewErrParamRequired("SessionId"))
49775	}
49776	if s.SessionId != nil && len(*s.SessionId) < 1 {
49777		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
49778	}
49779
49780	if invalidParams.Len() > 0 {
49781		return invalidParams
49782	}
49783	return nil
49784}
49785
49786// SetSessionId sets the SessionId field's value.
49787func (s *TerminateSessionInput) SetSessionId(v string) *TerminateSessionInput {
49788	s.SessionId = &v
49789	return s
49790}
49791
49792type TerminateSessionOutput struct {
49793	_ struct{} `type:"structure"`
49794
49795	// The ID of the session that has been terminated.
49796	SessionId *string `min:"1" type:"string"`
49797}
49798
49799// String returns the string representation
49800func (s TerminateSessionOutput) String() string {
49801	return awsutil.Prettify(s)
49802}
49803
49804// GoString returns the string representation
49805func (s TerminateSessionOutput) GoString() string {
49806	return s.String()
49807}
49808
49809// SetSessionId sets the SessionId field's value.
49810func (s *TerminateSessionOutput) SetSessionId(v string) *TerminateSessionOutput {
49811	s.SessionId = &v
49812	return s
49813}
49814
49815// The Targets parameter includes too many tags. Remove one or more tags and
49816// try the command again.
49817type TooManyTagsError struct {
49818	_            struct{}                  `type:"structure"`
49819	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
49820
49821	Message_ *string `locationName:"message" type:"string"`
49822}
49823
49824// String returns the string representation
49825func (s TooManyTagsError) String() string {
49826	return awsutil.Prettify(s)
49827}
49828
49829// GoString returns the string representation
49830func (s TooManyTagsError) GoString() string {
49831	return s.String()
49832}
49833
49834func newErrorTooManyTagsError(v protocol.ResponseMetadata) error {
49835	return &TooManyTagsError{
49836		RespMetadata: v,
49837	}
49838}
49839
49840// Code returns the exception type name.
49841func (s *TooManyTagsError) Code() string {
49842	return "TooManyTagsError"
49843}
49844
49845// Message returns the exception's message.
49846func (s *TooManyTagsError) Message() string {
49847	if s.Message_ != nil {
49848		return *s.Message_
49849	}
49850	return ""
49851}
49852
49853// OrigErr always returns nil, satisfies awserr.Error interface.
49854func (s *TooManyTagsError) OrigErr() error {
49855	return nil
49856}
49857
49858func (s *TooManyTagsError) Error() string {
49859	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
49860}
49861
49862// Status code returns the HTTP status code for the request's response error.
49863func (s *TooManyTagsError) StatusCode() int {
49864	return s.RespMetadata.StatusCode
49865}
49866
49867// RequestID returns the service's response RequestID for request.
49868func (s *TooManyTagsError) RequestID() string {
49869	return s.RespMetadata.RequestID
49870}
49871
49872// There are concurrent updates for a resource that supports one update at a
49873// time.
49874type TooManyUpdates struct {
49875	_            struct{}                  `type:"structure"`
49876	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
49877
49878	Message_ *string `locationName:"Message" type:"string"`
49879}
49880
49881// String returns the string representation
49882func (s TooManyUpdates) String() string {
49883	return awsutil.Prettify(s)
49884}
49885
49886// GoString returns the string representation
49887func (s TooManyUpdates) GoString() string {
49888	return s.String()
49889}
49890
49891func newErrorTooManyUpdates(v protocol.ResponseMetadata) error {
49892	return &TooManyUpdates{
49893		RespMetadata: v,
49894	}
49895}
49896
49897// Code returns the exception type name.
49898func (s *TooManyUpdates) Code() string {
49899	return "TooManyUpdates"
49900}
49901
49902// Message returns the exception's message.
49903func (s *TooManyUpdates) Message() string {
49904	if s.Message_ != nil {
49905		return *s.Message_
49906	}
49907	return ""
49908}
49909
49910// OrigErr always returns nil, satisfies awserr.Error interface.
49911func (s *TooManyUpdates) OrigErr() error {
49912	return nil
49913}
49914
49915func (s *TooManyUpdates) Error() string {
49916	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
49917}
49918
49919// Status code returns the HTTP status code for the request's response error.
49920func (s *TooManyUpdates) StatusCode() int {
49921	return s.RespMetadata.StatusCode
49922}
49923
49924// RequestID returns the service's response RequestID for request.
49925func (s *TooManyUpdates) RequestID() string {
49926	return s.RespMetadata.RequestID
49927}
49928
49929// The size of inventory data has exceeded the total size limit for the resource.
49930type TotalSizeLimitExceededException struct {
49931	_            struct{}                  `type:"structure"`
49932	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
49933
49934	Message_ *string `locationName:"Message" type:"string"`
49935}
49936
49937// String returns the string representation
49938func (s TotalSizeLimitExceededException) String() string {
49939	return awsutil.Prettify(s)
49940}
49941
49942// GoString returns the string representation
49943func (s TotalSizeLimitExceededException) GoString() string {
49944	return s.String()
49945}
49946
49947func newErrorTotalSizeLimitExceededException(v protocol.ResponseMetadata) error {
49948	return &TotalSizeLimitExceededException{
49949		RespMetadata: v,
49950	}
49951}
49952
49953// Code returns the exception type name.
49954func (s *TotalSizeLimitExceededException) Code() string {
49955	return "TotalSizeLimitExceededException"
49956}
49957
49958// Message returns the exception's message.
49959func (s *TotalSizeLimitExceededException) Message() string {
49960	if s.Message_ != nil {
49961		return *s.Message_
49962	}
49963	return ""
49964}
49965
49966// OrigErr always returns nil, satisfies awserr.Error interface.
49967func (s *TotalSizeLimitExceededException) OrigErr() error {
49968	return nil
49969}
49970
49971func (s *TotalSizeLimitExceededException) Error() string {
49972	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
49973}
49974
49975// Status code returns the HTTP status code for the request's response error.
49976func (s *TotalSizeLimitExceededException) StatusCode() int {
49977	return s.RespMetadata.StatusCode
49978}
49979
49980// RequestID returns the service's response RequestID for request.
49981func (s *TotalSizeLimitExceededException) RequestID() string {
49982	return s.RespMetadata.RequestID
49983}
49984
49985type UnlabelParameterVersionInput struct {
49986	_ struct{} `type:"structure"`
49987
49988	// One or more labels to delete from the specified parameter version.
49989	//
49990	// Labels is a required field
49991	Labels []*string `min:"1" type:"list" required:"true"`
49992
49993	// The name of the parameter from which you want to delete one or more labels.
49994	//
49995	// Name is a required field
49996	Name *string `min:"1" type:"string" required:"true"`
49997
49998	// The specific version of the parameter which you want to delete one or more
49999	// labels from. If it isn't present, the call will fail.
50000	//
50001	// ParameterVersion is a required field
50002	ParameterVersion *int64 `type:"long" required:"true"`
50003}
50004
50005// String returns the string representation
50006func (s UnlabelParameterVersionInput) String() string {
50007	return awsutil.Prettify(s)
50008}
50009
50010// GoString returns the string representation
50011func (s UnlabelParameterVersionInput) GoString() string {
50012	return s.String()
50013}
50014
50015// Validate inspects the fields of the type to determine if they are valid.
50016func (s *UnlabelParameterVersionInput) Validate() error {
50017	invalidParams := request.ErrInvalidParams{Context: "UnlabelParameterVersionInput"}
50018	if s.Labels == nil {
50019		invalidParams.Add(request.NewErrParamRequired("Labels"))
50020	}
50021	if s.Labels != nil && len(s.Labels) < 1 {
50022		invalidParams.Add(request.NewErrParamMinLen("Labels", 1))
50023	}
50024	if s.Name == nil {
50025		invalidParams.Add(request.NewErrParamRequired("Name"))
50026	}
50027	if s.Name != nil && len(*s.Name) < 1 {
50028		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
50029	}
50030	if s.ParameterVersion == nil {
50031		invalidParams.Add(request.NewErrParamRequired("ParameterVersion"))
50032	}
50033
50034	if invalidParams.Len() > 0 {
50035		return invalidParams
50036	}
50037	return nil
50038}
50039
50040// SetLabels sets the Labels field's value.
50041func (s *UnlabelParameterVersionInput) SetLabels(v []*string) *UnlabelParameterVersionInput {
50042	s.Labels = v
50043	return s
50044}
50045
50046// SetName sets the Name field's value.
50047func (s *UnlabelParameterVersionInput) SetName(v string) *UnlabelParameterVersionInput {
50048	s.Name = &v
50049	return s
50050}
50051
50052// SetParameterVersion sets the ParameterVersion field's value.
50053func (s *UnlabelParameterVersionInput) SetParameterVersion(v int64) *UnlabelParameterVersionInput {
50054	s.ParameterVersion = &v
50055	return s
50056}
50057
50058type UnlabelParameterVersionOutput struct {
50059	_ struct{} `type:"structure"`
50060
50061	// The labels that aren't attached to the given parameter version.
50062	InvalidLabels []*string `min:"1" type:"list"`
50063
50064	// A list of all labels deleted from the parameter.
50065	RemovedLabels []*string `min:"1" type:"list"`
50066}
50067
50068// String returns the string representation
50069func (s UnlabelParameterVersionOutput) String() string {
50070	return awsutil.Prettify(s)
50071}
50072
50073// GoString returns the string representation
50074func (s UnlabelParameterVersionOutput) GoString() string {
50075	return s.String()
50076}
50077
50078// SetInvalidLabels sets the InvalidLabels field's value.
50079func (s *UnlabelParameterVersionOutput) SetInvalidLabels(v []*string) *UnlabelParameterVersionOutput {
50080	s.InvalidLabels = v
50081	return s
50082}
50083
50084// SetRemovedLabels sets the RemovedLabels field's value.
50085func (s *UnlabelParameterVersionOutput) SetRemovedLabels(v []*string) *UnlabelParameterVersionOutput {
50086	s.RemovedLabels = v
50087	return s
50088}
50089
50090// The calendar entry contained in the specified SSM document isn't supported.
50091type UnsupportedCalendarException struct {
50092	_            struct{}                  `type:"structure"`
50093	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
50094
50095	Message_ *string `locationName:"Message" type:"string"`
50096}
50097
50098// String returns the string representation
50099func (s UnsupportedCalendarException) String() string {
50100	return awsutil.Prettify(s)
50101}
50102
50103// GoString returns the string representation
50104func (s UnsupportedCalendarException) GoString() string {
50105	return s.String()
50106}
50107
50108func newErrorUnsupportedCalendarException(v protocol.ResponseMetadata) error {
50109	return &UnsupportedCalendarException{
50110		RespMetadata: v,
50111	}
50112}
50113
50114// Code returns the exception type name.
50115func (s *UnsupportedCalendarException) Code() string {
50116	return "UnsupportedCalendarException"
50117}
50118
50119// Message returns the exception's message.
50120func (s *UnsupportedCalendarException) Message() string {
50121	if s.Message_ != nil {
50122		return *s.Message_
50123	}
50124	return ""
50125}
50126
50127// OrigErr always returns nil, satisfies awserr.Error interface.
50128func (s *UnsupportedCalendarException) OrigErr() error {
50129	return nil
50130}
50131
50132func (s *UnsupportedCalendarException) Error() string {
50133	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
50134}
50135
50136// Status code returns the HTTP status code for the request's response error.
50137func (s *UnsupportedCalendarException) StatusCode() int {
50138	return s.RespMetadata.StatusCode
50139}
50140
50141// RequestID returns the service's response RequestID for request.
50142func (s *UnsupportedCalendarException) RequestID() string {
50143	return s.RespMetadata.RequestID
50144}
50145
50146// Patching for applications released by Microsoft is only available on EC2
50147// instances and advanced instances. To patch applications released by Microsoft
50148// on on-premises servers and VMs, you must enable advanced instances. For more
50149// information, see Enabling the advanced-instances tier (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances-advanced.html)
50150// in the Amazon Web Services Systems Manager User Guide.
50151type UnsupportedFeatureRequiredException struct {
50152	_            struct{}                  `type:"structure"`
50153	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
50154
50155	Message_ *string `locationName:"Message" type:"string"`
50156}
50157
50158// String returns the string representation
50159func (s UnsupportedFeatureRequiredException) String() string {
50160	return awsutil.Prettify(s)
50161}
50162
50163// GoString returns the string representation
50164func (s UnsupportedFeatureRequiredException) GoString() string {
50165	return s.String()
50166}
50167
50168func newErrorUnsupportedFeatureRequiredException(v protocol.ResponseMetadata) error {
50169	return &UnsupportedFeatureRequiredException{
50170		RespMetadata: v,
50171	}
50172}
50173
50174// Code returns the exception type name.
50175func (s *UnsupportedFeatureRequiredException) Code() string {
50176	return "UnsupportedFeatureRequiredException"
50177}
50178
50179// Message returns the exception's message.
50180func (s *UnsupportedFeatureRequiredException) Message() string {
50181	if s.Message_ != nil {
50182		return *s.Message_
50183	}
50184	return ""
50185}
50186
50187// OrigErr always returns nil, satisfies awserr.Error interface.
50188func (s *UnsupportedFeatureRequiredException) OrigErr() error {
50189	return nil
50190}
50191
50192func (s *UnsupportedFeatureRequiredException) Error() string {
50193	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
50194}
50195
50196// Status code returns the HTTP status code for the request's response error.
50197func (s *UnsupportedFeatureRequiredException) StatusCode() int {
50198	return s.RespMetadata.StatusCode
50199}
50200
50201// RequestID returns the service's response RequestID for request.
50202func (s *UnsupportedFeatureRequiredException) RequestID() string {
50203	return s.RespMetadata.RequestID
50204}
50205
50206// The Context attribute that you specified for the InventoryItem isn't allowed
50207// for this inventory type. You can only use the Context attribute with inventory
50208// types like AWS:ComplianceItem.
50209type UnsupportedInventoryItemContextException struct {
50210	_            struct{}                  `type:"structure"`
50211	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
50212
50213	Message_ *string `locationName:"Message" type:"string"`
50214
50215	TypeName *string `min:"1" type:"string"`
50216}
50217
50218// String returns the string representation
50219func (s UnsupportedInventoryItemContextException) String() string {
50220	return awsutil.Prettify(s)
50221}
50222
50223// GoString returns the string representation
50224func (s UnsupportedInventoryItemContextException) GoString() string {
50225	return s.String()
50226}
50227
50228func newErrorUnsupportedInventoryItemContextException(v protocol.ResponseMetadata) error {
50229	return &UnsupportedInventoryItemContextException{
50230		RespMetadata: v,
50231	}
50232}
50233
50234// Code returns the exception type name.
50235func (s *UnsupportedInventoryItemContextException) Code() string {
50236	return "UnsupportedInventoryItemContextException"
50237}
50238
50239// Message returns the exception's message.
50240func (s *UnsupportedInventoryItemContextException) Message() string {
50241	if s.Message_ != nil {
50242		return *s.Message_
50243	}
50244	return ""
50245}
50246
50247// OrigErr always returns nil, satisfies awserr.Error interface.
50248func (s *UnsupportedInventoryItemContextException) OrigErr() error {
50249	return nil
50250}
50251
50252func (s *UnsupportedInventoryItemContextException) Error() string {
50253	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
50254}
50255
50256// Status code returns the HTTP status code for the request's response error.
50257func (s *UnsupportedInventoryItemContextException) StatusCode() int {
50258	return s.RespMetadata.StatusCode
50259}
50260
50261// RequestID returns the service's response RequestID for request.
50262func (s *UnsupportedInventoryItemContextException) RequestID() string {
50263	return s.RespMetadata.RequestID
50264}
50265
50266// Inventory item type schema version has to match supported versions in the
50267// service. Check output of GetInventorySchema to see the available schema version
50268// for each type.
50269type UnsupportedInventorySchemaVersionException struct {
50270	_            struct{}                  `type:"structure"`
50271	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
50272
50273	Message_ *string `locationName:"Message" type:"string"`
50274}
50275
50276// String returns the string representation
50277func (s UnsupportedInventorySchemaVersionException) String() string {
50278	return awsutil.Prettify(s)
50279}
50280
50281// GoString returns the string representation
50282func (s UnsupportedInventorySchemaVersionException) GoString() string {
50283	return s.String()
50284}
50285
50286func newErrorUnsupportedInventorySchemaVersionException(v protocol.ResponseMetadata) error {
50287	return &UnsupportedInventorySchemaVersionException{
50288		RespMetadata: v,
50289	}
50290}
50291
50292// Code returns the exception type name.
50293func (s *UnsupportedInventorySchemaVersionException) Code() string {
50294	return "UnsupportedInventorySchemaVersionException"
50295}
50296
50297// Message returns the exception's message.
50298func (s *UnsupportedInventorySchemaVersionException) Message() string {
50299	if s.Message_ != nil {
50300		return *s.Message_
50301	}
50302	return ""
50303}
50304
50305// OrigErr always returns nil, satisfies awserr.Error interface.
50306func (s *UnsupportedInventorySchemaVersionException) OrigErr() error {
50307	return nil
50308}
50309
50310func (s *UnsupportedInventorySchemaVersionException) Error() string {
50311	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
50312}
50313
50314// Status code returns the HTTP status code for the request's response error.
50315func (s *UnsupportedInventorySchemaVersionException) StatusCode() int {
50316	return s.RespMetadata.StatusCode
50317}
50318
50319// RequestID returns the service's response RequestID for request.
50320func (s *UnsupportedInventorySchemaVersionException) RequestID() string {
50321	return s.RespMetadata.RequestID
50322}
50323
50324// The operating systems you specified isn't supported, or the operation isn't
50325// supported for the operating system.
50326type UnsupportedOperatingSystem struct {
50327	_            struct{}                  `type:"structure"`
50328	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
50329
50330	Message_ *string `locationName:"Message" type:"string"`
50331}
50332
50333// String returns the string representation
50334func (s UnsupportedOperatingSystem) String() string {
50335	return awsutil.Prettify(s)
50336}
50337
50338// GoString returns the string representation
50339func (s UnsupportedOperatingSystem) GoString() string {
50340	return s.String()
50341}
50342
50343func newErrorUnsupportedOperatingSystem(v protocol.ResponseMetadata) error {
50344	return &UnsupportedOperatingSystem{
50345		RespMetadata: v,
50346	}
50347}
50348
50349// Code returns the exception type name.
50350func (s *UnsupportedOperatingSystem) Code() string {
50351	return "UnsupportedOperatingSystem"
50352}
50353
50354// Message returns the exception's message.
50355func (s *UnsupportedOperatingSystem) Message() string {
50356	if s.Message_ != nil {
50357		return *s.Message_
50358	}
50359	return ""
50360}
50361
50362// OrigErr always returns nil, satisfies awserr.Error interface.
50363func (s *UnsupportedOperatingSystem) OrigErr() error {
50364	return nil
50365}
50366
50367func (s *UnsupportedOperatingSystem) Error() string {
50368	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
50369}
50370
50371// Status code returns the HTTP status code for the request's response error.
50372func (s *UnsupportedOperatingSystem) StatusCode() int {
50373	return s.RespMetadata.StatusCode
50374}
50375
50376// RequestID returns the service's response RequestID for request.
50377func (s *UnsupportedOperatingSystem) RequestID() string {
50378	return s.RespMetadata.RequestID
50379}
50380
50381// The parameter type isn't supported.
50382type UnsupportedParameterType struct {
50383	_            struct{}                  `type:"structure"`
50384	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
50385
50386	Message_ *string `locationName:"message" type:"string"`
50387}
50388
50389// String returns the string representation
50390func (s UnsupportedParameterType) String() string {
50391	return awsutil.Prettify(s)
50392}
50393
50394// GoString returns the string representation
50395func (s UnsupportedParameterType) GoString() string {
50396	return s.String()
50397}
50398
50399func newErrorUnsupportedParameterType(v protocol.ResponseMetadata) error {
50400	return &UnsupportedParameterType{
50401		RespMetadata: v,
50402	}
50403}
50404
50405// Code returns the exception type name.
50406func (s *UnsupportedParameterType) Code() string {
50407	return "UnsupportedParameterType"
50408}
50409
50410// Message returns the exception's message.
50411func (s *UnsupportedParameterType) Message() string {
50412	if s.Message_ != nil {
50413		return *s.Message_
50414	}
50415	return ""
50416}
50417
50418// OrigErr always returns nil, satisfies awserr.Error interface.
50419func (s *UnsupportedParameterType) OrigErr() error {
50420	return nil
50421}
50422
50423func (s *UnsupportedParameterType) Error() string {
50424	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
50425}
50426
50427// Status code returns the HTTP status code for the request's response error.
50428func (s *UnsupportedParameterType) StatusCode() int {
50429	return s.RespMetadata.StatusCode
50430}
50431
50432// RequestID returns the service's response RequestID for request.
50433func (s *UnsupportedParameterType) RequestID() string {
50434	return s.RespMetadata.RequestID
50435}
50436
50437// The document doesn't support the platform type of the given instance ID(s).
50438// For example, you sent an document for a Windows instance to a Linux instance.
50439type UnsupportedPlatformType struct {
50440	_            struct{}                  `type:"structure"`
50441	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
50442
50443	Message_ *string `locationName:"Message" type:"string"`
50444}
50445
50446// String returns the string representation
50447func (s UnsupportedPlatformType) String() string {
50448	return awsutil.Prettify(s)
50449}
50450
50451// GoString returns the string representation
50452func (s UnsupportedPlatformType) GoString() string {
50453	return s.String()
50454}
50455
50456func newErrorUnsupportedPlatformType(v protocol.ResponseMetadata) error {
50457	return &UnsupportedPlatformType{
50458		RespMetadata: v,
50459	}
50460}
50461
50462// Code returns the exception type name.
50463func (s *UnsupportedPlatformType) Code() string {
50464	return "UnsupportedPlatformType"
50465}
50466
50467// Message returns the exception's message.
50468func (s *UnsupportedPlatformType) Message() string {
50469	if s.Message_ != nil {
50470		return *s.Message_
50471	}
50472	return ""
50473}
50474
50475// OrigErr always returns nil, satisfies awserr.Error interface.
50476func (s *UnsupportedPlatformType) OrigErr() error {
50477	return nil
50478}
50479
50480func (s *UnsupportedPlatformType) Error() string {
50481	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
50482}
50483
50484// Status code returns the HTTP status code for the request's response error.
50485func (s *UnsupportedPlatformType) StatusCode() int {
50486	return s.RespMetadata.StatusCode
50487}
50488
50489// RequestID returns the service's response RequestID for request.
50490func (s *UnsupportedPlatformType) RequestID() string {
50491	return s.RespMetadata.RequestID
50492}
50493
50494type UpdateAssociationInput struct {
50495	_ struct{} `type:"structure"`
50496
50497	// By default, when you update an association, the system runs it immediately
50498	// after it is updated and then according to the schedule you specified. Specify
50499	// this option if you don't want an association to run immediately after you
50500	// update it. This parameter isn't supported for rate expressions.
50501	//
50502	// Also, if you specified this option when you created the association, you
50503	// can reset it. To do so, specify the no-apply-only-at-cron-interval parameter
50504	// when you update the association from the command line. This parameter forces
50505	// the association to run immediately after updating it and according to the
50506	// interval specified.
50507	ApplyOnlyAtCronInterval *bool `type:"boolean"`
50508
50509	// The ID of the association you want to update.
50510	//
50511	// AssociationId is a required field
50512	AssociationId *string `type:"string" required:"true"`
50513
50514	// The name of the association that you want to update.
50515	AssociationName *string `type:"string"`
50516
50517	// This parameter is provided for concurrency control purposes. You must specify
50518	// the latest association version in the service. If you want to ensure that
50519	// this request succeeds, either specify $LATEST, or omit this parameter.
50520	AssociationVersion *string `type:"string"`
50521
50522	// Specify the target for the association. This target is required for associations
50523	// that use an Automation runbook and target resources by using rate controls.
50524	// Automation is a capability of Amazon Web Services Systems Manager.
50525	AutomationTargetParameterName *string `min:"1" type:"string"`
50526
50527	// The names or Amazon Resource Names (ARNs) of the Change Calendar type documents
50528	// you want to gate your associations under. The associations only run when
50529	// that change calendar is open. For more information, see Amazon Web Services
50530	// Systems Manager Change Calendar (https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar).
50531	CalendarNames []*string `type:"list"`
50532
50533	// The severity level to assign to the association.
50534	ComplianceSeverity *string `type:"string" enum:"AssociationComplianceSeverity"`
50535
50536	// The document version you want update for the association.
50537	DocumentVersion *string `type:"string"`
50538
50539	// The maximum number of targets allowed to run the association at the same
50540	// time. You can specify a number, for example 10, or a percentage of the target
50541	// set, for example 10%. The default value is 100%, which means all targets
50542	// run the association at the same time.
50543	//
50544	// If a new instance starts and attempts to run an association while Systems
50545	// Manager is running MaxConcurrency associations, the association is allowed
50546	// to run. During the next association interval, the new instance will process
50547	// its association within the limit specified for MaxConcurrency.
50548	MaxConcurrency *string `min:"1" type:"string"`
50549
50550	// The number of errors that are allowed before the system stops sending requests
50551	// to run the association on additional targets. You can specify either an absolute
50552	// number of errors, for example 10, or a percentage of the target set, for
50553	// example 10%. If you specify 3, for example, the system stops sending requests
50554	// when the fourth error is received. If you specify 0, then the system stops
50555	// sending requests after the first error is returned. If you run an association
50556	// on 50 instances and set MaxError to 10%, then the system stops sending the
50557	// request when the sixth error is received.
50558	//
50559	// Executions that are already running an association when MaxErrors is reached
50560	// are allowed to complete, but some of these executions may fail as well. If
50561	// you need to ensure that there won't be more than max-errors failed executions,
50562	// set MaxConcurrency to 1 so that executions proceed one at a time.
50563	MaxErrors *string `min:"1" type:"string"`
50564
50565	// The name of the SSM Command document or Automation runbook that contains
50566	// the configuration information for the instance.
50567	//
50568	// You can specify Amazon Web Services-predefined documents, documents you created,
50569	// or a document that is shared with you from another account.
50570	//
50571	// For Systems Manager document (SSM document) that are shared with you from
50572	// other Amazon Web Services accounts, you must specify the complete SSM document
50573	// ARN, in the following format:
50574	//
50575	// arn:aws:ssm:region:account-id:document/document-name
50576	//
50577	// For example:
50578	//
50579	// arn:aws:ssm:us-east-2:12345678912:document/My-Shared-Document
50580	//
50581	// For Amazon Web Services-predefined documents and SSM documents you created
50582	// in your account, you only need to specify the document name. For example,
50583	// AWS-ApplyPatchBaseline or My-Document.
50584	Name *string `type:"string"`
50585
50586	// An S3 bucket where you want to store the results of this request.
50587	OutputLocation *InstanceAssociationOutputLocation `type:"structure"`
50588
50589	// The parameters you want to update for the association. If you create a parameter
50590	// using Parameter Store, a capability of Amazon Web Services Systems Manager,
50591	// you can reference the parameter using {{ssm:parameter-name}}.
50592	Parameters map[string][]*string `type:"map"`
50593
50594	// The cron expression used to schedule the association that you want to update.
50595	ScheduleExpression *string `min:"1" type:"string"`
50596
50597	// The mode for generating association compliance. You can specify AUTO or MANUAL.
50598	// In AUTO mode, the system uses the status of the association execution to
50599	// determine the compliance status. If the association execution runs successfully,
50600	// then the association is COMPLIANT. If the association execution doesn't run
50601	// successfully, the association is NON-COMPLIANT.
50602	//
50603	// In MANUAL mode, you must specify the AssociationId as a parameter for the
50604	// PutComplianceItems API operation. In this case, compliance data isn't managed
50605	// by State Manager, a capability of Amazon Web Services Systems Manager. It
50606	// is managed by your direct call to the PutComplianceItems API operation.
50607	//
50608	// By default, all associations use AUTO mode.
50609	SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"`
50610
50611	// A location is a combination of Amazon Web Services Regions and Amazon Web
50612	// Services accounts where you want to run the association. Use this action
50613	// to update an association in multiple Regions and multiple accounts.
50614	TargetLocations []*TargetLocation `min:"1" type:"list"`
50615
50616	// The targets of the association.
50617	Targets []*Target `type:"list"`
50618}
50619
50620// String returns the string representation
50621func (s UpdateAssociationInput) String() string {
50622	return awsutil.Prettify(s)
50623}
50624
50625// GoString returns the string representation
50626func (s UpdateAssociationInput) GoString() string {
50627	return s.String()
50628}
50629
50630// Validate inspects the fields of the type to determine if they are valid.
50631func (s *UpdateAssociationInput) Validate() error {
50632	invalidParams := request.ErrInvalidParams{Context: "UpdateAssociationInput"}
50633	if s.AssociationId == nil {
50634		invalidParams.Add(request.NewErrParamRequired("AssociationId"))
50635	}
50636	if s.AutomationTargetParameterName != nil && len(*s.AutomationTargetParameterName) < 1 {
50637		invalidParams.Add(request.NewErrParamMinLen("AutomationTargetParameterName", 1))
50638	}
50639	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
50640		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
50641	}
50642	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
50643		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
50644	}
50645	if s.ScheduleExpression != nil && len(*s.ScheduleExpression) < 1 {
50646		invalidParams.Add(request.NewErrParamMinLen("ScheduleExpression", 1))
50647	}
50648	if s.TargetLocations != nil && len(s.TargetLocations) < 1 {
50649		invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1))
50650	}
50651	if s.OutputLocation != nil {
50652		if err := s.OutputLocation.Validate(); err != nil {
50653			invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams))
50654		}
50655	}
50656	if s.TargetLocations != nil {
50657		for i, v := range s.TargetLocations {
50658			if v == nil {
50659				continue
50660			}
50661			if err := v.Validate(); err != nil {
50662				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TargetLocations", i), err.(request.ErrInvalidParams))
50663			}
50664		}
50665	}
50666	if s.Targets != nil {
50667		for i, v := range s.Targets {
50668			if v == nil {
50669				continue
50670			}
50671			if err := v.Validate(); err != nil {
50672				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
50673			}
50674		}
50675	}
50676
50677	if invalidParams.Len() > 0 {
50678		return invalidParams
50679	}
50680	return nil
50681}
50682
50683// SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value.
50684func (s *UpdateAssociationInput) SetApplyOnlyAtCronInterval(v bool) *UpdateAssociationInput {
50685	s.ApplyOnlyAtCronInterval = &v
50686	return s
50687}
50688
50689// SetAssociationId sets the AssociationId field's value.
50690func (s *UpdateAssociationInput) SetAssociationId(v string) *UpdateAssociationInput {
50691	s.AssociationId = &v
50692	return s
50693}
50694
50695// SetAssociationName sets the AssociationName field's value.
50696func (s *UpdateAssociationInput) SetAssociationName(v string) *UpdateAssociationInput {
50697	s.AssociationName = &v
50698	return s
50699}
50700
50701// SetAssociationVersion sets the AssociationVersion field's value.
50702func (s *UpdateAssociationInput) SetAssociationVersion(v string) *UpdateAssociationInput {
50703	s.AssociationVersion = &v
50704	return s
50705}
50706
50707// SetAutomationTargetParameterName sets the AutomationTargetParameterName field's value.
50708func (s *UpdateAssociationInput) SetAutomationTargetParameterName(v string) *UpdateAssociationInput {
50709	s.AutomationTargetParameterName = &v
50710	return s
50711}
50712
50713// SetCalendarNames sets the CalendarNames field's value.
50714func (s *UpdateAssociationInput) SetCalendarNames(v []*string) *UpdateAssociationInput {
50715	s.CalendarNames = v
50716	return s
50717}
50718
50719// SetComplianceSeverity sets the ComplianceSeverity field's value.
50720func (s *UpdateAssociationInput) SetComplianceSeverity(v string) *UpdateAssociationInput {
50721	s.ComplianceSeverity = &v
50722	return s
50723}
50724
50725// SetDocumentVersion sets the DocumentVersion field's value.
50726func (s *UpdateAssociationInput) SetDocumentVersion(v string) *UpdateAssociationInput {
50727	s.DocumentVersion = &v
50728	return s
50729}
50730
50731// SetMaxConcurrency sets the MaxConcurrency field's value.
50732func (s *UpdateAssociationInput) SetMaxConcurrency(v string) *UpdateAssociationInput {
50733	s.MaxConcurrency = &v
50734	return s
50735}
50736
50737// SetMaxErrors sets the MaxErrors field's value.
50738func (s *UpdateAssociationInput) SetMaxErrors(v string) *UpdateAssociationInput {
50739	s.MaxErrors = &v
50740	return s
50741}
50742
50743// SetName sets the Name field's value.
50744func (s *UpdateAssociationInput) SetName(v string) *UpdateAssociationInput {
50745	s.Name = &v
50746	return s
50747}
50748
50749// SetOutputLocation sets the OutputLocation field's value.
50750func (s *UpdateAssociationInput) SetOutputLocation(v *InstanceAssociationOutputLocation) *UpdateAssociationInput {
50751	s.OutputLocation = v
50752	return s
50753}
50754
50755// SetParameters sets the Parameters field's value.
50756func (s *UpdateAssociationInput) SetParameters(v map[string][]*string) *UpdateAssociationInput {
50757	s.Parameters = v
50758	return s
50759}
50760
50761// SetScheduleExpression sets the ScheduleExpression field's value.
50762func (s *UpdateAssociationInput) SetScheduleExpression(v string) *UpdateAssociationInput {
50763	s.ScheduleExpression = &v
50764	return s
50765}
50766
50767// SetSyncCompliance sets the SyncCompliance field's value.
50768func (s *UpdateAssociationInput) SetSyncCompliance(v string) *UpdateAssociationInput {
50769	s.SyncCompliance = &v
50770	return s
50771}
50772
50773// SetTargetLocations sets the TargetLocations field's value.
50774func (s *UpdateAssociationInput) SetTargetLocations(v []*TargetLocation) *UpdateAssociationInput {
50775	s.TargetLocations = v
50776	return s
50777}
50778
50779// SetTargets sets the Targets field's value.
50780func (s *UpdateAssociationInput) SetTargets(v []*Target) *UpdateAssociationInput {
50781	s.Targets = v
50782	return s
50783}
50784
50785type UpdateAssociationOutput struct {
50786	_ struct{} `type:"structure"`
50787
50788	// The description of the association that was updated.
50789	AssociationDescription *AssociationDescription `type:"structure"`
50790}
50791
50792// String returns the string representation
50793func (s UpdateAssociationOutput) String() string {
50794	return awsutil.Prettify(s)
50795}
50796
50797// GoString returns the string representation
50798func (s UpdateAssociationOutput) GoString() string {
50799	return s.String()
50800}
50801
50802// SetAssociationDescription sets the AssociationDescription field's value.
50803func (s *UpdateAssociationOutput) SetAssociationDescription(v *AssociationDescription) *UpdateAssociationOutput {
50804	s.AssociationDescription = v
50805	return s
50806}
50807
50808type UpdateAssociationStatusInput struct {
50809	_ struct{} `type:"structure"`
50810
50811	// The association status.
50812	//
50813	// AssociationStatus is a required field
50814	AssociationStatus *AssociationStatus `type:"structure" required:"true"`
50815
50816	// The instance ID.
50817	//
50818	// InstanceId is a required field
50819	InstanceId *string `type:"string" required:"true"`
50820
50821	// The name of the SSM document.
50822	//
50823	// Name is a required field
50824	Name *string `type:"string" required:"true"`
50825}
50826
50827// String returns the string representation
50828func (s UpdateAssociationStatusInput) String() string {
50829	return awsutil.Prettify(s)
50830}
50831
50832// GoString returns the string representation
50833func (s UpdateAssociationStatusInput) GoString() string {
50834	return s.String()
50835}
50836
50837// Validate inspects the fields of the type to determine if they are valid.
50838func (s *UpdateAssociationStatusInput) Validate() error {
50839	invalidParams := request.ErrInvalidParams{Context: "UpdateAssociationStatusInput"}
50840	if s.AssociationStatus == nil {
50841		invalidParams.Add(request.NewErrParamRequired("AssociationStatus"))
50842	}
50843	if s.InstanceId == nil {
50844		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
50845	}
50846	if s.Name == nil {
50847		invalidParams.Add(request.NewErrParamRequired("Name"))
50848	}
50849	if s.AssociationStatus != nil {
50850		if err := s.AssociationStatus.Validate(); err != nil {
50851			invalidParams.AddNested("AssociationStatus", err.(request.ErrInvalidParams))
50852		}
50853	}
50854
50855	if invalidParams.Len() > 0 {
50856		return invalidParams
50857	}
50858	return nil
50859}
50860
50861// SetAssociationStatus sets the AssociationStatus field's value.
50862func (s *UpdateAssociationStatusInput) SetAssociationStatus(v *AssociationStatus) *UpdateAssociationStatusInput {
50863	s.AssociationStatus = v
50864	return s
50865}
50866
50867// SetInstanceId sets the InstanceId field's value.
50868func (s *UpdateAssociationStatusInput) SetInstanceId(v string) *UpdateAssociationStatusInput {
50869	s.InstanceId = &v
50870	return s
50871}
50872
50873// SetName sets the Name field's value.
50874func (s *UpdateAssociationStatusInput) SetName(v string) *UpdateAssociationStatusInput {
50875	s.Name = &v
50876	return s
50877}
50878
50879type UpdateAssociationStatusOutput struct {
50880	_ struct{} `type:"structure"`
50881
50882	// Information about the association.
50883	AssociationDescription *AssociationDescription `type:"structure"`
50884}
50885
50886// String returns the string representation
50887func (s UpdateAssociationStatusOutput) String() string {
50888	return awsutil.Prettify(s)
50889}
50890
50891// GoString returns the string representation
50892func (s UpdateAssociationStatusOutput) GoString() string {
50893	return s.String()
50894}
50895
50896// SetAssociationDescription sets the AssociationDescription field's value.
50897func (s *UpdateAssociationStatusOutput) SetAssociationDescription(v *AssociationDescription) *UpdateAssociationStatusOutput {
50898	s.AssociationDescription = v
50899	return s
50900}
50901
50902type UpdateDocumentDefaultVersionInput struct {
50903	_ struct{} `type:"structure"`
50904
50905	// The version of a custom document that you want to set as the default version.
50906	//
50907	// DocumentVersion is a required field
50908	DocumentVersion *string `type:"string" required:"true"`
50909
50910	// The name of a custom document that you want to set as the default version.
50911	//
50912	// Name is a required field
50913	Name *string `type:"string" required:"true"`
50914}
50915
50916// String returns the string representation
50917func (s UpdateDocumentDefaultVersionInput) String() string {
50918	return awsutil.Prettify(s)
50919}
50920
50921// GoString returns the string representation
50922func (s UpdateDocumentDefaultVersionInput) GoString() string {
50923	return s.String()
50924}
50925
50926// Validate inspects the fields of the type to determine if they are valid.
50927func (s *UpdateDocumentDefaultVersionInput) Validate() error {
50928	invalidParams := request.ErrInvalidParams{Context: "UpdateDocumentDefaultVersionInput"}
50929	if s.DocumentVersion == nil {
50930		invalidParams.Add(request.NewErrParamRequired("DocumentVersion"))
50931	}
50932	if s.Name == nil {
50933		invalidParams.Add(request.NewErrParamRequired("Name"))
50934	}
50935
50936	if invalidParams.Len() > 0 {
50937		return invalidParams
50938	}
50939	return nil
50940}
50941
50942// SetDocumentVersion sets the DocumentVersion field's value.
50943func (s *UpdateDocumentDefaultVersionInput) SetDocumentVersion(v string) *UpdateDocumentDefaultVersionInput {
50944	s.DocumentVersion = &v
50945	return s
50946}
50947
50948// SetName sets the Name field's value.
50949func (s *UpdateDocumentDefaultVersionInput) SetName(v string) *UpdateDocumentDefaultVersionInput {
50950	s.Name = &v
50951	return s
50952}
50953
50954type UpdateDocumentDefaultVersionOutput struct {
50955	_ struct{} `type:"structure"`
50956
50957	// The description of a custom document that you want to set as the default
50958	// version.
50959	Description *DocumentDefaultVersionDescription `type:"structure"`
50960}
50961
50962// String returns the string representation
50963func (s UpdateDocumentDefaultVersionOutput) String() string {
50964	return awsutil.Prettify(s)
50965}
50966
50967// GoString returns the string representation
50968func (s UpdateDocumentDefaultVersionOutput) GoString() string {
50969	return s.String()
50970}
50971
50972// SetDescription sets the Description field's value.
50973func (s *UpdateDocumentDefaultVersionOutput) SetDescription(v *DocumentDefaultVersionDescription) *UpdateDocumentDefaultVersionOutput {
50974	s.Description = v
50975	return s
50976}
50977
50978type UpdateDocumentInput struct {
50979	_ struct{} `type:"structure"`
50980
50981	// A list of key-value pairs that describe attachments to a version of a document.
50982	Attachments []*AttachmentsSource `type:"list"`
50983
50984	// A valid JSON or YAML string.
50985	//
50986	// Content is a required field
50987	Content *string `min:"1" type:"string" required:"true"`
50988
50989	// The friendly name of the SSM document that you want to update. This value
50990	// can differ for each version of the document. If you don't specify a value
50991	// for this parameter in your request, the existing value is applied to the
50992	// new document version.
50993	DisplayName *string `type:"string"`
50994
50995	// Specify the document format for the new document version. Systems Manager
50996	// supports JSON and YAML documents. JSON is the default format.
50997	DocumentFormat *string `type:"string" enum:"DocumentFormat"`
50998
50999	// The version of the document that you want to update. Currently, Systems Manager
51000	// supports updating only the latest version of the document. You can specify
51001	// the version number of the latest version or use the $LATEST variable.
51002	DocumentVersion *string `type:"string"`
51003
51004	// The name of the SSM document that you want to update.
51005	//
51006	// Name is a required field
51007	Name *string `type:"string" required:"true"`
51008
51009	// Specify a new target type for the document.
51010	TargetType *string `type:"string"`
51011
51012	// An optional field specifying the version of the artifact you are updating
51013	// with the document. For example, "Release 12, Update 6". This value is unique
51014	// across all versions of a document, and can't be changed.
51015	VersionName *string `type:"string"`
51016}
51017
51018// String returns the string representation
51019func (s UpdateDocumentInput) String() string {
51020	return awsutil.Prettify(s)
51021}
51022
51023// GoString returns the string representation
51024func (s UpdateDocumentInput) GoString() string {
51025	return s.String()
51026}
51027
51028// Validate inspects the fields of the type to determine if they are valid.
51029func (s *UpdateDocumentInput) Validate() error {
51030	invalidParams := request.ErrInvalidParams{Context: "UpdateDocumentInput"}
51031	if s.Content == nil {
51032		invalidParams.Add(request.NewErrParamRequired("Content"))
51033	}
51034	if s.Content != nil && len(*s.Content) < 1 {
51035		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
51036	}
51037	if s.Name == nil {
51038		invalidParams.Add(request.NewErrParamRequired("Name"))
51039	}
51040	if s.Attachments != nil {
51041		for i, v := range s.Attachments {
51042			if v == nil {
51043				continue
51044			}
51045			if err := v.Validate(); err != nil {
51046				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attachments", i), err.(request.ErrInvalidParams))
51047			}
51048		}
51049	}
51050
51051	if invalidParams.Len() > 0 {
51052		return invalidParams
51053	}
51054	return nil
51055}
51056
51057// SetAttachments sets the Attachments field's value.
51058func (s *UpdateDocumentInput) SetAttachments(v []*AttachmentsSource) *UpdateDocumentInput {
51059	s.Attachments = v
51060	return s
51061}
51062
51063// SetContent sets the Content field's value.
51064func (s *UpdateDocumentInput) SetContent(v string) *UpdateDocumentInput {
51065	s.Content = &v
51066	return s
51067}
51068
51069// SetDisplayName sets the DisplayName field's value.
51070func (s *UpdateDocumentInput) SetDisplayName(v string) *UpdateDocumentInput {
51071	s.DisplayName = &v
51072	return s
51073}
51074
51075// SetDocumentFormat sets the DocumentFormat field's value.
51076func (s *UpdateDocumentInput) SetDocumentFormat(v string) *UpdateDocumentInput {
51077	s.DocumentFormat = &v
51078	return s
51079}
51080
51081// SetDocumentVersion sets the DocumentVersion field's value.
51082func (s *UpdateDocumentInput) SetDocumentVersion(v string) *UpdateDocumentInput {
51083	s.DocumentVersion = &v
51084	return s
51085}
51086
51087// SetName sets the Name field's value.
51088func (s *UpdateDocumentInput) SetName(v string) *UpdateDocumentInput {
51089	s.Name = &v
51090	return s
51091}
51092
51093// SetTargetType sets the TargetType field's value.
51094func (s *UpdateDocumentInput) SetTargetType(v string) *UpdateDocumentInput {
51095	s.TargetType = &v
51096	return s
51097}
51098
51099// SetVersionName sets the VersionName field's value.
51100func (s *UpdateDocumentInput) SetVersionName(v string) *UpdateDocumentInput {
51101	s.VersionName = &v
51102	return s
51103}
51104
51105type UpdateDocumentMetadataInput struct {
51106	_ struct{} `type:"structure"`
51107
51108	// The change template review details to update.
51109	//
51110	// DocumentReviews is a required field
51111	DocumentReviews *DocumentReviews `type:"structure" required:"true"`
51112
51113	// The version of a change template in which to update approval metadata.
51114	DocumentVersion *string `type:"string"`
51115
51116	// The name of the change template for which a version's metadata is to be updated.
51117	//
51118	// Name is a required field
51119	Name *string `type:"string" required:"true"`
51120}
51121
51122// String returns the string representation
51123func (s UpdateDocumentMetadataInput) String() string {
51124	return awsutil.Prettify(s)
51125}
51126
51127// GoString returns the string representation
51128func (s UpdateDocumentMetadataInput) GoString() string {
51129	return s.String()
51130}
51131
51132// Validate inspects the fields of the type to determine if they are valid.
51133func (s *UpdateDocumentMetadataInput) Validate() error {
51134	invalidParams := request.ErrInvalidParams{Context: "UpdateDocumentMetadataInput"}
51135	if s.DocumentReviews == nil {
51136		invalidParams.Add(request.NewErrParamRequired("DocumentReviews"))
51137	}
51138	if s.Name == nil {
51139		invalidParams.Add(request.NewErrParamRequired("Name"))
51140	}
51141	if s.DocumentReviews != nil {
51142		if err := s.DocumentReviews.Validate(); err != nil {
51143			invalidParams.AddNested("DocumentReviews", err.(request.ErrInvalidParams))
51144		}
51145	}
51146
51147	if invalidParams.Len() > 0 {
51148		return invalidParams
51149	}
51150	return nil
51151}
51152
51153// SetDocumentReviews sets the DocumentReviews field's value.
51154func (s *UpdateDocumentMetadataInput) SetDocumentReviews(v *DocumentReviews) *UpdateDocumentMetadataInput {
51155	s.DocumentReviews = v
51156	return s
51157}
51158
51159// SetDocumentVersion sets the DocumentVersion field's value.
51160func (s *UpdateDocumentMetadataInput) SetDocumentVersion(v string) *UpdateDocumentMetadataInput {
51161	s.DocumentVersion = &v
51162	return s
51163}
51164
51165// SetName sets the Name field's value.
51166func (s *UpdateDocumentMetadataInput) SetName(v string) *UpdateDocumentMetadataInput {
51167	s.Name = &v
51168	return s
51169}
51170
51171type UpdateDocumentMetadataOutput struct {
51172	_ struct{} `type:"structure"`
51173}
51174
51175// String returns the string representation
51176func (s UpdateDocumentMetadataOutput) String() string {
51177	return awsutil.Prettify(s)
51178}
51179
51180// GoString returns the string representation
51181func (s UpdateDocumentMetadataOutput) GoString() string {
51182	return s.String()
51183}
51184
51185type UpdateDocumentOutput struct {
51186	_ struct{} `type:"structure"`
51187
51188	// A description of the document that was updated.
51189	DocumentDescription *DocumentDescription `type:"structure"`
51190}
51191
51192// String returns the string representation
51193func (s UpdateDocumentOutput) String() string {
51194	return awsutil.Prettify(s)
51195}
51196
51197// GoString returns the string representation
51198func (s UpdateDocumentOutput) GoString() string {
51199	return s.String()
51200}
51201
51202// SetDocumentDescription sets the DocumentDescription field's value.
51203func (s *UpdateDocumentOutput) SetDocumentDescription(v *DocumentDescription) *UpdateDocumentOutput {
51204	s.DocumentDescription = v
51205	return s
51206}
51207
51208type UpdateMaintenanceWindowInput struct {
51209	_ struct{} `type:"structure"`
51210
51211	// Whether targets must be registered with the maintenance window before tasks
51212	// can be defined for those targets.
51213	AllowUnassociatedTargets *bool `type:"boolean"`
51214
51215	// The number of hours before the end of the maintenance window that Amazon
51216	// Web Services Systems Manager stops scheduling new tasks for execution.
51217	Cutoff *int64 `type:"integer"`
51218
51219	// An optional description for the update request.
51220	Description *string `min:"1" type:"string" sensitive:"true"`
51221
51222	// The duration of the maintenance window in hours.
51223	Duration *int64 `min:"1" type:"integer"`
51224
51225	// Whether the maintenance window is enabled.
51226	Enabled *bool `type:"boolean"`
51227
51228	// The date and time, in ISO-8601 Extended format, for when you want the maintenance
51229	// window to become inactive. EndDate allows you to set a date and time in the
51230	// future when the maintenance window will no longer run.
51231	EndDate *string `type:"string"`
51232
51233	// The name of the maintenance window.
51234	Name *string `min:"3" type:"string"`
51235
51236	// If True, then all fields that are required by the CreateMaintenanceWindow
51237	// operation are also required for this API request. Optional fields that aren't
51238	// specified are set to null.
51239	Replace *bool `type:"boolean"`
51240
51241	// The schedule of the maintenance window in the form of a cron or rate expression.
51242	Schedule *string `min:"1" type:"string"`
51243
51244	// The number of days to wait after the date and time specified by a cron expression
51245	// before running the maintenance window.
51246	//
51247	// For example, the following cron expression schedules a maintenance window
51248	// to run the third Tuesday of every month at 11:30 PM.
51249	//
51250	// cron(30 23 ? * TUE#3 *)
51251	//
51252	// If the schedule offset is 2, the maintenance window won't run until two days
51253	// later.
51254	ScheduleOffset *int64 `min:"1" type:"integer"`
51255
51256	// The time zone that the scheduled maintenance window executions are based
51257	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
51258	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
51259	// (https://www.iana.org/time-zones) on the IANA website.
51260	ScheduleTimezone *string `type:"string"`
51261
51262	// The time zone that the scheduled maintenance window executions are based
51263	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
51264	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
51265	// (https://www.iana.org/time-zones) on the IANA website.
51266	StartDate *string `type:"string"`
51267
51268	// The ID of the maintenance window to update.
51269	//
51270	// WindowId is a required field
51271	WindowId *string `min:"20" type:"string" required:"true"`
51272}
51273
51274// String returns the string representation
51275func (s UpdateMaintenanceWindowInput) String() string {
51276	return awsutil.Prettify(s)
51277}
51278
51279// GoString returns the string representation
51280func (s UpdateMaintenanceWindowInput) GoString() string {
51281	return s.String()
51282}
51283
51284// Validate inspects the fields of the type to determine if they are valid.
51285func (s *UpdateMaintenanceWindowInput) Validate() error {
51286	invalidParams := request.ErrInvalidParams{Context: "UpdateMaintenanceWindowInput"}
51287	if s.Description != nil && len(*s.Description) < 1 {
51288		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
51289	}
51290	if s.Duration != nil && *s.Duration < 1 {
51291		invalidParams.Add(request.NewErrParamMinValue("Duration", 1))
51292	}
51293	if s.Name != nil && len(*s.Name) < 3 {
51294		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
51295	}
51296	if s.Schedule != nil && len(*s.Schedule) < 1 {
51297		invalidParams.Add(request.NewErrParamMinLen("Schedule", 1))
51298	}
51299	if s.ScheduleOffset != nil && *s.ScheduleOffset < 1 {
51300		invalidParams.Add(request.NewErrParamMinValue("ScheduleOffset", 1))
51301	}
51302	if s.WindowId == nil {
51303		invalidParams.Add(request.NewErrParamRequired("WindowId"))
51304	}
51305	if s.WindowId != nil && len(*s.WindowId) < 20 {
51306		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
51307	}
51308
51309	if invalidParams.Len() > 0 {
51310		return invalidParams
51311	}
51312	return nil
51313}
51314
51315// SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
51316func (s *UpdateMaintenanceWindowInput) SetAllowUnassociatedTargets(v bool) *UpdateMaintenanceWindowInput {
51317	s.AllowUnassociatedTargets = &v
51318	return s
51319}
51320
51321// SetCutoff sets the Cutoff field's value.
51322func (s *UpdateMaintenanceWindowInput) SetCutoff(v int64) *UpdateMaintenanceWindowInput {
51323	s.Cutoff = &v
51324	return s
51325}
51326
51327// SetDescription sets the Description field's value.
51328func (s *UpdateMaintenanceWindowInput) SetDescription(v string) *UpdateMaintenanceWindowInput {
51329	s.Description = &v
51330	return s
51331}
51332
51333// SetDuration sets the Duration field's value.
51334func (s *UpdateMaintenanceWindowInput) SetDuration(v int64) *UpdateMaintenanceWindowInput {
51335	s.Duration = &v
51336	return s
51337}
51338
51339// SetEnabled sets the Enabled field's value.
51340func (s *UpdateMaintenanceWindowInput) SetEnabled(v bool) *UpdateMaintenanceWindowInput {
51341	s.Enabled = &v
51342	return s
51343}
51344
51345// SetEndDate sets the EndDate field's value.
51346func (s *UpdateMaintenanceWindowInput) SetEndDate(v string) *UpdateMaintenanceWindowInput {
51347	s.EndDate = &v
51348	return s
51349}
51350
51351// SetName sets the Name field's value.
51352func (s *UpdateMaintenanceWindowInput) SetName(v string) *UpdateMaintenanceWindowInput {
51353	s.Name = &v
51354	return s
51355}
51356
51357// SetReplace sets the Replace field's value.
51358func (s *UpdateMaintenanceWindowInput) SetReplace(v bool) *UpdateMaintenanceWindowInput {
51359	s.Replace = &v
51360	return s
51361}
51362
51363// SetSchedule sets the Schedule field's value.
51364func (s *UpdateMaintenanceWindowInput) SetSchedule(v string) *UpdateMaintenanceWindowInput {
51365	s.Schedule = &v
51366	return s
51367}
51368
51369// SetScheduleOffset sets the ScheduleOffset field's value.
51370func (s *UpdateMaintenanceWindowInput) SetScheduleOffset(v int64) *UpdateMaintenanceWindowInput {
51371	s.ScheduleOffset = &v
51372	return s
51373}
51374
51375// SetScheduleTimezone sets the ScheduleTimezone field's value.
51376func (s *UpdateMaintenanceWindowInput) SetScheduleTimezone(v string) *UpdateMaintenanceWindowInput {
51377	s.ScheduleTimezone = &v
51378	return s
51379}
51380
51381// SetStartDate sets the StartDate field's value.
51382func (s *UpdateMaintenanceWindowInput) SetStartDate(v string) *UpdateMaintenanceWindowInput {
51383	s.StartDate = &v
51384	return s
51385}
51386
51387// SetWindowId sets the WindowId field's value.
51388func (s *UpdateMaintenanceWindowInput) SetWindowId(v string) *UpdateMaintenanceWindowInput {
51389	s.WindowId = &v
51390	return s
51391}
51392
51393type UpdateMaintenanceWindowOutput struct {
51394	_ struct{} `type:"structure"`
51395
51396	// Whether targets must be registered with the maintenance window before tasks
51397	// can be defined for those targets.
51398	AllowUnassociatedTargets *bool `type:"boolean"`
51399
51400	// The number of hours before the end of the maintenance window that Amazon
51401	// Web Services Systems Manager stops scheduling new tasks for execution.
51402	Cutoff *int64 `type:"integer"`
51403
51404	// An optional description of the update.
51405	Description *string `min:"1" type:"string" sensitive:"true"`
51406
51407	// The duration of the maintenance window in hours.
51408	Duration *int64 `min:"1" type:"integer"`
51409
51410	// Whether the maintenance window is enabled.
51411	Enabled *bool `type:"boolean"`
51412
51413	// The date and time, in ISO-8601 Extended format, for when the maintenance
51414	// window is scheduled to become inactive. The maintenance window won't run
51415	// after this specified time.
51416	EndDate *string `type:"string"`
51417
51418	// The name of the maintenance window.
51419	Name *string `min:"3" type:"string"`
51420
51421	// The schedule of the maintenance window in the form of a cron or rate expression.
51422	Schedule *string `min:"1" type:"string"`
51423
51424	// The number of days to wait to run a maintenance window after the scheduled
51425	// cron expression date and time.
51426	ScheduleOffset *int64 `min:"1" type:"integer"`
51427
51428	// The time zone that the scheduled maintenance window executions are based
51429	// on, in Internet Assigned Numbers Authority (IANA) format. For example: "America/Los_Angeles",
51430	// "UTC", or "Asia/Seoul". For more information, see the Time Zone Database
51431	// (https://www.iana.org/time-zones) on the IANA website.
51432	ScheduleTimezone *string `type:"string"`
51433
51434	// The date and time, in ISO-8601 Extended format, for when the maintenance
51435	// window is scheduled to become active. The maintenance window won't run before
51436	// this specified time.
51437	StartDate *string `type:"string"`
51438
51439	// The ID of the created maintenance window.
51440	WindowId *string `min:"20" type:"string"`
51441}
51442
51443// String returns the string representation
51444func (s UpdateMaintenanceWindowOutput) String() string {
51445	return awsutil.Prettify(s)
51446}
51447
51448// GoString returns the string representation
51449func (s UpdateMaintenanceWindowOutput) GoString() string {
51450	return s.String()
51451}
51452
51453// SetAllowUnassociatedTargets sets the AllowUnassociatedTargets field's value.
51454func (s *UpdateMaintenanceWindowOutput) SetAllowUnassociatedTargets(v bool) *UpdateMaintenanceWindowOutput {
51455	s.AllowUnassociatedTargets = &v
51456	return s
51457}
51458
51459// SetCutoff sets the Cutoff field's value.
51460func (s *UpdateMaintenanceWindowOutput) SetCutoff(v int64) *UpdateMaintenanceWindowOutput {
51461	s.Cutoff = &v
51462	return s
51463}
51464
51465// SetDescription sets the Description field's value.
51466func (s *UpdateMaintenanceWindowOutput) SetDescription(v string) *UpdateMaintenanceWindowOutput {
51467	s.Description = &v
51468	return s
51469}
51470
51471// SetDuration sets the Duration field's value.
51472func (s *UpdateMaintenanceWindowOutput) SetDuration(v int64) *UpdateMaintenanceWindowOutput {
51473	s.Duration = &v
51474	return s
51475}
51476
51477// SetEnabled sets the Enabled field's value.
51478func (s *UpdateMaintenanceWindowOutput) SetEnabled(v bool) *UpdateMaintenanceWindowOutput {
51479	s.Enabled = &v
51480	return s
51481}
51482
51483// SetEndDate sets the EndDate field's value.
51484func (s *UpdateMaintenanceWindowOutput) SetEndDate(v string) *UpdateMaintenanceWindowOutput {
51485	s.EndDate = &v
51486	return s
51487}
51488
51489// SetName sets the Name field's value.
51490func (s *UpdateMaintenanceWindowOutput) SetName(v string) *UpdateMaintenanceWindowOutput {
51491	s.Name = &v
51492	return s
51493}
51494
51495// SetSchedule sets the Schedule field's value.
51496func (s *UpdateMaintenanceWindowOutput) SetSchedule(v string) *UpdateMaintenanceWindowOutput {
51497	s.Schedule = &v
51498	return s
51499}
51500
51501// SetScheduleOffset sets the ScheduleOffset field's value.
51502func (s *UpdateMaintenanceWindowOutput) SetScheduleOffset(v int64) *UpdateMaintenanceWindowOutput {
51503	s.ScheduleOffset = &v
51504	return s
51505}
51506
51507// SetScheduleTimezone sets the ScheduleTimezone field's value.
51508func (s *UpdateMaintenanceWindowOutput) SetScheduleTimezone(v string) *UpdateMaintenanceWindowOutput {
51509	s.ScheduleTimezone = &v
51510	return s
51511}
51512
51513// SetStartDate sets the StartDate field's value.
51514func (s *UpdateMaintenanceWindowOutput) SetStartDate(v string) *UpdateMaintenanceWindowOutput {
51515	s.StartDate = &v
51516	return s
51517}
51518
51519// SetWindowId sets the WindowId field's value.
51520func (s *UpdateMaintenanceWindowOutput) SetWindowId(v string) *UpdateMaintenanceWindowOutput {
51521	s.WindowId = &v
51522	return s
51523}
51524
51525type UpdateMaintenanceWindowTargetInput struct {
51526	_ struct{} `type:"structure"`
51527
51528	// An optional description for the update.
51529	Description *string `min:"1" type:"string" sensitive:"true"`
51530
51531	// A name for the update.
51532	Name *string `min:"3" type:"string"`
51533
51534	// User-provided value that will be included in any Amazon CloudWatch Events
51535	// events raised while running tasks for these targets in this maintenance window.
51536	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
51537
51538	// If True, then all fields that are required by the RegisterTargetWithMaintenanceWindow
51539	// operation are also required for this API request. Optional fields that aren't
51540	// specified are set to null.
51541	Replace *bool `type:"boolean"`
51542
51543	// The targets to add or replace.
51544	Targets []*Target `type:"list"`
51545
51546	// The maintenance window ID with which to modify the target.
51547	//
51548	// WindowId is a required field
51549	WindowId *string `min:"20" type:"string" required:"true"`
51550
51551	// The target ID to modify.
51552	//
51553	// WindowTargetId is a required field
51554	WindowTargetId *string `min:"36" type:"string" required:"true"`
51555}
51556
51557// String returns the string representation
51558func (s UpdateMaintenanceWindowTargetInput) String() string {
51559	return awsutil.Prettify(s)
51560}
51561
51562// GoString returns the string representation
51563func (s UpdateMaintenanceWindowTargetInput) GoString() string {
51564	return s.String()
51565}
51566
51567// Validate inspects the fields of the type to determine if they are valid.
51568func (s *UpdateMaintenanceWindowTargetInput) Validate() error {
51569	invalidParams := request.ErrInvalidParams{Context: "UpdateMaintenanceWindowTargetInput"}
51570	if s.Description != nil && len(*s.Description) < 1 {
51571		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
51572	}
51573	if s.Name != nil && len(*s.Name) < 3 {
51574		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
51575	}
51576	if s.OwnerInformation != nil && len(*s.OwnerInformation) < 1 {
51577		invalidParams.Add(request.NewErrParamMinLen("OwnerInformation", 1))
51578	}
51579	if s.WindowId == nil {
51580		invalidParams.Add(request.NewErrParamRequired("WindowId"))
51581	}
51582	if s.WindowId != nil && len(*s.WindowId) < 20 {
51583		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
51584	}
51585	if s.WindowTargetId == nil {
51586		invalidParams.Add(request.NewErrParamRequired("WindowTargetId"))
51587	}
51588	if s.WindowTargetId != nil && len(*s.WindowTargetId) < 36 {
51589		invalidParams.Add(request.NewErrParamMinLen("WindowTargetId", 36))
51590	}
51591	if s.Targets != nil {
51592		for i, v := range s.Targets {
51593			if v == nil {
51594				continue
51595			}
51596			if err := v.Validate(); err != nil {
51597				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
51598			}
51599		}
51600	}
51601
51602	if invalidParams.Len() > 0 {
51603		return invalidParams
51604	}
51605	return nil
51606}
51607
51608// SetDescription sets the Description field's value.
51609func (s *UpdateMaintenanceWindowTargetInput) SetDescription(v string) *UpdateMaintenanceWindowTargetInput {
51610	s.Description = &v
51611	return s
51612}
51613
51614// SetName sets the Name field's value.
51615func (s *UpdateMaintenanceWindowTargetInput) SetName(v string) *UpdateMaintenanceWindowTargetInput {
51616	s.Name = &v
51617	return s
51618}
51619
51620// SetOwnerInformation sets the OwnerInformation field's value.
51621func (s *UpdateMaintenanceWindowTargetInput) SetOwnerInformation(v string) *UpdateMaintenanceWindowTargetInput {
51622	s.OwnerInformation = &v
51623	return s
51624}
51625
51626// SetReplace sets the Replace field's value.
51627func (s *UpdateMaintenanceWindowTargetInput) SetReplace(v bool) *UpdateMaintenanceWindowTargetInput {
51628	s.Replace = &v
51629	return s
51630}
51631
51632// SetTargets sets the Targets field's value.
51633func (s *UpdateMaintenanceWindowTargetInput) SetTargets(v []*Target) *UpdateMaintenanceWindowTargetInput {
51634	s.Targets = v
51635	return s
51636}
51637
51638// SetWindowId sets the WindowId field's value.
51639func (s *UpdateMaintenanceWindowTargetInput) SetWindowId(v string) *UpdateMaintenanceWindowTargetInput {
51640	s.WindowId = &v
51641	return s
51642}
51643
51644// SetWindowTargetId sets the WindowTargetId field's value.
51645func (s *UpdateMaintenanceWindowTargetInput) SetWindowTargetId(v string) *UpdateMaintenanceWindowTargetInput {
51646	s.WindowTargetId = &v
51647	return s
51648}
51649
51650type UpdateMaintenanceWindowTargetOutput struct {
51651	_ struct{} `type:"structure"`
51652
51653	// The updated description.
51654	Description *string `min:"1" type:"string" sensitive:"true"`
51655
51656	// The updated name.
51657	Name *string `min:"3" type:"string"`
51658
51659	// The updated owner.
51660	OwnerInformation *string `min:"1" type:"string" sensitive:"true"`
51661
51662	// The updated targets.
51663	Targets []*Target `type:"list"`
51664
51665	// The maintenance window ID specified in the update request.
51666	WindowId *string `min:"20" type:"string"`
51667
51668	// The target ID specified in the update request.
51669	WindowTargetId *string `min:"36" type:"string"`
51670}
51671
51672// String returns the string representation
51673func (s UpdateMaintenanceWindowTargetOutput) String() string {
51674	return awsutil.Prettify(s)
51675}
51676
51677// GoString returns the string representation
51678func (s UpdateMaintenanceWindowTargetOutput) GoString() string {
51679	return s.String()
51680}
51681
51682// SetDescription sets the Description field's value.
51683func (s *UpdateMaintenanceWindowTargetOutput) SetDescription(v string) *UpdateMaintenanceWindowTargetOutput {
51684	s.Description = &v
51685	return s
51686}
51687
51688// SetName sets the Name field's value.
51689func (s *UpdateMaintenanceWindowTargetOutput) SetName(v string) *UpdateMaintenanceWindowTargetOutput {
51690	s.Name = &v
51691	return s
51692}
51693
51694// SetOwnerInformation sets the OwnerInformation field's value.
51695func (s *UpdateMaintenanceWindowTargetOutput) SetOwnerInformation(v string) *UpdateMaintenanceWindowTargetOutput {
51696	s.OwnerInformation = &v
51697	return s
51698}
51699
51700// SetTargets sets the Targets field's value.
51701func (s *UpdateMaintenanceWindowTargetOutput) SetTargets(v []*Target) *UpdateMaintenanceWindowTargetOutput {
51702	s.Targets = v
51703	return s
51704}
51705
51706// SetWindowId sets the WindowId field's value.
51707func (s *UpdateMaintenanceWindowTargetOutput) SetWindowId(v string) *UpdateMaintenanceWindowTargetOutput {
51708	s.WindowId = &v
51709	return s
51710}
51711
51712// SetWindowTargetId sets the WindowTargetId field's value.
51713func (s *UpdateMaintenanceWindowTargetOutput) SetWindowTargetId(v string) *UpdateMaintenanceWindowTargetOutput {
51714	s.WindowTargetId = &v
51715	return s
51716}
51717
51718type UpdateMaintenanceWindowTaskInput struct {
51719	_ struct{} `type:"structure"`
51720
51721	// The new task description to specify.
51722	Description *string `min:"1" type:"string" sensitive:"true"`
51723
51724	// The new logging location in Amazon S3 to specify.
51725	//
51726	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
51727	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
51728	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
51729	// information about how Amazon Web Services Systems Manager handles these options
51730	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
51731	LoggingInfo *LoggingInfo `type:"structure"`
51732
51733	// The new MaxConcurrency value you want to specify. MaxConcurrency is the number
51734	// of targets that are allowed to run this task in parallel.
51735	//
51736	// For maintenance window tasks without a target specified, you can't supply
51737	// a value for this option. Instead, the system inserts a placeholder value
51738	// of 1, which may be reported in the response to this command. This value doesn't
51739	// affect the running of your task and can be ignored.
51740	MaxConcurrency *string `min:"1" type:"string"`
51741
51742	// The new MaxErrors value to specify. MaxErrors is the maximum number of errors
51743	// that are allowed before the task stops being scheduled.
51744	//
51745	// For maintenance window tasks without a target specified, you can't supply
51746	// a value for this option. Instead, the system inserts a placeholder value
51747	// of 1, which may be reported in the response to this command. This value doesn't
51748	// affect the running of your task and can be ignored.
51749	MaxErrors *string `min:"1" type:"string"`
51750
51751	// The new task name to specify.
51752	Name *string `min:"3" type:"string"`
51753
51754	// The new task priority to specify. The lower the number, the higher the priority.
51755	// Tasks that have the same priority are scheduled in parallel.
51756	Priority *int64 `type:"integer"`
51757
51758	// If True, then all fields that are required by the RegisterTaskWithMaintenanceWindow
51759	// operation are also required for this API request. Optional fields that aren't
51760	// specified are set to null.
51761	Replace *bool `type:"boolean"`
51762
51763	// The Amazon Resource Name (ARN) of the IAM service role for Amazon Web Services
51764	// Systems Manager to assume when running a maintenance window task. If you
51765	// do not specify a service role ARN, Systems Manager uses your account's service-linked
51766	// role. If no service-linked role for Systems Manager exists in your account,
51767	// it is created when you run RegisterTaskWithMaintenanceWindow.
51768	//
51769	// For more information, see the following topics in the in the Amazon Web Services
51770	// Systems Manager User Guide:
51771	//
51772	//    * Using service-linked roles for Systems Manager (https://docs.aws.amazon.com/systems-manager/latest/userguide/using-service-linked-roles.html#slr-permissions)
51773	//
51774	//    * Should I use a service-linked role or a custom service role to run maintenance
51775	//    window tasks? (https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-permissions.html#maintenance-window-tasks-service-role)
51776	ServiceRoleArn *string `type:"string"`
51777
51778	// The targets (either instances or tags) to modify. Instances are specified
51779	// using the format Key=instanceids,Values=instanceID_1,instanceID_2. Tags are
51780	// specified using the format Key=tag_name,Values=tag_value.
51781	//
51782	// One or more targets must be specified for maintenance window Run Command-type
51783	// tasks. Depending on the task, targets are optional for other maintenance
51784	// window task types (Automation, Lambda, and Step Functions). For more information
51785	// about running tasks that don't specify targets, see Registering maintenance
51786	// window tasks without targets (https://docs.aws.amazon.com/systems-manager/latest/userguide/maintenance-windows-targetless-tasks.html)
51787	// in the Amazon Web Services Systems Manager User Guide.
51788	Targets []*Target `type:"list"`
51789
51790	// The task ARN to modify.
51791	TaskArn *string `min:"1" type:"string"`
51792
51793	// The parameters that the task should use during execution. Populate only the
51794	// fields that match the task type. All other fields should be empty.
51795	//
51796	// When you update a maintenance window task that has options specified in TaskInvocationParameters,
51797	// you must provide again all the TaskInvocationParameters values that you want
51798	// to retain. The values you don't specify again are removed. For example, suppose
51799	// that when you registered a Run Command task, you specified TaskInvocationParameters
51800	// values for Comment, NotificationConfig, and OutputS3BucketName. If you update
51801	// the maintenance window task and specify only a different OutputS3BucketName
51802	// value, the values for Comment and NotificationConfig are removed.
51803	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
51804
51805	// The parameters to modify.
51806	//
51807	// TaskParameters has been deprecated. To specify parameters to pass to a task
51808	// when it runs, instead use the Parameters option in the TaskInvocationParameters
51809	// structure. For information about how Systems Manager handles these options
51810	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
51811	//
51812	// The map has the following format:
51813	//
51814	// Key: string, between 1 and 255 characters
51815	//
51816	// Value: an array of strings, each string is between 1 and 255 characters
51817	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
51818
51819	// The maintenance window ID that contains the task to modify.
51820	//
51821	// WindowId is a required field
51822	WindowId *string `min:"20" type:"string" required:"true"`
51823
51824	// The task ID to modify.
51825	//
51826	// WindowTaskId is a required field
51827	WindowTaskId *string `min:"36" type:"string" required:"true"`
51828}
51829
51830// String returns the string representation
51831func (s UpdateMaintenanceWindowTaskInput) String() string {
51832	return awsutil.Prettify(s)
51833}
51834
51835// GoString returns the string representation
51836func (s UpdateMaintenanceWindowTaskInput) GoString() string {
51837	return s.String()
51838}
51839
51840// Validate inspects the fields of the type to determine if they are valid.
51841func (s *UpdateMaintenanceWindowTaskInput) Validate() error {
51842	invalidParams := request.ErrInvalidParams{Context: "UpdateMaintenanceWindowTaskInput"}
51843	if s.Description != nil && len(*s.Description) < 1 {
51844		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
51845	}
51846	if s.MaxConcurrency != nil && len(*s.MaxConcurrency) < 1 {
51847		invalidParams.Add(request.NewErrParamMinLen("MaxConcurrency", 1))
51848	}
51849	if s.MaxErrors != nil && len(*s.MaxErrors) < 1 {
51850		invalidParams.Add(request.NewErrParamMinLen("MaxErrors", 1))
51851	}
51852	if s.Name != nil && len(*s.Name) < 3 {
51853		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
51854	}
51855	if s.TaskArn != nil && len(*s.TaskArn) < 1 {
51856		invalidParams.Add(request.NewErrParamMinLen("TaskArn", 1))
51857	}
51858	if s.WindowId == nil {
51859		invalidParams.Add(request.NewErrParamRequired("WindowId"))
51860	}
51861	if s.WindowId != nil && len(*s.WindowId) < 20 {
51862		invalidParams.Add(request.NewErrParamMinLen("WindowId", 20))
51863	}
51864	if s.WindowTaskId == nil {
51865		invalidParams.Add(request.NewErrParamRequired("WindowTaskId"))
51866	}
51867	if s.WindowTaskId != nil && len(*s.WindowTaskId) < 36 {
51868		invalidParams.Add(request.NewErrParamMinLen("WindowTaskId", 36))
51869	}
51870	if s.LoggingInfo != nil {
51871		if err := s.LoggingInfo.Validate(); err != nil {
51872			invalidParams.AddNested("LoggingInfo", err.(request.ErrInvalidParams))
51873		}
51874	}
51875	if s.Targets != nil {
51876		for i, v := range s.Targets {
51877			if v == nil {
51878				continue
51879			}
51880			if err := v.Validate(); err != nil {
51881				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
51882			}
51883		}
51884	}
51885	if s.TaskInvocationParameters != nil {
51886		if err := s.TaskInvocationParameters.Validate(); err != nil {
51887			invalidParams.AddNested("TaskInvocationParameters", err.(request.ErrInvalidParams))
51888		}
51889	}
51890
51891	if invalidParams.Len() > 0 {
51892		return invalidParams
51893	}
51894	return nil
51895}
51896
51897// SetDescription sets the Description field's value.
51898func (s *UpdateMaintenanceWindowTaskInput) SetDescription(v string) *UpdateMaintenanceWindowTaskInput {
51899	s.Description = &v
51900	return s
51901}
51902
51903// SetLoggingInfo sets the LoggingInfo field's value.
51904func (s *UpdateMaintenanceWindowTaskInput) SetLoggingInfo(v *LoggingInfo) *UpdateMaintenanceWindowTaskInput {
51905	s.LoggingInfo = v
51906	return s
51907}
51908
51909// SetMaxConcurrency sets the MaxConcurrency field's value.
51910func (s *UpdateMaintenanceWindowTaskInput) SetMaxConcurrency(v string) *UpdateMaintenanceWindowTaskInput {
51911	s.MaxConcurrency = &v
51912	return s
51913}
51914
51915// SetMaxErrors sets the MaxErrors field's value.
51916func (s *UpdateMaintenanceWindowTaskInput) SetMaxErrors(v string) *UpdateMaintenanceWindowTaskInput {
51917	s.MaxErrors = &v
51918	return s
51919}
51920
51921// SetName sets the Name field's value.
51922func (s *UpdateMaintenanceWindowTaskInput) SetName(v string) *UpdateMaintenanceWindowTaskInput {
51923	s.Name = &v
51924	return s
51925}
51926
51927// SetPriority sets the Priority field's value.
51928func (s *UpdateMaintenanceWindowTaskInput) SetPriority(v int64) *UpdateMaintenanceWindowTaskInput {
51929	s.Priority = &v
51930	return s
51931}
51932
51933// SetReplace sets the Replace field's value.
51934func (s *UpdateMaintenanceWindowTaskInput) SetReplace(v bool) *UpdateMaintenanceWindowTaskInput {
51935	s.Replace = &v
51936	return s
51937}
51938
51939// SetServiceRoleArn sets the ServiceRoleArn field's value.
51940func (s *UpdateMaintenanceWindowTaskInput) SetServiceRoleArn(v string) *UpdateMaintenanceWindowTaskInput {
51941	s.ServiceRoleArn = &v
51942	return s
51943}
51944
51945// SetTargets sets the Targets field's value.
51946func (s *UpdateMaintenanceWindowTaskInput) SetTargets(v []*Target) *UpdateMaintenanceWindowTaskInput {
51947	s.Targets = v
51948	return s
51949}
51950
51951// SetTaskArn sets the TaskArn field's value.
51952func (s *UpdateMaintenanceWindowTaskInput) SetTaskArn(v string) *UpdateMaintenanceWindowTaskInput {
51953	s.TaskArn = &v
51954	return s
51955}
51956
51957// SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
51958func (s *UpdateMaintenanceWindowTaskInput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *UpdateMaintenanceWindowTaskInput {
51959	s.TaskInvocationParameters = v
51960	return s
51961}
51962
51963// SetTaskParameters sets the TaskParameters field's value.
51964func (s *UpdateMaintenanceWindowTaskInput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *UpdateMaintenanceWindowTaskInput {
51965	s.TaskParameters = v
51966	return s
51967}
51968
51969// SetWindowId sets the WindowId field's value.
51970func (s *UpdateMaintenanceWindowTaskInput) SetWindowId(v string) *UpdateMaintenanceWindowTaskInput {
51971	s.WindowId = &v
51972	return s
51973}
51974
51975// SetWindowTaskId sets the WindowTaskId field's value.
51976func (s *UpdateMaintenanceWindowTaskInput) SetWindowTaskId(v string) *UpdateMaintenanceWindowTaskInput {
51977	s.WindowTaskId = &v
51978	return s
51979}
51980
51981type UpdateMaintenanceWindowTaskOutput struct {
51982	_ struct{} `type:"structure"`
51983
51984	// The updated task description.
51985	Description *string `min:"1" type:"string" sensitive:"true"`
51986
51987	// The updated logging information in Amazon S3.
51988	//
51989	// LoggingInfo has been deprecated. To specify an Amazon Simple Storage Service
51990	// (Amazon S3) bucket to contain logs, instead use the OutputS3BucketName and
51991	// OutputS3KeyPrefix options in the TaskInvocationParameters structure. For
51992	// information about how Amazon Web Services Systems Manager handles these options
51993	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
51994	LoggingInfo *LoggingInfo `type:"structure"`
51995
51996	// The updated MaxConcurrency value.
51997	MaxConcurrency *string `min:"1" type:"string"`
51998
51999	// The updated MaxErrors value.
52000	MaxErrors *string `min:"1" type:"string"`
52001
52002	// The updated task name.
52003	Name *string `min:"3" type:"string"`
52004
52005	// The updated priority value.
52006	Priority *int64 `type:"integer"`
52007
52008	// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
52009	// service role to use to publish Amazon Simple Notification Service (Amazon
52010	// SNS) notifications for maintenance window Run Command tasks.
52011	ServiceRoleArn *string `type:"string"`
52012
52013	// The updated target values.
52014	Targets []*Target `type:"list"`
52015
52016	// The updated task ARN value.
52017	TaskArn *string `min:"1" type:"string"`
52018
52019	// The updated parameter values.
52020	TaskInvocationParameters *MaintenanceWindowTaskInvocationParameters `type:"structure"`
52021
52022	// The updated parameter values.
52023	//
52024	// TaskParameters has been deprecated. To specify parameters to pass to a task
52025	// when it runs, instead use the Parameters option in the TaskInvocationParameters
52026	// structure. For information about how Systems Manager handles these options
52027	// for the supported maintenance window task types, see MaintenanceWindowTaskInvocationParameters.
52028	TaskParameters map[string]*MaintenanceWindowTaskParameterValueExpression `type:"map" sensitive:"true"`
52029
52030	// The ID of the maintenance window that was updated.
52031	WindowId *string `min:"20" type:"string"`
52032
52033	// The task ID of the maintenance window that was updated.
52034	WindowTaskId *string `min:"36" type:"string"`
52035}
52036
52037// String returns the string representation
52038func (s UpdateMaintenanceWindowTaskOutput) String() string {
52039	return awsutil.Prettify(s)
52040}
52041
52042// GoString returns the string representation
52043func (s UpdateMaintenanceWindowTaskOutput) GoString() string {
52044	return s.String()
52045}
52046
52047// SetDescription sets the Description field's value.
52048func (s *UpdateMaintenanceWindowTaskOutput) SetDescription(v string) *UpdateMaintenanceWindowTaskOutput {
52049	s.Description = &v
52050	return s
52051}
52052
52053// SetLoggingInfo sets the LoggingInfo field's value.
52054func (s *UpdateMaintenanceWindowTaskOutput) SetLoggingInfo(v *LoggingInfo) *UpdateMaintenanceWindowTaskOutput {
52055	s.LoggingInfo = v
52056	return s
52057}
52058
52059// SetMaxConcurrency sets the MaxConcurrency field's value.
52060func (s *UpdateMaintenanceWindowTaskOutput) SetMaxConcurrency(v string) *UpdateMaintenanceWindowTaskOutput {
52061	s.MaxConcurrency = &v
52062	return s
52063}
52064
52065// SetMaxErrors sets the MaxErrors field's value.
52066func (s *UpdateMaintenanceWindowTaskOutput) SetMaxErrors(v string) *UpdateMaintenanceWindowTaskOutput {
52067	s.MaxErrors = &v
52068	return s
52069}
52070
52071// SetName sets the Name field's value.
52072func (s *UpdateMaintenanceWindowTaskOutput) SetName(v string) *UpdateMaintenanceWindowTaskOutput {
52073	s.Name = &v
52074	return s
52075}
52076
52077// SetPriority sets the Priority field's value.
52078func (s *UpdateMaintenanceWindowTaskOutput) SetPriority(v int64) *UpdateMaintenanceWindowTaskOutput {
52079	s.Priority = &v
52080	return s
52081}
52082
52083// SetServiceRoleArn sets the ServiceRoleArn field's value.
52084func (s *UpdateMaintenanceWindowTaskOutput) SetServiceRoleArn(v string) *UpdateMaintenanceWindowTaskOutput {
52085	s.ServiceRoleArn = &v
52086	return s
52087}
52088
52089// SetTargets sets the Targets field's value.
52090func (s *UpdateMaintenanceWindowTaskOutput) SetTargets(v []*Target) *UpdateMaintenanceWindowTaskOutput {
52091	s.Targets = v
52092	return s
52093}
52094
52095// SetTaskArn sets the TaskArn field's value.
52096func (s *UpdateMaintenanceWindowTaskOutput) SetTaskArn(v string) *UpdateMaintenanceWindowTaskOutput {
52097	s.TaskArn = &v
52098	return s
52099}
52100
52101// SetTaskInvocationParameters sets the TaskInvocationParameters field's value.
52102func (s *UpdateMaintenanceWindowTaskOutput) SetTaskInvocationParameters(v *MaintenanceWindowTaskInvocationParameters) *UpdateMaintenanceWindowTaskOutput {
52103	s.TaskInvocationParameters = v
52104	return s
52105}
52106
52107// SetTaskParameters sets the TaskParameters field's value.
52108func (s *UpdateMaintenanceWindowTaskOutput) SetTaskParameters(v map[string]*MaintenanceWindowTaskParameterValueExpression) *UpdateMaintenanceWindowTaskOutput {
52109	s.TaskParameters = v
52110	return s
52111}
52112
52113// SetWindowId sets the WindowId field's value.
52114func (s *UpdateMaintenanceWindowTaskOutput) SetWindowId(v string) *UpdateMaintenanceWindowTaskOutput {
52115	s.WindowId = &v
52116	return s
52117}
52118
52119// SetWindowTaskId sets the WindowTaskId field's value.
52120func (s *UpdateMaintenanceWindowTaskOutput) SetWindowTaskId(v string) *UpdateMaintenanceWindowTaskOutput {
52121	s.WindowTaskId = &v
52122	return s
52123}
52124
52125type UpdateManagedInstanceRoleInput struct {
52126	_ struct{} `type:"structure"`
52127
52128	// The IAM role you want to assign or change.
52129	//
52130	// IamRole is a required field
52131	IamRole *string `type:"string" required:"true"`
52132
52133	// The ID of the managed instance where you want to update the role.
52134	//
52135	// InstanceId is a required field
52136	InstanceId *string `type:"string" required:"true"`
52137}
52138
52139// String returns the string representation
52140func (s UpdateManagedInstanceRoleInput) String() string {
52141	return awsutil.Prettify(s)
52142}
52143
52144// GoString returns the string representation
52145func (s UpdateManagedInstanceRoleInput) GoString() string {
52146	return s.String()
52147}
52148
52149// Validate inspects the fields of the type to determine if they are valid.
52150func (s *UpdateManagedInstanceRoleInput) Validate() error {
52151	invalidParams := request.ErrInvalidParams{Context: "UpdateManagedInstanceRoleInput"}
52152	if s.IamRole == nil {
52153		invalidParams.Add(request.NewErrParamRequired("IamRole"))
52154	}
52155	if s.InstanceId == nil {
52156		invalidParams.Add(request.NewErrParamRequired("InstanceId"))
52157	}
52158
52159	if invalidParams.Len() > 0 {
52160		return invalidParams
52161	}
52162	return nil
52163}
52164
52165// SetIamRole sets the IamRole field's value.
52166func (s *UpdateManagedInstanceRoleInput) SetIamRole(v string) *UpdateManagedInstanceRoleInput {
52167	s.IamRole = &v
52168	return s
52169}
52170
52171// SetInstanceId sets the InstanceId field's value.
52172func (s *UpdateManagedInstanceRoleInput) SetInstanceId(v string) *UpdateManagedInstanceRoleInput {
52173	s.InstanceId = &v
52174	return s
52175}
52176
52177type UpdateManagedInstanceRoleOutput struct {
52178	_ struct{} `type:"structure"`
52179}
52180
52181// String returns the string representation
52182func (s UpdateManagedInstanceRoleOutput) String() string {
52183	return awsutil.Prettify(s)
52184}
52185
52186// GoString returns the string representation
52187func (s UpdateManagedInstanceRoleOutput) GoString() string {
52188	return s.String()
52189}
52190
52191type UpdateOpsItemInput struct {
52192	_ struct{} `type:"structure"`
52193
52194	// The time a runbook workflow ended. Currently reported only for the OpsItem
52195	// type /aws/changerequest.
52196	ActualEndTime *time.Time `type:"timestamp"`
52197
52198	// The time a runbook workflow started. Currently reported only for the OpsItem
52199	// type /aws/changerequest.
52200	ActualStartTime *time.Time `type:"timestamp"`
52201
52202	// Specify a new category for an OpsItem.
52203	Category *string `min:"1" type:"string"`
52204
52205	// Update the information about the OpsItem. Provide enough information so that
52206	// users reading this OpsItem for the first time understand the issue.
52207	Description *string `min:"1" type:"string"`
52208
52209	// The Amazon Resource Name (ARN) of an SNS topic where notifications are sent
52210	// when this OpsItem is edited or changed.
52211	Notifications []*OpsItemNotification `type:"list"`
52212
52213	// Add new keys or edit existing key-value pairs of the OperationalData map
52214	// in the OpsItem object.
52215	//
52216	// Operational data is custom data that provides useful reference details about
52217	// the OpsItem. For example, you can specify log files, error strings, license
52218	// keys, troubleshooting tips, or other relevant data. You enter operational
52219	// data as key-value pairs. The key has a maximum length of 128 characters.
52220	// The value has a maximum size of 20 KB.
52221	//
52222	// Operational data keys can't begin with the following: amazon, aws, amzn,
52223	// ssm, /amazon, /aws, /amzn, /ssm.
52224	//
52225	// You can choose to make the data searchable by other users in the account
52226	// or you can restrict search access. Searchable data means that all users with
52227	// access to the OpsItem Overview page (as provided by the DescribeOpsItems
52228	// API operation) can view and search on the specified data. Operational data
52229	// that isn't searchable is only viewable by users who have access to the OpsItem
52230	// (as provided by the GetOpsItem API operation).
52231	//
52232	// Use the /aws/resources key in OperationalData to specify a related resource
52233	// in the request. Use the /aws/automations key in OperationalData to associate
52234	// an Automation runbook with the OpsItem. To view Amazon Web Services CLI example
52235	// commands that use these keys, see Creating OpsItems manually (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-creating-OpsItems.html#OpsCenter-manually-create-OpsItems)
52236	// in the Amazon Web Services Systems Manager User Guide.
52237	OperationalData map[string]*OpsItemDataValue `type:"map"`
52238
52239	// Keys that you want to remove from the OperationalData map.
52240	OperationalDataToDelete []*string `type:"list"`
52241
52242	// The ID of the OpsItem.
52243	//
52244	// OpsItemId is a required field
52245	OpsItemId *string `type:"string" required:"true"`
52246
52247	// The time specified in a change request for a runbook workflow to end. Currently
52248	// supported only for the OpsItem type /aws/changerequest.
52249	PlannedEndTime *time.Time `type:"timestamp"`
52250
52251	// The time specified in a change request for a runbook workflow to start. Currently
52252	// supported only for the OpsItem type /aws/changerequest.
52253	PlannedStartTime *time.Time `type:"timestamp"`
52254
52255	// The importance of this OpsItem in relation to other OpsItems in the system.
52256	Priority *int64 `min:"1" type:"integer"`
52257
52258	// One or more OpsItems that share something in common with the current OpsItems.
52259	// For example, related OpsItems can include OpsItems with similar error messages,
52260	// impacted resources, or statuses for the impacted resource.
52261	RelatedOpsItems []*RelatedOpsItem `type:"list"`
52262
52263	// Specify a new severity for an OpsItem.
52264	Severity *string `min:"1" type:"string"`
52265
52266	// The OpsItem status. Status can be Open, In Progress, or Resolved. For more
52267	// information, see Editing OpsItem details (https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-working-with-OpsItems.html#OpsCenter-working-with-OpsItems-editing-details)
52268	// in the Amazon Web Services Systems Manager User Guide.
52269	Status *string `type:"string" enum:"OpsItemStatus"`
52270
52271	// A short heading that describes the nature of the OpsItem and the impacted
52272	// resource.
52273	Title *string `min:"1" type:"string"`
52274}
52275
52276// String returns the string representation
52277func (s UpdateOpsItemInput) String() string {
52278	return awsutil.Prettify(s)
52279}
52280
52281// GoString returns the string representation
52282func (s UpdateOpsItemInput) GoString() string {
52283	return s.String()
52284}
52285
52286// Validate inspects the fields of the type to determine if they are valid.
52287func (s *UpdateOpsItemInput) Validate() error {
52288	invalidParams := request.ErrInvalidParams{Context: "UpdateOpsItemInput"}
52289	if s.Category != nil && len(*s.Category) < 1 {
52290		invalidParams.Add(request.NewErrParamMinLen("Category", 1))
52291	}
52292	if s.Description != nil && len(*s.Description) < 1 {
52293		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
52294	}
52295	if s.OpsItemId == nil {
52296		invalidParams.Add(request.NewErrParamRequired("OpsItemId"))
52297	}
52298	if s.Priority != nil && *s.Priority < 1 {
52299		invalidParams.Add(request.NewErrParamMinValue("Priority", 1))
52300	}
52301	if s.Severity != nil && len(*s.Severity) < 1 {
52302		invalidParams.Add(request.NewErrParamMinLen("Severity", 1))
52303	}
52304	if s.Title != nil && len(*s.Title) < 1 {
52305		invalidParams.Add(request.NewErrParamMinLen("Title", 1))
52306	}
52307	if s.RelatedOpsItems != nil {
52308		for i, v := range s.RelatedOpsItems {
52309			if v == nil {
52310				continue
52311			}
52312			if err := v.Validate(); err != nil {
52313				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RelatedOpsItems", i), err.(request.ErrInvalidParams))
52314			}
52315		}
52316	}
52317
52318	if invalidParams.Len() > 0 {
52319		return invalidParams
52320	}
52321	return nil
52322}
52323
52324// SetActualEndTime sets the ActualEndTime field's value.
52325func (s *UpdateOpsItemInput) SetActualEndTime(v time.Time) *UpdateOpsItemInput {
52326	s.ActualEndTime = &v
52327	return s
52328}
52329
52330// SetActualStartTime sets the ActualStartTime field's value.
52331func (s *UpdateOpsItemInput) SetActualStartTime(v time.Time) *UpdateOpsItemInput {
52332	s.ActualStartTime = &v
52333	return s
52334}
52335
52336// SetCategory sets the Category field's value.
52337func (s *UpdateOpsItemInput) SetCategory(v string) *UpdateOpsItemInput {
52338	s.Category = &v
52339	return s
52340}
52341
52342// SetDescription sets the Description field's value.
52343func (s *UpdateOpsItemInput) SetDescription(v string) *UpdateOpsItemInput {
52344	s.Description = &v
52345	return s
52346}
52347
52348// SetNotifications sets the Notifications field's value.
52349func (s *UpdateOpsItemInput) SetNotifications(v []*OpsItemNotification) *UpdateOpsItemInput {
52350	s.Notifications = v
52351	return s
52352}
52353
52354// SetOperationalData sets the OperationalData field's value.
52355func (s *UpdateOpsItemInput) SetOperationalData(v map[string]*OpsItemDataValue) *UpdateOpsItemInput {
52356	s.OperationalData = v
52357	return s
52358}
52359
52360// SetOperationalDataToDelete sets the OperationalDataToDelete field's value.
52361func (s *UpdateOpsItemInput) SetOperationalDataToDelete(v []*string) *UpdateOpsItemInput {
52362	s.OperationalDataToDelete = v
52363	return s
52364}
52365
52366// SetOpsItemId sets the OpsItemId field's value.
52367func (s *UpdateOpsItemInput) SetOpsItemId(v string) *UpdateOpsItemInput {
52368	s.OpsItemId = &v
52369	return s
52370}
52371
52372// SetPlannedEndTime sets the PlannedEndTime field's value.
52373func (s *UpdateOpsItemInput) SetPlannedEndTime(v time.Time) *UpdateOpsItemInput {
52374	s.PlannedEndTime = &v
52375	return s
52376}
52377
52378// SetPlannedStartTime sets the PlannedStartTime field's value.
52379func (s *UpdateOpsItemInput) SetPlannedStartTime(v time.Time) *UpdateOpsItemInput {
52380	s.PlannedStartTime = &v
52381	return s
52382}
52383
52384// SetPriority sets the Priority field's value.
52385func (s *UpdateOpsItemInput) SetPriority(v int64) *UpdateOpsItemInput {
52386	s.Priority = &v
52387	return s
52388}
52389
52390// SetRelatedOpsItems sets the RelatedOpsItems field's value.
52391func (s *UpdateOpsItemInput) SetRelatedOpsItems(v []*RelatedOpsItem) *UpdateOpsItemInput {
52392	s.RelatedOpsItems = v
52393	return s
52394}
52395
52396// SetSeverity sets the Severity field's value.
52397func (s *UpdateOpsItemInput) SetSeverity(v string) *UpdateOpsItemInput {
52398	s.Severity = &v
52399	return s
52400}
52401
52402// SetStatus sets the Status field's value.
52403func (s *UpdateOpsItemInput) SetStatus(v string) *UpdateOpsItemInput {
52404	s.Status = &v
52405	return s
52406}
52407
52408// SetTitle sets the Title field's value.
52409func (s *UpdateOpsItemInput) SetTitle(v string) *UpdateOpsItemInput {
52410	s.Title = &v
52411	return s
52412}
52413
52414type UpdateOpsItemOutput struct {
52415	_ struct{} `type:"structure"`
52416}
52417
52418// String returns the string representation
52419func (s UpdateOpsItemOutput) String() string {
52420	return awsutil.Prettify(s)
52421}
52422
52423// GoString returns the string representation
52424func (s UpdateOpsItemOutput) GoString() string {
52425	return s.String()
52426}
52427
52428type UpdateOpsMetadataInput struct {
52429	_ struct{} `type:"structure"`
52430
52431	// The metadata keys to delete from the OpsMetadata object.
52432	KeysToDelete []*string `min:"1" type:"list"`
52433
52434	// Metadata to add to an OpsMetadata object.
52435	MetadataToUpdate map[string]*MetadataValue `min:"1" type:"map"`
52436
52437	// The Amazon Resoure Name (ARN) of the OpsMetadata Object to update.
52438	//
52439	// OpsMetadataArn is a required field
52440	OpsMetadataArn *string `min:"1" type:"string" required:"true"`
52441}
52442
52443// String returns the string representation
52444func (s UpdateOpsMetadataInput) String() string {
52445	return awsutil.Prettify(s)
52446}
52447
52448// GoString returns the string representation
52449func (s UpdateOpsMetadataInput) GoString() string {
52450	return s.String()
52451}
52452
52453// Validate inspects the fields of the type to determine if they are valid.
52454func (s *UpdateOpsMetadataInput) Validate() error {
52455	invalidParams := request.ErrInvalidParams{Context: "UpdateOpsMetadataInput"}
52456	if s.KeysToDelete != nil && len(s.KeysToDelete) < 1 {
52457		invalidParams.Add(request.NewErrParamMinLen("KeysToDelete", 1))
52458	}
52459	if s.MetadataToUpdate != nil && len(s.MetadataToUpdate) < 1 {
52460		invalidParams.Add(request.NewErrParamMinLen("MetadataToUpdate", 1))
52461	}
52462	if s.OpsMetadataArn == nil {
52463		invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn"))
52464	}
52465	if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 {
52466		invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1))
52467	}
52468	if s.MetadataToUpdate != nil {
52469		for i, v := range s.MetadataToUpdate {
52470			if v == nil {
52471				continue
52472			}
52473			if err := v.Validate(); err != nil {
52474				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetadataToUpdate", i), err.(request.ErrInvalidParams))
52475			}
52476		}
52477	}
52478
52479	if invalidParams.Len() > 0 {
52480		return invalidParams
52481	}
52482	return nil
52483}
52484
52485// SetKeysToDelete sets the KeysToDelete field's value.
52486func (s *UpdateOpsMetadataInput) SetKeysToDelete(v []*string) *UpdateOpsMetadataInput {
52487	s.KeysToDelete = v
52488	return s
52489}
52490
52491// SetMetadataToUpdate sets the MetadataToUpdate field's value.
52492func (s *UpdateOpsMetadataInput) SetMetadataToUpdate(v map[string]*MetadataValue) *UpdateOpsMetadataInput {
52493	s.MetadataToUpdate = v
52494	return s
52495}
52496
52497// SetOpsMetadataArn sets the OpsMetadataArn field's value.
52498func (s *UpdateOpsMetadataInput) SetOpsMetadataArn(v string) *UpdateOpsMetadataInput {
52499	s.OpsMetadataArn = &v
52500	return s
52501}
52502
52503type UpdateOpsMetadataOutput struct {
52504	_ struct{} `type:"structure"`
52505
52506	// The Amazon Resource Name (ARN) of the OpsMetadata Object that was updated.
52507	OpsMetadataArn *string `min:"1" type:"string"`
52508}
52509
52510// String returns the string representation
52511func (s UpdateOpsMetadataOutput) String() string {
52512	return awsutil.Prettify(s)
52513}
52514
52515// GoString returns the string representation
52516func (s UpdateOpsMetadataOutput) GoString() string {
52517	return s.String()
52518}
52519
52520// SetOpsMetadataArn sets the OpsMetadataArn field's value.
52521func (s *UpdateOpsMetadataOutput) SetOpsMetadataArn(v string) *UpdateOpsMetadataOutput {
52522	s.OpsMetadataArn = &v
52523	return s
52524}
52525
52526type UpdatePatchBaselineInput struct {
52527	_ struct{} `type:"structure"`
52528
52529	// A set of rules used to include patches in the baseline.
52530	ApprovalRules *PatchRuleGroup `type:"structure"`
52531
52532	// A list of explicitly approved patches for the baseline.
52533	//
52534	// For information about accepted formats for lists of approved patches and
52535	// rejected patches, see About package name formats for approved and rejected
52536	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
52537	// in the Amazon Web Services Systems Manager User Guide.
52538	ApprovedPatches []*string `type:"list"`
52539
52540	// Assigns a new compliance severity level to an existing patch baseline.
52541	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
52542
52543	// Indicates whether the list of approved patches includes non-security updates
52544	// that should be applied to the instances. The default value is false. Applies
52545	// to Linux instances only.
52546	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
52547
52548	// The ID of the patch baseline to update.
52549	//
52550	// BaselineId is a required field
52551	BaselineId *string `min:"20" type:"string" required:"true"`
52552
52553	// A description of the patch baseline.
52554	Description *string `min:"1" type:"string"`
52555
52556	// A set of global filters used to include patches in the baseline.
52557	GlobalFilters *PatchFilterGroup `type:"structure"`
52558
52559	// The name of the patch baseline.
52560	Name *string `min:"3" type:"string"`
52561
52562	// A list of explicitly rejected patches for the baseline.
52563	//
52564	// For information about accepted formats for lists of approved patches and
52565	// rejected patches, see About package name formats for approved and rejected
52566	// patch lists (https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html)
52567	// in the Amazon Web Services Systems Manager User Guide.
52568	RejectedPatches []*string `type:"list"`
52569
52570	// The action for Patch Manager to take on patches included in the RejectedPackages
52571	// list.
52572	//
52573	//    * ALLOW_AS_DEPENDENCY : A package in the Rejected patches list is installed
52574	//    only if it is a dependency of another package. It is considered compliant
52575	//    with the patch baseline, and its status is reported as InstalledOther.
52576	//    This is the default action if no option is specified.
52577	//
52578	//    * BLOCK : Packages in the RejectedPatches list, and packages that include
52579	//    them as dependencies, aren't installed under any circumstances. If a package
52580	//    was installed before it was added to the Rejected patches list, it is
52581	//    considered non-compliant with the patch baseline, and its status is reported
52582	//    as InstalledRejected.
52583	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
52584
52585	// If True, then all fields that are required by the CreatePatchBaseline operation
52586	// are also required for this API request. Optional fields that aren't specified
52587	// are set to null.
52588	Replace *bool `type:"boolean"`
52589
52590	// Information about the patches to use to update the instances, including target
52591	// operating systems and source repositories. Applies to Linux instances only.
52592	Sources []*PatchSource `type:"list"`
52593}
52594
52595// String returns the string representation
52596func (s UpdatePatchBaselineInput) String() string {
52597	return awsutil.Prettify(s)
52598}
52599
52600// GoString returns the string representation
52601func (s UpdatePatchBaselineInput) GoString() string {
52602	return s.String()
52603}
52604
52605// Validate inspects the fields of the type to determine if they are valid.
52606func (s *UpdatePatchBaselineInput) Validate() error {
52607	invalidParams := request.ErrInvalidParams{Context: "UpdatePatchBaselineInput"}
52608	if s.BaselineId == nil {
52609		invalidParams.Add(request.NewErrParamRequired("BaselineId"))
52610	}
52611	if s.BaselineId != nil && len(*s.BaselineId) < 20 {
52612		invalidParams.Add(request.NewErrParamMinLen("BaselineId", 20))
52613	}
52614	if s.Description != nil && len(*s.Description) < 1 {
52615		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
52616	}
52617	if s.Name != nil && len(*s.Name) < 3 {
52618		invalidParams.Add(request.NewErrParamMinLen("Name", 3))
52619	}
52620	if s.ApprovalRules != nil {
52621		if err := s.ApprovalRules.Validate(); err != nil {
52622			invalidParams.AddNested("ApprovalRules", err.(request.ErrInvalidParams))
52623		}
52624	}
52625	if s.GlobalFilters != nil {
52626		if err := s.GlobalFilters.Validate(); err != nil {
52627			invalidParams.AddNested("GlobalFilters", err.(request.ErrInvalidParams))
52628		}
52629	}
52630	if s.Sources != nil {
52631		for i, v := range s.Sources {
52632			if v == nil {
52633				continue
52634			}
52635			if err := v.Validate(); err != nil {
52636				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Sources", i), err.(request.ErrInvalidParams))
52637			}
52638		}
52639	}
52640
52641	if invalidParams.Len() > 0 {
52642		return invalidParams
52643	}
52644	return nil
52645}
52646
52647// SetApprovalRules sets the ApprovalRules field's value.
52648func (s *UpdatePatchBaselineInput) SetApprovalRules(v *PatchRuleGroup) *UpdatePatchBaselineInput {
52649	s.ApprovalRules = v
52650	return s
52651}
52652
52653// SetApprovedPatches sets the ApprovedPatches field's value.
52654func (s *UpdatePatchBaselineInput) SetApprovedPatches(v []*string) *UpdatePatchBaselineInput {
52655	s.ApprovedPatches = v
52656	return s
52657}
52658
52659// SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
52660func (s *UpdatePatchBaselineInput) SetApprovedPatchesComplianceLevel(v string) *UpdatePatchBaselineInput {
52661	s.ApprovedPatchesComplianceLevel = &v
52662	return s
52663}
52664
52665// SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
52666func (s *UpdatePatchBaselineInput) SetApprovedPatchesEnableNonSecurity(v bool) *UpdatePatchBaselineInput {
52667	s.ApprovedPatchesEnableNonSecurity = &v
52668	return s
52669}
52670
52671// SetBaselineId sets the BaselineId field's value.
52672func (s *UpdatePatchBaselineInput) SetBaselineId(v string) *UpdatePatchBaselineInput {
52673	s.BaselineId = &v
52674	return s
52675}
52676
52677// SetDescription sets the Description field's value.
52678func (s *UpdatePatchBaselineInput) SetDescription(v string) *UpdatePatchBaselineInput {
52679	s.Description = &v
52680	return s
52681}
52682
52683// SetGlobalFilters sets the GlobalFilters field's value.
52684func (s *UpdatePatchBaselineInput) SetGlobalFilters(v *PatchFilterGroup) *UpdatePatchBaselineInput {
52685	s.GlobalFilters = v
52686	return s
52687}
52688
52689// SetName sets the Name field's value.
52690func (s *UpdatePatchBaselineInput) SetName(v string) *UpdatePatchBaselineInput {
52691	s.Name = &v
52692	return s
52693}
52694
52695// SetRejectedPatches sets the RejectedPatches field's value.
52696func (s *UpdatePatchBaselineInput) SetRejectedPatches(v []*string) *UpdatePatchBaselineInput {
52697	s.RejectedPatches = v
52698	return s
52699}
52700
52701// SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
52702func (s *UpdatePatchBaselineInput) SetRejectedPatchesAction(v string) *UpdatePatchBaselineInput {
52703	s.RejectedPatchesAction = &v
52704	return s
52705}
52706
52707// SetReplace sets the Replace field's value.
52708func (s *UpdatePatchBaselineInput) SetReplace(v bool) *UpdatePatchBaselineInput {
52709	s.Replace = &v
52710	return s
52711}
52712
52713// SetSources sets the Sources field's value.
52714func (s *UpdatePatchBaselineInput) SetSources(v []*PatchSource) *UpdatePatchBaselineInput {
52715	s.Sources = v
52716	return s
52717}
52718
52719type UpdatePatchBaselineOutput struct {
52720	_ struct{} `type:"structure"`
52721
52722	// A set of rules used to include patches in the baseline.
52723	ApprovalRules *PatchRuleGroup `type:"structure"`
52724
52725	// A list of explicitly approved patches for the baseline.
52726	ApprovedPatches []*string `type:"list"`
52727
52728	// The compliance severity level assigned to the patch baseline after the update
52729	// completed.
52730	ApprovedPatchesComplianceLevel *string `type:"string" enum:"PatchComplianceLevel"`
52731
52732	// Indicates whether the list of approved patches includes non-security updates
52733	// that should be applied to the instances. The default value is false. Applies
52734	// to Linux instances only.
52735	ApprovedPatchesEnableNonSecurity *bool `type:"boolean"`
52736
52737	// The ID of the deleted patch baseline.
52738	BaselineId *string `min:"20" type:"string"`
52739
52740	// The date when the patch baseline was created.
52741	CreatedDate *time.Time `type:"timestamp"`
52742
52743	// A description of the patch baseline.
52744	Description *string `min:"1" type:"string"`
52745
52746	// A set of global filters used to exclude patches from the baseline.
52747	GlobalFilters *PatchFilterGroup `type:"structure"`
52748
52749	// The date when the patch baseline was last modified.
52750	ModifiedDate *time.Time `type:"timestamp"`
52751
52752	// The name of the patch baseline.
52753	Name *string `min:"3" type:"string"`
52754
52755	// The operating system rule used by the updated patch baseline.
52756	OperatingSystem *string `type:"string" enum:"OperatingSystem"`
52757
52758	// A list of explicitly rejected patches for the baseline.
52759	RejectedPatches []*string `type:"list"`
52760
52761	// The action specified to take on patches included in the RejectedPatches list.
52762	// A patch can be allowed only if it is a dependency of another package, or
52763	// blocked entirely along with packages that include it as a dependency.
52764	RejectedPatchesAction *string `type:"string" enum:"PatchAction"`
52765
52766	// Information about the patches to use to update the instances, including target
52767	// operating systems and source repositories. Applies to Linux instances only.
52768	Sources []*PatchSource `type:"list"`
52769}
52770
52771// String returns the string representation
52772func (s UpdatePatchBaselineOutput) String() string {
52773	return awsutil.Prettify(s)
52774}
52775
52776// GoString returns the string representation
52777func (s UpdatePatchBaselineOutput) GoString() string {
52778	return s.String()
52779}
52780
52781// SetApprovalRules sets the ApprovalRules field's value.
52782func (s *UpdatePatchBaselineOutput) SetApprovalRules(v *PatchRuleGroup) *UpdatePatchBaselineOutput {
52783	s.ApprovalRules = v
52784	return s
52785}
52786
52787// SetApprovedPatches sets the ApprovedPatches field's value.
52788func (s *UpdatePatchBaselineOutput) SetApprovedPatches(v []*string) *UpdatePatchBaselineOutput {
52789	s.ApprovedPatches = v
52790	return s
52791}
52792
52793// SetApprovedPatchesComplianceLevel sets the ApprovedPatchesComplianceLevel field's value.
52794func (s *UpdatePatchBaselineOutput) SetApprovedPatchesComplianceLevel(v string) *UpdatePatchBaselineOutput {
52795	s.ApprovedPatchesComplianceLevel = &v
52796	return s
52797}
52798
52799// SetApprovedPatchesEnableNonSecurity sets the ApprovedPatchesEnableNonSecurity field's value.
52800func (s *UpdatePatchBaselineOutput) SetApprovedPatchesEnableNonSecurity(v bool) *UpdatePatchBaselineOutput {
52801	s.ApprovedPatchesEnableNonSecurity = &v
52802	return s
52803}
52804
52805// SetBaselineId sets the BaselineId field's value.
52806func (s *UpdatePatchBaselineOutput) SetBaselineId(v string) *UpdatePatchBaselineOutput {
52807	s.BaselineId = &v
52808	return s
52809}
52810
52811// SetCreatedDate sets the CreatedDate field's value.
52812func (s *UpdatePatchBaselineOutput) SetCreatedDate(v time.Time) *UpdatePatchBaselineOutput {
52813	s.CreatedDate = &v
52814	return s
52815}
52816
52817// SetDescription sets the Description field's value.
52818func (s *UpdatePatchBaselineOutput) SetDescription(v string) *UpdatePatchBaselineOutput {
52819	s.Description = &v
52820	return s
52821}
52822
52823// SetGlobalFilters sets the GlobalFilters field's value.
52824func (s *UpdatePatchBaselineOutput) SetGlobalFilters(v *PatchFilterGroup) *UpdatePatchBaselineOutput {
52825	s.GlobalFilters = v
52826	return s
52827}
52828
52829// SetModifiedDate sets the ModifiedDate field's value.
52830func (s *UpdatePatchBaselineOutput) SetModifiedDate(v time.Time) *UpdatePatchBaselineOutput {
52831	s.ModifiedDate = &v
52832	return s
52833}
52834
52835// SetName sets the Name field's value.
52836func (s *UpdatePatchBaselineOutput) SetName(v string) *UpdatePatchBaselineOutput {
52837	s.Name = &v
52838	return s
52839}
52840
52841// SetOperatingSystem sets the OperatingSystem field's value.
52842func (s *UpdatePatchBaselineOutput) SetOperatingSystem(v string) *UpdatePatchBaselineOutput {
52843	s.OperatingSystem = &v
52844	return s
52845}
52846
52847// SetRejectedPatches sets the RejectedPatches field's value.
52848func (s *UpdatePatchBaselineOutput) SetRejectedPatches(v []*string) *UpdatePatchBaselineOutput {
52849	s.RejectedPatches = v
52850	return s
52851}
52852
52853// SetRejectedPatchesAction sets the RejectedPatchesAction field's value.
52854func (s *UpdatePatchBaselineOutput) SetRejectedPatchesAction(v string) *UpdatePatchBaselineOutput {
52855	s.RejectedPatchesAction = &v
52856	return s
52857}
52858
52859// SetSources sets the Sources field's value.
52860func (s *UpdatePatchBaselineOutput) SetSources(v []*PatchSource) *UpdatePatchBaselineOutput {
52861	s.Sources = v
52862	return s
52863}
52864
52865type UpdateResourceDataSyncInput struct {
52866	_ struct{} `type:"structure"`
52867
52868	// The name of the resource data sync you want to update.
52869	//
52870	// SyncName is a required field
52871	SyncName *string `min:"1" type:"string" required:"true"`
52872
52873	// Specify information about the data sources to synchronize.
52874	//
52875	// SyncSource is a required field
52876	SyncSource *ResourceDataSyncSource `type:"structure" required:"true"`
52877
52878	// The type of resource data sync. The supported SyncType is SyncFromSource.
52879	//
52880	// SyncType is a required field
52881	SyncType *string `min:"1" type:"string" required:"true"`
52882}
52883
52884// String returns the string representation
52885func (s UpdateResourceDataSyncInput) String() string {
52886	return awsutil.Prettify(s)
52887}
52888
52889// GoString returns the string representation
52890func (s UpdateResourceDataSyncInput) GoString() string {
52891	return s.String()
52892}
52893
52894// Validate inspects the fields of the type to determine if they are valid.
52895func (s *UpdateResourceDataSyncInput) Validate() error {
52896	invalidParams := request.ErrInvalidParams{Context: "UpdateResourceDataSyncInput"}
52897	if s.SyncName == nil {
52898		invalidParams.Add(request.NewErrParamRequired("SyncName"))
52899	}
52900	if s.SyncName != nil && len(*s.SyncName) < 1 {
52901		invalidParams.Add(request.NewErrParamMinLen("SyncName", 1))
52902	}
52903	if s.SyncSource == nil {
52904		invalidParams.Add(request.NewErrParamRequired("SyncSource"))
52905	}
52906	if s.SyncType == nil {
52907		invalidParams.Add(request.NewErrParamRequired("SyncType"))
52908	}
52909	if s.SyncType != nil && len(*s.SyncType) < 1 {
52910		invalidParams.Add(request.NewErrParamMinLen("SyncType", 1))
52911	}
52912	if s.SyncSource != nil {
52913		if err := s.SyncSource.Validate(); err != nil {
52914			invalidParams.AddNested("SyncSource", err.(request.ErrInvalidParams))
52915		}
52916	}
52917
52918	if invalidParams.Len() > 0 {
52919		return invalidParams
52920	}
52921	return nil
52922}
52923
52924// SetSyncName sets the SyncName field's value.
52925func (s *UpdateResourceDataSyncInput) SetSyncName(v string) *UpdateResourceDataSyncInput {
52926	s.SyncName = &v
52927	return s
52928}
52929
52930// SetSyncSource sets the SyncSource field's value.
52931func (s *UpdateResourceDataSyncInput) SetSyncSource(v *ResourceDataSyncSource) *UpdateResourceDataSyncInput {
52932	s.SyncSource = v
52933	return s
52934}
52935
52936// SetSyncType sets the SyncType field's value.
52937func (s *UpdateResourceDataSyncInput) SetSyncType(v string) *UpdateResourceDataSyncInput {
52938	s.SyncType = &v
52939	return s
52940}
52941
52942type UpdateResourceDataSyncOutput struct {
52943	_ struct{} `type:"structure"`
52944}
52945
52946// String returns the string representation
52947func (s UpdateResourceDataSyncOutput) String() string {
52948	return awsutil.Prettify(s)
52949}
52950
52951// GoString returns the string representation
52952func (s UpdateResourceDataSyncOutput) GoString() string {
52953	return s.String()
52954}
52955
52956// The request body of the UpdateServiceSetting API operation.
52957type UpdateServiceSettingInput struct {
52958	_ struct{} `type:"structure"`
52959
52960	// The Amazon Resource Name (ARN) of the service setting to reset. For example,
52961	// arn:aws:ssm:us-east-1:111122223333:servicesetting/ssm/parameter-store/high-throughput-enabled.
52962	// The setting ID can be one of the following.
52963	//
52964	//    * /ssm/automation/customer-script-log-destination
52965	//
52966	//    * /ssm/automation/customer-script-log-group-name
52967	//
52968	//    * /ssm/documents/console/public-sharing-permission
52969	//
52970	//    * /ssm/parameter-store/default-parameter-tier
52971	//
52972	//    * /ssm/parameter-store/high-throughput-enabled
52973	//
52974	//    * /ssm/managed-instance/activation-tier
52975	//
52976	// SettingId is a required field
52977	SettingId *string `min:"1" type:"string" required:"true"`
52978
52979	// The new value to specify for the service setting. For the /ssm/parameter-store/default-parameter-tier
52980	// setting ID, the setting value can be one of the following.
52981	//
52982	//    * Standard
52983	//
52984	//    * Advanced
52985	//
52986	//    * Intelligent-Tiering
52987	//
52988	// For the /ssm/parameter-store/high-throughput-enabled, and /ssm/managed-instance/activation-tier
52989	// setting IDs, the setting value can be true or false.
52990	//
52991	// For the /ssm/automation/customer-script-log-destination setting ID, the setting
52992	// value can be CloudWatch.
52993	//
52994	// For the /ssm/automation/customer-script-log-group-name setting ID, the setting
52995	// value can be the name of an Amazon CloudWatch Logs log group.
52996	//
52997	// For the /ssm/documents/console/public-sharing-permission setting ID, the
52998	// setting value can be Enable or Disable.
52999	//
53000	// SettingValue is a required field
53001	SettingValue *string `min:"1" type:"string" required:"true"`
53002}
53003
53004// String returns the string representation
53005func (s UpdateServiceSettingInput) String() string {
53006	return awsutil.Prettify(s)
53007}
53008
53009// GoString returns the string representation
53010func (s UpdateServiceSettingInput) GoString() string {
53011	return s.String()
53012}
53013
53014// Validate inspects the fields of the type to determine if they are valid.
53015func (s *UpdateServiceSettingInput) Validate() error {
53016	invalidParams := request.ErrInvalidParams{Context: "UpdateServiceSettingInput"}
53017	if s.SettingId == nil {
53018		invalidParams.Add(request.NewErrParamRequired("SettingId"))
53019	}
53020	if s.SettingId != nil && len(*s.SettingId) < 1 {
53021		invalidParams.Add(request.NewErrParamMinLen("SettingId", 1))
53022	}
53023	if s.SettingValue == nil {
53024		invalidParams.Add(request.NewErrParamRequired("SettingValue"))
53025	}
53026	if s.SettingValue != nil && len(*s.SettingValue) < 1 {
53027		invalidParams.Add(request.NewErrParamMinLen("SettingValue", 1))
53028	}
53029
53030	if invalidParams.Len() > 0 {
53031		return invalidParams
53032	}
53033	return nil
53034}
53035
53036// SetSettingId sets the SettingId field's value.
53037func (s *UpdateServiceSettingInput) SetSettingId(v string) *UpdateServiceSettingInput {
53038	s.SettingId = &v
53039	return s
53040}
53041
53042// SetSettingValue sets the SettingValue field's value.
53043func (s *UpdateServiceSettingInput) SetSettingValue(v string) *UpdateServiceSettingInput {
53044	s.SettingValue = &v
53045	return s
53046}
53047
53048// The result body of the UpdateServiceSetting API operation.
53049type UpdateServiceSettingOutput struct {
53050	_ struct{} `type:"structure"`
53051}
53052
53053// String returns the string representation
53054func (s UpdateServiceSettingOutput) String() string {
53055	return awsutil.Prettify(s)
53056}
53057
53058// GoString returns the string representation
53059func (s UpdateServiceSettingOutput) GoString() string {
53060	return s.String()
53061}
53062
53063const (
53064	// AssociationComplianceSeverityCritical is a AssociationComplianceSeverity enum value
53065	AssociationComplianceSeverityCritical = "CRITICAL"
53066
53067	// AssociationComplianceSeverityHigh is a AssociationComplianceSeverity enum value
53068	AssociationComplianceSeverityHigh = "HIGH"
53069
53070	// AssociationComplianceSeverityMedium is a AssociationComplianceSeverity enum value
53071	AssociationComplianceSeverityMedium = "MEDIUM"
53072
53073	// AssociationComplianceSeverityLow is a AssociationComplianceSeverity enum value
53074	AssociationComplianceSeverityLow = "LOW"
53075
53076	// AssociationComplianceSeverityUnspecified is a AssociationComplianceSeverity enum value
53077	AssociationComplianceSeverityUnspecified = "UNSPECIFIED"
53078)
53079
53080// AssociationComplianceSeverity_Values returns all elements of the AssociationComplianceSeverity enum
53081func AssociationComplianceSeverity_Values() []string {
53082	return []string{
53083		AssociationComplianceSeverityCritical,
53084		AssociationComplianceSeverityHigh,
53085		AssociationComplianceSeverityMedium,
53086		AssociationComplianceSeverityLow,
53087		AssociationComplianceSeverityUnspecified,
53088	}
53089}
53090
53091const (
53092	// AssociationExecutionFilterKeyExecutionId is a AssociationExecutionFilterKey enum value
53093	AssociationExecutionFilterKeyExecutionId = "ExecutionId"
53094
53095	// AssociationExecutionFilterKeyStatus is a AssociationExecutionFilterKey enum value
53096	AssociationExecutionFilterKeyStatus = "Status"
53097
53098	// AssociationExecutionFilterKeyCreatedTime is a AssociationExecutionFilterKey enum value
53099	AssociationExecutionFilterKeyCreatedTime = "CreatedTime"
53100)
53101
53102// AssociationExecutionFilterKey_Values returns all elements of the AssociationExecutionFilterKey enum
53103func AssociationExecutionFilterKey_Values() []string {
53104	return []string{
53105		AssociationExecutionFilterKeyExecutionId,
53106		AssociationExecutionFilterKeyStatus,
53107		AssociationExecutionFilterKeyCreatedTime,
53108	}
53109}
53110
53111const (
53112	// AssociationExecutionTargetsFilterKeyStatus is a AssociationExecutionTargetsFilterKey enum value
53113	AssociationExecutionTargetsFilterKeyStatus = "Status"
53114
53115	// AssociationExecutionTargetsFilterKeyResourceId is a AssociationExecutionTargetsFilterKey enum value
53116	AssociationExecutionTargetsFilterKeyResourceId = "ResourceId"
53117
53118	// AssociationExecutionTargetsFilterKeyResourceType is a AssociationExecutionTargetsFilterKey enum value
53119	AssociationExecutionTargetsFilterKeyResourceType = "ResourceType"
53120)
53121
53122// AssociationExecutionTargetsFilterKey_Values returns all elements of the AssociationExecutionTargetsFilterKey enum
53123func AssociationExecutionTargetsFilterKey_Values() []string {
53124	return []string{
53125		AssociationExecutionTargetsFilterKeyStatus,
53126		AssociationExecutionTargetsFilterKeyResourceId,
53127		AssociationExecutionTargetsFilterKeyResourceType,
53128	}
53129}
53130
53131const (
53132	// AssociationFilterKeyInstanceId is a AssociationFilterKey enum value
53133	AssociationFilterKeyInstanceId = "InstanceId"
53134
53135	// AssociationFilterKeyName is a AssociationFilterKey enum value
53136	AssociationFilterKeyName = "Name"
53137
53138	// AssociationFilterKeyAssociationId is a AssociationFilterKey enum value
53139	AssociationFilterKeyAssociationId = "AssociationId"
53140
53141	// AssociationFilterKeyAssociationStatusName is a AssociationFilterKey enum value
53142	AssociationFilterKeyAssociationStatusName = "AssociationStatusName"
53143
53144	// AssociationFilterKeyLastExecutedBefore is a AssociationFilterKey enum value
53145	AssociationFilterKeyLastExecutedBefore = "LastExecutedBefore"
53146
53147	// AssociationFilterKeyLastExecutedAfter is a AssociationFilterKey enum value
53148	AssociationFilterKeyLastExecutedAfter = "LastExecutedAfter"
53149
53150	// AssociationFilterKeyAssociationName is a AssociationFilterKey enum value
53151	AssociationFilterKeyAssociationName = "AssociationName"
53152
53153	// AssociationFilterKeyResourceGroupName is a AssociationFilterKey enum value
53154	AssociationFilterKeyResourceGroupName = "ResourceGroupName"
53155)
53156
53157// AssociationFilterKey_Values returns all elements of the AssociationFilterKey enum
53158func AssociationFilterKey_Values() []string {
53159	return []string{
53160		AssociationFilterKeyInstanceId,
53161		AssociationFilterKeyName,
53162		AssociationFilterKeyAssociationId,
53163		AssociationFilterKeyAssociationStatusName,
53164		AssociationFilterKeyLastExecutedBefore,
53165		AssociationFilterKeyLastExecutedAfter,
53166		AssociationFilterKeyAssociationName,
53167		AssociationFilterKeyResourceGroupName,
53168	}
53169}
53170
53171const (
53172	// AssociationFilterOperatorTypeEqual is a AssociationFilterOperatorType enum value
53173	AssociationFilterOperatorTypeEqual = "EQUAL"
53174
53175	// AssociationFilterOperatorTypeLessThan is a AssociationFilterOperatorType enum value
53176	AssociationFilterOperatorTypeLessThan = "LESS_THAN"
53177
53178	// AssociationFilterOperatorTypeGreaterThan is a AssociationFilterOperatorType enum value
53179	AssociationFilterOperatorTypeGreaterThan = "GREATER_THAN"
53180)
53181
53182// AssociationFilterOperatorType_Values returns all elements of the AssociationFilterOperatorType enum
53183func AssociationFilterOperatorType_Values() []string {
53184	return []string{
53185		AssociationFilterOperatorTypeEqual,
53186		AssociationFilterOperatorTypeLessThan,
53187		AssociationFilterOperatorTypeGreaterThan,
53188	}
53189}
53190
53191const (
53192	// AssociationStatusNamePending is a AssociationStatusName enum value
53193	AssociationStatusNamePending = "Pending"
53194
53195	// AssociationStatusNameSuccess is a AssociationStatusName enum value
53196	AssociationStatusNameSuccess = "Success"
53197
53198	// AssociationStatusNameFailed is a AssociationStatusName enum value
53199	AssociationStatusNameFailed = "Failed"
53200)
53201
53202// AssociationStatusName_Values returns all elements of the AssociationStatusName enum
53203func AssociationStatusName_Values() []string {
53204	return []string{
53205		AssociationStatusNamePending,
53206		AssociationStatusNameSuccess,
53207		AssociationStatusNameFailed,
53208	}
53209}
53210
53211const (
53212	// AssociationSyncComplianceAuto is a AssociationSyncCompliance enum value
53213	AssociationSyncComplianceAuto = "AUTO"
53214
53215	// AssociationSyncComplianceManual is a AssociationSyncCompliance enum value
53216	AssociationSyncComplianceManual = "MANUAL"
53217)
53218
53219// AssociationSyncCompliance_Values returns all elements of the AssociationSyncCompliance enum
53220func AssociationSyncCompliance_Values() []string {
53221	return []string{
53222		AssociationSyncComplianceAuto,
53223		AssociationSyncComplianceManual,
53224	}
53225}
53226
53227const (
53228	// AttachmentHashTypeSha256 is a AttachmentHashType enum value
53229	AttachmentHashTypeSha256 = "Sha256"
53230)
53231
53232// AttachmentHashType_Values returns all elements of the AttachmentHashType enum
53233func AttachmentHashType_Values() []string {
53234	return []string{
53235		AttachmentHashTypeSha256,
53236	}
53237}
53238
53239const (
53240	// AttachmentsSourceKeySourceUrl is a AttachmentsSourceKey enum value
53241	AttachmentsSourceKeySourceUrl = "SourceUrl"
53242
53243	// AttachmentsSourceKeyS3fileUrl is a AttachmentsSourceKey enum value
53244	AttachmentsSourceKeyS3fileUrl = "S3FileUrl"
53245
53246	// AttachmentsSourceKeyAttachmentReference is a AttachmentsSourceKey enum value
53247	AttachmentsSourceKeyAttachmentReference = "AttachmentReference"
53248)
53249
53250// AttachmentsSourceKey_Values returns all elements of the AttachmentsSourceKey enum
53251func AttachmentsSourceKey_Values() []string {
53252	return []string{
53253		AttachmentsSourceKeySourceUrl,
53254		AttachmentsSourceKeyS3fileUrl,
53255		AttachmentsSourceKeyAttachmentReference,
53256	}
53257}
53258
53259const (
53260	// AutomationExecutionFilterKeyDocumentNamePrefix is a AutomationExecutionFilterKey enum value
53261	AutomationExecutionFilterKeyDocumentNamePrefix = "DocumentNamePrefix"
53262
53263	// AutomationExecutionFilterKeyExecutionStatus is a AutomationExecutionFilterKey enum value
53264	AutomationExecutionFilterKeyExecutionStatus = "ExecutionStatus"
53265
53266	// AutomationExecutionFilterKeyExecutionId is a AutomationExecutionFilterKey enum value
53267	AutomationExecutionFilterKeyExecutionId = "ExecutionId"
53268
53269	// AutomationExecutionFilterKeyParentExecutionId is a AutomationExecutionFilterKey enum value
53270	AutomationExecutionFilterKeyParentExecutionId = "ParentExecutionId"
53271
53272	// AutomationExecutionFilterKeyCurrentAction is a AutomationExecutionFilterKey enum value
53273	AutomationExecutionFilterKeyCurrentAction = "CurrentAction"
53274
53275	// AutomationExecutionFilterKeyStartTimeBefore is a AutomationExecutionFilterKey enum value
53276	AutomationExecutionFilterKeyStartTimeBefore = "StartTimeBefore"
53277
53278	// AutomationExecutionFilterKeyStartTimeAfter is a AutomationExecutionFilterKey enum value
53279	AutomationExecutionFilterKeyStartTimeAfter = "StartTimeAfter"
53280
53281	// AutomationExecutionFilterKeyAutomationType is a AutomationExecutionFilterKey enum value
53282	AutomationExecutionFilterKeyAutomationType = "AutomationType"
53283
53284	// AutomationExecutionFilterKeyTagKey is a AutomationExecutionFilterKey enum value
53285	AutomationExecutionFilterKeyTagKey = "TagKey"
53286
53287	// AutomationExecutionFilterKeyTargetResourceGroup is a AutomationExecutionFilterKey enum value
53288	AutomationExecutionFilterKeyTargetResourceGroup = "TargetResourceGroup"
53289
53290	// AutomationExecutionFilterKeyAutomationSubtype is a AutomationExecutionFilterKey enum value
53291	AutomationExecutionFilterKeyAutomationSubtype = "AutomationSubtype"
53292
53293	// AutomationExecutionFilterKeyOpsItemId is a AutomationExecutionFilterKey enum value
53294	AutomationExecutionFilterKeyOpsItemId = "OpsItemId"
53295)
53296
53297// AutomationExecutionFilterKey_Values returns all elements of the AutomationExecutionFilterKey enum
53298func AutomationExecutionFilterKey_Values() []string {
53299	return []string{
53300		AutomationExecutionFilterKeyDocumentNamePrefix,
53301		AutomationExecutionFilterKeyExecutionStatus,
53302		AutomationExecutionFilterKeyExecutionId,
53303		AutomationExecutionFilterKeyParentExecutionId,
53304		AutomationExecutionFilterKeyCurrentAction,
53305		AutomationExecutionFilterKeyStartTimeBefore,
53306		AutomationExecutionFilterKeyStartTimeAfter,
53307		AutomationExecutionFilterKeyAutomationType,
53308		AutomationExecutionFilterKeyTagKey,
53309		AutomationExecutionFilterKeyTargetResourceGroup,
53310		AutomationExecutionFilterKeyAutomationSubtype,
53311		AutomationExecutionFilterKeyOpsItemId,
53312	}
53313}
53314
53315const (
53316	// AutomationExecutionStatusPending is a AutomationExecutionStatus enum value
53317	AutomationExecutionStatusPending = "Pending"
53318
53319	// AutomationExecutionStatusInProgress is a AutomationExecutionStatus enum value
53320	AutomationExecutionStatusInProgress = "InProgress"
53321
53322	// AutomationExecutionStatusWaiting is a AutomationExecutionStatus enum value
53323	AutomationExecutionStatusWaiting = "Waiting"
53324
53325	// AutomationExecutionStatusSuccess is a AutomationExecutionStatus enum value
53326	AutomationExecutionStatusSuccess = "Success"
53327
53328	// AutomationExecutionStatusTimedOut is a AutomationExecutionStatus enum value
53329	AutomationExecutionStatusTimedOut = "TimedOut"
53330
53331	// AutomationExecutionStatusCancelling is a AutomationExecutionStatus enum value
53332	AutomationExecutionStatusCancelling = "Cancelling"
53333
53334	// AutomationExecutionStatusCancelled is a AutomationExecutionStatus enum value
53335	AutomationExecutionStatusCancelled = "Cancelled"
53336
53337	// AutomationExecutionStatusFailed is a AutomationExecutionStatus enum value
53338	AutomationExecutionStatusFailed = "Failed"
53339
53340	// AutomationExecutionStatusPendingApproval is a AutomationExecutionStatus enum value
53341	AutomationExecutionStatusPendingApproval = "PendingApproval"
53342
53343	// AutomationExecutionStatusApproved is a AutomationExecutionStatus enum value
53344	AutomationExecutionStatusApproved = "Approved"
53345
53346	// AutomationExecutionStatusRejected is a AutomationExecutionStatus enum value
53347	AutomationExecutionStatusRejected = "Rejected"
53348
53349	// AutomationExecutionStatusScheduled is a AutomationExecutionStatus enum value
53350	AutomationExecutionStatusScheduled = "Scheduled"
53351
53352	// AutomationExecutionStatusRunbookInProgress is a AutomationExecutionStatus enum value
53353	AutomationExecutionStatusRunbookInProgress = "RunbookInProgress"
53354
53355	// AutomationExecutionStatusPendingChangeCalendarOverride is a AutomationExecutionStatus enum value
53356	AutomationExecutionStatusPendingChangeCalendarOverride = "PendingChangeCalendarOverride"
53357
53358	// AutomationExecutionStatusChangeCalendarOverrideApproved is a AutomationExecutionStatus enum value
53359	AutomationExecutionStatusChangeCalendarOverrideApproved = "ChangeCalendarOverrideApproved"
53360
53361	// AutomationExecutionStatusChangeCalendarOverrideRejected is a AutomationExecutionStatus enum value
53362	AutomationExecutionStatusChangeCalendarOverrideRejected = "ChangeCalendarOverrideRejected"
53363
53364	// AutomationExecutionStatusCompletedWithSuccess is a AutomationExecutionStatus enum value
53365	AutomationExecutionStatusCompletedWithSuccess = "CompletedWithSuccess"
53366
53367	// AutomationExecutionStatusCompletedWithFailure is a AutomationExecutionStatus enum value
53368	AutomationExecutionStatusCompletedWithFailure = "CompletedWithFailure"
53369)
53370
53371// AutomationExecutionStatus_Values returns all elements of the AutomationExecutionStatus enum
53372func AutomationExecutionStatus_Values() []string {
53373	return []string{
53374		AutomationExecutionStatusPending,
53375		AutomationExecutionStatusInProgress,
53376		AutomationExecutionStatusWaiting,
53377		AutomationExecutionStatusSuccess,
53378		AutomationExecutionStatusTimedOut,
53379		AutomationExecutionStatusCancelling,
53380		AutomationExecutionStatusCancelled,
53381		AutomationExecutionStatusFailed,
53382		AutomationExecutionStatusPendingApproval,
53383		AutomationExecutionStatusApproved,
53384		AutomationExecutionStatusRejected,
53385		AutomationExecutionStatusScheduled,
53386		AutomationExecutionStatusRunbookInProgress,
53387		AutomationExecutionStatusPendingChangeCalendarOverride,
53388		AutomationExecutionStatusChangeCalendarOverrideApproved,
53389		AutomationExecutionStatusChangeCalendarOverrideRejected,
53390		AutomationExecutionStatusCompletedWithSuccess,
53391		AutomationExecutionStatusCompletedWithFailure,
53392	}
53393}
53394
53395const (
53396	// AutomationSubtypeChangeRequest is a AutomationSubtype enum value
53397	AutomationSubtypeChangeRequest = "ChangeRequest"
53398)
53399
53400// AutomationSubtype_Values returns all elements of the AutomationSubtype enum
53401func AutomationSubtype_Values() []string {
53402	return []string{
53403		AutomationSubtypeChangeRequest,
53404	}
53405}
53406
53407const (
53408	// AutomationTypeCrossAccount is a AutomationType enum value
53409	AutomationTypeCrossAccount = "CrossAccount"
53410
53411	// AutomationTypeLocal is a AutomationType enum value
53412	AutomationTypeLocal = "Local"
53413)
53414
53415// AutomationType_Values returns all elements of the AutomationType enum
53416func AutomationType_Values() []string {
53417	return []string{
53418		AutomationTypeCrossAccount,
53419		AutomationTypeLocal,
53420	}
53421}
53422
53423const (
53424	// CalendarStateOpen is a CalendarState enum value
53425	CalendarStateOpen = "OPEN"
53426
53427	// CalendarStateClosed is a CalendarState enum value
53428	CalendarStateClosed = "CLOSED"
53429)
53430
53431// CalendarState_Values returns all elements of the CalendarState enum
53432func CalendarState_Values() []string {
53433	return []string{
53434		CalendarStateOpen,
53435		CalendarStateClosed,
53436	}
53437}
53438
53439const (
53440	// CommandFilterKeyInvokedAfter is a CommandFilterKey enum value
53441	CommandFilterKeyInvokedAfter = "InvokedAfter"
53442
53443	// CommandFilterKeyInvokedBefore is a CommandFilterKey enum value
53444	CommandFilterKeyInvokedBefore = "InvokedBefore"
53445
53446	// CommandFilterKeyStatus is a CommandFilterKey enum value
53447	CommandFilterKeyStatus = "Status"
53448
53449	// CommandFilterKeyExecutionStage is a CommandFilterKey enum value
53450	CommandFilterKeyExecutionStage = "ExecutionStage"
53451
53452	// CommandFilterKeyDocumentName is a CommandFilterKey enum value
53453	CommandFilterKeyDocumentName = "DocumentName"
53454)
53455
53456// CommandFilterKey_Values returns all elements of the CommandFilterKey enum
53457func CommandFilterKey_Values() []string {
53458	return []string{
53459		CommandFilterKeyInvokedAfter,
53460		CommandFilterKeyInvokedBefore,
53461		CommandFilterKeyStatus,
53462		CommandFilterKeyExecutionStage,
53463		CommandFilterKeyDocumentName,
53464	}
53465}
53466
53467const (
53468	// CommandInvocationStatusPending is a CommandInvocationStatus enum value
53469	CommandInvocationStatusPending = "Pending"
53470
53471	// CommandInvocationStatusInProgress is a CommandInvocationStatus enum value
53472	CommandInvocationStatusInProgress = "InProgress"
53473
53474	// CommandInvocationStatusDelayed is a CommandInvocationStatus enum value
53475	CommandInvocationStatusDelayed = "Delayed"
53476
53477	// CommandInvocationStatusSuccess is a CommandInvocationStatus enum value
53478	CommandInvocationStatusSuccess = "Success"
53479
53480	// CommandInvocationStatusCancelled is a CommandInvocationStatus enum value
53481	CommandInvocationStatusCancelled = "Cancelled"
53482
53483	// CommandInvocationStatusTimedOut is a CommandInvocationStatus enum value
53484	CommandInvocationStatusTimedOut = "TimedOut"
53485
53486	// CommandInvocationStatusFailed is a CommandInvocationStatus enum value
53487	CommandInvocationStatusFailed = "Failed"
53488
53489	// CommandInvocationStatusCancelling is a CommandInvocationStatus enum value
53490	CommandInvocationStatusCancelling = "Cancelling"
53491)
53492
53493// CommandInvocationStatus_Values returns all elements of the CommandInvocationStatus enum
53494func CommandInvocationStatus_Values() []string {
53495	return []string{
53496		CommandInvocationStatusPending,
53497		CommandInvocationStatusInProgress,
53498		CommandInvocationStatusDelayed,
53499		CommandInvocationStatusSuccess,
53500		CommandInvocationStatusCancelled,
53501		CommandInvocationStatusTimedOut,
53502		CommandInvocationStatusFailed,
53503		CommandInvocationStatusCancelling,
53504	}
53505}
53506
53507const (
53508	// CommandPluginStatusPending is a CommandPluginStatus enum value
53509	CommandPluginStatusPending = "Pending"
53510
53511	// CommandPluginStatusInProgress is a CommandPluginStatus enum value
53512	CommandPluginStatusInProgress = "InProgress"
53513
53514	// CommandPluginStatusSuccess is a CommandPluginStatus enum value
53515	CommandPluginStatusSuccess = "Success"
53516
53517	// CommandPluginStatusTimedOut is a CommandPluginStatus enum value
53518	CommandPluginStatusTimedOut = "TimedOut"
53519
53520	// CommandPluginStatusCancelled is a CommandPluginStatus enum value
53521	CommandPluginStatusCancelled = "Cancelled"
53522
53523	// CommandPluginStatusFailed is a CommandPluginStatus enum value
53524	CommandPluginStatusFailed = "Failed"
53525)
53526
53527// CommandPluginStatus_Values returns all elements of the CommandPluginStatus enum
53528func CommandPluginStatus_Values() []string {
53529	return []string{
53530		CommandPluginStatusPending,
53531		CommandPluginStatusInProgress,
53532		CommandPluginStatusSuccess,
53533		CommandPluginStatusTimedOut,
53534		CommandPluginStatusCancelled,
53535		CommandPluginStatusFailed,
53536	}
53537}
53538
53539const (
53540	// CommandStatusPending is a CommandStatus enum value
53541	CommandStatusPending = "Pending"
53542
53543	// CommandStatusInProgress is a CommandStatus enum value
53544	CommandStatusInProgress = "InProgress"
53545
53546	// CommandStatusSuccess is a CommandStatus enum value
53547	CommandStatusSuccess = "Success"
53548
53549	// CommandStatusCancelled is a CommandStatus enum value
53550	CommandStatusCancelled = "Cancelled"
53551
53552	// CommandStatusFailed is a CommandStatus enum value
53553	CommandStatusFailed = "Failed"
53554
53555	// CommandStatusTimedOut is a CommandStatus enum value
53556	CommandStatusTimedOut = "TimedOut"
53557
53558	// CommandStatusCancelling is a CommandStatus enum value
53559	CommandStatusCancelling = "Cancelling"
53560)
53561
53562// CommandStatus_Values returns all elements of the CommandStatus enum
53563func CommandStatus_Values() []string {
53564	return []string{
53565		CommandStatusPending,
53566		CommandStatusInProgress,
53567		CommandStatusSuccess,
53568		CommandStatusCancelled,
53569		CommandStatusFailed,
53570		CommandStatusTimedOut,
53571		CommandStatusCancelling,
53572	}
53573}
53574
53575const (
53576	// ComplianceQueryOperatorTypeEqual is a ComplianceQueryOperatorType enum value
53577	ComplianceQueryOperatorTypeEqual = "EQUAL"
53578
53579	// ComplianceQueryOperatorTypeNotEqual is a ComplianceQueryOperatorType enum value
53580	ComplianceQueryOperatorTypeNotEqual = "NOT_EQUAL"
53581
53582	// ComplianceQueryOperatorTypeBeginWith is a ComplianceQueryOperatorType enum value
53583	ComplianceQueryOperatorTypeBeginWith = "BEGIN_WITH"
53584
53585	// ComplianceQueryOperatorTypeLessThan is a ComplianceQueryOperatorType enum value
53586	ComplianceQueryOperatorTypeLessThan = "LESS_THAN"
53587
53588	// ComplianceQueryOperatorTypeGreaterThan is a ComplianceQueryOperatorType enum value
53589	ComplianceQueryOperatorTypeGreaterThan = "GREATER_THAN"
53590)
53591
53592// ComplianceQueryOperatorType_Values returns all elements of the ComplianceQueryOperatorType enum
53593func ComplianceQueryOperatorType_Values() []string {
53594	return []string{
53595		ComplianceQueryOperatorTypeEqual,
53596		ComplianceQueryOperatorTypeNotEqual,
53597		ComplianceQueryOperatorTypeBeginWith,
53598		ComplianceQueryOperatorTypeLessThan,
53599		ComplianceQueryOperatorTypeGreaterThan,
53600	}
53601}
53602
53603const (
53604	// ComplianceSeverityCritical is a ComplianceSeverity enum value
53605	ComplianceSeverityCritical = "CRITICAL"
53606
53607	// ComplianceSeverityHigh is a ComplianceSeverity enum value
53608	ComplianceSeverityHigh = "HIGH"
53609
53610	// ComplianceSeverityMedium is a ComplianceSeverity enum value
53611	ComplianceSeverityMedium = "MEDIUM"
53612
53613	// ComplianceSeverityLow is a ComplianceSeverity enum value
53614	ComplianceSeverityLow = "LOW"
53615
53616	// ComplianceSeverityInformational is a ComplianceSeverity enum value
53617	ComplianceSeverityInformational = "INFORMATIONAL"
53618
53619	// ComplianceSeverityUnspecified is a ComplianceSeverity enum value
53620	ComplianceSeverityUnspecified = "UNSPECIFIED"
53621)
53622
53623// ComplianceSeverity_Values returns all elements of the ComplianceSeverity enum
53624func ComplianceSeverity_Values() []string {
53625	return []string{
53626		ComplianceSeverityCritical,
53627		ComplianceSeverityHigh,
53628		ComplianceSeverityMedium,
53629		ComplianceSeverityLow,
53630		ComplianceSeverityInformational,
53631		ComplianceSeverityUnspecified,
53632	}
53633}
53634
53635const (
53636	// ComplianceStatusCompliant is a ComplianceStatus enum value
53637	ComplianceStatusCompliant = "COMPLIANT"
53638
53639	// ComplianceStatusNonCompliant is a ComplianceStatus enum value
53640	ComplianceStatusNonCompliant = "NON_COMPLIANT"
53641)
53642
53643// ComplianceStatus_Values returns all elements of the ComplianceStatus enum
53644func ComplianceStatus_Values() []string {
53645	return []string{
53646		ComplianceStatusCompliant,
53647		ComplianceStatusNonCompliant,
53648	}
53649}
53650
53651const (
53652	// ComplianceUploadTypeComplete is a ComplianceUploadType enum value
53653	ComplianceUploadTypeComplete = "COMPLETE"
53654
53655	// ComplianceUploadTypePartial is a ComplianceUploadType enum value
53656	ComplianceUploadTypePartial = "PARTIAL"
53657)
53658
53659// ComplianceUploadType_Values returns all elements of the ComplianceUploadType enum
53660func ComplianceUploadType_Values() []string {
53661	return []string{
53662		ComplianceUploadTypeComplete,
53663		ComplianceUploadTypePartial,
53664	}
53665}
53666
53667const (
53668	// ConnectionStatusConnected is a ConnectionStatus enum value
53669	ConnectionStatusConnected = "Connected"
53670
53671	// ConnectionStatusNotConnected is a ConnectionStatus enum value
53672	ConnectionStatusNotConnected = "NotConnected"
53673)
53674
53675// ConnectionStatus_Values returns all elements of the ConnectionStatus enum
53676func ConnectionStatus_Values() []string {
53677	return []string{
53678		ConnectionStatusConnected,
53679		ConnectionStatusNotConnected,
53680	}
53681}
53682
53683const (
53684	// DescribeActivationsFilterKeysActivationIds is a DescribeActivationsFilterKeys enum value
53685	DescribeActivationsFilterKeysActivationIds = "ActivationIds"
53686
53687	// DescribeActivationsFilterKeysDefaultInstanceName is a DescribeActivationsFilterKeys enum value
53688	DescribeActivationsFilterKeysDefaultInstanceName = "DefaultInstanceName"
53689
53690	// DescribeActivationsFilterKeysIamRole is a DescribeActivationsFilterKeys enum value
53691	DescribeActivationsFilterKeysIamRole = "IamRole"
53692)
53693
53694// DescribeActivationsFilterKeys_Values returns all elements of the DescribeActivationsFilterKeys enum
53695func DescribeActivationsFilterKeys_Values() []string {
53696	return []string{
53697		DescribeActivationsFilterKeysActivationIds,
53698		DescribeActivationsFilterKeysDefaultInstanceName,
53699		DescribeActivationsFilterKeysIamRole,
53700	}
53701}
53702
53703const (
53704	// DocumentFilterKeyName is a DocumentFilterKey enum value
53705	DocumentFilterKeyName = "Name"
53706
53707	// DocumentFilterKeyOwner is a DocumentFilterKey enum value
53708	DocumentFilterKeyOwner = "Owner"
53709
53710	// DocumentFilterKeyPlatformTypes is a DocumentFilterKey enum value
53711	DocumentFilterKeyPlatformTypes = "PlatformTypes"
53712
53713	// DocumentFilterKeyDocumentType is a DocumentFilterKey enum value
53714	DocumentFilterKeyDocumentType = "DocumentType"
53715)
53716
53717// DocumentFilterKey_Values returns all elements of the DocumentFilterKey enum
53718func DocumentFilterKey_Values() []string {
53719	return []string{
53720		DocumentFilterKeyName,
53721		DocumentFilterKeyOwner,
53722		DocumentFilterKeyPlatformTypes,
53723		DocumentFilterKeyDocumentType,
53724	}
53725}
53726
53727const (
53728	// DocumentFormatYaml is a DocumentFormat enum value
53729	DocumentFormatYaml = "YAML"
53730
53731	// DocumentFormatJson is a DocumentFormat enum value
53732	DocumentFormatJson = "JSON"
53733
53734	// DocumentFormatText is a DocumentFormat enum value
53735	DocumentFormatText = "TEXT"
53736)
53737
53738// DocumentFormat_Values returns all elements of the DocumentFormat enum
53739func DocumentFormat_Values() []string {
53740	return []string{
53741		DocumentFormatYaml,
53742		DocumentFormatJson,
53743		DocumentFormatText,
53744	}
53745}
53746
53747const (
53748	// DocumentHashTypeSha256 is a DocumentHashType enum value
53749	DocumentHashTypeSha256 = "Sha256"
53750
53751	// DocumentHashTypeSha1 is a DocumentHashType enum value
53752	DocumentHashTypeSha1 = "Sha1"
53753)
53754
53755// DocumentHashType_Values returns all elements of the DocumentHashType enum
53756func DocumentHashType_Values() []string {
53757	return []string{
53758		DocumentHashTypeSha256,
53759		DocumentHashTypeSha1,
53760	}
53761}
53762
53763const (
53764	// DocumentMetadataEnumDocumentReviews is a DocumentMetadataEnum enum value
53765	DocumentMetadataEnumDocumentReviews = "DocumentReviews"
53766)
53767
53768// DocumentMetadataEnum_Values returns all elements of the DocumentMetadataEnum enum
53769func DocumentMetadataEnum_Values() []string {
53770	return []string{
53771		DocumentMetadataEnumDocumentReviews,
53772	}
53773}
53774
53775const (
53776	// DocumentParameterTypeString is a DocumentParameterType enum value
53777	DocumentParameterTypeString = "String"
53778
53779	// DocumentParameterTypeStringList is a DocumentParameterType enum value
53780	DocumentParameterTypeStringList = "StringList"
53781)
53782
53783// DocumentParameterType_Values returns all elements of the DocumentParameterType enum
53784func DocumentParameterType_Values() []string {
53785	return []string{
53786		DocumentParameterTypeString,
53787		DocumentParameterTypeStringList,
53788	}
53789}
53790
53791const (
53792	// DocumentPermissionTypeShare is a DocumentPermissionType enum value
53793	DocumentPermissionTypeShare = "Share"
53794)
53795
53796// DocumentPermissionType_Values returns all elements of the DocumentPermissionType enum
53797func DocumentPermissionType_Values() []string {
53798	return []string{
53799		DocumentPermissionTypeShare,
53800	}
53801}
53802
53803const (
53804	// DocumentReviewActionSendForReview is a DocumentReviewAction enum value
53805	DocumentReviewActionSendForReview = "SendForReview"
53806
53807	// DocumentReviewActionUpdateReview is a DocumentReviewAction enum value
53808	DocumentReviewActionUpdateReview = "UpdateReview"
53809
53810	// DocumentReviewActionApprove is a DocumentReviewAction enum value
53811	DocumentReviewActionApprove = "Approve"
53812
53813	// DocumentReviewActionReject is a DocumentReviewAction enum value
53814	DocumentReviewActionReject = "Reject"
53815)
53816
53817// DocumentReviewAction_Values returns all elements of the DocumentReviewAction enum
53818func DocumentReviewAction_Values() []string {
53819	return []string{
53820		DocumentReviewActionSendForReview,
53821		DocumentReviewActionUpdateReview,
53822		DocumentReviewActionApprove,
53823		DocumentReviewActionReject,
53824	}
53825}
53826
53827const (
53828	// DocumentReviewCommentTypeComment is a DocumentReviewCommentType enum value
53829	DocumentReviewCommentTypeComment = "Comment"
53830)
53831
53832// DocumentReviewCommentType_Values returns all elements of the DocumentReviewCommentType enum
53833func DocumentReviewCommentType_Values() []string {
53834	return []string{
53835		DocumentReviewCommentTypeComment,
53836	}
53837}
53838
53839// The status of a document.
53840const (
53841	// DocumentStatusCreating is a DocumentStatus enum value
53842	DocumentStatusCreating = "Creating"
53843
53844	// DocumentStatusActive is a DocumentStatus enum value
53845	DocumentStatusActive = "Active"
53846
53847	// DocumentStatusUpdating is a DocumentStatus enum value
53848	DocumentStatusUpdating = "Updating"
53849
53850	// DocumentStatusDeleting is a DocumentStatus enum value
53851	DocumentStatusDeleting = "Deleting"
53852
53853	// DocumentStatusFailed is a DocumentStatus enum value
53854	DocumentStatusFailed = "Failed"
53855)
53856
53857// DocumentStatus_Values returns all elements of the DocumentStatus enum
53858func DocumentStatus_Values() []string {
53859	return []string{
53860		DocumentStatusCreating,
53861		DocumentStatusActive,
53862		DocumentStatusUpdating,
53863		DocumentStatusDeleting,
53864		DocumentStatusFailed,
53865	}
53866}
53867
53868const (
53869	// DocumentTypeCommand is a DocumentType enum value
53870	DocumentTypeCommand = "Command"
53871
53872	// DocumentTypePolicy is a DocumentType enum value
53873	DocumentTypePolicy = "Policy"
53874
53875	// DocumentTypeAutomation is a DocumentType enum value
53876	DocumentTypeAutomation = "Automation"
53877
53878	// DocumentTypeSession is a DocumentType enum value
53879	DocumentTypeSession = "Session"
53880
53881	// DocumentTypePackage is a DocumentType enum value
53882	DocumentTypePackage = "Package"
53883
53884	// DocumentTypeApplicationConfiguration is a DocumentType enum value
53885	DocumentTypeApplicationConfiguration = "ApplicationConfiguration"
53886
53887	// DocumentTypeApplicationConfigurationSchema is a DocumentType enum value
53888	DocumentTypeApplicationConfigurationSchema = "ApplicationConfigurationSchema"
53889
53890	// DocumentTypeDeploymentStrategy is a DocumentType enum value
53891	DocumentTypeDeploymentStrategy = "DeploymentStrategy"
53892
53893	// DocumentTypeChangeCalendar is a DocumentType enum value
53894	DocumentTypeChangeCalendar = "ChangeCalendar"
53895
53896	// DocumentTypeAutomationChangeTemplate is a DocumentType enum value
53897	DocumentTypeAutomationChangeTemplate = "Automation.ChangeTemplate"
53898
53899	// DocumentTypeProblemAnalysis is a DocumentType enum value
53900	DocumentTypeProblemAnalysis = "ProblemAnalysis"
53901
53902	// DocumentTypeProblemAnalysisTemplate is a DocumentType enum value
53903	DocumentTypeProblemAnalysisTemplate = "ProblemAnalysisTemplate"
53904)
53905
53906// DocumentType_Values returns all elements of the DocumentType enum
53907func DocumentType_Values() []string {
53908	return []string{
53909		DocumentTypeCommand,
53910		DocumentTypePolicy,
53911		DocumentTypeAutomation,
53912		DocumentTypeSession,
53913		DocumentTypePackage,
53914		DocumentTypeApplicationConfiguration,
53915		DocumentTypeApplicationConfigurationSchema,
53916		DocumentTypeDeploymentStrategy,
53917		DocumentTypeChangeCalendar,
53918		DocumentTypeAutomationChangeTemplate,
53919		DocumentTypeProblemAnalysis,
53920		DocumentTypeProblemAnalysisTemplate,
53921	}
53922}
53923
53924const (
53925	// ExecutionModeAuto is a ExecutionMode enum value
53926	ExecutionModeAuto = "Auto"
53927
53928	// ExecutionModeInteractive is a ExecutionMode enum value
53929	ExecutionModeInteractive = "Interactive"
53930)
53931
53932// ExecutionMode_Values returns all elements of the ExecutionMode enum
53933func ExecutionMode_Values() []string {
53934	return []string{
53935		ExecutionModeAuto,
53936		ExecutionModeInteractive,
53937	}
53938}
53939
53940const (
53941	// FaultClient is a Fault enum value
53942	FaultClient = "Client"
53943
53944	// FaultServer is a Fault enum value
53945	FaultServer = "Server"
53946
53947	// FaultUnknown is a Fault enum value
53948	FaultUnknown = "Unknown"
53949)
53950
53951// Fault_Values returns all elements of the Fault enum
53952func Fault_Values() []string {
53953	return []string{
53954		FaultClient,
53955		FaultServer,
53956		FaultUnknown,
53957	}
53958}
53959
53960const (
53961	// InstanceInformationFilterKeyInstanceIds is a InstanceInformationFilterKey enum value
53962	InstanceInformationFilterKeyInstanceIds = "InstanceIds"
53963
53964	// InstanceInformationFilterKeyAgentVersion is a InstanceInformationFilterKey enum value
53965	InstanceInformationFilterKeyAgentVersion = "AgentVersion"
53966
53967	// InstanceInformationFilterKeyPingStatus is a InstanceInformationFilterKey enum value
53968	InstanceInformationFilterKeyPingStatus = "PingStatus"
53969
53970	// InstanceInformationFilterKeyPlatformTypes is a InstanceInformationFilterKey enum value
53971	InstanceInformationFilterKeyPlatformTypes = "PlatformTypes"
53972
53973	// InstanceInformationFilterKeyActivationIds is a InstanceInformationFilterKey enum value
53974	InstanceInformationFilterKeyActivationIds = "ActivationIds"
53975
53976	// InstanceInformationFilterKeyIamRole is a InstanceInformationFilterKey enum value
53977	InstanceInformationFilterKeyIamRole = "IamRole"
53978
53979	// InstanceInformationFilterKeyResourceType is a InstanceInformationFilterKey enum value
53980	InstanceInformationFilterKeyResourceType = "ResourceType"
53981
53982	// InstanceInformationFilterKeyAssociationStatus is a InstanceInformationFilterKey enum value
53983	InstanceInformationFilterKeyAssociationStatus = "AssociationStatus"
53984)
53985
53986// InstanceInformationFilterKey_Values returns all elements of the InstanceInformationFilterKey enum
53987func InstanceInformationFilterKey_Values() []string {
53988	return []string{
53989		InstanceInformationFilterKeyInstanceIds,
53990		InstanceInformationFilterKeyAgentVersion,
53991		InstanceInformationFilterKeyPingStatus,
53992		InstanceInformationFilterKeyPlatformTypes,
53993		InstanceInformationFilterKeyActivationIds,
53994		InstanceInformationFilterKeyIamRole,
53995		InstanceInformationFilterKeyResourceType,
53996		InstanceInformationFilterKeyAssociationStatus,
53997	}
53998}
53999
54000const (
54001	// InstancePatchStateOperatorTypeEqual is a InstancePatchStateOperatorType enum value
54002	InstancePatchStateOperatorTypeEqual = "Equal"
54003
54004	// InstancePatchStateOperatorTypeNotEqual is a InstancePatchStateOperatorType enum value
54005	InstancePatchStateOperatorTypeNotEqual = "NotEqual"
54006
54007	// InstancePatchStateOperatorTypeLessThan is a InstancePatchStateOperatorType enum value
54008	InstancePatchStateOperatorTypeLessThan = "LessThan"
54009
54010	// InstancePatchStateOperatorTypeGreaterThan is a InstancePatchStateOperatorType enum value
54011	InstancePatchStateOperatorTypeGreaterThan = "GreaterThan"
54012)
54013
54014// InstancePatchStateOperatorType_Values returns all elements of the InstancePatchStateOperatorType enum
54015func InstancePatchStateOperatorType_Values() []string {
54016	return []string{
54017		InstancePatchStateOperatorTypeEqual,
54018		InstancePatchStateOperatorTypeNotEqual,
54019		InstancePatchStateOperatorTypeLessThan,
54020		InstancePatchStateOperatorTypeGreaterThan,
54021	}
54022}
54023
54024const (
54025	// InventoryAttributeDataTypeString is a InventoryAttributeDataType enum value
54026	InventoryAttributeDataTypeString = "string"
54027
54028	// InventoryAttributeDataTypeNumber is a InventoryAttributeDataType enum value
54029	InventoryAttributeDataTypeNumber = "number"
54030)
54031
54032// InventoryAttributeDataType_Values returns all elements of the InventoryAttributeDataType enum
54033func InventoryAttributeDataType_Values() []string {
54034	return []string{
54035		InventoryAttributeDataTypeString,
54036		InventoryAttributeDataTypeNumber,
54037	}
54038}
54039
54040const (
54041	// InventoryDeletionStatusInProgress is a InventoryDeletionStatus enum value
54042	InventoryDeletionStatusInProgress = "InProgress"
54043
54044	// InventoryDeletionStatusComplete is a InventoryDeletionStatus enum value
54045	InventoryDeletionStatusComplete = "Complete"
54046)
54047
54048// InventoryDeletionStatus_Values returns all elements of the InventoryDeletionStatus enum
54049func InventoryDeletionStatus_Values() []string {
54050	return []string{
54051		InventoryDeletionStatusInProgress,
54052		InventoryDeletionStatusComplete,
54053	}
54054}
54055
54056const (
54057	// InventoryQueryOperatorTypeEqual is a InventoryQueryOperatorType enum value
54058	InventoryQueryOperatorTypeEqual = "Equal"
54059
54060	// InventoryQueryOperatorTypeNotEqual is a InventoryQueryOperatorType enum value
54061	InventoryQueryOperatorTypeNotEqual = "NotEqual"
54062
54063	// InventoryQueryOperatorTypeBeginWith is a InventoryQueryOperatorType enum value
54064	InventoryQueryOperatorTypeBeginWith = "BeginWith"
54065
54066	// InventoryQueryOperatorTypeLessThan is a InventoryQueryOperatorType enum value
54067	InventoryQueryOperatorTypeLessThan = "LessThan"
54068
54069	// InventoryQueryOperatorTypeGreaterThan is a InventoryQueryOperatorType enum value
54070	InventoryQueryOperatorTypeGreaterThan = "GreaterThan"
54071
54072	// InventoryQueryOperatorTypeExists is a InventoryQueryOperatorType enum value
54073	InventoryQueryOperatorTypeExists = "Exists"
54074)
54075
54076// InventoryQueryOperatorType_Values returns all elements of the InventoryQueryOperatorType enum
54077func InventoryQueryOperatorType_Values() []string {
54078	return []string{
54079		InventoryQueryOperatorTypeEqual,
54080		InventoryQueryOperatorTypeNotEqual,
54081		InventoryQueryOperatorTypeBeginWith,
54082		InventoryQueryOperatorTypeLessThan,
54083		InventoryQueryOperatorTypeGreaterThan,
54084		InventoryQueryOperatorTypeExists,
54085	}
54086}
54087
54088const (
54089	// InventorySchemaDeleteOptionDisableSchema is a InventorySchemaDeleteOption enum value
54090	InventorySchemaDeleteOptionDisableSchema = "DisableSchema"
54091
54092	// InventorySchemaDeleteOptionDeleteSchema is a InventorySchemaDeleteOption enum value
54093	InventorySchemaDeleteOptionDeleteSchema = "DeleteSchema"
54094)
54095
54096// InventorySchemaDeleteOption_Values returns all elements of the InventorySchemaDeleteOption enum
54097func InventorySchemaDeleteOption_Values() []string {
54098	return []string{
54099		InventorySchemaDeleteOptionDisableSchema,
54100		InventorySchemaDeleteOptionDeleteSchema,
54101	}
54102}
54103
54104const (
54105	// LastResourceDataSyncStatusSuccessful is a LastResourceDataSyncStatus enum value
54106	LastResourceDataSyncStatusSuccessful = "Successful"
54107
54108	// LastResourceDataSyncStatusFailed is a LastResourceDataSyncStatus enum value
54109	LastResourceDataSyncStatusFailed = "Failed"
54110
54111	// LastResourceDataSyncStatusInProgress is a LastResourceDataSyncStatus enum value
54112	LastResourceDataSyncStatusInProgress = "InProgress"
54113)
54114
54115// LastResourceDataSyncStatus_Values returns all elements of the LastResourceDataSyncStatus enum
54116func LastResourceDataSyncStatus_Values() []string {
54117	return []string{
54118		LastResourceDataSyncStatusSuccessful,
54119		LastResourceDataSyncStatusFailed,
54120		LastResourceDataSyncStatusInProgress,
54121	}
54122}
54123
54124const (
54125	// MaintenanceWindowExecutionStatusPending is a MaintenanceWindowExecutionStatus enum value
54126	MaintenanceWindowExecutionStatusPending = "PENDING"
54127
54128	// MaintenanceWindowExecutionStatusInProgress is a MaintenanceWindowExecutionStatus enum value
54129	MaintenanceWindowExecutionStatusInProgress = "IN_PROGRESS"
54130
54131	// MaintenanceWindowExecutionStatusSuccess is a MaintenanceWindowExecutionStatus enum value
54132	MaintenanceWindowExecutionStatusSuccess = "SUCCESS"
54133
54134	// MaintenanceWindowExecutionStatusFailed is a MaintenanceWindowExecutionStatus enum value
54135	MaintenanceWindowExecutionStatusFailed = "FAILED"
54136
54137	// MaintenanceWindowExecutionStatusTimedOut is a MaintenanceWindowExecutionStatus enum value
54138	MaintenanceWindowExecutionStatusTimedOut = "TIMED_OUT"
54139
54140	// MaintenanceWindowExecutionStatusCancelling is a MaintenanceWindowExecutionStatus enum value
54141	MaintenanceWindowExecutionStatusCancelling = "CANCELLING"
54142
54143	// MaintenanceWindowExecutionStatusCancelled is a MaintenanceWindowExecutionStatus enum value
54144	MaintenanceWindowExecutionStatusCancelled = "CANCELLED"
54145
54146	// MaintenanceWindowExecutionStatusSkippedOverlapping is a MaintenanceWindowExecutionStatus enum value
54147	MaintenanceWindowExecutionStatusSkippedOverlapping = "SKIPPED_OVERLAPPING"
54148)
54149
54150// MaintenanceWindowExecutionStatus_Values returns all elements of the MaintenanceWindowExecutionStatus enum
54151func MaintenanceWindowExecutionStatus_Values() []string {
54152	return []string{
54153		MaintenanceWindowExecutionStatusPending,
54154		MaintenanceWindowExecutionStatusInProgress,
54155		MaintenanceWindowExecutionStatusSuccess,
54156		MaintenanceWindowExecutionStatusFailed,
54157		MaintenanceWindowExecutionStatusTimedOut,
54158		MaintenanceWindowExecutionStatusCancelling,
54159		MaintenanceWindowExecutionStatusCancelled,
54160		MaintenanceWindowExecutionStatusSkippedOverlapping,
54161	}
54162}
54163
54164const (
54165	// MaintenanceWindowResourceTypeInstance is a MaintenanceWindowResourceType enum value
54166	MaintenanceWindowResourceTypeInstance = "INSTANCE"
54167
54168	// MaintenanceWindowResourceTypeResourceGroup is a MaintenanceWindowResourceType enum value
54169	MaintenanceWindowResourceTypeResourceGroup = "RESOURCE_GROUP"
54170)
54171
54172// MaintenanceWindowResourceType_Values returns all elements of the MaintenanceWindowResourceType enum
54173func MaintenanceWindowResourceType_Values() []string {
54174	return []string{
54175		MaintenanceWindowResourceTypeInstance,
54176		MaintenanceWindowResourceTypeResourceGroup,
54177	}
54178}
54179
54180const (
54181	// MaintenanceWindowTaskTypeRunCommand is a MaintenanceWindowTaskType enum value
54182	MaintenanceWindowTaskTypeRunCommand = "RUN_COMMAND"
54183
54184	// MaintenanceWindowTaskTypeAutomation is a MaintenanceWindowTaskType enum value
54185	MaintenanceWindowTaskTypeAutomation = "AUTOMATION"
54186
54187	// MaintenanceWindowTaskTypeStepFunctions is a MaintenanceWindowTaskType enum value
54188	MaintenanceWindowTaskTypeStepFunctions = "STEP_FUNCTIONS"
54189
54190	// MaintenanceWindowTaskTypeLambda is a MaintenanceWindowTaskType enum value
54191	MaintenanceWindowTaskTypeLambda = "LAMBDA"
54192)
54193
54194// MaintenanceWindowTaskType_Values returns all elements of the MaintenanceWindowTaskType enum
54195func MaintenanceWindowTaskType_Values() []string {
54196	return []string{
54197		MaintenanceWindowTaskTypeRunCommand,
54198		MaintenanceWindowTaskTypeAutomation,
54199		MaintenanceWindowTaskTypeStepFunctions,
54200		MaintenanceWindowTaskTypeLambda,
54201	}
54202}
54203
54204const (
54205	// NotificationEventAll is a NotificationEvent enum value
54206	NotificationEventAll = "All"
54207
54208	// NotificationEventInProgress is a NotificationEvent enum value
54209	NotificationEventInProgress = "InProgress"
54210
54211	// NotificationEventSuccess is a NotificationEvent enum value
54212	NotificationEventSuccess = "Success"
54213
54214	// NotificationEventTimedOut is a NotificationEvent enum value
54215	NotificationEventTimedOut = "TimedOut"
54216
54217	// NotificationEventCancelled is a NotificationEvent enum value
54218	NotificationEventCancelled = "Cancelled"
54219
54220	// NotificationEventFailed is a NotificationEvent enum value
54221	NotificationEventFailed = "Failed"
54222)
54223
54224// NotificationEvent_Values returns all elements of the NotificationEvent enum
54225func NotificationEvent_Values() []string {
54226	return []string{
54227		NotificationEventAll,
54228		NotificationEventInProgress,
54229		NotificationEventSuccess,
54230		NotificationEventTimedOut,
54231		NotificationEventCancelled,
54232		NotificationEventFailed,
54233	}
54234}
54235
54236const (
54237	// NotificationTypeCommand is a NotificationType enum value
54238	NotificationTypeCommand = "Command"
54239
54240	// NotificationTypeInvocation is a NotificationType enum value
54241	NotificationTypeInvocation = "Invocation"
54242)
54243
54244// NotificationType_Values returns all elements of the NotificationType enum
54245func NotificationType_Values() []string {
54246	return []string{
54247		NotificationTypeCommand,
54248		NotificationTypeInvocation,
54249	}
54250}
54251
54252const (
54253	// OperatingSystemWindows is a OperatingSystem enum value
54254	OperatingSystemWindows = "WINDOWS"
54255
54256	// OperatingSystemAmazonLinux is a OperatingSystem enum value
54257	OperatingSystemAmazonLinux = "AMAZON_LINUX"
54258
54259	// OperatingSystemAmazonLinux2 is a OperatingSystem enum value
54260	OperatingSystemAmazonLinux2 = "AMAZON_LINUX_2"
54261
54262	// OperatingSystemUbuntu is a OperatingSystem enum value
54263	OperatingSystemUbuntu = "UBUNTU"
54264
54265	// OperatingSystemRedhatEnterpriseLinux is a OperatingSystem enum value
54266	OperatingSystemRedhatEnterpriseLinux = "REDHAT_ENTERPRISE_LINUX"
54267
54268	// OperatingSystemSuse is a OperatingSystem enum value
54269	OperatingSystemSuse = "SUSE"
54270
54271	// OperatingSystemCentos is a OperatingSystem enum value
54272	OperatingSystemCentos = "CENTOS"
54273
54274	// OperatingSystemOracleLinux is a OperatingSystem enum value
54275	OperatingSystemOracleLinux = "ORACLE_LINUX"
54276
54277	// OperatingSystemDebian is a OperatingSystem enum value
54278	OperatingSystemDebian = "DEBIAN"
54279
54280	// OperatingSystemMacos is a OperatingSystem enum value
54281	OperatingSystemMacos = "MACOS"
54282)
54283
54284// OperatingSystem_Values returns all elements of the OperatingSystem enum
54285func OperatingSystem_Values() []string {
54286	return []string{
54287		OperatingSystemWindows,
54288		OperatingSystemAmazonLinux,
54289		OperatingSystemAmazonLinux2,
54290		OperatingSystemUbuntu,
54291		OperatingSystemRedhatEnterpriseLinux,
54292		OperatingSystemSuse,
54293		OperatingSystemCentos,
54294		OperatingSystemOracleLinux,
54295		OperatingSystemDebian,
54296		OperatingSystemMacos,
54297	}
54298}
54299
54300const (
54301	// OpsFilterOperatorTypeEqual is a OpsFilterOperatorType enum value
54302	OpsFilterOperatorTypeEqual = "Equal"
54303
54304	// OpsFilterOperatorTypeNotEqual is a OpsFilterOperatorType enum value
54305	OpsFilterOperatorTypeNotEqual = "NotEqual"
54306
54307	// OpsFilterOperatorTypeBeginWith is a OpsFilterOperatorType enum value
54308	OpsFilterOperatorTypeBeginWith = "BeginWith"
54309
54310	// OpsFilterOperatorTypeLessThan is a OpsFilterOperatorType enum value
54311	OpsFilterOperatorTypeLessThan = "LessThan"
54312
54313	// OpsFilterOperatorTypeGreaterThan is a OpsFilterOperatorType enum value
54314	OpsFilterOperatorTypeGreaterThan = "GreaterThan"
54315
54316	// OpsFilterOperatorTypeExists is a OpsFilterOperatorType enum value
54317	OpsFilterOperatorTypeExists = "Exists"
54318)
54319
54320// OpsFilterOperatorType_Values returns all elements of the OpsFilterOperatorType enum
54321func OpsFilterOperatorType_Values() []string {
54322	return []string{
54323		OpsFilterOperatorTypeEqual,
54324		OpsFilterOperatorTypeNotEqual,
54325		OpsFilterOperatorTypeBeginWith,
54326		OpsFilterOperatorTypeLessThan,
54327		OpsFilterOperatorTypeGreaterThan,
54328		OpsFilterOperatorTypeExists,
54329	}
54330}
54331
54332const (
54333	// OpsItemDataTypeSearchableString is a OpsItemDataType enum value
54334	OpsItemDataTypeSearchableString = "SearchableString"
54335
54336	// OpsItemDataTypeString is a OpsItemDataType enum value
54337	OpsItemDataTypeString = "String"
54338)
54339
54340// OpsItemDataType_Values returns all elements of the OpsItemDataType enum
54341func OpsItemDataType_Values() []string {
54342	return []string{
54343		OpsItemDataTypeSearchableString,
54344		OpsItemDataTypeString,
54345	}
54346}
54347
54348const (
54349	// OpsItemEventFilterKeyOpsItemId is a OpsItemEventFilterKey enum value
54350	OpsItemEventFilterKeyOpsItemId = "OpsItemId"
54351)
54352
54353// OpsItemEventFilterKey_Values returns all elements of the OpsItemEventFilterKey enum
54354func OpsItemEventFilterKey_Values() []string {
54355	return []string{
54356		OpsItemEventFilterKeyOpsItemId,
54357	}
54358}
54359
54360const (
54361	// OpsItemEventFilterOperatorEqual is a OpsItemEventFilterOperator enum value
54362	OpsItemEventFilterOperatorEqual = "Equal"
54363)
54364
54365// OpsItemEventFilterOperator_Values returns all elements of the OpsItemEventFilterOperator enum
54366func OpsItemEventFilterOperator_Values() []string {
54367	return []string{
54368		OpsItemEventFilterOperatorEqual,
54369	}
54370}
54371
54372const (
54373	// OpsItemFilterKeyStatus is a OpsItemFilterKey enum value
54374	OpsItemFilterKeyStatus = "Status"
54375
54376	// OpsItemFilterKeyCreatedBy is a OpsItemFilterKey enum value
54377	OpsItemFilterKeyCreatedBy = "CreatedBy"
54378
54379	// OpsItemFilterKeySource is a OpsItemFilterKey enum value
54380	OpsItemFilterKeySource = "Source"
54381
54382	// OpsItemFilterKeyPriority is a OpsItemFilterKey enum value
54383	OpsItemFilterKeyPriority = "Priority"
54384
54385	// OpsItemFilterKeyTitle is a OpsItemFilterKey enum value
54386	OpsItemFilterKeyTitle = "Title"
54387
54388	// OpsItemFilterKeyOpsItemId is a OpsItemFilterKey enum value
54389	OpsItemFilterKeyOpsItemId = "OpsItemId"
54390
54391	// OpsItemFilterKeyCreatedTime is a OpsItemFilterKey enum value
54392	OpsItemFilterKeyCreatedTime = "CreatedTime"
54393
54394	// OpsItemFilterKeyLastModifiedTime is a OpsItemFilterKey enum value
54395	OpsItemFilterKeyLastModifiedTime = "LastModifiedTime"
54396
54397	// OpsItemFilterKeyActualStartTime is a OpsItemFilterKey enum value
54398	OpsItemFilterKeyActualStartTime = "ActualStartTime"
54399
54400	// OpsItemFilterKeyActualEndTime is a OpsItemFilterKey enum value
54401	OpsItemFilterKeyActualEndTime = "ActualEndTime"
54402
54403	// OpsItemFilterKeyPlannedStartTime is a OpsItemFilterKey enum value
54404	OpsItemFilterKeyPlannedStartTime = "PlannedStartTime"
54405
54406	// OpsItemFilterKeyPlannedEndTime is a OpsItemFilterKey enum value
54407	OpsItemFilterKeyPlannedEndTime = "PlannedEndTime"
54408
54409	// OpsItemFilterKeyOperationalData is a OpsItemFilterKey enum value
54410	OpsItemFilterKeyOperationalData = "OperationalData"
54411
54412	// OpsItemFilterKeyOperationalDataKey is a OpsItemFilterKey enum value
54413	OpsItemFilterKeyOperationalDataKey = "OperationalDataKey"
54414
54415	// OpsItemFilterKeyOperationalDataValue is a OpsItemFilterKey enum value
54416	OpsItemFilterKeyOperationalDataValue = "OperationalDataValue"
54417
54418	// OpsItemFilterKeyResourceId is a OpsItemFilterKey enum value
54419	OpsItemFilterKeyResourceId = "ResourceId"
54420
54421	// OpsItemFilterKeyAutomationId is a OpsItemFilterKey enum value
54422	OpsItemFilterKeyAutomationId = "AutomationId"
54423
54424	// OpsItemFilterKeyCategory is a OpsItemFilterKey enum value
54425	OpsItemFilterKeyCategory = "Category"
54426
54427	// OpsItemFilterKeySeverity is a OpsItemFilterKey enum value
54428	OpsItemFilterKeySeverity = "Severity"
54429
54430	// OpsItemFilterKeyOpsItemType is a OpsItemFilterKey enum value
54431	OpsItemFilterKeyOpsItemType = "OpsItemType"
54432
54433	// OpsItemFilterKeyChangeRequestByRequesterArn is a OpsItemFilterKey enum value
54434	OpsItemFilterKeyChangeRequestByRequesterArn = "ChangeRequestByRequesterArn"
54435
54436	// OpsItemFilterKeyChangeRequestByRequesterName is a OpsItemFilterKey enum value
54437	OpsItemFilterKeyChangeRequestByRequesterName = "ChangeRequestByRequesterName"
54438
54439	// OpsItemFilterKeyChangeRequestByApproverArn is a OpsItemFilterKey enum value
54440	OpsItemFilterKeyChangeRequestByApproverArn = "ChangeRequestByApproverArn"
54441
54442	// OpsItemFilterKeyChangeRequestByApproverName is a OpsItemFilterKey enum value
54443	OpsItemFilterKeyChangeRequestByApproverName = "ChangeRequestByApproverName"
54444
54445	// OpsItemFilterKeyChangeRequestByTemplate is a OpsItemFilterKey enum value
54446	OpsItemFilterKeyChangeRequestByTemplate = "ChangeRequestByTemplate"
54447
54448	// OpsItemFilterKeyChangeRequestByTargetsResourceGroup is a OpsItemFilterKey enum value
54449	OpsItemFilterKeyChangeRequestByTargetsResourceGroup = "ChangeRequestByTargetsResourceGroup"
54450
54451	// OpsItemFilterKeyInsightByType is a OpsItemFilterKey enum value
54452	OpsItemFilterKeyInsightByType = "InsightByType"
54453)
54454
54455// OpsItemFilterKey_Values returns all elements of the OpsItemFilterKey enum
54456func OpsItemFilterKey_Values() []string {
54457	return []string{
54458		OpsItemFilterKeyStatus,
54459		OpsItemFilterKeyCreatedBy,
54460		OpsItemFilterKeySource,
54461		OpsItemFilterKeyPriority,
54462		OpsItemFilterKeyTitle,
54463		OpsItemFilterKeyOpsItemId,
54464		OpsItemFilterKeyCreatedTime,
54465		OpsItemFilterKeyLastModifiedTime,
54466		OpsItemFilterKeyActualStartTime,
54467		OpsItemFilterKeyActualEndTime,
54468		OpsItemFilterKeyPlannedStartTime,
54469		OpsItemFilterKeyPlannedEndTime,
54470		OpsItemFilterKeyOperationalData,
54471		OpsItemFilterKeyOperationalDataKey,
54472		OpsItemFilterKeyOperationalDataValue,
54473		OpsItemFilterKeyResourceId,
54474		OpsItemFilterKeyAutomationId,
54475		OpsItemFilterKeyCategory,
54476		OpsItemFilterKeySeverity,
54477		OpsItemFilterKeyOpsItemType,
54478		OpsItemFilterKeyChangeRequestByRequesterArn,
54479		OpsItemFilterKeyChangeRequestByRequesterName,
54480		OpsItemFilterKeyChangeRequestByApproverArn,
54481		OpsItemFilterKeyChangeRequestByApproverName,
54482		OpsItemFilterKeyChangeRequestByTemplate,
54483		OpsItemFilterKeyChangeRequestByTargetsResourceGroup,
54484		OpsItemFilterKeyInsightByType,
54485	}
54486}
54487
54488const (
54489	// OpsItemFilterOperatorEqual is a OpsItemFilterOperator enum value
54490	OpsItemFilterOperatorEqual = "Equal"
54491
54492	// OpsItemFilterOperatorContains is a OpsItemFilterOperator enum value
54493	OpsItemFilterOperatorContains = "Contains"
54494
54495	// OpsItemFilterOperatorGreaterThan is a OpsItemFilterOperator enum value
54496	OpsItemFilterOperatorGreaterThan = "GreaterThan"
54497
54498	// OpsItemFilterOperatorLessThan is a OpsItemFilterOperator enum value
54499	OpsItemFilterOperatorLessThan = "LessThan"
54500)
54501
54502// OpsItemFilterOperator_Values returns all elements of the OpsItemFilterOperator enum
54503func OpsItemFilterOperator_Values() []string {
54504	return []string{
54505		OpsItemFilterOperatorEqual,
54506		OpsItemFilterOperatorContains,
54507		OpsItemFilterOperatorGreaterThan,
54508		OpsItemFilterOperatorLessThan,
54509	}
54510}
54511
54512const (
54513	// OpsItemRelatedItemsFilterKeyResourceType is a OpsItemRelatedItemsFilterKey enum value
54514	OpsItemRelatedItemsFilterKeyResourceType = "ResourceType"
54515
54516	// OpsItemRelatedItemsFilterKeyAssociationId is a OpsItemRelatedItemsFilterKey enum value
54517	OpsItemRelatedItemsFilterKeyAssociationId = "AssociationId"
54518
54519	// OpsItemRelatedItemsFilterKeyResourceUri is a OpsItemRelatedItemsFilterKey enum value
54520	OpsItemRelatedItemsFilterKeyResourceUri = "ResourceUri"
54521)
54522
54523// OpsItemRelatedItemsFilterKey_Values returns all elements of the OpsItemRelatedItemsFilterKey enum
54524func OpsItemRelatedItemsFilterKey_Values() []string {
54525	return []string{
54526		OpsItemRelatedItemsFilterKeyResourceType,
54527		OpsItemRelatedItemsFilterKeyAssociationId,
54528		OpsItemRelatedItemsFilterKeyResourceUri,
54529	}
54530}
54531
54532const (
54533	// OpsItemRelatedItemsFilterOperatorEqual is a OpsItemRelatedItemsFilterOperator enum value
54534	OpsItemRelatedItemsFilterOperatorEqual = "Equal"
54535)
54536
54537// OpsItemRelatedItemsFilterOperator_Values returns all elements of the OpsItemRelatedItemsFilterOperator enum
54538func OpsItemRelatedItemsFilterOperator_Values() []string {
54539	return []string{
54540		OpsItemRelatedItemsFilterOperatorEqual,
54541	}
54542}
54543
54544const (
54545	// OpsItemStatusOpen is a OpsItemStatus enum value
54546	OpsItemStatusOpen = "Open"
54547
54548	// OpsItemStatusInProgress is a OpsItemStatus enum value
54549	OpsItemStatusInProgress = "InProgress"
54550
54551	// OpsItemStatusResolved is a OpsItemStatus enum value
54552	OpsItemStatusResolved = "Resolved"
54553
54554	// OpsItemStatusPending is a OpsItemStatus enum value
54555	OpsItemStatusPending = "Pending"
54556
54557	// OpsItemStatusTimedOut is a OpsItemStatus enum value
54558	OpsItemStatusTimedOut = "TimedOut"
54559
54560	// OpsItemStatusCancelling is a OpsItemStatus enum value
54561	OpsItemStatusCancelling = "Cancelling"
54562
54563	// OpsItemStatusCancelled is a OpsItemStatus enum value
54564	OpsItemStatusCancelled = "Cancelled"
54565
54566	// OpsItemStatusFailed is a OpsItemStatus enum value
54567	OpsItemStatusFailed = "Failed"
54568
54569	// OpsItemStatusCompletedWithSuccess is a OpsItemStatus enum value
54570	OpsItemStatusCompletedWithSuccess = "CompletedWithSuccess"
54571
54572	// OpsItemStatusCompletedWithFailure is a OpsItemStatus enum value
54573	OpsItemStatusCompletedWithFailure = "CompletedWithFailure"
54574
54575	// OpsItemStatusScheduled is a OpsItemStatus enum value
54576	OpsItemStatusScheduled = "Scheduled"
54577
54578	// OpsItemStatusRunbookInProgress is a OpsItemStatus enum value
54579	OpsItemStatusRunbookInProgress = "RunbookInProgress"
54580
54581	// OpsItemStatusPendingChangeCalendarOverride is a OpsItemStatus enum value
54582	OpsItemStatusPendingChangeCalendarOverride = "PendingChangeCalendarOverride"
54583
54584	// OpsItemStatusChangeCalendarOverrideApproved is a OpsItemStatus enum value
54585	OpsItemStatusChangeCalendarOverrideApproved = "ChangeCalendarOverrideApproved"
54586
54587	// OpsItemStatusChangeCalendarOverrideRejected is a OpsItemStatus enum value
54588	OpsItemStatusChangeCalendarOverrideRejected = "ChangeCalendarOverrideRejected"
54589
54590	// OpsItemStatusPendingApproval is a OpsItemStatus enum value
54591	OpsItemStatusPendingApproval = "PendingApproval"
54592
54593	// OpsItemStatusApproved is a OpsItemStatus enum value
54594	OpsItemStatusApproved = "Approved"
54595
54596	// OpsItemStatusRejected is a OpsItemStatus enum value
54597	OpsItemStatusRejected = "Rejected"
54598
54599	// OpsItemStatusClosed is a OpsItemStatus enum value
54600	OpsItemStatusClosed = "Closed"
54601)
54602
54603// OpsItemStatus_Values returns all elements of the OpsItemStatus enum
54604func OpsItemStatus_Values() []string {
54605	return []string{
54606		OpsItemStatusOpen,
54607		OpsItemStatusInProgress,
54608		OpsItemStatusResolved,
54609		OpsItemStatusPending,
54610		OpsItemStatusTimedOut,
54611		OpsItemStatusCancelling,
54612		OpsItemStatusCancelled,
54613		OpsItemStatusFailed,
54614		OpsItemStatusCompletedWithSuccess,
54615		OpsItemStatusCompletedWithFailure,
54616		OpsItemStatusScheduled,
54617		OpsItemStatusRunbookInProgress,
54618		OpsItemStatusPendingChangeCalendarOverride,
54619		OpsItemStatusChangeCalendarOverrideApproved,
54620		OpsItemStatusChangeCalendarOverrideRejected,
54621		OpsItemStatusPendingApproval,
54622		OpsItemStatusApproved,
54623		OpsItemStatusRejected,
54624		OpsItemStatusClosed,
54625	}
54626}
54627
54628const (
54629	// ParameterTierStandard is a ParameterTier enum value
54630	ParameterTierStandard = "Standard"
54631
54632	// ParameterTierAdvanced is a ParameterTier enum value
54633	ParameterTierAdvanced = "Advanced"
54634
54635	// ParameterTierIntelligentTiering is a ParameterTier enum value
54636	ParameterTierIntelligentTiering = "Intelligent-Tiering"
54637)
54638
54639// ParameterTier_Values returns all elements of the ParameterTier enum
54640func ParameterTier_Values() []string {
54641	return []string{
54642		ParameterTierStandard,
54643		ParameterTierAdvanced,
54644		ParameterTierIntelligentTiering,
54645	}
54646}
54647
54648const (
54649	// ParameterTypeString is a ParameterType enum value
54650	ParameterTypeString = "String"
54651
54652	// ParameterTypeStringList is a ParameterType enum value
54653	ParameterTypeStringList = "StringList"
54654
54655	// ParameterTypeSecureString is a ParameterType enum value
54656	ParameterTypeSecureString = "SecureString"
54657)
54658
54659// ParameterType_Values returns all elements of the ParameterType enum
54660func ParameterType_Values() []string {
54661	return []string{
54662		ParameterTypeString,
54663		ParameterTypeStringList,
54664		ParameterTypeSecureString,
54665	}
54666}
54667
54668const (
54669	// ParametersFilterKeyName is a ParametersFilterKey enum value
54670	ParametersFilterKeyName = "Name"
54671
54672	// ParametersFilterKeyType is a ParametersFilterKey enum value
54673	ParametersFilterKeyType = "Type"
54674
54675	// ParametersFilterKeyKeyId is a ParametersFilterKey enum value
54676	ParametersFilterKeyKeyId = "KeyId"
54677)
54678
54679// ParametersFilterKey_Values returns all elements of the ParametersFilterKey enum
54680func ParametersFilterKey_Values() []string {
54681	return []string{
54682		ParametersFilterKeyName,
54683		ParametersFilterKeyType,
54684		ParametersFilterKeyKeyId,
54685	}
54686}
54687
54688const (
54689	// PatchActionAllowAsDependency is a PatchAction enum value
54690	PatchActionAllowAsDependency = "ALLOW_AS_DEPENDENCY"
54691
54692	// PatchActionBlock is a PatchAction enum value
54693	PatchActionBlock = "BLOCK"
54694)
54695
54696// PatchAction_Values returns all elements of the PatchAction enum
54697func PatchAction_Values() []string {
54698	return []string{
54699		PatchActionAllowAsDependency,
54700		PatchActionBlock,
54701	}
54702}
54703
54704const (
54705	// PatchComplianceDataStateInstalled is a PatchComplianceDataState enum value
54706	PatchComplianceDataStateInstalled = "INSTALLED"
54707
54708	// PatchComplianceDataStateInstalledOther is a PatchComplianceDataState enum value
54709	PatchComplianceDataStateInstalledOther = "INSTALLED_OTHER"
54710
54711	// PatchComplianceDataStateInstalledPendingReboot is a PatchComplianceDataState enum value
54712	PatchComplianceDataStateInstalledPendingReboot = "INSTALLED_PENDING_REBOOT"
54713
54714	// PatchComplianceDataStateInstalledRejected is a PatchComplianceDataState enum value
54715	PatchComplianceDataStateInstalledRejected = "INSTALLED_REJECTED"
54716
54717	// PatchComplianceDataStateMissing is a PatchComplianceDataState enum value
54718	PatchComplianceDataStateMissing = "MISSING"
54719
54720	// PatchComplianceDataStateNotApplicable is a PatchComplianceDataState enum value
54721	PatchComplianceDataStateNotApplicable = "NOT_APPLICABLE"
54722
54723	// PatchComplianceDataStateFailed is a PatchComplianceDataState enum value
54724	PatchComplianceDataStateFailed = "FAILED"
54725)
54726
54727// PatchComplianceDataState_Values returns all elements of the PatchComplianceDataState enum
54728func PatchComplianceDataState_Values() []string {
54729	return []string{
54730		PatchComplianceDataStateInstalled,
54731		PatchComplianceDataStateInstalledOther,
54732		PatchComplianceDataStateInstalledPendingReboot,
54733		PatchComplianceDataStateInstalledRejected,
54734		PatchComplianceDataStateMissing,
54735		PatchComplianceDataStateNotApplicable,
54736		PatchComplianceDataStateFailed,
54737	}
54738}
54739
54740const (
54741	// PatchComplianceLevelCritical is a PatchComplianceLevel enum value
54742	PatchComplianceLevelCritical = "CRITICAL"
54743
54744	// PatchComplianceLevelHigh is a PatchComplianceLevel enum value
54745	PatchComplianceLevelHigh = "HIGH"
54746
54747	// PatchComplianceLevelMedium is a PatchComplianceLevel enum value
54748	PatchComplianceLevelMedium = "MEDIUM"
54749
54750	// PatchComplianceLevelLow is a PatchComplianceLevel enum value
54751	PatchComplianceLevelLow = "LOW"
54752
54753	// PatchComplianceLevelInformational is a PatchComplianceLevel enum value
54754	PatchComplianceLevelInformational = "INFORMATIONAL"
54755
54756	// PatchComplianceLevelUnspecified is a PatchComplianceLevel enum value
54757	PatchComplianceLevelUnspecified = "UNSPECIFIED"
54758)
54759
54760// PatchComplianceLevel_Values returns all elements of the PatchComplianceLevel enum
54761func PatchComplianceLevel_Values() []string {
54762	return []string{
54763		PatchComplianceLevelCritical,
54764		PatchComplianceLevelHigh,
54765		PatchComplianceLevelMedium,
54766		PatchComplianceLevelLow,
54767		PatchComplianceLevelInformational,
54768		PatchComplianceLevelUnspecified,
54769	}
54770}
54771
54772const (
54773	// PatchDeploymentStatusApproved is a PatchDeploymentStatus enum value
54774	PatchDeploymentStatusApproved = "APPROVED"
54775
54776	// PatchDeploymentStatusPendingApproval is a PatchDeploymentStatus enum value
54777	PatchDeploymentStatusPendingApproval = "PENDING_APPROVAL"
54778
54779	// PatchDeploymentStatusExplicitApproved is a PatchDeploymentStatus enum value
54780	PatchDeploymentStatusExplicitApproved = "EXPLICIT_APPROVED"
54781
54782	// PatchDeploymentStatusExplicitRejected is a PatchDeploymentStatus enum value
54783	PatchDeploymentStatusExplicitRejected = "EXPLICIT_REJECTED"
54784)
54785
54786// PatchDeploymentStatus_Values returns all elements of the PatchDeploymentStatus enum
54787func PatchDeploymentStatus_Values() []string {
54788	return []string{
54789		PatchDeploymentStatusApproved,
54790		PatchDeploymentStatusPendingApproval,
54791		PatchDeploymentStatusExplicitApproved,
54792		PatchDeploymentStatusExplicitRejected,
54793	}
54794}
54795
54796const (
54797	// PatchFilterKeyArch is a PatchFilterKey enum value
54798	PatchFilterKeyArch = "ARCH"
54799
54800	// PatchFilterKeyAdvisoryId is a PatchFilterKey enum value
54801	PatchFilterKeyAdvisoryId = "ADVISORY_ID"
54802
54803	// PatchFilterKeyBugzillaId is a PatchFilterKey enum value
54804	PatchFilterKeyBugzillaId = "BUGZILLA_ID"
54805
54806	// PatchFilterKeyPatchSet is a PatchFilterKey enum value
54807	PatchFilterKeyPatchSet = "PATCH_SET"
54808
54809	// PatchFilterKeyProduct is a PatchFilterKey enum value
54810	PatchFilterKeyProduct = "PRODUCT"
54811
54812	// PatchFilterKeyProductFamily is a PatchFilterKey enum value
54813	PatchFilterKeyProductFamily = "PRODUCT_FAMILY"
54814
54815	// PatchFilterKeyClassification is a PatchFilterKey enum value
54816	PatchFilterKeyClassification = "CLASSIFICATION"
54817
54818	// PatchFilterKeyCveId is a PatchFilterKey enum value
54819	PatchFilterKeyCveId = "CVE_ID"
54820
54821	// PatchFilterKeyEpoch is a PatchFilterKey enum value
54822	PatchFilterKeyEpoch = "EPOCH"
54823
54824	// PatchFilterKeyMsrcSeverity is a PatchFilterKey enum value
54825	PatchFilterKeyMsrcSeverity = "MSRC_SEVERITY"
54826
54827	// PatchFilterKeyName is a PatchFilterKey enum value
54828	PatchFilterKeyName = "NAME"
54829
54830	// PatchFilterKeyPatchId is a PatchFilterKey enum value
54831	PatchFilterKeyPatchId = "PATCH_ID"
54832
54833	// PatchFilterKeySection is a PatchFilterKey enum value
54834	PatchFilterKeySection = "SECTION"
54835
54836	// PatchFilterKeyPriority is a PatchFilterKey enum value
54837	PatchFilterKeyPriority = "PRIORITY"
54838
54839	// PatchFilterKeyRepository is a PatchFilterKey enum value
54840	PatchFilterKeyRepository = "REPOSITORY"
54841
54842	// PatchFilterKeyRelease is a PatchFilterKey enum value
54843	PatchFilterKeyRelease = "RELEASE"
54844
54845	// PatchFilterKeySeverity is a PatchFilterKey enum value
54846	PatchFilterKeySeverity = "SEVERITY"
54847
54848	// PatchFilterKeySecurity is a PatchFilterKey enum value
54849	PatchFilterKeySecurity = "SECURITY"
54850
54851	// PatchFilterKeyVersion is a PatchFilterKey enum value
54852	PatchFilterKeyVersion = "VERSION"
54853)
54854
54855// PatchFilterKey_Values returns all elements of the PatchFilterKey enum
54856func PatchFilterKey_Values() []string {
54857	return []string{
54858		PatchFilterKeyArch,
54859		PatchFilterKeyAdvisoryId,
54860		PatchFilterKeyBugzillaId,
54861		PatchFilterKeyPatchSet,
54862		PatchFilterKeyProduct,
54863		PatchFilterKeyProductFamily,
54864		PatchFilterKeyClassification,
54865		PatchFilterKeyCveId,
54866		PatchFilterKeyEpoch,
54867		PatchFilterKeyMsrcSeverity,
54868		PatchFilterKeyName,
54869		PatchFilterKeyPatchId,
54870		PatchFilterKeySection,
54871		PatchFilterKeyPriority,
54872		PatchFilterKeyRepository,
54873		PatchFilterKeyRelease,
54874		PatchFilterKeySeverity,
54875		PatchFilterKeySecurity,
54876		PatchFilterKeyVersion,
54877	}
54878}
54879
54880const (
54881	// PatchOperationTypeScan is a PatchOperationType enum value
54882	PatchOperationTypeScan = "Scan"
54883
54884	// PatchOperationTypeInstall is a PatchOperationType enum value
54885	PatchOperationTypeInstall = "Install"
54886)
54887
54888// PatchOperationType_Values returns all elements of the PatchOperationType enum
54889func PatchOperationType_Values() []string {
54890	return []string{
54891		PatchOperationTypeScan,
54892		PatchOperationTypeInstall,
54893	}
54894}
54895
54896const (
54897	// PatchPropertyProduct is a PatchProperty enum value
54898	PatchPropertyProduct = "PRODUCT"
54899
54900	// PatchPropertyProductFamily is a PatchProperty enum value
54901	PatchPropertyProductFamily = "PRODUCT_FAMILY"
54902
54903	// PatchPropertyClassification is a PatchProperty enum value
54904	PatchPropertyClassification = "CLASSIFICATION"
54905
54906	// PatchPropertyMsrcSeverity is a PatchProperty enum value
54907	PatchPropertyMsrcSeverity = "MSRC_SEVERITY"
54908
54909	// PatchPropertyPriority is a PatchProperty enum value
54910	PatchPropertyPriority = "PRIORITY"
54911
54912	// PatchPropertySeverity is a PatchProperty enum value
54913	PatchPropertySeverity = "SEVERITY"
54914)
54915
54916// PatchProperty_Values returns all elements of the PatchProperty enum
54917func PatchProperty_Values() []string {
54918	return []string{
54919		PatchPropertyProduct,
54920		PatchPropertyProductFamily,
54921		PatchPropertyClassification,
54922		PatchPropertyMsrcSeverity,
54923		PatchPropertyPriority,
54924		PatchPropertySeverity,
54925	}
54926}
54927
54928const (
54929	// PatchSetOs is a PatchSet enum value
54930	PatchSetOs = "OS"
54931
54932	// PatchSetApplication is a PatchSet enum value
54933	PatchSetApplication = "APPLICATION"
54934)
54935
54936// PatchSet_Values returns all elements of the PatchSet enum
54937func PatchSet_Values() []string {
54938	return []string{
54939		PatchSetOs,
54940		PatchSetApplication,
54941	}
54942}
54943
54944const (
54945	// PingStatusOnline is a PingStatus enum value
54946	PingStatusOnline = "Online"
54947
54948	// PingStatusConnectionLost is a PingStatus enum value
54949	PingStatusConnectionLost = "ConnectionLost"
54950
54951	// PingStatusInactive is a PingStatus enum value
54952	PingStatusInactive = "Inactive"
54953)
54954
54955// PingStatus_Values returns all elements of the PingStatus enum
54956func PingStatus_Values() []string {
54957	return []string{
54958		PingStatusOnline,
54959		PingStatusConnectionLost,
54960		PingStatusInactive,
54961	}
54962}
54963
54964const (
54965	// PlatformTypeWindows is a PlatformType enum value
54966	PlatformTypeWindows = "Windows"
54967
54968	// PlatformTypeLinux is a PlatformType enum value
54969	PlatformTypeLinux = "Linux"
54970)
54971
54972// PlatformType_Values returns all elements of the PlatformType enum
54973func PlatformType_Values() []string {
54974	return []string{
54975		PlatformTypeWindows,
54976		PlatformTypeLinux,
54977	}
54978}
54979
54980const (
54981	// RebootOptionRebootIfNeeded is a RebootOption enum value
54982	RebootOptionRebootIfNeeded = "RebootIfNeeded"
54983
54984	// RebootOptionNoReboot is a RebootOption enum value
54985	RebootOptionNoReboot = "NoReboot"
54986)
54987
54988// RebootOption_Values returns all elements of the RebootOption enum
54989func RebootOption_Values() []string {
54990	return []string{
54991		RebootOptionRebootIfNeeded,
54992		RebootOptionNoReboot,
54993	}
54994}
54995
54996const (
54997	// ResourceDataSyncS3FormatJsonSerDe is a ResourceDataSyncS3Format enum value
54998	ResourceDataSyncS3FormatJsonSerDe = "JsonSerDe"
54999)
55000
55001// ResourceDataSyncS3Format_Values returns all elements of the ResourceDataSyncS3Format enum
55002func ResourceDataSyncS3Format_Values() []string {
55003	return []string{
55004		ResourceDataSyncS3FormatJsonSerDe,
55005	}
55006}
55007
55008const (
55009	// ResourceTypeManagedInstance is a ResourceType enum value
55010	ResourceTypeManagedInstance = "ManagedInstance"
55011
55012	// ResourceTypeDocument is a ResourceType enum value
55013	ResourceTypeDocument = "Document"
55014
55015	// ResourceTypeEc2instance is a ResourceType enum value
55016	ResourceTypeEc2instance = "EC2Instance"
55017)
55018
55019// ResourceType_Values returns all elements of the ResourceType enum
55020func ResourceType_Values() []string {
55021	return []string{
55022		ResourceTypeManagedInstance,
55023		ResourceTypeDocument,
55024		ResourceTypeEc2instance,
55025	}
55026}
55027
55028const (
55029	// ResourceTypeForTaggingDocument is a ResourceTypeForTagging enum value
55030	ResourceTypeForTaggingDocument = "Document"
55031
55032	// ResourceTypeForTaggingManagedInstance is a ResourceTypeForTagging enum value
55033	ResourceTypeForTaggingManagedInstance = "ManagedInstance"
55034
55035	// ResourceTypeForTaggingMaintenanceWindow is a ResourceTypeForTagging enum value
55036	ResourceTypeForTaggingMaintenanceWindow = "MaintenanceWindow"
55037
55038	// ResourceTypeForTaggingParameter is a ResourceTypeForTagging enum value
55039	ResourceTypeForTaggingParameter = "Parameter"
55040
55041	// ResourceTypeForTaggingPatchBaseline is a ResourceTypeForTagging enum value
55042	ResourceTypeForTaggingPatchBaseline = "PatchBaseline"
55043
55044	// ResourceTypeForTaggingOpsItem is a ResourceTypeForTagging enum value
55045	ResourceTypeForTaggingOpsItem = "OpsItem"
55046
55047	// ResourceTypeForTaggingOpsMetadata is a ResourceTypeForTagging enum value
55048	ResourceTypeForTaggingOpsMetadata = "OpsMetadata"
55049)
55050
55051// ResourceTypeForTagging_Values returns all elements of the ResourceTypeForTagging enum
55052func ResourceTypeForTagging_Values() []string {
55053	return []string{
55054		ResourceTypeForTaggingDocument,
55055		ResourceTypeForTaggingManagedInstance,
55056		ResourceTypeForTaggingMaintenanceWindow,
55057		ResourceTypeForTaggingParameter,
55058		ResourceTypeForTaggingPatchBaseline,
55059		ResourceTypeForTaggingOpsItem,
55060		ResourceTypeForTaggingOpsMetadata,
55061	}
55062}
55063
55064const (
55065	// ReviewStatusApproved is a ReviewStatus enum value
55066	ReviewStatusApproved = "APPROVED"
55067
55068	// ReviewStatusNotReviewed is a ReviewStatus enum value
55069	ReviewStatusNotReviewed = "NOT_REVIEWED"
55070
55071	// ReviewStatusPending is a ReviewStatus enum value
55072	ReviewStatusPending = "PENDING"
55073
55074	// ReviewStatusRejected is a ReviewStatus enum value
55075	ReviewStatusRejected = "REJECTED"
55076)
55077
55078// ReviewStatus_Values returns all elements of the ReviewStatus enum
55079func ReviewStatus_Values() []string {
55080	return []string{
55081		ReviewStatusApproved,
55082		ReviewStatusNotReviewed,
55083		ReviewStatusPending,
55084		ReviewStatusRejected,
55085	}
55086}
55087
55088const (
55089	// SessionFilterKeyInvokedAfter is a SessionFilterKey enum value
55090	SessionFilterKeyInvokedAfter = "InvokedAfter"
55091
55092	// SessionFilterKeyInvokedBefore is a SessionFilterKey enum value
55093	SessionFilterKeyInvokedBefore = "InvokedBefore"
55094
55095	// SessionFilterKeyTarget is a SessionFilterKey enum value
55096	SessionFilterKeyTarget = "Target"
55097
55098	// SessionFilterKeyOwner is a SessionFilterKey enum value
55099	SessionFilterKeyOwner = "Owner"
55100
55101	// SessionFilterKeyStatus is a SessionFilterKey enum value
55102	SessionFilterKeyStatus = "Status"
55103
55104	// SessionFilterKeySessionId is a SessionFilterKey enum value
55105	SessionFilterKeySessionId = "SessionId"
55106)
55107
55108// SessionFilterKey_Values returns all elements of the SessionFilterKey enum
55109func SessionFilterKey_Values() []string {
55110	return []string{
55111		SessionFilterKeyInvokedAfter,
55112		SessionFilterKeyInvokedBefore,
55113		SessionFilterKeyTarget,
55114		SessionFilterKeyOwner,
55115		SessionFilterKeyStatus,
55116		SessionFilterKeySessionId,
55117	}
55118}
55119
55120const (
55121	// SessionStateActive is a SessionState enum value
55122	SessionStateActive = "Active"
55123
55124	// SessionStateHistory is a SessionState enum value
55125	SessionStateHistory = "History"
55126)
55127
55128// SessionState_Values returns all elements of the SessionState enum
55129func SessionState_Values() []string {
55130	return []string{
55131		SessionStateActive,
55132		SessionStateHistory,
55133	}
55134}
55135
55136const (
55137	// SessionStatusConnected is a SessionStatus enum value
55138	SessionStatusConnected = "Connected"
55139
55140	// SessionStatusConnecting is a SessionStatus enum value
55141	SessionStatusConnecting = "Connecting"
55142
55143	// SessionStatusDisconnected is a SessionStatus enum value
55144	SessionStatusDisconnected = "Disconnected"
55145
55146	// SessionStatusTerminated is a SessionStatus enum value
55147	SessionStatusTerminated = "Terminated"
55148
55149	// SessionStatusTerminating is a SessionStatus enum value
55150	SessionStatusTerminating = "Terminating"
55151
55152	// SessionStatusFailed is a SessionStatus enum value
55153	SessionStatusFailed = "Failed"
55154)
55155
55156// SessionStatus_Values returns all elements of the SessionStatus enum
55157func SessionStatus_Values() []string {
55158	return []string{
55159		SessionStatusConnected,
55160		SessionStatusConnecting,
55161		SessionStatusDisconnected,
55162		SessionStatusTerminated,
55163		SessionStatusTerminating,
55164		SessionStatusFailed,
55165	}
55166}
55167
55168const (
55169	// SignalTypeApprove is a SignalType enum value
55170	SignalTypeApprove = "Approve"
55171
55172	// SignalTypeReject is a SignalType enum value
55173	SignalTypeReject = "Reject"
55174
55175	// SignalTypeStartStep is a SignalType enum value
55176	SignalTypeStartStep = "StartStep"
55177
55178	// SignalTypeStopStep is a SignalType enum value
55179	SignalTypeStopStep = "StopStep"
55180
55181	// SignalTypeResume is a SignalType enum value
55182	SignalTypeResume = "Resume"
55183)
55184
55185// SignalType_Values returns all elements of the SignalType enum
55186func SignalType_Values() []string {
55187	return []string{
55188		SignalTypeApprove,
55189		SignalTypeReject,
55190		SignalTypeStartStep,
55191		SignalTypeStopStep,
55192		SignalTypeResume,
55193	}
55194}
55195
55196const (
55197	// StepExecutionFilterKeyStartTimeBefore is a StepExecutionFilterKey enum value
55198	StepExecutionFilterKeyStartTimeBefore = "StartTimeBefore"
55199
55200	// StepExecutionFilterKeyStartTimeAfter is a StepExecutionFilterKey enum value
55201	StepExecutionFilterKeyStartTimeAfter = "StartTimeAfter"
55202
55203	// StepExecutionFilterKeyStepExecutionStatus is a StepExecutionFilterKey enum value
55204	StepExecutionFilterKeyStepExecutionStatus = "StepExecutionStatus"
55205
55206	// StepExecutionFilterKeyStepExecutionId is a StepExecutionFilterKey enum value
55207	StepExecutionFilterKeyStepExecutionId = "StepExecutionId"
55208
55209	// StepExecutionFilterKeyStepName is a StepExecutionFilterKey enum value
55210	StepExecutionFilterKeyStepName = "StepName"
55211
55212	// StepExecutionFilterKeyAction is a StepExecutionFilterKey enum value
55213	StepExecutionFilterKeyAction = "Action"
55214)
55215
55216// StepExecutionFilterKey_Values returns all elements of the StepExecutionFilterKey enum
55217func StepExecutionFilterKey_Values() []string {
55218	return []string{
55219		StepExecutionFilterKeyStartTimeBefore,
55220		StepExecutionFilterKeyStartTimeAfter,
55221		StepExecutionFilterKeyStepExecutionStatus,
55222		StepExecutionFilterKeyStepExecutionId,
55223		StepExecutionFilterKeyStepName,
55224		StepExecutionFilterKeyAction,
55225	}
55226}
55227
55228const (
55229	// StopTypeComplete is a StopType enum value
55230	StopTypeComplete = "Complete"
55231
55232	// StopTypeCancel is a StopType enum value
55233	StopTypeCancel = "Cancel"
55234)
55235
55236// StopType_Values returns all elements of the StopType enum
55237func StopType_Values() []string {
55238	return []string{
55239		StopTypeComplete,
55240		StopTypeCancel,
55241	}
55242}
55243