1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package inspector
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 opAddAttributesToFindings = "AddAttributesToFindings"
17
18// AddAttributesToFindingsRequest generates a "aws/request.Request" representing the
19// client's request for the AddAttributesToFindings 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 AddAttributesToFindings for more information on using the AddAttributesToFindings
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 AddAttributesToFindingsRequest method.
34//    req, resp := client.AddAttributesToFindingsRequest(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/inspector-2016-02-16/AddAttributesToFindings
42func (c *Inspector) AddAttributesToFindingsRequest(input *AddAttributesToFindingsInput) (req *request.Request, output *AddAttributesToFindingsOutput) {
43	op := &request.Operation{
44		Name:       opAddAttributesToFindings,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &AddAttributesToFindingsInput{}
51	}
52
53	output = &AddAttributesToFindingsOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// AddAttributesToFindings API operation for Amazon Inspector.
59//
60// Assigns attributes (key and value pairs) to the findings that are specified
61// by the ARNs of the findings.
62//
63// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
64// with awserr.Error's Code and Message methods to get detailed information about
65// the error.
66//
67// See the AWS API reference guide for Amazon Inspector's
68// API operation AddAttributesToFindings for usage and error information.
69//
70// Returned Error Types:
71//   * InternalException
72//   Internal server error.
73//
74//   * InvalidInputException
75//   The request was rejected because an invalid or out-of-range value was supplied
76//   for an input parameter.
77//
78//   * AccessDeniedException
79//   You do not have required permissions to access the requested resource.
80//
81//   * NoSuchEntityException
82//   The request was rejected because it referenced an entity that does not exist.
83//   The error code describes the entity.
84//
85//   * ServiceTemporarilyUnavailableException
86//   The serice is temporary unavailable.
87//
88// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/AddAttributesToFindings
89func (c *Inspector) AddAttributesToFindings(input *AddAttributesToFindingsInput) (*AddAttributesToFindingsOutput, error) {
90	req, out := c.AddAttributesToFindingsRequest(input)
91	return out, req.Send()
92}
93
94// AddAttributesToFindingsWithContext is the same as AddAttributesToFindings with the addition of
95// the ability to pass a context and additional request options.
96//
97// See AddAttributesToFindings for details on how to use this API operation.
98//
99// The context must be non-nil and will be used for request cancellation. If
100// the context is nil a panic will occur. In the future the SDK may create
101// sub-contexts for http.Requests. See https://golang.org/pkg/context/
102// for more information on using Contexts.
103func (c *Inspector) AddAttributesToFindingsWithContext(ctx aws.Context, input *AddAttributesToFindingsInput, opts ...request.Option) (*AddAttributesToFindingsOutput, error) {
104	req, out := c.AddAttributesToFindingsRequest(input)
105	req.SetContext(ctx)
106	req.ApplyOptions(opts...)
107	return out, req.Send()
108}
109
110const opCreateAssessmentTarget = "CreateAssessmentTarget"
111
112// CreateAssessmentTargetRequest generates a "aws/request.Request" representing the
113// client's request for the CreateAssessmentTarget operation. The "output" return
114// value will be populated with the request's response once the request completes
115// successfully.
116//
117// Use "Send" method on the returned Request to send the API call to the service.
118// the "output" return value is not valid until after Send returns without error.
119//
120// See CreateAssessmentTarget for more information on using the CreateAssessmentTarget
121// API call, and error handling.
122//
123// This method is useful when you want to inject custom logic or configuration
124// into the SDK's request lifecycle. Such as custom headers, or retry logic.
125//
126//
127//    // Example sending a request using the CreateAssessmentTargetRequest method.
128//    req, resp := client.CreateAssessmentTargetRequest(params)
129//
130//    err := req.Send()
131//    if err == nil { // resp is now filled
132//        fmt.Println(resp)
133//    }
134//
135// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateAssessmentTarget
136func (c *Inspector) CreateAssessmentTargetRequest(input *CreateAssessmentTargetInput) (req *request.Request, output *CreateAssessmentTargetOutput) {
137	op := &request.Operation{
138		Name:       opCreateAssessmentTarget,
139		HTTPMethod: "POST",
140		HTTPPath:   "/",
141	}
142
143	if input == nil {
144		input = &CreateAssessmentTargetInput{}
145	}
146
147	output = &CreateAssessmentTargetOutput{}
148	req = c.newRequest(op, input, output)
149	return
150}
151
152// CreateAssessmentTarget API operation for Amazon Inspector.
153//
154// Creates a new assessment target using the ARN of the resource group that
155// is generated by CreateResourceGroup. If resourceGroupArn is not specified,
156// all EC2 instances in the current AWS account and region are included in the
157// assessment target. If the service-linked role (https://docs.aws.amazon.com/inspector/latest/userguide/inspector_slr.html)
158// isn’t already registered, this action also creates and registers a service-linked
159// role to grant Amazon Inspector access to AWS Services needed to perform security
160// assessments. You can create up to 50 assessment targets per AWS account.
161// You can run up to 500 concurrent agents per AWS account. For more information,
162// see Amazon Inspector Assessment Targets (https://docs.aws.amazon.com/inspector/latest/userguide/inspector_applications.html).
163//
164// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
165// with awserr.Error's Code and Message methods to get detailed information about
166// the error.
167//
168// See the AWS API reference guide for Amazon Inspector's
169// API operation CreateAssessmentTarget for usage and error information.
170//
171// Returned Error Types:
172//   * InternalException
173//   Internal server error.
174//
175//   * InvalidInputException
176//   The request was rejected because an invalid or out-of-range value was supplied
177//   for an input parameter.
178//
179//   * LimitExceededException
180//   The request was rejected because it attempted to create resources beyond
181//   the current AWS account limits. The error code describes the limit exceeded.
182//
183//   * AccessDeniedException
184//   You do not have required permissions to access the requested resource.
185//
186//   * NoSuchEntityException
187//   The request was rejected because it referenced an entity that does not exist.
188//   The error code describes the entity.
189//
190//   * InvalidCrossAccountRoleException
191//   Amazon Inspector cannot assume the cross-account role that it needs to list
192//   your EC2 instances during the assessment run.
193//
194//   * ServiceTemporarilyUnavailableException
195//   The serice is temporary unavailable.
196//
197// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateAssessmentTarget
198func (c *Inspector) CreateAssessmentTarget(input *CreateAssessmentTargetInput) (*CreateAssessmentTargetOutput, error) {
199	req, out := c.CreateAssessmentTargetRequest(input)
200	return out, req.Send()
201}
202
203// CreateAssessmentTargetWithContext is the same as CreateAssessmentTarget with the addition of
204// the ability to pass a context and additional request options.
205//
206// See CreateAssessmentTarget for details on how to use this API operation.
207//
208// The context must be non-nil and will be used for request cancellation. If
209// the context is nil a panic will occur. In the future the SDK may create
210// sub-contexts for http.Requests. See https://golang.org/pkg/context/
211// for more information on using Contexts.
212func (c *Inspector) CreateAssessmentTargetWithContext(ctx aws.Context, input *CreateAssessmentTargetInput, opts ...request.Option) (*CreateAssessmentTargetOutput, error) {
213	req, out := c.CreateAssessmentTargetRequest(input)
214	req.SetContext(ctx)
215	req.ApplyOptions(opts...)
216	return out, req.Send()
217}
218
219const opCreateAssessmentTemplate = "CreateAssessmentTemplate"
220
221// CreateAssessmentTemplateRequest generates a "aws/request.Request" representing the
222// client's request for the CreateAssessmentTemplate operation. The "output" return
223// value will be populated with the request's response once the request completes
224// successfully.
225//
226// Use "Send" method on the returned Request to send the API call to the service.
227// the "output" return value is not valid until after Send returns without error.
228//
229// See CreateAssessmentTemplate for more information on using the CreateAssessmentTemplate
230// API call, and error handling.
231//
232// This method is useful when you want to inject custom logic or configuration
233// into the SDK's request lifecycle. Such as custom headers, or retry logic.
234//
235//
236//    // Example sending a request using the CreateAssessmentTemplateRequest method.
237//    req, resp := client.CreateAssessmentTemplateRequest(params)
238//
239//    err := req.Send()
240//    if err == nil { // resp is now filled
241//        fmt.Println(resp)
242//    }
243//
244// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateAssessmentTemplate
245func (c *Inspector) CreateAssessmentTemplateRequest(input *CreateAssessmentTemplateInput) (req *request.Request, output *CreateAssessmentTemplateOutput) {
246	op := &request.Operation{
247		Name:       opCreateAssessmentTemplate,
248		HTTPMethod: "POST",
249		HTTPPath:   "/",
250	}
251
252	if input == nil {
253		input = &CreateAssessmentTemplateInput{}
254	}
255
256	output = &CreateAssessmentTemplateOutput{}
257	req = c.newRequest(op, input, output)
258	return
259}
260
261// CreateAssessmentTemplate API operation for Amazon Inspector.
262//
263// Creates an assessment template for the assessment target that is specified
264// by the ARN of the assessment target. If the service-linked role (https://docs.aws.amazon.com/inspector/latest/userguide/inspector_slr.html)
265// isn’t already registered, this action also creates and registers a service-linked
266// role to grant Amazon Inspector access to AWS Services needed to perform security
267// assessments.
268//
269// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
270// with awserr.Error's Code and Message methods to get detailed information about
271// the error.
272//
273// See the AWS API reference guide for Amazon Inspector's
274// API operation CreateAssessmentTemplate for usage and error information.
275//
276// Returned Error Types:
277//   * InternalException
278//   Internal server error.
279//
280//   * InvalidInputException
281//   The request was rejected because an invalid or out-of-range value was supplied
282//   for an input parameter.
283//
284//   * LimitExceededException
285//   The request was rejected because it attempted to create resources beyond
286//   the current AWS account limits. The error code describes the limit exceeded.
287//
288//   * AccessDeniedException
289//   You do not have required permissions to access the requested resource.
290//
291//   * NoSuchEntityException
292//   The request was rejected because it referenced an entity that does not exist.
293//   The error code describes the entity.
294//
295//   * ServiceTemporarilyUnavailableException
296//   The serice is temporary unavailable.
297//
298// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateAssessmentTemplate
299func (c *Inspector) CreateAssessmentTemplate(input *CreateAssessmentTemplateInput) (*CreateAssessmentTemplateOutput, error) {
300	req, out := c.CreateAssessmentTemplateRequest(input)
301	return out, req.Send()
302}
303
304// CreateAssessmentTemplateWithContext is the same as CreateAssessmentTemplate with the addition of
305// the ability to pass a context and additional request options.
306//
307// See CreateAssessmentTemplate for details on how to use this API operation.
308//
309// The context must be non-nil and will be used for request cancellation. If
310// the context is nil a panic will occur. In the future the SDK may create
311// sub-contexts for http.Requests. See https://golang.org/pkg/context/
312// for more information on using Contexts.
313func (c *Inspector) CreateAssessmentTemplateWithContext(ctx aws.Context, input *CreateAssessmentTemplateInput, opts ...request.Option) (*CreateAssessmentTemplateOutput, error) {
314	req, out := c.CreateAssessmentTemplateRequest(input)
315	req.SetContext(ctx)
316	req.ApplyOptions(opts...)
317	return out, req.Send()
318}
319
320const opCreateExclusionsPreview = "CreateExclusionsPreview"
321
322// CreateExclusionsPreviewRequest generates a "aws/request.Request" representing the
323// client's request for the CreateExclusionsPreview operation. The "output" return
324// value will be populated with the request's response once the request completes
325// successfully.
326//
327// Use "Send" method on the returned Request to send the API call to the service.
328// the "output" return value is not valid until after Send returns without error.
329//
330// See CreateExclusionsPreview for more information on using the CreateExclusionsPreview
331// API call, and error handling.
332//
333// This method is useful when you want to inject custom logic or configuration
334// into the SDK's request lifecycle. Such as custom headers, or retry logic.
335//
336//
337//    // Example sending a request using the CreateExclusionsPreviewRequest method.
338//    req, resp := client.CreateExclusionsPreviewRequest(params)
339//
340//    err := req.Send()
341//    if err == nil { // resp is now filled
342//        fmt.Println(resp)
343//    }
344//
345// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateExclusionsPreview
346func (c *Inspector) CreateExclusionsPreviewRequest(input *CreateExclusionsPreviewInput) (req *request.Request, output *CreateExclusionsPreviewOutput) {
347	op := &request.Operation{
348		Name:       opCreateExclusionsPreview,
349		HTTPMethod: "POST",
350		HTTPPath:   "/",
351	}
352
353	if input == nil {
354		input = &CreateExclusionsPreviewInput{}
355	}
356
357	output = &CreateExclusionsPreviewOutput{}
358	req = c.newRequest(op, input, output)
359	return
360}
361
362// CreateExclusionsPreview API operation for Amazon Inspector.
363//
364// Starts the generation of an exclusions preview for the specified assessment
365// template. The exclusions preview lists the potential exclusions (ExclusionPreview)
366// that Inspector can detect before it runs the assessment.
367//
368// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
369// with awserr.Error's Code and Message methods to get detailed information about
370// the error.
371//
372// See the AWS API reference guide for Amazon Inspector's
373// API operation CreateExclusionsPreview for usage and error information.
374//
375// Returned Error Types:
376//   * InvalidInputException
377//   The request was rejected because an invalid or out-of-range value was supplied
378//   for an input parameter.
379//
380//   * PreviewGenerationInProgressException
381//   The request is rejected. The specified assessment template is currently generating
382//   an exclusions preview.
383//
384//   * InternalException
385//   Internal server error.
386//
387//   * AccessDeniedException
388//   You do not have required permissions to access the requested resource.
389//
390//   * NoSuchEntityException
391//   The request was rejected because it referenced an entity that does not exist.
392//   The error code describes the entity.
393//
394//   * ServiceTemporarilyUnavailableException
395//   The serice is temporary unavailable.
396//
397// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateExclusionsPreview
398func (c *Inspector) CreateExclusionsPreview(input *CreateExclusionsPreviewInput) (*CreateExclusionsPreviewOutput, error) {
399	req, out := c.CreateExclusionsPreviewRequest(input)
400	return out, req.Send()
401}
402
403// CreateExclusionsPreviewWithContext is the same as CreateExclusionsPreview with the addition of
404// the ability to pass a context and additional request options.
405//
406// See CreateExclusionsPreview for details on how to use this API operation.
407//
408// The context must be non-nil and will be used for request cancellation. If
409// the context is nil a panic will occur. In the future the SDK may create
410// sub-contexts for http.Requests. See https://golang.org/pkg/context/
411// for more information on using Contexts.
412func (c *Inspector) CreateExclusionsPreviewWithContext(ctx aws.Context, input *CreateExclusionsPreviewInput, opts ...request.Option) (*CreateExclusionsPreviewOutput, error) {
413	req, out := c.CreateExclusionsPreviewRequest(input)
414	req.SetContext(ctx)
415	req.ApplyOptions(opts...)
416	return out, req.Send()
417}
418
419const opCreateResourceGroup = "CreateResourceGroup"
420
421// CreateResourceGroupRequest generates a "aws/request.Request" representing the
422// client's request for the CreateResourceGroup operation. The "output" return
423// value will be populated with the request's response once the request completes
424// successfully.
425//
426// Use "Send" method on the returned Request to send the API call to the service.
427// the "output" return value is not valid until after Send returns without error.
428//
429// See CreateResourceGroup for more information on using the CreateResourceGroup
430// API call, and error handling.
431//
432// This method is useful when you want to inject custom logic or configuration
433// into the SDK's request lifecycle. Such as custom headers, or retry logic.
434//
435//
436//    // Example sending a request using the CreateResourceGroupRequest method.
437//    req, resp := client.CreateResourceGroupRequest(params)
438//
439//    err := req.Send()
440//    if err == nil { // resp is now filled
441//        fmt.Println(resp)
442//    }
443//
444// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateResourceGroup
445func (c *Inspector) CreateResourceGroupRequest(input *CreateResourceGroupInput) (req *request.Request, output *CreateResourceGroupOutput) {
446	op := &request.Operation{
447		Name:       opCreateResourceGroup,
448		HTTPMethod: "POST",
449		HTTPPath:   "/",
450	}
451
452	if input == nil {
453		input = &CreateResourceGroupInput{}
454	}
455
456	output = &CreateResourceGroupOutput{}
457	req = c.newRequest(op, input, output)
458	return
459}
460
461// CreateResourceGroup API operation for Amazon Inspector.
462//
463// Creates a resource group using the specified set of tags (key and value pairs)
464// that are used to select the EC2 instances to be included in an Amazon Inspector
465// assessment target. The created resource group is then used to create an Amazon
466// Inspector assessment target. For more information, see CreateAssessmentTarget.
467//
468// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
469// with awserr.Error's Code and Message methods to get detailed information about
470// the error.
471//
472// See the AWS API reference guide for Amazon Inspector's
473// API operation CreateResourceGroup for usage and error information.
474//
475// Returned Error Types:
476//   * InternalException
477//   Internal server error.
478//
479//   * InvalidInputException
480//   The request was rejected because an invalid or out-of-range value was supplied
481//   for an input parameter.
482//
483//   * LimitExceededException
484//   The request was rejected because it attempted to create resources beyond
485//   the current AWS account limits. The error code describes the limit exceeded.
486//
487//   * AccessDeniedException
488//   You do not have required permissions to access the requested resource.
489//
490//   * ServiceTemporarilyUnavailableException
491//   The serice is temporary unavailable.
492//
493// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/CreateResourceGroup
494func (c *Inspector) CreateResourceGroup(input *CreateResourceGroupInput) (*CreateResourceGroupOutput, error) {
495	req, out := c.CreateResourceGroupRequest(input)
496	return out, req.Send()
497}
498
499// CreateResourceGroupWithContext is the same as CreateResourceGroup with the addition of
500// the ability to pass a context and additional request options.
501//
502// See CreateResourceGroup for details on how to use this API operation.
503//
504// The context must be non-nil and will be used for request cancellation. If
505// the context is nil a panic will occur. In the future the SDK may create
506// sub-contexts for http.Requests. See https://golang.org/pkg/context/
507// for more information on using Contexts.
508func (c *Inspector) CreateResourceGroupWithContext(ctx aws.Context, input *CreateResourceGroupInput, opts ...request.Option) (*CreateResourceGroupOutput, error) {
509	req, out := c.CreateResourceGroupRequest(input)
510	req.SetContext(ctx)
511	req.ApplyOptions(opts...)
512	return out, req.Send()
513}
514
515const opDeleteAssessmentRun = "DeleteAssessmentRun"
516
517// DeleteAssessmentRunRequest generates a "aws/request.Request" representing the
518// client's request for the DeleteAssessmentRun operation. The "output" return
519// value will be populated with the request's response once the request completes
520// successfully.
521//
522// Use "Send" method on the returned Request to send the API call to the service.
523// the "output" return value is not valid until after Send returns without error.
524//
525// See DeleteAssessmentRun for more information on using the DeleteAssessmentRun
526// API call, and error handling.
527//
528// This method is useful when you want to inject custom logic or configuration
529// into the SDK's request lifecycle. Such as custom headers, or retry logic.
530//
531//
532//    // Example sending a request using the DeleteAssessmentRunRequest method.
533//    req, resp := client.DeleteAssessmentRunRequest(params)
534//
535//    err := req.Send()
536//    if err == nil { // resp is now filled
537//        fmt.Println(resp)
538//    }
539//
540// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DeleteAssessmentRun
541func (c *Inspector) DeleteAssessmentRunRequest(input *DeleteAssessmentRunInput) (req *request.Request, output *DeleteAssessmentRunOutput) {
542	op := &request.Operation{
543		Name:       opDeleteAssessmentRun,
544		HTTPMethod: "POST",
545		HTTPPath:   "/",
546	}
547
548	if input == nil {
549		input = &DeleteAssessmentRunInput{}
550	}
551
552	output = &DeleteAssessmentRunOutput{}
553	req = c.newRequest(op, input, output)
554	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
555	return
556}
557
558// DeleteAssessmentRun API operation for Amazon Inspector.
559//
560// Deletes the assessment run that is specified by the ARN of the assessment
561// run.
562//
563// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
564// with awserr.Error's Code and Message methods to get detailed information about
565// the error.
566//
567// See the AWS API reference guide for Amazon Inspector's
568// API operation DeleteAssessmentRun for usage and error information.
569//
570// Returned Error Types:
571//   * InternalException
572//   Internal server error.
573//
574//   * InvalidInputException
575//   The request was rejected because an invalid or out-of-range value was supplied
576//   for an input parameter.
577//
578//   * AssessmentRunInProgressException
579//   You cannot perform a specified action if an assessment run is currently in
580//   progress.
581//
582//   * AccessDeniedException
583//   You do not have required permissions to access the requested resource.
584//
585//   * NoSuchEntityException
586//   The request was rejected because it referenced an entity that does not exist.
587//   The error code describes the entity.
588//
589//   * ServiceTemporarilyUnavailableException
590//   The serice is temporary unavailable.
591//
592// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DeleteAssessmentRun
593func (c *Inspector) DeleteAssessmentRun(input *DeleteAssessmentRunInput) (*DeleteAssessmentRunOutput, error) {
594	req, out := c.DeleteAssessmentRunRequest(input)
595	return out, req.Send()
596}
597
598// DeleteAssessmentRunWithContext is the same as DeleteAssessmentRun with the addition of
599// the ability to pass a context and additional request options.
600//
601// See DeleteAssessmentRun for details on how to use this API operation.
602//
603// The context must be non-nil and will be used for request cancellation. If
604// the context is nil a panic will occur. In the future the SDK may create
605// sub-contexts for http.Requests. See https://golang.org/pkg/context/
606// for more information on using Contexts.
607func (c *Inspector) DeleteAssessmentRunWithContext(ctx aws.Context, input *DeleteAssessmentRunInput, opts ...request.Option) (*DeleteAssessmentRunOutput, error) {
608	req, out := c.DeleteAssessmentRunRequest(input)
609	req.SetContext(ctx)
610	req.ApplyOptions(opts...)
611	return out, req.Send()
612}
613
614const opDeleteAssessmentTarget = "DeleteAssessmentTarget"
615
616// DeleteAssessmentTargetRequest generates a "aws/request.Request" representing the
617// client's request for the DeleteAssessmentTarget operation. The "output" return
618// value will be populated with the request's response once the request completes
619// successfully.
620//
621// Use "Send" method on the returned Request to send the API call to the service.
622// the "output" return value is not valid until after Send returns without error.
623//
624// See DeleteAssessmentTarget for more information on using the DeleteAssessmentTarget
625// API call, and error handling.
626//
627// This method is useful when you want to inject custom logic or configuration
628// into the SDK's request lifecycle. Such as custom headers, or retry logic.
629//
630//
631//    // Example sending a request using the DeleteAssessmentTargetRequest method.
632//    req, resp := client.DeleteAssessmentTargetRequest(params)
633//
634//    err := req.Send()
635//    if err == nil { // resp is now filled
636//        fmt.Println(resp)
637//    }
638//
639// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DeleteAssessmentTarget
640func (c *Inspector) DeleteAssessmentTargetRequest(input *DeleteAssessmentTargetInput) (req *request.Request, output *DeleteAssessmentTargetOutput) {
641	op := &request.Operation{
642		Name:       opDeleteAssessmentTarget,
643		HTTPMethod: "POST",
644		HTTPPath:   "/",
645	}
646
647	if input == nil {
648		input = &DeleteAssessmentTargetInput{}
649	}
650
651	output = &DeleteAssessmentTargetOutput{}
652	req = c.newRequest(op, input, output)
653	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
654	return
655}
656
657// DeleteAssessmentTarget API operation for Amazon Inspector.
658//
659// Deletes the assessment target that is specified by the ARN of the assessment
660// target.
661//
662// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
663// with awserr.Error's Code and Message methods to get detailed information about
664// the error.
665//
666// See the AWS API reference guide for Amazon Inspector's
667// API operation DeleteAssessmentTarget for usage and error information.
668//
669// Returned Error Types:
670//   * InternalException
671//   Internal server error.
672//
673//   * InvalidInputException
674//   The request was rejected because an invalid or out-of-range value was supplied
675//   for an input parameter.
676//
677//   * AssessmentRunInProgressException
678//   You cannot perform a specified action if an assessment run is currently in
679//   progress.
680//
681//   * AccessDeniedException
682//   You do not have required permissions to access the requested resource.
683//
684//   * NoSuchEntityException
685//   The request was rejected because it referenced an entity that does not exist.
686//   The error code describes the entity.
687//
688//   * ServiceTemporarilyUnavailableException
689//   The serice is temporary unavailable.
690//
691// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DeleteAssessmentTarget
692func (c *Inspector) DeleteAssessmentTarget(input *DeleteAssessmentTargetInput) (*DeleteAssessmentTargetOutput, error) {
693	req, out := c.DeleteAssessmentTargetRequest(input)
694	return out, req.Send()
695}
696
697// DeleteAssessmentTargetWithContext is the same as DeleteAssessmentTarget with the addition of
698// the ability to pass a context and additional request options.
699//
700// See DeleteAssessmentTarget for details on how to use this API operation.
701//
702// The context must be non-nil and will be used for request cancellation. If
703// the context is nil a panic will occur. In the future the SDK may create
704// sub-contexts for http.Requests. See https://golang.org/pkg/context/
705// for more information on using Contexts.
706func (c *Inspector) DeleteAssessmentTargetWithContext(ctx aws.Context, input *DeleteAssessmentTargetInput, opts ...request.Option) (*DeleteAssessmentTargetOutput, error) {
707	req, out := c.DeleteAssessmentTargetRequest(input)
708	req.SetContext(ctx)
709	req.ApplyOptions(opts...)
710	return out, req.Send()
711}
712
713const opDeleteAssessmentTemplate = "DeleteAssessmentTemplate"
714
715// DeleteAssessmentTemplateRequest generates a "aws/request.Request" representing the
716// client's request for the DeleteAssessmentTemplate operation. The "output" return
717// value will be populated with the request's response once the request completes
718// successfully.
719//
720// Use "Send" method on the returned Request to send the API call to the service.
721// the "output" return value is not valid until after Send returns without error.
722//
723// See DeleteAssessmentTemplate for more information on using the DeleteAssessmentTemplate
724// API call, and error handling.
725//
726// This method is useful when you want to inject custom logic or configuration
727// into the SDK's request lifecycle. Such as custom headers, or retry logic.
728//
729//
730//    // Example sending a request using the DeleteAssessmentTemplateRequest method.
731//    req, resp := client.DeleteAssessmentTemplateRequest(params)
732//
733//    err := req.Send()
734//    if err == nil { // resp is now filled
735//        fmt.Println(resp)
736//    }
737//
738// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DeleteAssessmentTemplate
739func (c *Inspector) DeleteAssessmentTemplateRequest(input *DeleteAssessmentTemplateInput) (req *request.Request, output *DeleteAssessmentTemplateOutput) {
740	op := &request.Operation{
741		Name:       opDeleteAssessmentTemplate,
742		HTTPMethod: "POST",
743		HTTPPath:   "/",
744	}
745
746	if input == nil {
747		input = &DeleteAssessmentTemplateInput{}
748	}
749
750	output = &DeleteAssessmentTemplateOutput{}
751	req = c.newRequest(op, input, output)
752	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
753	return
754}
755
756// DeleteAssessmentTemplate API operation for Amazon Inspector.
757//
758// Deletes the assessment template that is specified by the ARN of the assessment
759// template.
760//
761// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
762// with awserr.Error's Code and Message methods to get detailed information about
763// the error.
764//
765// See the AWS API reference guide for Amazon Inspector's
766// API operation DeleteAssessmentTemplate for usage and error information.
767//
768// Returned Error Types:
769//   * InternalException
770//   Internal server error.
771//
772//   * InvalidInputException
773//   The request was rejected because an invalid or out-of-range value was supplied
774//   for an input parameter.
775//
776//   * AssessmentRunInProgressException
777//   You cannot perform a specified action if an assessment run is currently in
778//   progress.
779//
780//   * AccessDeniedException
781//   You do not have required permissions to access the requested resource.
782//
783//   * NoSuchEntityException
784//   The request was rejected because it referenced an entity that does not exist.
785//   The error code describes the entity.
786//
787//   * ServiceTemporarilyUnavailableException
788//   The serice is temporary unavailable.
789//
790// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DeleteAssessmentTemplate
791func (c *Inspector) DeleteAssessmentTemplate(input *DeleteAssessmentTemplateInput) (*DeleteAssessmentTemplateOutput, error) {
792	req, out := c.DeleteAssessmentTemplateRequest(input)
793	return out, req.Send()
794}
795
796// DeleteAssessmentTemplateWithContext is the same as DeleteAssessmentTemplate with the addition of
797// the ability to pass a context and additional request options.
798//
799// See DeleteAssessmentTemplate for details on how to use this API operation.
800//
801// The context must be non-nil and will be used for request cancellation. If
802// the context is nil a panic will occur. In the future the SDK may create
803// sub-contexts for http.Requests. See https://golang.org/pkg/context/
804// for more information on using Contexts.
805func (c *Inspector) DeleteAssessmentTemplateWithContext(ctx aws.Context, input *DeleteAssessmentTemplateInput, opts ...request.Option) (*DeleteAssessmentTemplateOutput, error) {
806	req, out := c.DeleteAssessmentTemplateRequest(input)
807	req.SetContext(ctx)
808	req.ApplyOptions(opts...)
809	return out, req.Send()
810}
811
812const opDescribeAssessmentRuns = "DescribeAssessmentRuns"
813
814// DescribeAssessmentRunsRequest generates a "aws/request.Request" representing the
815// client's request for the DescribeAssessmentRuns operation. The "output" return
816// value will be populated with the request's response once the request completes
817// successfully.
818//
819// Use "Send" method on the returned Request to send the API call to the service.
820// the "output" return value is not valid until after Send returns without error.
821//
822// See DescribeAssessmentRuns for more information on using the DescribeAssessmentRuns
823// API call, and error handling.
824//
825// This method is useful when you want to inject custom logic or configuration
826// into the SDK's request lifecycle. Such as custom headers, or retry logic.
827//
828//
829//    // Example sending a request using the DescribeAssessmentRunsRequest method.
830//    req, resp := client.DescribeAssessmentRunsRequest(params)
831//
832//    err := req.Send()
833//    if err == nil { // resp is now filled
834//        fmt.Println(resp)
835//    }
836//
837// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeAssessmentRuns
838func (c *Inspector) DescribeAssessmentRunsRequest(input *DescribeAssessmentRunsInput) (req *request.Request, output *DescribeAssessmentRunsOutput) {
839	op := &request.Operation{
840		Name:       opDescribeAssessmentRuns,
841		HTTPMethod: "POST",
842		HTTPPath:   "/",
843	}
844
845	if input == nil {
846		input = &DescribeAssessmentRunsInput{}
847	}
848
849	output = &DescribeAssessmentRunsOutput{}
850	req = c.newRequest(op, input, output)
851	return
852}
853
854// DescribeAssessmentRuns API operation for Amazon Inspector.
855//
856// Describes the assessment runs that are specified by the ARNs of the assessment
857// runs.
858//
859// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
860// with awserr.Error's Code and Message methods to get detailed information about
861// the error.
862//
863// See the AWS API reference guide for Amazon Inspector's
864// API operation DescribeAssessmentRuns for usage and error information.
865//
866// Returned Error Types:
867//   * InternalException
868//   Internal server error.
869//
870//   * InvalidInputException
871//   The request was rejected because an invalid or out-of-range value was supplied
872//   for an input parameter.
873//
874// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeAssessmentRuns
875func (c *Inspector) DescribeAssessmentRuns(input *DescribeAssessmentRunsInput) (*DescribeAssessmentRunsOutput, error) {
876	req, out := c.DescribeAssessmentRunsRequest(input)
877	return out, req.Send()
878}
879
880// DescribeAssessmentRunsWithContext is the same as DescribeAssessmentRuns with the addition of
881// the ability to pass a context and additional request options.
882//
883// See DescribeAssessmentRuns for details on how to use this API operation.
884//
885// The context must be non-nil and will be used for request cancellation. If
886// the context is nil a panic will occur. In the future the SDK may create
887// sub-contexts for http.Requests. See https://golang.org/pkg/context/
888// for more information on using Contexts.
889func (c *Inspector) DescribeAssessmentRunsWithContext(ctx aws.Context, input *DescribeAssessmentRunsInput, opts ...request.Option) (*DescribeAssessmentRunsOutput, error) {
890	req, out := c.DescribeAssessmentRunsRequest(input)
891	req.SetContext(ctx)
892	req.ApplyOptions(opts...)
893	return out, req.Send()
894}
895
896const opDescribeAssessmentTargets = "DescribeAssessmentTargets"
897
898// DescribeAssessmentTargetsRequest generates a "aws/request.Request" representing the
899// client's request for the DescribeAssessmentTargets operation. The "output" return
900// value will be populated with the request's response once the request completes
901// successfully.
902//
903// Use "Send" method on the returned Request to send the API call to the service.
904// the "output" return value is not valid until after Send returns without error.
905//
906// See DescribeAssessmentTargets for more information on using the DescribeAssessmentTargets
907// API call, and error handling.
908//
909// This method is useful when you want to inject custom logic or configuration
910// into the SDK's request lifecycle. Such as custom headers, or retry logic.
911//
912//
913//    // Example sending a request using the DescribeAssessmentTargetsRequest method.
914//    req, resp := client.DescribeAssessmentTargetsRequest(params)
915//
916//    err := req.Send()
917//    if err == nil { // resp is now filled
918//        fmt.Println(resp)
919//    }
920//
921// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeAssessmentTargets
922func (c *Inspector) DescribeAssessmentTargetsRequest(input *DescribeAssessmentTargetsInput) (req *request.Request, output *DescribeAssessmentTargetsOutput) {
923	op := &request.Operation{
924		Name:       opDescribeAssessmentTargets,
925		HTTPMethod: "POST",
926		HTTPPath:   "/",
927	}
928
929	if input == nil {
930		input = &DescribeAssessmentTargetsInput{}
931	}
932
933	output = &DescribeAssessmentTargetsOutput{}
934	req = c.newRequest(op, input, output)
935	return
936}
937
938// DescribeAssessmentTargets API operation for Amazon Inspector.
939//
940// Describes the assessment targets that are specified by the ARNs of the assessment
941// targets.
942//
943// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
944// with awserr.Error's Code and Message methods to get detailed information about
945// the error.
946//
947// See the AWS API reference guide for Amazon Inspector's
948// API operation DescribeAssessmentTargets for usage and error information.
949//
950// Returned Error Types:
951//   * InternalException
952//   Internal server error.
953//
954//   * InvalidInputException
955//   The request was rejected because an invalid or out-of-range value was supplied
956//   for an input parameter.
957//
958// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeAssessmentTargets
959func (c *Inspector) DescribeAssessmentTargets(input *DescribeAssessmentTargetsInput) (*DescribeAssessmentTargetsOutput, error) {
960	req, out := c.DescribeAssessmentTargetsRequest(input)
961	return out, req.Send()
962}
963
964// DescribeAssessmentTargetsWithContext is the same as DescribeAssessmentTargets with the addition of
965// the ability to pass a context and additional request options.
966//
967// See DescribeAssessmentTargets for details on how to use this API operation.
968//
969// The context must be non-nil and will be used for request cancellation. If
970// the context is nil a panic will occur. In the future the SDK may create
971// sub-contexts for http.Requests. See https://golang.org/pkg/context/
972// for more information on using Contexts.
973func (c *Inspector) DescribeAssessmentTargetsWithContext(ctx aws.Context, input *DescribeAssessmentTargetsInput, opts ...request.Option) (*DescribeAssessmentTargetsOutput, error) {
974	req, out := c.DescribeAssessmentTargetsRequest(input)
975	req.SetContext(ctx)
976	req.ApplyOptions(opts...)
977	return out, req.Send()
978}
979
980const opDescribeAssessmentTemplates = "DescribeAssessmentTemplates"
981
982// DescribeAssessmentTemplatesRequest generates a "aws/request.Request" representing the
983// client's request for the DescribeAssessmentTemplates operation. The "output" return
984// value will be populated with the request's response once the request completes
985// successfully.
986//
987// Use "Send" method on the returned Request to send the API call to the service.
988// the "output" return value is not valid until after Send returns without error.
989//
990// See DescribeAssessmentTemplates for more information on using the DescribeAssessmentTemplates
991// API call, and error handling.
992//
993// This method is useful when you want to inject custom logic or configuration
994// into the SDK's request lifecycle. Such as custom headers, or retry logic.
995//
996//
997//    // Example sending a request using the DescribeAssessmentTemplatesRequest method.
998//    req, resp := client.DescribeAssessmentTemplatesRequest(params)
999//
1000//    err := req.Send()
1001//    if err == nil { // resp is now filled
1002//        fmt.Println(resp)
1003//    }
1004//
1005// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeAssessmentTemplates
1006func (c *Inspector) DescribeAssessmentTemplatesRequest(input *DescribeAssessmentTemplatesInput) (req *request.Request, output *DescribeAssessmentTemplatesOutput) {
1007	op := &request.Operation{
1008		Name:       opDescribeAssessmentTemplates,
1009		HTTPMethod: "POST",
1010		HTTPPath:   "/",
1011	}
1012
1013	if input == nil {
1014		input = &DescribeAssessmentTemplatesInput{}
1015	}
1016
1017	output = &DescribeAssessmentTemplatesOutput{}
1018	req = c.newRequest(op, input, output)
1019	return
1020}
1021
1022// DescribeAssessmentTemplates API operation for Amazon Inspector.
1023//
1024// Describes the assessment templates that are specified by the ARNs of the
1025// assessment templates.
1026//
1027// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1028// with awserr.Error's Code and Message methods to get detailed information about
1029// the error.
1030//
1031// See the AWS API reference guide for Amazon Inspector's
1032// API operation DescribeAssessmentTemplates for usage and error information.
1033//
1034// Returned Error Types:
1035//   * InternalException
1036//   Internal server error.
1037//
1038//   * InvalidInputException
1039//   The request was rejected because an invalid or out-of-range value was supplied
1040//   for an input parameter.
1041//
1042// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeAssessmentTemplates
1043func (c *Inspector) DescribeAssessmentTemplates(input *DescribeAssessmentTemplatesInput) (*DescribeAssessmentTemplatesOutput, error) {
1044	req, out := c.DescribeAssessmentTemplatesRequest(input)
1045	return out, req.Send()
1046}
1047
1048// DescribeAssessmentTemplatesWithContext is the same as DescribeAssessmentTemplates with the addition of
1049// the ability to pass a context and additional request options.
1050//
1051// See DescribeAssessmentTemplates for details on how to use this API operation.
1052//
1053// The context must be non-nil and will be used for request cancellation. If
1054// the context is nil a panic will occur. In the future the SDK may create
1055// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1056// for more information on using Contexts.
1057func (c *Inspector) DescribeAssessmentTemplatesWithContext(ctx aws.Context, input *DescribeAssessmentTemplatesInput, opts ...request.Option) (*DescribeAssessmentTemplatesOutput, error) {
1058	req, out := c.DescribeAssessmentTemplatesRequest(input)
1059	req.SetContext(ctx)
1060	req.ApplyOptions(opts...)
1061	return out, req.Send()
1062}
1063
1064const opDescribeCrossAccountAccessRole = "DescribeCrossAccountAccessRole"
1065
1066// DescribeCrossAccountAccessRoleRequest generates a "aws/request.Request" representing the
1067// client's request for the DescribeCrossAccountAccessRole operation. The "output" return
1068// value will be populated with the request's response once the request completes
1069// successfully.
1070//
1071// Use "Send" method on the returned Request to send the API call to the service.
1072// the "output" return value is not valid until after Send returns without error.
1073//
1074// See DescribeCrossAccountAccessRole for more information on using the DescribeCrossAccountAccessRole
1075// API call, and error handling.
1076//
1077// This method is useful when you want to inject custom logic or configuration
1078// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1079//
1080//
1081//    // Example sending a request using the DescribeCrossAccountAccessRoleRequest method.
1082//    req, resp := client.DescribeCrossAccountAccessRoleRequest(params)
1083//
1084//    err := req.Send()
1085//    if err == nil { // resp is now filled
1086//        fmt.Println(resp)
1087//    }
1088//
1089// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeCrossAccountAccessRole
1090func (c *Inspector) DescribeCrossAccountAccessRoleRequest(input *DescribeCrossAccountAccessRoleInput) (req *request.Request, output *DescribeCrossAccountAccessRoleOutput) {
1091	op := &request.Operation{
1092		Name:       opDescribeCrossAccountAccessRole,
1093		HTTPMethod: "POST",
1094		HTTPPath:   "/",
1095	}
1096
1097	if input == nil {
1098		input = &DescribeCrossAccountAccessRoleInput{}
1099	}
1100
1101	output = &DescribeCrossAccountAccessRoleOutput{}
1102	req = c.newRequest(op, input, output)
1103	return
1104}
1105
1106// DescribeCrossAccountAccessRole API operation for Amazon Inspector.
1107//
1108// Describes the IAM role that enables Amazon Inspector to access your AWS account.
1109//
1110// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1111// with awserr.Error's Code and Message methods to get detailed information about
1112// the error.
1113//
1114// See the AWS API reference guide for Amazon Inspector's
1115// API operation DescribeCrossAccountAccessRole for usage and error information.
1116//
1117// Returned Error Types:
1118//   * InternalException
1119//   Internal server error.
1120//
1121// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeCrossAccountAccessRole
1122func (c *Inspector) DescribeCrossAccountAccessRole(input *DescribeCrossAccountAccessRoleInput) (*DescribeCrossAccountAccessRoleOutput, error) {
1123	req, out := c.DescribeCrossAccountAccessRoleRequest(input)
1124	return out, req.Send()
1125}
1126
1127// DescribeCrossAccountAccessRoleWithContext is the same as DescribeCrossAccountAccessRole with the addition of
1128// the ability to pass a context and additional request options.
1129//
1130// See DescribeCrossAccountAccessRole for details on how to use this API operation.
1131//
1132// The context must be non-nil and will be used for request cancellation. If
1133// the context is nil a panic will occur. In the future the SDK may create
1134// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1135// for more information on using Contexts.
1136func (c *Inspector) DescribeCrossAccountAccessRoleWithContext(ctx aws.Context, input *DescribeCrossAccountAccessRoleInput, opts ...request.Option) (*DescribeCrossAccountAccessRoleOutput, error) {
1137	req, out := c.DescribeCrossAccountAccessRoleRequest(input)
1138	req.SetContext(ctx)
1139	req.ApplyOptions(opts...)
1140	return out, req.Send()
1141}
1142
1143const opDescribeExclusions = "DescribeExclusions"
1144
1145// DescribeExclusionsRequest generates a "aws/request.Request" representing the
1146// client's request for the DescribeExclusions operation. The "output" return
1147// value will be populated with the request's response once the request completes
1148// successfully.
1149//
1150// Use "Send" method on the returned Request to send the API call to the service.
1151// the "output" return value is not valid until after Send returns without error.
1152//
1153// See DescribeExclusions for more information on using the DescribeExclusions
1154// API call, and error handling.
1155//
1156// This method is useful when you want to inject custom logic or configuration
1157// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1158//
1159//
1160//    // Example sending a request using the DescribeExclusionsRequest method.
1161//    req, resp := client.DescribeExclusionsRequest(params)
1162//
1163//    err := req.Send()
1164//    if err == nil { // resp is now filled
1165//        fmt.Println(resp)
1166//    }
1167//
1168// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeExclusions
1169func (c *Inspector) DescribeExclusionsRequest(input *DescribeExclusionsInput) (req *request.Request, output *DescribeExclusionsOutput) {
1170	op := &request.Operation{
1171		Name:       opDescribeExclusions,
1172		HTTPMethod: "POST",
1173		HTTPPath:   "/",
1174	}
1175
1176	if input == nil {
1177		input = &DescribeExclusionsInput{}
1178	}
1179
1180	output = &DescribeExclusionsOutput{}
1181	req = c.newRequest(op, input, output)
1182	return
1183}
1184
1185// DescribeExclusions API operation for Amazon Inspector.
1186//
1187// Describes the exclusions that are specified by the exclusions' ARNs.
1188//
1189// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1190// with awserr.Error's Code and Message methods to get detailed information about
1191// the error.
1192//
1193// See the AWS API reference guide for Amazon Inspector's
1194// API operation DescribeExclusions for usage and error information.
1195//
1196// Returned Error Types:
1197//   * InternalException
1198//   Internal server error.
1199//
1200//   * InvalidInputException
1201//   The request was rejected because an invalid or out-of-range value was supplied
1202//   for an input parameter.
1203//
1204// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeExclusions
1205func (c *Inspector) DescribeExclusions(input *DescribeExclusionsInput) (*DescribeExclusionsOutput, error) {
1206	req, out := c.DescribeExclusionsRequest(input)
1207	return out, req.Send()
1208}
1209
1210// DescribeExclusionsWithContext is the same as DescribeExclusions with the addition of
1211// the ability to pass a context and additional request options.
1212//
1213// See DescribeExclusions for details on how to use this API operation.
1214//
1215// The context must be non-nil and will be used for request cancellation. If
1216// the context is nil a panic will occur. In the future the SDK may create
1217// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1218// for more information on using Contexts.
1219func (c *Inspector) DescribeExclusionsWithContext(ctx aws.Context, input *DescribeExclusionsInput, opts ...request.Option) (*DescribeExclusionsOutput, error) {
1220	req, out := c.DescribeExclusionsRequest(input)
1221	req.SetContext(ctx)
1222	req.ApplyOptions(opts...)
1223	return out, req.Send()
1224}
1225
1226const opDescribeFindings = "DescribeFindings"
1227
1228// DescribeFindingsRequest generates a "aws/request.Request" representing the
1229// client's request for the DescribeFindings operation. The "output" return
1230// value will be populated with the request's response once the request completes
1231// successfully.
1232//
1233// Use "Send" method on the returned Request to send the API call to the service.
1234// the "output" return value is not valid until after Send returns without error.
1235//
1236// See DescribeFindings for more information on using the DescribeFindings
1237// API call, and error handling.
1238//
1239// This method is useful when you want to inject custom logic or configuration
1240// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1241//
1242//
1243//    // Example sending a request using the DescribeFindingsRequest method.
1244//    req, resp := client.DescribeFindingsRequest(params)
1245//
1246//    err := req.Send()
1247//    if err == nil { // resp is now filled
1248//        fmt.Println(resp)
1249//    }
1250//
1251// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeFindings
1252func (c *Inspector) DescribeFindingsRequest(input *DescribeFindingsInput) (req *request.Request, output *DescribeFindingsOutput) {
1253	op := &request.Operation{
1254		Name:       opDescribeFindings,
1255		HTTPMethod: "POST",
1256		HTTPPath:   "/",
1257	}
1258
1259	if input == nil {
1260		input = &DescribeFindingsInput{}
1261	}
1262
1263	output = &DescribeFindingsOutput{}
1264	req = c.newRequest(op, input, output)
1265	return
1266}
1267
1268// DescribeFindings API operation for Amazon Inspector.
1269//
1270// Describes the findings that are specified by the ARNs of the findings.
1271//
1272// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1273// with awserr.Error's Code and Message methods to get detailed information about
1274// the error.
1275//
1276// See the AWS API reference guide for Amazon Inspector's
1277// API operation DescribeFindings for usage and error information.
1278//
1279// Returned Error Types:
1280//   * InternalException
1281//   Internal server error.
1282//
1283//   * InvalidInputException
1284//   The request was rejected because an invalid or out-of-range value was supplied
1285//   for an input parameter.
1286//
1287// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeFindings
1288func (c *Inspector) DescribeFindings(input *DescribeFindingsInput) (*DescribeFindingsOutput, error) {
1289	req, out := c.DescribeFindingsRequest(input)
1290	return out, req.Send()
1291}
1292
1293// DescribeFindingsWithContext is the same as DescribeFindings with the addition of
1294// the ability to pass a context and additional request options.
1295//
1296// See DescribeFindings for details on how to use this API operation.
1297//
1298// The context must be non-nil and will be used for request cancellation. If
1299// the context is nil a panic will occur. In the future the SDK may create
1300// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1301// for more information on using Contexts.
1302func (c *Inspector) DescribeFindingsWithContext(ctx aws.Context, input *DescribeFindingsInput, opts ...request.Option) (*DescribeFindingsOutput, error) {
1303	req, out := c.DescribeFindingsRequest(input)
1304	req.SetContext(ctx)
1305	req.ApplyOptions(opts...)
1306	return out, req.Send()
1307}
1308
1309const opDescribeResourceGroups = "DescribeResourceGroups"
1310
1311// DescribeResourceGroupsRequest generates a "aws/request.Request" representing the
1312// client's request for the DescribeResourceGroups operation. The "output" return
1313// value will be populated with the request's response once the request completes
1314// successfully.
1315//
1316// Use "Send" method on the returned Request to send the API call to the service.
1317// the "output" return value is not valid until after Send returns without error.
1318//
1319// See DescribeResourceGroups for more information on using the DescribeResourceGroups
1320// API call, and error handling.
1321//
1322// This method is useful when you want to inject custom logic or configuration
1323// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1324//
1325//
1326//    // Example sending a request using the DescribeResourceGroupsRequest method.
1327//    req, resp := client.DescribeResourceGroupsRequest(params)
1328//
1329//    err := req.Send()
1330//    if err == nil { // resp is now filled
1331//        fmt.Println(resp)
1332//    }
1333//
1334// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeResourceGroups
1335func (c *Inspector) DescribeResourceGroupsRequest(input *DescribeResourceGroupsInput) (req *request.Request, output *DescribeResourceGroupsOutput) {
1336	op := &request.Operation{
1337		Name:       opDescribeResourceGroups,
1338		HTTPMethod: "POST",
1339		HTTPPath:   "/",
1340	}
1341
1342	if input == nil {
1343		input = &DescribeResourceGroupsInput{}
1344	}
1345
1346	output = &DescribeResourceGroupsOutput{}
1347	req = c.newRequest(op, input, output)
1348	return
1349}
1350
1351// DescribeResourceGroups API operation for Amazon Inspector.
1352//
1353// Describes the resource groups that are specified by the ARNs of the resource
1354// groups.
1355//
1356// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1357// with awserr.Error's Code and Message methods to get detailed information about
1358// the error.
1359//
1360// See the AWS API reference guide for Amazon Inspector's
1361// API operation DescribeResourceGroups for usage and error information.
1362//
1363// Returned Error Types:
1364//   * InternalException
1365//   Internal server error.
1366//
1367//   * InvalidInputException
1368//   The request was rejected because an invalid or out-of-range value was supplied
1369//   for an input parameter.
1370//
1371// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeResourceGroups
1372func (c *Inspector) DescribeResourceGroups(input *DescribeResourceGroupsInput) (*DescribeResourceGroupsOutput, error) {
1373	req, out := c.DescribeResourceGroupsRequest(input)
1374	return out, req.Send()
1375}
1376
1377// DescribeResourceGroupsWithContext is the same as DescribeResourceGroups with the addition of
1378// the ability to pass a context and additional request options.
1379//
1380// See DescribeResourceGroups for details on how to use this API operation.
1381//
1382// The context must be non-nil and will be used for request cancellation. If
1383// the context is nil a panic will occur. In the future the SDK may create
1384// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1385// for more information on using Contexts.
1386func (c *Inspector) DescribeResourceGroupsWithContext(ctx aws.Context, input *DescribeResourceGroupsInput, opts ...request.Option) (*DescribeResourceGroupsOutput, error) {
1387	req, out := c.DescribeResourceGroupsRequest(input)
1388	req.SetContext(ctx)
1389	req.ApplyOptions(opts...)
1390	return out, req.Send()
1391}
1392
1393const opDescribeRulesPackages = "DescribeRulesPackages"
1394
1395// DescribeRulesPackagesRequest generates a "aws/request.Request" representing the
1396// client's request for the DescribeRulesPackages operation. The "output" return
1397// value will be populated with the request's response once the request completes
1398// successfully.
1399//
1400// Use "Send" method on the returned Request to send the API call to the service.
1401// the "output" return value is not valid until after Send returns without error.
1402//
1403// See DescribeRulesPackages for more information on using the DescribeRulesPackages
1404// API call, and error handling.
1405//
1406// This method is useful when you want to inject custom logic or configuration
1407// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1408//
1409//
1410//    // Example sending a request using the DescribeRulesPackagesRequest method.
1411//    req, resp := client.DescribeRulesPackagesRequest(params)
1412//
1413//    err := req.Send()
1414//    if err == nil { // resp is now filled
1415//        fmt.Println(resp)
1416//    }
1417//
1418// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeRulesPackages
1419func (c *Inspector) DescribeRulesPackagesRequest(input *DescribeRulesPackagesInput) (req *request.Request, output *DescribeRulesPackagesOutput) {
1420	op := &request.Operation{
1421		Name:       opDescribeRulesPackages,
1422		HTTPMethod: "POST",
1423		HTTPPath:   "/",
1424	}
1425
1426	if input == nil {
1427		input = &DescribeRulesPackagesInput{}
1428	}
1429
1430	output = &DescribeRulesPackagesOutput{}
1431	req = c.newRequest(op, input, output)
1432	return
1433}
1434
1435// DescribeRulesPackages API operation for Amazon Inspector.
1436//
1437// Describes the rules packages that are specified by the ARNs of the rules
1438// packages.
1439//
1440// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1441// with awserr.Error's Code and Message methods to get detailed information about
1442// the error.
1443//
1444// See the AWS API reference guide for Amazon Inspector's
1445// API operation DescribeRulesPackages for usage and error information.
1446//
1447// Returned Error Types:
1448//   * InternalException
1449//   Internal server error.
1450//
1451//   * InvalidInputException
1452//   The request was rejected because an invalid or out-of-range value was supplied
1453//   for an input parameter.
1454//
1455// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/DescribeRulesPackages
1456func (c *Inspector) DescribeRulesPackages(input *DescribeRulesPackagesInput) (*DescribeRulesPackagesOutput, error) {
1457	req, out := c.DescribeRulesPackagesRequest(input)
1458	return out, req.Send()
1459}
1460
1461// DescribeRulesPackagesWithContext is the same as DescribeRulesPackages with the addition of
1462// the ability to pass a context and additional request options.
1463//
1464// See DescribeRulesPackages for details on how to use this API operation.
1465//
1466// The context must be non-nil and will be used for request cancellation. If
1467// the context is nil a panic will occur. In the future the SDK may create
1468// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1469// for more information on using Contexts.
1470func (c *Inspector) DescribeRulesPackagesWithContext(ctx aws.Context, input *DescribeRulesPackagesInput, opts ...request.Option) (*DescribeRulesPackagesOutput, error) {
1471	req, out := c.DescribeRulesPackagesRequest(input)
1472	req.SetContext(ctx)
1473	req.ApplyOptions(opts...)
1474	return out, req.Send()
1475}
1476
1477const opGetAssessmentReport = "GetAssessmentReport"
1478
1479// GetAssessmentReportRequest generates a "aws/request.Request" representing the
1480// client's request for the GetAssessmentReport operation. The "output" return
1481// value will be populated with the request's response once the request completes
1482// successfully.
1483//
1484// Use "Send" method on the returned Request to send the API call to the service.
1485// the "output" return value is not valid until after Send returns without error.
1486//
1487// See GetAssessmentReport for more information on using the GetAssessmentReport
1488// API call, and error handling.
1489//
1490// This method is useful when you want to inject custom logic or configuration
1491// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1492//
1493//
1494//    // Example sending a request using the GetAssessmentReportRequest method.
1495//    req, resp := client.GetAssessmentReportRequest(params)
1496//
1497//    err := req.Send()
1498//    if err == nil { // resp is now filled
1499//        fmt.Println(resp)
1500//    }
1501//
1502// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/GetAssessmentReport
1503func (c *Inspector) GetAssessmentReportRequest(input *GetAssessmentReportInput) (req *request.Request, output *GetAssessmentReportOutput) {
1504	op := &request.Operation{
1505		Name:       opGetAssessmentReport,
1506		HTTPMethod: "POST",
1507		HTTPPath:   "/",
1508	}
1509
1510	if input == nil {
1511		input = &GetAssessmentReportInput{}
1512	}
1513
1514	output = &GetAssessmentReportOutput{}
1515	req = c.newRequest(op, input, output)
1516	return
1517}
1518
1519// GetAssessmentReport API operation for Amazon Inspector.
1520//
1521// Produces an assessment report that includes detailed and comprehensive results
1522// of a specified assessment run.
1523//
1524// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1525// with awserr.Error's Code and Message methods to get detailed information about
1526// the error.
1527//
1528// See the AWS API reference guide for Amazon Inspector's
1529// API operation GetAssessmentReport for usage and error information.
1530//
1531// Returned Error Types:
1532//   * InternalException
1533//   Internal server error.
1534//
1535//   * InvalidInputException
1536//   The request was rejected because an invalid or out-of-range value was supplied
1537//   for an input parameter.
1538//
1539//   * AccessDeniedException
1540//   You do not have required permissions to access the requested resource.
1541//
1542//   * NoSuchEntityException
1543//   The request was rejected because it referenced an entity that does not exist.
1544//   The error code describes the entity.
1545//
1546//   * AssessmentRunInProgressException
1547//   You cannot perform a specified action if an assessment run is currently in
1548//   progress.
1549//
1550//   * UnsupportedFeatureException
1551//   Used by the GetAssessmentReport API. The request was rejected because you
1552//   tried to generate a report for an assessment run that existed before reporting
1553//   was supported in Amazon Inspector. You can only generate reports for assessment
1554//   runs that took place or will take place after generating reports in Amazon
1555//   Inspector became available.
1556//
1557//   * ServiceTemporarilyUnavailableException
1558//   The serice is temporary unavailable.
1559//
1560// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/GetAssessmentReport
1561func (c *Inspector) GetAssessmentReport(input *GetAssessmentReportInput) (*GetAssessmentReportOutput, error) {
1562	req, out := c.GetAssessmentReportRequest(input)
1563	return out, req.Send()
1564}
1565
1566// GetAssessmentReportWithContext is the same as GetAssessmentReport with the addition of
1567// the ability to pass a context and additional request options.
1568//
1569// See GetAssessmentReport for details on how to use this API operation.
1570//
1571// The context must be non-nil and will be used for request cancellation. If
1572// the context is nil a panic will occur. In the future the SDK may create
1573// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1574// for more information on using Contexts.
1575func (c *Inspector) GetAssessmentReportWithContext(ctx aws.Context, input *GetAssessmentReportInput, opts ...request.Option) (*GetAssessmentReportOutput, error) {
1576	req, out := c.GetAssessmentReportRequest(input)
1577	req.SetContext(ctx)
1578	req.ApplyOptions(opts...)
1579	return out, req.Send()
1580}
1581
1582const opGetExclusionsPreview = "GetExclusionsPreview"
1583
1584// GetExclusionsPreviewRequest generates a "aws/request.Request" representing the
1585// client's request for the GetExclusionsPreview operation. The "output" return
1586// value will be populated with the request's response once the request completes
1587// successfully.
1588//
1589// Use "Send" method on the returned Request to send the API call to the service.
1590// the "output" return value is not valid until after Send returns without error.
1591//
1592// See GetExclusionsPreview for more information on using the GetExclusionsPreview
1593// API call, and error handling.
1594//
1595// This method is useful when you want to inject custom logic or configuration
1596// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1597//
1598//
1599//    // Example sending a request using the GetExclusionsPreviewRequest method.
1600//    req, resp := client.GetExclusionsPreviewRequest(params)
1601//
1602//    err := req.Send()
1603//    if err == nil { // resp is now filled
1604//        fmt.Println(resp)
1605//    }
1606//
1607// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/GetExclusionsPreview
1608func (c *Inspector) GetExclusionsPreviewRequest(input *GetExclusionsPreviewInput) (req *request.Request, output *GetExclusionsPreviewOutput) {
1609	op := &request.Operation{
1610		Name:       opGetExclusionsPreview,
1611		HTTPMethod: "POST",
1612		HTTPPath:   "/",
1613		Paginator: &request.Paginator{
1614			InputTokens:     []string{"nextToken"},
1615			OutputTokens:    []string{"nextToken"},
1616			LimitToken:      "maxResults",
1617			TruncationToken: "",
1618		},
1619	}
1620
1621	if input == nil {
1622		input = &GetExclusionsPreviewInput{}
1623	}
1624
1625	output = &GetExclusionsPreviewOutput{}
1626	req = c.newRequest(op, input, output)
1627	return
1628}
1629
1630// GetExclusionsPreview API operation for Amazon Inspector.
1631//
1632// Retrieves the exclusions preview (a list of ExclusionPreview objects) specified
1633// by the preview token. You can obtain the preview token by running the CreateExclusionsPreview
1634// API.
1635//
1636// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1637// with awserr.Error's Code and Message methods to get detailed information about
1638// the error.
1639//
1640// See the AWS API reference guide for Amazon Inspector's
1641// API operation GetExclusionsPreview for usage and error information.
1642//
1643// Returned Error Types:
1644//   * InvalidInputException
1645//   The request was rejected because an invalid or out-of-range value was supplied
1646//   for an input parameter.
1647//
1648//   * InternalException
1649//   Internal server error.
1650//
1651//   * AccessDeniedException
1652//   You do not have required permissions to access the requested resource.
1653//
1654//   * NoSuchEntityException
1655//   The request was rejected because it referenced an entity that does not exist.
1656//   The error code describes the entity.
1657//
1658// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/GetExclusionsPreview
1659func (c *Inspector) GetExclusionsPreview(input *GetExclusionsPreviewInput) (*GetExclusionsPreviewOutput, error) {
1660	req, out := c.GetExclusionsPreviewRequest(input)
1661	return out, req.Send()
1662}
1663
1664// GetExclusionsPreviewWithContext is the same as GetExclusionsPreview with the addition of
1665// the ability to pass a context and additional request options.
1666//
1667// See GetExclusionsPreview for details on how to use this API operation.
1668//
1669// The context must be non-nil and will be used for request cancellation. If
1670// the context is nil a panic will occur. In the future the SDK may create
1671// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1672// for more information on using Contexts.
1673func (c *Inspector) GetExclusionsPreviewWithContext(ctx aws.Context, input *GetExclusionsPreviewInput, opts ...request.Option) (*GetExclusionsPreviewOutput, error) {
1674	req, out := c.GetExclusionsPreviewRequest(input)
1675	req.SetContext(ctx)
1676	req.ApplyOptions(opts...)
1677	return out, req.Send()
1678}
1679
1680// GetExclusionsPreviewPages iterates over the pages of a GetExclusionsPreview operation,
1681// calling the "fn" function with the response data for each page. To stop
1682// iterating, return false from the fn function.
1683//
1684// See GetExclusionsPreview method for more information on how to use this operation.
1685//
1686// Note: This operation can generate multiple requests to a service.
1687//
1688//    // Example iterating over at most 3 pages of a GetExclusionsPreview operation.
1689//    pageNum := 0
1690//    err := client.GetExclusionsPreviewPages(params,
1691//        func(page *inspector.GetExclusionsPreviewOutput, lastPage bool) bool {
1692//            pageNum++
1693//            fmt.Println(page)
1694//            return pageNum <= 3
1695//        })
1696//
1697func (c *Inspector) GetExclusionsPreviewPages(input *GetExclusionsPreviewInput, fn func(*GetExclusionsPreviewOutput, bool) bool) error {
1698	return c.GetExclusionsPreviewPagesWithContext(aws.BackgroundContext(), input, fn)
1699}
1700
1701// GetExclusionsPreviewPagesWithContext same as GetExclusionsPreviewPages except
1702// it takes a Context and allows setting request options on the pages.
1703//
1704// The context must be non-nil and will be used for request cancellation. If
1705// the context is nil a panic will occur. In the future the SDK may create
1706// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1707// for more information on using Contexts.
1708func (c *Inspector) GetExclusionsPreviewPagesWithContext(ctx aws.Context, input *GetExclusionsPreviewInput, fn func(*GetExclusionsPreviewOutput, bool) bool, opts ...request.Option) error {
1709	p := request.Pagination{
1710		NewRequest: func() (*request.Request, error) {
1711			var inCpy *GetExclusionsPreviewInput
1712			if input != nil {
1713				tmp := *input
1714				inCpy = &tmp
1715			}
1716			req, _ := c.GetExclusionsPreviewRequest(inCpy)
1717			req.SetContext(ctx)
1718			req.ApplyOptions(opts...)
1719			return req, nil
1720		},
1721	}
1722
1723	for p.Next() {
1724		if !fn(p.Page().(*GetExclusionsPreviewOutput), !p.HasNextPage()) {
1725			break
1726		}
1727	}
1728
1729	return p.Err()
1730}
1731
1732const opGetTelemetryMetadata = "GetTelemetryMetadata"
1733
1734// GetTelemetryMetadataRequest generates a "aws/request.Request" representing the
1735// client's request for the GetTelemetryMetadata operation. The "output" return
1736// value will be populated with the request's response once the request completes
1737// successfully.
1738//
1739// Use "Send" method on the returned Request to send the API call to the service.
1740// the "output" return value is not valid until after Send returns without error.
1741//
1742// See GetTelemetryMetadata for more information on using the GetTelemetryMetadata
1743// API call, and error handling.
1744//
1745// This method is useful when you want to inject custom logic or configuration
1746// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1747//
1748//
1749//    // Example sending a request using the GetTelemetryMetadataRequest method.
1750//    req, resp := client.GetTelemetryMetadataRequest(params)
1751//
1752//    err := req.Send()
1753//    if err == nil { // resp is now filled
1754//        fmt.Println(resp)
1755//    }
1756//
1757// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/GetTelemetryMetadata
1758func (c *Inspector) GetTelemetryMetadataRequest(input *GetTelemetryMetadataInput) (req *request.Request, output *GetTelemetryMetadataOutput) {
1759	op := &request.Operation{
1760		Name:       opGetTelemetryMetadata,
1761		HTTPMethod: "POST",
1762		HTTPPath:   "/",
1763	}
1764
1765	if input == nil {
1766		input = &GetTelemetryMetadataInput{}
1767	}
1768
1769	output = &GetTelemetryMetadataOutput{}
1770	req = c.newRequest(op, input, output)
1771	return
1772}
1773
1774// GetTelemetryMetadata API operation for Amazon Inspector.
1775//
1776// Information about the data that is collected for the specified assessment
1777// run.
1778//
1779// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1780// with awserr.Error's Code and Message methods to get detailed information about
1781// the error.
1782//
1783// See the AWS API reference guide for Amazon Inspector's
1784// API operation GetTelemetryMetadata for usage and error information.
1785//
1786// Returned Error Types:
1787//   * InternalException
1788//   Internal server error.
1789//
1790//   * InvalidInputException
1791//   The request was rejected because an invalid or out-of-range value was supplied
1792//   for an input parameter.
1793//
1794//   * AccessDeniedException
1795//   You do not have required permissions to access the requested resource.
1796//
1797//   * NoSuchEntityException
1798//   The request was rejected because it referenced an entity that does not exist.
1799//   The error code describes the entity.
1800//
1801// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/GetTelemetryMetadata
1802func (c *Inspector) GetTelemetryMetadata(input *GetTelemetryMetadataInput) (*GetTelemetryMetadataOutput, error) {
1803	req, out := c.GetTelemetryMetadataRequest(input)
1804	return out, req.Send()
1805}
1806
1807// GetTelemetryMetadataWithContext is the same as GetTelemetryMetadata with the addition of
1808// the ability to pass a context and additional request options.
1809//
1810// See GetTelemetryMetadata for details on how to use this API operation.
1811//
1812// The context must be non-nil and will be used for request cancellation. If
1813// the context is nil a panic will occur. In the future the SDK may create
1814// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1815// for more information on using Contexts.
1816func (c *Inspector) GetTelemetryMetadataWithContext(ctx aws.Context, input *GetTelemetryMetadataInput, opts ...request.Option) (*GetTelemetryMetadataOutput, error) {
1817	req, out := c.GetTelemetryMetadataRequest(input)
1818	req.SetContext(ctx)
1819	req.ApplyOptions(opts...)
1820	return out, req.Send()
1821}
1822
1823const opListAssessmentRunAgents = "ListAssessmentRunAgents"
1824
1825// ListAssessmentRunAgentsRequest generates a "aws/request.Request" representing the
1826// client's request for the ListAssessmentRunAgents operation. The "output" return
1827// value will be populated with the request's response once the request completes
1828// successfully.
1829//
1830// Use "Send" method on the returned Request to send the API call to the service.
1831// the "output" return value is not valid until after Send returns without error.
1832//
1833// See ListAssessmentRunAgents for more information on using the ListAssessmentRunAgents
1834// API call, and error handling.
1835//
1836// This method is useful when you want to inject custom logic or configuration
1837// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1838//
1839//
1840//    // Example sending a request using the ListAssessmentRunAgentsRequest method.
1841//    req, resp := client.ListAssessmentRunAgentsRequest(params)
1842//
1843//    err := req.Send()
1844//    if err == nil { // resp is now filled
1845//        fmt.Println(resp)
1846//    }
1847//
1848// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentRunAgents
1849func (c *Inspector) ListAssessmentRunAgentsRequest(input *ListAssessmentRunAgentsInput) (req *request.Request, output *ListAssessmentRunAgentsOutput) {
1850	op := &request.Operation{
1851		Name:       opListAssessmentRunAgents,
1852		HTTPMethod: "POST",
1853		HTTPPath:   "/",
1854		Paginator: &request.Paginator{
1855			InputTokens:     []string{"nextToken"},
1856			OutputTokens:    []string{"nextToken"},
1857			LimitToken:      "maxResults",
1858			TruncationToken: "",
1859		},
1860	}
1861
1862	if input == nil {
1863		input = &ListAssessmentRunAgentsInput{}
1864	}
1865
1866	output = &ListAssessmentRunAgentsOutput{}
1867	req = c.newRequest(op, input, output)
1868	return
1869}
1870
1871// ListAssessmentRunAgents API operation for Amazon Inspector.
1872//
1873// Lists the agents of the assessment runs that are specified by the ARNs of
1874// the assessment runs.
1875//
1876// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1877// with awserr.Error's Code and Message methods to get detailed information about
1878// the error.
1879//
1880// See the AWS API reference guide for Amazon Inspector's
1881// API operation ListAssessmentRunAgents for usage and error information.
1882//
1883// Returned Error Types:
1884//   * InternalException
1885//   Internal server error.
1886//
1887//   * InvalidInputException
1888//   The request was rejected because an invalid or out-of-range value was supplied
1889//   for an input parameter.
1890//
1891//   * AccessDeniedException
1892//   You do not have required permissions to access the requested resource.
1893//
1894//   * NoSuchEntityException
1895//   The request was rejected because it referenced an entity that does not exist.
1896//   The error code describes the entity.
1897//
1898// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentRunAgents
1899func (c *Inspector) ListAssessmentRunAgents(input *ListAssessmentRunAgentsInput) (*ListAssessmentRunAgentsOutput, error) {
1900	req, out := c.ListAssessmentRunAgentsRequest(input)
1901	return out, req.Send()
1902}
1903
1904// ListAssessmentRunAgentsWithContext is the same as ListAssessmentRunAgents with the addition of
1905// the ability to pass a context and additional request options.
1906//
1907// See ListAssessmentRunAgents for details on how to use this API operation.
1908//
1909// The context must be non-nil and will be used for request cancellation. If
1910// the context is nil a panic will occur. In the future the SDK may create
1911// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1912// for more information on using Contexts.
1913func (c *Inspector) ListAssessmentRunAgentsWithContext(ctx aws.Context, input *ListAssessmentRunAgentsInput, opts ...request.Option) (*ListAssessmentRunAgentsOutput, error) {
1914	req, out := c.ListAssessmentRunAgentsRequest(input)
1915	req.SetContext(ctx)
1916	req.ApplyOptions(opts...)
1917	return out, req.Send()
1918}
1919
1920// ListAssessmentRunAgentsPages iterates over the pages of a ListAssessmentRunAgents operation,
1921// calling the "fn" function with the response data for each page. To stop
1922// iterating, return false from the fn function.
1923//
1924// See ListAssessmentRunAgents method for more information on how to use this operation.
1925//
1926// Note: This operation can generate multiple requests to a service.
1927//
1928//    // Example iterating over at most 3 pages of a ListAssessmentRunAgents operation.
1929//    pageNum := 0
1930//    err := client.ListAssessmentRunAgentsPages(params,
1931//        func(page *inspector.ListAssessmentRunAgentsOutput, lastPage bool) bool {
1932//            pageNum++
1933//            fmt.Println(page)
1934//            return pageNum <= 3
1935//        })
1936//
1937func (c *Inspector) ListAssessmentRunAgentsPages(input *ListAssessmentRunAgentsInput, fn func(*ListAssessmentRunAgentsOutput, bool) bool) error {
1938	return c.ListAssessmentRunAgentsPagesWithContext(aws.BackgroundContext(), input, fn)
1939}
1940
1941// ListAssessmentRunAgentsPagesWithContext same as ListAssessmentRunAgentsPages except
1942// it takes a Context and allows setting request options on the pages.
1943//
1944// The context must be non-nil and will be used for request cancellation. If
1945// the context is nil a panic will occur. In the future the SDK may create
1946// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1947// for more information on using Contexts.
1948func (c *Inspector) ListAssessmentRunAgentsPagesWithContext(ctx aws.Context, input *ListAssessmentRunAgentsInput, fn func(*ListAssessmentRunAgentsOutput, bool) bool, opts ...request.Option) error {
1949	p := request.Pagination{
1950		NewRequest: func() (*request.Request, error) {
1951			var inCpy *ListAssessmentRunAgentsInput
1952			if input != nil {
1953				tmp := *input
1954				inCpy = &tmp
1955			}
1956			req, _ := c.ListAssessmentRunAgentsRequest(inCpy)
1957			req.SetContext(ctx)
1958			req.ApplyOptions(opts...)
1959			return req, nil
1960		},
1961	}
1962
1963	for p.Next() {
1964		if !fn(p.Page().(*ListAssessmentRunAgentsOutput), !p.HasNextPage()) {
1965			break
1966		}
1967	}
1968
1969	return p.Err()
1970}
1971
1972const opListAssessmentRuns = "ListAssessmentRuns"
1973
1974// ListAssessmentRunsRequest generates a "aws/request.Request" representing the
1975// client's request for the ListAssessmentRuns operation. The "output" return
1976// value will be populated with the request's response once the request completes
1977// successfully.
1978//
1979// Use "Send" method on the returned Request to send the API call to the service.
1980// the "output" return value is not valid until after Send returns without error.
1981//
1982// See ListAssessmentRuns for more information on using the ListAssessmentRuns
1983// API call, and error handling.
1984//
1985// This method is useful when you want to inject custom logic or configuration
1986// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1987//
1988//
1989//    // Example sending a request using the ListAssessmentRunsRequest method.
1990//    req, resp := client.ListAssessmentRunsRequest(params)
1991//
1992//    err := req.Send()
1993//    if err == nil { // resp is now filled
1994//        fmt.Println(resp)
1995//    }
1996//
1997// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentRuns
1998func (c *Inspector) ListAssessmentRunsRequest(input *ListAssessmentRunsInput) (req *request.Request, output *ListAssessmentRunsOutput) {
1999	op := &request.Operation{
2000		Name:       opListAssessmentRuns,
2001		HTTPMethod: "POST",
2002		HTTPPath:   "/",
2003		Paginator: &request.Paginator{
2004			InputTokens:     []string{"nextToken"},
2005			OutputTokens:    []string{"nextToken"},
2006			LimitToken:      "maxResults",
2007			TruncationToken: "",
2008		},
2009	}
2010
2011	if input == nil {
2012		input = &ListAssessmentRunsInput{}
2013	}
2014
2015	output = &ListAssessmentRunsOutput{}
2016	req = c.newRequest(op, input, output)
2017	return
2018}
2019
2020// ListAssessmentRuns API operation for Amazon Inspector.
2021//
2022// Lists the assessment runs that correspond to the assessment templates that
2023// are specified by the ARNs of the assessment templates.
2024//
2025// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2026// with awserr.Error's Code and Message methods to get detailed information about
2027// the error.
2028//
2029// See the AWS API reference guide for Amazon Inspector's
2030// API operation ListAssessmentRuns for usage and error information.
2031//
2032// Returned Error Types:
2033//   * InternalException
2034//   Internal server error.
2035//
2036//   * InvalidInputException
2037//   The request was rejected because an invalid or out-of-range value was supplied
2038//   for an input parameter.
2039//
2040//   * AccessDeniedException
2041//   You do not have required permissions to access the requested resource.
2042//
2043//   * NoSuchEntityException
2044//   The request was rejected because it referenced an entity that does not exist.
2045//   The error code describes the entity.
2046//
2047// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentRuns
2048func (c *Inspector) ListAssessmentRuns(input *ListAssessmentRunsInput) (*ListAssessmentRunsOutput, error) {
2049	req, out := c.ListAssessmentRunsRequest(input)
2050	return out, req.Send()
2051}
2052
2053// ListAssessmentRunsWithContext is the same as ListAssessmentRuns with the addition of
2054// the ability to pass a context and additional request options.
2055//
2056// See ListAssessmentRuns for details on how to use this API operation.
2057//
2058// The context must be non-nil and will be used for request cancellation. If
2059// the context is nil a panic will occur. In the future the SDK may create
2060// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2061// for more information on using Contexts.
2062func (c *Inspector) ListAssessmentRunsWithContext(ctx aws.Context, input *ListAssessmentRunsInput, opts ...request.Option) (*ListAssessmentRunsOutput, error) {
2063	req, out := c.ListAssessmentRunsRequest(input)
2064	req.SetContext(ctx)
2065	req.ApplyOptions(opts...)
2066	return out, req.Send()
2067}
2068
2069// ListAssessmentRunsPages iterates over the pages of a ListAssessmentRuns operation,
2070// calling the "fn" function with the response data for each page. To stop
2071// iterating, return false from the fn function.
2072//
2073// See ListAssessmentRuns method for more information on how to use this operation.
2074//
2075// Note: This operation can generate multiple requests to a service.
2076//
2077//    // Example iterating over at most 3 pages of a ListAssessmentRuns operation.
2078//    pageNum := 0
2079//    err := client.ListAssessmentRunsPages(params,
2080//        func(page *inspector.ListAssessmentRunsOutput, lastPage bool) bool {
2081//            pageNum++
2082//            fmt.Println(page)
2083//            return pageNum <= 3
2084//        })
2085//
2086func (c *Inspector) ListAssessmentRunsPages(input *ListAssessmentRunsInput, fn func(*ListAssessmentRunsOutput, bool) bool) error {
2087	return c.ListAssessmentRunsPagesWithContext(aws.BackgroundContext(), input, fn)
2088}
2089
2090// ListAssessmentRunsPagesWithContext same as ListAssessmentRunsPages except
2091// it takes a Context and allows setting request options on the pages.
2092//
2093// The context must be non-nil and will be used for request cancellation. If
2094// the context is nil a panic will occur. In the future the SDK may create
2095// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2096// for more information on using Contexts.
2097func (c *Inspector) ListAssessmentRunsPagesWithContext(ctx aws.Context, input *ListAssessmentRunsInput, fn func(*ListAssessmentRunsOutput, bool) bool, opts ...request.Option) error {
2098	p := request.Pagination{
2099		NewRequest: func() (*request.Request, error) {
2100			var inCpy *ListAssessmentRunsInput
2101			if input != nil {
2102				tmp := *input
2103				inCpy = &tmp
2104			}
2105			req, _ := c.ListAssessmentRunsRequest(inCpy)
2106			req.SetContext(ctx)
2107			req.ApplyOptions(opts...)
2108			return req, nil
2109		},
2110	}
2111
2112	for p.Next() {
2113		if !fn(p.Page().(*ListAssessmentRunsOutput), !p.HasNextPage()) {
2114			break
2115		}
2116	}
2117
2118	return p.Err()
2119}
2120
2121const opListAssessmentTargets = "ListAssessmentTargets"
2122
2123// ListAssessmentTargetsRequest generates a "aws/request.Request" representing the
2124// client's request for the ListAssessmentTargets operation. The "output" return
2125// value will be populated with the request's response once the request completes
2126// successfully.
2127//
2128// Use "Send" method on the returned Request to send the API call to the service.
2129// the "output" return value is not valid until after Send returns without error.
2130//
2131// See ListAssessmentTargets for more information on using the ListAssessmentTargets
2132// API call, and error handling.
2133//
2134// This method is useful when you want to inject custom logic or configuration
2135// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2136//
2137//
2138//    // Example sending a request using the ListAssessmentTargetsRequest method.
2139//    req, resp := client.ListAssessmentTargetsRequest(params)
2140//
2141//    err := req.Send()
2142//    if err == nil { // resp is now filled
2143//        fmt.Println(resp)
2144//    }
2145//
2146// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentTargets
2147func (c *Inspector) ListAssessmentTargetsRequest(input *ListAssessmentTargetsInput) (req *request.Request, output *ListAssessmentTargetsOutput) {
2148	op := &request.Operation{
2149		Name:       opListAssessmentTargets,
2150		HTTPMethod: "POST",
2151		HTTPPath:   "/",
2152		Paginator: &request.Paginator{
2153			InputTokens:     []string{"nextToken"},
2154			OutputTokens:    []string{"nextToken"},
2155			LimitToken:      "maxResults",
2156			TruncationToken: "",
2157		},
2158	}
2159
2160	if input == nil {
2161		input = &ListAssessmentTargetsInput{}
2162	}
2163
2164	output = &ListAssessmentTargetsOutput{}
2165	req = c.newRequest(op, input, output)
2166	return
2167}
2168
2169// ListAssessmentTargets API operation for Amazon Inspector.
2170//
2171// Lists the ARNs of the assessment targets within this AWS account. For more
2172// information about assessment targets, see Amazon Inspector Assessment Targets
2173// (https://docs.aws.amazon.com/inspector/latest/userguide/inspector_applications.html).
2174//
2175// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2176// with awserr.Error's Code and Message methods to get detailed information about
2177// the error.
2178//
2179// See the AWS API reference guide for Amazon Inspector's
2180// API operation ListAssessmentTargets for usage and error information.
2181//
2182// Returned Error Types:
2183//   * InternalException
2184//   Internal server error.
2185//
2186//   * InvalidInputException
2187//   The request was rejected because an invalid or out-of-range value was supplied
2188//   for an input parameter.
2189//
2190//   * AccessDeniedException
2191//   You do not have required permissions to access the requested resource.
2192//
2193// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentTargets
2194func (c *Inspector) ListAssessmentTargets(input *ListAssessmentTargetsInput) (*ListAssessmentTargetsOutput, error) {
2195	req, out := c.ListAssessmentTargetsRequest(input)
2196	return out, req.Send()
2197}
2198
2199// ListAssessmentTargetsWithContext is the same as ListAssessmentTargets with the addition of
2200// the ability to pass a context and additional request options.
2201//
2202// See ListAssessmentTargets for details on how to use this API operation.
2203//
2204// The context must be non-nil and will be used for request cancellation. If
2205// the context is nil a panic will occur. In the future the SDK may create
2206// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2207// for more information on using Contexts.
2208func (c *Inspector) ListAssessmentTargetsWithContext(ctx aws.Context, input *ListAssessmentTargetsInput, opts ...request.Option) (*ListAssessmentTargetsOutput, error) {
2209	req, out := c.ListAssessmentTargetsRequest(input)
2210	req.SetContext(ctx)
2211	req.ApplyOptions(opts...)
2212	return out, req.Send()
2213}
2214
2215// ListAssessmentTargetsPages iterates over the pages of a ListAssessmentTargets operation,
2216// calling the "fn" function with the response data for each page. To stop
2217// iterating, return false from the fn function.
2218//
2219// See ListAssessmentTargets method for more information on how to use this operation.
2220//
2221// Note: This operation can generate multiple requests to a service.
2222//
2223//    // Example iterating over at most 3 pages of a ListAssessmentTargets operation.
2224//    pageNum := 0
2225//    err := client.ListAssessmentTargetsPages(params,
2226//        func(page *inspector.ListAssessmentTargetsOutput, lastPage bool) bool {
2227//            pageNum++
2228//            fmt.Println(page)
2229//            return pageNum <= 3
2230//        })
2231//
2232func (c *Inspector) ListAssessmentTargetsPages(input *ListAssessmentTargetsInput, fn func(*ListAssessmentTargetsOutput, bool) bool) error {
2233	return c.ListAssessmentTargetsPagesWithContext(aws.BackgroundContext(), input, fn)
2234}
2235
2236// ListAssessmentTargetsPagesWithContext same as ListAssessmentTargetsPages except
2237// it takes a Context and allows setting request options on the pages.
2238//
2239// The context must be non-nil and will be used for request cancellation. If
2240// the context is nil a panic will occur. In the future the SDK may create
2241// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2242// for more information on using Contexts.
2243func (c *Inspector) ListAssessmentTargetsPagesWithContext(ctx aws.Context, input *ListAssessmentTargetsInput, fn func(*ListAssessmentTargetsOutput, bool) bool, opts ...request.Option) error {
2244	p := request.Pagination{
2245		NewRequest: func() (*request.Request, error) {
2246			var inCpy *ListAssessmentTargetsInput
2247			if input != nil {
2248				tmp := *input
2249				inCpy = &tmp
2250			}
2251			req, _ := c.ListAssessmentTargetsRequest(inCpy)
2252			req.SetContext(ctx)
2253			req.ApplyOptions(opts...)
2254			return req, nil
2255		},
2256	}
2257
2258	for p.Next() {
2259		if !fn(p.Page().(*ListAssessmentTargetsOutput), !p.HasNextPage()) {
2260			break
2261		}
2262	}
2263
2264	return p.Err()
2265}
2266
2267const opListAssessmentTemplates = "ListAssessmentTemplates"
2268
2269// ListAssessmentTemplatesRequest generates a "aws/request.Request" representing the
2270// client's request for the ListAssessmentTemplates operation. The "output" return
2271// value will be populated with the request's response once the request completes
2272// successfully.
2273//
2274// Use "Send" method on the returned Request to send the API call to the service.
2275// the "output" return value is not valid until after Send returns without error.
2276//
2277// See ListAssessmentTemplates for more information on using the ListAssessmentTemplates
2278// API call, and error handling.
2279//
2280// This method is useful when you want to inject custom logic or configuration
2281// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2282//
2283//
2284//    // Example sending a request using the ListAssessmentTemplatesRequest method.
2285//    req, resp := client.ListAssessmentTemplatesRequest(params)
2286//
2287//    err := req.Send()
2288//    if err == nil { // resp is now filled
2289//        fmt.Println(resp)
2290//    }
2291//
2292// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentTemplates
2293func (c *Inspector) ListAssessmentTemplatesRequest(input *ListAssessmentTemplatesInput) (req *request.Request, output *ListAssessmentTemplatesOutput) {
2294	op := &request.Operation{
2295		Name:       opListAssessmentTemplates,
2296		HTTPMethod: "POST",
2297		HTTPPath:   "/",
2298		Paginator: &request.Paginator{
2299			InputTokens:     []string{"nextToken"},
2300			OutputTokens:    []string{"nextToken"},
2301			LimitToken:      "maxResults",
2302			TruncationToken: "",
2303		},
2304	}
2305
2306	if input == nil {
2307		input = &ListAssessmentTemplatesInput{}
2308	}
2309
2310	output = &ListAssessmentTemplatesOutput{}
2311	req = c.newRequest(op, input, output)
2312	return
2313}
2314
2315// ListAssessmentTemplates API operation for Amazon Inspector.
2316//
2317// Lists the assessment templates that correspond to the assessment targets
2318// that are specified by the ARNs of the assessment targets.
2319//
2320// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2321// with awserr.Error's Code and Message methods to get detailed information about
2322// the error.
2323//
2324// See the AWS API reference guide for Amazon Inspector's
2325// API operation ListAssessmentTemplates for usage and error information.
2326//
2327// Returned Error Types:
2328//   * InternalException
2329//   Internal server error.
2330//
2331//   * InvalidInputException
2332//   The request was rejected because an invalid or out-of-range value was supplied
2333//   for an input parameter.
2334//
2335//   * AccessDeniedException
2336//   You do not have required permissions to access the requested resource.
2337//
2338//   * NoSuchEntityException
2339//   The request was rejected because it referenced an entity that does not exist.
2340//   The error code describes the entity.
2341//
2342// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListAssessmentTemplates
2343func (c *Inspector) ListAssessmentTemplates(input *ListAssessmentTemplatesInput) (*ListAssessmentTemplatesOutput, error) {
2344	req, out := c.ListAssessmentTemplatesRequest(input)
2345	return out, req.Send()
2346}
2347
2348// ListAssessmentTemplatesWithContext is the same as ListAssessmentTemplates with the addition of
2349// the ability to pass a context and additional request options.
2350//
2351// See ListAssessmentTemplates for details on how to use this API operation.
2352//
2353// The context must be non-nil and will be used for request cancellation. If
2354// the context is nil a panic will occur. In the future the SDK may create
2355// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2356// for more information on using Contexts.
2357func (c *Inspector) ListAssessmentTemplatesWithContext(ctx aws.Context, input *ListAssessmentTemplatesInput, opts ...request.Option) (*ListAssessmentTemplatesOutput, error) {
2358	req, out := c.ListAssessmentTemplatesRequest(input)
2359	req.SetContext(ctx)
2360	req.ApplyOptions(opts...)
2361	return out, req.Send()
2362}
2363
2364// ListAssessmentTemplatesPages iterates over the pages of a ListAssessmentTemplates operation,
2365// calling the "fn" function with the response data for each page. To stop
2366// iterating, return false from the fn function.
2367//
2368// See ListAssessmentTemplates method for more information on how to use this operation.
2369//
2370// Note: This operation can generate multiple requests to a service.
2371//
2372//    // Example iterating over at most 3 pages of a ListAssessmentTemplates operation.
2373//    pageNum := 0
2374//    err := client.ListAssessmentTemplatesPages(params,
2375//        func(page *inspector.ListAssessmentTemplatesOutput, lastPage bool) bool {
2376//            pageNum++
2377//            fmt.Println(page)
2378//            return pageNum <= 3
2379//        })
2380//
2381func (c *Inspector) ListAssessmentTemplatesPages(input *ListAssessmentTemplatesInput, fn func(*ListAssessmentTemplatesOutput, bool) bool) error {
2382	return c.ListAssessmentTemplatesPagesWithContext(aws.BackgroundContext(), input, fn)
2383}
2384
2385// ListAssessmentTemplatesPagesWithContext same as ListAssessmentTemplatesPages except
2386// it takes a Context and allows setting request options on the pages.
2387//
2388// The context must be non-nil and will be used for request cancellation. If
2389// the context is nil a panic will occur. In the future the SDK may create
2390// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2391// for more information on using Contexts.
2392func (c *Inspector) ListAssessmentTemplatesPagesWithContext(ctx aws.Context, input *ListAssessmentTemplatesInput, fn func(*ListAssessmentTemplatesOutput, bool) bool, opts ...request.Option) error {
2393	p := request.Pagination{
2394		NewRequest: func() (*request.Request, error) {
2395			var inCpy *ListAssessmentTemplatesInput
2396			if input != nil {
2397				tmp := *input
2398				inCpy = &tmp
2399			}
2400			req, _ := c.ListAssessmentTemplatesRequest(inCpy)
2401			req.SetContext(ctx)
2402			req.ApplyOptions(opts...)
2403			return req, nil
2404		},
2405	}
2406
2407	for p.Next() {
2408		if !fn(p.Page().(*ListAssessmentTemplatesOutput), !p.HasNextPage()) {
2409			break
2410		}
2411	}
2412
2413	return p.Err()
2414}
2415
2416const opListEventSubscriptions = "ListEventSubscriptions"
2417
2418// ListEventSubscriptionsRequest generates a "aws/request.Request" representing the
2419// client's request for the ListEventSubscriptions operation. The "output" return
2420// value will be populated with the request's response once the request completes
2421// successfully.
2422//
2423// Use "Send" method on the returned Request to send the API call to the service.
2424// the "output" return value is not valid until after Send returns without error.
2425//
2426// See ListEventSubscriptions for more information on using the ListEventSubscriptions
2427// API call, and error handling.
2428//
2429// This method is useful when you want to inject custom logic or configuration
2430// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2431//
2432//
2433//    // Example sending a request using the ListEventSubscriptionsRequest method.
2434//    req, resp := client.ListEventSubscriptionsRequest(params)
2435//
2436//    err := req.Send()
2437//    if err == nil { // resp is now filled
2438//        fmt.Println(resp)
2439//    }
2440//
2441// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListEventSubscriptions
2442func (c *Inspector) ListEventSubscriptionsRequest(input *ListEventSubscriptionsInput) (req *request.Request, output *ListEventSubscriptionsOutput) {
2443	op := &request.Operation{
2444		Name:       opListEventSubscriptions,
2445		HTTPMethod: "POST",
2446		HTTPPath:   "/",
2447		Paginator: &request.Paginator{
2448			InputTokens:     []string{"nextToken"},
2449			OutputTokens:    []string{"nextToken"},
2450			LimitToken:      "maxResults",
2451			TruncationToken: "",
2452		},
2453	}
2454
2455	if input == nil {
2456		input = &ListEventSubscriptionsInput{}
2457	}
2458
2459	output = &ListEventSubscriptionsOutput{}
2460	req = c.newRequest(op, input, output)
2461	return
2462}
2463
2464// ListEventSubscriptions API operation for Amazon Inspector.
2465//
2466// Lists all the event subscriptions for the assessment template that is specified
2467// by the ARN of the assessment template. For more information, see SubscribeToEvent
2468// and UnsubscribeFromEvent.
2469//
2470// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2471// with awserr.Error's Code and Message methods to get detailed information about
2472// the error.
2473//
2474// See the AWS API reference guide for Amazon Inspector's
2475// API operation ListEventSubscriptions for usage and error information.
2476//
2477// Returned Error Types:
2478//   * InternalException
2479//   Internal server error.
2480//
2481//   * InvalidInputException
2482//   The request was rejected because an invalid or out-of-range value was supplied
2483//   for an input parameter.
2484//
2485//   * AccessDeniedException
2486//   You do not have required permissions to access the requested resource.
2487//
2488//   * NoSuchEntityException
2489//   The request was rejected because it referenced an entity that does not exist.
2490//   The error code describes the entity.
2491//
2492// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListEventSubscriptions
2493func (c *Inspector) ListEventSubscriptions(input *ListEventSubscriptionsInput) (*ListEventSubscriptionsOutput, error) {
2494	req, out := c.ListEventSubscriptionsRequest(input)
2495	return out, req.Send()
2496}
2497
2498// ListEventSubscriptionsWithContext is the same as ListEventSubscriptions with the addition of
2499// the ability to pass a context and additional request options.
2500//
2501// See ListEventSubscriptions for details on how to use this API operation.
2502//
2503// The context must be non-nil and will be used for request cancellation. If
2504// the context is nil a panic will occur. In the future the SDK may create
2505// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2506// for more information on using Contexts.
2507func (c *Inspector) ListEventSubscriptionsWithContext(ctx aws.Context, input *ListEventSubscriptionsInput, opts ...request.Option) (*ListEventSubscriptionsOutput, error) {
2508	req, out := c.ListEventSubscriptionsRequest(input)
2509	req.SetContext(ctx)
2510	req.ApplyOptions(opts...)
2511	return out, req.Send()
2512}
2513
2514// ListEventSubscriptionsPages iterates over the pages of a ListEventSubscriptions operation,
2515// calling the "fn" function with the response data for each page. To stop
2516// iterating, return false from the fn function.
2517//
2518// See ListEventSubscriptions method for more information on how to use this operation.
2519//
2520// Note: This operation can generate multiple requests to a service.
2521//
2522//    // Example iterating over at most 3 pages of a ListEventSubscriptions operation.
2523//    pageNum := 0
2524//    err := client.ListEventSubscriptionsPages(params,
2525//        func(page *inspector.ListEventSubscriptionsOutput, lastPage bool) bool {
2526//            pageNum++
2527//            fmt.Println(page)
2528//            return pageNum <= 3
2529//        })
2530//
2531func (c *Inspector) ListEventSubscriptionsPages(input *ListEventSubscriptionsInput, fn func(*ListEventSubscriptionsOutput, bool) bool) error {
2532	return c.ListEventSubscriptionsPagesWithContext(aws.BackgroundContext(), input, fn)
2533}
2534
2535// ListEventSubscriptionsPagesWithContext same as ListEventSubscriptionsPages except
2536// it takes a Context and allows setting request options on the pages.
2537//
2538// The context must be non-nil and will be used for request cancellation. If
2539// the context is nil a panic will occur. In the future the SDK may create
2540// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2541// for more information on using Contexts.
2542func (c *Inspector) ListEventSubscriptionsPagesWithContext(ctx aws.Context, input *ListEventSubscriptionsInput, fn func(*ListEventSubscriptionsOutput, bool) bool, opts ...request.Option) error {
2543	p := request.Pagination{
2544		NewRequest: func() (*request.Request, error) {
2545			var inCpy *ListEventSubscriptionsInput
2546			if input != nil {
2547				tmp := *input
2548				inCpy = &tmp
2549			}
2550			req, _ := c.ListEventSubscriptionsRequest(inCpy)
2551			req.SetContext(ctx)
2552			req.ApplyOptions(opts...)
2553			return req, nil
2554		},
2555	}
2556
2557	for p.Next() {
2558		if !fn(p.Page().(*ListEventSubscriptionsOutput), !p.HasNextPage()) {
2559			break
2560		}
2561	}
2562
2563	return p.Err()
2564}
2565
2566const opListExclusions = "ListExclusions"
2567
2568// ListExclusionsRequest generates a "aws/request.Request" representing the
2569// client's request for the ListExclusions operation. The "output" return
2570// value will be populated with the request's response once the request completes
2571// successfully.
2572//
2573// Use "Send" method on the returned Request to send the API call to the service.
2574// the "output" return value is not valid until after Send returns without error.
2575//
2576// See ListExclusions for more information on using the ListExclusions
2577// API call, and error handling.
2578//
2579// This method is useful when you want to inject custom logic or configuration
2580// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2581//
2582//
2583//    // Example sending a request using the ListExclusionsRequest method.
2584//    req, resp := client.ListExclusionsRequest(params)
2585//
2586//    err := req.Send()
2587//    if err == nil { // resp is now filled
2588//        fmt.Println(resp)
2589//    }
2590//
2591// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListExclusions
2592func (c *Inspector) ListExclusionsRequest(input *ListExclusionsInput) (req *request.Request, output *ListExclusionsOutput) {
2593	op := &request.Operation{
2594		Name:       opListExclusions,
2595		HTTPMethod: "POST",
2596		HTTPPath:   "/",
2597		Paginator: &request.Paginator{
2598			InputTokens:     []string{"nextToken"},
2599			OutputTokens:    []string{"nextToken"},
2600			LimitToken:      "maxResults",
2601			TruncationToken: "",
2602		},
2603	}
2604
2605	if input == nil {
2606		input = &ListExclusionsInput{}
2607	}
2608
2609	output = &ListExclusionsOutput{}
2610	req = c.newRequest(op, input, output)
2611	return
2612}
2613
2614// ListExclusions API operation for Amazon Inspector.
2615//
2616// List exclusions that are generated by the assessment run.
2617//
2618// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2619// with awserr.Error's Code and Message methods to get detailed information about
2620// the error.
2621//
2622// See the AWS API reference guide for Amazon Inspector's
2623// API operation ListExclusions for usage and error information.
2624//
2625// Returned Error Types:
2626//   * InternalException
2627//   Internal server error.
2628//
2629//   * InvalidInputException
2630//   The request was rejected because an invalid or out-of-range value was supplied
2631//   for an input parameter.
2632//
2633//   * AccessDeniedException
2634//   You do not have required permissions to access the requested resource.
2635//
2636//   * NoSuchEntityException
2637//   The request was rejected because it referenced an entity that does not exist.
2638//   The error code describes the entity.
2639//
2640// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListExclusions
2641func (c *Inspector) ListExclusions(input *ListExclusionsInput) (*ListExclusionsOutput, error) {
2642	req, out := c.ListExclusionsRequest(input)
2643	return out, req.Send()
2644}
2645
2646// ListExclusionsWithContext is the same as ListExclusions with the addition of
2647// the ability to pass a context and additional request options.
2648//
2649// See ListExclusions for details on how to use this API operation.
2650//
2651// The context must be non-nil and will be used for request cancellation. If
2652// the context is nil a panic will occur. In the future the SDK may create
2653// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2654// for more information on using Contexts.
2655func (c *Inspector) ListExclusionsWithContext(ctx aws.Context, input *ListExclusionsInput, opts ...request.Option) (*ListExclusionsOutput, error) {
2656	req, out := c.ListExclusionsRequest(input)
2657	req.SetContext(ctx)
2658	req.ApplyOptions(opts...)
2659	return out, req.Send()
2660}
2661
2662// ListExclusionsPages iterates over the pages of a ListExclusions operation,
2663// calling the "fn" function with the response data for each page. To stop
2664// iterating, return false from the fn function.
2665//
2666// See ListExclusions method for more information on how to use this operation.
2667//
2668// Note: This operation can generate multiple requests to a service.
2669//
2670//    // Example iterating over at most 3 pages of a ListExclusions operation.
2671//    pageNum := 0
2672//    err := client.ListExclusionsPages(params,
2673//        func(page *inspector.ListExclusionsOutput, lastPage bool) bool {
2674//            pageNum++
2675//            fmt.Println(page)
2676//            return pageNum <= 3
2677//        })
2678//
2679func (c *Inspector) ListExclusionsPages(input *ListExclusionsInput, fn func(*ListExclusionsOutput, bool) bool) error {
2680	return c.ListExclusionsPagesWithContext(aws.BackgroundContext(), input, fn)
2681}
2682
2683// ListExclusionsPagesWithContext same as ListExclusionsPages except
2684// it takes a Context and allows setting request options on the pages.
2685//
2686// The context must be non-nil and will be used for request cancellation. If
2687// the context is nil a panic will occur. In the future the SDK may create
2688// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2689// for more information on using Contexts.
2690func (c *Inspector) ListExclusionsPagesWithContext(ctx aws.Context, input *ListExclusionsInput, fn func(*ListExclusionsOutput, bool) bool, opts ...request.Option) error {
2691	p := request.Pagination{
2692		NewRequest: func() (*request.Request, error) {
2693			var inCpy *ListExclusionsInput
2694			if input != nil {
2695				tmp := *input
2696				inCpy = &tmp
2697			}
2698			req, _ := c.ListExclusionsRequest(inCpy)
2699			req.SetContext(ctx)
2700			req.ApplyOptions(opts...)
2701			return req, nil
2702		},
2703	}
2704
2705	for p.Next() {
2706		if !fn(p.Page().(*ListExclusionsOutput), !p.HasNextPage()) {
2707			break
2708		}
2709	}
2710
2711	return p.Err()
2712}
2713
2714const opListFindings = "ListFindings"
2715
2716// ListFindingsRequest generates a "aws/request.Request" representing the
2717// client's request for the ListFindings operation. The "output" return
2718// value will be populated with the request's response once the request completes
2719// successfully.
2720//
2721// Use "Send" method on the returned Request to send the API call to the service.
2722// the "output" return value is not valid until after Send returns without error.
2723//
2724// See ListFindings for more information on using the ListFindings
2725// API call, and error handling.
2726//
2727// This method is useful when you want to inject custom logic or configuration
2728// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2729//
2730//
2731//    // Example sending a request using the ListFindingsRequest method.
2732//    req, resp := client.ListFindingsRequest(params)
2733//
2734//    err := req.Send()
2735//    if err == nil { // resp is now filled
2736//        fmt.Println(resp)
2737//    }
2738//
2739// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListFindings
2740func (c *Inspector) ListFindingsRequest(input *ListFindingsInput) (req *request.Request, output *ListFindingsOutput) {
2741	op := &request.Operation{
2742		Name:       opListFindings,
2743		HTTPMethod: "POST",
2744		HTTPPath:   "/",
2745		Paginator: &request.Paginator{
2746			InputTokens:     []string{"nextToken"},
2747			OutputTokens:    []string{"nextToken"},
2748			LimitToken:      "maxResults",
2749			TruncationToken: "",
2750		},
2751	}
2752
2753	if input == nil {
2754		input = &ListFindingsInput{}
2755	}
2756
2757	output = &ListFindingsOutput{}
2758	req = c.newRequest(op, input, output)
2759	return
2760}
2761
2762// ListFindings API operation for Amazon Inspector.
2763//
2764// Lists findings that are generated by the assessment runs that are specified
2765// by the ARNs of the assessment runs.
2766//
2767// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2768// with awserr.Error's Code and Message methods to get detailed information about
2769// the error.
2770//
2771// See the AWS API reference guide for Amazon Inspector's
2772// API operation ListFindings for usage and error information.
2773//
2774// Returned Error Types:
2775//   * InternalException
2776//   Internal server error.
2777//
2778//   * InvalidInputException
2779//   The request was rejected because an invalid or out-of-range value was supplied
2780//   for an input parameter.
2781//
2782//   * AccessDeniedException
2783//   You do not have required permissions to access the requested resource.
2784//
2785//   * NoSuchEntityException
2786//   The request was rejected because it referenced an entity that does not exist.
2787//   The error code describes the entity.
2788//
2789// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListFindings
2790func (c *Inspector) ListFindings(input *ListFindingsInput) (*ListFindingsOutput, error) {
2791	req, out := c.ListFindingsRequest(input)
2792	return out, req.Send()
2793}
2794
2795// ListFindingsWithContext is the same as ListFindings with the addition of
2796// the ability to pass a context and additional request options.
2797//
2798// See ListFindings for details on how to use this API operation.
2799//
2800// The context must be non-nil and will be used for request cancellation. If
2801// the context is nil a panic will occur. In the future the SDK may create
2802// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2803// for more information on using Contexts.
2804func (c *Inspector) ListFindingsWithContext(ctx aws.Context, input *ListFindingsInput, opts ...request.Option) (*ListFindingsOutput, error) {
2805	req, out := c.ListFindingsRequest(input)
2806	req.SetContext(ctx)
2807	req.ApplyOptions(opts...)
2808	return out, req.Send()
2809}
2810
2811// ListFindingsPages iterates over the pages of a ListFindings operation,
2812// calling the "fn" function with the response data for each page. To stop
2813// iterating, return false from the fn function.
2814//
2815// See ListFindings method for more information on how to use this operation.
2816//
2817// Note: This operation can generate multiple requests to a service.
2818//
2819//    // Example iterating over at most 3 pages of a ListFindings operation.
2820//    pageNum := 0
2821//    err := client.ListFindingsPages(params,
2822//        func(page *inspector.ListFindingsOutput, lastPage bool) bool {
2823//            pageNum++
2824//            fmt.Println(page)
2825//            return pageNum <= 3
2826//        })
2827//
2828func (c *Inspector) ListFindingsPages(input *ListFindingsInput, fn func(*ListFindingsOutput, bool) bool) error {
2829	return c.ListFindingsPagesWithContext(aws.BackgroundContext(), input, fn)
2830}
2831
2832// ListFindingsPagesWithContext same as ListFindingsPages except
2833// it takes a Context and allows setting request options on the pages.
2834//
2835// The context must be non-nil and will be used for request cancellation. If
2836// the context is nil a panic will occur. In the future the SDK may create
2837// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2838// for more information on using Contexts.
2839func (c *Inspector) ListFindingsPagesWithContext(ctx aws.Context, input *ListFindingsInput, fn func(*ListFindingsOutput, bool) bool, opts ...request.Option) error {
2840	p := request.Pagination{
2841		NewRequest: func() (*request.Request, error) {
2842			var inCpy *ListFindingsInput
2843			if input != nil {
2844				tmp := *input
2845				inCpy = &tmp
2846			}
2847			req, _ := c.ListFindingsRequest(inCpy)
2848			req.SetContext(ctx)
2849			req.ApplyOptions(opts...)
2850			return req, nil
2851		},
2852	}
2853
2854	for p.Next() {
2855		if !fn(p.Page().(*ListFindingsOutput), !p.HasNextPage()) {
2856			break
2857		}
2858	}
2859
2860	return p.Err()
2861}
2862
2863const opListRulesPackages = "ListRulesPackages"
2864
2865// ListRulesPackagesRequest generates a "aws/request.Request" representing the
2866// client's request for the ListRulesPackages operation. The "output" return
2867// value will be populated with the request's response once the request completes
2868// successfully.
2869//
2870// Use "Send" method on the returned Request to send the API call to the service.
2871// the "output" return value is not valid until after Send returns without error.
2872//
2873// See ListRulesPackages for more information on using the ListRulesPackages
2874// API call, and error handling.
2875//
2876// This method is useful when you want to inject custom logic or configuration
2877// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2878//
2879//
2880//    // Example sending a request using the ListRulesPackagesRequest method.
2881//    req, resp := client.ListRulesPackagesRequest(params)
2882//
2883//    err := req.Send()
2884//    if err == nil { // resp is now filled
2885//        fmt.Println(resp)
2886//    }
2887//
2888// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListRulesPackages
2889func (c *Inspector) ListRulesPackagesRequest(input *ListRulesPackagesInput) (req *request.Request, output *ListRulesPackagesOutput) {
2890	op := &request.Operation{
2891		Name:       opListRulesPackages,
2892		HTTPMethod: "POST",
2893		HTTPPath:   "/",
2894		Paginator: &request.Paginator{
2895			InputTokens:     []string{"nextToken"},
2896			OutputTokens:    []string{"nextToken"},
2897			LimitToken:      "maxResults",
2898			TruncationToken: "",
2899		},
2900	}
2901
2902	if input == nil {
2903		input = &ListRulesPackagesInput{}
2904	}
2905
2906	output = &ListRulesPackagesOutput{}
2907	req = c.newRequest(op, input, output)
2908	return
2909}
2910
2911// ListRulesPackages API operation for Amazon Inspector.
2912//
2913// Lists all available Amazon Inspector rules packages.
2914//
2915// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2916// with awserr.Error's Code and Message methods to get detailed information about
2917// the error.
2918//
2919// See the AWS API reference guide for Amazon Inspector's
2920// API operation ListRulesPackages for usage and error information.
2921//
2922// Returned Error Types:
2923//   * InternalException
2924//   Internal server error.
2925//
2926//   * InvalidInputException
2927//   The request was rejected because an invalid or out-of-range value was supplied
2928//   for an input parameter.
2929//
2930//   * AccessDeniedException
2931//   You do not have required permissions to access the requested resource.
2932//
2933// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListRulesPackages
2934func (c *Inspector) ListRulesPackages(input *ListRulesPackagesInput) (*ListRulesPackagesOutput, error) {
2935	req, out := c.ListRulesPackagesRequest(input)
2936	return out, req.Send()
2937}
2938
2939// ListRulesPackagesWithContext is the same as ListRulesPackages with the addition of
2940// the ability to pass a context and additional request options.
2941//
2942// See ListRulesPackages for details on how to use this API operation.
2943//
2944// The context must be non-nil and will be used for request cancellation. If
2945// the context is nil a panic will occur. In the future the SDK may create
2946// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2947// for more information on using Contexts.
2948func (c *Inspector) ListRulesPackagesWithContext(ctx aws.Context, input *ListRulesPackagesInput, opts ...request.Option) (*ListRulesPackagesOutput, error) {
2949	req, out := c.ListRulesPackagesRequest(input)
2950	req.SetContext(ctx)
2951	req.ApplyOptions(opts...)
2952	return out, req.Send()
2953}
2954
2955// ListRulesPackagesPages iterates over the pages of a ListRulesPackages operation,
2956// calling the "fn" function with the response data for each page. To stop
2957// iterating, return false from the fn function.
2958//
2959// See ListRulesPackages method for more information on how to use this operation.
2960//
2961// Note: This operation can generate multiple requests to a service.
2962//
2963//    // Example iterating over at most 3 pages of a ListRulesPackages operation.
2964//    pageNum := 0
2965//    err := client.ListRulesPackagesPages(params,
2966//        func(page *inspector.ListRulesPackagesOutput, lastPage bool) bool {
2967//            pageNum++
2968//            fmt.Println(page)
2969//            return pageNum <= 3
2970//        })
2971//
2972func (c *Inspector) ListRulesPackagesPages(input *ListRulesPackagesInput, fn func(*ListRulesPackagesOutput, bool) bool) error {
2973	return c.ListRulesPackagesPagesWithContext(aws.BackgroundContext(), input, fn)
2974}
2975
2976// ListRulesPackagesPagesWithContext same as ListRulesPackagesPages except
2977// it takes a Context and allows setting request options on the pages.
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 *Inspector) ListRulesPackagesPagesWithContext(ctx aws.Context, input *ListRulesPackagesInput, fn func(*ListRulesPackagesOutput, bool) bool, opts ...request.Option) error {
2984	p := request.Pagination{
2985		NewRequest: func() (*request.Request, error) {
2986			var inCpy *ListRulesPackagesInput
2987			if input != nil {
2988				tmp := *input
2989				inCpy = &tmp
2990			}
2991			req, _ := c.ListRulesPackagesRequest(inCpy)
2992			req.SetContext(ctx)
2993			req.ApplyOptions(opts...)
2994			return req, nil
2995		},
2996	}
2997
2998	for p.Next() {
2999		if !fn(p.Page().(*ListRulesPackagesOutput), !p.HasNextPage()) {
3000			break
3001		}
3002	}
3003
3004	return p.Err()
3005}
3006
3007const opListTagsForResource = "ListTagsForResource"
3008
3009// ListTagsForResourceRequest generates a "aws/request.Request" representing the
3010// client's request for the ListTagsForResource operation. The "output" return
3011// value will be populated with the request's response once the request completes
3012// successfully.
3013//
3014// Use "Send" method on the returned Request to send the API call to the service.
3015// the "output" return value is not valid until after Send returns without error.
3016//
3017// See ListTagsForResource for more information on using the ListTagsForResource
3018// API call, and error handling.
3019//
3020// This method is useful when you want to inject custom logic or configuration
3021// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3022//
3023//
3024//    // Example sending a request using the ListTagsForResourceRequest method.
3025//    req, resp := client.ListTagsForResourceRequest(params)
3026//
3027//    err := req.Send()
3028//    if err == nil { // resp is now filled
3029//        fmt.Println(resp)
3030//    }
3031//
3032// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListTagsForResource
3033func (c *Inspector) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
3034	op := &request.Operation{
3035		Name:       opListTagsForResource,
3036		HTTPMethod: "POST",
3037		HTTPPath:   "/",
3038	}
3039
3040	if input == nil {
3041		input = &ListTagsForResourceInput{}
3042	}
3043
3044	output = &ListTagsForResourceOutput{}
3045	req = c.newRequest(op, input, output)
3046	return
3047}
3048
3049// ListTagsForResource API operation for Amazon Inspector.
3050//
3051// Lists all tags associated with an assessment template.
3052//
3053// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3054// with awserr.Error's Code and Message methods to get detailed information about
3055// the error.
3056//
3057// See the AWS API reference guide for Amazon Inspector's
3058// API operation ListTagsForResource for usage and error information.
3059//
3060// Returned Error Types:
3061//   * InternalException
3062//   Internal server error.
3063//
3064//   * InvalidInputException
3065//   The request was rejected because an invalid or out-of-range value was supplied
3066//   for an input parameter.
3067//
3068//   * AccessDeniedException
3069//   You do not have required permissions to access the requested resource.
3070//
3071//   * NoSuchEntityException
3072//   The request was rejected because it referenced an entity that does not exist.
3073//   The error code describes the entity.
3074//
3075// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/ListTagsForResource
3076func (c *Inspector) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
3077	req, out := c.ListTagsForResourceRequest(input)
3078	return out, req.Send()
3079}
3080
3081// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
3082// the ability to pass a context and additional request options.
3083//
3084// See ListTagsForResource for details on how to use this API operation.
3085//
3086// The context must be non-nil and will be used for request cancellation. If
3087// the context is nil a panic will occur. In the future the SDK may create
3088// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3089// for more information on using Contexts.
3090func (c *Inspector) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
3091	req, out := c.ListTagsForResourceRequest(input)
3092	req.SetContext(ctx)
3093	req.ApplyOptions(opts...)
3094	return out, req.Send()
3095}
3096
3097const opPreviewAgents = "PreviewAgents"
3098
3099// PreviewAgentsRequest generates a "aws/request.Request" representing the
3100// client's request for the PreviewAgents operation. The "output" return
3101// value will be populated with the request's response once the request completes
3102// successfully.
3103//
3104// Use "Send" method on the returned Request to send the API call to the service.
3105// the "output" return value is not valid until after Send returns without error.
3106//
3107// See PreviewAgents for more information on using the PreviewAgents
3108// API call, and error handling.
3109//
3110// This method is useful when you want to inject custom logic or configuration
3111// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3112//
3113//
3114//    // Example sending a request using the PreviewAgentsRequest method.
3115//    req, resp := client.PreviewAgentsRequest(params)
3116//
3117//    err := req.Send()
3118//    if err == nil { // resp is now filled
3119//        fmt.Println(resp)
3120//    }
3121//
3122// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/PreviewAgents
3123func (c *Inspector) PreviewAgentsRequest(input *PreviewAgentsInput) (req *request.Request, output *PreviewAgentsOutput) {
3124	op := &request.Operation{
3125		Name:       opPreviewAgents,
3126		HTTPMethod: "POST",
3127		HTTPPath:   "/",
3128		Paginator: &request.Paginator{
3129			InputTokens:     []string{"nextToken"},
3130			OutputTokens:    []string{"nextToken"},
3131			LimitToken:      "maxResults",
3132			TruncationToken: "",
3133		},
3134	}
3135
3136	if input == nil {
3137		input = &PreviewAgentsInput{}
3138	}
3139
3140	output = &PreviewAgentsOutput{}
3141	req = c.newRequest(op, input, output)
3142	return
3143}
3144
3145// PreviewAgents API operation for Amazon Inspector.
3146//
3147// Previews the agents installed on the EC2 instances that are part of the specified
3148// assessment target.
3149//
3150// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3151// with awserr.Error's Code and Message methods to get detailed information about
3152// the error.
3153//
3154// See the AWS API reference guide for Amazon Inspector's
3155// API operation PreviewAgents for usage and error information.
3156//
3157// Returned Error Types:
3158//   * InternalException
3159//   Internal server error.
3160//
3161//   * InvalidInputException
3162//   The request was rejected because an invalid or out-of-range value was supplied
3163//   for an input parameter.
3164//
3165//   * AccessDeniedException
3166//   You do not have required permissions to access the requested resource.
3167//
3168//   * NoSuchEntityException
3169//   The request was rejected because it referenced an entity that does not exist.
3170//   The error code describes the entity.
3171//
3172//   * InvalidCrossAccountRoleException
3173//   Amazon Inspector cannot assume the cross-account role that it needs to list
3174//   your EC2 instances during the assessment run.
3175//
3176// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/PreviewAgents
3177func (c *Inspector) PreviewAgents(input *PreviewAgentsInput) (*PreviewAgentsOutput, error) {
3178	req, out := c.PreviewAgentsRequest(input)
3179	return out, req.Send()
3180}
3181
3182// PreviewAgentsWithContext is the same as PreviewAgents with the addition of
3183// the ability to pass a context and additional request options.
3184//
3185// See PreviewAgents for details on how to use this API operation.
3186//
3187// The context must be non-nil and will be used for request cancellation. If
3188// the context is nil a panic will occur. In the future the SDK may create
3189// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3190// for more information on using Contexts.
3191func (c *Inspector) PreviewAgentsWithContext(ctx aws.Context, input *PreviewAgentsInput, opts ...request.Option) (*PreviewAgentsOutput, error) {
3192	req, out := c.PreviewAgentsRequest(input)
3193	req.SetContext(ctx)
3194	req.ApplyOptions(opts...)
3195	return out, req.Send()
3196}
3197
3198// PreviewAgentsPages iterates over the pages of a PreviewAgents operation,
3199// calling the "fn" function with the response data for each page. To stop
3200// iterating, return false from the fn function.
3201//
3202// See PreviewAgents method for more information on how to use this operation.
3203//
3204// Note: This operation can generate multiple requests to a service.
3205//
3206//    // Example iterating over at most 3 pages of a PreviewAgents operation.
3207//    pageNum := 0
3208//    err := client.PreviewAgentsPages(params,
3209//        func(page *inspector.PreviewAgentsOutput, lastPage bool) bool {
3210//            pageNum++
3211//            fmt.Println(page)
3212//            return pageNum <= 3
3213//        })
3214//
3215func (c *Inspector) PreviewAgentsPages(input *PreviewAgentsInput, fn func(*PreviewAgentsOutput, bool) bool) error {
3216	return c.PreviewAgentsPagesWithContext(aws.BackgroundContext(), input, fn)
3217}
3218
3219// PreviewAgentsPagesWithContext same as PreviewAgentsPages except
3220// it takes a Context and allows setting request options on the pages.
3221//
3222// The context must be non-nil and will be used for request cancellation. If
3223// the context is nil a panic will occur. In the future the SDK may create
3224// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3225// for more information on using Contexts.
3226func (c *Inspector) PreviewAgentsPagesWithContext(ctx aws.Context, input *PreviewAgentsInput, fn func(*PreviewAgentsOutput, bool) bool, opts ...request.Option) error {
3227	p := request.Pagination{
3228		NewRequest: func() (*request.Request, error) {
3229			var inCpy *PreviewAgentsInput
3230			if input != nil {
3231				tmp := *input
3232				inCpy = &tmp
3233			}
3234			req, _ := c.PreviewAgentsRequest(inCpy)
3235			req.SetContext(ctx)
3236			req.ApplyOptions(opts...)
3237			return req, nil
3238		},
3239	}
3240
3241	for p.Next() {
3242		if !fn(p.Page().(*PreviewAgentsOutput), !p.HasNextPage()) {
3243			break
3244		}
3245	}
3246
3247	return p.Err()
3248}
3249
3250const opRegisterCrossAccountAccessRole = "RegisterCrossAccountAccessRole"
3251
3252// RegisterCrossAccountAccessRoleRequest generates a "aws/request.Request" representing the
3253// client's request for the RegisterCrossAccountAccessRole operation. The "output" return
3254// value will be populated with the request's response once the request completes
3255// successfully.
3256//
3257// Use "Send" method on the returned Request to send the API call to the service.
3258// the "output" return value is not valid until after Send returns without error.
3259//
3260// See RegisterCrossAccountAccessRole for more information on using the RegisterCrossAccountAccessRole
3261// API call, and error handling.
3262//
3263// This method is useful when you want to inject custom logic or configuration
3264// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3265//
3266//
3267//    // Example sending a request using the RegisterCrossAccountAccessRoleRequest method.
3268//    req, resp := client.RegisterCrossAccountAccessRoleRequest(params)
3269//
3270//    err := req.Send()
3271//    if err == nil { // resp is now filled
3272//        fmt.Println(resp)
3273//    }
3274//
3275// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/RegisterCrossAccountAccessRole
3276func (c *Inspector) RegisterCrossAccountAccessRoleRequest(input *RegisterCrossAccountAccessRoleInput) (req *request.Request, output *RegisterCrossAccountAccessRoleOutput) {
3277	op := &request.Operation{
3278		Name:       opRegisterCrossAccountAccessRole,
3279		HTTPMethod: "POST",
3280		HTTPPath:   "/",
3281	}
3282
3283	if input == nil {
3284		input = &RegisterCrossAccountAccessRoleInput{}
3285	}
3286
3287	output = &RegisterCrossAccountAccessRoleOutput{}
3288	req = c.newRequest(op, input, output)
3289	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3290	return
3291}
3292
3293// RegisterCrossAccountAccessRole API operation for Amazon Inspector.
3294//
3295// Registers the IAM role that grants Amazon Inspector access to AWS Services
3296// needed to perform security assessments.
3297//
3298// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3299// with awserr.Error's Code and Message methods to get detailed information about
3300// the error.
3301//
3302// See the AWS API reference guide for Amazon Inspector's
3303// API operation RegisterCrossAccountAccessRole for usage and error information.
3304//
3305// Returned Error Types:
3306//   * InternalException
3307//   Internal server error.
3308//
3309//   * InvalidInputException
3310//   The request was rejected because an invalid or out-of-range value was supplied
3311//   for an input parameter.
3312//
3313//   * AccessDeniedException
3314//   You do not have required permissions to access the requested resource.
3315//
3316//   * InvalidCrossAccountRoleException
3317//   Amazon Inspector cannot assume the cross-account role that it needs to list
3318//   your EC2 instances during the assessment run.
3319//
3320//   * ServiceTemporarilyUnavailableException
3321//   The serice is temporary unavailable.
3322//
3323// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/RegisterCrossAccountAccessRole
3324func (c *Inspector) RegisterCrossAccountAccessRole(input *RegisterCrossAccountAccessRoleInput) (*RegisterCrossAccountAccessRoleOutput, error) {
3325	req, out := c.RegisterCrossAccountAccessRoleRequest(input)
3326	return out, req.Send()
3327}
3328
3329// RegisterCrossAccountAccessRoleWithContext is the same as RegisterCrossAccountAccessRole with the addition of
3330// the ability to pass a context and additional request options.
3331//
3332// See RegisterCrossAccountAccessRole for details on how to use this API operation.
3333//
3334// The context must be non-nil and will be used for request cancellation. If
3335// the context is nil a panic will occur. In the future the SDK may create
3336// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3337// for more information on using Contexts.
3338func (c *Inspector) RegisterCrossAccountAccessRoleWithContext(ctx aws.Context, input *RegisterCrossAccountAccessRoleInput, opts ...request.Option) (*RegisterCrossAccountAccessRoleOutput, error) {
3339	req, out := c.RegisterCrossAccountAccessRoleRequest(input)
3340	req.SetContext(ctx)
3341	req.ApplyOptions(opts...)
3342	return out, req.Send()
3343}
3344
3345const opRemoveAttributesFromFindings = "RemoveAttributesFromFindings"
3346
3347// RemoveAttributesFromFindingsRequest generates a "aws/request.Request" representing the
3348// client's request for the RemoveAttributesFromFindings operation. The "output" return
3349// value will be populated with the request's response once the request completes
3350// successfully.
3351//
3352// Use "Send" method on the returned Request to send the API call to the service.
3353// the "output" return value is not valid until after Send returns without error.
3354//
3355// See RemoveAttributesFromFindings for more information on using the RemoveAttributesFromFindings
3356// API call, and error handling.
3357//
3358// This method is useful when you want to inject custom logic or configuration
3359// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3360//
3361//
3362//    // Example sending a request using the RemoveAttributesFromFindingsRequest method.
3363//    req, resp := client.RemoveAttributesFromFindingsRequest(params)
3364//
3365//    err := req.Send()
3366//    if err == nil { // resp is now filled
3367//        fmt.Println(resp)
3368//    }
3369//
3370// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/RemoveAttributesFromFindings
3371func (c *Inspector) RemoveAttributesFromFindingsRequest(input *RemoveAttributesFromFindingsInput) (req *request.Request, output *RemoveAttributesFromFindingsOutput) {
3372	op := &request.Operation{
3373		Name:       opRemoveAttributesFromFindings,
3374		HTTPMethod: "POST",
3375		HTTPPath:   "/",
3376	}
3377
3378	if input == nil {
3379		input = &RemoveAttributesFromFindingsInput{}
3380	}
3381
3382	output = &RemoveAttributesFromFindingsOutput{}
3383	req = c.newRequest(op, input, output)
3384	return
3385}
3386
3387// RemoveAttributesFromFindings API operation for Amazon Inspector.
3388//
3389// Removes entire attributes (key and value pairs) from the findings that are
3390// specified by the ARNs of the findings where an attribute with the specified
3391// key exists.
3392//
3393// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3394// with awserr.Error's Code and Message methods to get detailed information about
3395// the error.
3396//
3397// See the AWS API reference guide for Amazon Inspector's
3398// API operation RemoveAttributesFromFindings for usage and error information.
3399//
3400// Returned Error Types:
3401//   * InternalException
3402//   Internal server error.
3403//
3404//   * InvalidInputException
3405//   The request was rejected because an invalid or out-of-range value was supplied
3406//   for an input parameter.
3407//
3408//   * AccessDeniedException
3409//   You do not have required permissions to access the requested resource.
3410//
3411//   * NoSuchEntityException
3412//   The request was rejected because it referenced an entity that does not exist.
3413//   The error code describes the entity.
3414//
3415//   * ServiceTemporarilyUnavailableException
3416//   The serice is temporary unavailable.
3417//
3418// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/RemoveAttributesFromFindings
3419func (c *Inspector) RemoveAttributesFromFindings(input *RemoveAttributesFromFindingsInput) (*RemoveAttributesFromFindingsOutput, error) {
3420	req, out := c.RemoveAttributesFromFindingsRequest(input)
3421	return out, req.Send()
3422}
3423
3424// RemoveAttributesFromFindingsWithContext is the same as RemoveAttributesFromFindings with the addition of
3425// the ability to pass a context and additional request options.
3426//
3427// See RemoveAttributesFromFindings for details on how to use this API operation.
3428//
3429// The context must be non-nil and will be used for request cancellation. If
3430// the context is nil a panic will occur. In the future the SDK may create
3431// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3432// for more information on using Contexts.
3433func (c *Inspector) RemoveAttributesFromFindingsWithContext(ctx aws.Context, input *RemoveAttributesFromFindingsInput, opts ...request.Option) (*RemoveAttributesFromFindingsOutput, error) {
3434	req, out := c.RemoveAttributesFromFindingsRequest(input)
3435	req.SetContext(ctx)
3436	req.ApplyOptions(opts...)
3437	return out, req.Send()
3438}
3439
3440const opSetTagsForResource = "SetTagsForResource"
3441
3442// SetTagsForResourceRequest generates a "aws/request.Request" representing the
3443// client's request for the SetTagsForResource operation. The "output" return
3444// value will be populated with the request's response once the request completes
3445// successfully.
3446//
3447// Use "Send" method on the returned Request to send the API call to the service.
3448// the "output" return value is not valid until after Send returns without error.
3449//
3450// See SetTagsForResource for more information on using the SetTagsForResource
3451// API call, and error handling.
3452//
3453// This method is useful when you want to inject custom logic or configuration
3454// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3455//
3456//
3457//    // Example sending a request using the SetTagsForResourceRequest method.
3458//    req, resp := client.SetTagsForResourceRequest(params)
3459//
3460//    err := req.Send()
3461//    if err == nil { // resp is now filled
3462//        fmt.Println(resp)
3463//    }
3464//
3465// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/SetTagsForResource
3466func (c *Inspector) SetTagsForResourceRequest(input *SetTagsForResourceInput) (req *request.Request, output *SetTagsForResourceOutput) {
3467	op := &request.Operation{
3468		Name:       opSetTagsForResource,
3469		HTTPMethod: "POST",
3470		HTTPPath:   "/",
3471	}
3472
3473	if input == nil {
3474		input = &SetTagsForResourceInput{}
3475	}
3476
3477	output = &SetTagsForResourceOutput{}
3478	req = c.newRequest(op, input, output)
3479	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3480	return
3481}
3482
3483// SetTagsForResource API operation for Amazon Inspector.
3484//
3485// Sets tags (key and value pairs) to the assessment template that is specified
3486// by the ARN of the assessment template.
3487//
3488// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3489// with awserr.Error's Code and Message methods to get detailed information about
3490// the error.
3491//
3492// See the AWS API reference guide for Amazon Inspector's
3493// API operation SetTagsForResource for usage and error information.
3494//
3495// Returned Error Types:
3496//   * InternalException
3497//   Internal server error.
3498//
3499//   * InvalidInputException
3500//   The request was rejected because an invalid or out-of-range value was supplied
3501//   for an input parameter.
3502//
3503//   * AccessDeniedException
3504//   You do not have required permissions to access the requested resource.
3505//
3506//   * NoSuchEntityException
3507//   The request was rejected because it referenced an entity that does not exist.
3508//   The error code describes the entity.
3509//
3510//   * ServiceTemporarilyUnavailableException
3511//   The serice is temporary unavailable.
3512//
3513// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/SetTagsForResource
3514func (c *Inspector) SetTagsForResource(input *SetTagsForResourceInput) (*SetTagsForResourceOutput, error) {
3515	req, out := c.SetTagsForResourceRequest(input)
3516	return out, req.Send()
3517}
3518
3519// SetTagsForResourceWithContext is the same as SetTagsForResource with the addition of
3520// the ability to pass a context and additional request options.
3521//
3522// See SetTagsForResource for details on how to use this API operation.
3523//
3524// The context must be non-nil and will be used for request cancellation. If
3525// the context is nil a panic will occur. In the future the SDK may create
3526// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3527// for more information on using Contexts.
3528func (c *Inspector) SetTagsForResourceWithContext(ctx aws.Context, input *SetTagsForResourceInput, opts ...request.Option) (*SetTagsForResourceOutput, error) {
3529	req, out := c.SetTagsForResourceRequest(input)
3530	req.SetContext(ctx)
3531	req.ApplyOptions(opts...)
3532	return out, req.Send()
3533}
3534
3535const opStartAssessmentRun = "StartAssessmentRun"
3536
3537// StartAssessmentRunRequest generates a "aws/request.Request" representing the
3538// client's request for the StartAssessmentRun operation. The "output" return
3539// value will be populated with the request's response once the request completes
3540// successfully.
3541//
3542// Use "Send" method on the returned Request to send the API call to the service.
3543// the "output" return value is not valid until after Send returns without error.
3544//
3545// See StartAssessmentRun for more information on using the StartAssessmentRun
3546// API call, and error handling.
3547//
3548// This method is useful when you want to inject custom logic or configuration
3549// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3550//
3551//
3552//    // Example sending a request using the StartAssessmentRunRequest method.
3553//    req, resp := client.StartAssessmentRunRequest(params)
3554//
3555//    err := req.Send()
3556//    if err == nil { // resp is now filled
3557//        fmt.Println(resp)
3558//    }
3559//
3560// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/StartAssessmentRun
3561func (c *Inspector) StartAssessmentRunRequest(input *StartAssessmentRunInput) (req *request.Request, output *StartAssessmentRunOutput) {
3562	op := &request.Operation{
3563		Name:       opStartAssessmentRun,
3564		HTTPMethod: "POST",
3565		HTTPPath:   "/",
3566	}
3567
3568	if input == nil {
3569		input = &StartAssessmentRunInput{}
3570	}
3571
3572	output = &StartAssessmentRunOutput{}
3573	req = c.newRequest(op, input, output)
3574	return
3575}
3576
3577// StartAssessmentRun API operation for Amazon Inspector.
3578//
3579// Starts the assessment run specified by the ARN of the assessment template.
3580// For this API to function properly, you must not exceed the limit of running
3581// up to 500 concurrent agents per AWS account.
3582//
3583// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3584// with awserr.Error's Code and Message methods to get detailed information about
3585// the error.
3586//
3587// See the AWS API reference guide for Amazon Inspector's
3588// API operation StartAssessmentRun for usage and error information.
3589//
3590// Returned Error Types:
3591//   * InternalException
3592//   Internal server error.
3593//
3594//   * InvalidInputException
3595//   The request was rejected because an invalid or out-of-range value was supplied
3596//   for an input parameter.
3597//
3598//   * LimitExceededException
3599//   The request was rejected because it attempted to create resources beyond
3600//   the current AWS account limits. The error code describes the limit exceeded.
3601//
3602//   * AccessDeniedException
3603//   You do not have required permissions to access the requested resource.
3604//
3605//   * NoSuchEntityException
3606//   The request was rejected because it referenced an entity that does not exist.
3607//   The error code describes the entity.
3608//
3609//   * InvalidCrossAccountRoleException
3610//   Amazon Inspector cannot assume the cross-account role that it needs to list
3611//   your EC2 instances during the assessment run.
3612//
3613//   * AgentsAlreadyRunningAssessmentException
3614//   You started an assessment run, but one of the instances is already participating
3615//   in another assessment run.
3616//
3617//   * ServiceTemporarilyUnavailableException
3618//   The serice is temporary unavailable.
3619//
3620// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/StartAssessmentRun
3621func (c *Inspector) StartAssessmentRun(input *StartAssessmentRunInput) (*StartAssessmentRunOutput, error) {
3622	req, out := c.StartAssessmentRunRequest(input)
3623	return out, req.Send()
3624}
3625
3626// StartAssessmentRunWithContext is the same as StartAssessmentRun with the addition of
3627// the ability to pass a context and additional request options.
3628//
3629// See StartAssessmentRun for details on how to use this API operation.
3630//
3631// The context must be non-nil and will be used for request cancellation. If
3632// the context is nil a panic will occur. In the future the SDK may create
3633// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3634// for more information on using Contexts.
3635func (c *Inspector) StartAssessmentRunWithContext(ctx aws.Context, input *StartAssessmentRunInput, opts ...request.Option) (*StartAssessmentRunOutput, error) {
3636	req, out := c.StartAssessmentRunRequest(input)
3637	req.SetContext(ctx)
3638	req.ApplyOptions(opts...)
3639	return out, req.Send()
3640}
3641
3642const opStopAssessmentRun = "StopAssessmentRun"
3643
3644// StopAssessmentRunRequest generates a "aws/request.Request" representing the
3645// client's request for the StopAssessmentRun operation. The "output" return
3646// value will be populated with the request's response once the request completes
3647// successfully.
3648//
3649// Use "Send" method on the returned Request to send the API call to the service.
3650// the "output" return value is not valid until after Send returns without error.
3651//
3652// See StopAssessmentRun for more information on using the StopAssessmentRun
3653// API call, and error handling.
3654//
3655// This method is useful when you want to inject custom logic or configuration
3656// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3657//
3658//
3659//    // Example sending a request using the StopAssessmentRunRequest method.
3660//    req, resp := client.StopAssessmentRunRequest(params)
3661//
3662//    err := req.Send()
3663//    if err == nil { // resp is now filled
3664//        fmt.Println(resp)
3665//    }
3666//
3667// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/StopAssessmentRun
3668func (c *Inspector) StopAssessmentRunRequest(input *StopAssessmentRunInput) (req *request.Request, output *StopAssessmentRunOutput) {
3669	op := &request.Operation{
3670		Name:       opStopAssessmentRun,
3671		HTTPMethod: "POST",
3672		HTTPPath:   "/",
3673	}
3674
3675	if input == nil {
3676		input = &StopAssessmentRunInput{}
3677	}
3678
3679	output = &StopAssessmentRunOutput{}
3680	req = c.newRequest(op, input, output)
3681	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3682	return
3683}
3684
3685// StopAssessmentRun API operation for Amazon Inspector.
3686//
3687// Stops the assessment run that is specified by the ARN of the assessment run.
3688//
3689// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3690// with awserr.Error's Code and Message methods to get detailed information about
3691// the error.
3692//
3693// See the AWS API reference guide for Amazon Inspector's
3694// API operation StopAssessmentRun for usage and error information.
3695//
3696// Returned Error Types:
3697//   * InternalException
3698//   Internal server error.
3699//
3700//   * InvalidInputException
3701//   The request was rejected because an invalid or out-of-range value was supplied
3702//   for an input parameter.
3703//
3704//   * AccessDeniedException
3705//   You do not have required permissions to access the requested resource.
3706//
3707//   * NoSuchEntityException
3708//   The request was rejected because it referenced an entity that does not exist.
3709//   The error code describes the entity.
3710//
3711//   * ServiceTemporarilyUnavailableException
3712//   The serice is temporary unavailable.
3713//
3714// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/StopAssessmentRun
3715func (c *Inspector) StopAssessmentRun(input *StopAssessmentRunInput) (*StopAssessmentRunOutput, error) {
3716	req, out := c.StopAssessmentRunRequest(input)
3717	return out, req.Send()
3718}
3719
3720// StopAssessmentRunWithContext is the same as StopAssessmentRun with the addition of
3721// the ability to pass a context and additional request options.
3722//
3723// See StopAssessmentRun for details on how to use this API operation.
3724//
3725// The context must be non-nil and will be used for request cancellation. If
3726// the context is nil a panic will occur. In the future the SDK may create
3727// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3728// for more information on using Contexts.
3729func (c *Inspector) StopAssessmentRunWithContext(ctx aws.Context, input *StopAssessmentRunInput, opts ...request.Option) (*StopAssessmentRunOutput, error) {
3730	req, out := c.StopAssessmentRunRequest(input)
3731	req.SetContext(ctx)
3732	req.ApplyOptions(opts...)
3733	return out, req.Send()
3734}
3735
3736const opSubscribeToEvent = "SubscribeToEvent"
3737
3738// SubscribeToEventRequest generates a "aws/request.Request" representing the
3739// client's request for the SubscribeToEvent operation. The "output" return
3740// value will be populated with the request's response once the request completes
3741// successfully.
3742//
3743// Use "Send" method on the returned Request to send the API call to the service.
3744// the "output" return value is not valid until after Send returns without error.
3745//
3746// See SubscribeToEvent for more information on using the SubscribeToEvent
3747// API call, and error handling.
3748//
3749// This method is useful when you want to inject custom logic or configuration
3750// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3751//
3752//
3753//    // Example sending a request using the SubscribeToEventRequest method.
3754//    req, resp := client.SubscribeToEventRequest(params)
3755//
3756//    err := req.Send()
3757//    if err == nil { // resp is now filled
3758//        fmt.Println(resp)
3759//    }
3760//
3761// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/SubscribeToEvent
3762func (c *Inspector) SubscribeToEventRequest(input *SubscribeToEventInput) (req *request.Request, output *SubscribeToEventOutput) {
3763	op := &request.Operation{
3764		Name:       opSubscribeToEvent,
3765		HTTPMethod: "POST",
3766		HTTPPath:   "/",
3767	}
3768
3769	if input == nil {
3770		input = &SubscribeToEventInput{}
3771	}
3772
3773	output = &SubscribeToEventOutput{}
3774	req = c.newRequest(op, input, output)
3775	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3776	return
3777}
3778
3779// SubscribeToEvent API operation for Amazon Inspector.
3780//
3781// Enables the process of sending Amazon Simple Notification Service (SNS) notifications
3782// about a specified event to a specified SNS topic.
3783//
3784// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3785// with awserr.Error's Code and Message methods to get detailed information about
3786// the error.
3787//
3788// See the AWS API reference guide for Amazon Inspector's
3789// API operation SubscribeToEvent for usage and error information.
3790//
3791// Returned Error Types:
3792//   * InternalException
3793//   Internal server error.
3794//
3795//   * InvalidInputException
3796//   The request was rejected because an invalid or out-of-range value was supplied
3797//   for an input parameter.
3798//
3799//   * LimitExceededException
3800//   The request was rejected because it attempted to create resources beyond
3801//   the current AWS account limits. The error code describes the limit exceeded.
3802//
3803//   * AccessDeniedException
3804//   You do not have required permissions to access the requested resource.
3805//
3806//   * NoSuchEntityException
3807//   The request was rejected because it referenced an entity that does not exist.
3808//   The error code describes the entity.
3809//
3810//   * ServiceTemporarilyUnavailableException
3811//   The serice is temporary unavailable.
3812//
3813// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/SubscribeToEvent
3814func (c *Inspector) SubscribeToEvent(input *SubscribeToEventInput) (*SubscribeToEventOutput, error) {
3815	req, out := c.SubscribeToEventRequest(input)
3816	return out, req.Send()
3817}
3818
3819// SubscribeToEventWithContext is the same as SubscribeToEvent with the addition of
3820// the ability to pass a context and additional request options.
3821//
3822// See SubscribeToEvent for details on how to use this API operation.
3823//
3824// The context must be non-nil and will be used for request cancellation. If
3825// the context is nil a panic will occur. In the future the SDK may create
3826// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3827// for more information on using Contexts.
3828func (c *Inspector) SubscribeToEventWithContext(ctx aws.Context, input *SubscribeToEventInput, opts ...request.Option) (*SubscribeToEventOutput, error) {
3829	req, out := c.SubscribeToEventRequest(input)
3830	req.SetContext(ctx)
3831	req.ApplyOptions(opts...)
3832	return out, req.Send()
3833}
3834
3835const opUnsubscribeFromEvent = "UnsubscribeFromEvent"
3836
3837// UnsubscribeFromEventRequest generates a "aws/request.Request" representing the
3838// client's request for the UnsubscribeFromEvent operation. The "output" return
3839// value will be populated with the request's response once the request completes
3840// successfully.
3841//
3842// Use "Send" method on the returned Request to send the API call to the service.
3843// the "output" return value is not valid until after Send returns without error.
3844//
3845// See UnsubscribeFromEvent for more information on using the UnsubscribeFromEvent
3846// API call, and error handling.
3847//
3848// This method is useful when you want to inject custom logic or configuration
3849// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3850//
3851//
3852//    // Example sending a request using the UnsubscribeFromEventRequest method.
3853//    req, resp := client.UnsubscribeFromEventRequest(params)
3854//
3855//    err := req.Send()
3856//    if err == nil { // resp is now filled
3857//        fmt.Println(resp)
3858//    }
3859//
3860// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/UnsubscribeFromEvent
3861func (c *Inspector) UnsubscribeFromEventRequest(input *UnsubscribeFromEventInput) (req *request.Request, output *UnsubscribeFromEventOutput) {
3862	op := &request.Operation{
3863		Name:       opUnsubscribeFromEvent,
3864		HTTPMethod: "POST",
3865		HTTPPath:   "/",
3866	}
3867
3868	if input == nil {
3869		input = &UnsubscribeFromEventInput{}
3870	}
3871
3872	output = &UnsubscribeFromEventOutput{}
3873	req = c.newRequest(op, input, output)
3874	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3875	return
3876}
3877
3878// UnsubscribeFromEvent API operation for Amazon Inspector.
3879//
3880// Disables the process of sending Amazon Simple Notification Service (SNS)
3881// notifications about a specified event to a specified SNS topic.
3882//
3883// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3884// with awserr.Error's Code and Message methods to get detailed information about
3885// the error.
3886//
3887// See the AWS API reference guide for Amazon Inspector's
3888// API operation UnsubscribeFromEvent for usage and error information.
3889//
3890// Returned Error Types:
3891//   * InternalException
3892//   Internal server error.
3893//
3894//   * InvalidInputException
3895//   The request was rejected because an invalid or out-of-range value was supplied
3896//   for an input parameter.
3897//
3898//   * AccessDeniedException
3899//   You do not have required permissions to access the requested resource.
3900//
3901//   * NoSuchEntityException
3902//   The request was rejected because it referenced an entity that does not exist.
3903//   The error code describes the entity.
3904//
3905//   * ServiceTemporarilyUnavailableException
3906//   The serice is temporary unavailable.
3907//
3908// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/UnsubscribeFromEvent
3909func (c *Inspector) UnsubscribeFromEvent(input *UnsubscribeFromEventInput) (*UnsubscribeFromEventOutput, error) {
3910	req, out := c.UnsubscribeFromEventRequest(input)
3911	return out, req.Send()
3912}
3913
3914// UnsubscribeFromEventWithContext is the same as UnsubscribeFromEvent with the addition of
3915// the ability to pass a context and additional request options.
3916//
3917// See UnsubscribeFromEvent for details on how to use this API operation.
3918//
3919// The context must be non-nil and will be used for request cancellation. If
3920// the context is nil a panic will occur. In the future the SDK may create
3921// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3922// for more information on using Contexts.
3923func (c *Inspector) UnsubscribeFromEventWithContext(ctx aws.Context, input *UnsubscribeFromEventInput, opts ...request.Option) (*UnsubscribeFromEventOutput, error) {
3924	req, out := c.UnsubscribeFromEventRequest(input)
3925	req.SetContext(ctx)
3926	req.ApplyOptions(opts...)
3927	return out, req.Send()
3928}
3929
3930const opUpdateAssessmentTarget = "UpdateAssessmentTarget"
3931
3932// UpdateAssessmentTargetRequest generates a "aws/request.Request" representing the
3933// client's request for the UpdateAssessmentTarget operation. The "output" return
3934// value will be populated with the request's response once the request completes
3935// successfully.
3936//
3937// Use "Send" method on the returned Request to send the API call to the service.
3938// the "output" return value is not valid until after Send returns without error.
3939//
3940// See UpdateAssessmentTarget for more information on using the UpdateAssessmentTarget
3941// API call, and error handling.
3942//
3943// This method is useful when you want to inject custom logic or configuration
3944// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3945//
3946//
3947//    // Example sending a request using the UpdateAssessmentTargetRequest method.
3948//    req, resp := client.UpdateAssessmentTargetRequest(params)
3949//
3950//    err := req.Send()
3951//    if err == nil { // resp is now filled
3952//        fmt.Println(resp)
3953//    }
3954//
3955// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/UpdateAssessmentTarget
3956func (c *Inspector) UpdateAssessmentTargetRequest(input *UpdateAssessmentTargetInput) (req *request.Request, output *UpdateAssessmentTargetOutput) {
3957	op := &request.Operation{
3958		Name:       opUpdateAssessmentTarget,
3959		HTTPMethod: "POST",
3960		HTTPPath:   "/",
3961	}
3962
3963	if input == nil {
3964		input = &UpdateAssessmentTargetInput{}
3965	}
3966
3967	output = &UpdateAssessmentTargetOutput{}
3968	req = c.newRequest(op, input, output)
3969	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3970	return
3971}
3972
3973// UpdateAssessmentTarget API operation for Amazon Inspector.
3974//
3975// Updates the assessment target that is specified by the ARN of the assessment
3976// target.
3977//
3978// If resourceGroupArn is not specified, all EC2 instances in the current AWS
3979// account and region are included in the assessment target.
3980//
3981// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3982// with awserr.Error's Code and Message methods to get detailed information about
3983// the error.
3984//
3985// See the AWS API reference guide for Amazon Inspector's
3986// API operation UpdateAssessmentTarget for usage and error information.
3987//
3988// Returned Error Types:
3989//   * InternalException
3990//   Internal server error.
3991//
3992//   * InvalidInputException
3993//   The request was rejected because an invalid or out-of-range value was supplied
3994//   for an input parameter.
3995//
3996//   * AccessDeniedException
3997//   You do not have required permissions to access the requested resource.
3998//
3999//   * NoSuchEntityException
4000//   The request was rejected because it referenced an entity that does not exist.
4001//   The error code describes the entity.
4002//
4003//   * ServiceTemporarilyUnavailableException
4004//   The serice is temporary unavailable.
4005//
4006// See also, https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/UpdateAssessmentTarget
4007func (c *Inspector) UpdateAssessmentTarget(input *UpdateAssessmentTargetInput) (*UpdateAssessmentTargetOutput, error) {
4008	req, out := c.UpdateAssessmentTargetRequest(input)
4009	return out, req.Send()
4010}
4011
4012// UpdateAssessmentTargetWithContext is the same as UpdateAssessmentTarget with the addition of
4013// the ability to pass a context and additional request options.
4014//
4015// See UpdateAssessmentTarget for details on how to use this API operation.
4016//
4017// The context must be non-nil and will be used for request cancellation. If
4018// the context is nil a panic will occur. In the future the SDK may create
4019// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4020// for more information on using Contexts.
4021func (c *Inspector) UpdateAssessmentTargetWithContext(ctx aws.Context, input *UpdateAssessmentTargetInput, opts ...request.Option) (*UpdateAssessmentTargetOutput, error) {
4022	req, out := c.UpdateAssessmentTargetRequest(input)
4023	req.SetContext(ctx)
4024	req.ApplyOptions(opts...)
4025	return out, req.Send()
4026}
4027
4028// You do not have required permissions to access the requested resource.
4029type AccessDeniedException struct {
4030	_            struct{} `type:"structure"`
4031	respMetadata protocol.ResponseMetadata
4032
4033	// You can immediately retry your request.
4034	//
4035	// CanRetry is a required field
4036	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
4037
4038	// Code that indicates the type of error that is generated.
4039	//
4040	// ErrorCode is a required field
4041	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"AccessDeniedErrorCode"`
4042
4043	// Details of the exception error.
4044	Message_ *string `locationName:"message" type:"string"`
4045}
4046
4047// String returns the string representation
4048func (s AccessDeniedException) String() string {
4049	return awsutil.Prettify(s)
4050}
4051
4052// GoString returns the string representation
4053func (s AccessDeniedException) GoString() string {
4054	return s.String()
4055}
4056
4057func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
4058	return &AccessDeniedException{
4059		respMetadata: v,
4060	}
4061}
4062
4063// Code returns the exception type name.
4064func (s AccessDeniedException) Code() string {
4065	return "AccessDeniedException"
4066}
4067
4068// Message returns the exception's message.
4069func (s AccessDeniedException) Message() string {
4070	if s.Message_ != nil {
4071		return *s.Message_
4072	}
4073	return ""
4074}
4075
4076// OrigErr always returns nil, satisfies awserr.Error interface.
4077func (s AccessDeniedException) OrigErr() error {
4078	return nil
4079}
4080
4081func (s AccessDeniedException) Error() string {
4082	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
4083}
4084
4085// Status code returns the HTTP status code for the request's response error.
4086func (s AccessDeniedException) StatusCode() int {
4087	return s.respMetadata.StatusCode
4088}
4089
4090// RequestID returns the service's response RequestID for request.
4091func (s AccessDeniedException) RequestID() string {
4092	return s.respMetadata.RequestID
4093}
4094
4095type AddAttributesToFindingsInput struct {
4096	_ struct{} `type:"structure"`
4097
4098	// The array of attributes that you want to assign to specified findings.
4099	//
4100	// Attributes is a required field
4101	Attributes []*Attribute `locationName:"attributes" type:"list" required:"true"`
4102
4103	// The ARNs that specify the findings that you want to assign attributes to.
4104	//
4105	// FindingArns is a required field
4106	FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"`
4107}
4108
4109// String returns the string representation
4110func (s AddAttributesToFindingsInput) String() string {
4111	return awsutil.Prettify(s)
4112}
4113
4114// GoString returns the string representation
4115func (s AddAttributesToFindingsInput) GoString() string {
4116	return s.String()
4117}
4118
4119// Validate inspects the fields of the type to determine if they are valid.
4120func (s *AddAttributesToFindingsInput) Validate() error {
4121	invalidParams := request.ErrInvalidParams{Context: "AddAttributesToFindingsInput"}
4122	if s.Attributes == nil {
4123		invalidParams.Add(request.NewErrParamRequired("Attributes"))
4124	}
4125	if s.FindingArns == nil {
4126		invalidParams.Add(request.NewErrParamRequired("FindingArns"))
4127	}
4128	if s.FindingArns != nil && len(s.FindingArns) < 1 {
4129		invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1))
4130	}
4131	if s.Attributes != nil {
4132		for i, v := range s.Attributes {
4133			if v == nil {
4134				continue
4135			}
4136			if err := v.Validate(); err != nil {
4137				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams))
4138			}
4139		}
4140	}
4141
4142	if invalidParams.Len() > 0 {
4143		return invalidParams
4144	}
4145	return nil
4146}
4147
4148// SetAttributes sets the Attributes field's value.
4149func (s *AddAttributesToFindingsInput) SetAttributes(v []*Attribute) *AddAttributesToFindingsInput {
4150	s.Attributes = v
4151	return s
4152}
4153
4154// SetFindingArns sets the FindingArns field's value.
4155func (s *AddAttributesToFindingsInput) SetFindingArns(v []*string) *AddAttributesToFindingsInput {
4156	s.FindingArns = v
4157	return s
4158}
4159
4160type AddAttributesToFindingsOutput struct {
4161	_ struct{} `type:"structure"`
4162
4163	// Attribute details that cannot be described. An error code is provided for
4164	// each failed item.
4165	//
4166	// FailedItems is a required field
4167	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
4168}
4169
4170// String returns the string representation
4171func (s AddAttributesToFindingsOutput) String() string {
4172	return awsutil.Prettify(s)
4173}
4174
4175// GoString returns the string representation
4176func (s AddAttributesToFindingsOutput) GoString() string {
4177	return s.String()
4178}
4179
4180// SetFailedItems sets the FailedItems field's value.
4181func (s *AddAttributesToFindingsOutput) SetFailedItems(v map[string]*FailedItemDetails) *AddAttributesToFindingsOutput {
4182	s.FailedItems = v
4183	return s
4184}
4185
4186// Used in the exception error that is thrown if you start an assessment run
4187// for an assessment target that includes an EC2 instance that is already participating
4188// in another started assessment run.
4189type AgentAlreadyRunningAssessment struct {
4190	_ struct{} `type:"structure"`
4191
4192	// ID of the agent that is running on an EC2 instance that is already participating
4193	// in another started assessment run.
4194	//
4195	// AgentId is a required field
4196	AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"`
4197
4198	// The ARN of the assessment run that has already been started.
4199	//
4200	// AssessmentRunArn is a required field
4201	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
4202}
4203
4204// String returns the string representation
4205func (s AgentAlreadyRunningAssessment) String() string {
4206	return awsutil.Prettify(s)
4207}
4208
4209// GoString returns the string representation
4210func (s AgentAlreadyRunningAssessment) GoString() string {
4211	return s.String()
4212}
4213
4214// SetAgentId sets the AgentId field's value.
4215func (s *AgentAlreadyRunningAssessment) SetAgentId(v string) *AgentAlreadyRunningAssessment {
4216	s.AgentId = &v
4217	return s
4218}
4219
4220// SetAssessmentRunArn sets the AssessmentRunArn field's value.
4221func (s *AgentAlreadyRunningAssessment) SetAssessmentRunArn(v string) *AgentAlreadyRunningAssessment {
4222	s.AssessmentRunArn = &v
4223	return s
4224}
4225
4226// Contains information about an Amazon Inspector agent. This data type is used
4227// as a request parameter in the ListAssessmentRunAgents action.
4228type AgentFilter struct {
4229	_ struct{} `type:"structure"`
4230
4231	// The detailed health state of the agent. Values can be set to IDLE, RUNNING,
4232	// SHUTDOWN, UNHEALTHY, THROTTLED, and UNKNOWN.
4233	//
4234	// AgentHealthCodes is a required field
4235	AgentHealthCodes []*string `locationName:"agentHealthCodes" type:"list" required:"true"`
4236
4237	// The current health state of the agent. Values can be set to HEALTHY or UNHEALTHY.
4238	//
4239	// AgentHealths is a required field
4240	AgentHealths []*string `locationName:"agentHealths" type:"list" required:"true"`
4241}
4242
4243// String returns the string representation
4244func (s AgentFilter) String() string {
4245	return awsutil.Prettify(s)
4246}
4247
4248// GoString returns the string representation
4249func (s AgentFilter) GoString() string {
4250	return s.String()
4251}
4252
4253// Validate inspects the fields of the type to determine if they are valid.
4254func (s *AgentFilter) Validate() error {
4255	invalidParams := request.ErrInvalidParams{Context: "AgentFilter"}
4256	if s.AgentHealthCodes == nil {
4257		invalidParams.Add(request.NewErrParamRequired("AgentHealthCodes"))
4258	}
4259	if s.AgentHealths == nil {
4260		invalidParams.Add(request.NewErrParamRequired("AgentHealths"))
4261	}
4262
4263	if invalidParams.Len() > 0 {
4264		return invalidParams
4265	}
4266	return nil
4267}
4268
4269// SetAgentHealthCodes sets the AgentHealthCodes field's value.
4270func (s *AgentFilter) SetAgentHealthCodes(v []*string) *AgentFilter {
4271	s.AgentHealthCodes = v
4272	return s
4273}
4274
4275// SetAgentHealths sets the AgentHealths field's value.
4276func (s *AgentFilter) SetAgentHealths(v []*string) *AgentFilter {
4277	s.AgentHealths = v
4278	return s
4279}
4280
4281// Used as a response element in the PreviewAgents action.
4282type AgentPreview struct {
4283	_ struct{} `type:"structure"`
4284
4285	// The health status of the Amazon Inspector Agent.
4286	AgentHealth *string `locationName:"agentHealth" type:"string" enum:"AgentHealth"`
4287
4288	// The ID of the EC2 instance where the agent is installed.
4289	//
4290	// AgentId is a required field
4291	AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"`
4292
4293	// The version of the Amazon Inspector Agent.
4294	AgentVersion *string `locationName:"agentVersion" min:"1" type:"string"`
4295
4296	// The Auto Scaling group for the EC2 instance where the agent is installed.
4297	AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"`
4298
4299	// The hostname of the EC2 instance on which the Amazon Inspector Agent is installed.
4300	Hostname *string `locationName:"hostname" type:"string"`
4301
4302	// The IP address of the EC2 instance on which the Amazon Inspector Agent is
4303	// installed.
4304	Ipv4Address *string `locationName:"ipv4Address" min:"7" type:"string"`
4305
4306	// The kernel version of the operating system running on the EC2 instance on
4307	// which the Amazon Inspector Agent is installed.
4308	KernelVersion *string `locationName:"kernelVersion" min:"1" type:"string"`
4309
4310	// The operating system running on the EC2 instance on which the Amazon Inspector
4311	// Agent is installed.
4312	OperatingSystem *string `locationName:"operatingSystem" min:"1" type:"string"`
4313}
4314
4315// String returns the string representation
4316func (s AgentPreview) String() string {
4317	return awsutil.Prettify(s)
4318}
4319
4320// GoString returns the string representation
4321func (s AgentPreview) GoString() string {
4322	return s.String()
4323}
4324
4325// SetAgentHealth sets the AgentHealth field's value.
4326func (s *AgentPreview) SetAgentHealth(v string) *AgentPreview {
4327	s.AgentHealth = &v
4328	return s
4329}
4330
4331// SetAgentId sets the AgentId field's value.
4332func (s *AgentPreview) SetAgentId(v string) *AgentPreview {
4333	s.AgentId = &v
4334	return s
4335}
4336
4337// SetAgentVersion sets the AgentVersion field's value.
4338func (s *AgentPreview) SetAgentVersion(v string) *AgentPreview {
4339	s.AgentVersion = &v
4340	return s
4341}
4342
4343// SetAutoScalingGroup sets the AutoScalingGroup field's value.
4344func (s *AgentPreview) SetAutoScalingGroup(v string) *AgentPreview {
4345	s.AutoScalingGroup = &v
4346	return s
4347}
4348
4349// SetHostname sets the Hostname field's value.
4350func (s *AgentPreview) SetHostname(v string) *AgentPreview {
4351	s.Hostname = &v
4352	return s
4353}
4354
4355// SetIpv4Address sets the Ipv4Address field's value.
4356func (s *AgentPreview) SetIpv4Address(v string) *AgentPreview {
4357	s.Ipv4Address = &v
4358	return s
4359}
4360
4361// SetKernelVersion sets the KernelVersion field's value.
4362func (s *AgentPreview) SetKernelVersion(v string) *AgentPreview {
4363	s.KernelVersion = &v
4364	return s
4365}
4366
4367// SetOperatingSystem sets the OperatingSystem field's value.
4368func (s *AgentPreview) SetOperatingSystem(v string) *AgentPreview {
4369	s.OperatingSystem = &v
4370	return s
4371}
4372
4373// You started an assessment run, but one of the instances is already participating
4374// in another assessment run.
4375type AgentsAlreadyRunningAssessmentException struct {
4376	_            struct{} `type:"structure"`
4377	respMetadata protocol.ResponseMetadata
4378
4379	// Agents is a required field
4380	Agents []*AgentAlreadyRunningAssessment `locationName:"agents" min:"1" type:"list" required:"true"`
4381
4382	// AgentsTruncated is a required field
4383	AgentsTruncated *bool `locationName:"agentsTruncated" type:"boolean" required:"true"`
4384
4385	// You can immediately retry your request.
4386	//
4387	// CanRetry is a required field
4388	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
4389
4390	// Details of the exception error.
4391	Message_ *string `locationName:"message" type:"string"`
4392}
4393
4394// String returns the string representation
4395func (s AgentsAlreadyRunningAssessmentException) String() string {
4396	return awsutil.Prettify(s)
4397}
4398
4399// GoString returns the string representation
4400func (s AgentsAlreadyRunningAssessmentException) GoString() string {
4401	return s.String()
4402}
4403
4404func newErrorAgentsAlreadyRunningAssessmentException(v protocol.ResponseMetadata) error {
4405	return &AgentsAlreadyRunningAssessmentException{
4406		respMetadata: v,
4407	}
4408}
4409
4410// Code returns the exception type name.
4411func (s AgentsAlreadyRunningAssessmentException) Code() string {
4412	return "AgentsAlreadyRunningAssessmentException"
4413}
4414
4415// Message returns the exception's message.
4416func (s AgentsAlreadyRunningAssessmentException) Message() string {
4417	if s.Message_ != nil {
4418		return *s.Message_
4419	}
4420	return ""
4421}
4422
4423// OrigErr always returns nil, satisfies awserr.Error interface.
4424func (s AgentsAlreadyRunningAssessmentException) OrigErr() error {
4425	return nil
4426}
4427
4428func (s AgentsAlreadyRunningAssessmentException) Error() string {
4429	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
4430}
4431
4432// Status code returns the HTTP status code for the request's response error.
4433func (s AgentsAlreadyRunningAssessmentException) StatusCode() int {
4434	return s.respMetadata.StatusCode
4435}
4436
4437// RequestID returns the service's response RequestID for request.
4438func (s AgentsAlreadyRunningAssessmentException) RequestID() string {
4439	return s.respMetadata.RequestID
4440}
4441
4442// A snapshot of an Amazon Inspector assessment run that contains the findings
4443// of the assessment run .
4444//
4445// Used as the response element in the DescribeAssessmentRuns action.
4446type AssessmentRun struct {
4447	_ struct{} `type:"structure"`
4448
4449	// The ARN of the assessment run.
4450	//
4451	// Arn is a required field
4452	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
4453
4454	// The ARN of the assessment template that is associated with the assessment
4455	// run.
4456	//
4457	// AssessmentTemplateArn is a required field
4458	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
4459
4460	// The assessment run completion time that corresponds to the rules packages
4461	// evaluation completion time or failure.
4462	CompletedAt *time.Time `locationName:"completedAt" type:"timestamp"`
4463
4464	// The time when StartAssessmentRun was called.
4465	//
4466	// CreatedAt is a required field
4467	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
4468
4469	// A Boolean value (true or false) that specifies whether the process of collecting
4470	// data from the agents is completed.
4471	//
4472	// DataCollected is a required field
4473	DataCollected *bool `locationName:"dataCollected" type:"boolean" required:"true"`
4474
4475	// The duration of the assessment run.
4476	//
4477	// DurationInSeconds is a required field
4478	DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"`
4479
4480	// Provides a total count of generated findings per severity.
4481	//
4482	// FindingCounts is a required field
4483	FindingCounts map[string]*int64 `locationName:"findingCounts" type:"map" required:"true"`
4484
4485	// The auto-generated name for the assessment run.
4486	//
4487	// Name is a required field
4488	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
4489
4490	// A list of notifications for the event subscriptions. A notification about
4491	// a particular generated finding is added to this list only once.
4492	//
4493	// Notifications is a required field
4494	Notifications []*AssessmentRunNotification `locationName:"notifications" type:"list" required:"true"`
4495
4496	// The rules packages selected for the assessment run.
4497	//
4498	// RulesPackageArns is a required field
4499	RulesPackageArns []*string `locationName:"rulesPackageArns" min:"1" type:"list" required:"true"`
4500
4501	// The time when StartAssessmentRun was called.
4502	StartedAt *time.Time `locationName:"startedAt" type:"timestamp"`
4503
4504	// The state of the assessment run.
4505	//
4506	// State is a required field
4507	State *string `locationName:"state" type:"string" required:"true" enum:"AssessmentRunState"`
4508
4509	// The last time when the assessment run's state changed.
4510	//
4511	// StateChangedAt is a required field
4512	StateChangedAt *time.Time `locationName:"stateChangedAt" type:"timestamp" required:"true"`
4513
4514	// A list of the assessment run state changes.
4515	//
4516	// StateChanges is a required field
4517	StateChanges []*AssessmentRunStateChange `locationName:"stateChanges" type:"list" required:"true"`
4518
4519	// The user-defined attributes that are assigned to every generated finding.
4520	//
4521	// UserAttributesForFindings is a required field
4522	UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list" required:"true"`
4523}
4524
4525// String returns the string representation
4526func (s AssessmentRun) String() string {
4527	return awsutil.Prettify(s)
4528}
4529
4530// GoString returns the string representation
4531func (s AssessmentRun) GoString() string {
4532	return s.String()
4533}
4534
4535// SetArn sets the Arn field's value.
4536func (s *AssessmentRun) SetArn(v string) *AssessmentRun {
4537	s.Arn = &v
4538	return s
4539}
4540
4541// SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
4542func (s *AssessmentRun) SetAssessmentTemplateArn(v string) *AssessmentRun {
4543	s.AssessmentTemplateArn = &v
4544	return s
4545}
4546
4547// SetCompletedAt sets the CompletedAt field's value.
4548func (s *AssessmentRun) SetCompletedAt(v time.Time) *AssessmentRun {
4549	s.CompletedAt = &v
4550	return s
4551}
4552
4553// SetCreatedAt sets the CreatedAt field's value.
4554func (s *AssessmentRun) SetCreatedAt(v time.Time) *AssessmentRun {
4555	s.CreatedAt = &v
4556	return s
4557}
4558
4559// SetDataCollected sets the DataCollected field's value.
4560func (s *AssessmentRun) SetDataCollected(v bool) *AssessmentRun {
4561	s.DataCollected = &v
4562	return s
4563}
4564
4565// SetDurationInSeconds sets the DurationInSeconds field's value.
4566func (s *AssessmentRun) SetDurationInSeconds(v int64) *AssessmentRun {
4567	s.DurationInSeconds = &v
4568	return s
4569}
4570
4571// SetFindingCounts sets the FindingCounts field's value.
4572func (s *AssessmentRun) SetFindingCounts(v map[string]*int64) *AssessmentRun {
4573	s.FindingCounts = v
4574	return s
4575}
4576
4577// SetName sets the Name field's value.
4578func (s *AssessmentRun) SetName(v string) *AssessmentRun {
4579	s.Name = &v
4580	return s
4581}
4582
4583// SetNotifications sets the Notifications field's value.
4584func (s *AssessmentRun) SetNotifications(v []*AssessmentRunNotification) *AssessmentRun {
4585	s.Notifications = v
4586	return s
4587}
4588
4589// SetRulesPackageArns sets the RulesPackageArns field's value.
4590func (s *AssessmentRun) SetRulesPackageArns(v []*string) *AssessmentRun {
4591	s.RulesPackageArns = v
4592	return s
4593}
4594
4595// SetStartedAt sets the StartedAt field's value.
4596func (s *AssessmentRun) SetStartedAt(v time.Time) *AssessmentRun {
4597	s.StartedAt = &v
4598	return s
4599}
4600
4601// SetState sets the State field's value.
4602func (s *AssessmentRun) SetState(v string) *AssessmentRun {
4603	s.State = &v
4604	return s
4605}
4606
4607// SetStateChangedAt sets the StateChangedAt field's value.
4608func (s *AssessmentRun) SetStateChangedAt(v time.Time) *AssessmentRun {
4609	s.StateChangedAt = &v
4610	return s
4611}
4612
4613// SetStateChanges sets the StateChanges field's value.
4614func (s *AssessmentRun) SetStateChanges(v []*AssessmentRunStateChange) *AssessmentRun {
4615	s.StateChanges = v
4616	return s
4617}
4618
4619// SetUserAttributesForFindings sets the UserAttributesForFindings field's value.
4620func (s *AssessmentRun) SetUserAttributesForFindings(v []*Attribute) *AssessmentRun {
4621	s.UserAttributesForFindings = v
4622	return s
4623}
4624
4625// Contains information about an Amazon Inspector agent. This data type is used
4626// as a response element in the ListAssessmentRunAgents action.
4627type AssessmentRunAgent struct {
4628	_ struct{} `type:"structure"`
4629
4630	// The current health state of the agent.
4631	//
4632	// AgentHealth is a required field
4633	AgentHealth *string `locationName:"agentHealth" type:"string" required:"true" enum:"AgentHealth"`
4634
4635	// The detailed health state of the agent.
4636	//
4637	// AgentHealthCode is a required field
4638	AgentHealthCode *string `locationName:"agentHealthCode" type:"string" required:"true" enum:"AgentHealthCode"`
4639
4640	// The description for the agent health code.
4641	AgentHealthDetails *string `locationName:"agentHealthDetails" type:"string"`
4642
4643	// The AWS account of the EC2 instance where the agent is installed.
4644	//
4645	// AgentId is a required field
4646	AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"`
4647
4648	// The ARN of the assessment run that is associated with the agent.
4649	//
4650	// AssessmentRunArn is a required field
4651	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
4652
4653	// The Auto Scaling group of the EC2 instance that is specified by the agent
4654	// ID.
4655	AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"`
4656
4657	// The Amazon Inspector application data metrics that are collected by the agent.
4658	//
4659	// TelemetryMetadata is a required field
4660	TelemetryMetadata []*TelemetryMetadata `locationName:"telemetryMetadata" type:"list" required:"true"`
4661}
4662
4663// String returns the string representation
4664func (s AssessmentRunAgent) String() string {
4665	return awsutil.Prettify(s)
4666}
4667
4668// GoString returns the string representation
4669func (s AssessmentRunAgent) GoString() string {
4670	return s.String()
4671}
4672
4673// SetAgentHealth sets the AgentHealth field's value.
4674func (s *AssessmentRunAgent) SetAgentHealth(v string) *AssessmentRunAgent {
4675	s.AgentHealth = &v
4676	return s
4677}
4678
4679// SetAgentHealthCode sets the AgentHealthCode field's value.
4680func (s *AssessmentRunAgent) SetAgentHealthCode(v string) *AssessmentRunAgent {
4681	s.AgentHealthCode = &v
4682	return s
4683}
4684
4685// SetAgentHealthDetails sets the AgentHealthDetails field's value.
4686func (s *AssessmentRunAgent) SetAgentHealthDetails(v string) *AssessmentRunAgent {
4687	s.AgentHealthDetails = &v
4688	return s
4689}
4690
4691// SetAgentId sets the AgentId field's value.
4692func (s *AssessmentRunAgent) SetAgentId(v string) *AssessmentRunAgent {
4693	s.AgentId = &v
4694	return s
4695}
4696
4697// SetAssessmentRunArn sets the AssessmentRunArn field's value.
4698func (s *AssessmentRunAgent) SetAssessmentRunArn(v string) *AssessmentRunAgent {
4699	s.AssessmentRunArn = &v
4700	return s
4701}
4702
4703// SetAutoScalingGroup sets the AutoScalingGroup field's value.
4704func (s *AssessmentRunAgent) SetAutoScalingGroup(v string) *AssessmentRunAgent {
4705	s.AutoScalingGroup = &v
4706	return s
4707}
4708
4709// SetTelemetryMetadata sets the TelemetryMetadata field's value.
4710func (s *AssessmentRunAgent) SetTelemetryMetadata(v []*TelemetryMetadata) *AssessmentRunAgent {
4711	s.TelemetryMetadata = v
4712	return s
4713}
4714
4715// Used as the request parameter in the ListAssessmentRuns action.
4716type AssessmentRunFilter struct {
4717	_ struct{} `type:"structure"`
4718
4719	// For a record to match a filter, the value that is specified for this data
4720	// type property must inclusively match any value between the specified minimum
4721	// and maximum values of the completedAt property of the AssessmentRun data
4722	// type.
4723	CompletionTimeRange *TimestampRange `locationName:"completionTimeRange" type:"structure"`
4724
4725	// For a record to match a filter, the value that is specified for this data
4726	// type property must inclusively match any value between the specified minimum
4727	// and maximum values of the durationInSeconds property of the AssessmentRun
4728	// data type.
4729	DurationRange *DurationRange `locationName:"durationRange" type:"structure"`
4730
4731	// For a record to match a filter, an explicit value or a string containing
4732	// a wildcard that is specified for this data type property must match the value
4733	// of the assessmentRunName property of the AssessmentRun data type.
4734	NamePattern *string `locationName:"namePattern" min:"1" type:"string"`
4735
4736	// For a record to match a filter, the value that is specified for this data
4737	// type property must be contained in the list of values of the rulesPackages
4738	// property of the AssessmentRun data type.
4739	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"`
4740
4741	// For a record to match a filter, the value that is specified for this data
4742	// type property must inclusively match any value between the specified minimum
4743	// and maximum values of the startTime property of the AssessmentRun data type.
4744	StartTimeRange *TimestampRange `locationName:"startTimeRange" type:"structure"`
4745
4746	// For a record to match a filter, the value that is specified for this data
4747	// type property must match the stateChangedAt property of the AssessmentRun
4748	// data type.
4749	StateChangeTimeRange *TimestampRange `locationName:"stateChangeTimeRange" type:"structure"`
4750
4751	// For a record to match a filter, one of the values specified for this data
4752	// type property must be the exact match of the value of the assessmentRunState
4753	// property of the AssessmentRun data type.
4754	States []*string `locationName:"states" type:"list"`
4755}
4756
4757// String returns the string representation
4758func (s AssessmentRunFilter) String() string {
4759	return awsutil.Prettify(s)
4760}
4761
4762// GoString returns the string representation
4763func (s AssessmentRunFilter) GoString() string {
4764	return s.String()
4765}
4766
4767// Validate inspects the fields of the type to determine if they are valid.
4768func (s *AssessmentRunFilter) Validate() error {
4769	invalidParams := request.ErrInvalidParams{Context: "AssessmentRunFilter"}
4770	if s.NamePattern != nil && len(*s.NamePattern) < 1 {
4771		invalidParams.Add(request.NewErrParamMinLen("NamePattern", 1))
4772	}
4773	if s.DurationRange != nil {
4774		if err := s.DurationRange.Validate(); err != nil {
4775			invalidParams.AddNested("DurationRange", err.(request.ErrInvalidParams))
4776		}
4777	}
4778
4779	if invalidParams.Len() > 0 {
4780		return invalidParams
4781	}
4782	return nil
4783}
4784
4785// SetCompletionTimeRange sets the CompletionTimeRange field's value.
4786func (s *AssessmentRunFilter) SetCompletionTimeRange(v *TimestampRange) *AssessmentRunFilter {
4787	s.CompletionTimeRange = v
4788	return s
4789}
4790
4791// SetDurationRange sets the DurationRange field's value.
4792func (s *AssessmentRunFilter) SetDurationRange(v *DurationRange) *AssessmentRunFilter {
4793	s.DurationRange = v
4794	return s
4795}
4796
4797// SetNamePattern sets the NamePattern field's value.
4798func (s *AssessmentRunFilter) SetNamePattern(v string) *AssessmentRunFilter {
4799	s.NamePattern = &v
4800	return s
4801}
4802
4803// SetRulesPackageArns sets the RulesPackageArns field's value.
4804func (s *AssessmentRunFilter) SetRulesPackageArns(v []*string) *AssessmentRunFilter {
4805	s.RulesPackageArns = v
4806	return s
4807}
4808
4809// SetStartTimeRange sets the StartTimeRange field's value.
4810func (s *AssessmentRunFilter) SetStartTimeRange(v *TimestampRange) *AssessmentRunFilter {
4811	s.StartTimeRange = v
4812	return s
4813}
4814
4815// SetStateChangeTimeRange sets the StateChangeTimeRange field's value.
4816func (s *AssessmentRunFilter) SetStateChangeTimeRange(v *TimestampRange) *AssessmentRunFilter {
4817	s.StateChangeTimeRange = v
4818	return s
4819}
4820
4821// SetStates sets the States field's value.
4822func (s *AssessmentRunFilter) SetStates(v []*string) *AssessmentRunFilter {
4823	s.States = v
4824	return s
4825}
4826
4827// You cannot perform a specified action if an assessment run is currently in
4828// progress.
4829type AssessmentRunInProgressException struct {
4830	_            struct{} `type:"structure"`
4831	respMetadata protocol.ResponseMetadata
4832
4833	// The ARNs of the assessment runs that are currently in progress.
4834	//
4835	// AssessmentRunArns is a required field
4836	AssessmentRunArns []*string `locationName:"assessmentRunArns" min:"1" type:"list" required:"true"`
4837
4838	// Boolean value that indicates whether the ARN list of the assessment runs
4839	// is truncated.
4840	//
4841	// AssessmentRunArnsTruncated is a required field
4842	AssessmentRunArnsTruncated *bool `locationName:"assessmentRunArnsTruncated" type:"boolean" required:"true"`
4843
4844	// You can immediately retry your request.
4845	//
4846	// CanRetry is a required field
4847	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
4848
4849	// Details of the exception error.
4850	Message_ *string `locationName:"message" type:"string"`
4851}
4852
4853// String returns the string representation
4854func (s AssessmentRunInProgressException) String() string {
4855	return awsutil.Prettify(s)
4856}
4857
4858// GoString returns the string representation
4859func (s AssessmentRunInProgressException) GoString() string {
4860	return s.String()
4861}
4862
4863func newErrorAssessmentRunInProgressException(v protocol.ResponseMetadata) error {
4864	return &AssessmentRunInProgressException{
4865		respMetadata: v,
4866	}
4867}
4868
4869// Code returns the exception type name.
4870func (s AssessmentRunInProgressException) Code() string {
4871	return "AssessmentRunInProgressException"
4872}
4873
4874// Message returns the exception's message.
4875func (s AssessmentRunInProgressException) Message() string {
4876	if s.Message_ != nil {
4877		return *s.Message_
4878	}
4879	return ""
4880}
4881
4882// OrigErr always returns nil, satisfies awserr.Error interface.
4883func (s AssessmentRunInProgressException) OrigErr() error {
4884	return nil
4885}
4886
4887func (s AssessmentRunInProgressException) Error() string {
4888	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
4889}
4890
4891// Status code returns the HTTP status code for the request's response error.
4892func (s AssessmentRunInProgressException) StatusCode() int {
4893	return s.respMetadata.StatusCode
4894}
4895
4896// RequestID returns the service's response RequestID for request.
4897func (s AssessmentRunInProgressException) RequestID() string {
4898	return s.respMetadata.RequestID
4899}
4900
4901// Used as one of the elements of the AssessmentRun data type.
4902type AssessmentRunNotification struct {
4903	_ struct{} `type:"structure"`
4904
4905	// The date of the notification.
4906	//
4907	// Date is a required field
4908	Date *time.Time `locationName:"date" type:"timestamp" required:"true"`
4909
4910	// The Boolean value that specifies whether the notification represents an error.
4911	//
4912	// Error is a required field
4913	Error *bool `locationName:"error" type:"boolean" required:"true"`
4914
4915	// The event for which a notification is sent.
4916	//
4917	// Event is a required field
4918	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
4919
4920	// The message included in the notification.
4921	Message *string `locationName:"message" type:"string"`
4922
4923	// The status code of the SNS notification.
4924	SnsPublishStatusCode *string `locationName:"snsPublishStatusCode" type:"string" enum:"AssessmentRunNotificationSnsStatusCode"`
4925
4926	// The SNS topic to which the SNS notification is sent.
4927	SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string"`
4928}
4929
4930// String returns the string representation
4931func (s AssessmentRunNotification) String() string {
4932	return awsutil.Prettify(s)
4933}
4934
4935// GoString returns the string representation
4936func (s AssessmentRunNotification) GoString() string {
4937	return s.String()
4938}
4939
4940// SetDate sets the Date field's value.
4941func (s *AssessmentRunNotification) SetDate(v time.Time) *AssessmentRunNotification {
4942	s.Date = &v
4943	return s
4944}
4945
4946// SetError sets the Error field's value.
4947func (s *AssessmentRunNotification) SetError(v bool) *AssessmentRunNotification {
4948	s.Error = &v
4949	return s
4950}
4951
4952// SetEvent sets the Event field's value.
4953func (s *AssessmentRunNotification) SetEvent(v string) *AssessmentRunNotification {
4954	s.Event = &v
4955	return s
4956}
4957
4958// SetMessage sets the Message field's value.
4959func (s *AssessmentRunNotification) SetMessage(v string) *AssessmentRunNotification {
4960	s.Message = &v
4961	return s
4962}
4963
4964// SetSnsPublishStatusCode sets the SnsPublishStatusCode field's value.
4965func (s *AssessmentRunNotification) SetSnsPublishStatusCode(v string) *AssessmentRunNotification {
4966	s.SnsPublishStatusCode = &v
4967	return s
4968}
4969
4970// SetSnsTopicArn sets the SnsTopicArn field's value.
4971func (s *AssessmentRunNotification) SetSnsTopicArn(v string) *AssessmentRunNotification {
4972	s.SnsTopicArn = &v
4973	return s
4974}
4975
4976// Used as one of the elements of the AssessmentRun data type.
4977type AssessmentRunStateChange struct {
4978	_ struct{} `type:"structure"`
4979
4980	// The assessment run state.
4981	//
4982	// State is a required field
4983	State *string `locationName:"state" type:"string" required:"true" enum:"AssessmentRunState"`
4984
4985	// The last time the assessment run state changed.
4986	//
4987	// StateChangedAt is a required field
4988	StateChangedAt *time.Time `locationName:"stateChangedAt" type:"timestamp" required:"true"`
4989}
4990
4991// String returns the string representation
4992func (s AssessmentRunStateChange) String() string {
4993	return awsutil.Prettify(s)
4994}
4995
4996// GoString returns the string representation
4997func (s AssessmentRunStateChange) GoString() string {
4998	return s.String()
4999}
5000
5001// SetState sets the State field's value.
5002func (s *AssessmentRunStateChange) SetState(v string) *AssessmentRunStateChange {
5003	s.State = &v
5004	return s
5005}
5006
5007// SetStateChangedAt sets the StateChangedAt field's value.
5008func (s *AssessmentRunStateChange) SetStateChangedAt(v time.Time) *AssessmentRunStateChange {
5009	s.StateChangedAt = &v
5010	return s
5011}
5012
5013// Contains information about an Amazon Inspector application. This data type
5014// is used as the response element in the DescribeAssessmentTargets action.
5015type AssessmentTarget struct {
5016	_ struct{} `type:"structure"`
5017
5018	// The ARN that specifies the Amazon Inspector assessment target.
5019	//
5020	// Arn is a required field
5021	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
5022
5023	// The time at which the assessment target is created.
5024	//
5025	// CreatedAt is a required field
5026	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
5027
5028	// The name of the Amazon Inspector assessment target.
5029	//
5030	// Name is a required field
5031	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
5032
5033	// The ARN that specifies the resource group that is associated with the assessment
5034	// target.
5035	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string"`
5036
5037	// The time at which UpdateAssessmentTarget is called.
5038	//
5039	// UpdatedAt is a required field
5040	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
5041}
5042
5043// String returns the string representation
5044func (s AssessmentTarget) String() string {
5045	return awsutil.Prettify(s)
5046}
5047
5048// GoString returns the string representation
5049func (s AssessmentTarget) GoString() string {
5050	return s.String()
5051}
5052
5053// SetArn sets the Arn field's value.
5054func (s *AssessmentTarget) SetArn(v string) *AssessmentTarget {
5055	s.Arn = &v
5056	return s
5057}
5058
5059// SetCreatedAt sets the CreatedAt field's value.
5060func (s *AssessmentTarget) SetCreatedAt(v time.Time) *AssessmentTarget {
5061	s.CreatedAt = &v
5062	return s
5063}
5064
5065// SetName sets the Name field's value.
5066func (s *AssessmentTarget) SetName(v string) *AssessmentTarget {
5067	s.Name = &v
5068	return s
5069}
5070
5071// SetResourceGroupArn sets the ResourceGroupArn field's value.
5072func (s *AssessmentTarget) SetResourceGroupArn(v string) *AssessmentTarget {
5073	s.ResourceGroupArn = &v
5074	return s
5075}
5076
5077// SetUpdatedAt sets the UpdatedAt field's value.
5078func (s *AssessmentTarget) SetUpdatedAt(v time.Time) *AssessmentTarget {
5079	s.UpdatedAt = &v
5080	return s
5081}
5082
5083// Used as the request parameter in the ListAssessmentTargets action.
5084type AssessmentTargetFilter struct {
5085	_ struct{} `type:"structure"`
5086
5087	// For a record to match a filter, an explicit value or a string that contains
5088	// a wildcard that is specified for this data type property must match the value
5089	// of the assessmentTargetName property of the AssessmentTarget data type.
5090	AssessmentTargetNamePattern *string `locationName:"assessmentTargetNamePattern" min:"1" type:"string"`
5091}
5092
5093// String returns the string representation
5094func (s AssessmentTargetFilter) String() string {
5095	return awsutil.Prettify(s)
5096}
5097
5098// GoString returns the string representation
5099func (s AssessmentTargetFilter) GoString() string {
5100	return s.String()
5101}
5102
5103// Validate inspects the fields of the type to determine if they are valid.
5104func (s *AssessmentTargetFilter) Validate() error {
5105	invalidParams := request.ErrInvalidParams{Context: "AssessmentTargetFilter"}
5106	if s.AssessmentTargetNamePattern != nil && len(*s.AssessmentTargetNamePattern) < 1 {
5107		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetNamePattern", 1))
5108	}
5109
5110	if invalidParams.Len() > 0 {
5111		return invalidParams
5112	}
5113	return nil
5114}
5115
5116// SetAssessmentTargetNamePattern sets the AssessmentTargetNamePattern field's value.
5117func (s *AssessmentTargetFilter) SetAssessmentTargetNamePattern(v string) *AssessmentTargetFilter {
5118	s.AssessmentTargetNamePattern = &v
5119	return s
5120}
5121
5122// Contains information about an Amazon Inspector assessment template. This
5123// data type is used as the response element in the DescribeAssessmentTemplates
5124// action.
5125type AssessmentTemplate struct {
5126	_ struct{} `type:"structure"`
5127
5128	// The ARN of the assessment template.
5129	//
5130	// Arn is a required field
5131	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
5132
5133	// The number of existing assessment runs associated with this assessment template.
5134	// This value can be zero or a positive integer.
5135	//
5136	// AssessmentRunCount is a required field
5137	AssessmentRunCount *int64 `locationName:"assessmentRunCount" type:"integer" required:"true"`
5138
5139	// The ARN of the assessment target that corresponds to this assessment template.
5140	//
5141	// AssessmentTargetArn is a required field
5142	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
5143
5144	// The time at which the assessment template is created.
5145	//
5146	// CreatedAt is a required field
5147	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
5148
5149	// The duration in seconds specified for this assessment template. The default
5150	// value is 3600 seconds (one hour). The maximum value is 86400 seconds (one
5151	// day).
5152	//
5153	// DurationInSeconds is a required field
5154	DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"`
5155
5156	// The Amazon Resource Name (ARN) of the most recent assessment run associated
5157	// with this assessment template. This value exists only when the value of assessmentRunCount
5158	// is greaterpa than zero.
5159	LastAssessmentRunArn *string `locationName:"lastAssessmentRunArn" min:"1" type:"string"`
5160
5161	// The name of the assessment template.
5162	//
5163	// Name is a required field
5164	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
5165
5166	// The rules packages that are specified for this assessment template.
5167	//
5168	// RulesPackageArns is a required field
5169	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"`
5170
5171	// The user-defined attributes that are assigned to every generated finding
5172	// from the assessment run that uses this assessment template.
5173	//
5174	// UserAttributesForFindings is a required field
5175	UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list" required:"true"`
5176}
5177
5178// String returns the string representation
5179func (s AssessmentTemplate) String() string {
5180	return awsutil.Prettify(s)
5181}
5182
5183// GoString returns the string representation
5184func (s AssessmentTemplate) GoString() string {
5185	return s.String()
5186}
5187
5188// SetArn sets the Arn field's value.
5189func (s *AssessmentTemplate) SetArn(v string) *AssessmentTemplate {
5190	s.Arn = &v
5191	return s
5192}
5193
5194// SetAssessmentRunCount sets the AssessmentRunCount field's value.
5195func (s *AssessmentTemplate) SetAssessmentRunCount(v int64) *AssessmentTemplate {
5196	s.AssessmentRunCount = &v
5197	return s
5198}
5199
5200// SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
5201func (s *AssessmentTemplate) SetAssessmentTargetArn(v string) *AssessmentTemplate {
5202	s.AssessmentTargetArn = &v
5203	return s
5204}
5205
5206// SetCreatedAt sets the CreatedAt field's value.
5207func (s *AssessmentTemplate) SetCreatedAt(v time.Time) *AssessmentTemplate {
5208	s.CreatedAt = &v
5209	return s
5210}
5211
5212// SetDurationInSeconds sets the DurationInSeconds field's value.
5213func (s *AssessmentTemplate) SetDurationInSeconds(v int64) *AssessmentTemplate {
5214	s.DurationInSeconds = &v
5215	return s
5216}
5217
5218// SetLastAssessmentRunArn sets the LastAssessmentRunArn field's value.
5219func (s *AssessmentTemplate) SetLastAssessmentRunArn(v string) *AssessmentTemplate {
5220	s.LastAssessmentRunArn = &v
5221	return s
5222}
5223
5224// SetName sets the Name field's value.
5225func (s *AssessmentTemplate) SetName(v string) *AssessmentTemplate {
5226	s.Name = &v
5227	return s
5228}
5229
5230// SetRulesPackageArns sets the RulesPackageArns field's value.
5231func (s *AssessmentTemplate) SetRulesPackageArns(v []*string) *AssessmentTemplate {
5232	s.RulesPackageArns = v
5233	return s
5234}
5235
5236// SetUserAttributesForFindings sets the UserAttributesForFindings field's value.
5237func (s *AssessmentTemplate) SetUserAttributesForFindings(v []*Attribute) *AssessmentTemplate {
5238	s.UserAttributesForFindings = v
5239	return s
5240}
5241
5242// Used as the request parameter in the ListAssessmentTemplates action.
5243type AssessmentTemplateFilter struct {
5244	_ struct{} `type:"structure"`
5245
5246	// For a record to match a filter, the value specified for this data type property
5247	// must inclusively match any value between the specified minimum and maximum
5248	// values of the durationInSeconds property of the AssessmentTemplate data type.
5249	DurationRange *DurationRange `locationName:"durationRange" type:"structure"`
5250
5251	// For a record to match a filter, an explicit value or a string that contains
5252	// a wildcard that is specified for this data type property must match the value
5253	// of the assessmentTemplateName property of the AssessmentTemplate data type.
5254	NamePattern *string `locationName:"namePattern" min:"1" type:"string"`
5255
5256	// For a record to match a filter, the values that are specified for this data
5257	// type property must be contained in the list of values of the rulesPackageArns
5258	// property of the AssessmentTemplate data type.
5259	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"`
5260}
5261
5262// String returns the string representation
5263func (s AssessmentTemplateFilter) String() string {
5264	return awsutil.Prettify(s)
5265}
5266
5267// GoString returns the string representation
5268func (s AssessmentTemplateFilter) GoString() string {
5269	return s.String()
5270}
5271
5272// Validate inspects the fields of the type to determine if they are valid.
5273func (s *AssessmentTemplateFilter) Validate() error {
5274	invalidParams := request.ErrInvalidParams{Context: "AssessmentTemplateFilter"}
5275	if s.NamePattern != nil && len(*s.NamePattern) < 1 {
5276		invalidParams.Add(request.NewErrParamMinLen("NamePattern", 1))
5277	}
5278	if s.DurationRange != nil {
5279		if err := s.DurationRange.Validate(); err != nil {
5280			invalidParams.AddNested("DurationRange", err.(request.ErrInvalidParams))
5281		}
5282	}
5283
5284	if invalidParams.Len() > 0 {
5285		return invalidParams
5286	}
5287	return nil
5288}
5289
5290// SetDurationRange sets the DurationRange field's value.
5291func (s *AssessmentTemplateFilter) SetDurationRange(v *DurationRange) *AssessmentTemplateFilter {
5292	s.DurationRange = v
5293	return s
5294}
5295
5296// SetNamePattern sets the NamePattern field's value.
5297func (s *AssessmentTemplateFilter) SetNamePattern(v string) *AssessmentTemplateFilter {
5298	s.NamePattern = &v
5299	return s
5300}
5301
5302// SetRulesPackageArns sets the RulesPackageArns field's value.
5303func (s *AssessmentTemplateFilter) SetRulesPackageArns(v []*string) *AssessmentTemplateFilter {
5304	s.RulesPackageArns = v
5305	return s
5306}
5307
5308// A collection of attributes of the host from which the finding is generated.
5309type AssetAttributes struct {
5310	_ struct{} `type:"structure"`
5311
5312	// The ID of the agent that is installed on the EC2 instance where the finding
5313	// is generated.
5314	AgentId *string `locationName:"agentId" min:"1" type:"string"`
5315
5316	// The ID of the Amazon Machine Image (AMI) that is installed on the EC2 instance
5317	// where the finding is generated.
5318	AmiId *string `locationName:"amiId" type:"string"`
5319
5320	// The Auto Scaling group of the EC2 instance where the finding is generated.
5321	AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"`
5322
5323	// The hostname of the EC2 instance where the finding is generated.
5324	Hostname *string `locationName:"hostname" type:"string"`
5325
5326	// The list of IP v4 addresses of the EC2 instance where the finding is generated.
5327	Ipv4Addresses []*string `locationName:"ipv4Addresses" type:"list"`
5328
5329	// An array of the network interfaces interacting with the EC2 instance where
5330	// the finding is generated.
5331	NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" type:"list"`
5332
5333	// The schema version of this data type.
5334	//
5335	// SchemaVersion is a required field
5336	SchemaVersion *int64 `locationName:"schemaVersion" type:"integer" required:"true"`
5337
5338	// The tags related to the EC2 instance where the finding is generated.
5339	Tags []*Tag `locationName:"tags" type:"list"`
5340}
5341
5342// String returns the string representation
5343func (s AssetAttributes) String() string {
5344	return awsutil.Prettify(s)
5345}
5346
5347// GoString returns the string representation
5348func (s AssetAttributes) GoString() string {
5349	return s.String()
5350}
5351
5352// SetAgentId sets the AgentId field's value.
5353func (s *AssetAttributes) SetAgentId(v string) *AssetAttributes {
5354	s.AgentId = &v
5355	return s
5356}
5357
5358// SetAmiId sets the AmiId field's value.
5359func (s *AssetAttributes) SetAmiId(v string) *AssetAttributes {
5360	s.AmiId = &v
5361	return s
5362}
5363
5364// SetAutoScalingGroup sets the AutoScalingGroup field's value.
5365func (s *AssetAttributes) SetAutoScalingGroup(v string) *AssetAttributes {
5366	s.AutoScalingGroup = &v
5367	return s
5368}
5369
5370// SetHostname sets the Hostname field's value.
5371func (s *AssetAttributes) SetHostname(v string) *AssetAttributes {
5372	s.Hostname = &v
5373	return s
5374}
5375
5376// SetIpv4Addresses sets the Ipv4Addresses field's value.
5377func (s *AssetAttributes) SetIpv4Addresses(v []*string) *AssetAttributes {
5378	s.Ipv4Addresses = v
5379	return s
5380}
5381
5382// SetNetworkInterfaces sets the NetworkInterfaces field's value.
5383func (s *AssetAttributes) SetNetworkInterfaces(v []*NetworkInterface) *AssetAttributes {
5384	s.NetworkInterfaces = v
5385	return s
5386}
5387
5388// SetSchemaVersion sets the SchemaVersion field's value.
5389func (s *AssetAttributes) SetSchemaVersion(v int64) *AssetAttributes {
5390	s.SchemaVersion = &v
5391	return s
5392}
5393
5394// SetTags sets the Tags field's value.
5395func (s *AssetAttributes) SetTags(v []*Tag) *AssetAttributes {
5396	s.Tags = v
5397	return s
5398}
5399
5400// This data type is used as a request parameter in the AddAttributesToFindings
5401// and CreateAssessmentTemplate actions.
5402type Attribute struct {
5403	_ struct{} `type:"structure"`
5404
5405	// The attribute key.
5406	//
5407	// Key is a required field
5408	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
5409
5410	// The value assigned to the attribute key.
5411	Value *string `locationName:"value" min:"1" type:"string"`
5412}
5413
5414// String returns the string representation
5415func (s Attribute) String() string {
5416	return awsutil.Prettify(s)
5417}
5418
5419// GoString returns the string representation
5420func (s Attribute) GoString() string {
5421	return s.String()
5422}
5423
5424// Validate inspects the fields of the type to determine if they are valid.
5425func (s *Attribute) Validate() error {
5426	invalidParams := request.ErrInvalidParams{Context: "Attribute"}
5427	if s.Key == nil {
5428		invalidParams.Add(request.NewErrParamRequired("Key"))
5429	}
5430	if s.Key != nil && len(*s.Key) < 1 {
5431		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
5432	}
5433	if s.Value != nil && len(*s.Value) < 1 {
5434		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
5435	}
5436
5437	if invalidParams.Len() > 0 {
5438		return invalidParams
5439	}
5440	return nil
5441}
5442
5443// SetKey sets the Key field's value.
5444func (s *Attribute) SetKey(v string) *Attribute {
5445	s.Key = &v
5446	return s
5447}
5448
5449// SetValue sets the Value field's value.
5450func (s *Attribute) SetValue(v string) *Attribute {
5451	s.Value = &v
5452	return s
5453}
5454
5455type CreateAssessmentTargetInput struct {
5456	_ struct{} `type:"structure"`
5457
5458	// The user-defined name that identifies the assessment target that you want
5459	// to create. The name must be unique within the AWS account.
5460	//
5461	// AssessmentTargetName is a required field
5462	AssessmentTargetName *string `locationName:"assessmentTargetName" min:"1" type:"string" required:"true"`
5463
5464	// The ARN that specifies the resource group that is used to create the assessment
5465	// target. If resourceGroupArn is not specified, all EC2 instances in the current
5466	// AWS account and region are included in the assessment target.
5467	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string"`
5468}
5469
5470// String returns the string representation
5471func (s CreateAssessmentTargetInput) String() string {
5472	return awsutil.Prettify(s)
5473}
5474
5475// GoString returns the string representation
5476func (s CreateAssessmentTargetInput) GoString() string {
5477	return s.String()
5478}
5479
5480// Validate inspects the fields of the type to determine if they are valid.
5481func (s *CreateAssessmentTargetInput) Validate() error {
5482	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentTargetInput"}
5483	if s.AssessmentTargetName == nil {
5484		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetName"))
5485	}
5486	if s.AssessmentTargetName != nil && len(*s.AssessmentTargetName) < 1 {
5487		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetName", 1))
5488	}
5489	if s.ResourceGroupArn != nil && len(*s.ResourceGroupArn) < 1 {
5490		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArn", 1))
5491	}
5492
5493	if invalidParams.Len() > 0 {
5494		return invalidParams
5495	}
5496	return nil
5497}
5498
5499// SetAssessmentTargetName sets the AssessmentTargetName field's value.
5500func (s *CreateAssessmentTargetInput) SetAssessmentTargetName(v string) *CreateAssessmentTargetInput {
5501	s.AssessmentTargetName = &v
5502	return s
5503}
5504
5505// SetResourceGroupArn sets the ResourceGroupArn field's value.
5506func (s *CreateAssessmentTargetInput) SetResourceGroupArn(v string) *CreateAssessmentTargetInput {
5507	s.ResourceGroupArn = &v
5508	return s
5509}
5510
5511type CreateAssessmentTargetOutput struct {
5512	_ struct{} `type:"structure"`
5513
5514	// The ARN that specifies the assessment target that is created.
5515	//
5516	// AssessmentTargetArn is a required field
5517	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
5518}
5519
5520// String returns the string representation
5521func (s CreateAssessmentTargetOutput) String() string {
5522	return awsutil.Prettify(s)
5523}
5524
5525// GoString returns the string representation
5526func (s CreateAssessmentTargetOutput) GoString() string {
5527	return s.String()
5528}
5529
5530// SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
5531func (s *CreateAssessmentTargetOutput) SetAssessmentTargetArn(v string) *CreateAssessmentTargetOutput {
5532	s.AssessmentTargetArn = &v
5533	return s
5534}
5535
5536type CreateAssessmentTemplateInput struct {
5537	_ struct{} `type:"structure"`
5538
5539	// The ARN that specifies the assessment target for which you want to create
5540	// the assessment template.
5541	//
5542	// AssessmentTargetArn is a required field
5543	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
5544
5545	// The user-defined name that identifies the assessment template that you want
5546	// to create. You can create several assessment templates for an assessment
5547	// target. The names of the assessment templates that correspond to a particular
5548	// assessment target must be unique.
5549	//
5550	// AssessmentTemplateName is a required field
5551	AssessmentTemplateName *string `locationName:"assessmentTemplateName" min:"1" type:"string" required:"true"`
5552
5553	// The duration of the assessment run in seconds.
5554	//
5555	// DurationInSeconds is a required field
5556	DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"`
5557
5558	// The ARNs that specify the rules packages that you want to attach to the assessment
5559	// template.
5560	//
5561	// RulesPackageArns is a required field
5562	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"`
5563
5564	// The user-defined attributes that are assigned to every finding that is generated
5565	// by the assessment run that uses this assessment template. An attribute is
5566	// a key and value pair (an Attribute object). Within an assessment template,
5567	// each key must be unique.
5568	UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list"`
5569}
5570
5571// String returns the string representation
5572func (s CreateAssessmentTemplateInput) String() string {
5573	return awsutil.Prettify(s)
5574}
5575
5576// GoString returns the string representation
5577func (s CreateAssessmentTemplateInput) GoString() string {
5578	return s.String()
5579}
5580
5581// Validate inspects the fields of the type to determine if they are valid.
5582func (s *CreateAssessmentTemplateInput) Validate() error {
5583	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentTemplateInput"}
5584	if s.AssessmentTargetArn == nil {
5585		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn"))
5586	}
5587	if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 {
5588		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1))
5589	}
5590	if s.AssessmentTemplateName == nil {
5591		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateName"))
5592	}
5593	if s.AssessmentTemplateName != nil && len(*s.AssessmentTemplateName) < 1 {
5594		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateName", 1))
5595	}
5596	if s.DurationInSeconds == nil {
5597		invalidParams.Add(request.NewErrParamRequired("DurationInSeconds"))
5598	}
5599	if s.DurationInSeconds != nil && *s.DurationInSeconds < 180 {
5600		invalidParams.Add(request.NewErrParamMinValue("DurationInSeconds", 180))
5601	}
5602	if s.RulesPackageArns == nil {
5603		invalidParams.Add(request.NewErrParamRequired("RulesPackageArns"))
5604	}
5605	if s.UserAttributesForFindings != nil {
5606		for i, v := range s.UserAttributesForFindings {
5607			if v == nil {
5608				continue
5609			}
5610			if err := v.Validate(); err != nil {
5611				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributesForFindings", i), err.(request.ErrInvalidParams))
5612			}
5613		}
5614	}
5615
5616	if invalidParams.Len() > 0 {
5617		return invalidParams
5618	}
5619	return nil
5620}
5621
5622// SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
5623func (s *CreateAssessmentTemplateInput) SetAssessmentTargetArn(v string) *CreateAssessmentTemplateInput {
5624	s.AssessmentTargetArn = &v
5625	return s
5626}
5627
5628// SetAssessmentTemplateName sets the AssessmentTemplateName field's value.
5629func (s *CreateAssessmentTemplateInput) SetAssessmentTemplateName(v string) *CreateAssessmentTemplateInput {
5630	s.AssessmentTemplateName = &v
5631	return s
5632}
5633
5634// SetDurationInSeconds sets the DurationInSeconds field's value.
5635func (s *CreateAssessmentTemplateInput) SetDurationInSeconds(v int64) *CreateAssessmentTemplateInput {
5636	s.DurationInSeconds = &v
5637	return s
5638}
5639
5640// SetRulesPackageArns sets the RulesPackageArns field's value.
5641func (s *CreateAssessmentTemplateInput) SetRulesPackageArns(v []*string) *CreateAssessmentTemplateInput {
5642	s.RulesPackageArns = v
5643	return s
5644}
5645
5646// SetUserAttributesForFindings sets the UserAttributesForFindings field's value.
5647func (s *CreateAssessmentTemplateInput) SetUserAttributesForFindings(v []*Attribute) *CreateAssessmentTemplateInput {
5648	s.UserAttributesForFindings = v
5649	return s
5650}
5651
5652type CreateAssessmentTemplateOutput struct {
5653	_ struct{} `type:"structure"`
5654
5655	// The ARN that specifies the assessment template that is created.
5656	//
5657	// AssessmentTemplateArn is a required field
5658	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
5659}
5660
5661// String returns the string representation
5662func (s CreateAssessmentTemplateOutput) String() string {
5663	return awsutil.Prettify(s)
5664}
5665
5666// GoString returns the string representation
5667func (s CreateAssessmentTemplateOutput) GoString() string {
5668	return s.String()
5669}
5670
5671// SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
5672func (s *CreateAssessmentTemplateOutput) SetAssessmentTemplateArn(v string) *CreateAssessmentTemplateOutput {
5673	s.AssessmentTemplateArn = &v
5674	return s
5675}
5676
5677type CreateExclusionsPreviewInput struct {
5678	_ struct{} `type:"structure"`
5679
5680	// The ARN that specifies the assessment template for which you want to create
5681	// an exclusions preview.
5682	//
5683	// AssessmentTemplateArn is a required field
5684	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
5685}
5686
5687// String returns the string representation
5688func (s CreateExclusionsPreviewInput) String() string {
5689	return awsutil.Prettify(s)
5690}
5691
5692// GoString returns the string representation
5693func (s CreateExclusionsPreviewInput) GoString() string {
5694	return s.String()
5695}
5696
5697// Validate inspects the fields of the type to determine if they are valid.
5698func (s *CreateExclusionsPreviewInput) Validate() error {
5699	invalidParams := request.ErrInvalidParams{Context: "CreateExclusionsPreviewInput"}
5700	if s.AssessmentTemplateArn == nil {
5701		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
5702	}
5703	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
5704		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
5705	}
5706
5707	if invalidParams.Len() > 0 {
5708		return invalidParams
5709	}
5710	return nil
5711}
5712
5713// SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
5714func (s *CreateExclusionsPreviewInput) SetAssessmentTemplateArn(v string) *CreateExclusionsPreviewInput {
5715	s.AssessmentTemplateArn = &v
5716	return s
5717}
5718
5719type CreateExclusionsPreviewOutput struct {
5720	_ struct{} `type:"structure"`
5721
5722	// Specifies the unique identifier of the requested exclusions preview. You
5723	// can use the unique identifier to retrieve the exclusions preview when running
5724	// the GetExclusionsPreview API.
5725	//
5726	// PreviewToken is a required field
5727	PreviewToken *string `locationName:"previewToken" type:"string" required:"true"`
5728}
5729
5730// String returns the string representation
5731func (s CreateExclusionsPreviewOutput) String() string {
5732	return awsutil.Prettify(s)
5733}
5734
5735// GoString returns the string representation
5736func (s CreateExclusionsPreviewOutput) GoString() string {
5737	return s.String()
5738}
5739
5740// SetPreviewToken sets the PreviewToken field's value.
5741func (s *CreateExclusionsPreviewOutput) SetPreviewToken(v string) *CreateExclusionsPreviewOutput {
5742	s.PreviewToken = &v
5743	return s
5744}
5745
5746type CreateResourceGroupInput struct {
5747	_ struct{} `type:"structure"`
5748
5749	// A collection of keys and an array of possible values, '[{"key":"key1","values":["Value1","Value2"]},{"key":"Key2","values":["Value3"]}]'.
5750	//
5751	// For example,'[{"key":"Name","values":["TestEC2Instance"]}]'.
5752	//
5753	// ResourceGroupTags is a required field
5754	ResourceGroupTags []*ResourceGroupTag `locationName:"resourceGroupTags" min:"1" type:"list" required:"true"`
5755}
5756
5757// String returns the string representation
5758func (s CreateResourceGroupInput) String() string {
5759	return awsutil.Prettify(s)
5760}
5761
5762// GoString returns the string representation
5763func (s CreateResourceGroupInput) GoString() string {
5764	return s.String()
5765}
5766
5767// Validate inspects the fields of the type to determine if they are valid.
5768func (s *CreateResourceGroupInput) Validate() error {
5769	invalidParams := request.ErrInvalidParams{Context: "CreateResourceGroupInput"}
5770	if s.ResourceGroupTags == nil {
5771		invalidParams.Add(request.NewErrParamRequired("ResourceGroupTags"))
5772	}
5773	if s.ResourceGroupTags != nil && len(s.ResourceGroupTags) < 1 {
5774		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupTags", 1))
5775	}
5776	if s.ResourceGroupTags != nil {
5777		for i, v := range s.ResourceGroupTags {
5778			if v == nil {
5779				continue
5780			}
5781			if err := v.Validate(); err != nil {
5782				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceGroupTags", i), err.(request.ErrInvalidParams))
5783			}
5784		}
5785	}
5786
5787	if invalidParams.Len() > 0 {
5788		return invalidParams
5789	}
5790	return nil
5791}
5792
5793// SetResourceGroupTags sets the ResourceGroupTags field's value.
5794func (s *CreateResourceGroupInput) SetResourceGroupTags(v []*ResourceGroupTag) *CreateResourceGroupInput {
5795	s.ResourceGroupTags = v
5796	return s
5797}
5798
5799type CreateResourceGroupOutput struct {
5800	_ struct{} `type:"structure"`
5801
5802	// The ARN that specifies the resource group that is created.
5803	//
5804	// ResourceGroupArn is a required field
5805	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string" required:"true"`
5806}
5807
5808// String returns the string representation
5809func (s CreateResourceGroupOutput) String() string {
5810	return awsutil.Prettify(s)
5811}
5812
5813// GoString returns the string representation
5814func (s CreateResourceGroupOutput) GoString() string {
5815	return s.String()
5816}
5817
5818// SetResourceGroupArn sets the ResourceGroupArn field's value.
5819func (s *CreateResourceGroupOutput) SetResourceGroupArn(v string) *CreateResourceGroupOutput {
5820	s.ResourceGroupArn = &v
5821	return s
5822}
5823
5824type DeleteAssessmentRunInput struct {
5825	_ struct{} `type:"structure"`
5826
5827	// The ARN that specifies the assessment run that you want to delete.
5828	//
5829	// AssessmentRunArn is a required field
5830	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
5831}
5832
5833// String returns the string representation
5834func (s DeleteAssessmentRunInput) String() string {
5835	return awsutil.Prettify(s)
5836}
5837
5838// GoString returns the string representation
5839func (s DeleteAssessmentRunInput) GoString() string {
5840	return s.String()
5841}
5842
5843// Validate inspects the fields of the type to determine if they are valid.
5844func (s *DeleteAssessmentRunInput) Validate() error {
5845	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentRunInput"}
5846	if s.AssessmentRunArn == nil {
5847		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
5848	}
5849	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
5850		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
5851	}
5852
5853	if invalidParams.Len() > 0 {
5854		return invalidParams
5855	}
5856	return nil
5857}
5858
5859// SetAssessmentRunArn sets the AssessmentRunArn field's value.
5860func (s *DeleteAssessmentRunInput) SetAssessmentRunArn(v string) *DeleteAssessmentRunInput {
5861	s.AssessmentRunArn = &v
5862	return s
5863}
5864
5865type DeleteAssessmentRunOutput struct {
5866	_ struct{} `type:"structure"`
5867}
5868
5869// String returns the string representation
5870func (s DeleteAssessmentRunOutput) String() string {
5871	return awsutil.Prettify(s)
5872}
5873
5874// GoString returns the string representation
5875func (s DeleteAssessmentRunOutput) GoString() string {
5876	return s.String()
5877}
5878
5879type DeleteAssessmentTargetInput struct {
5880	_ struct{} `type:"structure"`
5881
5882	// The ARN that specifies the assessment target that you want to delete.
5883	//
5884	// AssessmentTargetArn is a required field
5885	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
5886}
5887
5888// String returns the string representation
5889func (s DeleteAssessmentTargetInput) String() string {
5890	return awsutil.Prettify(s)
5891}
5892
5893// GoString returns the string representation
5894func (s DeleteAssessmentTargetInput) GoString() string {
5895	return s.String()
5896}
5897
5898// Validate inspects the fields of the type to determine if they are valid.
5899func (s *DeleteAssessmentTargetInput) Validate() error {
5900	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentTargetInput"}
5901	if s.AssessmentTargetArn == nil {
5902		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn"))
5903	}
5904	if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 {
5905		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1))
5906	}
5907
5908	if invalidParams.Len() > 0 {
5909		return invalidParams
5910	}
5911	return nil
5912}
5913
5914// SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
5915func (s *DeleteAssessmentTargetInput) SetAssessmentTargetArn(v string) *DeleteAssessmentTargetInput {
5916	s.AssessmentTargetArn = &v
5917	return s
5918}
5919
5920type DeleteAssessmentTargetOutput struct {
5921	_ struct{} `type:"structure"`
5922}
5923
5924// String returns the string representation
5925func (s DeleteAssessmentTargetOutput) String() string {
5926	return awsutil.Prettify(s)
5927}
5928
5929// GoString returns the string representation
5930func (s DeleteAssessmentTargetOutput) GoString() string {
5931	return s.String()
5932}
5933
5934type DeleteAssessmentTemplateInput struct {
5935	_ struct{} `type:"structure"`
5936
5937	// The ARN that specifies the assessment template that you want to delete.
5938	//
5939	// AssessmentTemplateArn is a required field
5940	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
5941}
5942
5943// String returns the string representation
5944func (s DeleteAssessmentTemplateInput) String() string {
5945	return awsutil.Prettify(s)
5946}
5947
5948// GoString returns the string representation
5949func (s DeleteAssessmentTemplateInput) GoString() string {
5950	return s.String()
5951}
5952
5953// Validate inspects the fields of the type to determine if they are valid.
5954func (s *DeleteAssessmentTemplateInput) Validate() error {
5955	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentTemplateInput"}
5956	if s.AssessmentTemplateArn == nil {
5957		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
5958	}
5959	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
5960		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
5961	}
5962
5963	if invalidParams.Len() > 0 {
5964		return invalidParams
5965	}
5966	return nil
5967}
5968
5969// SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
5970func (s *DeleteAssessmentTemplateInput) SetAssessmentTemplateArn(v string) *DeleteAssessmentTemplateInput {
5971	s.AssessmentTemplateArn = &v
5972	return s
5973}
5974
5975type DeleteAssessmentTemplateOutput struct {
5976	_ struct{} `type:"structure"`
5977}
5978
5979// String returns the string representation
5980func (s DeleteAssessmentTemplateOutput) String() string {
5981	return awsutil.Prettify(s)
5982}
5983
5984// GoString returns the string representation
5985func (s DeleteAssessmentTemplateOutput) GoString() string {
5986	return s.String()
5987}
5988
5989type DescribeAssessmentRunsInput struct {
5990	_ struct{} `type:"structure"`
5991
5992	// The ARN that specifies the assessment run that you want to describe.
5993	//
5994	// AssessmentRunArns is a required field
5995	AssessmentRunArns []*string `locationName:"assessmentRunArns" min:"1" type:"list" required:"true"`
5996}
5997
5998// String returns the string representation
5999func (s DescribeAssessmentRunsInput) String() string {
6000	return awsutil.Prettify(s)
6001}
6002
6003// GoString returns the string representation
6004func (s DescribeAssessmentRunsInput) GoString() string {
6005	return s.String()
6006}
6007
6008// Validate inspects the fields of the type to determine if they are valid.
6009func (s *DescribeAssessmentRunsInput) Validate() error {
6010	invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentRunsInput"}
6011	if s.AssessmentRunArns == nil {
6012		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArns"))
6013	}
6014	if s.AssessmentRunArns != nil && len(s.AssessmentRunArns) < 1 {
6015		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArns", 1))
6016	}
6017
6018	if invalidParams.Len() > 0 {
6019		return invalidParams
6020	}
6021	return nil
6022}
6023
6024// SetAssessmentRunArns sets the AssessmentRunArns field's value.
6025func (s *DescribeAssessmentRunsInput) SetAssessmentRunArns(v []*string) *DescribeAssessmentRunsInput {
6026	s.AssessmentRunArns = v
6027	return s
6028}
6029
6030type DescribeAssessmentRunsOutput struct {
6031	_ struct{} `type:"structure"`
6032
6033	// Information about the assessment run.
6034	//
6035	// AssessmentRuns is a required field
6036	AssessmentRuns []*AssessmentRun `locationName:"assessmentRuns" type:"list" required:"true"`
6037
6038	// Assessment run details that cannot be described. An error code is provided
6039	// for each failed item.
6040	//
6041	// FailedItems is a required field
6042	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
6043}
6044
6045// String returns the string representation
6046func (s DescribeAssessmentRunsOutput) String() string {
6047	return awsutil.Prettify(s)
6048}
6049
6050// GoString returns the string representation
6051func (s DescribeAssessmentRunsOutput) GoString() string {
6052	return s.String()
6053}
6054
6055// SetAssessmentRuns sets the AssessmentRuns field's value.
6056func (s *DescribeAssessmentRunsOutput) SetAssessmentRuns(v []*AssessmentRun) *DescribeAssessmentRunsOutput {
6057	s.AssessmentRuns = v
6058	return s
6059}
6060
6061// SetFailedItems sets the FailedItems field's value.
6062func (s *DescribeAssessmentRunsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeAssessmentRunsOutput {
6063	s.FailedItems = v
6064	return s
6065}
6066
6067type DescribeAssessmentTargetsInput struct {
6068	_ struct{} `type:"structure"`
6069
6070	// The ARNs that specifies the assessment targets that you want to describe.
6071	//
6072	// AssessmentTargetArns is a required field
6073	AssessmentTargetArns []*string `locationName:"assessmentTargetArns" min:"1" type:"list" required:"true"`
6074}
6075
6076// String returns the string representation
6077func (s DescribeAssessmentTargetsInput) String() string {
6078	return awsutil.Prettify(s)
6079}
6080
6081// GoString returns the string representation
6082func (s DescribeAssessmentTargetsInput) GoString() string {
6083	return s.String()
6084}
6085
6086// Validate inspects the fields of the type to determine if they are valid.
6087func (s *DescribeAssessmentTargetsInput) Validate() error {
6088	invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentTargetsInput"}
6089	if s.AssessmentTargetArns == nil {
6090		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArns"))
6091	}
6092	if s.AssessmentTargetArns != nil && len(s.AssessmentTargetArns) < 1 {
6093		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArns", 1))
6094	}
6095
6096	if invalidParams.Len() > 0 {
6097		return invalidParams
6098	}
6099	return nil
6100}
6101
6102// SetAssessmentTargetArns sets the AssessmentTargetArns field's value.
6103func (s *DescribeAssessmentTargetsInput) SetAssessmentTargetArns(v []*string) *DescribeAssessmentTargetsInput {
6104	s.AssessmentTargetArns = v
6105	return s
6106}
6107
6108type DescribeAssessmentTargetsOutput struct {
6109	_ struct{} `type:"structure"`
6110
6111	// Information about the assessment targets.
6112	//
6113	// AssessmentTargets is a required field
6114	AssessmentTargets []*AssessmentTarget `locationName:"assessmentTargets" type:"list" required:"true"`
6115
6116	// Assessment target details that cannot be described. An error code is provided
6117	// for each failed item.
6118	//
6119	// FailedItems is a required field
6120	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
6121}
6122
6123// String returns the string representation
6124func (s DescribeAssessmentTargetsOutput) String() string {
6125	return awsutil.Prettify(s)
6126}
6127
6128// GoString returns the string representation
6129func (s DescribeAssessmentTargetsOutput) GoString() string {
6130	return s.String()
6131}
6132
6133// SetAssessmentTargets sets the AssessmentTargets field's value.
6134func (s *DescribeAssessmentTargetsOutput) SetAssessmentTargets(v []*AssessmentTarget) *DescribeAssessmentTargetsOutput {
6135	s.AssessmentTargets = v
6136	return s
6137}
6138
6139// SetFailedItems sets the FailedItems field's value.
6140func (s *DescribeAssessmentTargetsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeAssessmentTargetsOutput {
6141	s.FailedItems = v
6142	return s
6143}
6144
6145type DescribeAssessmentTemplatesInput struct {
6146	_ struct{} `type:"structure"`
6147
6148	// AssessmentTemplateArns is a required field
6149	AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" min:"1" type:"list" required:"true"`
6150}
6151
6152// String returns the string representation
6153func (s DescribeAssessmentTemplatesInput) String() string {
6154	return awsutil.Prettify(s)
6155}
6156
6157// GoString returns the string representation
6158func (s DescribeAssessmentTemplatesInput) GoString() string {
6159	return s.String()
6160}
6161
6162// Validate inspects the fields of the type to determine if they are valid.
6163func (s *DescribeAssessmentTemplatesInput) Validate() error {
6164	invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentTemplatesInput"}
6165	if s.AssessmentTemplateArns == nil {
6166		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArns"))
6167	}
6168	if s.AssessmentTemplateArns != nil && len(s.AssessmentTemplateArns) < 1 {
6169		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArns", 1))
6170	}
6171
6172	if invalidParams.Len() > 0 {
6173		return invalidParams
6174	}
6175	return nil
6176}
6177
6178// SetAssessmentTemplateArns sets the AssessmentTemplateArns field's value.
6179func (s *DescribeAssessmentTemplatesInput) SetAssessmentTemplateArns(v []*string) *DescribeAssessmentTemplatesInput {
6180	s.AssessmentTemplateArns = v
6181	return s
6182}
6183
6184type DescribeAssessmentTemplatesOutput struct {
6185	_ struct{} `type:"structure"`
6186
6187	// Information about the assessment templates.
6188	//
6189	// AssessmentTemplates is a required field
6190	AssessmentTemplates []*AssessmentTemplate `locationName:"assessmentTemplates" type:"list" required:"true"`
6191
6192	// Assessment template details that cannot be described. An error code is provided
6193	// for each failed item.
6194	//
6195	// FailedItems is a required field
6196	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
6197}
6198
6199// String returns the string representation
6200func (s DescribeAssessmentTemplatesOutput) String() string {
6201	return awsutil.Prettify(s)
6202}
6203
6204// GoString returns the string representation
6205func (s DescribeAssessmentTemplatesOutput) GoString() string {
6206	return s.String()
6207}
6208
6209// SetAssessmentTemplates sets the AssessmentTemplates field's value.
6210func (s *DescribeAssessmentTemplatesOutput) SetAssessmentTemplates(v []*AssessmentTemplate) *DescribeAssessmentTemplatesOutput {
6211	s.AssessmentTemplates = v
6212	return s
6213}
6214
6215// SetFailedItems sets the FailedItems field's value.
6216func (s *DescribeAssessmentTemplatesOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeAssessmentTemplatesOutput {
6217	s.FailedItems = v
6218	return s
6219}
6220
6221type DescribeCrossAccountAccessRoleInput struct {
6222	_ struct{} `type:"structure"`
6223}
6224
6225// String returns the string representation
6226func (s DescribeCrossAccountAccessRoleInput) String() string {
6227	return awsutil.Prettify(s)
6228}
6229
6230// GoString returns the string representation
6231func (s DescribeCrossAccountAccessRoleInput) GoString() string {
6232	return s.String()
6233}
6234
6235type DescribeCrossAccountAccessRoleOutput struct {
6236	_ struct{} `type:"structure"`
6237
6238	// The date when the cross-account access role was registered.
6239	//
6240	// RegisteredAt is a required field
6241	RegisteredAt *time.Time `locationName:"registeredAt" type:"timestamp" required:"true"`
6242
6243	// The ARN that specifies the IAM role that Amazon Inspector uses to access
6244	// your AWS account.
6245	//
6246	// RoleArn is a required field
6247	RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"`
6248
6249	// A Boolean value that specifies whether the IAM role has the necessary policies
6250	// attached to enable Amazon Inspector to access your AWS account.
6251	//
6252	// Valid is a required field
6253	Valid *bool `locationName:"valid" type:"boolean" required:"true"`
6254}
6255
6256// String returns the string representation
6257func (s DescribeCrossAccountAccessRoleOutput) String() string {
6258	return awsutil.Prettify(s)
6259}
6260
6261// GoString returns the string representation
6262func (s DescribeCrossAccountAccessRoleOutput) GoString() string {
6263	return s.String()
6264}
6265
6266// SetRegisteredAt sets the RegisteredAt field's value.
6267func (s *DescribeCrossAccountAccessRoleOutput) SetRegisteredAt(v time.Time) *DescribeCrossAccountAccessRoleOutput {
6268	s.RegisteredAt = &v
6269	return s
6270}
6271
6272// SetRoleArn sets the RoleArn field's value.
6273func (s *DescribeCrossAccountAccessRoleOutput) SetRoleArn(v string) *DescribeCrossAccountAccessRoleOutput {
6274	s.RoleArn = &v
6275	return s
6276}
6277
6278// SetValid sets the Valid field's value.
6279func (s *DescribeCrossAccountAccessRoleOutput) SetValid(v bool) *DescribeCrossAccountAccessRoleOutput {
6280	s.Valid = &v
6281	return s
6282}
6283
6284type DescribeExclusionsInput struct {
6285	_ struct{} `type:"structure"`
6286
6287	// The list of ARNs that specify the exclusions that you want to describe.
6288	//
6289	// ExclusionArns is a required field
6290	ExclusionArns []*string `locationName:"exclusionArns" min:"1" type:"list" required:"true"`
6291
6292	// The locale into which you want to translate the exclusion's title, description,
6293	// and recommendation.
6294	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
6295}
6296
6297// String returns the string representation
6298func (s DescribeExclusionsInput) String() string {
6299	return awsutil.Prettify(s)
6300}
6301
6302// GoString returns the string representation
6303func (s DescribeExclusionsInput) GoString() string {
6304	return s.String()
6305}
6306
6307// Validate inspects the fields of the type to determine if they are valid.
6308func (s *DescribeExclusionsInput) Validate() error {
6309	invalidParams := request.ErrInvalidParams{Context: "DescribeExclusionsInput"}
6310	if s.ExclusionArns == nil {
6311		invalidParams.Add(request.NewErrParamRequired("ExclusionArns"))
6312	}
6313	if s.ExclusionArns != nil && len(s.ExclusionArns) < 1 {
6314		invalidParams.Add(request.NewErrParamMinLen("ExclusionArns", 1))
6315	}
6316
6317	if invalidParams.Len() > 0 {
6318		return invalidParams
6319	}
6320	return nil
6321}
6322
6323// SetExclusionArns sets the ExclusionArns field's value.
6324func (s *DescribeExclusionsInput) SetExclusionArns(v []*string) *DescribeExclusionsInput {
6325	s.ExclusionArns = v
6326	return s
6327}
6328
6329// SetLocale sets the Locale field's value.
6330func (s *DescribeExclusionsInput) SetLocale(v string) *DescribeExclusionsInput {
6331	s.Locale = &v
6332	return s
6333}
6334
6335type DescribeExclusionsOutput struct {
6336	_ struct{} `type:"structure"`
6337
6338	// Information about the exclusions.
6339	//
6340	// Exclusions is a required field
6341	Exclusions map[string]*Exclusion `locationName:"exclusions" min:"1" type:"map" required:"true"`
6342
6343	// Exclusion details that cannot be described. An error code is provided for
6344	// each failed item.
6345	//
6346	// FailedItems is a required field
6347	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
6348}
6349
6350// String returns the string representation
6351func (s DescribeExclusionsOutput) String() string {
6352	return awsutil.Prettify(s)
6353}
6354
6355// GoString returns the string representation
6356func (s DescribeExclusionsOutput) GoString() string {
6357	return s.String()
6358}
6359
6360// SetExclusions sets the Exclusions field's value.
6361func (s *DescribeExclusionsOutput) SetExclusions(v map[string]*Exclusion) *DescribeExclusionsOutput {
6362	s.Exclusions = v
6363	return s
6364}
6365
6366// SetFailedItems sets the FailedItems field's value.
6367func (s *DescribeExclusionsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeExclusionsOutput {
6368	s.FailedItems = v
6369	return s
6370}
6371
6372type DescribeFindingsInput struct {
6373	_ struct{} `type:"structure"`
6374
6375	// The ARN that specifies the finding that you want to describe.
6376	//
6377	// FindingArns is a required field
6378	FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"`
6379
6380	// The locale into which you want to translate a finding description, recommendation,
6381	// and the short description that identifies the finding.
6382	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
6383}
6384
6385// String returns the string representation
6386func (s DescribeFindingsInput) String() string {
6387	return awsutil.Prettify(s)
6388}
6389
6390// GoString returns the string representation
6391func (s DescribeFindingsInput) GoString() string {
6392	return s.String()
6393}
6394
6395// Validate inspects the fields of the type to determine if they are valid.
6396func (s *DescribeFindingsInput) Validate() error {
6397	invalidParams := request.ErrInvalidParams{Context: "DescribeFindingsInput"}
6398	if s.FindingArns == nil {
6399		invalidParams.Add(request.NewErrParamRequired("FindingArns"))
6400	}
6401	if s.FindingArns != nil && len(s.FindingArns) < 1 {
6402		invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1))
6403	}
6404
6405	if invalidParams.Len() > 0 {
6406		return invalidParams
6407	}
6408	return nil
6409}
6410
6411// SetFindingArns sets the FindingArns field's value.
6412func (s *DescribeFindingsInput) SetFindingArns(v []*string) *DescribeFindingsInput {
6413	s.FindingArns = v
6414	return s
6415}
6416
6417// SetLocale sets the Locale field's value.
6418func (s *DescribeFindingsInput) SetLocale(v string) *DescribeFindingsInput {
6419	s.Locale = &v
6420	return s
6421}
6422
6423type DescribeFindingsOutput struct {
6424	_ struct{} `type:"structure"`
6425
6426	// Finding details that cannot be described. An error code is provided for each
6427	// failed item.
6428	//
6429	// FailedItems is a required field
6430	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
6431
6432	// Information about the finding.
6433	//
6434	// Findings is a required field
6435	Findings []*Finding `locationName:"findings" type:"list" required:"true"`
6436}
6437
6438// String returns the string representation
6439func (s DescribeFindingsOutput) String() string {
6440	return awsutil.Prettify(s)
6441}
6442
6443// GoString returns the string representation
6444func (s DescribeFindingsOutput) GoString() string {
6445	return s.String()
6446}
6447
6448// SetFailedItems sets the FailedItems field's value.
6449func (s *DescribeFindingsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeFindingsOutput {
6450	s.FailedItems = v
6451	return s
6452}
6453
6454// SetFindings sets the Findings field's value.
6455func (s *DescribeFindingsOutput) SetFindings(v []*Finding) *DescribeFindingsOutput {
6456	s.Findings = v
6457	return s
6458}
6459
6460type DescribeResourceGroupsInput struct {
6461	_ struct{} `type:"structure"`
6462
6463	// The ARN that specifies the resource group that you want to describe.
6464	//
6465	// ResourceGroupArns is a required field
6466	ResourceGroupArns []*string `locationName:"resourceGroupArns" min:"1" type:"list" required:"true"`
6467}
6468
6469// String returns the string representation
6470func (s DescribeResourceGroupsInput) String() string {
6471	return awsutil.Prettify(s)
6472}
6473
6474// GoString returns the string representation
6475func (s DescribeResourceGroupsInput) GoString() string {
6476	return s.String()
6477}
6478
6479// Validate inspects the fields of the type to determine if they are valid.
6480func (s *DescribeResourceGroupsInput) Validate() error {
6481	invalidParams := request.ErrInvalidParams{Context: "DescribeResourceGroupsInput"}
6482	if s.ResourceGroupArns == nil {
6483		invalidParams.Add(request.NewErrParamRequired("ResourceGroupArns"))
6484	}
6485	if s.ResourceGroupArns != nil && len(s.ResourceGroupArns) < 1 {
6486		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArns", 1))
6487	}
6488
6489	if invalidParams.Len() > 0 {
6490		return invalidParams
6491	}
6492	return nil
6493}
6494
6495// SetResourceGroupArns sets the ResourceGroupArns field's value.
6496func (s *DescribeResourceGroupsInput) SetResourceGroupArns(v []*string) *DescribeResourceGroupsInput {
6497	s.ResourceGroupArns = v
6498	return s
6499}
6500
6501type DescribeResourceGroupsOutput struct {
6502	_ struct{} `type:"structure"`
6503
6504	// Resource group details that cannot be described. An error code is provided
6505	// for each failed item.
6506	//
6507	// FailedItems is a required field
6508	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
6509
6510	// Information about a resource group.
6511	//
6512	// ResourceGroups is a required field
6513	ResourceGroups []*ResourceGroup `locationName:"resourceGroups" type:"list" required:"true"`
6514}
6515
6516// String returns the string representation
6517func (s DescribeResourceGroupsOutput) String() string {
6518	return awsutil.Prettify(s)
6519}
6520
6521// GoString returns the string representation
6522func (s DescribeResourceGroupsOutput) GoString() string {
6523	return s.String()
6524}
6525
6526// SetFailedItems sets the FailedItems field's value.
6527func (s *DescribeResourceGroupsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeResourceGroupsOutput {
6528	s.FailedItems = v
6529	return s
6530}
6531
6532// SetResourceGroups sets the ResourceGroups field's value.
6533func (s *DescribeResourceGroupsOutput) SetResourceGroups(v []*ResourceGroup) *DescribeResourceGroupsOutput {
6534	s.ResourceGroups = v
6535	return s
6536}
6537
6538type DescribeRulesPackagesInput struct {
6539	_ struct{} `type:"structure"`
6540
6541	// The locale that you want to translate a rules package description into.
6542	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
6543
6544	// The ARN that specifies the rules package that you want to describe.
6545	//
6546	// RulesPackageArns is a required field
6547	RulesPackageArns []*string `locationName:"rulesPackageArns" min:"1" type:"list" required:"true"`
6548}
6549
6550// String returns the string representation
6551func (s DescribeRulesPackagesInput) String() string {
6552	return awsutil.Prettify(s)
6553}
6554
6555// GoString returns the string representation
6556func (s DescribeRulesPackagesInput) GoString() string {
6557	return s.String()
6558}
6559
6560// Validate inspects the fields of the type to determine if they are valid.
6561func (s *DescribeRulesPackagesInput) Validate() error {
6562	invalidParams := request.ErrInvalidParams{Context: "DescribeRulesPackagesInput"}
6563	if s.RulesPackageArns == nil {
6564		invalidParams.Add(request.NewErrParamRequired("RulesPackageArns"))
6565	}
6566	if s.RulesPackageArns != nil && len(s.RulesPackageArns) < 1 {
6567		invalidParams.Add(request.NewErrParamMinLen("RulesPackageArns", 1))
6568	}
6569
6570	if invalidParams.Len() > 0 {
6571		return invalidParams
6572	}
6573	return nil
6574}
6575
6576// SetLocale sets the Locale field's value.
6577func (s *DescribeRulesPackagesInput) SetLocale(v string) *DescribeRulesPackagesInput {
6578	s.Locale = &v
6579	return s
6580}
6581
6582// SetRulesPackageArns sets the RulesPackageArns field's value.
6583func (s *DescribeRulesPackagesInput) SetRulesPackageArns(v []*string) *DescribeRulesPackagesInput {
6584	s.RulesPackageArns = v
6585	return s
6586}
6587
6588type DescribeRulesPackagesOutput struct {
6589	_ struct{} `type:"structure"`
6590
6591	// Rules package details that cannot be described. An error code is provided
6592	// for each failed item.
6593	//
6594	// FailedItems is a required field
6595	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
6596
6597	// Information about the rules package.
6598	//
6599	// RulesPackages is a required field
6600	RulesPackages []*RulesPackage `locationName:"rulesPackages" type:"list" required:"true"`
6601}
6602
6603// String returns the string representation
6604func (s DescribeRulesPackagesOutput) String() string {
6605	return awsutil.Prettify(s)
6606}
6607
6608// GoString returns the string representation
6609func (s DescribeRulesPackagesOutput) GoString() string {
6610	return s.String()
6611}
6612
6613// SetFailedItems sets the FailedItems field's value.
6614func (s *DescribeRulesPackagesOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeRulesPackagesOutput {
6615	s.FailedItems = v
6616	return s
6617}
6618
6619// SetRulesPackages sets the RulesPackages field's value.
6620func (s *DescribeRulesPackagesOutput) SetRulesPackages(v []*RulesPackage) *DescribeRulesPackagesOutput {
6621	s.RulesPackages = v
6622	return s
6623}
6624
6625// This data type is used in the AssessmentTemplateFilter data type.
6626type DurationRange struct {
6627	_ struct{} `type:"structure"`
6628
6629	// The maximum value of the duration range. Must be less than or equal to 604800
6630	// seconds (1 week).
6631	MaxSeconds *int64 `locationName:"maxSeconds" min:"180" type:"integer"`
6632
6633	// The minimum value of the duration range. Must be greater than zero.
6634	MinSeconds *int64 `locationName:"minSeconds" min:"180" type:"integer"`
6635}
6636
6637// String returns the string representation
6638func (s DurationRange) String() string {
6639	return awsutil.Prettify(s)
6640}
6641
6642// GoString returns the string representation
6643func (s DurationRange) GoString() string {
6644	return s.String()
6645}
6646
6647// Validate inspects the fields of the type to determine if they are valid.
6648func (s *DurationRange) Validate() error {
6649	invalidParams := request.ErrInvalidParams{Context: "DurationRange"}
6650	if s.MaxSeconds != nil && *s.MaxSeconds < 180 {
6651		invalidParams.Add(request.NewErrParamMinValue("MaxSeconds", 180))
6652	}
6653	if s.MinSeconds != nil && *s.MinSeconds < 180 {
6654		invalidParams.Add(request.NewErrParamMinValue("MinSeconds", 180))
6655	}
6656
6657	if invalidParams.Len() > 0 {
6658		return invalidParams
6659	}
6660	return nil
6661}
6662
6663// SetMaxSeconds sets the MaxSeconds field's value.
6664func (s *DurationRange) SetMaxSeconds(v int64) *DurationRange {
6665	s.MaxSeconds = &v
6666	return s
6667}
6668
6669// SetMinSeconds sets the MinSeconds field's value.
6670func (s *DurationRange) SetMinSeconds(v int64) *DurationRange {
6671	s.MinSeconds = &v
6672	return s
6673}
6674
6675// This data type is used in the Subscription data type.
6676type EventSubscription struct {
6677	_ struct{} `type:"structure"`
6678
6679	// The event for which Amazon Simple Notification Service (SNS) notifications
6680	// are sent.
6681	//
6682	// Event is a required field
6683	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
6684
6685	// The time at which SubscribeToEvent is called.
6686	//
6687	// SubscribedAt is a required field
6688	SubscribedAt *time.Time `locationName:"subscribedAt" type:"timestamp" required:"true"`
6689}
6690
6691// String returns the string representation
6692func (s EventSubscription) String() string {
6693	return awsutil.Prettify(s)
6694}
6695
6696// GoString returns the string representation
6697func (s EventSubscription) GoString() string {
6698	return s.String()
6699}
6700
6701// SetEvent sets the Event field's value.
6702func (s *EventSubscription) SetEvent(v string) *EventSubscription {
6703	s.Event = &v
6704	return s
6705}
6706
6707// SetSubscribedAt sets the SubscribedAt field's value.
6708func (s *EventSubscription) SetSubscribedAt(v time.Time) *EventSubscription {
6709	s.SubscribedAt = &v
6710	return s
6711}
6712
6713// Contains information about what was excluded from an assessment run.
6714type Exclusion struct {
6715	_ struct{} `type:"structure"`
6716
6717	// The ARN that specifies the exclusion.
6718	//
6719	// Arn is a required field
6720	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
6721
6722	// The system-defined attributes for the exclusion.
6723	Attributes []*Attribute `locationName:"attributes" type:"list"`
6724
6725	// The description of the exclusion.
6726	//
6727	// Description is a required field
6728	Description *string `locationName:"description" type:"string" required:"true"`
6729
6730	// The recommendation for the exclusion.
6731	//
6732	// Recommendation is a required field
6733	Recommendation *string `locationName:"recommendation" type:"string" required:"true"`
6734
6735	// The AWS resources for which the exclusion pertains.
6736	//
6737	// Scopes is a required field
6738	Scopes []*Scope `locationName:"scopes" min:"1" type:"list" required:"true"`
6739
6740	// The name of the exclusion.
6741	//
6742	// Title is a required field
6743	Title *string `locationName:"title" type:"string" required:"true"`
6744}
6745
6746// String returns the string representation
6747func (s Exclusion) String() string {
6748	return awsutil.Prettify(s)
6749}
6750
6751// GoString returns the string representation
6752func (s Exclusion) GoString() string {
6753	return s.String()
6754}
6755
6756// SetArn sets the Arn field's value.
6757func (s *Exclusion) SetArn(v string) *Exclusion {
6758	s.Arn = &v
6759	return s
6760}
6761
6762// SetAttributes sets the Attributes field's value.
6763func (s *Exclusion) SetAttributes(v []*Attribute) *Exclusion {
6764	s.Attributes = v
6765	return s
6766}
6767
6768// SetDescription sets the Description field's value.
6769func (s *Exclusion) SetDescription(v string) *Exclusion {
6770	s.Description = &v
6771	return s
6772}
6773
6774// SetRecommendation sets the Recommendation field's value.
6775func (s *Exclusion) SetRecommendation(v string) *Exclusion {
6776	s.Recommendation = &v
6777	return s
6778}
6779
6780// SetScopes sets the Scopes field's value.
6781func (s *Exclusion) SetScopes(v []*Scope) *Exclusion {
6782	s.Scopes = v
6783	return s
6784}
6785
6786// SetTitle sets the Title field's value.
6787func (s *Exclusion) SetTitle(v string) *Exclusion {
6788	s.Title = &v
6789	return s
6790}
6791
6792// Contains information about what is excluded from an assessment run given
6793// the current state of the assessment template.
6794type ExclusionPreview struct {
6795	_ struct{} `type:"structure"`
6796
6797	// The system-defined attributes for the exclusion preview.
6798	Attributes []*Attribute `locationName:"attributes" type:"list"`
6799
6800	// The description of the exclusion preview.
6801	//
6802	// Description is a required field
6803	Description *string `locationName:"description" type:"string" required:"true"`
6804
6805	// The recommendation for the exclusion preview.
6806	//
6807	// Recommendation is a required field
6808	Recommendation *string `locationName:"recommendation" type:"string" required:"true"`
6809
6810	// The AWS resources for which the exclusion preview pertains.
6811	//
6812	// Scopes is a required field
6813	Scopes []*Scope `locationName:"scopes" min:"1" type:"list" required:"true"`
6814
6815	// The name of the exclusion preview.
6816	//
6817	// Title is a required field
6818	Title *string `locationName:"title" type:"string" required:"true"`
6819}
6820
6821// String returns the string representation
6822func (s ExclusionPreview) String() string {
6823	return awsutil.Prettify(s)
6824}
6825
6826// GoString returns the string representation
6827func (s ExclusionPreview) GoString() string {
6828	return s.String()
6829}
6830
6831// SetAttributes sets the Attributes field's value.
6832func (s *ExclusionPreview) SetAttributes(v []*Attribute) *ExclusionPreview {
6833	s.Attributes = v
6834	return s
6835}
6836
6837// SetDescription sets the Description field's value.
6838func (s *ExclusionPreview) SetDescription(v string) *ExclusionPreview {
6839	s.Description = &v
6840	return s
6841}
6842
6843// SetRecommendation sets the Recommendation field's value.
6844func (s *ExclusionPreview) SetRecommendation(v string) *ExclusionPreview {
6845	s.Recommendation = &v
6846	return s
6847}
6848
6849// SetScopes sets the Scopes field's value.
6850func (s *ExclusionPreview) SetScopes(v []*Scope) *ExclusionPreview {
6851	s.Scopes = v
6852	return s
6853}
6854
6855// SetTitle sets the Title field's value.
6856func (s *ExclusionPreview) SetTitle(v string) *ExclusionPreview {
6857	s.Title = &v
6858	return s
6859}
6860
6861// Includes details about the failed items.
6862type FailedItemDetails struct {
6863	_ struct{} `type:"structure"`
6864
6865	// The status code of a failed item.
6866	//
6867	// FailureCode is a required field
6868	FailureCode *string `locationName:"failureCode" type:"string" required:"true" enum:"FailedItemErrorCode"`
6869
6870	// Indicates whether you can immediately retry a request for this item for a
6871	// specified resource.
6872	//
6873	// Retryable is a required field
6874	Retryable *bool `locationName:"retryable" type:"boolean" required:"true"`
6875}
6876
6877// String returns the string representation
6878func (s FailedItemDetails) String() string {
6879	return awsutil.Prettify(s)
6880}
6881
6882// GoString returns the string representation
6883func (s FailedItemDetails) GoString() string {
6884	return s.String()
6885}
6886
6887// SetFailureCode sets the FailureCode field's value.
6888func (s *FailedItemDetails) SetFailureCode(v string) *FailedItemDetails {
6889	s.FailureCode = &v
6890	return s
6891}
6892
6893// SetRetryable sets the Retryable field's value.
6894func (s *FailedItemDetails) SetRetryable(v bool) *FailedItemDetails {
6895	s.Retryable = &v
6896	return s
6897}
6898
6899// Contains information about an Amazon Inspector finding. This data type is
6900// used as the response element in the DescribeFindings action.
6901type Finding struct {
6902	_ struct{} `type:"structure"`
6903
6904	// The ARN that specifies the finding.
6905	//
6906	// Arn is a required field
6907	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
6908
6909	// A collection of attributes of the host from which the finding is generated.
6910	AssetAttributes *AssetAttributes `locationName:"assetAttributes" type:"structure"`
6911
6912	// The type of the host from which the finding is generated.
6913	AssetType *string `locationName:"assetType" type:"string" enum:"AssetType"`
6914
6915	// The system-defined attributes for the finding.
6916	//
6917	// Attributes is a required field
6918	Attributes []*Attribute `locationName:"attributes" type:"list" required:"true"`
6919
6920	// This data element is currently not used.
6921	Confidence *int64 `locationName:"confidence" type:"integer"`
6922
6923	// The time when the finding was generated.
6924	//
6925	// CreatedAt is a required field
6926	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
6927
6928	// The description of the finding.
6929	Description *string `locationName:"description" type:"string"`
6930
6931	// The ID of the finding.
6932	Id *string `locationName:"id" type:"string"`
6933
6934	// This data element is currently not used.
6935	IndicatorOfCompromise *bool `locationName:"indicatorOfCompromise" type:"boolean"`
6936
6937	// The numeric value of the finding severity.
6938	NumericSeverity *float64 `locationName:"numericSeverity" type:"double"`
6939
6940	// The recommendation for the finding.
6941	Recommendation *string `locationName:"recommendation" type:"string"`
6942
6943	// The schema version of this data type.
6944	SchemaVersion *int64 `locationName:"schemaVersion" type:"integer"`
6945
6946	// The data element is set to "Inspector".
6947	Service *string `locationName:"service" type:"string"`
6948
6949	// This data type is used in the Finding data type.
6950	ServiceAttributes *ServiceAttributes `locationName:"serviceAttributes" type:"structure"`
6951
6952	// The finding severity. Values can be set to High, Medium, Low, and Informational.
6953	Severity *string `locationName:"severity" type:"string" enum:"Severity"`
6954
6955	// The name of the finding.
6956	Title *string `locationName:"title" type:"string"`
6957
6958	// The time when AddAttributesToFindings is called.
6959	//
6960	// UpdatedAt is a required field
6961	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
6962
6963	// The user-defined attributes that are assigned to the finding.
6964	//
6965	// UserAttributes is a required field
6966	UserAttributes []*Attribute `locationName:"userAttributes" type:"list" required:"true"`
6967}
6968
6969// String returns the string representation
6970func (s Finding) String() string {
6971	return awsutil.Prettify(s)
6972}
6973
6974// GoString returns the string representation
6975func (s Finding) GoString() string {
6976	return s.String()
6977}
6978
6979// SetArn sets the Arn field's value.
6980func (s *Finding) SetArn(v string) *Finding {
6981	s.Arn = &v
6982	return s
6983}
6984
6985// SetAssetAttributes sets the AssetAttributes field's value.
6986func (s *Finding) SetAssetAttributes(v *AssetAttributes) *Finding {
6987	s.AssetAttributes = v
6988	return s
6989}
6990
6991// SetAssetType sets the AssetType field's value.
6992func (s *Finding) SetAssetType(v string) *Finding {
6993	s.AssetType = &v
6994	return s
6995}
6996
6997// SetAttributes sets the Attributes field's value.
6998func (s *Finding) SetAttributes(v []*Attribute) *Finding {
6999	s.Attributes = v
7000	return s
7001}
7002
7003// SetConfidence sets the Confidence field's value.
7004func (s *Finding) SetConfidence(v int64) *Finding {
7005	s.Confidence = &v
7006	return s
7007}
7008
7009// SetCreatedAt sets the CreatedAt field's value.
7010func (s *Finding) SetCreatedAt(v time.Time) *Finding {
7011	s.CreatedAt = &v
7012	return s
7013}
7014
7015// SetDescription sets the Description field's value.
7016func (s *Finding) SetDescription(v string) *Finding {
7017	s.Description = &v
7018	return s
7019}
7020
7021// SetId sets the Id field's value.
7022func (s *Finding) SetId(v string) *Finding {
7023	s.Id = &v
7024	return s
7025}
7026
7027// SetIndicatorOfCompromise sets the IndicatorOfCompromise field's value.
7028func (s *Finding) SetIndicatorOfCompromise(v bool) *Finding {
7029	s.IndicatorOfCompromise = &v
7030	return s
7031}
7032
7033// SetNumericSeverity sets the NumericSeverity field's value.
7034func (s *Finding) SetNumericSeverity(v float64) *Finding {
7035	s.NumericSeverity = &v
7036	return s
7037}
7038
7039// SetRecommendation sets the Recommendation field's value.
7040func (s *Finding) SetRecommendation(v string) *Finding {
7041	s.Recommendation = &v
7042	return s
7043}
7044
7045// SetSchemaVersion sets the SchemaVersion field's value.
7046func (s *Finding) SetSchemaVersion(v int64) *Finding {
7047	s.SchemaVersion = &v
7048	return s
7049}
7050
7051// SetService sets the Service field's value.
7052func (s *Finding) SetService(v string) *Finding {
7053	s.Service = &v
7054	return s
7055}
7056
7057// SetServiceAttributes sets the ServiceAttributes field's value.
7058func (s *Finding) SetServiceAttributes(v *ServiceAttributes) *Finding {
7059	s.ServiceAttributes = v
7060	return s
7061}
7062
7063// SetSeverity sets the Severity field's value.
7064func (s *Finding) SetSeverity(v string) *Finding {
7065	s.Severity = &v
7066	return s
7067}
7068
7069// SetTitle sets the Title field's value.
7070func (s *Finding) SetTitle(v string) *Finding {
7071	s.Title = &v
7072	return s
7073}
7074
7075// SetUpdatedAt sets the UpdatedAt field's value.
7076func (s *Finding) SetUpdatedAt(v time.Time) *Finding {
7077	s.UpdatedAt = &v
7078	return s
7079}
7080
7081// SetUserAttributes sets the UserAttributes field's value.
7082func (s *Finding) SetUserAttributes(v []*Attribute) *Finding {
7083	s.UserAttributes = v
7084	return s
7085}
7086
7087// This data type is used as a request parameter in the ListFindings action.
7088type FindingFilter struct {
7089	_ struct{} `type:"structure"`
7090
7091	// For a record to match a filter, one of the values that is specified for this
7092	// data type property must be the exact match of the value of the agentId property
7093	// of the Finding data type.
7094	AgentIds []*string `locationName:"agentIds" type:"list"`
7095
7096	// For a record to match a filter, the list of values that are specified for
7097	// this data type property must be contained in the list of values of the attributes
7098	// property of the Finding data type.
7099	Attributes []*Attribute `locationName:"attributes" type:"list"`
7100
7101	// For a record to match a filter, one of the values that is specified for this
7102	// data type property must be the exact match of the value of the autoScalingGroup
7103	// property of the Finding data type.
7104	AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"`
7105
7106	// The time range during which the finding is generated.
7107	CreationTimeRange *TimestampRange `locationName:"creationTimeRange" type:"structure"`
7108
7109	// For a record to match a filter, one of the values that is specified for this
7110	// data type property must be the exact match of the value of the ruleName property
7111	// of the Finding data type.
7112	RuleNames []*string `locationName:"ruleNames" type:"list"`
7113
7114	// For a record to match a filter, one of the values that is specified for this
7115	// data type property must be the exact match of the value of the rulesPackageArn
7116	// property of the Finding data type.
7117	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"`
7118
7119	// For a record to match a filter, one of the values that is specified for this
7120	// data type property must be the exact match of the value of the severity property
7121	// of the Finding data type.
7122	Severities []*string `locationName:"severities" type:"list"`
7123
7124	// For a record to match a filter, the value that is specified for this data
7125	// type property must be contained in the list of values of the userAttributes
7126	// property of the Finding data type.
7127	UserAttributes []*Attribute `locationName:"userAttributes" type:"list"`
7128}
7129
7130// String returns the string representation
7131func (s FindingFilter) String() string {
7132	return awsutil.Prettify(s)
7133}
7134
7135// GoString returns the string representation
7136func (s FindingFilter) GoString() string {
7137	return s.String()
7138}
7139
7140// Validate inspects the fields of the type to determine if they are valid.
7141func (s *FindingFilter) Validate() error {
7142	invalidParams := request.ErrInvalidParams{Context: "FindingFilter"}
7143	if s.Attributes != nil {
7144		for i, v := range s.Attributes {
7145			if v == nil {
7146				continue
7147			}
7148			if err := v.Validate(); err != nil {
7149				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams))
7150			}
7151		}
7152	}
7153	if s.UserAttributes != nil {
7154		for i, v := range s.UserAttributes {
7155			if v == nil {
7156				continue
7157			}
7158			if err := v.Validate(); err != nil {
7159				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributes", i), err.(request.ErrInvalidParams))
7160			}
7161		}
7162	}
7163
7164	if invalidParams.Len() > 0 {
7165		return invalidParams
7166	}
7167	return nil
7168}
7169
7170// SetAgentIds sets the AgentIds field's value.
7171func (s *FindingFilter) SetAgentIds(v []*string) *FindingFilter {
7172	s.AgentIds = v
7173	return s
7174}
7175
7176// SetAttributes sets the Attributes field's value.
7177func (s *FindingFilter) SetAttributes(v []*Attribute) *FindingFilter {
7178	s.Attributes = v
7179	return s
7180}
7181
7182// SetAutoScalingGroups sets the AutoScalingGroups field's value.
7183func (s *FindingFilter) SetAutoScalingGroups(v []*string) *FindingFilter {
7184	s.AutoScalingGroups = v
7185	return s
7186}
7187
7188// SetCreationTimeRange sets the CreationTimeRange field's value.
7189func (s *FindingFilter) SetCreationTimeRange(v *TimestampRange) *FindingFilter {
7190	s.CreationTimeRange = v
7191	return s
7192}
7193
7194// SetRuleNames sets the RuleNames field's value.
7195func (s *FindingFilter) SetRuleNames(v []*string) *FindingFilter {
7196	s.RuleNames = v
7197	return s
7198}
7199
7200// SetRulesPackageArns sets the RulesPackageArns field's value.
7201func (s *FindingFilter) SetRulesPackageArns(v []*string) *FindingFilter {
7202	s.RulesPackageArns = v
7203	return s
7204}
7205
7206// SetSeverities sets the Severities field's value.
7207func (s *FindingFilter) SetSeverities(v []*string) *FindingFilter {
7208	s.Severities = v
7209	return s
7210}
7211
7212// SetUserAttributes sets the UserAttributes field's value.
7213func (s *FindingFilter) SetUserAttributes(v []*Attribute) *FindingFilter {
7214	s.UserAttributes = v
7215	return s
7216}
7217
7218type GetAssessmentReportInput struct {
7219	_ struct{} `type:"structure"`
7220
7221	// The ARN that specifies the assessment run for which you want to generate
7222	// a report.
7223	//
7224	// AssessmentRunArn is a required field
7225	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
7226
7227	// Specifies the file format (html or pdf) of the assessment report that you
7228	// want to generate.
7229	//
7230	// ReportFileFormat is a required field
7231	ReportFileFormat *string `locationName:"reportFileFormat" type:"string" required:"true" enum:"ReportFileFormat"`
7232
7233	// Specifies the type of the assessment report that you want to generate. There
7234	// are two types of assessment reports: a finding report and a full report.
7235	// For more information, see Assessment Reports (https://docs.aws.amazon.com/inspector/latest/userguide/inspector_reports.html).
7236	//
7237	// ReportType is a required field
7238	ReportType *string `locationName:"reportType" type:"string" required:"true" enum:"ReportType"`
7239}
7240
7241// String returns the string representation
7242func (s GetAssessmentReportInput) String() string {
7243	return awsutil.Prettify(s)
7244}
7245
7246// GoString returns the string representation
7247func (s GetAssessmentReportInput) GoString() string {
7248	return s.String()
7249}
7250
7251// Validate inspects the fields of the type to determine if they are valid.
7252func (s *GetAssessmentReportInput) Validate() error {
7253	invalidParams := request.ErrInvalidParams{Context: "GetAssessmentReportInput"}
7254	if s.AssessmentRunArn == nil {
7255		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
7256	}
7257	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
7258		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
7259	}
7260	if s.ReportFileFormat == nil {
7261		invalidParams.Add(request.NewErrParamRequired("ReportFileFormat"))
7262	}
7263	if s.ReportType == nil {
7264		invalidParams.Add(request.NewErrParamRequired("ReportType"))
7265	}
7266
7267	if invalidParams.Len() > 0 {
7268		return invalidParams
7269	}
7270	return nil
7271}
7272
7273// SetAssessmentRunArn sets the AssessmentRunArn field's value.
7274func (s *GetAssessmentReportInput) SetAssessmentRunArn(v string) *GetAssessmentReportInput {
7275	s.AssessmentRunArn = &v
7276	return s
7277}
7278
7279// SetReportFileFormat sets the ReportFileFormat field's value.
7280func (s *GetAssessmentReportInput) SetReportFileFormat(v string) *GetAssessmentReportInput {
7281	s.ReportFileFormat = &v
7282	return s
7283}
7284
7285// SetReportType sets the ReportType field's value.
7286func (s *GetAssessmentReportInput) SetReportType(v string) *GetAssessmentReportInput {
7287	s.ReportType = &v
7288	return s
7289}
7290
7291type GetAssessmentReportOutput struct {
7292	_ struct{} `type:"structure"`
7293
7294	// Specifies the status of the request to generate an assessment report.
7295	//
7296	// Status is a required field
7297	Status *string `locationName:"status" type:"string" required:"true" enum:"ReportStatus"`
7298
7299	// Specifies the URL where you can find the generated assessment report. This
7300	// parameter is only returned if the report is successfully generated.
7301	Url *string `locationName:"url" type:"string"`
7302}
7303
7304// String returns the string representation
7305func (s GetAssessmentReportOutput) String() string {
7306	return awsutil.Prettify(s)
7307}
7308
7309// GoString returns the string representation
7310func (s GetAssessmentReportOutput) GoString() string {
7311	return s.String()
7312}
7313
7314// SetStatus sets the Status field's value.
7315func (s *GetAssessmentReportOutput) SetStatus(v string) *GetAssessmentReportOutput {
7316	s.Status = &v
7317	return s
7318}
7319
7320// SetUrl sets the Url field's value.
7321func (s *GetAssessmentReportOutput) SetUrl(v string) *GetAssessmentReportOutput {
7322	s.Url = &v
7323	return s
7324}
7325
7326type GetExclusionsPreviewInput struct {
7327	_ struct{} `type:"structure"`
7328
7329	// The ARN that specifies the assessment template for which the exclusions preview
7330	// was requested.
7331	//
7332	// AssessmentTemplateArn is a required field
7333	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
7334
7335	// The locale into which you want to translate the exclusion's title, description,
7336	// and recommendation.
7337	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
7338
7339	// You can use this parameter to indicate the maximum number of items you want
7340	// in the response. The default value is 100. The maximum value is 500.
7341	MaxResults *int64 `locationName:"maxResults" type:"integer"`
7342
7343	// You can use this parameter when paginating results. Set the value of this
7344	// parameter to null on your first call to the GetExclusionsPreviewRequest action.
7345	// Subsequent calls to the action fill nextToken in the request with the value
7346	// of nextToken from the previous response to continue listing data.
7347	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7348
7349	// The unique identifier associated of the exclusions preview.
7350	//
7351	// PreviewToken is a required field
7352	PreviewToken *string `locationName:"previewToken" type:"string" required:"true"`
7353}
7354
7355// String returns the string representation
7356func (s GetExclusionsPreviewInput) String() string {
7357	return awsutil.Prettify(s)
7358}
7359
7360// GoString returns the string representation
7361func (s GetExclusionsPreviewInput) GoString() string {
7362	return s.String()
7363}
7364
7365// Validate inspects the fields of the type to determine if they are valid.
7366func (s *GetExclusionsPreviewInput) Validate() error {
7367	invalidParams := request.ErrInvalidParams{Context: "GetExclusionsPreviewInput"}
7368	if s.AssessmentTemplateArn == nil {
7369		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
7370	}
7371	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
7372		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
7373	}
7374	if s.NextToken != nil && len(*s.NextToken) < 1 {
7375		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7376	}
7377	if s.PreviewToken == nil {
7378		invalidParams.Add(request.NewErrParamRequired("PreviewToken"))
7379	}
7380
7381	if invalidParams.Len() > 0 {
7382		return invalidParams
7383	}
7384	return nil
7385}
7386
7387// SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
7388func (s *GetExclusionsPreviewInput) SetAssessmentTemplateArn(v string) *GetExclusionsPreviewInput {
7389	s.AssessmentTemplateArn = &v
7390	return s
7391}
7392
7393// SetLocale sets the Locale field's value.
7394func (s *GetExclusionsPreviewInput) SetLocale(v string) *GetExclusionsPreviewInput {
7395	s.Locale = &v
7396	return s
7397}
7398
7399// SetMaxResults sets the MaxResults field's value.
7400func (s *GetExclusionsPreviewInput) SetMaxResults(v int64) *GetExclusionsPreviewInput {
7401	s.MaxResults = &v
7402	return s
7403}
7404
7405// SetNextToken sets the NextToken field's value.
7406func (s *GetExclusionsPreviewInput) SetNextToken(v string) *GetExclusionsPreviewInput {
7407	s.NextToken = &v
7408	return s
7409}
7410
7411// SetPreviewToken sets the PreviewToken field's value.
7412func (s *GetExclusionsPreviewInput) SetPreviewToken(v string) *GetExclusionsPreviewInput {
7413	s.PreviewToken = &v
7414	return s
7415}
7416
7417type GetExclusionsPreviewOutput struct {
7418	_ struct{} `type:"structure"`
7419
7420	// Information about the exclusions included in the preview.
7421	ExclusionPreviews []*ExclusionPreview `locationName:"exclusionPreviews" type:"list"`
7422
7423	// When a response is generated, if there is more data to be listed, this parameters
7424	// is present in the response and contains the value to use for the nextToken
7425	// parameter in a subsequent pagination request. If there is no more data to
7426	// be listed, this parameter is set to null.
7427	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7428
7429	// Specifies the status of the request to generate an exclusions preview.
7430	//
7431	// PreviewStatus is a required field
7432	PreviewStatus *string `locationName:"previewStatus" type:"string" required:"true" enum:"PreviewStatus"`
7433}
7434
7435// String returns the string representation
7436func (s GetExclusionsPreviewOutput) String() string {
7437	return awsutil.Prettify(s)
7438}
7439
7440// GoString returns the string representation
7441func (s GetExclusionsPreviewOutput) GoString() string {
7442	return s.String()
7443}
7444
7445// SetExclusionPreviews sets the ExclusionPreviews field's value.
7446func (s *GetExclusionsPreviewOutput) SetExclusionPreviews(v []*ExclusionPreview) *GetExclusionsPreviewOutput {
7447	s.ExclusionPreviews = v
7448	return s
7449}
7450
7451// SetNextToken sets the NextToken field's value.
7452func (s *GetExclusionsPreviewOutput) SetNextToken(v string) *GetExclusionsPreviewOutput {
7453	s.NextToken = &v
7454	return s
7455}
7456
7457// SetPreviewStatus sets the PreviewStatus field's value.
7458func (s *GetExclusionsPreviewOutput) SetPreviewStatus(v string) *GetExclusionsPreviewOutput {
7459	s.PreviewStatus = &v
7460	return s
7461}
7462
7463type GetTelemetryMetadataInput struct {
7464	_ struct{} `type:"structure"`
7465
7466	// The ARN that specifies the assessment run that has the telemetry data that
7467	// you want to obtain.
7468	//
7469	// AssessmentRunArn is a required field
7470	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
7471}
7472
7473// String returns the string representation
7474func (s GetTelemetryMetadataInput) String() string {
7475	return awsutil.Prettify(s)
7476}
7477
7478// GoString returns the string representation
7479func (s GetTelemetryMetadataInput) GoString() string {
7480	return s.String()
7481}
7482
7483// Validate inspects the fields of the type to determine if they are valid.
7484func (s *GetTelemetryMetadataInput) Validate() error {
7485	invalidParams := request.ErrInvalidParams{Context: "GetTelemetryMetadataInput"}
7486	if s.AssessmentRunArn == nil {
7487		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
7488	}
7489	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
7490		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
7491	}
7492
7493	if invalidParams.Len() > 0 {
7494		return invalidParams
7495	}
7496	return nil
7497}
7498
7499// SetAssessmentRunArn sets the AssessmentRunArn field's value.
7500func (s *GetTelemetryMetadataInput) SetAssessmentRunArn(v string) *GetTelemetryMetadataInput {
7501	s.AssessmentRunArn = &v
7502	return s
7503}
7504
7505type GetTelemetryMetadataOutput struct {
7506	_ struct{} `type:"structure"`
7507
7508	// Telemetry details.
7509	//
7510	// TelemetryMetadata is a required field
7511	TelemetryMetadata []*TelemetryMetadata `locationName:"telemetryMetadata" type:"list" required:"true"`
7512}
7513
7514// String returns the string representation
7515func (s GetTelemetryMetadataOutput) String() string {
7516	return awsutil.Prettify(s)
7517}
7518
7519// GoString returns the string representation
7520func (s GetTelemetryMetadataOutput) GoString() string {
7521	return s.String()
7522}
7523
7524// SetTelemetryMetadata sets the TelemetryMetadata field's value.
7525func (s *GetTelemetryMetadataOutput) SetTelemetryMetadata(v []*TelemetryMetadata) *GetTelemetryMetadataOutput {
7526	s.TelemetryMetadata = v
7527	return s
7528}
7529
7530// Internal server error.
7531type InternalException struct {
7532	_            struct{} `type:"structure"`
7533	respMetadata protocol.ResponseMetadata
7534
7535	// You can immediately retry your request.
7536	//
7537	// CanRetry is a required field
7538	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
7539
7540	// Details of the exception error.
7541	Message_ *string `locationName:"message" type:"string"`
7542}
7543
7544// String returns the string representation
7545func (s InternalException) String() string {
7546	return awsutil.Prettify(s)
7547}
7548
7549// GoString returns the string representation
7550func (s InternalException) GoString() string {
7551	return s.String()
7552}
7553
7554func newErrorInternalException(v protocol.ResponseMetadata) error {
7555	return &InternalException{
7556		respMetadata: v,
7557	}
7558}
7559
7560// Code returns the exception type name.
7561func (s InternalException) Code() string {
7562	return "InternalException"
7563}
7564
7565// Message returns the exception's message.
7566func (s InternalException) Message() string {
7567	if s.Message_ != nil {
7568		return *s.Message_
7569	}
7570	return ""
7571}
7572
7573// OrigErr always returns nil, satisfies awserr.Error interface.
7574func (s InternalException) OrigErr() error {
7575	return nil
7576}
7577
7578func (s InternalException) Error() string {
7579	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7580}
7581
7582// Status code returns the HTTP status code for the request's response error.
7583func (s InternalException) StatusCode() int {
7584	return s.respMetadata.StatusCode
7585}
7586
7587// RequestID returns the service's response RequestID for request.
7588func (s InternalException) RequestID() string {
7589	return s.respMetadata.RequestID
7590}
7591
7592// Amazon Inspector cannot assume the cross-account role that it needs to list
7593// your EC2 instances during the assessment run.
7594type InvalidCrossAccountRoleException struct {
7595	_            struct{} `type:"structure"`
7596	respMetadata protocol.ResponseMetadata
7597
7598	// You can immediately retry your request.
7599	//
7600	// CanRetry is a required field
7601	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
7602
7603	// Code that indicates the type of error that is generated.
7604	//
7605	// ErrorCode is a required field
7606	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"InvalidCrossAccountRoleErrorCode"`
7607
7608	// Details of the exception error.
7609	Message_ *string `locationName:"message" type:"string"`
7610}
7611
7612// String returns the string representation
7613func (s InvalidCrossAccountRoleException) String() string {
7614	return awsutil.Prettify(s)
7615}
7616
7617// GoString returns the string representation
7618func (s InvalidCrossAccountRoleException) GoString() string {
7619	return s.String()
7620}
7621
7622func newErrorInvalidCrossAccountRoleException(v protocol.ResponseMetadata) error {
7623	return &InvalidCrossAccountRoleException{
7624		respMetadata: v,
7625	}
7626}
7627
7628// Code returns the exception type name.
7629func (s InvalidCrossAccountRoleException) Code() string {
7630	return "InvalidCrossAccountRoleException"
7631}
7632
7633// Message returns the exception's message.
7634func (s InvalidCrossAccountRoleException) Message() string {
7635	if s.Message_ != nil {
7636		return *s.Message_
7637	}
7638	return ""
7639}
7640
7641// OrigErr always returns nil, satisfies awserr.Error interface.
7642func (s InvalidCrossAccountRoleException) OrigErr() error {
7643	return nil
7644}
7645
7646func (s InvalidCrossAccountRoleException) Error() string {
7647	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7648}
7649
7650// Status code returns the HTTP status code for the request's response error.
7651func (s InvalidCrossAccountRoleException) StatusCode() int {
7652	return s.respMetadata.StatusCode
7653}
7654
7655// RequestID returns the service's response RequestID for request.
7656func (s InvalidCrossAccountRoleException) RequestID() string {
7657	return s.respMetadata.RequestID
7658}
7659
7660// The request was rejected because an invalid or out-of-range value was supplied
7661// for an input parameter.
7662type InvalidInputException struct {
7663	_            struct{} `type:"structure"`
7664	respMetadata protocol.ResponseMetadata
7665
7666	// You can immediately retry your request.
7667	//
7668	// CanRetry is a required field
7669	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
7670
7671	// Code that indicates the type of error that is generated.
7672	//
7673	// ErrorCode is a required field
7674	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"InvalidInputErrorCode"`
7675
7676	// Details of the exception error.
7677	Message_ *string `locationName:"message" type:"string"`
7678}
7679
7680// String returns the string representation
7681func (s InvalidInputException) String() string {
7682	return awsutil.Prettify(s)
7683}
7684
7685// GoString returns the string representation
7686func (s InvalidInputException) GoString() string {
7687	return s.String()
7688}
7689
7690func newErrorInvalidInputException(v protocol.ResponseMetadata) error {
7691	return &InvalidInputException{
7692		respMetadata: v,
7693	}
7694}
7695
7696// Code returns the exception type name.
7697func (s InvalidInputException) Code() string {
7698	return "InvalidInputException"
7699}
7700
7701// Message returns the exception's message.
7702func (s InvalidInputException) Message() string {
7703	if s.Message_ != nil {
7704		return *s.Message_
7705	}
7706	return ""
7707}
7708
7709// OrigErr always returns nil, satisfies awserr.Error interface.
7710func (s InvalidInputException) OrigErr() error {
7711	return nil
7712}
7713
7714func (s InvalidInputException) Error() string {
7715	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7716}
7717
7718// Status code returns the HTTP status code for the request's response error.
7719func (s InvalidInputException) StatusCode() int {
7720	return s.respMetadata.StatusCode
7721}
7722
7723// RequestID returns the service's response RequestID for request.
7724func (s InvalidInputException) RequestID() string {
7725	return s.respMetadata.RequestID
7726}
7727
7728// The request was rejected because it attempted to create resources beyond
7729// the current AWS account limits. The error code describes the limit exceeded.
7730type LimitExceededException struct {
7731	_            struct{} `type:"structure"`
7732	respMetadata protocol.ResponseMetadata
7733
7734	// You can immediately retry your request.
7735	//
7736	// CanRetry is a required field
7737	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
7738
7739	// Code that indicates the type of error that is generated.
7740	//
7741	// ErrorCode is a required field
7742	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"LimitExceededErrorCode"`
7743
7744	// Details of the exception error.
7745	Message_ *string `locationName:"message" type:"string"`
7746}
7747
7748// String returns the string representation
7749func (s LimitExceededException) String() string {
7750	return awsutil.Prettify(s)
7751}
7752
7753// GoString returns the string representation
7754func (s LimitExceededException) GoString() string {
7755	return s.String()
7756}
7757
7758func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
7759	return &LimitExceededException{
7760		respMetadata: v,
7761	}
7762}
7763
7764// Code returns the exception type name.
7765func (s LimitExceededException) Code() string {
7766	return "LimitExceededException"
7767}
7768
7769// Message returns the exception's message.
7770func (s LimitExceededException) Message() string {
7771	if s.Message_ != nil {
7772		return *s.Message_
7773	}
7774	return ""
7775}
7776
7777// OrigErr always returns nil, satisfies awserr.Error interface.
7778func (s LimitExceededException) OrigErr() error {
7779	return nil
7780}
7781
7782func (s LimitExceededException) Error() string {
7783	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
7784}
7785
7786// Status code returns the HTTP status code for the request's response error.
7787func (s LimitExceededException) StatusCode() int {
7788	return s.respMetadata.StatusCode
7789}
7790
7791// RequestID returns the service's response RequestID for request.
7792func (s LimitExceededException) RequestID() string {
7793	return s.respMetadata.RequestID
7794}
7795
7796type ListAssessmentRunAgentsInput struct {
7797	_ struct{} `type:"structure"`
7798
7799	// The ARN that specifies the assessment run whose agents you want to list.
7800	//
7801	// AssessmentRunArn is a required field
7802	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
7803
7804	// You can use this parameter to specify a subset of data to be included in
7805	// the action's response.
7806	//
7807	// For a record to match a filter, all specified filter attributes must match.
7808	// When multiple values are specified for a filter attribute, any of the values
7809	// can match.
7810	Filter *AgentFilter `locationName:"filter" type:"structure"`
7811
7812	// You can use this parameter to indicate the maximum number of items that you
7813	// want in the response. The default value is 10. The maximum value is 500.
7814	MaxResults *int64 `locationName:"maxResults" type:"integer"`
7815
7816	// You can use this parameter when paginating results. Set the value of this
7817	// parameter to null on your first call to the ListAssessmentRunAgents action.
7818	// Subsequent calls to the action fill nextToken in the request with the value
7819	// of NextToken from the previous response to continue listing data.
7820	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7821}
7822
7823// String returns the string representation
7824func (s ListAssessmentRunAgentsInput) String() string {
7825	return awsutil.Prettify(s)
7826}
7827
7828// GoString returns the string representation
7829func (s ListAssessmentRunAgentsInput) GoString() string {
7830	return s.String()
7831}
7832
7833// Validate inspects the fields of the type to determine if they are valid.
7834func (s *ListAssessmentRunAgentsInput) Validate() error {
7835	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentRunAgentsInput"}
7836	if s.AssessmentRunArn == nil {
7837		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
7838	}
7839	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
7840		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
7841	}
7842	if s.NextToken != nil && len(*s.NextToken) < 1 {
7843		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7844	}
7845	if s.Filter != nil {
7846		if err := s.Filter.Validate(); err != nil {
7847			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
7848		}
7849	}
7850
7851	if invalidParams.Len() > 0 {
7852		return invalidParams
7853	}
7854	return nil
7855}
7856
7857// SetAssessmentRunArn sets the AssessmentRunArn field's value.
7858func (s *ListAssessmentRunAgentsInput) SetAssessmentRunArn(v string) *ListAssessmentRunAgentsInput {
7859	s.AssessmentRunArn = &v
7860	return s
7861}
7862
7863// SetFilter sets the Filter field's value.
7864func (s *ListAssessmentRunAgentsInput) SetFilter(v *AgentFilter) *ListAssessmentRunAgentsInput {
7865	s.Filter = v
7866	return s
7867}
7868
7869// SetMaxResults sets the MaxResults field's value.
7870func (s *ListAssessmentRunAgentsInput) SetMaxResults(v int64) *ListAssessmentRunAgentsInput {
7871	s.MaxResults = &v
7872	return s
7873}
7874
7875// SetNextToken sets the NextToken field's value.
7876func (s *ListAssessmentRunAgentsInput) SetNextToken(v string) *ListAssessmentRunAgentsInput {
7877	s.NextToken = &v
7878	return s
7879}
7880
7881type ListAssessmentRunAgentsOutput struct {
7882	_ struct{} `type:"structure"`
7883
7884	// A list of ARNs that specifies the agents returned by the action.
7885	//
7886	// AssessmentRunAgents is a required field
7887	AssessmentRunAgents []*AssessmentRunAgent `locationName:"assessmentRunAgents" type:"list" required:"true"`
7888
7889	// When a response is generated, if there is more data to be listed, this parameter
7890	// is present in the response and contains the value to use for the nextToken
7891	// parameter in a subsequent pagination request. If there is no more data to
7892	// be listed, this parameter is set to null.
7893	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7894}
7895
7896// String returns the string representation
7897func (s ListAssessmentRunAgentsOutput) String() string {
7898	return awsutil.Prettify(s)
7899}
7900
7901// GoString returns the string representation
7902func (s ListAssessmentRunAgentsOutput) GoString() string {
7903	return s.String()
7904}
7905
7906// SetAssessmentRunAgents sets the AssessmentRunAgents field's value.
7907func (s *ListAssessmentRunAgentsOutput) SetAssessmentRunAgents(v []*AssessmentRunAgent) *ListAssessmentRunAgentsOutput {
7908	s.AssessmentRunAgents = v
7909	return s
7910}
7911
7912// SetNextToken sets the NextToken field's value.
7913func (s *ListAssessmentRunAgentsOutput) SetNextToken(v string) *ListAssessmentRunAgentsOutput {
7914	s.NextToken = &v
7915	return s
7916}
7917
7918type ListAssessmentRunsInput struct {
7919	_ struct{} `type:"structure"`
7920
7921	// The ARNs that specify the assessment templates whose assessment runs you
7922	// want to list.
7923	AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" type:"list"`
7924
7925	// You can use this parameter to specify a subset of data to be included in
7926	// the action's response.
7927	//
7928	// For a record to match a filter, all specified filter attributes must match.
7929	// When multiple values are specified for a filter attribute, any of the values
7930	// can match.
7931	Filter *AssessmentRunFilter `locationName:"filter" type:"structure"`
7932
7933	// You can use this parameter to indicate the maximum number of items that you
7934	// want in the response. The default value is 10. The maximum value is 500.
7935	MaxResults *int64 `locationName:"maxResults" type:"integer"`
7936
7937	// You can use this parameter when paginating results. Set the value of this
7938	// parameter to null on your first call to the ListAssessmentRuns action. Subsequent
7939	// calls to the action fill nextToken in the request with the value of NextToken
7940	// from the previous response to continue listing data.
7941	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7942}
7943
7944// String returns the string representation
7945func (s ListAssessmentRunsInput) String() string {
7946	return awsutil.Prettify(s)
7947}
7948
7949// GoString returns the string representation
7950func (s ListAssessmentRunsInput) GoString() string {
7951	return s.String()
7952}
7953
7954// Validate inspects the fields of the type to determine if they are valid.
7955func (s *ListAssessmentRunsInput) Validate() error {
7956	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentRunsInput"}
7957	if s.NextToken != nil && len(*s.NextToken) < 1 {
7958		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7959	}
7960	if s.Filter != nil {
7961		if err := s.Filter.Validate(); err != nil {
7962			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
7963		}
7964	}
7965
7966	if invalidParams.Len() > 0 {
7967		return invalidParams
7968	}
7969	return nil
7970}
7971
7972// SetAssessmentTemplateArns sets the AssessmentTemplateArns field's value.
7973func (s *ListAssessmentRunsInput) SetAssessmentTemplateArns(v []*string) *ListAssessmentRunsInput {
7974	s.AssessmentTemplateArns = v
7975	return s
7976}
7977
7978// SetFilter sets the Filter field's value.
7979func (s *ListAssessmentRunsInput) SetFilter(v *AssessmentRunFilter) *ListAssessmentRunsInput {
7980	s.Filter = v
7981	return s
7982}
7983
7984// SetMaxResults sets the MaxResults field's value.
7985func (s *ListAssessmentRunsInput) SetMaxResults(v int64) *ListAssessmentRunsInput {
7986	s.MaxResults = &v
7987	return s
7988}
7989
7990// SetNextToken sets the NextToken field's value.
7991func (s *ListAssessmentRunsInput) SetNextToken(v string) *ListAssessmentRunsInput {
7992	s.NextToken = &v
7993	return s
7994}
7995
7996type ListAssessmentRunsOutput struct {
7997	_ struct{} `type:"structure"`
7998
7999	// A list of ARNs that specifies the assessment runs that are returned by the
8000	// action.
8001	//
8002	// AssessmentRunArns is a required field
8003	AssessmentRunArns []*string `locationName:"assessmentRunArns" type:"list" required:"true"`
8004
8005	// When a response is generated, if there is more data to be listed, this parameter
8006	// is present in the response and contains the value to use for the nextToken
8007	// parameter in a subsequent pagination request. If there is no more data to
8008	// be listed, this parameter is set to null.
8009	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8010}
8011
8012// String returns the string representation
8013func (s ListAssessmentRunsOutput) String() string {
8014	return awsutil.Prettify(s)
8015}
8016
8017// GoString returns the string representation
8018func (s ListAssessmentRunsOutput) GoString() string {
8019	return s.String()
8020}
8021
8022// SetAssessmentRunArns sets the AssessmentRunArns field's value.
8023func (s *ListAssessmentRunsOutput) SetAssessmentRunArns(v []*string) *ListAssessmentRunsOutput {
8024	s.AssessmentRunArns = v
8025	return s
8026}
8027
8028// SetNextToken sets the NextToken field's value.
8029func (s *ListAssessmentRunsOutput) SetNextToken(v string) *ListAssessmentRunsOutput {
8030	s.NextToken = &v
8031	return s
8032}
8033
8034type ListAssessmentTargetsInput struct {
8035	_ struct{} `type:"structure"`
8036
8037	// You can use this parameter to specify a subset of data to be included in
8038	// the action's response.
8039	//
8040	// For a record to match a filter, all specified filter attributes must match.
8041	// When multiple values are specified for a filter attribute, any of the values
8042	// can match.
8043	Filter *AssessmentTargetFilter `locationName:"filter" type:"structure"`
8044
8045	// You can use this parameter to indicate the maximum number of items you want
8046	// in the response. The default value is 10. The maximum value is 500.
8047	MaxResults *int64 `locationName:"maxResults" type:"integer"`
8048
8049	// You can use this parameter when paginating results. Set the value of this
8050	// parameter to null on your first call to the ListAssessmentTargets action.
8051	// Subsequent calls to the action fill nextToken in the request with the value
8052	// of NextToken from the previous response to continue listing data.
8053	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8054}
8055
8056// String returns the string representation
8057func (s ListAssessmentTargetsInput) String() string {
8058	return awsutil.Prettify(s)
8059}
8060
8061// GoString returns the string representation
8062func (s ListAssessmentTargetsInput) GoString() string {
8063	return s.String()
8064}
8065
8066// Validate inspects the fields of the type to determine if they are valid.
8067func (s *ListAssessmentTargetsInput) Validate() error {
8068	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentTargetsInput"}
8069	if s.NextToken != nil && len(*s.NextToken) < 1 {
8070		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8071	}
8072	if s.Filter != nil {
8073		if err := s.Filter.Validate(); err != nil {
8074			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
8075		}
8076	}
8077
8078	if invalidParams.Len() > 0 {
8079		return invalidParams
8080	}
8081	return nil
8082}
8083
8084// SetFilter sets the Filter field's value.
8085func (s *ListAssessmentTargetsInput) SetFilter(v *AssessmentTargetFilter) *ListAssessmentTargetsInput {
8086	s.Filter = v
8087	return s
8088}
8089
8090// SetMaxResults sets the MaxResults field's value.
8091func (s *ListAssessmentTargetsInput) SetMaxResults(v int64) *ListAssessmentTargetsInput {
8092	s.MaxResults = &v
8093	return s
8094}
8095
8096// SetNextToken sets the NextToken field's value.
8097func (s *ListAssessmentTargetsInput) SetNextToken(v string) *ListAssessmentTargetsInput {
8098	s.NextToken = &v
8099	return s
8100}
8101
8102type ListAssessmentTargetsOutput struct {
8103	_ struct{} `type:"structure"`
8104
8105	// A list of ARNs that specifies the assessment targets that are returned by
8106	// the action.
8107	//
8108	// AssessmentTargetArns is a required field
8109	AssessmentTargetArns []*string `locationName:"assessmentTargetArns" type:"list" required:"true"`
8110
8111	// When a response is generated, if there is more data to be listed, this parameter
8112	// is present in the response and contains the value to use for the nextToken
8113	// parameter in a subsequent pagination request. If there is no more data to
8114	// be listed, this parameter is set to null.
8115	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8116}
8117
8118// String returns the string representation
8119func (s ListAssessmentTargetsOutput) String() string {
8120	return awsutil.Prettify(s)
8121}
8122
8123// GoString returns the string representation
8124func (s ListAssessmentTargetsOutput) GoString() string {
8125	return s.String()
8126}
8127
8128// SetAssessmentTargetArns sets the AssessmentTargetArns field's value.
8129func (s *ListAssessmentTargetsOutput) SetAssessmentTargetArns(v []*string) *ListAssessmentTargetsOutput {
8130	s.AssessmentTargetArns = v
8131	return s
8132}
8133
8134// SetNextToken sets the NextToken field's value.
8135func (s *ListAssessmentTargetsOutput) SetNextToken(v string) *ListAssessmentTargetsOutput {
8136	s.NextToken = &v
8137	return s
8138}
8139
8140type ListAssessmentTemplatesInput struct {
8141	_ struct{} `type:"structure"`
8142
8143	// A list of ARNs that specifies the assessment targets whose assessment templates
8144	// you want to list.
8145	AssessmentTargetArns []*string `locationName:"assessmentTargetArns" type:"list"`
8146
8147	// You can use this parameter to specify a subset of data to be included in
8148	// the action's response.
8149	//
8150	// For a record to match a filter, all specified filter attributes must match.
8151	// When multiple values are specified for a filter attribute, any of the values
8152	// can match.
8153	Filter *AssessmentTemplateFilter `locationName:"filter" type:"structure"`
8154
8155	// You can use this parameter to indicate the maximum number of items you want
8156	// in the response. The default value is 10. The maximum value is 500.
8157	MaxResults *int64 `locationName:"maxResults" type:"integer"`
8158
8159	// You can use this parameter when paginating results. Set the value of this
8160	// parameter to null on your first call to the ListAssessmentTemplates action.
8161	// Subsequent calls to the action fill nextToken in the request with the value
8162	// of NextToken from the previous response to continue listing data.
8163	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8164}
8165
8166// String returns the string representation
8167func (s ListAssessmentTemplatesInput) String() string {
8168	return awsutil.Prettify(s)
8169}
8170
8171// GoString returns the string representation
8172func (s ListAssessmentTemplatesInput) GoString() string {
8173	return s.String()
8174}
8175
8176// Validate inspects the fields of the type to determine if they are valid.
8177func (s *ListAssessmentTemplatesInput) Validate() error {
8178	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentTemplatesInput"}
8179	if s.NextToken != nil && len(*s.NextToken) < 1 {
8180		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8181	}
8182	if s.Filter != nil {
8183		if err := s.Filter.Validate(); err != nil {
8184			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
8185		}
8186	}
8187
8188	if invalidParams.Len() > 0 {
8189		return invalidParams
8190	}
8191	return nil
8192}
8193
8194// SetAssessmentTargetArns sets the AssessmentTargetArns field's value.
8195func (s *ListAssessmentTemplatesInput) SetAssessmentTargetArns(v []*string) *ListAssessmentTemplatesInput {
8196	s.AssessmentTargetArns = v
8197	return s
8198}
8199
8200// SetFilter sets the Filter field's value.
8201func (s *ListAssessmentTemplatesInput) SetFilter(v *AssessmentTemplateFilter) *ListAssessmentTemplatesInput {
8202	s.Filter = v
8203	return s
8204}
8205
8206// SetMaxResults sets the MaxResults field's value.
8207func (s *ListAssessmentTemplatesInput) SetMaxResults(v int64) *ListAssessmentTemplatesInput {
8208	s.MaxResults = &v
8209	return s
8210}
8211
8212// SetNextToken sets the NextToken field's value.
8213func (s *ListAssessmentTemplatesInput) SetNextToken(v string) *ListAssessmentTemplatesInput {
8214	s.NextToken = &v
8215	return s
8216}
8217
8218type ListAssessmentTemplatesOutput struct {
8219	_ struct{} `type:"structure"`
8220
8221	// A list of ARNs that specifies the assessment templates returned by the action.
8222	//
8223	// AssessmentTemplateArns is a required field
8224	AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" type:"list" required:"true"`
8225
8226	// When a response is generated, if there is more data to be listed, this parameter
8227	// is present in the response and contains the value to use for the nextToken
8228	// parameter in a subsequent pagination request. If there is no more data to
8229	// be listed, this parameter is set to null.
8230	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8231}
8232
8233// String returns the string representation
8234func (s ListAssessmentTemplatesOutput) String() string {
8235	return awsutil.Prettify(s)
8236}
8237
8238// GoString returns the string representation
8239func (s ListAssessmentTemplatesOutput) GoString() string {
8240	return s.String()
8241}
8242
8243// SetAssessmentTemplateArns sets the AssessmentTemplateArns field's value.
8244func (s *ListAssessmentTemplatesOutput) SetAssessmentTemplateArns(v []*string) *ListAssessmentTemplatesOutput {
8245	s.AssessmentTemplateArns = v
8246	return s
8247}
8248
8249// SetNextToken sets the NextToken field's value.
8250func (s *ListAssessmentTemplatesOutput) SetNextToken(v string) *ListAssessmentTemplatesOutput {
8251	s.NextToken = &v
8252	return s
8253}
8254
8255type ListEventSubscriptionsInput struct {
8256	_ struct{} `type:"structure"`
8257
8258	// You can use this parameter to indicate the maximum number of items you want
8259	// in the response. The default value is 10. The maximum value is 500.
8260	MaxResults *int64 `locationName:"maxResults" type:"integer"`
8261
8262	// You can use this parameter when paginating results. Set the value of this
8263	// parameter to null on your first call to the ListEventSubscriptions action.
8264	// Subsequent calls to the action fill nextToken in the request with the value
8265	// of NextToken from the previous response to continue listing data.
8266	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8267
8268	// The ARN of the assessment template for which you want to list the existing
8269	// event subscriptions.
8270	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string"`
8271}
8272
8273// String returns the string representation
8274func (s ListEventSubscriptionsInput) String() string {
8275	return awsutil.Prettify(s)
8276}
8277
8278// GoString returns the string representation
8279func (s ListEventSubscriptionsInput) GoString() string {
8280	return s.String()
8281}
8282
8283// Validate inspects the fields of the type to determine if they are valid.
8284func (s *ListEventSubscriptionsInput) Validate() error {
8285	invalidParams := request.ErrInvalidParams{Context: "ListEventSubscriptionsInput"}
8286	if s.NextToken != nil && len(*s.NextToken) < 1 {
8287		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8288	}
8289	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
8290		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
8291	}
8292
8293	if invalidParams.Len() > 0 {
8294		return invalidParams
8295	}
8296	return nil
8297}
8298
8299// SetMaxResults sets the MaxResults field's value.
8300func (s *ListEventSubscriptionsInput) SetMaxResults(v int64) *ListEventSubscriptionsInput {
8301	s.MaxResults = &v
8302	return s
8303}
8304
8305// SetNextToken sets the NextToken field's value.
8306func (s *ListEventSubscriptionsInput) SetNextToken(v string) *ListEventSubscriptionsInput {
8307	s.NextToken = &v
8308	return s
8309}
8310
8311// SetResourceArn sets the ResourceArn field's value.
8312func (s *ListEventSubscriptionsInput) SetResourceArn(v string) *ListEventSubscriptionsInput {
8313	s.ResourceArn = &v
8314	return s
8315}
8316
8317type ListEventSubscriptionsOutput struct {
8318	_ struct{} `type:"structure"`
8319
8320	// When a response is generated, if there is more data to be listed, this parameter
8321	// is present in the response and contains the value to use for the nextToken
8322	// parameter in a subsequent pagination request. If there is no more data to
8323	// be listed, this parameter is set to null.
8324	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8325
8326	// Details of the returned event subscriptions.
8327	//
8328	// Subscriptions is a required field
8329	Subscriptions []*Subscription `locationName:"subscriptions" type:"list" required:"true"`
8330}
8331
8332// String returns the string representation
8333func (s ListEventSubscriptionsOutput) String() string {
8334	return awsutil.Prettify(s)
8335}
8336
8337// GoString returns the string representation
8338func (s ListEventSubscriptionsOutput) GoString() string {
8339	return s.String()
8340}
8341
8342// SetNextToken sets the NextToken field's value.
8343func (s *ListEventSubscriptionsOutput) SetNextToken(v string) *ListEventSubscriptionsOutput {
8344	s.NextToken = &v
8345	return s
8346}
8347
8348// SetSubscriptions sets the Subscriptions field's value.
8349func (s *ListEventSubscriptionsOutput) SetSubscriptions(v []*Subscription) *ListEventSubscriptionsOutput {
8350	s.Subscriptions = v
8351	return s
8352}
8353
8354type ListExclusionsInput struct {
8355	_ struct{} `type:"structure"`
8356
8357	// The ARN of the assessment run that generated the exclusions that you want
8358	// to list.
8359	//
8360	// AssessmentRunArn is a required field
8361	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
8362
8363	// You can use this parameter to indicate the maximum number of items you want
8364	// in the response. The default value is 100. The maximum value is 500.
8365	MaxResults *int64 `locationName:"maxResults" type:"integer"`
8366
8367	// You can use this parameter when paginating results. Set the value of this
8368	// parameter to null on your first call to the ListExclusionsRequest action.
8369	// Subsequent calls to the action fill nextToken in the request with the value
8370	// of nextToken from the previous response to continue listing data.
8371	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8372}
8373
8374// String returns the string representation
8375func (s ListExclusionsInput) String() string {
8376	return awsutil.Prettify(s)
8377}
8378
8379// GoString returns the string representation
8380func (s ListExclusionsInput) GoString() string {
8381	return s.String()
8382}
8383
8384// Validate inspects the fields of the type to determine if they are valid.
8385func (s *ListExclusionsInput) Validate() error {
8386	invalidParams := request.ErrInvalidParams{Context: "ListExclusionsInput"}
8387	if s.AssessmentRunArn == nil {
8388		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
8389	}
8390	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
8391		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
8392	}
8393	if s.NextToken != nil && len(*s.NextToken) < 1 {
8394		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8395	}
8396
8397	if invalidParams.Len() > 0 {
8398		return invalidParams
8399	}
8400	return nil
8401}
8402
8403// SetAssessmentRunArn sets the AssessmentRunArn field's value.
8404func (s *ListExclusionsInput) SetAssessmentRunArn(v string) *ListExclusionsInput {
8405	s.AssessmentRunArn = &v
8406	return s
8407}
8408
8409// SetMaxResults sets the MaxResults field's value.
8410func (s *ListExclusionsInput) SetMaxResults(v int64) *ListExclusionsInput {
8411	s.MaxResults = &v
8412	return s
8413}
8414
8415// SetNextToken sets the NextToken field's value.
8416func (s *ListExclusionsInput) SetNextToken(v string) *ListExclusionsInput {
8417	s.NextToken = &v
8418	return s
8419}
8420
8421type ListExclusionsOutput struct {
8422	_ struct{} `type:"structure"`
8423
8424	// A list of exclusions' ARNs returned by the action.
8425	//
8426	// ExclusionArns is a required field
8427	ExclusionArns []*string `locationName:"exclusionArns" type:"list" required:"true"`
8428
8429	// When a response is generated, if there is more data to be listed, this parameters
8430	// is present in the response and contains the value to use for the nextToken
8431	// parameter in a subsequent pagination request. If there is no more data to
8432	// be listed, this parameter is set to null.
8433	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8434}
8435
8436// String returns the string representation
8437func (s ListExclusionsOutput) String() string {
8438	return awsutil.Prettify(s)
8439}
8440
8441// GoString returns the string representation
8442func (s ListExclusionsOutput) GoString() string {
8443	return s.String()
8444}
8445
8446// SetExclusionArns sets the ExclusionArns field's value.
8447func (s *ListExclusionsOutput) SetExclusionArns(v []*string) *ListExclusionsOutput {
8448	s.ExclusionArns = v
8449	return s
8450}
8451
8452// SetNextToken sets the NextToken field's value.
8453func (s *ListExclusionsOutput) SetNextToken(v string) *ListExclusionsOutput {
8454	s.NextToken = &v
8455	return s
8456}
8457
8458type ListFindingsInput struct {
8459	_ struct{} `type:"structure"`
8460
8461	// The ARNs of the assessment runs that generate the findings that you want
8462	// to list.
8463	AssessmentRunArns []*string `locationName:"assessmentRunArns" type:"list"`
8464
8465	// You can use this parameter to specify a subset of data to be included in
8466	// the action's response.
8467	//
8468	// For a record to match a filter, all specified filter attributes must match.
8469	// When multiple values are specified for a filter attribute, any of the values
8470	// can match.
8471	Filter *FindingFilter `locationName:"filter" type:"structure"`
8472
8473	// You can use this parameter to indicate the maximum number of items you want
8474	// in the response. The default value is 10. The maximum value is 500.
8475	MaxResults *int64 `locationName:"maxResults" type:"integer"`
8476
8477	// You can use this parameter when paginating results. Set the value of this
8478	// parameter to null on your first call to the ListFindings action. Subsequent
8479	// calls to the action fill nextToken in the request with the value of NextToken
8480	// from the previous response to continue listing data.
8481	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8482}
8483
8484// String returns the string representation
8485func (s ListFindingsInput) String() string {
8486	return awsutil.Prettify(s)
8487}
8488
8489// GoString returns the string representation
8490func (s ListFindingsInput) GoString() string {
8491	return s.String()
8492}
8493
8494// Validate inspects the fields of the type to determine if they are valid.
8495func (s *ListFindingsInput) Validate() error {
8496	invalidParams := request.ErrInvalidParams{Context: "ListFindingsInput"}
8497	if s.NextToken != nil && len(*s.NextToken) < 1 {
8498		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8499	}
8500	if s.Filter != nil {
8501		if err := s.Filter.Validate(); err != nil {
8502			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
8503		}
8504	}
8505
8506	if invalidParams.Len() > 0 {
8507		return invalidParams
8508	}
8509	return nil
8510}
8511
8512// SetAssessmentRunArns sets the AssessmentRunArns field's value.
8513func (s *ListFindingsInput) SetAssessmentRunArns(v []*string) *ListFindingsInput {
8514	s.AssessmentRunArns = v
8515	return s
8516}
8517
8518// SetFilter sets the Filter field's value.
8519func (s *ListFindingsInput) SetFilter(v *FindingFilter) *ListFindingsInput {
8520	s.Filter = v
8521	return s
8522}
8523
8524// SetMaxResults sets the MaxResults field's value.
8525func (s *ListFindingsInput) SetMaxResults(v int64) *ListFindingsInput {
8526	s.MaxResults = &v
8527	return s
8528}
8529
8530// SetNextToken sets the NextToken field's value.
8531func (s *ListFindingsInput) SetNextToken(v string) *ListFindingsInput {
8532	s.NextToken = &v
8533	return s
8534}
8535
8536type ListFindingsOutput struct {
8537	_ struct{} `type:"structure"`
8538
8539	// A list of ARNs that specifies the findings returned by the action.
8540	//
8541	// FindingArns is a required field
8542	FindingArns []*string `locationName:"findingArns" type:"list" required:"true"`
8543
8544	// When a response is generated, if there is more data to be listed, this parameter
8545	// is present in the response and contains the value to use for the nextToken
8546	// parameter in a subsequent pagination request. If there is no more data to
8547	// be listed, this parameter is set to null.
8548	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8549}
8550
8551// String returns the string representation
8552func (s ListFindingsOutput) String() string {
8553	return awsutil.Prettify(s)
8554}
8555
8556// GoString returns the string representation
8557func (s ListFindingsOutput) GoString() string {
8558	return s.String()
8559}
8560
8561// SetFindingArns sets the FindingArns field's value.
8562func (s *ListFindingsOutput) SetFindingArns(v []*string) *ListFindingsOutput {
8563	s.FindingArns = v
8564	return s
8565}
8566
8567// SetNextToken sets the NextToken field's value.
8568func (s *ListFindingsOutput) SetNextToken(v string) *ListFindingsOutput {
8569	s.NextToken = &v
8570	return s
8571}
8572
8573type ListRulesPackagesInput struct {
8574	_ struct{} `type:"structure"`
8575
8576	// You can use this parameter to indicate the maximum number of items you want
8577	// in the response. The default value is 10. The maximum value is 500.
8578	MaxResults *int64 `locationName:"maxResults" type:"integer"`
8579
8580	// You can use this parameter when paginating results. Set the value of this
8581	// parameter to null on your first call to the ListRulesPackages action. Subsequent
8582	// calls to the action fill nextToken in the request with the value of NextToken
8583	// from the previous response to continue listing data.
8584	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8585}
8586
8587// String returns the string representation
8588func (s ListRulesPackagesInput) String() string {
8589	return awsutil.Prettify(s)
8590}
8591
8592// GoString returns the string representation
8593func (s ListRulesPackagesInput) GoString() string {
8594	return s.String()
8595}
8596
8597// Validate inspects the fields of the type to determine if they are valid.
8598func (s *ListRulesPackagesInput) Validate() error {
8599	invalidParams := request.ErrInvalidParams{Context: "ListRulesPackagesInput"}
8600	if s.NextToken != nil && len(*s.NextToken) < 1 {
8601		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8602	}
8603
8604	if invalidParams.Len() > 0 {
8605		return invalidParams
8606	}
8607	return nil
8608}
8609
8610// SetMaxResults sets the MaxResults field's value.
8611func (s *ListRulesPackagesInput) SetMaxResults(v int64) *ListRulesPackagesInput {
8612	s.MaxResults = &v
8613	return s
8614}
8615
8616// SetNextToken sets the NextToken field's value.
8617func (s *ListRulesPackagesInput) SetNextToken(v string) *ListRulesPackagesInput {
8618	s.NextToken = &v
8619	return s
8620}
8621
8622type ListRulesPackagesOutput struct {
8623	_ struct{} `type:"structure"`
8624
8625	// When a response is generated, if there is more data to be listed, this parameter
8626	// is present in the response and contains the value to use for the nextToken
8627	// parameter in a subsequent pagination request. If there is no more data to
8628	// be listed, this parameter is set to null.
8629	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8630
8631	// The list of ARNs that specifies the rules packages returned by the action.
8632	//
8633	// RulesPackageArns is a required field
8634	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"`
8635}
8636
8637// String returns the string representation
8638func (s ListRulesPackagesOutput) String() string {
8639	return awsutil.Prettify(s)
8640}
8641
8642// GoString returns the string representation
8643func (s ListRulesPackagesOutput) GoString() string {
8644	return s.String()
8645}
8646
8647// SetNextToken sets the NextToken field's value.
8648func (s *ListRulesPackagesOutput) SetNextToken(v string) *ListRulesPackagesOutput {
8649	s.NextToken = &v
8650	return s
8651}
8652
8653// SetRulesPackageArns sets the RulesPackageArns field's value.
8654func (s *ListRulesPackagesOutput) SetRulesPackageArns(v []*string) *ListRulesPackagesOutput {
8655	s.RulesPackageArns = v
8656	return s
8657}
8658
8659type ListTagsForResourceInput struct {
8660	_ struct{} `type:"structure"`
8661
8662	// The ARN that specifies the assessment template whose tags you want to list.
8663	//
8664	// ResourceArn is a required field
8665	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
8666}
8667
8668// String returns the string representation
8669func (s ListTagsForResourceInput) String() string {
8670	return awsutil.Prettify(s)
8671}
8672
8673// GoString returns the string representation
8674func (s ListTagsForResourceInput) GoString() string {
8675	return s.String()
8676}
8677
8678// Validate inspects the fields of the type to determine if they are valid.
8679func (s *ListTagsForResourceInput) Validate() error {
8680	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
8681	if s.ResourceArn == nil {
8682		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
8683	}
8684	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
8685		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
8686	}
8687
8688	if invalidParams.Len() > 0 {
8689		return invalidParams
8690	}
8691	return nil
8692}
8693
8694// SetResourceArn sets the ResourceArn field's value.
8695func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
8696	s.ResourceArn = &v
8697	return s
8698}
8699
8700type ListTagsForResourceOutput struct {
8701	_ struct{} `type:"structure"`
8702
8703	// A collection of key and value pairs.
8704	//
8705	// Tags is a required field
8706	Tags []*Tag `locationName:"tags" type:"list" required:"true"`
8707}
8708
8709// String returns the string representation
8710func (s ListTagsForResourceOutput) String() string {
8711	return awsutil.Prettify(s)
8712}
8713
8714// GoString returns the string representation
8715func (s ListTagsForResourceOutput) GoString() string {
8716	return s.String()
8717}
8718
8719// SetTags sets the Tags field's value.
8720func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
8721	s.Tags = v
8722	return s
8723}
8724
8725// Contains information about the network interfaces interacting with an EC2
8726// instance. This data type is used as one of the elements of the AssetAttributes
8727// data type.
8728type NetworkInterface struct {
8729	_ struct{} `type:"structure"`
8730
8731	// The IP addresses associated with the network interface.
8732	Ipv6Addresses []*string `locationName:"ipv6Addresses" type:"list"`
8733
8734	// The ID of the network interface.
8735	NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"`
8736
8737	// The name of a private DNS associated with the network interface.
8738	PrivateDnsName *string `locationName:"privateDnsName" type:"string"`
8739
8740	// The private IP address associated with the network interface.
8741	PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"`
8742
8743	// A list of the private IP addresses associated with the network interface.
8744	// Includes the privateDnsName and privateIpAddress.
8745	PrivateIpAddresses []*PrivateIp `locationName:"privateIpAddresses" type:"list"`
8746
8747	// The name of a public DNS associated with the network interface.
8748	PublicDnsName *string `locationName:"publicDnsName" type:"string"`
8749
8750	// The public IP address from which the network interface is reachable.
8751	PublicIp *string `locationName:"publicIp" type:"string"`
8752
8753	// A list of the security groups associated with the network interface. Includes
8754	// the groupId and groupName.
8755	SecurityGroups []*SecurityGroup `locationName:"securityGroups" type:"list"`
8756
8757	// The ID of a subnet associated with the network interface.
8758	SubnetId *string `locationName:"subnetId" type:"string"`
8759
8760	// The ID of a VPC associated with the network interface.
8761	VpcId *string `locationName:"vpcId" type:"string"`
8762}
8763
8764// String returns the string representation
8765func (s NetworkInterface) String() string {
8766	return awsutil.Prettify(s)
8767}
8768
8769// GoString returns the string representation
8770func (s NetworkInterface) GoString() string {
8771	return s.String()
8772}
8773
8774// SetIpv6Addresses sets the Ipv6Addresses field's value.
8775func (s *NetworkInterface) SetIpv6Addresses(v []*string) *NetworkInterface {
8776	s.Ipv6Addresses = v
8777	return s
8778}
8779
8780// SetNetworkInterfaceId sets the NetworkInterfaceId field's value.
8781func (s *NetworkInterface) SetNetworkInterfaceId(v string) *NetworkInterface {
8782	s.NetworkInterfaceId = &v
8783	return s
8784}
8785
8786// SetPrivateDnsName sets the PrivateDnsName field's value.
8787func (s *NetworkInterface) SetPrivateDnsName(v string) *NetworkInterface {
8788	s.PrivateDnsName = &v
8789	return s
8790}
8791
8792// SetPrivateIpAddress sets the PrivateIpAddress field's value.
8793func (s *NetworkInterface) SetPrivateIpAddress(v string) *NetworkInterface {
8794	s.PrivateIpAddress = &v
8795	return s
8796}
8797
8798// SetPrivateIpAddresses sets the PrivateIpAddresses field's value.
8799func (s *NetworkInterface) SetPrivateIpAddresses(v []*PrivateIp) *NetworkInterface {
8800	s.PrivateIpAddresses = v
8801	return s
8802}
8803
8804// SetPublicDnsName sets the PublicDnsName field's value.
8805func (s *NetworkInterface) SetPublicDnsName(v string) *NetworkInterface {
8806	s.PublicDnsName = &v
8807	return s
8808}
8809
8810// SetPublicIp sets the PublicIp field's value.
8811func (s *NetworkInterface) SetPublicIp(v string) *NetworkInterface {
8812	s.PublicIp = &v
8813	return s
8814}
8815
8816// SetSecurityGroups sets the SecurityGroups field's value.
8817func (s *NetworkInterface) SetSecurityGroups(v []*SecurityGroup) *NetworkInterface {
8818	s.SecurityGroups = v
8819	return s
8820}
8821
8822// SetSubnetId sets the SubnetId field's value.
8823func (s *NetworkInterface) SetSubnetId(v string) *NetworkInterface {
8824	s.SubnetId = &v
8825	return s
8826}
8827
8828// SetVpcId sets the VpcId field's value.
8829func (s *NetworkInterface) SetVpcId(v string) *NetworkInterface {
8830	s.VpcId = &v
8831	return s
8832}
8833
8834// The request was rejected because it referenced an entity that does not exist.
8835// The error code describes the entity.
8836type NoSuchEntityException struct {
8837	_            struct{} `type:"structure"`
8838	respMetadata protocol.ResponseMetadata
8839
8840	// You can immediately retry your request.
8841	//
8842	// CanRetry is a required field
8843	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
8844
8845	// Code that indicates the type of error that is generated.
8846	//
8847	// ErrorCode is a required field
8848	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"NoSuchEntityErrorCode"`
8849
8850	// Details of the exception error.
8851	Message_ *string `locationName:"message" type:"string"`
8852}
8853
8854// String returns the string representation
8855func (s NoSuchEntityException) String() string {
8856	return awsutil.Prettify(s)
8857}
8858
8859// GoString returns the string representation
8860func (s NoSuchEntityException) GoString() string {
8861	return s.String()
8862}
8863
8864func newErrorNoSuchEntityException(v protocol.ResponseMetadata) error {
8865	return &NoSuchEntityException{
8866		respMetadata: v,
8867	}
8868}
8869
8870// Code returns the exception type name.
8871func (s NoSuchEntityException) Code() string {
8872	return "NoSuchEntityException"
8873}
8874
8875// Message returns the exception's message.
8876func (s NoSuchEntityException) Message() string {
8877	if s.Message_ != nil {
8878		return *s.Message_
8879	}
8880	return ""
8881}
8882
8883// OrigErr always returns nil, satisfies awserr.Error interface.
8884func (s NoSuchEntityException) OrigErr() error {
8885	return nil
8886}
8887
8888func (s NoSuchEntityException) Error() string {
8889	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
8890}
8891
8892// Status code returns the HTTP status code for the request's response error.
8893func (s NoSuchEntityException) StatusCode() int {
8894	return s.respMetadata.StatusCode
8895}
8896
8897// RequestID returns the service's response RequestID for request.
8898func (s NoSuchEntityException) RequestID() string {
8899	return s.respMetadata.RequestID
8900}
8901
8902type PreviewAgentsInput struct {
8903	_ struct{} `type:"structure"`
8904
8905	// You can use this parameter to indicate the maximum number of items you want
8906	// in the response. The default value is 10. The maximum value is 500.
8907	MaxResults *int64 `locationName:"maxResults" type:"integer"`
8908
8909	// You can use this parameter when paginating results. Set the value of this
8910	// parameter to null on your first call to the PreviewAgents action. Subsequent
8911	// calls to the action fill nextToken in the request with the value of NextToken
8912	// from the previous response to continue listing data.
8913	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8914
8915	// The ARN of the assessment target whose agents you want to preview.
8916	//
8917	// PreviewAgentsArn is a required field
8918	PreviewAgentsArn *string `locationName:"previewAgentsArn" min:"1" type:"string" required:"true"`
8919}
8920
8921// String returns the string representation
8922func (s PreviewAgentsInput) String() string {
8923	return awsutil.Prettify(s)
8924}
8925
8926// GoString returns the string representation
8927func (s PreviewAgentsInput) GoString() string {
8928	return s.String()
8929}
8930
8931// Validate inspects the fields of the type to determine if they are valid.
8932func (s *PreviewAgentsInput) Validate() error {
8933	invalidParams := request.ErrInvalidParams{Context: "PreviewAgentsInput"}
8934	if s.NextToken != nil && len(*s.NextToken) < 1 {
8935		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8936	}
8937	if s.PreviewAgentsArn == nil {
8938		invalidParams.Add(request.NewErrParamRequired("PreviewAgentsArn"))
8939	}
8940	if s.PreviewAgentsArn != nil && len(*s.PreviewAgentsArn) < 1 {
8941		invalidParams.Add(request.NewErrParamMinLen("PreviewAgentsArn", 1))
8942	}
8943
8944	if invalidParams.Len() > 0 {
8945		return invalidParams
8946	}
8947	return nil
8948}
8949
8950// SetMaxResults sets the MaxResults field's value.
8951func (s *PreviewAgentsInput) SetMaxResults(v int64) *PreviewAgentsInput {
8952	s.MaxResults = &v
8953	return s
8954}
8955
8956// SetNextToken sets the NextToken field's value.
8957func (s *PreviewAgentsInput) SetNextToken(v string) *PreviewAgentsInput {
8958	s.NextToken = &v
8959	return s
8960}
8961
8962// SetPreviewAgentsArn sets the PreviewAgentsArn field's value.
8963func (s *PreviewAgentsInput) SetPreviewAgentsArn(v string) *PreviewAgentsInput {
8964	s.PreviewAgentsArn = &v
8965	return s
8966}
8967
8968type PreviewAgentsOutput struct {
8969	_ struct{} `type:"structure"`
8970
8971	// The resulting list of agents.
8972	//
8973	// AgentPreviews is a required field
8974	AgentPreviews []*AgentPreview `locationName:"agentPreviews" type:"list" required:"true"`
8975
8976	// When a response is generated, if there is more data to be listed, this parameter
8977	// is present in the response and contains the value to use for the nextToken
8978	// parameter in a subsequent pagination request. If there is no more data to
8979	// be listed, this parameter is set to null.
8980	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8981}
8982
8983// String returns the string representation
8984func (s PreviewAgentsOutput) String() string {
8985	return awsutil.Prettify(s)
8986}
8987
8988// GoString returns the string representation
8989func (s PreviewAgentsOutput) GoString() string {
8990	return s.String()
8991}
8992
8993// SetAgentPreviews sets the AgentPreviews field's value.
8994func (s *PreviewAgentsOutput) SetAgentPreviews(v []*AgentPreview) *PreviewAgentsOutput {
8995	s.AgentPreviews = v
8996	return s
8997}
8998
8999// SetNextToken sets the NextToken field's value.
9000func (s *PreviewAgentsOutput) SetNextToken(v string) *PreviewAgentsOutput {
9001	s.NextToken = &v
9002	return s
9003}
9004
9005// The request is rejected. The specified assessment template is currently generating
9006// an exclusions preview.
9007type PreviewGenerationInProgressException struct {
9008	_            struct{} `type:"structure"`
9009	respMetadata protocol.ResponseMetadata
9010
9011	Message_ *string `locationName:"message" type:"string"`
9012}
9013
9014// String returns the string representation
9015func (s PreviewGenerationInProgressException) String() string {
9016	return awsutil.Prettify(s)
9017}
9018
9019// GoString returns the string representation
9020func (s PreviewGenerationInProgressException) GoString() string {
9021	return s.String()
9022}
9023
9024func newErrorPreviewGenerationInProgressException(v protocol.ResponseMetadata) error {
9025	return &PreviewGenerationInProgressException{
9026		respMetadata: v,
9027	}
9028}
9029
9030// Code returns the exception type name.
9031func (s PreviewGenerationInProgressException) Code() string {
9032	return "PreviewGenerationInProgressException"
9033}
9034
9035// Message returns the exception's message.
9036func (s PreviewGenerationInProgressException) Message() string {
9037	if s.Message_ != nil {
9038		return *s.Message_
9039	}
9040	return ""
9041}
9042
9043// OrigErr always returns nil, satisfies awserr.Error interface.
9044func (s PreviewGenerationInProgressException) OrigErr() error {
9045	return nil
9046}
9047
9048func (s PreviewGenerationInProgressException) Error() string {
9049	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9050}
9051
9052// Status code returns the HTTP status code for the request's response error.
9053func (s PreviewGenerationInProgressException) StatusCode() int {
9054	return s.respMetadata.StatusCode
9055}
9056
9057// RequestID returns the service's response RequestID for request.
9058func (s PreviewGenerationInProgressException) RequestID() string {
9059	return s.respMetadata.RequestID
9060}
9061
9062// Contains information about a private IP address associated with a network
9063// interface. This data type is used as a response element in the DescribeFindings
9064// action.
9065type PrivateIp struct {
9066	_ struct{} `type:"structure"`
9067
9068	// The DNS name of the private IP address.
9069	PrivateDnsName *string `locationName:"privateDnsName" type:"string"`
9070
9071	// The full IP address of the network inteface.
9072	PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"`
9073}
9074
9075// String returns the string representation
9076func (s PrivateIp) String() string {
9077	return awsutil.Prettify(s)
9078}
9079
9080// GoString returns the string representation
9081func (s PrivateIp) GoString() string {
9082	return s.String()
9083}
9084
9085// SetPrivateDnsName sets the PrivateDnsName field's value.
9086func (s *PrivateIp) SetPrivateDnsName(v string) *PrivateIp {
9087	s.PrivateDnsName = &v
9088	return s
9089}
9090
9091// SetPrivateIpAddress sets the PrivateIpAddress field's value.
9092func (s *PrivateIp) SetPrivateIpAddress(v string) *PrivateIp {
9093	s.PrivateIpAddress = &v
9094	return s
9095}
9096
9097type RegisterCrossAccountAccessRoleInput struct {
9098	_ struct{} `type:"structure"`
9099
9100	// The ARN of the IAM role that grants Amazon Inspector access to AWS Services
9101	// needed to perform security assessments.
9102	//
9103	// RoleArn is a required field
9104	RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"`
9105}
9106
9107// String returns the string representation
9108func (s RegisterCrossAccountAccessRoleInput) String() string {
9109	return awsutil.Prettify(s)
9110}
9111
9112// GoString returns the string representation
9113func (s RegisterCrossAccountAccessRoleInput) GoString() string {
9114	return s.String()
9115}
9116
9117// Validate inspects the fields of the type to determine if they are valid.
9118func (s *RegisterCrossAccountAccessRoleInput) Validate() error {
9119	invalidParams := request.ErrInvalidParams{Context: "RegisterCrossAccountAccessRoleInput"}
9120	if s.RoleArn == nil {
9121		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
9122	}
9123	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
9124		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
9125	}
9126
9127	if invalidParams.Len() > 0 {
9128		return invalidParams
9129	}
9130	return nil
9131}
9132
9133// SetRoleArn sets the RoleArn field's value.
9134func (s *RegisterCrossAccountAccessRoleInput) SetRoleArn(v string) *RegisterCrossAccountAccessRoleInput {
9135	s.RoleArn = &v
9136	return s
9137}
9138
9139type RegisterCrossAccountAccessRoleOutput struct {
9140	_ struct{} `type:"structure"`
9141}
9142
9143// String returns the string representation
9144func (s RegisterCrossAccountAccessRoleOutput) String() string {
9145	return awsutil.Prettify(s)
9146}
9147
9148// GoString returns the string representation
9149func (s RegisterCrossAccountAccessRoleOutput) GoString() string {
9150	return s.String()
9151}
9152
9153type RemoveAttributesFromFindingsInput struct {
9154	_ struct{} `type:"structure"`
9155
9156	// The array of attribute keys that you want to remove from specified findings.
9157	//
9158	// AttributeKeys is a required field
9159	AttributeKeys []*string `locationName:"attributeKeys" type:"list" required:"true"`
9160
9161	// The ARNs that specify the findings that you want to remove attributes from.
9162	//
9163	// FindingArns is a required field
9164	FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"`
9165}
9166
9167// String returns the string representation
9168func (s RemoveAttributesFromFindingsInput) String() string {
9169	return awsutil.Prettify(s)
9170}
9171
9172// GoString returns the string representation
9173func (s RemoveAttributesFromFindingsInput) GoString() string {
9174	return s.String()
9175}
9176
9177// Validate inspects the fields of the type to determine if they are valid.
9178func (s *RemoveAttributesFromFindingsInput) Validate() error {
9179	invalidParams := request.ErrInvalidParams{Context: "RemoveAttributesFromFindingsInput"}
9180	if s.AttributeKeys == nil {
9181		invalidParams.Add(request.NewErrParamRequired("AttributeKeys"))
9182	}
9183	if s.FindingArns == nil {
9184		invalidParams.Add(request.NewErrParamRequired("FindingArns"))
9185	}
9186	if s.FindingArns != nil && len(s.FindingArns) < 1 {
9187		invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1))
9188	}
9189
9190	if invalidParams.Len() > 0 {
9191		return invalidParams
9192	}
9193	return nil
9194}
9195
9196// SetAttributeKeys sets the AttributeKeys field's value.
9197func (s *RemoveAttributesFromFindingsInput) SetAttributeKeys(v []*string) *RemoveAttributesFromFindingsInput {
9198	s.AttributeKeys = v
9199	return s
9200}
9201
9202// SetFindingArns sets the FindingArns field's value.
9203func (s *RemoveAttributesFromFindingsInput) SetFindingArns(v []*string) *RemoveAttributesFromFindingsInput {
9204	s.FindingArns = v
9205	return s
9206}
9207
9208type RemoveAttributesFromFindingsOutput struct {
9209	_ struct{} `type:"structure"`
9210
9211	// Attributes details that cannot be described. An error code is provided for
9212	// each failed item.
9213	//
9214	// FailedItems is a required field
9215	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
9216}
9217
9218// String returns the string representation
9219func (s RemoveAttributesFromFindingsOutput) String() string {
9220	return awsutil.Prettify(s)
9221}
9222
9223// GoString returns the string representation
9224func (s RemoveAttributesFromFindingsOutput) GoString() string {
9225	return s.String()
9226}
9227
9228// SetFailedItems sets the FailedItems field's value.
9229func (s *RemoveAttributesFromFindingsOutput) SetFailedItems(v map[string]*FailedItemDetails) *RemoveAttributesFromFindingsOutput {
9230	s.FailedItems = v
9231	return s
9232}
9233
9234// Contains information about a resource group. The resource group defines a
9235// set of tags that, when queried, identify the AWS resources that make up the
9236// assessment target. This data type is used as the response element in the
9237// DescribeResourceGroups action.
9238type ResourceGroup struct {
9239	_ struct{} `type:"structure"`
9240
9241	// The ARN of the resource group.
9242	//
9243	// Arn is a required field
9244	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
9245
9246	// The time at which resource group is created.
9247	//
9248	// CreatedAt is a required field
9249	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
9250
9251	// The tags (key and value pairs) of the resource group. This data type property
9252	// is used in the CreateResourceGroup action.
9253	//
9254	// Tags is a required field
9255	Tags []*ResourceGroupTag `locationName:"tags" min:"1" type:"list" required:"true"`
9256}
9257
9258// String returns the string representation
9259func (s ResourceGroup) String() string {
9260	return awsutil.Prettify(s)
9261}
9262
9263// GoString returns the string representation
9264func (s ResourceGroup) GoString() string {
9265	return s.String()
9266}
9267
9268// SetArn sets the Arn field's value.
9269func (s *ResourceGroup) SetArn(v string) *ResourceGroup {
9270	s.Arn = &v
9271	return s
9272}
9273
9274// SetCreatedAt sets the CreatedAt field's value.
9275func (s *ResourceGroup) SetCreatedAt(v time.Time) *ResourceGroup {
9276	s.CreatedAt = &v
9277	return s
9278}
9279
9280// SetTags sets the Tags field's value.
9281func (s *ResourceGroup) SetTags(v []*ResourceGroupTag) *ResourceGroup {
9282	s.Tags = v
9283	return s
9284}
9285
9286// This data type is used as one of the elements of the ResourceGroup data type.
9287type ResourceGroupTag struct {
9288	_ struct{} `type:"structure"`
9289
9290	// A tag key.
9291	//
9292	// Key is a required field
9293	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
9294
9295	// The value assigned to a tag key.
9296	Value *string `locationName:"value" min:"1" type:"string"`
9297}
9298
9299// String returns the string representation
9300func (s ResourceGroupTag) String() string {
9301	return awsutil.Prettify(s)
9302}
9303
9304// GoString returns the string representation
9305func (s ResourceGroupTag) GoString() string {
9306	return s.String()
9307}
9308
9309// Validate inspects the fields of the type to determine if they are valid.
9310func (s *ResourceGroupTag) Validate() error {
9311	invalidParams := request.ErrInvalidParams{Context: "ResourceGroupTag"}
9312	if s.Key == nil {
9313		invalidParams.Add(request.NewErrParamRequired("Key"))
9314	}
9315	if s.Key != nil && len(*s.Key) < 1 {
9316		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
9317	}
9318	if s.Value != nil && len(*s.Value) < 1 {
9319		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
9320	}
9321
9322	if invalidParams.Len() > 0 {
9323		return invalidParams
9324	}
9325	return nil
9326}
9327
9328// SetKey sets the Key field's value.
9329func (s *ResourceGroupTag) SetKey(v string) *ResourceGroupTag {
9330	s.Key = &v
9331	return s
9332}
9333
9334// SetValue sets the Value field's value.
9335func (s *ResourceGroupTag) SetValue(v string) *ResourceGroupTag {
9336	s.Value = &v
9337	return s
9338}
9339
9340// Contains information about an Amazon Inspector rules package. This data type
9341// is used as the response element in the DescribeRulesPackages action.
9342type RulesPackage struct {
9343	_ struct{} `type:"structure"`
9344
9345	// The ARN of the rules package.
9346	//
9347	// Arn is a required field
9348	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
9349
9350	// The description of the rules package.
9351	Description *string `locationName:"description" type:"string"`
9352
9353	// The name of the rules package.
9354	//
9355	// Name is a required field
9356	Name *string `locationName:"name" type:"string" required:"true"`
9357
9358	// The provider of the rules package.
9359	//
9360	// Provider is a required field
9361	Provider *string `locationName:"provider" type:"string" required:"true"`
9362
9363	// The version ID of the rules package.
9364	//
9365	// Version is a required field
9366	Version *string `locationName:"version" type:"string" required:"true"`
9367}
9368
9369// String returns the string representation
9370func (s RulesPackage) String() string {
9371	return awsutil.Prettify(s)
9372}
9373
9374// GoString returns the string representation
9375func (s RulesPackage) GoString() string {
9376	return s.String()
9377}
9378
9379// SetArn sets the Arn field's value.
9380func (s *RulesPackage) SetArn(v string) *RulesPackage {
9381	s.Arn = &v
9382	return s
9383}
9384
9385// SetDescription sets the Description field's value.
9386func (s *RulesPackage) SetDescription(v string) *RulesPackage {
9387	s.Description = &v
9388	return s
9389}
9390
9391// SetName sets the Name field's value.
9392func (s *RulesPackage) SetName(v string) *RulesPackage {
9393	s.Name = &v
9394	return s
9395}
9396
9397// SetProvider sets the Provider field's value.
9398func (s *RulesPackage) SetProvider(v string) *RulesPackage {
9399	s.Provider = &v
9400	return s
9401}
9402
9403// SetVersion sets the Version field's value.
9404func (s *RulesPackage) SetVersion(v string) *RulesPackage {
9405	s.Version = &v
9406	return s
9407}
9408
9409// This data type contains key-value pairs that identify various Amazon resources.
9410type Scope struct {
9411	_ struct{} `type:"structure"`
9412
9413	// The type of the scope.
9414	Key *string `locationName:"key" type:"string" enum:"ScopeType"`
9415
9416	// The resource identifier for the specified scope type.
9417	Value *string `locationName:"value" type:"string"`
9418}
9419
9420// String returns the string representation
9421func (s Scope) String() string {
9422	return awsutil.Prettify(s)
9423}
9424
9425// GoString returns the string representation
9426func (s Scope) GoString() string {
9427	return s.String()
9428}
9429
9430// SetKey sets the Key field's value.
9431func (s *Scope) SetKey(v string) *Scope {
9432	s.Key = &v
9433	return s
9434}
9435
9436// SetValue sets the Value field's value.
9437func (s *Scope) SetValue(v string) *Scope {
9438	s.Value = &v
9439	return s
9440}
9441
9442// Contains information about a security group associated with a network interface.
9443// This data type is used as one of the elements of the NetworkInterface data
9444// type.
9445type SecurityGroup struct {
9446	_ struct{} `type:"structure"`
9447
9448	// The ID of the security group.
9449	GroupId *string `locationName:"groupId" type:"string"`
9450
9451	// The name of the security group.
9452	GroupName *string `locationName:"groupName" type:"string"`
9453}
9454
9455// String returns the string representation
9456func (s SecurityGroup) String() string {
9457	return awsutil.Prettify(s)
9458}
9459
9460// GoString returns the string representation
9461func (s SecurityGroup) GoString() string {
9462	return s.String()
9463}
9464
9465// SetGroupId sets the GroupId field's value.
9466func (s *SecurityGroup) SetGroupId(v string) *SecurityGroup {
9467	s.GroupId = &v
9468	return s
9469}
9470
9471// SetGroupName sets the GroupName field's value.
9472func (s *SecurityGroup) SetGroupName(v string) *SecurityGroup {
9473	s.GroupName = &v
9474	return s
9475}
9476
9477// This data type is used in the Finding data type.
9478type ServiceAttributes struct {
9479	_ struct{} `type:"structure"`
9480
9481	// The ARN of the assessment run during which the finding is generated.
9482	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string"`
9483
9484	// The ARN of the rules package that is used to generate the finding.
9485	RulesPackageArn *string `locationName:"rulesPackageArn" min:"1" type:"string"`
9486
9487	// The schema version of this data type.
9488	//
9489	// SchemaVersion is a required field
9490	SchemaVersion *int64 `locationName:"schemaVersion" type:"integer" required:"true"`
9491}
9492
9493// String returns the string representation
9494func (s ServiceAttributes) String() string {
9495	return awsutil.Prettify(s)
9496}
9497
9498// GoString returns the string representation
9499func (s ServiceAttributes) GoString() string {
9500	return s.String()
9501}
9502
9503// SetAssessmentRunArn sets the AssessmentRunArn field's value.
9504func (s *ServiceAttributes) SetAssessmentRunArn(v string) *ServiceAttributes {
9505	s.AssessmentRunArn = &v
9506	return s
9507}
9508
9509// SetRulesPackageArn sets the RulesPackageArn field's value.
9510func (s *ServiceAttributes) SetRulesPackageArn(v string) *ServiceAttributes {
9511	s.RulesPackageArn = &v
9512	return s
9513}
9514
9515// SetSchemaVersion sets the SchemaVersion field's value.
9516func (s *ServiceAttributes) SetSchemaVersion(v int64) *ServiceAttributes {
9517	s.SchemaVersion = &v
9518	return s
9519}
9520
9521// The serice is temporary unavailable.
9522type ServiceTemporarilyUnavailableException struct {
9523	_            struct{} `type:"structure"`
9524	respMetadata protocol.ResponseMetadata
9525
9526	// You can wait and then retry your request.
9527	//
9528	// CanRetry is a required field
9529	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
9530
9531	// Details of the exception error.
9532	Message_ *string `locationName:"message" type:"string"`
9533}
9534
9535// String returns the string representation
9536func (s ServiceTemporarilyUnavailableException) String() string {
9537	return awsutil.Prettify(s)
9538}
9539
9540// GoString returns the string representation
9541func (s ServiceTemporarilyUnavailableException) GoString() string {
9542	return s.String()
9543}
9544
9545func newErrorServiceTemporarilyUnavailableException(v protocol.ResponseMetadata) error {
9546	return &ServiceTemporarilyUnavailableException{
9547		respMetadata: v,
9548	}
9549}
9550
9551// Code returns the exception type name.
9552func (s ServiceTemporarilyUnavailableException) Code() string {
9553	return "ServiceTemporarilyUnavailableException"
9554}
9555
9556// Message returns the exception's message.
9557func (s ServiceTemporarilyUnavailableException) Message() string {
9558	if s.Message_ != nil {
9559		return *s.Message_
9560	}
9561	return ""
9562}
9563
9564// OrigErr always returns nil, satisfies awserr.Error interface.
9565func (s ServiceTemporarilyUnavailableException) OrigErr() error {
9566	return nil
9567}
9568
9569func (s ServiceTemporarilyUnavailableException) Error() string {
9570	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
9571}
9572
9573// Status code returns the HTTP status code for the request's response error.
9574func (s ServiceTemporarilyUnavailableException) StatusCode() int {
9575	return s.respMetadata.StatusCode
9576}
9577
9578// RequestID returns the service's response RequestID for request.
9579func (s ServiceTemporarilyUnavailableException) RequestID() string {
9580	return s.respMetadata.RequestID
9581}
9582
9583type SetTagsForResourceInput struct {
9584	_ struct{} `type:"structure"`
9585
9586	// The ARN of the assessment template that you want to set tags to.
9587	//
9588	// ResourceArn is a required field
9589	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
9590
9591	// A collection of key and value pairs that you want to set to the assessment
9592	// template.
9593	Tags []*Tag `locationName:"tags" type:"list"`
9594}
9595
9596// String returns the string representation
9597func (s SetTagsForResourceInput) String() string {
9598	return awsutil.Prettify(s)
9599}
9600
9601// GoString returns the string representation
9602func (s SetTagsForResourceInput) GoString() string {
9603	return s.String()
9604}
9605
9606// Validate inspects the fields of the type to determine if they are valid.
9607func (s *SetTagsForResourceInput) Validate() error {
9608	invalidParams := request.ErrInvalidParams{Context: "SetTagsForResourceInput"}
9609	if s.ResourceArn == nil {
9610		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
9611	}
9612	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
9613		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
9614	}
9615	if s.Tags != nil {
9616		for i, v := range s.Tags {
9617			if v == nil {
9618				continue
9619			}
9620			if err := v.Validate(); err != nil {
9621				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9622			}
9623		}
9624	}
9625
9626	if invalidParams.Len() > 0 {
9627		return invalidParams
9628	}
9629	return nil
9630}
9631
9632// SetResourceArn sets the ResourceArn field's value.
9633func (s *SetTagsForResourceInput) SetResourceArn(v string) *SetTagsForResourceInput {
9634	s.ResourceArn = &v
9635	return s
9636}
9637
9638// SetTags sets the Tags field's value.
9639func (s *SetTagsForResourceInput) SetTags(v []*Tag) *SetTagsForResourceInput {
9640	s.Tags = v
9641	return s
9642}
9643
9644type SetTagsForResourceOutput struct {
9645	_ struct{} `type:"structure"`
9646}
9647
9648// String returns the string representation
9649func (s SetTagsForResourceOutput) String() string {
9650	return awsutil.Prettify(s)
9651}
9652
9653// GoString returns the string representation
9654func (s SetTagsForResourceOutput) GoString() string {
9655	return s.String()
9656}
9657
9658type StartAssessmentRunInput struct {
9659	_ struct{} `type:"structure"`
9660
9661	// You can specify the name for the assessment run. The name must be unique
9662	// for the assessment template whose ARN is used to start the assessment run.
9663	AssessmentRunName *string `locationName:"assessmentRunName" min:"1" type:"string"`
9664
9665	// The ARN of the assessment template of the assessment run that you want to
9666	// start.
9667	//
9668	// AssessmentTemplateArn is a required field
9669	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
9670}
9671
9672// String returns the string representation
9673func (s StartAssessmentRunInput) String() string {
9674	return awsutil.Prettify(s)
9675}
9676
9677// GoString returns the string representation
9678func (s StartAssessmentRunInput) GoString() string {
9679	return s.String()
9680}
9681
9682// Validate inspects the fields of the type to determine if they are valid.
9683func (s *StartAssessmentRunInput) Validate() error {
9684	invalidParams := request.ErrInvalidParams{Context: "StartAssessmentRunInput"}
9685	if s.AssessmentRunName != nil && len(*s.AssessmentRunName) < 1 {
9686		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunName", 1))
9687	}
9688	if s.AssessmentTemplateArn == nil {
9689		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
9690	}
9691	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
9692		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
9693	}
9694
9695	if invalidParams.Len() > 0 {
9696		return invalidParams
9697	}
9698	return nil
9699}
9700
9701// SetAssessmentRunName sets the AssessmentRunName field's value.
9702func (s *StartAssessmentRunInput) SetAssessmentRunName(v string) *StartAssessmentRunInput {
9703	s.AssessmentRunName = &v
9704	return s
9705}
9706
9707// SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
9708func (s *StartAssessmentRunInput) SetAssessmentTemplateArn(v string) *StartAssessmentRunInput {
9709	s.AssessmentTemplateArn = &v
9710	return s
9711}
9712
9713type StartAssessmentRunOutput struct {
9714	_ struct{} `type:"structure"`
9715
9716	// The ARN of the assessment run that has been started.
9717	//
9718	// AssessmentRunArn is a required field
9719	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
9720}
9721
9722// String returns the string representation
9723func (s StartAssessmentRunOutput) String() string {
9724	return awsutil.Prettify(s)
9725}
9726
9727// GoString returns the string representation
9728func (s StartAssessmentRunOutput) GoString() string {
9729	return s.String()
9730}
9731
9732// SetAssessmentRunArn sets the AssessmentRunArn field's value.
9733func (s *StartAssessmentRunOutput) SetAssessmentRunArn(v string) *StartAssessmentRunOutput {
9734	s.AssessmentRunArn = &v
9735	return s
9736}
9737
9738type StopAssessmentRunInput struct {
9739	_ struct{} `type:"structure"`
9740
9741	// The ARN of the assessment run that you want to stop.
9742	//
9743	// AssessmentRunArn is a required field
9744	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
9745
9746	// An input option that can be set to either START_EVALUATION or SKIP_EVALUATION.
9747	// START_EVALUATION (the default value), stops the AWS agent from collecting
9748	// data and begins the results evaluation and the findings generation process.
9749	// SKIP_EVALUATION cancels the assessment run immediately, after which no findings
9750	// are generated.
9751	StopAction *string `locationName:"stopAction" type:"string" enum:"StopAction"`
9752}
9753
9754// String returns the string representation
9755func (s StopAssessmentRunInput) String() string {
9756	return awsutil.Prettify(s)
9757}
9758
9759// GoString returns the string representation
9760func (s StopAssessmentRunInput) GoString() string {
9761	return s.String()
9762}
9763
9764// Validate inspects the fields of the type to determine if they are valid.
9765func (s *StopAssessmentRunInput) Validate() error {
9766	invalidParams := request.ErrInvalidParams{Context: "StopAssessmentRunInput"}
9767	if s.AssessmentRunArn == nil {
9768		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
9769	}
9770	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
9771		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
9772	}
9773
9774	if invalidParams.Len() > 0 {
9775		return invalidParams
9776	}
9777	return nil
9778}
9779
9780// SetAssessmentRunArn sets the AssessmentRunArn field's value.
9781func (s *StopAssessmentRunInput) SetAssessmentRunArn(v string) *StopAssessmentRunInput {
9782	s.AssessmentRunArn = &v
9783	return s
9784}
9785
9786// SetStopAction sets the StopAction field's value.
9787func (s *StopAssessmentRunInput) SetStopAction(v string) *StopAssessmentRunInput {
9788	s.StopAction = &v
9789	return s
9790}
9791
9792type StopAssessmentRunOutput struct {
9793	_ struct{} `type:"structure"`
9794}
9795
9796// String returns the string representation
9797func (s StopAssessmentRunOutput) String() string {
9798	return awsutil.Prettify(s)
9799}
9800
9801// GoString returns the string representation
9802func (s StopAssessmentRunOutput) GoString() string {
9803	return s.String()
9804}
9805
9806type SubscribeToEventInput struct {
9807	_ struct{} `type:"structure"`
9808
9809	// The event for which you want to receive SNS notifications.
9810	//
9811	// Event is a required field
9812	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
9813
9814	// The ARN of the assessment template that is used during the event for which
9815	// you want to receive SNS notifications.
9816	//
9817	// ResourceArn is a required field
9818	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
9819
9820	// The ARN of the SNS topic to which the SNS notifications are sent.
9821	//
9822	// TopicArn is a required field
9823	TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"`
9824}
9825
9826// String returns the string representation
9827func (s SubscribeToEventInput) String() string {
9828	return awsutil.Prettify(s)
9829}
9830
9831// GoString returns the string representation
9832func (s SubscribeToEventInput) GoString() string {
9833	return s.String()
9834}
9835
9836// Validate inspects the fields of the type to determine if they are valid.
9837func (s *SubscribeToEventInput) Validate() error {
9838	invalidParams := request.ErrInvalidParams{Context: "SubscribeToEventInput"}
9839	if s.Event == nil {
9840		invalidParams.Add(request.NewErrParamRequired("Event"))
9841	}
9842	if s.ResourceArn == nil {
9843		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
9844	}
9845	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
9846		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
9847	}
9848	if s.TopicArn == nil {
9849		invalidParams.Add(request.NewErrParamRequired("TopicArn"))
9850	}
9851	if s.TopicArn != nil && len(*s.TopicArn) < 1 {
9852		invalidParams.Add(request.NewErrParamMinLen("TopicArn", 1))
9853	}
9854
9855	if invalidParams.Len() > 0 {
9856		return invalidParams
9857	}
9858	return nil
9859}
9860
9861// SetEvent sets the Event field's value.
9862func (s *SubscribeToEventInput) SetEvent(v string) *SubscribeToEventInput {
9863	s.Event = &v
9864	return s
9865}
9866
9867// SetResourceArn sets the ResourceArn field's value.
9868func (s *SubscribeToEventInput) SetResourceArn(v string) *SubscribeToEventInput {
9869	s.ResourceArn = &v
9870	return s
9871}
9872
9873// SetTopicArn sets the TopicArn field's value.
9874func (s *SubscribeToEventInput) SetTopicArn(v string) *SubscribeToEventInput {
9875	s.TopicArn = &v
9876	return s
9877}
9878
9879type SubscribeToEventOutput struct {
9880	_ struct{} `type:"structure"`
9881}
9882
9883// String returns the string representation
9884func (s SubscribeToEventOutput) String() string {
9885	return awsutil.Prettify(s)
9886}
9887
9888// GoString returns the string representation
9889func (s SubscribeToEventOutput) GoString() string {
9890	return s.String()
9891}
9892
9893// This data type is used as a response element in the ListEventSubscriptions
9894// action.
9895type Subscription struct {
9896	_ struct{} `type:"structure"`
9897
9898	// The list of existing event subscriptions.
9899	//
9900	// EventSubscriptions is a required field
9901	EventSubscriptions []*EventSubscription `locationName:"eventSubscriptions" min:"1" type:"list" required:"true"`
9902
9903	// The ARN of the assessment template that is used during the event for which
9904	// the SNS notification is sent.
9905	//
9906	// ResourceArn is a required field
9907	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
9908
9909	// The ARN of the Amazon Simple Notification Service (SNS) topic to which the
9910	// SNS notifications are sent.
9911	//
9912	// TopicArn is a required field
9913	TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"`
9914}
9915
9916// String returns the string representation
9917func (s Subscription) String() string {
9918	return awsutil.Prettify(s)
9919}
9920
9921// GoString returns the string representation
9922func (s Subscription) GoString() string {
9923	return s.String()
9924}
9925
9926// SetEventSubscriptions sets the EventSubscriptions field's value.
9927func (s *Subscription) SetEventSubscriptions(v []*EventSubscription) *Subscription {
9928	s.EventSubscriptions = v
9929	return s
9930}
9931
9932// SetResourceArn sets the ResourceArn field's value.
9933func (s *Subscription) SetResourceArn(v string) *Subscription {
9934	s.ResourceArn = &v
9935	return s
9936}
9937
9938// SetTopicArn sets the TopicArn field's value.
9939func (s *Subscription) SetTopicArn(v string) *Subscription {
9940	s.TopicArn = &v
9941	return s
9942}
9943
9944// A key and value pair. This data type is used as a request parameter in the
9945// SetTagsForResource action and a response element in the ListTagsForResource
9946// action.
9947type Tag struct {
9948	_ struct{} `type:"structure"`
9949
9950	// A tag key.
9951	//
9952	// Key is a required field
9953	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
9954
9955	// A value assigned to a tag key.
9956	Value *string `locationName:"value" min:"1" type:"string"`
9957}
9958
9959// String returns the string representation
9960func (s Tag) String() string {
9961	return awsutil.Prettify(s)
9962}
9963
9964// GoString returns the string representation
9965func (s Tag) GoString() string {
9966	return s.String()
9967}
9968
9969// Validate inspects the fields of the type to determine if they are valid.
9970func (s *Tag) Validate() error {
9971	invalidParams := request.ErrInvalidParams{Context: "Tag"}
9972	if s.Key == nil {
9973		invalidParams.Add(request.NewErrParamRequired("Key"))
9974	}
9975	if s.Key != nil && len(*s.Key) < 1 {
9976		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
9977	}
9978	if s.Value != nil && len(*s.Value) < 1 {
9979		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
9980	}
9981
9982	if invalidParams.Len() > 0 {
9983		return invalidParams
9984	}
9985	return nil
9986}
9987
9988// SetKey sets the Key field's value.
9989func (s *Tag) SetKey(v string) *Tag {
9990	s.Key = &v
9991	return s
9992}
9993
9994// SetValue sets the Value field's value.
9995func (s *Tag) SetValue(v string) *Tag {
9996	s.Value = &v
9997	return s
9998}
9999
10000// The metadata about the Amazon Inspector application data metrics collected
10001// by the agent. This data type is used as the response element in the GetTelemetryMetadata
10002// action.
10003type TelemetryMetadata struct {
10004	_ struct{} `type:"structure"`
10005
10006	// The count of messages that the agent sends to the Amazon Inspector service.
10007	//
10008	// Count is a required field
10009	Count *int64 `locationName:"count" type:"long" required:"true"`
10010
10011	// The data size of messages that the agent sends to the Amazon Inspector service.
10012	DataSize *int64 `locationName:"dataSize" type:"long"`
10013
10014	// A specific type of behavioral data that is collected by the agent.
10015	//
10016	// MessageType is a required field
10017	MessageType *string `locationName:"messageType" min:"1" type:"string" required:"true"`
10018}
10019
10020// String returns the string representation
10021func (s TelemetryMetadata) String() string {
10022	return awsutil.Prettify(s)
10023}
10024
10025// GoString returns the string representation
10026func (s TelemetryMetadata) GoString() string {
10027	return s.String()
10028}
10029
10030// SetCount sets the Count field's value.
10031func (s *TelemetryMetadata) SetCount(v int64) *TelemetryMetadata {
10032	s.Count = &v
10033	return s
10034}
10035
10036// SetDataSize sets the DataSize field's value.
10037func (s *TelemetryMetadata) SetDataSize(v int64) *TelemetryMetadata {
10038	s.DataSize = &v
10039	return s
10040}
10041
10042// SetMessageType sets the MessageType field's value.
10043func (s *TelemetryMetadata) SetMessageType(v string) *TelemetryMetadata {
10044	s.MessageType = &v
10045	return s
10046}
10047
10048// This data type is used in the AssessmentRunFilter data type.
10049type TimestampRange struct {
10050	_ struct{} `type:"structure"`
10051
10052	// The minimum value of the timestamp range.
10053	BeginDate *time.Time `locationName:"beginDate" type:"timestamp"`
10054
10055	// The maximum value of the timestamp range.
10056	EndDate *time.Time `locationName:"endDate" type:"timestamp"`
10057}
10058
10059// String returns the string representation
10060func (s TimestampRange) String() string {
10061	return awsutil.Prettify(s)
10062}
10063
10064// GoString returns the string representation
10065func (s TimestampRange) GoString() string {
10066	return s.String()
10067}
10068
10069// SetBeginDate sets the BeginDate field's value.
10070func (s *TimestampRange) SetBeginDate(v time.Time) *TimestampRange {
10071	s.BeginDate = &v
10072	return s
10073}
10074
10075// SetEndDate sets the EndDate field's value.
10076func (s *TimestampRange) SetEndDate(v time.Time) *TimestampRange {
10077	s.EndDate = &v
10078	return s
10079}
10080
10081type UnsubscribeFromEventInput struct {
10082	_ struct{} `type:"structure"`
10083
10084	// The event for which you want to stop receiving SNS notifications.
10085	//
10086	// Event is a required field
10087	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
10088
10089	// The ARN of the assessment template that is used during the event for which
10090	// you want to stop receiving SNS notifications.
10091	//
10092	// ResourceArn is a required field
10093	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
10094
10095	// The ARN of the SNS topic to which SNS notifications are sent.
10096	//
10097	// TopicArn is a required field
10098	TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"`
10099}
10100
10101// String returns the string representation
10102func (s UnsubscribeFromEventInput) String() string {
10103	return awsutil.Prettify(s)
10104}
10105
10106// GoString returns the string representation
10107func (s UnsubscribeFromEventInput) GoString() string {
10108	return s.String()
10109}
10110
10111// Validate inspects the fields of the type to determine if they are valid.
10112func (s *UnsubscribeFromEventInput) Validate() error {
10113	invalidParams := request.ErrInvalidParams{Context: "UnsubscribeFromEventInput"}
10114	if s.Event == nil {
10115		invalidParams.Add(request.NewErrParamRequired("Event"))
10116	}
10117	if s.ResourceArn == nil {
10118		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
10119	}
10120	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
10121		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
10122	}
10123	if s.TopicArn == nil {
10124		invalidParams.Add(request.NewErrParamRequired("TopicArn"))
10125	}
10126	if s.TopicArn != nil && len(*s.TopicArn) < 1 {
10127		invalidParams.Add(request.NewErrParamMinLen("TopicArn", 1))
10128	}
10129
10130	if invalidParams.Len() > 0 {
10131		return invalidParams
10132	}
10133	return nil
10134}
10135
10136// SetEvent sets the Event field's value.
10137func (s *UnsubscribeFromEventInput) SetEvent(v string) *UnsubscribeFromEventInput {
10138	s.Event = &v
10139	return s
10140}
10141
10142// SetResourceArn sets the ResourceArn field's value.
10143func (s *UnsubscribeFromEventInput) SetResourceArn(v string) *UnsubscribeFromEventInput {
10144	s.ResourceArn = &v
10145	return s
10146}
10147
10148// SetTopicArn sets the TopicArn field's value.
10149func (s *UnsubscribeFromEventInput) SetTopicArn(v string) *UnsubscribeFromEventInput {
10150	s.TopicArn = &v
10151	return s
10152}
10153
10154type UnsubscribeFromEventOutput struct {
10155	_ struct{} `type:"structure"`
10156}
10157
10158// String returns the string representation
10159func (s UnsubscribeFromEventOutput) String() string {
10160	return awsutil.Prettify(s)
10161}
10162
10163// GoString returns the string representation
10164func (s UnsubscribeFromEventOutput) GoString() string {
10165	return s.String()
10166}
10167
10168// Used by the GetAssessmentReport API. The request was rejected because you
10169// tried to generate a report for an assessment run that existed before reporting
10170// was supported in Amazon Inspector. You can only generate reports for assessment
10171// runs that took place or will take place after generating reports in Amazon
10172// Inspector became available.
10173type UnsupportedFeatureException struct {
10174	_            struct{} `type:"structure"`
10175	respMetadata protocol.ResponseMetadata
10176
10177	// CanRetry is a required field
10178	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
10179
10180	Message_ *string `locationName:"message" type:"string"`
10181}
10182
10183// String returns the string representation
10184func (s UnsupportedFeatureException) String() string {
10185	return awsutil.Prettify(s)
10186}
10187
10188// GoString returns the string representation
10189func (s UnsupportedFeatureException) GoString() string {
10190	return s.String()
10191}
10192
10193func newErrorUnsupportedFeatureException(v protocol.ResponseMetadata) error {
10194	return &UnsupportedFeatureException{
10195		respMetadata: v,
10196	}
10197}
10198
10199// Code returns the exception type name.
10200func (s UnsupportedFeatureException) Code() string {
10201	return "UnsupportedFeatureException"
10202}
10203
10204// Message returns the exception's message.
10205func (s UnsupportedFeatureException) Message() string {
10206	if s.Message_ != nil {
10207		return *s.Message_
10208	}
10209	return ""
10210}
10211
10212// OrigErr always returns nil, satisfies awserr.Error interface.
10213func (s UnsupportedFeatureException) OrigErr() error {
10214	return nil
10215}
10216
10217func (s UnsupportedFeatureException) Error() string {
10218	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
10219}
10220
10221// Status code returns the HTTP status code for the request's response error.
10222func (s UnsupportedFeatureException) StatusCode() int {
10223	return s.respMetadata.StatusCode
10224}
10225
10226// RequestID returns the service's response RequestID for request.
10227func (s UnsupportedFeatureException) RequestID() string {
10228	return s.respMetadata.RequestID
10229}
10230
10231type UpdateAssessmentTargetInput struct {
10232	_ struct{} `type:"structure"`
10233
10234	// The ARN of the assessment target that you want to update.
10235	//
10236	// AssessmentTargetArn is a required field
10237	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
10238
10239	// The name of the assessment target that you want to update.
10240	//
10241	// AssessmentTargetName is a required field
10242	AssessmentTargetName *string `locationName:"assessmentTargetName" min:"1" type:"string" required:"true"`
10243
10244	// The ARN of the resource group that is used to specify the new resource group
10245	// to associate with the assessment target.
10246	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string"`
10247}
10248
10249// String returns the string representation
10250func (s UpdateAssessmentTargetInput) String() string {
10251	return awsutil.Prettify(s)
10252}
10253
10254// GoString returns the string representation
10255func (s UpdateAssessmentTargetInput) GoString() string {
10256	return s.String()
10257}
10258
10259// Validate inspects the fields of the type to determine if they are valid.
10260func (s *UpdateAssessmentTargetInput) Validate() error {
10261	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentTargetInput"}
10262	if s.AssessmentTargetArn == nil {
10263		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn"))
10264	}
10265	if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 {
10266		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1))
10267	}
10268	if s.AssessmentTargetName == nil {
10269		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetName"))
10270	}
10271	if s.AssessmentTargetName != nil && len(*s.AssessmentTargetName) < 1 {
10272		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetName", 1))
10273	}
10274	if s.ResourceGroupArn != nil && len(*s.ResourceGroupArn) < 1 {
10275		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArn", 1))
10276	}
10277
10278	if invalidParams.Len() > 0 {
10279		return invalidParams
10280	}
10281	return nil
10282}
10283
10284// SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
10285func (s *UpdateAssessmentTargetInput) SetAssessmentTargetArn(v string) *UpdateAssessmentTargetInput {
10286	s.AssessmentTargetArn = &v
10287	return s
10288}
10289
10290// SetAssessmentTargetName sets the AssessmentTargetName field's value.
10291func (s *UpdateAssessmentTargetInput) SetAssessmentTargetName(v string) *UpdateAssessmentTargetInput {
10292	s.AssessmentTargetName = &v
10293	return s
10294}
10295
10296// SetResourceGroupArn sets the ResourceGroupArn field's value.
10297func (s *UpdateAssessmentTargetInput) SetResourceGroupArn(v string) *UpdateAssessmentTargetInput {
10298	s.ResourceGroupArn = &v
10299	return s
10300}
10301
10302type UpdateAssessmentTargetOutput struct {
10303	_ struct{} `type:"structure"`
10304}
10305
10306// String returns the string representation
10307func (s UpdateAssessmentTargetOutput) String() string {
10308	return awsutil.Prettify(s)
10309}
10310
10311// GoString returns the string representation
10312func (s UpdateAssessmentTargetOutput) GoString() string {
10313	return s.String()
10314}
10315
10316const (
10317	// AccessDeniedErrorCodeAccessDeniedToAssessmentTarget is a AccessDeniedErrorCode enum value
10318	AccessDeniedErrorCodeAccessDeniedToAssessmentTarget = "ACCESS_DENIED_TO_ASSESSMENT_TARGET"
10319
10320	// AccessDeniedErrorCodeAccessDeniedToAssessmentTemplate is a AccessDeniedErrorCode enum value
10321	AccessDeniedErrorCodeAccessDeniedToAssessmentTemplate = "ACCESS_DENIED_TO_ASSESSMENT_TEMPLATE"
10322
10323	// AccessDeniedErrorCodeAccessDeniedToAssessmentRun is a AccessDeniedErrorCode enum value
10324	AccessDeniedErrorCodeAccessDeniedToAssessmentRun = "ACCESS_DENIED_TO_ASSESSMENT_RUN"
10325
10326	// AccessDeniedErrorCodeAccessDeniedToFinding is a AccessDeniedErrorCode enum value
10327	AccessDeniedErrorCodeAccessDeniedToFinding = "ACCESS_DENIED_TO_FINDING"
10328
10329	// AccessDeniedErrorCodeAccessDeniedToResourceGroup is a AccessDeniedErrorCode enum value
10330	AccessDeniedErrorCodeAccessDeniedToResourceGroup = "ACCESS_DENIED_TO_RESOURCE_GROUP"
10331
10332	// AccessDeniedErrorCodeAccessDeniedToRulesPackage is a AccessDeniedErrorCode enum value
10333	AccessDeniedErrorCodeAccessDeniedToRulesPackage = "ACCESS_DENIED_TO_RULES_PACKAGE"
10334
10335	// AccessDeniedErrorCodeAccessDeniedToSnsTopic is a AccessDeniedErrorCode enum value
10336	AccessDeniedErrorCodeAccessDeniedToSnsTopic = "ACCESS_DENIED_TO_SNS_TOPIC"
10337
10338	// AccessDeniedErrorCodeAccessDeniedToIamRole is a AccessDeniedErrorCode enum value
10339	AccessDeniedErrorCodeAccessDeniedToIamRole = "ACCESS_DENIED_TO_IAM_ROLE"
10340)
10341
10342const (
10343	// AgentHealthHealthy is a AgentHealth enum value
10344	AgentHealthHealthy = "HEALTHY"
10345
10346	// AgentHealthUnhealthy is a AgentHealth enum value
10347	AgentHealthUnhealthy = "UNHEALTHY"
10348
10349	// AgentHealthUnknown is a AgentHealth enum value
10350	AgentHealthUnknown = "UNKNOWN"
10351)
10352
10353const (
10354	// AgentHealthCodeIdle is a AgentHealthCode enum value
10355	AgentHealthCodeIdle = "IDLE"
10356
10357	// AgentHealthCodeRunning is a AgentHealthCode enum value
10358	AgentHealthCodeRunning = "RUNNING"
10359
10360	// AgentHealthCodeShutdown is a AgentHealthCode enum value
10361	AgentHealthCodeShutdown = "SHUTDOWN"
10362
10363	// AgentHealthCodeUnhealthy is a AgentHealthCode enum value
10364	AgentHealthCodeUnhealthy = "UNHEALTHY"
10365
10366	// AgentHealthCodeThrottled is a AgentHealthCode enum value
10367	AgentHealthCodeThrottled = "THROTTLED"
10368
10369	// AgentHealthCodeUnknown is a AgentHealthCode enum value
10370	AgentHealthCodeUnknown = "UNKNOWN"
10371)
10372
10373const (
10374	// AssessmentRunNotificationSnsStatusCodeSuccess is a AssessmentRunNotificationSnsStatusCode enum value
10375	AssessmentRunNotificationSnsStatusCodeSuccess = "SUCCESS"
10376
10377	// AssessmentRunNotificationSnsStatusCodeTopicDoesNotExist is a AssessmentRunNotificationSnsStatusCode enum value
10378	AssessmentRunNotificationSnsStatusCodeTopicDoesNotExist = "TOPIC_DOES_NOT_EXIST"
10379
10380	// AssessmentRunNotificationSnsStatusCodeAccessDenied is a AssessmentRunNotificationSnsStatusCode enum value
10381	AssessmentRunNotificationSnsStatusCodeAccessDenied = "ACCESS_DENIED"
10382
10383	// AssessmentRunNotificationSnsStatusCodeInternalError is a AssessmentRunNotificationSnsStatusCode enum value
10384	AssessmentRunNotificationSnsStatusCodeInternalError = "INTERNAL_ERROR"
10385)
10386
10387const (
10388	// AssessmentRunStateCreated is a AssessmentRunState enum value
10389	AssessmentRunStateCreated = "CREATED"
10390
10391	// AssessmentRunStateStartDataCollectionPending is a AssessmentRunState enum value
10392	AssessmentRunStateStartDataCollectionPending = "START_DATA_COLLECTION_PENDING"
10393
10394	// AssessmentRunStateStartDataCollectionInProgress is a AssessmentRunState enum value
10395	AssessmentRunStateStartDataCollectionInProgress = "START_DATA_COLLECTION_IN_PROGRESS"
10396
10397	// AssessmentRunStateCollectingData is a AssessmentRunState enum value
10398	AssessmentRunStateCollectingData = "COLLECTING_DATA"
10399
10400	// AssessmentRunStateStopDataCollectionPending is a AssessmentRunState enum value
10401	AssessmentRunStateStopDataCollectionPending = "STOP_DATA_COLLECTION_PENDING"
10402
10403	// AssessmentRunStateDataCollected is a AssessmentRunState enum value
10404	AssessmentRunStateDataCollected = "DATA_COLLECTED"
10405
10406	// AssessmentRunStateStartEvaluatingRulesPending is a AssessmentRunState enum value
10407	AssessmentRunStateStartEvaluatingRulesPending = "START_EVALUATING_RULES_PENDING"
10408
10409	// AssessmentRunStateEvaluatingRules is a AssessmentRunState enum value
10410	AssessmentRunStateEvaluatingRules = "EVALUATING_RULES"
10411
10412	// AssessmentRunStateFailed is a AssessmentRunState enum value
10413	AssessmentRunStateFailed = "FAILED"
10414
10415	// AssessmentRunStateError is a AssessmentRunState enum value
10416	AssessmentRunStateError = "ERROR"
10417
10418	// AssessmentRunStateCompleted is a AssessmentRunState enum value
10419	AssessmentRunStateCompleted = "COMPLETED"
10420
10421	// AssessmentRunStateCompletedWithErrors is a AssessmentRunState enum value
10422	AssessmentRunStateCompletedWithErrors = "COMPLETED_WITH_ERRORS"
10423
10424	// AssessmentRunStateCanceled is a AssessmentRunState enum value
10425	AssessmentRunStateCanceled = "CANCELED"
10426)
10427
10428const (
10429	// AssetTypeEc2Instance is a AssetType enum value
10430	AssetTypeEc2Instance = "ec2-instance"
10431)
10432
10433const (
10434	// EventAssessmentRunStarted is a Event enum value
10435	EventAssessmentRunStarted = "ASSESSMENT_RUN_STARTED"
10436
10437	// EventAssessmentRunCompleted is a Event enum value
10438	EventAssessmentRunCompleted = "ASSESSMENT_RUN_COMPLETED"
10439
10440	// EventAssessmentRunStateChanged is a Event enum value
10441	EventAssessmentRunStateChanged = "ASSESSMENT_RUN_STATE_CHANGED"
10442
10443	// EventFindingReported is a Event enum value
10444	EventFindingReported = "FINDING_REPORTED"
10445
10446	// EventOther is a Event enum value
10447	EventOther = "OTHER"
10448)
10449
10450const (
10451	// FailedItemErrorCodeInvalidArn is a FailedItemErrorCode enum value
10452	FailedItemErrorCodeInvalidArn = "INVALID_ARN"
10453
10454	// FailedItemErrorCodeDuplicateArn is a FailedItemErrorCode enum value
10455	FailedItemErrorCodeDuplicateArn = "DUPLICATE_ARN"
10456
10457	// FailedItemErrorCodeItemDoesNotExist is a FailedItemErrorCode enum value
10458	FailedItemErrorCodeItemDoesNotExist = "ITEM_DOES_NOT_EXIST"
10459
10460	// FailedItemErrorCodeAccessDenied is a FailedItemErrorCode enum value
10461	FailedItemErrorCodeAccessDenied = "ACCESS_DENIED"
10462
10463	// FailedItemErrorCodeLimitExceeded is a FailedItemErrorCode enum value
10464	FailedItemErrorCodeLimitExceeded = "LIMIT_EXCEEDED"
10465
10466	// FailedItemErrorCodeInternalError is a FailedItemErrorCode enum value
10467	FailedItemErrorCodeInternalError = "INTERNAL_ERROR"
10468)
10469
10470const (
10471	// InvalidCrossAccountRoleErrorCodeRoleDoesNotExistOrInvalidTrustRelationship is a InvalidCrossAccountRoleErrorCode enum value
10472	InvalidCrossAccountRoleErrorCodeRoleDoesNotExistOrInvalidTrustRelationship = "ROLE_DOES_NOT_EXIST_OR_INVALID_TRUST_RELATIONSHIP"
10473
10474	// InvalidCrossAccountRoleErrorCodeRoleDoesNotHaveCorrectPolicy is a InvalidCrossAccountRoleErrorCode enum value
10475	InvalidCrossAccountRoleErrorCodeRoleDoesNotHaveCorrectPolicy = "ROLE_DOES_NOT_HAVE_CORRECT_POLICY"
10476)
10477
10478const (
10479	// InvalidInputErrorCodeInvalidAssessmentTargetArn is a InvalidInputErrorCode enum value
10480	InvalidInputErrorCodeInvalidAssessmentTargetArn = "INVALID_ASSESSMENT_TARGET_ARN"
10481
10482	// InvalidInputErrorCodeInvalidAssessmentTemplateArn is a InvalidInputErrorCode enum value
10483	InvalidInputErrorCodeInvalidAssessmentTemplateArn = "INVALID_ASSESSMENT_TEMPLATE_ARN"
10484
10485	// InvalidInputErrorCodeInvalidAssessmentRunArn is a InvalidInputErrorCode enum value
10486	InvalidInputErrorCodeInvalidAssessmentRunArn = "INVALID_ASSESSMENT_RUN_ARN"
10487
10488	// InvalidInputErrorCodeInvalidFindingArn is a InvalidInputErrorCode enum value
10489	InvalidInputErrorCodeInvalidFindingArn = "INVALID_FINDING_ARN"
10490
10491	// InvalidInputErrorCodeInvalidResourceGroupArn is a InvalidInputErrorCode enum value
10492	InvalidInputErrorCodeInvalidResourceGroupArn = "INVALID_RESOURCE_GROUP_ARN"
10493
10494	// InvalidInputErrorCodeInvalidRulesPackageArn is a InvalidInputErrorCode enum value
10495	InvalidInputErrorCodeInvalidRulesPackageArn = "INVALID_RULES_PACKAGE_ARN"
10496
10497	// InvalidInputErrorCodeInvalidResourceArn is a InvalidInputErrorCode enum value
10498	InvalidInputErrorCodeInvalidResourceArn = "INVALID_RESOURCE_ARN"
10499
10500	// InvalidInputErrorCodeInvalidSnsTopicArn is a InvalidInputErrorCode enum value
10501	InvalidInputErrorCodeInvalidSnsTopicArn = "INVALID_SNS_TOPIC_ARN"
10502
10503	// InvalidInputErrorCodeInvalidIamRoleArn is a InvalidInputErrorCode enum value
10504	InvalidInputErrorCodeInvalidIamRoleArn = "INVALID_IAM_ROLE_ARN"
10505
10506	// InvalidInputErrorCodeInvalidAssessmentTargetName is a InvalidInputErrorCode enum value
10507	InvalidInputErrorCodeInvalidAssessmentTargetName = "INVALID_ASSESSMENT_TARGET_NAME"
10508
10509	// InvalidInputErrorCodeInvalidAssessmentTargetNamePattern is a InvalidInputErrorCode enum value
10510	InvalidInputErrorCodeInvalidAssessmentTargetNamePattern = "INVALID_ASSESSMENT_TARGET_NAME_PATTERN"
10511
10512	// InvalidInputErrorCodeInvalidAssessmentTemplateName is a InvalidInputErrorCode enum value
10513	InvalidInputErrorCodeInvalidAssessmentTemplateName = "INVALID_ASSESSMENT_TEMPLATE_NAME"
10514
10515	// InvalidInputErrorCodeInvalidAssessmentTemplateNamePattern is a InvalidInputErrorCode enum value
10516	InvalidInputErrorCodeInvalidAssessmentTemplateNamePattern = "INVALID_ASSESSMENT_TEMPLATE_NAME_PATTERN"
10517
10518	// InvalidInputErrorCodeInvalidAssessmentTemplateDuration is a InvalidInputErrorCode enum value
10519	InvalidInputErrorCodeInvalidAssessmentTemplateDuration = "INVALID_ASSESSMENT_TEMPLATE_DURATION"
10520
10521	// InvalidInputErrorCodeInvalidAssessmentTemplateDurationRange is a InvalidInputErrorCode enum value
10522	InvalidInputErrorCodeInvalidAssessmentTemplateDurationRange = "INVALID_ASSESSMENT_TEMPLATE_DURATION_RANGE"
10523
10524	// InvalidInputErrorCodeInvalidAssessmentRunDurationRange is a InvalidInputErrorCode enum value
10525	InvalidInputErrorCodeInvalidAssessmentRunDurationRange = "INVALID_ASSESSMENT_RUN_DURATION_RANGE"
10526
10527	// InvalidInputErrorCodeInvalidAssessmentRunStartTimeRange is a InvalidInputErrorCode enum value
10528	InvalidInputErrorCodeInvalidAssessmentRunStartTimeRange = "INVALID_ASSESSMENT_RUN_START_TIME_RANGE"
10529
10530	// InvalidInputErrorCodeInvalidAssessmentRunCompletionTimeRange is a InvalidInputErrorCode enum value
10531	InvalidInputErrorCodeInvalidAssessmentRunCompletionTimeRange = "INVALID_ASSESSMENT_RUN_COMPLETION_TIME_RANGE"
10532
10533	// InvalidInputErrorCodeInvalidAssessmentRunStateChangeTimeRange is a InvalidInputErrorCode enum value
10534	InvalidInputErrorCodeInvalidAssessmentRunStateChangeTimeRange = "INVALID_ASSESSMENT_RUN_STATE_CHANGE_TIME_RANGE"
10535
10536	// InvalidInputErrorCodeInvalidAssessmentRunState is a InvalidInputErrorCode enum value
10537	InvalidInputErrorCodeInvalidAssessmentRunState = "INVALID_ASSESSMENT_RUN_STATE"
10538
10539	// InvalidInputErrorCodeInvalidTag is a InvalidInputErrorCode enum value
10540	InvalidInputErrorCodeInvalidTag = "INVALID_TAG"
10541
10542	// InvalidInputErrorCodeInvalidTagKey is a InvalidInputErrorCode enum value
10543	InvalidInputErrorCodeInvalidTagKey = "INVALID_TAG_KEY"
10544
10545	// InvalidInputErrorCodeInvalidTagValue is a InvalidInputErrorCode enum value
10546	InvalidInputErrorCodeInvalidTagValue = "INVALID_TAG_VALUE"
10547
10548	// InvalidInputErrorCodeInvalidResourceGroupTagKey is a InvalidInputErrorCode enum value
10549	InvalidInputErrorCodeInvalidResourceGroupTagKey = "INVALID_RESOURCE_GROUP_TAG_KEY"
10550
10551	// InvalidInputErrorCodeInvalidResourceGroupTagValue is a InvalidInputErrorCode enum value
10552	InvalidInputErrorCodeInvalidResourceGroupTagValue = "INVALID_RESOURCE_GROUP_TAG_VALUE"
10553
10554	// InvalidInputErrorCodeInvalidAttribute is a InvalidInputErrorCode enum value
10555	InvalidInputErrorCodeInvalidAttribute = "INVALID_ATTRIBUTE"
10556
10557	// InvalidInputErrorCodeInvalidUserAttribute is a InvalidInputErrorCode enum value
10558	InvalidInputErrorCodeInvalidUserAttribute = "INVALID_USER_ATTRIBUTE"
10559
10560	// InvalidInputErrorCodeInvalidUserAttributeKey is a InvalidInputErrorCode enum value
10561	InvalidInputErrorCodeInvalidUserAttributeKey = "INVALID_USER_ATTRIBUTE_KEY"
10562
10563	// InvalidInputErrorCodeInvalidUserAttributeValue is a InvalidInputErrorCode enum value
10564	InvalidInputErrorCodeInvalidUserAttributeValue = "INVALID_USER_ATTRIBUTE_VALUE"
10565
10566	// InvalidInputErrorCodeInvalidPaginationToken is a InvalidInputErrorCode enum value
10567	InvalidInputErrorCodeInvalidPaginationToken = "INVALID_PAGINATION_TOKEN"
10568
10569	// InvalidInputErrorCodeInvalidMaxResults is a InvalidInputErrorCode enum value
10570	InvalidInputErrorCodeInvalidMaxResults = "INVALID_MAX_RESULTS"
10571
10572	// InvalidInputErrorCodeInvalidAgentId is a InvalidInputErrorCode enum value
10573	InvalidInputErrorCodeInvalidAgentId = "INVALID_AGENT_ID"
10574
10575	// InvalidInputErrorCodeInvalidAutoScalingGroup is a InvalidInputErrorCode enum value
10576	InvalidInputErrorCodeInvalidAutoScalingGroup = "INVALID_AUTO_SCALING_GROUP"
10577
10578	// InvalidInputErrorCodeInvalidRuleName is a InvalidInputErrorCode enum value
10579	InvalidInputErrorCodeInvalidRuleName = "INVALID_RULE_NAME"
10580
10581	// InvalidInputErrorCodeInvalidSeverity is a InvalidInputErrorCode enum value
10582	InvalidInputErrorCodeInvalidSeverity = "INVALID_SEVERITY"
10583
10584	// InvalidInputErrorCodeInvalidLocale is a InvalidInputErrorCode enum value
10585	InvalidInputErrorCodeInvalidLocale = "INVALID_LOCALE"
10586
10587	// InvalidInputErrorCodeInvalidEvent is a InvalidInputErrorCode enum value
10588	InvalidInputErrorCodeInvalidEvent = "INVALID_EVENT"
10589
10590	// InvalidInputErrorCodeAssessmentTargetNameAlreadyTaken is a InvalidInputErrorCode enum value
10591	InvalidInputErrorCodeAssessmentTargetNameAlreadyTaken = "ASSESSMENT_TARGET_NAME_ALREADY_TAKEN"
10592
10593	// InvalidInputErrorCodeAssessmentTemplateNameAlreadyTaken is a InvalidInputErrorCode enum value
10594	InvalidInputErrorCodeAssessmentTemplateNameAlreadyTaken = "ASSESSMENT_TEMPLATE_NAME_ALREADY_TAKEN"
10595
10596	// InvalidInputErrorCodeInvalidNumberOfAssessmentTargetArns is a InvalidInputErrorCode enum value
10597	InvalidInputErrorCodeInvalidNumberOfAssessmentTargetArns = "INVALID_NUMBER_OF_ASSESSMENT_TARGET_ARNS"
10598
10599	// InvalidInputErrorCodeInvalidNumberOfAssessmentTemplateArns is a InvalidInputErrorCode enum value
10600	InvalidInputErrorCodeInvalidNumberOfAssessmentTemplateArns = "INVALID_NUMBER_OF_ASSESSMENT_TEMPLATE_ARNS"
10601
10602	// InvalidInputErrorCodeInvalidNumberOfAssessmentRunArns is a InvalidInputErrorCode enum value
10603	InvalidInputErrorCodeInvalidNumberOfAssessmentRunArns = "INVALID_NUMBER_OF_ASSESSMENT_RUN_ARNS"
10604
10605	// InvalidInputErrorCodeInvalidNumberOfFindingArns is a InvalidInputErrorCode enum value
10606	InvalidInputErrorCodeInvalidNumberOfFindingArns = "INVALID_NUMBER_OF_FINDING_ARNS"
10607
10608	// InvalidInputErrorCodeInvalidNumberOfResourceGroupArns is a InvalidInputErrorCode enum value
10609	InvalidInputErrorCodeInvalidNumberOfResourceGroupArns = "INVALID_NUMBER_OF_RESOURCE_GROUP_ARNS"
10610
10611	// InvalidInputErrorCodeInvalidNumberOfRulesPackageArns is a InvalidInputErrorCode enum value
10612	InvalidInputErrorCodeInvalidNumberOfRulesPackageArns = "INVALID_NUMBER_OF_RULES_PACKAGE_ARNS"
10613
10614	// InvalidInputErrorCodeInvalidNumberOfAssessmentRunStates is a InvalidInputErrorCode enum value
10615	InvalidInputErrorCodeInvalidNumberOfAssessmentRunStates = "INVALID_NUMBER_OF_ASSESSMENT_RUN_STATES"
10616
10617	// InvalidInputErrorCodeInvalidNumberOfTags is a InvalidInputErrorCode enum value
10618	InvalidInputErrorCodeInvalidNumberOfTags = "INVALID_NUMBER_OF_TAGS"
10619
10620	// InvalidInputErrorCodeInvalidNumberOfResourceGroupTags is a InvalidInputErrorCode enum value
10621	InvalidInputErrorCodeInvalidNumberOfResourceGroupTags = "INVALID_NUMBER_OF_RESOURCE_GROUP_TAGS"
10622
10623	// InvalidInputErrorCodeInvalidNumberOfAttributes is a InvalidInputErrorCode enum value
10624	InvalidInputErrorCodeInvalidNumberOfAttributes = "INVALID_NUMBER_OF_ATTRIBUTES"
10625
10626	// InvalidInputErrorCodeInvalidNumberOfUserAttributes is a InvalidInputErrorCode enum value
10627	InvalidInputErrorCodeInvalidNumberOfUserAttributes = "INVALID_NUMBER_OF_USER_ATTRIBUTES"
10628
10629	// InvalidInputErrorCodeInvalidNumberOfAgentIds is a InvalidInputErrorCode enum value
10630	InvalidInputErrorCodeInvalidNumberOfAgentIds = "INVALID_NUMBER_OF_AGENT_IDS"
10631
10632	// InvalidInputErrorCodeInvalidNumberOfAutoScalingGroups is a InvalidInputErrorCode enum value
10633	InvalidInputErrorCodeInvalidNumberOfAutoScalingGroups = "INVALID_NUMBER_OF_AUTO_SCALING_GROUPS"
10634
10635	// InvalidInputErrorCodeInvalidNumberOfRuleNames is a InvalidInputErrorCode enum value
10636	InvalidInputErrorCodeInvalidNumberOfRuleNames = "INVALID_NUMBER_OF_RULE_NAMES"
10637
10638	// InvalidInputErrorCodeInvalidNumberOfSeverities is a InvalidInputErrorCode enum value
10639	InvalidInputErrorCodeInvalidNumberOfSeverities = "INVALID_NUMBER_OF_SEVERITIES"
10640)
10641
10642const (
10643	// LimitExceededErrorCodeAssessmentTargetLimitExceeded is a LimitExceededErrorCode enum value
10644	LimitExceededErrorCodeAssessmentTargetLimitExceeded = "ASSESSMENT_TARGET_LIMIT_EXCEEDED"
10645
10646	// LimitExceededErrorCodeAssessmentTemplateLimitExceeded is a LimitExceededErrorCode enum value
10647	LimitExceededErrorCodeAssessmentTemplateLimitExceeded = "ASSESSMENT_TEMPLATE_LIMIT_EXCEEDED"
10648
10649	// LimitExceededErrorCodeAssessmentRunLimitExceeded is a LimitExceededErrorCode enum value
10650	LimitExceededErrorCodeAssessmentRunLimitExceeded = "ASSESSMENT_RUN_LIMIT_EXCEEDED"
10651
10652	// LimitExceededErrorCodeResourceGroupLimitExceeded is a LimitExceededErrorCode enum value
10653	LimitExceededErrorCodeResourceGroupLimitExceeded = "RESOURCE_GROUP_LIMIT_EXCEEDED"
10654
10655	// LimitExceededErrorCodeEventSubscriptionLimitExceeded is a LimitExceededErrorCode enum value
10656	LimitExceededErrorCodeEventSubscriptionLimitExceeded = "EVENT_SUBSCRIPTION_LIMIT_EXCEEDED"
10657)
10658
10659const (
10660	// LocaleEnUs is a Locale enum value
10661	LocaleEnUs = "EN_US"
10662)
10663
10664const (
10665	// NoSuchEntityErrorCodeAssessmentTargetDoesNotExist is a NoSuchEntityErrorCode enum value
10666	NoSuchEntityErrorCodeAssessmentTargetDoesNotExist = "ASSESSMENT_TARGET_DOES_NOT_EXIST"
10667
10668	// NoSuchEntityErrorCodeAssessmentTemplateDoesNotExist is a NoSuchEntityErrorCode enum value
10669	NoSuchEntityErrorCodeAssessmentTemplateDoesNotExist = "ASSESSMENT_TEMPLATE_DOES_NOT_EXIST"
10670
10671	// NoSuchEntityErrorCodeAssessmentRunDoesNotExist is a NoSuchEntityErrorCode enum value
10672	NoSuchEntityErrorCodeAssessmentRunDoesNotExist = "ASSESSMENT_RUN_DOES_NOT_EXIST"
10673
10674	// NoSuchEntityErrorCodeFindingDoesNotExist is a NoSuchEntityErrorCode enum value
10675	NoSuchEntityErrorCodeFindingDoesNotExist = "FINDING_DOES_NOT_EXIST"
10676
10677	// NoSuchEntityErrorCodeResourceGroupDoesNotExist is a NoSuchEntityErrorCode enum value
10678	NoSuchEntityErrorCodeResourceGroupDoesNotExist = "RESOURCE_GROUP_DOES_NOT_EXIST"
10679
10680	// NoSuchEntityErrorCodeRulesPackageDoesNotExist is a NoSuchEntityErrorCode enum value
10681	NoSuchEntityErrorCodeRulesPackageDoesNotExist = "RULES_PACKAGE_DOES_NOT_EXIST"
10682
10683	// NoSuchEntityErrorCodeSnsTopicDoesNotExist is a NoSuchEntityErrorCode enum value
10684	NoSuchEntityErrorCodeSnsTopicDoesNotExist = "SNS_TOPIC_DOES_NOT_EXIST"
10685
10686	// NoSuchEntityErrorCodeIamRoleDoesNotExist is a NoSuchEntityErrorCode enum value
10687	NoSuchEntityErrorCodeIamRoleDoesNotExist = "IAM_ROLE_DOES_NOT_EXIST"
10688)
10689
10690const (
10691	// PreviewStatusWorkInProgress is a PreviewStatus enum value
10692	PreviewStatusWorkInProgress = "WORK_IN_PROGRESS"
10693
10694	// PreviewStatusCompleted is a PreviewStatus enum value
10695	PreviewStatusCompleted = "COMPLETED"
10696)
10697
10698const (
10699	// ReportFileFormatHtml is a ReportFileFormat enum value
10700	ReportFileFormatHtml = "HTML"
10701
10702	// ReportFileFormatPdf is a ReportFileFormat enum value
10703	ReportFileFormatPdf = "PDF"
10704)
10705
10706const (
10707	// ReportStatusWorkInProgress is a ReportStatus enum value
10708	ReportStatusWorkInProgress = "WORK_IN_PROGRESS"
10709
10710	// ReportStatusFailed is a ReportStatus enum value
10711	ReportStatusFailed = "FAILED"
10712
10713	// ReportStatusCompleted is a ReportStatus enum value
10714	ReportStatusCompleted = "COMPLETED"
10715)
10716
10717const (
10718	// ReportTypeFinding is a ReportType enum value
10719	ReportTypeFinding = "FINDING"
10720
10721	// ReportTypeFull is a ReportType enum value
10722	ReportTypeFull = "FULL"
10723)
10724
10725const (
10726	// ScopeTypeInstanceId is a ScopeType enum value
10727	ScopeTypeInstanceId = "INSTANCE_ID"
10728
10729	// ScopeTypeRulesPackageArn is a ScopeType enum value
10730	ScopeTypeRulesPackageArn = "RULES_PACKAGE_ARN"
10731)
10732
10733const (
10734	// SeverityLow is a Severity enum value
10735	SeverityLow = "Low"
10736
10737	// SeverityMedium is a Severity enum value
10738	SeverityMedium = "Medium"
10739
10740	// SeverityHigh is a Severity enum value
10741	SeverityHigh = "High"
10742
10743	// SeverityInformational is a Severity enum value
10744	SeverityInformational = "Informational"
10745
10746	// SeverityUndefined is a Severity enum value
10747	SeverityUndefined = "Undefined"
10748)
10749
10750const (
10751	// StopActionStartEvaluation is a StopAction enum value
10752	StopActionStartEvaluation = "START_EVALUATION"
10753
10754	// StopActionSkipEvaluation is a StopAction enum value
10755	StopActionSkipEvaluation = "SKIP_EVALUATION"
10756)
10757