github.com/aavshr/aws-sdk-go@v1.41.3/service/inspector/api.go (about)

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package inspector
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/jsonrpc"
    14  )
    15  
    16  const 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
    42  func (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
    89  func (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.
   103  func (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  
   110  const 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
   136  func (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
   198  func (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.
   212  func (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  
   219  const 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
   245  func (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
   299  func (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.
   313  func (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  
   320  const 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
   346  func (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
   398  func (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.
   412  func (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  
   419  const 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
   445  func (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
   494  func (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.
   508  func (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  
   515  const 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
   541  func (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
   593  func (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.
   607  func (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  
   614  const 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
   640  func (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
   692  func (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.
   706  func (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  
   713  const 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
   739  func (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
   791  func (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.
   805  func (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  
   812  const 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
   838  func (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
   875  func (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.
   889  func (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  
   896  const 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
   922  func (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
   959  func (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.
   973  func (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  
   980  const 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
  1006  func (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
  1043  func (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.
  1057  func (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  
  1064  const 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
  1090  func (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
  1122  func (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.
  1136  func (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  
  1143  const 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
  1169  func (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
  1205  func (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.
  1219  func (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  
  1226  const 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
  1252  func (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
  1288  func (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.
  1302  func (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  
  1309  const 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
  1335  func (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
  1372  func (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.
  1386  func (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  
  1393  const 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
  1419  func (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
  1456  func (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.
  1470  func (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  
  1477  const 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
  1503  func (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
  1561  func (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.
  1575  func (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  
  1582  const 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
  1608  func (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
  1659  func (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.
  1673  func (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  //
  1697  func (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.
  1708  func (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  
  1732  const 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
  1758  func (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
  1802  func (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.
  1816  func (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  
  1823  const 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
  1849  func (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
  1899  func (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.
  1913  func (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  //
  1937  func (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.
  1948  func (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  
  1972  const 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
  1998  func (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
  2048  func (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.
  2062  func (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  //
  2086  func (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.
  2097  func (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  
  2121  const 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
  2147  func (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
  2194  func (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.
  2208  func (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  //
  2232  func (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.
  2243  func (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  
  2267  const 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
  2293  func (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
  2343  func (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.
  2357  func (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  //
  2381  func (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.
  2392  func (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  
  2416  const 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
  2442  func (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
  2493  func (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.
  2507  func (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  //
  2531  func (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.
  2542  func (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  
  2566  const 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
  2592  func (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
  2641  func (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.
  2655  func (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  //
  2679  func (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.
  2690  func (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  
  2714  const 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
  2740  func (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
  2790  func (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.
  2804  func (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  //
  2828  func (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.
  2839  func (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  
  2863  const 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
  2889  func (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
  2934  func (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.
  2948  func (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  //
  2972  func (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.
  2983  func (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  
  3007  const 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
  3033  func (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
  3076  func (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.
  3090  func (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  
  3097  const 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
  3123  func (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
  3177  func (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.
  3191  func (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  //
  3215  func (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.
  3226  func (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  
  3250  const 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
  3276  func (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
  3324  func (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.
  3338  func (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  
  3345  const 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
  3371  func (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
  3419  func (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.
  3433  func (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  
  3440  const 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
  3466  func (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
  3514  func (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.
  3528  func (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  
  3535  const 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
  3561  func (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
  3621  func (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.
  3635  func (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  
  3642  const 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
  3668  func (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
  3715  func (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.
  3729  func (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  
  3736  const 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
  3762  func (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
  3814  func (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.
  3828  func (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  
  3835  const 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
  3861  func (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
  3909  func (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.
  3923  func (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  
  3930  const 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
  3956  func (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
  4007  func (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.
  4021  func (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.
  4029  type AccessDeniedException struct {
  4030  	_            struct{}                  `type:"structure"`
  4031  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  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.
  4048  //
  4049  // API parameter values that are decorated as "sensitive" in the API will not
  4050  // be included in the string output. The member name will be present, but the
  4051  // value will be replaced with "sensitive".
  4052  func (s AccessDeniedException) String() string {
  4053  	return awsutil.Prettify(s)
  4054  }
  4055  
  4056  // GoString returns the string representation.
  4057  //
  4058  // API parameter values that are decorated as "sensitive" in the API will not
  4059  // be included in the string output. The member name will be present, but the
  4060  // value will be replaced with "sensitive".
  4061  func (s AccessDeniedException) GoString() string {
  4062  	return s.String()
  4063  }
  4064  
  4065  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
  4066  	return &AccessDeniedException{
  4067  		RespMetadata: v,
  4068  	}
  4069  }
  4070  
  4071  // Code returns the exception type name.
  4072  func (s *AccessDeniedException) Code() string {
  4073  	return "AccessDeniedException"
  4074  }
  4075  
  4076  // Message returns the exception's message.
  4077  func (s *AccessDeniedException) Message() string {
  4078  	if s.Message_ != nil {
  4079  		return *s.Message_
  4080  	}
  4081  	return ""
  4082  }
  4083  
  4084  // OrigErr always returns nil, satisfies awserr.Error interface.
  4085  func (s *AccessDeniedException) OrigErr() error {
  4086  	return nil
  4087  }
  4088  
  4089  func (s *AccessDeniedException) Error() string {
  4090  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  4091  }
  4092  
  4093  // Status code returns the HTTP status code for the request's response error.
  4094  func (s *AccessDeniedException) StatusCode() int {
  4095  	return s.RespMetadata.StatusCode
  4096  }
  4097  
  4098  // RequestID returns the service's response RequestID for request.
  4099  func (s *AccessDeniedException) RequestID() string {
  4100  	return s.RespMetadata.RequestID
  4101  }
  4102  
  4103  type AddAttributesToFindingsInput struct {
  4104  	_ struct{} `type:"structure"`
  4105  
  4106  	// The array of attributes that you want to assign to specified findings.
  4107  	//
  4108  	// Attributes is a required field
  4109  	Attributes []*Attribute `locationName:"attributes" type:"list" required:"true"`
  4110  
  4111  	// The ARNs that specify the findings that you want to assign attributes to.
  4112  	//
  4113  	// FindingArns is a required field
  4114  	FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"`
  4115  }
  4116  
  4117  // String returns the string representation.
  4118  //
  4119  // API parameter values that are decorated as "sensitive" in the API will not
  4120  // be included in the string output. The member name will be present, but the
  4121  // value will be replaced with "sensitive".
  4122  func (s AddAttributesToFindingsInput) String() string {
  4123  	return awsutil.Prettify(s)
  4124  }
  4125  
  4126  // GoString returns the string representation.
  4127  //
  4128  // API parameter values that are decorated as "sensitive" in the API will not
  4129  // be included in the string output. The member name will be present, but the
  4130  // value will be replaced with "sensitive".
  4131  func (s AddAttributesToFindingsInput) GoString() string {
  4132  	return s.String()
  4133  }
  4134  
  4135  // Validate inspects the fields of the type to determine if they are valid.
  4136  func (s *AddAttributesToFindingsInput) Validate() error {
  4137  	invalidParams := request.ErrInvalidParams{Context: "AddAttributesToFindingsInput"}
  4138  	if s.Attributes == nil {
  4139  		invalidParams.Add(request.NewErrParamRequired("Attributes"))
  4140  	}
  4141  	if s.FindingArns == nil {
  4142  		invalidParams.Add(request.NewErrParamRequired("FindingArns"))
  4143  	}
  4144  	if s.FindingArns != nil && len(s.FindingArns) < 1 {
  4145  		invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1))
  4146  	}
  4147  	if s.Attributes != nil {
  4148  		for i, v := range s.Attributes {
  4149  			if v == nil {
  4150  				continue
  4151  			}
  4152  			if err := v.Validate(); err != nil {
  4153  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams))
  4154  			}
  4155  		}
  4156  	}
  4157  
  4158  	if invalidParams.Len() > 0 {
  4159  		return invalidParams
  4160  	}
  4161  	return nil
  4162  }
  4163  
  4164  // SetAttributes sets the Attributes field's value.
  4165  func (s *AddAttributesToFindingsInput) SetAttributes(v []*Attribute) *AddAttributesToFindingsInput {
  4166  	s.Attributes = v
  4167  	return s
  4168  }
  4169  
  4170  // SetFindingArns sets the FindingArns field's value.
  4171  func (s *AddAttributesToFindingsInput) SetFindingArns(v []*string) *AddAttributesToFindingsInput {
  4172  	s.FindingArns = v
  4173  	return s
  4174  }
  4175  
  4176  type AddAttributesToFindingsOutput struct {
  4177  	_ struct{} `type:"structure"`
  4178  
  4179  	// Attribute details that cannot be described. An error code is provided for
  4180  	// each failed item.
  4181  	//
  4182  	// FailedItems is a required field
  4183  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  4184  }
  4185  
  4186  // String returns the string representation.
  4187  //
  4188  // API parameter values that are decorated as "sensitive" in the API will not
  4189  // be included in the string output. The member name will be present, but the
  4190  // value will be replaced with "sensitive".
  4191  func (s AddAttributesToFindingsOutput) String() string {
  4192  	return awsutil.Prettify(s)
  4193  }
  4194  
  4195  // GoString returns the string representation.
  4196  //
  4197  // API parameter values that are decorated as "sensitive" in the API will not
  4198  // be included in the string output. The member name will be present, but the
  4199  // value will be replaced with "sensitive".
  4200  func (s AddAttributesToFindingsOutput) GoString() string {
  4201  	return s.String()
  4202  }
  4203  
  4204  // SetFailedItems sets the FailedItems field's value.
  4205  func (s *AddAttributesToFindingsOutput) SetFailedItems(v map[string]*FailedItemDetails) *AddAttributesToFindingsOutput {
  4206  	s.FailedItems = v
  4207  	return s
  4208  }
  4209  
  4210  // Used in the exception error that is thrown if you start an assessment run
  4211  // for an assessment target that includes an EC2 instance that is already participating
  4212  // in another started assessment run.
  4213  type AgentAlreadyRunningAssessment struct {
  4214  	_ struct{} `type:"structure"`
  4215  
  4216  	// ID of the agent that is running on an EC2 instance that is already participating
  4217  	// in another started assessment run.
  4218  	//
  4219  	// AgentId is a required field
  4220  	AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"`
  4221  
  4222  	// The ARN of the assessment run that has already been started.
  4223  	//
  4224  	// AssessmentRunArn is a required field
  4225  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
  4226  }
  4227  
  4228  // String returns the string representation.
  4229  //
  4230  // API parameter values that are decorated as "sensitive" in the API will not
  4231  // be included in the string output. The member name will be present, but the
  4232  // value will be replaced with "sensitive".
  4233  func (s AgentAlreadyRunningAssessment) String() string {
  4234  	return awsutil.Prettify(s)
  4235  }
  4236  
  4237  // GoString returns the string representation.
  4238  //
  4239  // API parameter values that are decorated as "sensitive" in the API will not
  4240  // be included in the string output. The member name will be present, but the
  4241  // value will be replaced with "sensitive".
  4242  func (s AgentAlreadyRunningAssessment) GoString() string {
  4243  	return s.String()
  4244  }
  4245  
  4246  // SetAgentId sets the AgentId field's value.
  4247  func (s *AgentAlreadyRunningAssessment) SetAgentId(v string) *AgentAlreadyRunningAssessment {
  4248  	s.AgentId = &v
  4249  	return s
  4250  }
  4251  
  4252  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
  4253  func (s *AgentAlreadyRunningAssessment) SetAssessmentRunArn(v string) *AgentAlreadyRunningAssessment {
  4254  	s.AssessmentRunArn = &v
  4255  	return s
  4256  }
  4257  
  4258  // Contains information about an Amazon Inspector agent. This data type is used
  4259  // as a request parameter in the ListAssessmentRunAgents action.
  4260  type AgentFilter struct {
  4261  	_ struct{} `type:"structure"`
  4262  
  4263  	// The detailed health state of the agent. Values can be set to IDLE, RUNNING,
  4264  	// SHUTDOWN, UNHEALTHY, THROTTLED, and UNKNOWN.
  4265  	//
  4266  	// AgentHealthCodes is a required field
  4267  	AgentHealthCodes []*string `locationName:"agentHealthCodes" type:"list" required:"true"`
  4268  
  4269  	// The current health state of the agent. Values can be set to HEALTHY or UNHEALTHY.
  4270  	//
  4271  	// AgentHealths is a required field
  4272  	AgentHealths []*string `locationName:"agentHealths" type:"list" required:"true"`
  4273  }
  4274  
  4275  // String returns the string representation.
  4276  //
  4277  // API parameter values that are decorated as "sensitive" in the API will not
  4278  // be included in the string output. The member name will be present, but the
  4279  // value will be replaced with "sensitive".
  4280  func (s AgentFilter) String() string {
  4281  	return awsutil.Prettify(s)
  4282  }
  4283  
  4284  // GoString returns the string representation.
  4285  //
  4286  // API parameter values that are decorated as "sensitive" in the API will not
  4287  // be included in the string output. The member name will be present, but the
  4288  // value will be replaced with "sensitive".
  4289  func (s AgentFilter) GoString() string {
  4290  	return s.String()
  4291  }
  4292  
  4293  // Validate inspects the fields of the type to determine if they are valid.
  4294  func (s *AgentFilter) Validate() error {
  4295  	invalidParams := request.ErrInvalidParams{Context: "AgentFilter"}
  4296  	if s.AgentHealthCodes == nil {
  4297  		invalidParams.Add(request.NewErrParamRequired("AgentHealthCodes"))
  4298  	}
  4299  	if s.AgentHealths == nil {
  4300  		invalidParams.Add(request.NewErrParamRequired("AgentHealths"))
  4301  	}
  4302  
  4303  	if invalidParams.Len() > 0 {
  4304  		return invalidParams
  4305  	}
  4306  	return nil
  4307  }
  4308  
  4309  // SetAgentHealthCodes sets the AgentHealthCodes field's value.
  4310  func (s *AgentFilter) SetAgentHealthCodes(v []*string) *AgentFilter {
  4311  	s.AgentHealthCodes = v
  4312  	return s
  4313  }
  4314  
  4315  // SetAgentHealths sets the AgentHealths field's value.
  4316  func (s *AgentFilter) SetAgentHealths(v []*string) *AgentFilter {
  4317  	s.AgentHealths = v
  4318  	return s
  4319  }
  4320  
  4321  // Used as a response element in the PreviewAgents action.
  4322  type AgentPreview struct {
  4323  	_ struct{} `type:"structure"`
  4324  
  4325  	// The health status of the Amazon Inspector Agent.
  4326  	AgentHealth *string `locationName:"agentHealth" type:"string" enum:"AgentHealth"`
  4327  
  4328  	// The ID of the EC2 instance where the agent is installed.
  4329  	//
  4330  	// AgentId is a required field
  4331  	AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"`
  4332  
  4333  	// The version of the Amazon Inspector Agent.
  4334  	AgentVersion *string `locationName:"agentVersion" min:"1" type:"string"`
  4335  
  4336  	// The Auto Scaling group for the EC2 instance where the agent is installed.
  4337  	AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"`
  4338  
  4339  	// The hostname of the EC2 instance on which the Amazon Inspector Agent is installed.
  4340  	Hostname *string `locationName:"hostname" type:"string"`
  4341  
  4342  	// The IP address of the EC2 instance on which the Amazon Inspector Agent is
  4343  	// installed.
  4344  	Ipv4Address *string `locationName:"ipv4Address" min:"7" type:"string"`
  4345  
  4346  	// The kernel version of the operating system running on the EC2 instance on
  4347  	// which the Amazon Inspector Agent is installed.
  4348  	KernelVersion *string `locationName:"kernelVersion" min:"1" type:"string"`
  4349  
  4350  	// The operating system running on the EC2 instance on which the Amazon Inspector
  4351  	// Agent is installed.
  4352  	OperatingSystem *string `locationName:"operatingSystem" min:"1" type:"string"`
  4353  }
  4354  
  4355  // String returns the string representation.
  4356  //
  4357  // API parameter values that are decorated as "sensitive" in the API will not
  4358  // be included in the string output. The member name will be present, but the
  4359  // value will be replaced with "sensitive".
  4360  func (s AgentPreview) String() string {
  4361  	return awsutil.Prettify(s)
  4362  }
  4363  
  4364  // GoString returns the string representation.
  4365  //
  4366  // API parameter values that are decorated as "sensitive" in the API will not
  4367  // be included in the string output. The member name will be present, but the
  4368  // value will be replaced with "sensitive".
  4369  func (s AgentPreview) GoString() string {
  4370  	return s.String()
  4371  }
  4372  
  4373  // SetAgentHealth sets the AgentHealth field's value.
  4374  func (s *AgentPreview) SetAgentHealth(v string) *AgentPreview {
  4375  	s.AgentHealth = &v
  4376  	return s
  4377  }
  4378  
  4379  // SetAgentId sets the AgentId field's value.
  4380  func (s *AgentPreview) SetAgentId(v string) *AgentPreview {
  4381  	s.AgentId = &v
  4382  	return s
  4383  }
  4384  
  4385  // SetAgentVersion sets the AgentVersion field's value.
  4386  func (s *AgentPreview) SetAgentVersion(v string) *AgentPreview {
  4387  	s.AgentVersion = &v
  4388  	return s
  4389  }
  4390  
  4391  // SetAutoScalingGroup sets the AutoScalingGroup field's value.
  4392  func (s *AgentPreview) SetAutoScalingGroup(v string) *AgentPreview {
  4393  	s.AutoScalingGroup = &v
  4394  	return s
  4395  }
  4396  
  4397  // SetHostname sets the Hostname field's value.
  4398  func (s *AgentPreview) SetHostname(v string) *AgentPreview {
  4399  	s.Hostname = &v
  4400  	return s
  4401  }
  4402  
  4403  // SetIpv4Address sets the Ipv4Address field's value.
  4404  func (s *AgentPreview) SetIpv4Address(v string) *AgentPreview {
  4405  	s.Ipv4Address = &v
  4406  	return s
  4407  }
  4408  
  4409  // SetKernelVersion sets the KernelVersion field's value.
  4410  func (s *AgentPreview) SetKernelVersion(v string) *AgentPreview {
  4411  	s.KernelVersion = &v
  4412  	return s
  4413  }
  4414  
  4415  // SetOperatingSystem sets the OperatingSystem field's value.
  4416  func (s *AgentPreview) SetOperatingSystem(v string) *AgentPreview {
  4417  	s.OperatingSystem = &v
  4418  	return s
  4419  }
  4420  
  4421  // You started an assessment run, but one of the instances is already participating
  4422  // in another assessment run.
  4423  type AgentsAlreadyRunningAssessmentException struct {
  4424  	_            struct{}                  `type:"structure"`
  4425  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  4426  
  4427  	// Agents is a required field
  4428  	Agents []*AgentAlreadyRunningAssessment `locationName:"agents" min:"1" type:"list" required:"true"`
  4429  
  4430  	// AgentsTruncated is a required field
  4431  	AgentsTruncated *bool `locationName:"agentsTruncated" type:"boolean" required:"true"`
  4432  
  4433  	// You can immediately retry your request.
  4434  	//
  4435  	// CanRetry is a required field
  4436  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
  4437  
  4438  	// Details of the exception error.
  4439  	Message_ *string `locationName:"message" type:"string"`
  4440  }
  4441  
  4442  // String returns the string representation.
  4443  //
  4444  // API parameter values that are decorated as "sensitive" in the API will not
  4445  // be included in the string output. The member name will be present, but the
  4446  // value will be replaced with "sensitive".
  4447  func (s AgentsAlreadyRunningAssessmentException) String() string {
  4448  	return awsutil.Prettify(s)
  4449  }
  4450  
  4451  // GoString returns the string representation.
  4452  //
  4453  // API parameter values that are decorated as "sensitive" in the API will not
  4454  // be included in the string output. The member name will be present, but the
  4455  // value will be replaced with "sensitive".
  4456  func (s AgentsAlreadyRunningAssessmentException) GoString() string {
  4457  	return s.String()
  4458  }
  4459  
  4460  func newErrorAgentsAlreadyRunningAssessmentException(v protocol.ResponseMetadata) error {
  4461  	return &AgentsAlreadyRunningAssessmentException{
  4462  		RespMetadata: v,
  4463  	}
  4464  }
  4465  
  4466  // Code returns the exception type name.
  4467  func (s *AgentsAlreadyRunningAssessmentException) Code() string {
  4468  	return "AgentsAlreadyRunningAssessmentException"
  4469  }
  4470  
  4471  // Message returns the exception's message.
  4472  func (s *AgentsAlreadyRunningAssessmentException) Message() string {
  4473  	if s.Message_ != nil {
  4474  		return *s.Message_
  4475  	}
  4476  	return ""
  4477  }
  4478  
  4479  // OrigErr always returns nil, satisfies awserr.Error interface.
  4480  func (s *AgentsAlreadyRunningAssessmentException) OrigErr() error {
  4481  	return nil
  4482  }
  4483  
  4484  func (s *AgentsAlreadyRunningAssessmentException) Error() string {
  4485  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  4486  }
  4487  
  4488  // Status code returns the HTTP status code for the request's response error.
  4489  func (s *AgentsAlreadyRunningAssessmentException) StatusCode() int {
  4490  	return s.RespMetadata.StatusCode
  4491  }
  4492  
  4493  // RequestID returns the service's response RequestID for request.
  4494  func (s *AgentsAlreadyRunningAssessmentException) RequestID() string {
  4495  	return s.RespMetadata.RequestID
  4496  }
  4497  
  4498  // A snapshot of an Amazon Inspector assessment run that contains the findings
  4499  // of the assessment run .
  4500  //
  4501  // Used as the response element in the DescribeAssessmentRuns action.
  4502  type AssessmentRun struct {
  4503  	_ struct{} `type:"structure"`
  4504  
  4505  	// The ARN of the assessment run.
  4506  	//
  4507  	// Arn is a required field
  4508  	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
  4509  
  4510  	// The ARN of the assessment template that is associated with the assessment
  4511  	// run.
  4512  	//
  4513  	// AssessmentTemplateArn is a required field
  4514  	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
  4515  
  4516  	// The assessment run completion time that corresponds to the rules packages
  4517  	// evaluation completion time or failure.
  4518  	CompletedAt *time.Time `locationName:"completedAt" type:"timestamp"`
  4519  
  4520  	// The time when StartAssessmentRun was called.
  4521  	//
  4522  	// CreatedAt is a required field
  4523  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
  4524  
  4525  	// A Boolean value (true or false) that specifies whether the process of collecting
  4526  	// data from the agents is completed.
  4527  	//
  4528  	// DataCollected is a required field
  4529  	DataCollected *bool `locationName:"dataCollected" type:"boolean" required:"true"`
  4530  
  4531  	// The duration of the assessment run.
  4532  	//
  4533  	// DurationInSeconds is a required field
  4534  	DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"`
  4535  
  4536  	// Provides a total count of generated findings per severity.
  4537  	//
  4538  	// FindingCounts is a required field
  4539  	FindingCounts map[string]*int64 `locationName:"findingCounts" type:"map" required:"true"`
  4540  
  4541  	// The auto-generated name for the assessment run.
  4542  	//
  4543  	// Name is a required field
  4544  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  4545  
  4546  	// A list of notifications for the event subscriptions. A notification about
  4547  	// a particular generated finding is added to this list only once.
  4548  	//
  4549  	// Notifications is a required field
  4550  	Notifications []*AssessmentRunNotification `locationName:"notifications" type:"list" required:"true"`
  4551  
  4552  	// The rules packages selected for the assessment run.
  4553  	//
  4554  	// RulesPackageArns is a required field
  4555  	RulesPackageArns []*string `locationName:"rulesPackageArns" min:"1" type:"list" required:"true"`
  4556  
  4557  	// The time when StartAssessmentRun was called.
  4558  	StartedAt *time.Time `locationName:"startedAt" type:"timestamp"`
  4559  
  4560  	// The state of the assessment run.
  4561  	//
  4562  	// State is a required field
  4563  	State *string `locationName:"state" type:"string" required:"true" enum:"AssessmentRunState"`
  4564  
  4565  	// The last time when the assessment run's state changed.
  4566  	//
  4567  	// StateChangedAt is a required field
  4568  	StateChangedAt *time.Time `locationName:"stateChangedAt" type:"timestamp" required:"true"`
  4569  
  4570  	// A list of the assessment run state changes.
  4571  	//
  4572  	// StateChanges is a required field
  4573  	StateChanges []*AssessmentRunStateChange `locationName:"stateChanges" type:"list" required:"true"`
  4574  
  4575  	// The user-defined attributes that are assigned to every generated finding.
  4576  	//
  4577  	// UserAttributesForFindings is a required field
  4578  	UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list" required:"true"`
  4579  }
  4580  
  4581  // String returns the string representation.
  4582  //
  4583  // API parameter values that are decorated as "sensitive" in the API will not
  4584  // be included in the string output. The member name will be present, but the
  4585  // value will be replaced with "sensitive".
  4586  func (s AssessmentRun) String() string {
  4587  	return awsutil.Prettify(s)
  4588  }
  4589  
  4590  // GoString returns the string representation.
  4591  //
  4592  // API parameter values that are decorated as "sensitive" in the API will not
  4593  // be included in the string output. The member name will be present, but the
  4594  // value will be replaced with "sensitive".
  4595  func (s AssessmentRun) GoString() string {
  4596  	return s.String()
  4597  }
  4598  
  4599  // SetArn sets the Arn field's value.
  4600  func (s *AssessmentRun) SetArn(v string) *AssessmentRun {
  4601  	s.Arn = &v
  4602  	return s
  4603  }
  4604  
  4605  // SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
  4606  func (s *AssessmentRun) SetAssessmentTemplateArn(v string) *AssessmentRun {
  4607  	s.AssessmentTemplateArn = &v
  4608  	return s
  4609  }
  4610  
  4611  // SetCompletedAt sets the CompletedAt field's value.
  4612  func (s *AssessmentRun) SetCompletedAt(v time.Time) *AssessmentRun {
  4613  	s.CompletedAt = &v
  4614  	return s
  4615  }
  4616  
  4617  // SetCreatedAt sets the CreatedAt field's value.
  4618  func (s *AssessmentRun) SetCreatedAt(v time.Time) *AssessmentRun {
  4619  	s.CreatedAt = &v
  4620  	return s
  4621  }
  4622  
  4623  // SetDataCollected sets the DataCollected field's value.
  4624  func (s *AssessmentRun) SetDataCollected(v bool) *AssessmentRun {
  4625  	s.DataCollected = &v
  4626  	return s
  4627  }
  4628  
  4629  // SetDurationInSeconds sets the DurationInSeconds field's value.
  4630  func (s *AssessmentRun) SetDurationInSeconds(v int64) *AssessmentRun {
  4631  	s.DurationInSeconds = &v
  4632  	return s
  4633  }
  4634  
  4635  // SetFindingCounts sets the FindingCounts field's value.
  4636  func (s *AssessmentRun) SetFindingCounts(v map[string]*int64) *AssessmentRun {
  4637  	s.FindingCounts = v
  4638  	return s
  4639  }
  4640  
  4641  // SetName sets the Name field's value.
  4642  func (s *AssessmentRun) SetName(v string) *AssessmentRun {
  4643  	s.Name = &v
  4644  	return s
  4645  }
  4646  
  4647  // SetNotifications sets the Notifications field's value.
  4648  func (s *AssessmentRun) SetNotifications(v []*AssessmentRunNotification) *AssessmentRun {
  4649  	s.Notifications = v
  4650  	return s
  4651  }
  4652  
  4653  // SetRulesPackageArns sets the RulesPackageArns field's value.
  4654  func (s *AssessmentRun) SetRulesPackageArns(v []*string) *AssessmentRun {
  4655  	s.RulesPackageArns = v
  4656  	return s
  4657  }
  4658  
  4659  // SetStartedAt sets the StartedAt field's value.
  4660  func (s *AssessmentRun) SetStartedAt(v time.Time) *AssessmentRun {
  4661  	s.StartedAt = &v
  4662  	return s
  4663  }
  4664  
  4665  // SetState sets the State field's value.
  4666  func (s *AssessmentRun) SetState(v string) *AssessmentRun {
  4667  	s.State = &v
  4668  	return s
  4669  }
  4670  
  4671  // SetStateChangedAt sets the StateChangedAt field's value.
  4672  func (s *AssessmentRun) SetStateChangedAt(v time.Time) *AssessmentRun {
  4673  	s.StateChangedAt = &v
  4674  	return s
  4675  }
  4676  
  4677  // SetStateChanges sets the StateChanges field's value.
  4678  func (s *AssessmentRun) SetStateChanges(v []*AssessmentRunStateChange) *AssessmentRun {
  4679  	s.StateChanges = v
  4680  	return s
  4681  }
  4682  
  4683  // SetUserAttributesForFindings sets the UserAttributesForFindings field's value.
  4684  func (s *AssessmentRun) SetUserAttributesForFindings(v []*Attribute) *AssessmentRun {
  4685  	s.UserAttributesForFindings = v
  4686  	return s
  4687  }
  4688  
  4689  // Contains information about an Amazon Inspector agent. This data type is used
  4690  // as a response element in the ListAssessmentRunAgents action.
  4691  type AssessmentRunAgent struct {
  4692  	_ struct{} `type:"structure"`
  4693  
  4694  	// The current health state of the agent.
  4695  	//
  4696  	// AgentHealth is a required field
  4697  	AgentHealth *string `locationName:"agentHealth" type:"string" required:"true" enum:"AgentHealth"`
  4698  
  4699  	// The detailed health state of the agent.
  4700  	//
  4701  	// AgentHealthCode is a required field
  4702  	AgentHealthCode *string `locationName:"agentHealthCode" type:"string" required:"true" enum:"AgentHealthCode"`
  4703  
  4704  	// The description for the agent health code.
  4705  	AgentHealthDetails *string `locationName:"agentHealthDetails" type:"string"`
  4706  
  4707  	// The AWS account of the EC2 instance where the agent is installed.
  4708  	//
  4709  	// AgentId is a required field
  4710  	AgentId *string `locationName:"agentId" min:"1" type:"string" required:"true"`
  4711  
  4712  	// The ARN of the assessment run that is associated with the agent.
  4713  	//
  4714  	// AssessmentRunArn is a required field
  4715  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
  4716  
  4717  	// The Auto Scaling group of the EC2 instance that is specified by the agent
  4718  	// ID.
  4719  	AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"`
  4720  
  4721  	// The Amazon Inspector application data metrics that are collected by the agent.
  4722  	//
  4723  	// TelemetryMetadata is a required field
  4724  	TelemetryMetadata []*TelemetryMetadata `locationName:"telemetryMetadata" type:"list" required:"true"`
  4725  }
  4726  
  4727  // String returns the string representation.
  4728  //
  4729  // API parameter values that are decorated as "sensitive" in the API will not
  4730  // be included in the string output. The member name will be present, but the
  4731  // value will be replaced with "sensitive".
  4732  func (s AssessmentRunAgent) String() string {
  4733  	return awsutil.Prettify(s)
  4734  }
  4735  
  4736  // GoString returns the string representation.
  4737  //
  4738  // API parameter values that are decorated as "sensitive" in the API will not
  4739  // be included in the string output. The member name will be present, but the
  4740  // value will be replaced with "sensitive".
  4741  func (s AssessmentRunAgent) GoString() string {
  4742  	return s.String()
  4743  }
  4744  
  4745  // SetAgentHealth sets the AgentHealth field's value.
  4746  func (s *AssessmentRunAgent) SetAgentHealth(v string) *AssessmentRunAgent {
  4747  	s.AgentHealth = &v
  4748  	return s
  4749  }
  4750  
  4751  // SetAgentHealthCode sets the AgentHealthCode field's value.
  4752  func (s *AssessmentRunAgent) SetAgentHealthCode(v string) *AssessmentRunAgent {
  4753  	s.AgentHealthCode = &v
  4754  	return s
  4755  }
  4756  
  4757  // SetAgentHealthDetails sets the AgentHealthDetails field's value.
  4758  func (s *AssessmentRunAgent) SetAgentHealthDetails(v string) *AssessmentRunAgent {
  4759  	s.AgentHealthDetails = &v
  4760  	return s
  4761  }
  4762  
  4763  // SetAgentId sets the AgentId field's value.
  4764  func (s *AssessmentRunAgent) SetAgentId(v string) *AssessmentRunAgent {
  4765  	s.AgentId = &v
  4766  	return s
  4767  }
  4768  
  4769  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
  4770  func (s *AssessmentRunAgent) SetAssessmentRunArn(v string) *AssessmentRunAgent {
  4771  	s.AssessmentRunArn = &v
  4772  	return s
  4773  }
  4774  
  4775  // SetAutoScalingGroup sets the AutoScalingGroup field's value.
  4776  func (s *AssessmentRunAgent) SetAutoScalingGroup(v string) *AssessmentRunAgent {
  4777  	s.AutoScalingGroup = &v
  4778  	return s
  4779  }
  4780  
  4781  // SetTelemetryMetadata sets the TelemetryMetadata field's value.
  4782  func (s *AssessmentRunAgent) SetTelemetryMetadata(v []*TelemetryMetadata) *AssessmentRunAgent {
  4783  	s.TelemetryMetadata = v
  4784  	return s
  4785  }
  4786  
  4787  // Used as the request parameter in the ListAssessmentRuns action.
  4788  type AssessmentRunFilter struct {
  4789  	_ struct{} `type:"structure"`
  4790  
  4791  	// For a record to match a filter, the value that is specified for this data
  4792  	// type property must inclusively match any value between the specified minimum
  4793  	// and maximum values of the completedAt property of the AssessmentRun data
  4794  	// type.
  4795  	CompletionTimeRange *TimestampRange `locationName:"completionTimeRange" type:"structure"`
  4796  
  4797  	// For a record to match a filter, the value that is specified for this data
  4798  	// type property must inclusively match any value between the specified minimum
  4799  	// and maximum values of the durationInSeconds property of the AssessmentRun
  4800  	// data type.
  4801  	DurationRange *DurationRange `locationName:"durationRange" type:"structure"`
  4802  
  4803  	// For a record to match a filter, an explicit value or a string containing
  4804  	// a wildcard that is specified for this data type property must match the value
  4805  	// of the assessmentRunName property of the AssessmentRun data type.
  4806  	NamePattern *string `locationName:"namePattern" min:"1" type:"string"`
  4807  
  4808  	// For a record to match a filter, the value that is specified for this data
  4809  	// type property must be contained in the list of values of the rulesPackages
  4810  	// property of the AssessmentRun data type.
  4811  	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"`
  4812  
  4813  	// For a record to match a filter, the value that is specified for this data
  4814  	// type property must inclusively match any value between the specified minimum
  4815  	// and maximum values of the startTime property of the AssessmentRun data type.
  4816  	StartTimeRange *TimestampRange `locationName:"startTimeRange" type:"structure"`
  4817  
  4818  	// For a record to match a filter, the value that is specified for this data
  4819  	// type property must match the stateChangedAt property of the AssessmentRun
  4820  	// data type.
  4821  	StateChangeTimeRange *TimestampRange `locationName:"stateChangeTimeRange" type:"structure"`
  4822  
  4823  	// For a record to match a filter, one of the values specified for this data
  4824  	// type property must be the exact match of the value of the assessmentRunState
  4825  	// property of the AssessmentRun data type.
  4826  	States []*string `locationName:"states" type:"list"`
  4827  }
  4828  
  4829  // String returns the string representation.
  4830  //
  4831  // API parameter values that are decorated as "sensitive" in the API will not
  4832  // be included in the string output. The member name will be present, but the
  4833  // value will be replaced with "sensitive".
  4834  func (s AssessmentRunFilter) String() string {
  4835  	return awsutil.Prettify(s)
  4836  }
  4837  
  4838  // GoString returns the string representation.
  4839  //
  4840  // API parameter values that are decorated as "sensitive" in the API will not
  4841  // be included in the string output. The member name will be present, but the
  4842  // value will be replaced with "sensitive".
  4843  func (s AssessmentRunFilter) GoString() string {
  4844  	return s.String()
  4845  }
  4846  
  4847  // Validate inspects the fields of the type to determine if they are valid.
  4848  func (s *AssessmentRunFilter) Validate() error {
  4849  	invalidParams := request.ErrInvalidParams{Context: "AssessmentRunFilter"}
  4850  	if s.NamePattern != nil && len(*s.NamePattern) < 1 {
  4851  		invalidParams.Add(request.NewErrParamMinLen("NamePattern", 1))
  4852  	}
  4853  	if s.DurationRange != nil {
  4854  		if err := s.DurationRange.Validate(); err != nil {
  4855  			invalidParams.AddNested("DurationRange", err.(request.ErrInvalidParams))
  4856  		}
  4857  	}
  4858  
  4859  	if invalidParams.Len() > 0 {
  4860  		return invalidParams
  4861  	}
  4862  	return nil
  4863  }
  4864  
  4865  // SetCompletionTimeRange sets the CompletionTimeRange field's value.
  4866  func (s *AssessmentRunFilter) SetCompletionTimeRange(v *TimestampRange) *AssessmentRunFilter {
  4867  	s.CompletionTimeRange = v
  4868  	return s
  4869  }
  4870  
  4871  // SetDurationRange sets the DurationRange field's value.
  4872  func (s *AssessmentRunFilter) SetDurationRange(v *DurationRange) *AssessmentRunFilter {
  4873  	s.DurationRange = v
  4874  	return s
  4875  }
  4876  
  4877  // SetNamePattern sets the NamePattern field's value.
  4878  func (s *AssessmentRunFilter) SetNamePattern(v string) *AssessmentRunFilter {
  4879  	s.NamePattern = &v
  4880  	return s
  4881  }
  4882  
  4883  // SetRulesPackageArns sets the RulesPackageArns field's value.
  4884  func (s *AssessmentRunFilter) SetRulesPackageArns(v []*string) *AssessmentRunFilter {
  4885  	s.RulesPackageArns = v
  4886  	return s
  4887  }
  4888  
  4889  // SetStartTimeRange sets the StartTimeRange field's value.
  4890  func (s *AssessmentRunFilter) SetStartTimeRange(v *TimestampRange) *AssessmentRunFilter {
  4891  	s.StartTimeRange = v
  4892  	return s
  4893  }
  4894  
  4895  // SetStateChangeTimeRange sets the StateChangeTimeRange field's value.
  4896  func (s *AssessmentRunFilter) SetStateChangeTimeRange(v *TimestampRange) *AssessmentRunFilter {
  4897  	s.StateChangeTimeRange = v
  4898  	return s
  4899  }
  4900  
  4901  // SetStates sets the States field's value.
  4902  func (s *AssessmentRunFilter) SetStates(v []*string) *AssessmentRunFilter {
  4903  	s.States = v
  4904  	return s
  4905  }
  4906  
  4907  // You cannot perform a specified action if an assessment run is currently in
  4908  // progress.
  4909  type AssessmentRunInProgressException struct {
  4910  	_            struct{}                  `type:"structure"`
  4911  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  4912  
  4913  	// The ARNs of the assessment runs that are currently in progress.
  4914  	//
  4915  	// AssessmentRunArns is a required field
  4916  	AssessmentRunArns []*string `locationName:"assessmentRunArns" min:"1" type:"list" required:"true"`
  4917  
  4918  	// Boolean value that indicates whether the ARN list of the assessment runs
  4919  	// is truncated.
  4920  	//
  4921  	// AssessmentRunArnsTruncated is a required field
  4922  	AssessmentRunArnsTruncated *bool `locationName:"assessmentRunArnsTruncated" type:"boolean" required:"true"`
  4923  
  4924  	// You can immediately retry your request.
  4925  	//
  4926  	// CanRetry is a required field
  4927  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
  4928  
  4929  	// Details of the exception error.
  4930  	Message_ *string `locationName:"message" type:"string"`
  4931  }
  4932  
  4933  // String returns the string representation.
  4934  //
  4935  // API parameter values that are decorated as "sensitive" in the API will not
  4936  // be included in the string output. The member name will be present, but the
  4937  // value will be replaced with "sensitive".
  4938  func (s AssessmentRunInProgressException) String() string {
  4939  	return awsutil.Prettify(s)
  4940  }
  4941  
  4942  // GoString returns the string representation.
  4943  //
  4944  // API parameter values that are decorated as "sensitive" in the API will not
  4945  // be included in the string output. The member name will be present, but the
  4946  // value will be replaced with "sensitive".
  4947  func (s AssessmentRunInProgressException) GoString() string {
  4948  	return s.String()
  4949  }
  4950  
  4951  func newErrorAssessmentRunInProgressException(v protocol.ResponseMetadata) error {
  4952  	return &AssessmentRunInProgressException{
  4953  		RespMetadata: v,
  4954  	}
  4955  }
  4956  
  4957  // Code returns the exception type name.
  4958  func (s *AssessmentRunInProgressException) Code() string {
  4959  	return "AssessmentRunInProgressException"
  4960  }
  4961  
  4962  // Message returns the exception's message.
  4963  func (s *AssessmentRunInProgressException) Message() string {
  4964  	if s.Message_ != nil {
  4965  		return *s.Message_
  4966  	}
  4967  	return ""
  4968  }
  4969  
  4970  // OrigErr always returns nil, satisfies awserr.Error interface.
  4971  func (s *AssessmentRunInProgressException) OrigErr() error {
  4972  	return nil
  4973  }
  4974  
  4975  func (s *AssessmentRunInProgressException) Error() string {
  4976  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  4977  }
  4978  
  4979  // Status code returns the HTTP status code for the request's response error.
  4980  func (s *AssessmentRunInProgressException) StatusCode() int {
  4981  	return s.RespMetadata.StatusCode
  4982  }
  4983  
  4984  // RequestID returns the service's response RequestID for request.
  4985  func (s *AssessmentRunInProgressException) RequestID() string {
  4986  	return s.RespMetadata.RequestID
  4987  }
  4988  
  4989  // Used as one of the elements of the AssessmentRun data type.
  4990  type AssessmentRunNotification struct {
  4991  	_ struct{} `type:"structure"`
  4992  
  4993  	// The date of the notification.
  4994  	//
  4995  	// Date is a required field
  4996  	Date *time.Time `locationName:"date" type:"timestamp" required:"true"`
  4997  
  4998  	// The Boolean value that specifies whether the notification represents an error.
  4999  	//
  5000  	// Error is a required field
  5001  	Error *bool `locationName:"error" type:"boolean" required:"true"`
  5002  
  5003  	// The event for which a notification is sent.
  5004  	//
  5005  	// Event is a required field
  5006  	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
  5007  
  5008  	// The message included in the notification.
  5009  	Message *string `locationName:"message" type:"string"`
  5010  
  5011  	// The status code of the SNS notification.
  5012  	SnsPublishStatusCode *string `locationName:"snsPublishStatusCode" type:"string" enum:"AssessmentRunNotificationSnsStatusCode"`
  5013  
  5014  	// The SNS topic to which the SNS notification is sent.
  5015  	SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string"`
  5016  }
  5017  
  5018  // String returns the string representation.
  5019  //
  5020  // API parameter values that are decorated as "sensitive" in the API will not
  5021  // be included in the string output. The member name will be present, but the
  5022  // value will be replaced with "sensitive".
  5023  func (s AssessmentRunNotification) String() string {
  5024  	return awsutil.Prettify(s)
  5025  }
  5026  
  5027  // GoString returns the string representation.
  5028  //
  5029  // API parameter values that are decorated as "sensitive" in the API will not
  5030  // be included in the string output. The member name will be present, but the
  5031  // value will be replaced with "sensitive".
  5032  func (s AssessmentRunNotification) GoString() string {
  5033  	return s.String()
  5034  }
  5035  
  5036  // SetDate sets the Date field's value.
  5037  func (s *AssessmentRunNotification) SetDate(v time.Time) *AssessmentRunNotification {
  5038  	s.Date = &v
  5039  	return s
  5040  }
  5041  
  5042  // SetError sets the Error field's value.
  5043  func (s *AssessmentRunNotification) SetError(v bool) *AssessmentRunNotification {
  5044  	s.Error = &v
  5045  	return s
  5046  }
  5047  
  5048  // SetEvent sets the Event field's value.
  5049  func (s *AssessmentRunNotification) SetEvent(v string) *AssessmentRunNotification {
  5050  	s.Event = &v
  5051  	return s
  5052  }
  5053  
  5054  // SetMessage sets the Message field's value.
  5055  func (s *AssessmentRunNotification) SetMessage(v string) *AssessmentRunNotification {
  5056  	s.Message = &v
  5057  	return s
  5058  }
  5059  
  5060  // SetSnsPublishStatusCode sets the SnsPublishStatusCode field's value.
  5061  func (s *AssessmentRunNotification) SetSnsPublishStatusCode(v string) *AssessmentRunNotification {
  5062  	s.SnsPublishStatusCode = &v
  5063  	return s
  5064  }
  5065  
  5066  // SetSnsTopicArn sets the SnsTopicArn field's value.
  5067  func (s *AssessmentRunNotification) SetSnsTopicArn(v string) *AssessmentRunNotification {
  5068  	s.SnsTopicArn = &v
  5069  	return s
  5070  }
  5071  
  5072  // Used as one of the elements of the AssessmentRun data type.
  5073  type AssessmentRunStateChange struct {
  5074  	_ struct{} `type:"structure"`
  5075  
  5076  	// The assessment run state.
  5077  	//
  5078  	// State is a required field
  5079  	State *string `locationName:"state" type:"string" required:"true" enum:"AssessmentRunState"`
  5080  
  5081  	// The last time the assessment run state changed.
  5082  	//
  5083  	// StateChangedAt is a required field
  5084  	StateChangedAt *time.Time `locationName:"stateChangedAt" type:"timestamp" required:"true"`
  5085  }
  5086  
  5087  // String returns the string representation.
  5088  //
  5089  // API parameter values that are decorated as "sensitive" in the API will not
  5090  // be included in the string output. The member name will be present, but the
  5091  // value will be replaced with "sensitive".
  5092  func (s AssessmentRunStateChange) String() string {
  5093  	return awsutil.Prettify(s)
  5094  }
  5095  
  5096  // GoString returns the string representation.
  5097  //
  5098  // API parameter values that are decorated as "sensitive" in the API will not
  5099  // be included in the string output. The member name will be present, but the
  5100  // value will be replaced with "sensitive".
  5101  func (s AssessmentRunStateChange) GoString() string {
  5102  	return s.String()
  5103  }
  5104  
  5105  // SetState sets the State field's value.
  5106  func (s *AssessmentRunStateChange) SetState(v string) *AssessmentRunStateChange {
  5107  	s.State = &v
  5108  	return s
  5109  }
  5110  
  5111  // SetStateChangedAt sets the StateChangedAt field's value.
  5112  func (s *AssessmentRunStateChange) SetStateChangedAt(v time.Time) *AssessmentRunStateChange {
  5113  	s.StateChangedAt = &v
  5114  	return s
  5115  }
  5116  
  5117  // Contains information about an Amazon Inspector application. This data type
  5118  // is used as the response element in the DescribeAssessmentTargets action.
  5119  type AssessmentTarget struct {
  5120  	_ struct{} `type:"structure"`
  5121  
  5122  	// The ARN that specifies the Amazon Inspector assessment target.
  5123  	//
  5124  	// Arn is a required field
  5125  	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
  5126  
  5127  	// The time at which the assessment target is created.
  5128  	//
  5129  	// CreatedAt is a required field
  5130  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
  5131  
  5132  	// The name of the Amazon Inspector assessment target.
  5133  	//
  5134  	// Name is a required field
  5135  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  5136  
  5137  	// The ARN that specifies the resource group that is associated with the assessment
  5138  	// target.
  5139  	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string"`
  5140  
  5141  	// The time at which UpdateAssessmentTarget is called.
  5142  	//
  5143  	// UpdatedAt is a required field
  5144  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
  5145  }
  5146  
  5147  // String returns the string representation.
  5148  //
  5149  // API parameter values that are decorated as "sensitive" in the API will not
  5150  // be included in the string output. The member name will be present, but the
  5151  // value will be replaced with "sensitive".
  5152  func (s AssessmentTarget) String() string {
  5153  	return awsutil.Prettify(s)
  5154  }
  5155  
  5156  // GoString returns the string representation.
  5157  //
  5158  // API parameter values that are decorated as "sensitive" in the API will not
  5159  // be included in the string output. The member name will be present, but the
  5160  // value will be replaced with "sensitive".
  5161  func (s AssessmentTarget) GoString() string {
  5162  	return s.String()
  5163  }
  5164  
  5165  // SetArn sets the Arn field's value.
  5166  func (s *AssessmentTarget) SetArn(v string) *AssessmentTarget {
  5167  	s.Arn = &v
  5168  	return s
  5169  }
  5170  
  5171  // SetCreatedAt sets the CreatedAt field's value.
  5172  func (s *AssessmentTarget) SetCreatedAt(v time.Time) *AssessmentTarget {
  5173  	s.CreatedAt = &v
  5174  	return s
  5175  }
  5176  
  5177  // SetName sets the Name field's value.
  5178  func (s *AssessmentTarget) SetName(v string) *AssessmentTarget {
  5179  	s.Name = &v
  5180  	return s
  5181  }
  5182  
  5183  // SetResourceGroupArn sets the ResourceGroupArn field's value.
  5184  func (s *AssessmentTarget) SetResourceGroupArn(v string) *AssessmentTarget {
  5185  	s.ResourceGroupArn = &v
  5186  	return s
  5187  }
  5188  
  5189  // SetUpdatedAt sets the UpdatedAt field's value.
  5190  func (s *AssessmentTarget) SetUpdatedAt(v time.Time) *AssessmentTarget {
  5191  	s.UpdatedAt = &v
  5192  	return s
  5193  }
  5194  
  5195  // Used as the request parameter in the ListAssessmentTargets action.
  5196  type AssessmentTargetFilter struct {
  5197  	_ struct{} `type:"structure"`
  5198  
  5199  	// For a record to match a filter, an explicit value or a string that contains
  5200  	// a wildcard that is specified for this data type property must match the value
  5201  	// of the assessmentTargetName property of the AssessmentTarget data type.
  5202  	AssessmentTargetNamePattern *string `locationName:"assessmentTargetNamePattern" min:"1" type:"string"`
  5203  }
  5204  
  5205  // String returns the string representation.
  5206  //
  5207  // API parameter values that are decorated as "sensitive" in the API will not
  5208  // be included in the string output. The member name will be present, but the
  5209  // value will be replaced with "sensitive".
  5210  func (s AssessmentTargetFilter) String() string {
  5211  	return awsutil.Prettify(s)
  5212  }
  5213  
  5214  // GoString returns the string representation.
  5215  //
  5216  // API parameter values that are decorated as "sensitive" in the API will not
  5217  // be included in the string output. The member name will be present, but the
  5218  // value will be replaced with "sensitive".
  5219  func (s AssessmentTargetFilter) GoString() string {
  5220  	return s.String()
  5221  }
  5222  
  5223  // Validate inspects the fields of the type to determine if they are valid.
  5224  func (s *AssessmentTargetFilter) Validate() error {
  5225  	invalidParams := request.ErrInvalidParams{Context: "AssessmentTargetFilter"}
  5226  	if s.AssessmentTargetNamePattern != nil && len(*s.AssessmentTargetNamePattern) < 1 {
  5227  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetNamePattern", 1))
  5228  	}
  5229  
  5230  	if invalidParams.Len() > 0 {
  5231  		return invalidParams
  5232  	}
  5233  	return nil
  5234  }
  5235  
  5236  // SetAssessmentTargetNamePattern sets the AssessmentTargetNamePattern field's value.
  5237  func (s *AssessmentTargetFilter) SetAssessmentTargetNamePattern(v string) *AssessmentTargetFilter {
  5238  	s.AssessmentTargetNamePattern = &v
  5239  	return s
  5240  }
  5241  
  5242  // Contains information about an Amazon Inspector assessment template. This
  5243  // data type is used as the response element in the DescribeAssessmentTemplates
  5244  // action.
  5245  type AssessmentTemplate struct {
  5246  	_ struct{} `type:"structure"`
  5247  
  5248  	// The ARN of the assessment template.
  5249  	//
  5250  	// Arn is a required field
  5251  	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
  5252  
  5253  	// The number of existing assessment runs associated with this assessment template.
  5254  	// This value can be zero or a positive integer.
  5255  	//
  5256  	// AssessmentRunCount is a required field
  5257  	AssessmentRunCount *int64 `locationName:"assessmentRunCount" type:"integer" required:"true"`
  5258  
  5259  	// The ARN of the assessment target that corresponds to this assessment template.
  5260  	//
  5261  	// AssessmentTargetArn is a required field
  5262  	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
  5263  
  5264  	// The time at which the assessment template is created.
  5265  	//
  5266  	// CreatedAt is a required field
  5267  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
  5268  
  5269  	// The duration in seconds specified for this assessment template. The default
  5270  	// value is 3600 seconds (one hour). The maximum value is 86400 seconds (one
  5271  	// day).
  5272  	//
  5273  	// DurationInSeconds is a required field
  5274  	DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"`
  5275  
  5276  	// The Amazon Resource Name (ARN) of the most recent assessment run associated
  5277  	// with this assessment template. This value exists only when the value of assessmentRunCount
  5278  	// is greaterpa than zero.
  5279  	LastAssessmentRunArn *string `locationName:"lastAssessmentRunArn" min:"1" type:"string"`
  5280  
  5281  	// The name of the assessment template.
  5282  	//
  5283  	// Name is a required field
  5284  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  5285  
  5286  	// The rules packages that are specified for this assessment template.
  5287  	//
  5288  	// RulesPackageArns is a required field
  5289  	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"`
  5290  
  5291  	// The user-defined attributes that are assigned to every generated finding
  5292  	// from the assessment run that uses this assessment template.
  5293  	//
  5294  	// UserAttributesForFindings is a required field
  5295  	UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list" required:"true"`
  5296  }
  5297  
  5298  // String returns the string representation.
  5299  //
  5300  // API parameter values that are decorated as "sensitive" in the API will not
  5301  // be included in the string output. The member name will be present, but the
  5302  // value will be replaced with "sensitive".
  5303  func (s AssessmentTemplate) String() string {
  5304  	return awsutil.Prettify(s)
  5305  }
  5306  
  5307  // GoString returns the string representation.
  5308  //
  5309  // API parameter values that are decorated as "sensitive" in the API will not
  5310  // be included in the string output. The member name will be present, but the
  5311  // value will be replaced with "sensitive".
  5312  func (s AssessmentTemplate) GoString() string {
  5313  	return s.String()
  5314  }
  5315  
  5316  // SetArn sets the Arn field's value.
  5317  func (s *AssessmentTemplate) SetArn(v string) *AssessmentTemplate {
  5318  	s.Arn = &v
  5319  	return s
  5320  }
  5321  
  5322  // SetAssessmentRunCount sets the AssessmentRunCount field's value.
  5323  func (s *AssessmentTemplate) SetAssessmentRunCount(v int64) *AssessmentTemplate {
  5324  	s.AssessmentRunCount = &v
  5325  	return s
  5326  }
  5327  
  5328  // SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
  5329  func (s *AssessmentTemplate) SetAssessmentTargetArn(v string) *AssessmentTemplate {
  5330  	s.AssessmentTargetArn = &v
  5331  	return s
  5332  }
  5333  
  5334  // SetCreatedAt sets the CreatedAt field's value.
  5335  func (s *AssessmentTemplate) SetCreatedAt(v time.Time) *AssessmentTemplate {
  5336  	s.CreatedAt = &v
  5337  	return s
  5338  }
  5339  
  5340  // SetDurationInSeconds sets the DurationInSeconds field's value.
  5341  func (s *AssessmentTemplate) SetDurationInSeconds(v int64) *AssessmentTemplate {
  5342  	s.DurationInSeconds = &v
  5343  	return s
  5344  }
  5345  
  5346  // SetLastAssessmentRunArn sets the LastAssessmentRunArn field's value.
  5347  func (s *AssessmentTemplate) SetLastAssessmentRunArn(v string) *AssessmentTemplate {
  5348  	s.LastAssessmentRunArn = &v
  5349  	return s
  5350  }
  5351  
  5352  // SetName sets the Name field's value.
  5353  func (s *AssessmentTemplate) SetName(v string) *AssessmentTemplate {
  5354  	s.Name = &v
  5355  	return s
  5356  }
  5357  
  5358  // SetRulesPackageArns sets the RulesPackageArns field's value.
  5359  func (s *AssessmentTemplate) SetRulesPackageArns(v []*string) *AssessmentTemplate {
  5360  	s.RulesPackageArns = v
  5361  	return s
  5362  }
  5363  
  5364  // SetUserAttributesForFindings sets the UserAttributesForFindings field's value.
  5365  func (s *AssessmentTemplate) SetUserAttributesForFindings(v []*Attribute) *AssessmentTemplate {
  5366  	s.UserAttributesForFindings = v
  5367  	return s
  5368  }
  5369  
  5370  // Used as the request parameter in the ListAssessmentTemplates action.
  5371  type AssessmentTemplateFilter struct {
  5372  	_ struct{} `type:"structure"`
  5373  
  5374  	// For a record to match a filter, the value specified for this data type property
  5375  	// must inclusively match any value between the specified minimum and maximum
  5376  	// values of the durationInSeconds property of the AssessmentTemplate data type.
  5377  	DurationRange *DurationRange `locationName:"durationRange" type:"structure"`
  5378  
  5379  	// For a record to match a filter, an explicit value or a string that contains
  5380  	// a wildcard that is specified for this data type property must match the value
  5381  	// of the assessmentTemplateName property of the AssessmentTemplate data type.
  5382  	NamePattern *string `locationName:"namePattern" min:"1" type:"string"`
  5383  
  5384  	// For a record to match a filter, the values that are specified for this data
  5385  	// type property must be contained in the list of values of the rulesPackageArns
  5386  	// property of the AssessmentTemplate data type.
  5387  	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"`
  5388  }
  5389  
  5390  // String returns the string representation.
  5391  //
  5392  // API parameter values that are decorated as "sensitive" in the API will not
  5393  // be included in the string output. The member name will be present, but the
  5394  // value will be replaced with "sensitive".
  5395  func (s AssessmentTemplateFilter) String() string {
  5396  	return awsutil.Prettify(s)
  5397  }
  5398  
  5399  // GoString returns the string representation.
  5400  //
  5401  // API parameter values that are decorated as "sensitive" in the API will not
  5402  // be included in the string output. The member name will be present, but the
  5403  // value will be replaced with "sensitive".
  5404  func (s AssessmentTemplateFilter) GoString() string {
  5405  	return s.String()
  5406  }
  5407  
  5408  // Validate inspects the fields of the type to determine if they are valid.
  5409  func (s *AssessmentTemplateFilter) Validate() error {
  5410  	invalidParams := request.ErrInvalidParams{Context: "AssessmentTemplateFilter"}
  5411  	if s.NamePattern != nil && len(*s.NamePattern) < 1 {
  5412  		invalidParams.Add(request.NewErrParamMinLen("NamePattern", 1))
  5413  	}
  5414  	if s.DurationRange != nil {
  5415  		if err := s.DurationRange.Validate(); err != nil {
  5416  			invalidParams.AddNested("DurationRange", err.(request.ErrInvalidParams))
  5417  		}
  5418  	}
  5419  
  5420  	if invalidParams.Len() > 0 {
  5421  		return invalidParams
  5422  	}
  5423  	return nil
  5424  }
  5425  
  5426  // SetDurationRange sets the DurationRange field's value.
  5427  func (s *AssessmentTemplateFilter) SetDurationRange(v *DurationRange) *AssessmentTemplateFilter {
  5428  	s.DurationRange = v
  5429  	return s
  5430  }
  5431  
  5432  // SetNamePattern sets the NamePattern field's value.
  5433  func (s *AssessmentTemplateFilter) SetNamePattern(v string) *AssessmentTemplateFilter {
  5434  	s.NamePattern = &v
  5435  	return s
  5436  }
  5437  
  5438  // SetRulesPackageArns sets the RulesPackageArns field's value.
  5439  func (s *AssessmentTemplateFilter) SetRulesPackageArns(v []*string) *AssessmentTemplateFilter {
  5440  	s.RulesPackageArns = v
  5441  	return s
  5442  }
  5443  
  5444  // A collection of attributes of the host from which the finding is generated.
  5445  type AssetAttributes struct {
  5446  	_ struct{} `type:"structure"`
  5447  
  5448  	// The ID of the agent that is installed on the EC2 instance where the finding
  5449  	// is generated.
  5450  	AgentId *string `locationName:"agentId" min:"1" type:"string"`
  5451  
  5452  	// The ID of the Amazon Machine Image (AMI) that is installed on the EC2 instance
  5453  	// where the finding is generated.
  5454  	AmiId *string `locationName:"amiId" type:"string"`
  5455  
  5456  	// The Auto Scaling group of the EC2 instance where the finding is generated.
  5457  	AutoScalingGroup *string `locationName:"autoScalingGroup" min:"1" type:"string"`
  5458  
  5459  	// The hostname of the EC2 instance where the finding is generated.
  5460  	Hostname *string `locationName:"hostname" type:"string"`
  5461  
  5462  	// The list of IP v4 addresses of the EC2 instance where the finding is generated.
  5463  	Ipv4Addresses []*string `locationName:"ipv4Addresses" type:"list"`
  5464  
  5465  	// An array of the network interfaces interacting with the EC2 instance where
  5466  	// the finding is generated.
  5467  	NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" type:"list"`
  5468  
  5469  	// The schema version of this data type.
  5470  	//
  5471  	// SchemaVersion is a required field
  5472  	SchemaVersion *int64 `locationName:"schemaVersion" type:"integer" required:"true"`
  5473  
  5474  	// The tags related to the EC2 instance where the finding is generated.
  5475  	Tags []*Tag `locationName:"tags" type:"list"`
  5476  }
  5477  
  5478  // String returns the string representation.
  5479  //
  5480  // API parameter values that are decorated as "sensitive" in the API will not
  5481  // be included in the string output. The member name will be present, but the
  5482  // value will be replaced with "sensitive".
  5483  func (s AssetAttributes) String() string {
  5484  	return awsutil.Prettify(s)
  5485  }
  5486  
  5487  // GoString returns the string representation.
  5488  //
  5489  // API parameter values that are decorated as "sensitive" in the API will not
  5490  // be included in the string output. The member name will be present, but the
  5491  // value will be replaced with "sensitive".
  5492  func (s AssetAttributes) GoString() string {
  5493  	return s.String()
  5494  }
  5495  
  5496  // SetAgentId sets the AgentId field's value.
  5497  func (s *AssetAttributes) SetAgentId(v string) *AssetAttributes {
  5498  	s.AgentId = &v
  5499  	return s
  5500  }
  5501  
  5502  // SetAmiId sets the AmiId field's value.
  5503  func (s *AssetAttributes) SetAmiId(v string) *AssetAttributes {
  5504  	s.AmiId = &v
  5505  	return s
  5506  }
  5507  
  5508  // SetAutoScalingGroup sets the AutoScalingGroup field's value.
  5509  func (s *AssetAttributes) SetAutoScalingGroup(v string) *AssetAttributes {
  5510  	s.AutoScalingGroup = &v
  5511  	return s
  5512  }
  5513  
  5514  // SetHostname sets the Hostname field's value.
  5515  func (s *AssetAttributes) SetHostname(v string) *AssetAttributes {
  5516  	s.Hostname = &v
  5517  	return s
  5518  }
  5519  
  5520  // SetIpv4Addresses sets the Ipv4Addresses field's value.
  5521  func (s *AssetAttributes) SetIpv4Addresses(v []*string) *AssetAttributes {
  5522  	s.Ipv4Addresses = v
  5523  	return s
  5524  }
  5525  
  5526  // SetNetworkInterfaces sets the NetworkInterfaces field's value.
  5527  func (s *AssetAttributes) SetNetworkInterfaces(v []*NetworkInterface) *AssetAttributes {
  5528  	s.NetworkInterfaces = v
  5529  	return s
  5530  }
  5531  
  5532  // SetSchemaVersion sets the SchemaVersion field's value.
  5533  func (s *AssetAttributes) SetSchemaVersion(v int64) *AssetAttributes {
  5534  	s.SchemaVersion = &v
  5535  	return s
  5536  }
  5537  
  5538  // SetTags sets the Tags field's value.
  5539  func (s *AssetAttributes) SetTags(v []*Tag) *AssetAttributes {
  5540  	s.Tags = v
  5541  	return s
  5542  }
  5543  
  5544  // This data type is used as a request parameter in the AddAttributesToFindings
  5545  // and CreateAssessmentTemplate actions.
  5546  type Attribute struct {
  5547  	_ struct{} `type:"structure"`
  5548  
  5549  	// The attribute key.
  5550  	//
  5551  	// Key is a required field
  5552  	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
  5553  
  5554  	// The value assigned to the attribute key.
  5555  	Value *string `locationName:"value" min:"1" type:"string"`
  5556  }
  5557  
  5558  // String returns the string representation.
  5559  //
  5560  // API parameter values that are decorated as "sensitive" in the API will not
  5561  // be included in the string output. The member name will be present, but the
  5562  // value will be replaced with "sensitive".
  5563  func (s Attribute) String() string {
  5564  	return awsutil.Prettify(s)
  5565  }
  5566  
  5567  // GoString returns the string representation.
  5568  //
  5569  // API parameter values that are decorated as "sensitive" in the API will not
  5570  // be included in the string output. The member name will be present, but the
  5571  // value will be replaced with "sensitive".
  5572  func (s Attribute) GoString() string {
  5573  	return s.String()
  5574  }
  5575  
  5576  // Validate inspects the fields of the type to determine if they are valid.
  5577  func (s *Attribute) Validate() error {
  5578  	invalidParams := request.ErrInvalidParams{Context: "Attribute"}
  5579  	if s.Key == nil {
  5580  		invalidParams.Add(request.NewErrParamRequired("Key"))
  5581  	}
  5582  	if s.Key != nil && len(*s.Key) < 1 {
  5583  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  5584  	}
  5585  	if s.Value != nil && len(*s.Value) < 1 {
  5586  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
  5587  	}
  5588  
  5589  	if invalidParams.Len() > 0 {
  5590  		return invalidParams
  5591  	}
  5592  	return nil
  5593  }
  5594  
  5595  // SetKey sets the Key field's value.
  5596  func (s *Attribute) SetKey(v string) *Attribute {
  5597  	s.Key = &v
  5598  	return s
  5599  }
  5600  
  5601  // SetValue sets the Value field's value.
  5602  func (s *Attribute) SetValue(v string) *Attribute {
  5603  	s.Value = &v
  5604  	return s
  5605  }
  5606  
  5607  type CreateAssessmentTargetInput struct {
  5608  	_ struct{} `type:"structure"`
  5609  
  5610  	// The user-defined name that identifies the assessment target that you want
  5611  	// to create. The name must be unique within the AWS account.
  5612  	//
  5613  	// AssessmentTargetName is a required field
  5614  	AssessmentTargetName *string `locationName:"assessmentTargetName" min:"1" type:"string" required:"true"`
  5615  
  5616  	// The ARN that specifies the resource group that is used to create the assessment
  5617  	// target. If resourceGroupArn is not specified, all EC2 instances in the current
  5618  	// AWS account and region are included in the assessment target.
  5619  	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string"`
  5620  }
  5621  
  5622  // String returns the string representation.
  5623  //
  5624  // API parameter values that are decorated as "sensitive" in the API will not
  5625  // be included in the string output. The member name will be present, but the
  5626  // value will be replaced with "sensitive".
  5627  func (s CreateAssessmentTargetInput) String() string {
  5628  	return awsutil.Prettify(s)
  5629  }
  5630  
  5631  // GoString returns the string representation.
  5632  //
  5633  // API parameter values that are decorated as "sensitive" in the API will not
  5634  // be included in the string output. The member name will be present, but the
  5635  // value will be replaced with "sensitive".
  5636  func (s CreateAssessmentTargetInput) GoString() string {
  5637  	return s.String()
  5638  }
  5639  
  5640  // Validate inspects the fields of the type to determine if they are valid.
  5641  func (s *CreateAssessmentTargetInput) Validate() error {
  5642  	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentTargetInput"}
  5643  	if s.AssessmentTargetName == nil {
  5644  		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetName"))
  5645  	}
  5646  	if s.AssessmentTargetName != nil && len(*s.AssessmentTargetName) < 1 {
  5647  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetName", 1))
  5648  	}
  5649  	if s.ResourceGroupArn != nil && len(*s.ResourceGroupArn) < 1 {
  5650  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArn", 1))
  5651  	}
  5652  
  5653  	if invalidParams.Len() > 0 {
  5654  		return invalidParams
  5655  	}
  5656  	return nil
  5657  }
  5658  
  5659  // SetAssessmentTargetName sets the AssessmentTargetName field's value.
  5660  func (s *CreateAssessmentTargetInput) SetAssessmentTargetName(v string) *CreateAssessmentTargetInput {
  5661  	s.AssessmentTargetName = &v
  5662  	return s
  5663  }
  5664  
  5665  // SetResourceGroupArn sets the ResourceGroupArn field's value.
  5666  func (s *CreateAssessmentTargetInput) SetResourceGroupArn(v string) *CreateAssessmentTargetInput {
  5667  	s.ResourceGroupArn = &v
  5668  	return s
  5669  }
  5670  
  5671  type CreateAssessmentTargetOutput struct {
  5672  	_ struct{} `type:"structure"`
  5673  
  5674  	// The ARN that specifies the assessment target that is created.
  5675  	//
  5676  	// AssessmentTargetArn is a required field
  5677  	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
  5678  }
  5679  
  5680  // String returns the string representation.
  5681  //
  5682  // API parameter values that are decorated as "sensitive" in the API will not
  5683  // be included in the string output. The member name will be present, but the
  5684  // value will be replaced with "sensitive".
  5685  func (s CreateAssessmentTargetOutput) String() string {
  5686  	return awsutil.Prettify(s)
  5687  }
  5688  
  5689  // GoString returns the string representation.
  5690  //
  5691  // API parameter values that are decorated as "sensitive" in the API will not
  5692  // be included in the string output. The member name will be present, but the
  5693  // value will be replaced with "sensitive".
  5694  func (s CreateAssessmentTargetOutput) GoString() string {
  5695  	return s.String()
  5696  }
  5697  
  5698  // SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
  5699  func (s *CreateAssessmentTargetOutput) SetAssessmentTargetArn(v string) *CreateAssessmentTargetOutput {
  5700  	s.AssessmentTargetArn = &v
  5701  	return s
  5702  }
  5703  
  5704  type CreateAssessmentTemplateInput struct {
  5705  	_ struct{} `type:"structure"`
  5706  
  5707  	// The ARN that specifies the assessment target for which you want to create
  5708  	// the assessment template.
  5709  	//
  5710  	// AssessmentTargetArn is a required field
  5711  	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
  5712  
  5713  	// The user-defined name that identifies the assessment template that you want
  5714  	// to create. You can create several assessment templates for an assessment
  5715  	// target. The names of the assessment templates that correspond to a particular
  5716  	// assessment target must be unique.
  5717  	//
  5718  	// AssessmentTemplateName is a required field
  5719  	AssessmentTemplateName *string `locationName:"assessmentTemplateName" min:"1" type:"string" required:"true"`
  5720  
  5721  	// The duration of the assessment run in seconds.
  5722  	//
  5723  	// DurationInSeconds is a required field
  5724  	DurationInSeconds *int64 `locationName:"durationInSeconds" min:"180" type:"integer" required:"true"`
  5725  
  5726  	// The ARNs that specify the rules packages that you want to attach to the assessment
  5727  	// template.
  5728  	//
  5729  	// RulesPackageArns is a required field
  5730  	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"`
  5731  
  5732  	// The user-defined attributes that are assigned to every finding that is generated
  5733  	// by the assessment run that uses this assessment template. An attribute is
  5734  	// a key and value pair (an Attribute object). Within an assessment template,
  5735  	// each key must be unique.
  5736  	UserAttributesForFindings []*Attribute `locationName:"userAttributesForFindings" type:"list"`
  5737  }
  5738  
  5739  // String returns the string representation.
  5740  //
  5741  // API parameter values that are decorated as "sensitive" in the API will not
  5742  // be included in the string output. The member name will be present, but the
  5743  // value will be replaced with "sensitive".
  5744  func (s CreateAssessmentTemplateInput) String() string {
  5745  	return awsutil.Prettify(s)
  5746  }
  5747  
  5748  // GoString returns the string representation.
  5749  //
  5750  // API parameter values that are decorated as "sensitive" in the API will not
  5751  // be included in the string output. The member name will be present, but the
  5752  // value will be replaced with "sensitive".
  5753  func (s CreateAssessmentTemplateInput) GoString() string {
  5754  	return s.String()
  5755  }
  5756  
  5757  // Validate inspects the fields of the type to determine if they are valid.
  5758  func (s *CreateAssessmentTemplateInput) Validate() error {
  5759  	invalidParams := request.ErrInvalidParams{Context: "CreateAssessmentTemplateInput"}
  5760  	if s.AssessmentTargetArn == nil {
  5761  		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn"))
  5762  	}
  5763  	if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 {
  5764  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1))
  5765  	}
  5766  	if s.AssessmentTemplateName == nil {
  5767  		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateName"))
  5768  	}
  5769  	if s.AssessmentTemplateName != nil && len(*s.AssessmentTemplateName) < 1 {
  5770  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateName", 1))
  5771  	}
  5772  	if s.DurationInSeconds == nil {
  5773  		invalidParams.Add(request.NewErrParamRequired("DurationInSeconds"))
  5774  	}
  5775  	if s.DurationInSeconds != nil && *s.DurationInSeconds < 180 {
  5776  		invalidParams.Add(request.NewErrParamMinValue("DurationInSeconds", 180))
  5777  	}
  5778  	if s.RulesPackageArns == nil {
  5779  		invalidParams.Add(request.NewErrParamRequired("RulesPackageArns"))
  5780  	}
  5781  	if s.UserAttributesForFindings != nil {
  5782  		for i, v := range s.UserAttributesForFindings {
  5783  			if v == nil {
  5784  				continue
  5785  			}
  5786  			if err := v.Validate(); err != nil {
  5787  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributesForFindings", i), err.(request.ErrInvalidParams))
  5788  			}
  5789  		}
  5790  	}
  5791  
  5792  	if invalidParams.Len() > 0 {
  5793  		return invalidParams
  5794  	}
  5795  	return nil
  5796  }
  5797  
  5798  // SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
  5799  func (s *CreateAssessmentTemplateInput) SetAssessmentTargetArn(v string) *CreateAssessmentTemplateInput {
  5800  	s.AssessmentTargetArn = &v
  5801  	return s
  5802  }
  5803  
  5804  // SetAssessmentTemplateName sets the AssessmentTemplateName field's value.
  5805  func (s *CreateAssessmentTemplateInput) SetAssessmentTemplateName(v string) *CreateAssessmentTemplateInput {
  5806  	s.AssessmentTemplateName = &v
  5807  	return s
  5808  }
  5809  
  5810  // SetDurationInSeconds sets the DurationInSeconds field's value.
  5811  func (s *CreateAssessmentTemplateInput) SetDurationInSeconds(v int64) *CreateAssessmentTemplateInput {
  5812  	s.DurationInSeconds = &v
  5813  	return s
  5814  }
  5815  
  5816  // SetRulesPackageArns sets the RulesPackageArns field's value.
  5817  func (s *CreateAssessmentTemplateInput) SetRulesPackageArns(v []*string) *CreateAssessmentTemplateInput {
  5818  	s.RulesPackageArns = v
  5819  	return s
  5820  }
  5821  
  5822  // SetUserAttributesForFindings sets the UserAttributesForFindings field's value.
  5823  func (s *CreateAssessmentTemplateInput) SetUserAttributesForFindings(v []*Attribute) *CreateAssessmentTemplateInput {
  5824  	s.UserAttributesForFindings = v
  5825  	return s
  5826  }
  5827  
  5828  type CreateAssessmentTemplateOutput struct {
  5829  	_ struct{} `type:"structure"`
  5830  
  5831  	// The ARN that specifies the assessment template that is created.
  5832  	//
  5833  	// AssessmentTemplateArn is a required field
  5834  	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
  5835  }
  5836  
  5837  // String returns the string representation.
  5838  //
  5839  // API parameter values that are decorated as "sensitive" in the API will not
  5840  // be included in the string output. The member name will be present, but the
  5841  // value will be replaced with "sensitive".
  5842  func (s CreateAssessmentTemplateOutput) String() string {
  5843  	return awsutil.Prettify(s)
  5844  }
  5845  
  5846  // GoString returns the string representation.
  5847  //
  5848  // API parameter values that are decorated as "sensitive" in the API will not
  5849  // be included in the string output. The member name will be present, but the
  5850  // value will be replaced with "sensitive".
  5851  func (s CreateAssessmentTemplateOutput) GoString() string {
  5852  	return s.String()
  5853  }
  5854  
  5855  // SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
  5856  func (s *CreateAssessmentTemplateOutput) SetAssessmentTemplateArn(v string) *CreateAssessmentTemplateOutput {
  5857  	s.AssessmentTemplateArn = &v
  5858  	return s
  5859  }
  5860  
  5861  type CreateExclusionsPreviewInput struct {
  5862  	_ struct{} `type:"structure"`
  5863  
  5864  	// The ARN that specifies the assessment template for which you want to create
  5865  	// an exclusions preview.
  5866  	//
  5867  	// AssessmentTemplateArn is a required field
  5868  	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
  5869  }
  5870  
  5871  // String returns the string representation.
  5872  //
  5873  // API parameter values that are decorated as "sensitive" in the API will not
  5874  // be included in the string output. The member name will be present, but the
  5875  // value will be replaced with "sensitive".
  5876  func (s CreateExclusionsPreviewInput) String() string {
  5877  	return awsutil.Prettify(s)
  5878  }
  5879  
  5880  // GoString returns the string representation.
  5881  //
  5882  // API parameter values that are decorated as "sensitive" in the API will not
  5883  // be included in the string output. The member name will be present, but the
  5884  // value will be replaced with "sensitive".
  5885  func (s CreateExclusionsPreviewInput) GoString() string {
  5886  	return s.String()
  5887  }
  5888  
  5889  // Validate inspects the fields of the type to determine if they are valid.
  5890  func (s *CreateExclusionsPreviewInput) Validate() error {
  5891  	invalidParams := request.ErrInvalidParams{Context: "CreateExclusionsPreviewInput"}
  5892  	if s.AssessmentTemplateArn == nil {
  5893  		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
  5894  	}
  5895  	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
  5896  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
  5897  	}
  5898  
  5899  	if invalidParams.Len() > 0 {
  5900  		return invalidParams
  5901  	}
  5902  	return nil
  5903  }
  5904  
  5905  // SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
  5906  func (s *CreateExclusionsPreviewInput) SetAssessmentTemplateArn(v string) *CreateExclusionsPreviewInput {
  5907  	s.AssessmentTemplateArn = &v
  5908  	return s
  5909  }
  5910  
  5911  type CreateExclusionsPreviewOutput struct {
  5912  	_ struct{} `type:"structure"`
  5913  
  5914  	// Specifies the unique identifier of the requested exclusions preview. You
  5915  	// can use the unique identifier to retrieve the exclusions preview when running
  5916  	// the GetExclusionsPreview API.
  5917  	//
  5918  	// PreviewToken is a required field
  5919  	PreviewToken *string `locationName:"previewToken" type:"string" required:"true"`
  5920  }
  5921  
  5922  // String returns the string representation.
  5923  //
  5924  // API parameter values that are decorated as "sensitive" in the API will not
  5925  // be included in the string output. The member name will be present, but the
  5926  // value will be replaced with "sensitive".
  5927  func (s CreateExclusionsPreviewOutput) String() string {
  5928  	return awsutil.Prettify(s)
  5929  }
  5930  
  5931  // GoString returns the string representation.
  5932  //
  5933  // API parameter values that are decorated as "sensitive" in the API will not
  5934  // be included in the string output. The member name will be present, but the
  5935  // value will be replaced with "sensitive".
  5936  func (s CreateExclusionsPreviewOutput) GoString() string {
  5937  	return s.String()
  5938  }
  5939  
  5940  // SetPreviewToken sets the PreviewToken field's value.
  5941  func (s *CreateExclusionsPreviewOutput) SetPreviewToken(v string) *CreateExclusionsPreviewOutput {
  5942  	s.PreviewToken = &v
  5943  	return s
  5944  }
  5945  
  5946  type CreateResourceGroupInput struct {
  5947  	_ struct{} `type:"structure"`
  5948  
  5949  	// A collection of keys and an array of possible values, '[{"key":"key1","values":["Value1","Value2"]},{"key":"Key2","values":["Value3"]}]'.
  5950  	//
  5951  	// For example,'[{"key":"Name","values":["TestEC2Instance"]}]'.
  5952  	//
  5953  	// ResourceGroupTags is a required field
  5954  	ResourceGroupTags []*ResourceGroupTag `locationName:"resourceGroupTags" min:"1" type:"list" required:"true"`
  5955  }
  5956  
  5957  // String returns the string representation.
  5958  //
  5959  // API parameter values that are decorated as "sensitive" in the API will not
  5960  // be included in the string output. The member name will be present, but the
  5961  // value will be replaced with "sensitive".
  5962  func (s CreateResourceGroupInput) String() string {
  5963  	return awsutil.Prettify(s)
  5964  }
  5965  
  5966  // GoString returns the string representation.
  5967  //
  5968  // API parameter values that are decorated as "sensitive" in the API will not
  5969  // be included in the string output. The member name will be present, but the
  5970  // value will be replaced with "sensitive".
  5971  func (s CreateResourceGroupInput) GoString() string {
  5972  	return s.String()
  5973  }
  5974  
  5975  // Validate inspects the fields of the type to determine if they are valid.
  5976  func (s *CreateResourceGroupInput) Validate() error {
  5977  	invalidParams := request.ErrInvalidParams{Context: "CreateResourceGroupInput"}
  5978  	if s.ResourceGroupTags == nil {
  5979  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupTags"))
  5980  	}
  5981  	if s.ResourceGroupTags != nil && len(s.ResourceGroupTags) < 1 {
  5982  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupTags", 1))
  5983  	}
  5984  	if s.ResourceGroupTags != nil {
  5985  		for i, v := range s.ResourceGroupTags {
  5986  			if v == nil {
  5987  				continue
  5988  			}
  5989  			if err := v.Validate(); err != nil {
  5990  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ResourceGroupTags", i), err.(request.ErrInvalidParams))
  5991  			}
  5992  		}
  5993  	}
  5994  
  5995  	if invalidParams.Len() > 0 {
  5996  		return invalidParams
  5997  	}
  5998  	return nil
  5999  }
  6000  
  6001  // SetResourceGroupTags sets the ResourceGroupTags field's value.
  6002  func (s *CreateResourceGroupInput) SetResourceGroupTags(v []*ResourceGroupTag) *CreateResourceGroupInput {
  6003  	s.ResourceGroupTags = v
  6004  	return s
  6005  }
  6006  
  6007  type CreateResourceGroupOutput struct {
  6008  	_ struct{} `type:"structure"`
  6009  
  6010  	// The ARN that specifies the resource group that is created.
  6011  	//
  6012  	// ResourceGroupArn is a required field
  6013  	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string" required:"true"`
  6014  }
  6015  
  6016  // String returns the string representation.
  6017  //
  6018  // API parameter values that are decorated as "sensitive" in the API will not
  6019  // be included in the string output. The member name will be present, but the
  6020  // value will be replaced with "sensitive".
  6021  func (s CreateResourceGroupOutput) String() string {
  6022  	return awsutil.Prettify(s)
  6023  }
  6024  
  6025  // GoString returns the string representation.
  6026  //
  6027  // API parameter values that are decorated as "sensitive" in the API will not
  6028  // be included in the string output. The member name will be present, but the
  6029  // value will be replaced with "sensitive".
  6030  func (s CreateResourceGroupOutput) GoString() string {
  6031  	return s.String()
  6032  }
  6033  
  6034  // SetResourceGroupArn sets the ResourceGroupArn field's value.
  6035  func (s *CreateResourceGroupOutput) SetResourceGroupArn(v string) *CreateResourceGroupOutput {
  6036  	s.ResourceGroupArn = &v
  6037  	return s
  6038  }
  6039  
  6040  type DeleteAssessmentRunInput struct {
  6041  	_ struct{} `type:"structure"`
  6042  
  6043  	// The ARN that specifies the assessment run that you want to delete.
  6044  	//
  6045  	// AssessmentRunArn is a required field
  6046  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
  6047  }
  6048  
  6049  // String returns the string representation.
  6050  //
  6051  // API parameter values that are decorated as "sensitive" in the API will not
  6052  // be included in the string output. The member name will be present, but the
  6053  // value will be replaced with "sensitive".
  6054  func (s DeleteAssessmentRunInput) String() string {
  6055  	return awsutil.Prettify(s)
  6056  }
  6057  
  6058  // GoString returns the string representation.
  6059  //
  6060  // API parameter values that are decorated as "sensitive" in the API will not
  6061  // be included in the string output. The member name will be present, but the
  6062  // value will be replaced with "sensitive".
  6063  func (s DeleteAssessmentRunInput) GoString() string {
  6064  	return s.String()
  6065  }
  6066  
  6067  // Validate inspects the fields of the type to determine if they are valid.
  6068  func (s *DeleteAssessmentRunInput) Validate() error {
  6069  	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentRunInput"}
  6070  	if s.AssessmentRunArn == nil {
  6071  		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
  6072  	}
  6073  	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
  6074  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
  6075  	}
  6076  
  6077  	if invalidParams.Len() > 0 {
  6078  		return invalidParams
  6079  	}
  6080  	return nil
  6081  }
  6082  
  6083  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
  6084  func (s *DeleteAssessmentRunInput) SetAssessmentRunArn(v string) *DeleteAssessmentRunInput {
  6085  	s.AssessmentRunArn = &v
  6086  	return s
  6087  }
  6088  
  6089  type DeleteAssessmentRunOutput struct {
  6090  	_ struct{} `type:"structure"`
  6091  }
  6092  
  6093  // String returns the string representation.
  6094  //
  6095  // API parameter values that are decorated as "sensitive" in the API will not
  6096  // be included in the string output. The member name will be present, but the
  6097  // value will be replaced with "sensitive".
  6098  func (s DeleteAssessmentRunOutput) String() string {
  6099  	return awsutil.Prettify(s)
  6100  }
  6101  
  6102  // GoString returns the string representation.
  6103  //
  6104  // API parameter values that are decorated as "sensitive" in the API will not
  6105  // be included in the string output. The member name will be present, but the
  6106  // value will be replaced with "sensitive".
  6107  func (s DeleteAssessmentRunOutput) GoString() string {
  6108  	return s.String()
  6109  }
  6110  
  6111  type DeleteAssessmentTargetInput struct {
  6112  	_ struct{} `type:"structure"`
  6113  
  6114  	// The ARN that specifies the assessment target that you want to delete.
  6115  	//
  6116  	// AssessmentTargetArn is a required field
  6117  	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
  6118  }
  6119  
  6120  // String returns the string representation.
  6121  //
  6122  // API parameter values that are decorated as "sensitive" in the API will not
  6123  // be included in the string output. The member name will be present, but the
  6124  // value will be replaced with "sensitive".
  6125  func (s DeleteAssessmentTargetInput) String() string {
  6126  	return awsutil.Prettify(s)
  6127  }
  6128  
  6129  // GoString returns the string representation.
  6130  //
  6131  // API parameter values that are decorated as "sensitive" in the API will not
  6132  // be included in the string output. The member name will be present, but the
  6133  // value will be replaced with "sensitive".
  6134  func (s DeleteAssessmentTargetInput) GoString() string {
  6135  	return s.String()
  6136  }
  6137  
  6138  // Validate inspects the fields of the type to determine if they are valid.
  6139  func (s *DeleteAssessmentTargetInput) Validate() error {
  6140  	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentTargetInput"}
  6141  	if s.AssessmentTargetArn == nil {
  6142  		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn"))
  6143  	}
  6144  	if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 {
  6145  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1))
  6146  	}
  6147  
  6148  	if invalidParams.Len() > 0 {
  6149  		return invalidParams
  6150  	}
  6151  	return nil
  6152  }
  6153  
  6154  // SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
  6155  func (s *DeleteAssessmentTargetInput) SetAssessmentTargetArn(v string) *DeleteAssessmentTargetInput {
  6156  	s.AssessmentTargetArn = &v
  6157  	return s
  6158  }
  6159  
  6160  type DeleteAssessmentTargetOutput struct {
  6161  	_ struct{} `type:"structure"`
  6162  }
  6163  
  6164  // String returns the string representation.
  6165  //
  6166  // API parameter values that are decorated as "sensitive" in the API will not
  6167  // be included in the string output. The member name will be present, but the
  6168  // value will be replaced with "sensitive".
  6169  func (s DeleteAssessmentTargetOutput) String() string {
  6170  	return awsutil.Prettify(s)
  6171  }
  6172  
  6173  // GoString returns the string representation.
  6174  //
  6175  // API parameter values that are decorated as "sensitive" in the API will not
  6176  // be included in the string output. The member name will be present, but the
  6177  // value will be replaced with "sensitive".
  6178  func (s DeleteAssessmentTargetOutput) GoString() string {
  6179  	return s.String()
  6180  }
  6181  
  6182  type DeleteAssessmentTemplateInput struct {
  6183  	_ struct{} `type:"structure"`
  6184  
  6185  	// The ARN that specifies the assessment template that you want to delete.
  6186  	//
  6187  	// AssessmentTemplateArn is a required field
  6188  	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
  6189  }
  6190  
  6191  // String returns the string representation.
  6192  //
  6193  // API parameter values that are decorated as "sensitive" in the API will not
  6194  // be included in the string output. The member name will be present, but the
  6195  // value will be replaced with "sensitive".
  6196  func (s DeleteAssessmentTemplateInput) String() string {
  6197  	return awsutil.Prettify(s)
  6198  }
  6199  
  6200  // GoString returns the string representation.
  6201  //
  6202  // API parameter values that are decorated as "sensitive" in the API will not
  6203  // be included in the string output. The member name will be present, but the
  6204  // value will be replaced with "sensitive".
  6205  func (s DeleteAssessmentTemplateInput) GoString() string {
  6206  	return s.String()
  6207  }
  6208  
  6209  // Validate inspects the fields of the type to determine if they are valid.
  6210  func (s *DeleteAssessmentTemplateInput) Validate() error {
  6211  	invalidParams := request.ErrInvalidParams{Context: "DeleteAssessmentTemplateInput"}
  6212  	if s.AssessmentTemplateArn == nil {
  6213  		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
  6214  	}
  6215  	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
  6216  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
  6217  	}
  6218  
  6219  	if invalidParams.Len() > 0 {
  6220  		return invalidParams
  6221  	}
  6222  	return nil
  6223  }
  6224  
  6225  // SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
  6226  func (s *DeleteAssessmentTemplateInput) SetAssessmentTemplateArn(v string) *DeleteAssessmentTemplateInput {
  6227  	s.AssessmentTemplateArn = &v
  6228  	return s
  6229  }
  6230  
  6231  type DeleteAssessmentTemplateOutput struct {
  6232  	_ struct{} `type:"structure"`
  6233  }
  6234  
  6235  // String returns the string representation.
  6236  //
  6237  // API parameter values that are decorated as "sensitive" in the API will not
  6238  // be included in the string output. The member name will be present, but the
  6239  // value will be replaced with "sensitive".
  6240  func (s DeleteAssessmentTemplateOutput) String() string {
  6241  	return awsutil.Prettify(s)
  6242  }
  6243  
  6244  // GoString returns the string representation.
  6245  //
  6246  // API parameter values that are decorated as "sensitive" in the API will not
  6247  // be included in the string output. The member name will be present, but the
  6248  // value will be replaced with "sensitive".
  6249  func (s DeleteAssessmentTemplateOutput) GoString() string {
  6250  	return s.String()
  6251  }
  6252  
  6253  type DescribeAssessmentRunsInput struct {
  6254  	_ struct{} `type:"structure"`
  6255  
  6256  	// The ARN that specifies the assessment run that you want to describe.
  6257  	//
  6258  	// AssessmentRunArns is a required field
  6259  	AssessmentRunArns []*string `locationName:"assessmentRunArns" min:"1" type:"list" required:"true"`
  6260  }
  6261  
  6262  // String returns the string representation.
  6263  //
  6264  // API parameter values that are decorated as "sensitive" in the API will not
  6265  // be included in the string output. The member name will be present, but the
  6266  // value will be replaced with "sensitive".
  6267  func (s DescribeAssessmentRunsInput) String() string {
  6268  	return awsutil.Prettify(s)
  6269  }
  6270  
  6271  // GoString returns the string representation.
  6272  //
  6273  // API parameter values that are decorated as "sensitive" in the API will not
  6274  // be included in the string output. The member name will be present, but the
  6275  // value will be replaced with "sensitive".
  6276  func (s DescribeAssessmentRunsInput) GoString() string {
  6277  	return s.String()
  6278  }
  6279  
  6280  // Validate inspects the fields of the type to determine if they are valid.
  6281  func (s *DescribeAssessmentRunsInput) Validate() error {
  6282  	invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentRunsInput"}
  6283  	if s.AssessmentRunArns == nil {
  6284  		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArns"))
  6285  	}
  6286  	if s.AssessmentRunArns != nil && len(s.AssessmentRunArns) < 1 {
  6287  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArns", 1))
  6288  	}
  6289  
  6290  	if invalidParams.Len() > 0 {
  6291  		return invalidParams
  6292  	}
  6293  	return nil
  6294  }
  6295  
  6296  // SetAssessmentRunArns sets the AssessmentRunArns field's value.
  6297  func (s *DescribeAssessmentRunsInput) SetAssessmentRunArns(v []*string) *DescribeAssessmentRunsInput {
  6298  	s.AssessmentRunArns = v
  6299  	return s
  6300  }
  6301  
  6302  type DescribeAssessmentRunsOutput struct {
  6303  	_ struct{} `type:"structure"`
  6304  
  6305  	// Information about the assessment run.
  6306  	//
  6307  	// AssessmentRuns is a required field
  6308  	AssessmentRuns []*AssessmentRun `locationName:"assessmentRuns" type:"list" required:"true"`
  6309  
  6310  	// Assessment run details that cannot be described. An error code is provided
  6311  	// for each failed item.
  6312  	//
  6313  	// FailedItems is a required field
  6314  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  6315  }
  6316  
  6317  // String returns the string representation.
  6318  //
  6319  // API parameter values that are decorated as "sensitive" in the API will not
  6320  // be included in the string output. The member name will be present, but the
  6321  // value will be replaced with "sensitive".
  6322  func (s DescribeAssessmentRunsOutput) String() string {
  6323  	return awsutil.Prettify(s)
  6324  }
  6325  
  6326  // GoString returns the string representation.
  6327  //
  6328  // API parameter values that are decorated as "sensitive" in the API will not
  6329  // be included in the string output. The member name will be present, but the
  6330  // value will be replaced with "sensitive".
  6331  func (s DescribeAssessmentRunsOutput) GoString() string {
  6332  	return s.String()
  6333  }
  6334  
  6335  // SetAssessmentRuns sets the AssessmentRuns field's value.
  6336  func (s *DescribeAssessmentRunsOutput) SetAssessmentRuns(v []*AssessmentRun) *DescribeAssessmentRunsOutput {
  6337  	s.AssessmentRuns = v
  6338  	return s
  6339  }
  6340  
  6341  // SetFailedItems sets the FailedItems field's value.
  6342  func (s *DescribeAssessmentRunsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeAssessmentRunsOutput {
  6343  	s.FailedItems = v
  6344  	return s
  6345  }
  6346  
  6347  type DescribeAssessmentTargetsInput struct {
  6348  	_ struct{} `type:"structure"`
  6349  
  6350  	// The ARNs that specifies the assessment targets that you want to describe.
  6351  	//
  6352  	// AssessmentTargetArns is a required field
  6353  	AssessmentTargetArns []*string `locationName:"assessmentTargetArns" min:"1" type:"list" required:"true"`
  6354  }
  6355  
  6356  // String returns the string representation.
  6357  //
  6358  // API parameter values that are decorated as "sensitive" in the API will not
  6359  // be included in the string output. The member name will be present, but the
  6360  // value will be replaced with "sensitive".
  6361  func (s DescribeAssessmentTargetsInput) String() string {
  6362  	return awsutil.Prettify(s)
  6363  }
  6364  
  6365  // GoString returns the string representation.
  6366  //
  6367  // API parameter values that are decorated as "sensitive" in the API will not
  6368  // be included in the string output. The member name will be present, but the
  6369  // value will be replaced with "sensitive".
  6370  func (s DescribeAssessmentTargetsInput) GoString() string {
  6371  	return s.String()
  6372  }
  6373  
  6374  // Validate inspects the fields of the type to determine if they are valid.
  6375  func (s *DescribeAssessmentTargetsInput) Validate() error {
  6376  	invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentTargetsInput"}
  6377  	if s.AssessmentTargetArns == nil {
  6378  		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArns"))
  6379  	}
  6380  	if s.AssessmentTargetArns != nil && len(s.AssessmentTargetArns) < 1 {
  6381  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArns", 1))
  6382  	}
  6383  
  6384  	if invalidParams.Len() > 0 {
  6385  		return invalidParams
  6386  	}
  6387  	return nil
  6388  }
  6389  
  6390  // SetAssessmentTargetArns sets the AssessmentTargetArns field's value.
  6391  func (s *DescribeAssessmentTargetsInput) SetAssessmentTargetArns(v []*string) *DescribeAssessmentTargetsInput {
  6392  	s.AssessmentTargetArns = v
  6393  	return s
  6394  }
  6395  
  6396  type DescribeAssessmentTargetsOutput struct {
  6397  	_ struct{} `type:"structure"`
  6398  
  6399  	// Information about the assessment targets.
  6400  	//
  6401  	// AssessmentTargets is a required field
  6402  	AssessmentTargets []*AssessmentTarget `locationName:"assessmentTargets" type:"list" required:"true"`
  6403  
  6404  	// Assessment target details that cannot be described. An error code is provided
  6405  	// for each failed item.
  6406  	//
  6407  	// FailedItems is a required field
  6408  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  6409  }
  6410  
  6411  // String returns the string representation.
  6412  //
  6413  // API parameter values that are decorated as "sensitive" in the API will not
  6414  // be included in the string output. The member name will be present, but the
  6415  // value will be replaced with "sensitive".
  6416  func (s DescribeAssessmentTargetsOutput) String() string {
  6417  	return awsutil.Prettify(s)
  6418  }
  6419  
  6420  // GoString returns the string representation.
  6421  //
  6422  // API parameter values that are decorated as "sensitive" in the API will not
  6423  // be included in the string output. The member name will be present, but the
  6424  // value will be replaced with "sensitive".
  6425  func (s DescribeAssessmentTargetsOutput) GoString() string {
  6426  	return s.String()
  6427  }
  6428  
  6429  // SetAssessmentTargets sets the AssessmentTargets field's value.
  6430  func (s *DescribeAssessmentTargetsOutput) SetAssessmentTargets(v []*AssessmentTarget) *DescribeAssessmentTargetsOutput {
  6431  	s.AssessmentTargets = v
  6432  	return s
  6433  }
  6434  
  6435  // SetFailedItems sets the FailedItems field's value.
  6436  func (s *DescribeAssessmentTargetsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeAssessmentTargetsOutput {
  6437  	s.FailedItems = v
  6438  	return s
  6439  }
  6440  
  6441  type DescribeAssessmentTemplatesInput struct {
  6442  	_ struct{} `type:"structure"`
  6443  
  6444  	// AssessmentTemplateArns is a required field
  6445  	AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" min:"1" type:"list" required:"true"`
  6446  }
  6447  
  6448  // String returns the string representation.
  6449  //
  6450  // API parameter values that are decorated as "sensitive" in the API will not
  6451  // be included in the string output. The member name will be present, but the
  6452  // value will be replaced with "sensitive".
  6453  func (s DescribeAssessmentTemplatesInput) String() string {
  6454  	return awsutil.Prettify(s)
  6455  }
  6456  
  6457  // GoString returns the string representation.
  6458  //
  6459  // API parameter values that are decorated as "sensitive" in the API will not
  6460  // be included in the string output. The member name will be present, but the
  6461  // value will be replaced with "sensitive".
  6462  func (s DescribeAssessmentTemplatesInput) GoString() string {
  6463  	return s.String()
  6464  }
  6465  
  6466  // Validate inspects the fields of the type to determine if they are valid.
  6467  func (s *DescribeAssessmentTemplatesInput) Validate() error {
  6468  	invalidParams := request.ErrInvalidParams{Context: "DescribeAssessmentTemplatesInput"}
  6469  	if s.AssessmentTemplateArns == nil {
  6470  		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArns"))
  6471  	}
  6472  	if s.AssessmentTemplateArns != nil && len(s.AssessmentTemplateArns) < 1 {
  6473  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArns", 1))
  6474  	}
  6475  
  6476  	if invalidParams.Len() > 0 {
  6477  		return invalidParams
  6478  	}
  6479  	return nil
  6480  }
  6481  
  6482  // SetAssessmentTemplateArns sets the AssessmentTemplateArns field's value.
  6483  func (s *DescribeAssessmentTemplatesInput) SetAssessmentTemplateArns(v []*string) *DescribeAssessmentTemplatesInput {
  6484  	s.AssessmentTemplateArns = v
  6485  	return s
  6486  }
  6487  
  6488  type DescribeAssessmentTemplatesOutput struct {
  6489  	_ struct{} `type:"structure"`
  6490  
  6491  	// Information about the assessment templates.
  6492  	//
  6493  	// AssessmentTemplates is a required field
  6494  	AssessmentTemplates []*AssessmentTemplate `locationName:"assessmentTemplates" type:"list" required:"true"`
  6495  
  6496  	// Assessment template details that cannot be described. An error code is provided
  6497  	// for each failed item.
  6498  	//
  6499  	// FailedItems is a required field
  6500  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  6501  }
  6502  
  6503  // String returns the string representation.
  6504  //
  6505  // API parameter values that are decorated as "sensitive" in the API will not
  6506  // be included in the string output. The member name will be present, but the
  6507  // value will be replaced with "sensitive".
  6508  func (s DescribeAssessmentTemplatesOutput) String() string {
  6509  	return awsutil.Prettify(s)
  6510  }
  6511  
  6512  // GoString returns the string representation.
  6513  //
  6514  // API parameter values that are decorated as "sensitive" in the API will not
  6515  // be included in the string output. The member name will be present, but the
  6516  // value will be replaced with "sensitive".
  6517  func (s DescribeAssessmentTemplatesOutput) GoString() string {
  6518  	return s.String()
  6519  }
  6520  
  6521  // SetAssessmentTemplates sets the AssessmentTemplates field's value.
  6522  func (s *DescribeAssessmentTemplatesOutput) SetAssessmentTemplates(v []*AssessmentTemplate) *DescribeAssessmentTemplatesOutput {
  6523  	s.AssessmentTemplates = v
  6524  	return s
  6525  }
  6526  
  6527  // SetFailedItems sets the FailedItems field's value.
  6528  func (s *DescribeAssessmentTemplatesOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeAssessmentTemplatesOutput {
  6529  	s.FailedItems = v
  6530  	return s
  6531  }
  6532  
  6533  type DescribeCrossAccountAccessRoleInput struct {
  6534  	_ struct{} `type:"structure"`
  6535  }
  6536  
  6537  // String returns the string representation.
  6538  //
  6539  // API parameter values that are decorated as "sensitive" in the API will not
  6540  // be included in the string output. The member name will be present, but the
  6541  // value will be replaced with "sensitive".
  6542  func (s DescribeCrossAccountAccessRoleInput) String() string {
  6543  	return awsutil.Prettify(s)
  6544  }
  6545  
  6546  // GoString returns the string representation.
  6547  //
  6548  // API parameter values that are decorated as "sensitive" in the API will not
  6549  // be included in the string output. The member name will be present, but the
  6550  // value will be replaced with "sensitive".
  6551  func (s DescribeCrossAccountAccessRoleInput) GoString() string {
  6552  	return s.String()
  6553  }
  6554  
  6555  type DescribeCrossAccountAccessRoleOutput struct {
  6556  	_ struct{} `type:"structure"`
  6557  
  6558  	// The date when the cross-account access role was registered.
  6559  	//
  6560  	// RegisteredAt is a required field
  6561  	RegisteredAt *time.Time `locationName:"registeredAt" type:"timestamp" required:"true"`
  6562  
  6563  	// The ARN that specifies the IAM role that Amazon Inspector uses to access
  6564  	// your AWS account.
  6565  	//
  6566  	// RoleArn is a required field
  6567  	RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"`
  6568  
  6569  	// A Boolean value that specifies whether the IAM role has the necessary policies
  6570  	// attached to enable Amazon Inspector to access your AWS account.
  6571  	//
  6572  	// Valid is a required field
  6573  	Valid *bool `locationName:"valid" type:"boolean" required:"true"`
  6574  }
  6575  
  6576  // String returns the string representation.
  6577  //
  6578  // API parameter values that are decorated as "sensitive" in the API will not
  6579  // be included in the string output. The member name will be present, but the
  6580  // value will be replaced with "sensitive".
  6581  func (s DescribeCrossAccountAccessRoleOutput) String() string {
  6582  	return awsutil.Prettify(s)
  6583  }
  6584  
  6585  // GoString returns the string representation.
  6586  //
  6587  // API parameter values that are decorated as "sensitive" in the API will not
  6588  // be included in the string output. The member name will be present, but the
  6589  // value will be replaced with "sensitive".
  6590  func (s DescribeCrossAccountAccessRoleOutput) GoString() string {
  6591  	return s.String()
  6592  }
  6593  
  6594  // SetRegisteredAt sets the RegisteredAt field's value.
  6595  func (s *DescribeCrossAccountAccessRoleOutput) SetRegisteredAt(v time.Time) *DescribeCrossAccountAccessRoleOutput {
  6596  	s.RegisteredAt = &v
  6597  	return s
  6598  }
  6599  
  6600  // SetRoleArn sets the RoleArn field's value.
  6601  func (s *DescribeCrossAccountAccessRoleOutput) SetRoleArn(v string) *DescribeCrossAccountAccessRoleOutput {
  6602  	s.RoleArn = &v
  6603  	return s
  6604  }
  6605  
  6606  // SetValid sets the Valid field's value.
  6607  func (s *DescribeCrossAccountAccessRoleOutput) SetValid(v bool) *DescribeCrossAccountAccessRoleOutput {
  6608  	s.Valid = &v
  6609  	return s
  6610  }
  6611  
  6612  type DescribeExclusionsInput struct {
  6613  	_ struct{} `type:"structure"`
  6614  
  6615  	// The list of ARNs that specify the exclusions that you want to describe.
  6616  	//
  6617  	// ExclusionArns is a required field
  6618  	ExclusionArns []*string `locationName:"exclusionArns" min:"1" type:"list" required:"true"`
  6619  
  6620  	// The locale into which you want to translate the exclusion's title, description,
  6621  	// and recommendation.
  6622  	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
  6623  }
  6624  
  6625  // String returns the string representation.
  6626  //
  6627  // API parameter values that are decorated as "sensitive" in the API will not
  6628  // be included in the string output. The member name will be present, but the
  6629  // value will be replaced with "sensitive".
  6630  func (s DescribeExclusionsInput) String() string {
  6631  	return awsutil.Prettify(s)
  6632  }
  6633  
  6634  // GoString returns the string representation.
  6635  //
  6636  // API parameter values that are decorated as "sensitive" in the API will not
  6637  // be included in the string output. The member name will be present, but the
  6638  // value will be replaced with "sensitive".
  6639  func (s DescribeExclusionsInput) GoString() string {
  6640  	return s.String()
  6641  }
  6642  
  6643  // Validate inspects the fields of the type to determine if they are valid.
  6644  func (s *DescribeExclusionsInput) Validate() error {
  6645  	invalidParams := request.ErrInvalidParams{Context: "DescribeExclusionsInput"}
  6646  	if s.ExclusionArns == nil {
  6647  		invalidParams.Add(request.NewErrParamRequired("ExclusionArns"))
  6648  	}
  6649  	if s.ExclusionArns != nil && len(s.ExclusionArns) < 1 {
  6650  		invalidParams.Add(request.NewErrParamMinLen("ExclusionArns", 1))
  6651  	}
  6652  
  6653  	if invalidParams.Len() > 0 {
  6654  		return invalidParams
  6655  	}
  6656  	return nil
  6657  }
  6658  
  6659  // SetExclusionArns sets the ExclusionArns field's value.
  6660  func (s *DescribeExclusionsInput) SetExclusionArns(v []*string) *DescribeExclusionsInput {
  6661  	s.ExclusionArns = v
  6662  	return s
  6663  }
  6664  
  6665  // SetLocale sets the Locale field's value.
  6666  func (s *DescribeExclusionsInput) SetLocale(v string) *DescribeExclusionsInput {
  6667  	s.Locale = &v
  6668  	return s
  6669  }
  6670  
  6671  type DescribeExclusionsOutput struct {
  6672  	_ struct{} `type:"structure"`
  6673  
  6674  	// Information about the exclusions.
  6675  	//
  6676  	// Exclusions is a required field
  6677  	Exclusions map[string]*Exclusion `locationName:"exclusions" min:"1" type:"map" required:"true"`
  6678  
  6679  	// Exclusion details that cannot be described. An error code is provided for
  6680  	// each failed item.
  6681  	//
  6682  	// FailedItems is a required field
  6683  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  6684  }
  6685  
  6686  // String returns the string representation.
  6687  //
  6688  // API parameter values that are decorated as "sensitive" in the API will not
  6689  // be included in the string output. The member name will be present, but the
  6690  // value will be replaced with "sensitive".
  6691  func (s DescribeExclusionsOutput) String() string {
  6692  	return awsutil.Prettify(s)
  6693  }
  6694  
  6695  // GoString returns the string representation.
  6696  //
  6697  // API parameter values that are decorated as "sensitive" in the API will not
  6698  // be included in the string output. The member name will be present, but the
  6699  // value will be replaced with "sensitive".
  6700  func (s DescribeExclusionsOutput) GoString() string {
  6701  	return s.String()
  6702  }
  6703  
  6704  // SetExclusions sets the Exclusions field's value.
  6705  func (s *DescribeExclusionsOutput) SetExclusions(v map[string]*Exclusion) *DescribeExclusionsOutput {
  6706  	s.Exclusions = v
  6707  	return s
  6708  }
  6709  
  6710  // SetFailedItems sets the FailedItems field's value.
  6711  func (s *DescribeExclusionsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeExclusionsOutput {
  6712  	s.FailedItems = v
  6713  	return s
  6714  }
  6715  
  6716  type DescribeFindingsInput struct {
  6717  	_ struct{} `type:"structure"`
  6718  
  6719  	// The ARN that specifies the finding that you want to describe.
  6720  	//
  6721  	// FindingArns is a required field
  6722  	FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"`
  6723  
  6724  	// The locale into which you want to translate a finding description, recommendation,
  6725  	// and the short description that identifies the finding.
  6726  	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
  6727  }
  6728  
  6729  // String returns the string representation.
  6730  //
  6731  // API parameter values that are decorated as "sensitive" in the API will not
  6732  // be included in the string output. The member name will be present, but the
  6733  // value will be replaced with "sensitive".
  6734  func (s DescribeFindingsInput) String() string {
  6735  	return awsutil.Prettify(s)
  6736  }
  6737  
  6738  // GoString returns the string representation.
  6739  //
  6740  // API parameter values that are decorated as "sensitive" in the API will not
  6741  // be included in the string output. The member name will be present, but the
  6742  // value will be replaced with "sensitive".
  6743  func (s DescribeFindingsInput) GoString() string {
  6744  	return s.String()
  6745  }
  6746  
  6747  // Validate inspects the fields of the type to determine if they are valid.
  6748  func (s *DescribeFindingsInput) Validate() error {
  6749  	invalidParams := request.ErrInvalidParams{Context: "DescribeFindingsInput"}
  6750  	if s.FindingArns == nil {
  6751  		invalidParams.Add(request.NewErrParamRequired("FindingArns"))
  6752  	}
  6753  	if s.FindingArns != nil && len(s.FindingArns) < 1 {
  6754  		invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1))
  6755  	}
  6756  
  6757  	if invalidParams.Len() > 0 {
  6758  		return invalidParams
  6759  	}
  6760  	return nil
  6761  }
  6762  
  6763  // SetFindingArns sets the FindingArns field's value.
  6764  func (s *DescribeFindingsInput) SetFindingArns(v []*string) *DescribeFindingsInput {
  6765  	s.FindingArns = v
  6766  	return s
  6767  }
  6768  
  6769  // SetLocale sets the Locale field's value.
  6770  func (s *DescribeFindingsInput) SetLocale(v string) *DescribeFindingsInput {
  6771  	s.Locale = &v
  6772  	return s
  6773  }
  6774  
  6775  type DescribeFindingsOutput struct {
  6776  	_ struct{} `type:"structure"`
  6777  
  6778  	// Finding details that cannot be described. An error code is provided for each
  6779  	// failed item.
  6780  	//
  6781  	// FailedItems is a required field
  6782  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  6783  
  6784  	// Information about the finding.
  6785  	//
  6786  	// Findings is a required field
  6787  	Findings []*Finding `locationName:"findings" type:"list" required:"true"`
  6788  }
  6789  
  6790  // String returns the string representation.
  6791  //
  6792  // API parameter values that are decorated as "sensitive" in the API will not
  6793  // be included in the string output. The member name will be present, but the
  6794  // value will be replaced with "sensitive".
  6795  func (s DescribeFindingsOutput) String() string {
  6796  	return awsutil.Prettify(s)
  6797  }
  6798  
  6799  // GoString returns the string representation.
  6800  //
  6801  // API parameter values that are decorated as "sensitive" in the API will not
  6802  // be included in the string output. The member name will be present, but the
  6803  // value will be replaced with "sensitive".
  6804  func (s DescribeFindingsOutput) GoString() string {
  6805  	return s.String()
  6806  }
  6807  
  6808  // SetFailedItems sets the FailedItems field's value.
  6809  func (s *DescribeFindingsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeFindingsOutput {
  6810  	s.FailedItems = v
  6811  	return s
  6812  }
  6813  
  6814  // SetFindings sets the Findings field's value.
  6815  func (s *DescribeFindingsOutput) SetFindings(v []*Finding) *DescribeFindingsOutput {
  6816  	s.Findings = v
  6817  	return s
  6818  }
  6819  
  6820  type DescribeResourceGroupsInput struct {
  6821  	_ struct{} `type:"structure"`
  6822  
  6823  	// The ARN that specifies the resource group that you want to describe.
  6824  	//
  6825  	// ResourceGroupArns is a required field
  6826  	ResourceGroupArns []*string `locationName:"resourceGroupArns" min:"1" type:"list" required:"true"`
  6827  }
  6828  
  6829  // String returns the string representation.
  6830  //
  6831  // API parameter values that are decorated as "sensitive" in the API will not
  6832  // be included in the string output. The member name will be present, but the
  6833  // value will be replaced with "sensitive".
  6834  func (s DescribeResourceGroupsInput) String() string {
  6835  	return awsutil.Prettify(s)
  6836  }
  6837  
  6838  // GoString returns the string representation.
  6839  //
  6840  // API parameter values that are decorated as "sensitive" in the API will not
  6841  // be included in the string output. The member name will be present, but the
  6842  // value will be replaced with "sensitive".
  6843  func (s DescribeResourceGroupsInput) GoString() string {
  6844  	return s.String()
  6845  }
  6846  
  6847  // Validate inspects the fields of the type to determine if they are valid.
  6848  func (s *DescribeResourceGroupsInput) Validate() error {
  6849  	invalidParams := request.ErrInvalidParams{Context: "DescribeResourceGroupsInput"}
  6850  	if s.ResourceGroupArns == nil {
  6851  		invalidParams.Add(request.NewErrParamRequired("ResourceGroupArns"))
  6852  	}
  6853  	if s.ResourceGroupArns != nil && len(s.ResourceGroupArns) < 1 {
  6854  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArns", 1))
  6855  	}
  6856  
  6857  	if invalidParams.Len() > 0 {
  6858  		return invalidParams
  6859  	}
  6860  	return nil
  6861  }
  6862  
  6863  // SetResourceGroupArns sets the ResourceGroupArns field's value.
  6864  func (s *DescribeResourceGroupsInput) SetResourceGroupArns(v []*string) *DescribeResourceGroupsInput {
  6865  	s.ResourceGroupArns = v
  6866  	return s
  6867  }
  6868  
  6869  type DescribeResourceGroupsOutput struct {
  6870  	_ struct{} `type:"structure"`
  6871  
  6872  	// Resource group details that cannot be described. An error code is provided
  6873  	// for each failed item.
  6874  	//
  6875  	// FailedItems is a required field
  6876  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  6877  
  6878  	// Information about a resource group.
  6879  	//
  6880  	// ResourceGroups is a required field
  6881  	ResourceGroups []*ResourceGroup `locationName:"resourceGroups" type:"list" required:"true"`
  6882  }
  6883  
  6884  // String returns the string representation.
  6885  //
  6886  // API parameter values that are decorated as "sensitive" in the API will not
  6887  // be included in the string output. The member name will be present, but the
  6888  // value will be replaced with "sensitive".
  6889  func (s DescribeResourceGroupsOutput) String() string {
  6890  	return awsutil.Prettify(s)
  6891  }
  6892  
  6893  // GoString returns the string representation.
  6894  //
  6895  // API parameter values that are decorated as "sensitive" in the API will not
  6896  // be included in the string output. The member name will be present, but the
  6897  // value will be replaced with "sensitive".
  6898  func (s DescribeResourceGroupsOutput) GoString() string {
  6899  	return s.String()
  6900  }
  6901  
  6902  // SetFailedItems sets the FailedItems field's value.
  6903  func (s *DescribeResourceGroupsOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeResourceGroupsOutput {
  6904  	s.FailedItems = v
  6905  	return s
  6906  }
  6907  
  6908  // SetResourceGroups sets the ResourceGroups field's value.
  6909  func (s *DescribeResourceGroupsOutput) SetResourceGroups(v []*ResourceGroup) *DescribeResourceGroupsOutput {
  6910  	s.ResourceGroups = v
  6911  	return s
  6912  }
  6913  
  6914  type DescribeRulesPackagesInput struct {
  6915  	_ struct{} `type:"structure"`
  6916  
  6917  	// The locale that you want to translate a rules package description into.
  6918  	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
  6919  
  6920  	// The ARN that specifies the rules package that you want to describe.
  6921  	//
  6922  	// RulesPackageArns is a required field
  6923  	RulesPackageArns []*string `locationName:"rulesPackageArns" min:"1" type:"list" required:"true"`
  6924  }
  6925  
  6926  // String returns the string representation.
  6927  //
  6928  // API parameter values that are decorated as "sensitive" in the API will not
  6929  // be included in the string output. The member name will be present, but the
  6930  // value will be replaced with "sensitive".
  6931  func (s DescribeRulesPackagesInput) String() string {
  6932  	return awsutil.Prettify(s)
  6933  }
  6934  
  6935  // GoString returns the string representation.
  6936  //
  6937  // API parameter values that are decorated as "sensitive" in the API will not
  6938  // be included in the string output. The member name will be present, but the
  6939  // value will be replaced with "sensitive".
  6940  func (s DescribeRulesPackagesInput) GoString() string {
  6941  	return s.String()
  6942  }
  6943  
  6944  // Validate inspects the fields of the type to determine if they are valid.
  6945  func (s *DescribeRulesPackagesInput) Validate() error {
  6946  	invalidParams := request.ErrInvalidParams{Context: "DescribeRulesPackagesInput"}
  6947  	if s.RulesPackageArns == nil {
  6948  		invalidParams.Add(request.NewErrParamRequired("RulesPackageArns"))
  6949  	}
  6950  	if s.RulesPackageArns != nil && len(s.RulesPackageArns) < 1 {
  6951  		invalidParams.Add(request.NewErrParamMinLen("RulesPackageArns", 1))
  6952  	}
  6953  
  6954  	if invalidParams.Len() > 0 {
  6955  		return invalidParams
  6956  	}
  6957  	return nil
  6958  }
  6959  
  6960  // SetLocale sets the Locale field's value.
  6961  func (s *DescribeRulesPackagesInput) SetLocale(v string) *DescribeRulesPackagesInput {
  6962  	s.Locale = &v
  6963  	return s
  6964  }
  6965  
  6966  // SetRulesPackageArns sets the RulesPackageArns field's value.
  6967  func (s *DescribeRulesPackagesInput) SetRulesPackageArns(v []*string) *DescribeRulesPackagesInput {
  6968  	s.RulesPackageArns = v
  6969  	return s
  6970  }
  6971  
  6972  type DescribeRulesPackagesOutput struct {
  6973  	_ struct{} `type:"structure"`
  6974  
  6975  	// Rules package details that cannot be described. An error code is provided
  6976  	// for each failed item.
  6977  	//
  6978  	// FailedItems is a required field
  6979  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  6980  
  6981  	// Information about the rules package.
  6982  	//
  6983  	// RulesPackages is a required field
  6984  	RulesPackages []*RulesPackage `locationName:"rulesPackages" type:"list" required:"true"`
  6985  }
  6986  
  6987  // String returns the string representation.
  6988  //
  6989  // API parameter values that are decorated as "sensitive" in the API will not
  6990  // be included in the string output. The member name will be present, but the
  6991  // value will be replaced with "sensitive".
  6992  func (s DescribeRulesPackagesOutput) String() string {
  6993  	return awsutil.Prettify(s)
  6994  }
  6995  
  6996  // GoString returns the string representation.
  6997  //
  6998  // API parameter values that are decorated as "sensitive" in the API will not
  6999  // be included in the string output. The member name will be present, but the
  7000  // value will be replaced with "sensitive".
  7001  func (s DescribeRulesPackagesOutput) GoString() string {
  7002  	return s.String()
  7003  }
  7004  
  7005  // SetFailedItems sets the FailedItems field's value.
  7006  func (s *DescribeRulesPackagesOutput) SetFailedItems(v map[string]*FailedItemDetails) *DescribeRulesPackagesOutput {
  7007  	s.FailedItems = v
  7008  	return s
  7009  }
  7010  
  7011  // SetRulesPackages sets the RulesPackages field's value.
  7012  func (s *DescribeRulesPackagesOutput) SetRulesPackages(v []*RulesPackage) *DescribeRulesPackagesOutput {
  7013  	s.RulesPackages = v
  7014  	return s
  7015  }
  7016  
  7017  // This data type is used in the AssessmentTemplateFilter data type.
  7018  type DurationRange struct {
  7019  	_ struct{} `type:"structure"`
  7020  
  7021  	// The maximum value of the duration range. Must be less than or equal to 604800
  7022  	// seconds (1 week).
  7023  	MaxSeconds *int64 `locationName:"maxSeconds" min:"180" type:"integer"`
  7024  
  7025  	// The minimum value of the duration range. Must be greater than zero.
  7026  	MinSeconds *int64 `locationName:"minSeconds" min:"180" type:"integer"`
  7027  }
  7028  
  7029  // String returns the string representation.
  7030  //
  7031  // API parameter values that are decorated as "sensitive" in the API will not
  7032  // be included in the string output. The member name will be present, but the
  7033  // value will be replaced with "sensitive".
  7034  func (s DurationRange) String() string {
  7035  	return awsutil.Prettify(s)
  7036  }
  7037  
  7038  // GoString returns the string representation.
  7039  //
  7040  // API parameter values that are decorated as "sensitive" in the API will not
  7041  // be included in the string output. The member name will be present, but the
  7042  // value will be replaced with "sensitive".
  7043  func (s DurationRange) GoString() string {
  7044  	return s.String()
  7045  }
  7046  
  7047  // Validate inspects the fields of the type to determine if they are valid.
  7048  func (s *DurationRange) Validate() error {
  7049  	invalidParams := request.ErrInvalidParams{Context: "DurationRange"}
  7050  	if s.MaxSeconds != nil && *s.MaxSeconds < 180 {
  7051  		invalidParams.Add(request.NewErrParamMinValue("MaxSeconds", 180))
  7052  	}
  7053  	if s.MinSeconds != nil && *s.MinSeconds < 180 {
  7054  		invalidParams.Add(request.NewErrParamMinValue("MinSeconds", 180))
  7055  	}
  7056  
  7057  	if invalidParams.Len() > 0 {
  7058  		return invalidParams
  7059  	}
  7060  	return nil
  7061  }
  7062  
  7063  // SetMaxSeconds sets the MaxSeconds field's value.
  7064  func (s *DurationRange) SetMaxSeconds(v int64) *DurationRange {
  7065  	s.MaxSeconds = &v
  7066  	return s
  7067  }
  7068  
  7069  // SetMinSeconds sets the MinSeconds field's value.
  7070  func (s *DurationRange) SetMinSeconds(v int64) *DurationRange {
  7071  	s.MinSeconds = &v
  7072  	return s
  7073  }
  7074  
  7075  // This data type is used in the Subscription data type.
  7076  type EventSubscription struct {
  7077  	_ struct{} `type:"structure"`
  7078  
  7079  	// The event for which Amazon Simple Notification Service (SNS) notifications
  7080  	// are sent.
  7081  	//
  7082  	// Event is a required field
  7083  	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
  7084  
  7085  	// The time at which SubscribeToEvent is called.
  7086  	//
  7087  	// SubscribedAt is a required field
  7088  	SubscribedAt *time.Time `locationName:"subscribedAt" type:"timestamp" required:"true"`
  7089  }
  7090  
  7091  // String returns the string representation.
  7092  //
  7093  // API parameter values that are decorated as "sensitive" in the API will not
  7094  // be included in the string output. The member name will be present, but the
  7095  // value will be replaced with "sensitive".
  7096  func (s EventSubscription) String() string {
  7097  	return awsutil.Prettify(s)
  7098  }
  7099  
  7100  // GoString returns the string representation.
  7101  //
  7102  // API parameter values that are decorated as "sensitive" in the API will not
  7103  // be included in the string output. The member name will be present, but the
  7104  // value will be replaced with "sensitive".
  7105  func (s EventSubscription) GoString() string {
  7106  	return s.String()
  7107  }
  7108  
  7109  // SetEvent sets the Event field's value.
  7110  func (s *EventSubscription) SetEvent(v string) *EventSubscription {
  7111  	s.Event = &v
  7112  	return s
  7113  }
  7114  
  7115  // SetSubscribedAt sets the SubscribedAt field's value.
  7116  func (s *EventSubscription) SetSubscribedAt(v time.Time) *EventSubscription {
  7117  	s.SubscribedAt = &v
  7118  	return s
  7119  }
  7120  
  7121  // Contains information about what was excluded from an assessment run.
  7122  type Exclusion struct {
  7123  	_ struct{} `type:"structure"`
  7124  
  7125  	// The ARN that specifies the exclusion.
  7126  	//
  7127  	// Arn is a required field
  7128  	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
  7129  
  7130  	// The system-defined attributes for the exclusion.
  7131  	Attributes []*Attribute `locationName:"attributes" type:"list"`
  7132  
  7133  	// The description of the exclusion.
  7134  	//
  7135  	// Description is a required field
  7136  	Description *string `locationName:"description" type:"string" required:"true"`
  7137  
  7138  	// The recommendation for the exclusion.
  7139  	//
  7140  	// Recommendation is a required field
  7141  	Recommendation *string `locationName:"recommendation" type:"string" required:"true"`
  7142  
  7143  	// The AWS resources for which the exclusion pertains.
  7144  	//
  7145  	// Scopes is a required field
  7146  	Scopes []*Scope `locationName:"scopes" min:"1" type:"list" required:"true"`
  7147  
  7148  	// The name of the exclusion.
  7149  	//
  7150  	// Title is a required field
  7151  	Title *string `locationName:"title" type:"string" required:"true"`
  7152  }
  7153  
  7154  // String returns the string representation.
  7155  //
  7156  // API parameter values that are decorated as "sensitive" in the API will not
  7157  // be included in the string output. The member name will be present, but the
  7158  // value will be replaced with "sensitive".
  7159  func (s Exclusion) String() string {
  7160  	return awsutil.Prettify(s)
  7161  }
  7162  
  7163  // GoString returns the string representation.
  7164  //
  7165  // API parameter values that are decorated as "sensitive" in the API will not
  7166  // be included in the string output. The member name will be present, but the
  7167  // value will be replaced with "sensitive".
  7168  func (s Exclusion) GoString() string {
  7169  	return s.String()
  7170  }
  7171  
  7172  // SetArn sets the Arn field's value.
  7173  func (s *Exclusion) SetArn(v string) *Exclusion {
  7174  	s.Arn = &v
  7175  	return s
  7176  }
  7177  
  7178  // SetAttributes sets the Attributes field's value.
  7179  func (s *Exclusion) SetAttributes(v []*Attribute) *Exclusion {
  7180  	s.Attributes = v
  7181  	return s
  7182  }
  7183  
  7184  // SetDescription sets the Description field's value.
  7185  func (s *Exclusion) SetDescription(v string) *Exclusion {
  7186  	s.Description = &v
  7187  	return s
  7188  }
  7189  
  7190  // SetRecommendation sets the Recommendation field's value.
  7191  func (s *Exclusion) SetRecommendation(v string) *Exclusion {
  7192  	s.Recommendation = &v
  7193  	return s
  7194  }
  7195  
  7196  // SetScopes sets the Scopes field's value.
  7197  func (s *Exclusion) SetScopes(v []*Scope) *Exclusion {
  7198  	s.Scopes = v
  7199  	return s
  7200  }
  7201  
  7202  // SetTitle sets the Title field's value.
  7203  func (s *Exclusion) SetTitle(v string) *Exclusion {
  7204  	s.Title = &v
  7205  	return s
  7206  }
  7207  
  7208  // Contains information about what is excluded from an assessment run given
  7209  // the current state of the assessment template.
  7210  type ExclusionPreview struct {
  7211  	_ struct{} `type:"structure"`
  7212  
  7213  	// The system-defined attributes for the exclusion preview.
  7214  	Attributes []*Attribute `locationName:"attributes" type:"list"`
  7215  
  7216  	// The description of the exclusion preview.
  7217  	//
  7218  	// Description is a required field
  7219  	Description *string `locationName:"description" type:"string" required:"true"`
  7220  
  7221  	// The recommendation for the exclusion preview.
  7222  	//
  7223  	// Recommendation is a required field
  7224  	Recommendation *string `locationName:"recommendation" type:"string" required:"true"`
  7225  
  7226  	// The AWS resources for which the exclusion preview pertains.
  7227  	//
  7228  	// Scopes is a required field
  7229  	Scopes []*Scope `locationName:"scopes" min:"1" type:"list" required:"true"`
  7230  
  7231  	// The name of the exclusion preview.
  7232  	//
  7233  	// Title is a required field
  7234  	Title *string `locationName:"title" type:"string" required:"true"`
  7235  }
  7236  
  7237  // String returns the string representation.
  7238  //
  7239  // API parameter values that are decorated as "sensitive" in the API will not
  7240  // be included in the string output. The member name will be present, but the
  7241  // value will be replaced with "sensitive".
  7242  func (s ExclusionPreview) String() string {
  7243  	return awsutil.Prettify(s)
  7244  }
  7245  
  7246  // GoString returns the string representation.
  7247  //
  7248  // API parameter values that are decorated as "sensitive" in the API will not
  7249  // be included in the string output. The member name will be present, but the
  7250  // value will be replaced with "sensitive".
  7251  func (s ExclusionPreview) GoString() string {
  7252  	return s.String()
  7253  }
  7254  
  7255  // SetAttributes sets the Attributes field's value.
  7256  func (s *ExclusionPreview) SetAttributes(v []*Attribute) *ExclusionPreview {
  7257  	s.Attributes = v
  7258  	return s
  7259  }
  7260  
  7261  // SetDescription sets the Description field's value.
  7262  func (s *ExclusionPreview) SetDescription(v string) *ExclusionPreview {
  7263  	s.Description = &v
  7264  	return s
  7265  }
  7266  
  7267  // SetRecommendation sets the Recommendation field's value.
  7268  func (s *ExclusionPreview) SetRecommendation(v string) *ExclusionPreview {
  7269  	s.Recommendation = &v
  7270  	return s
  7271  }
  7272  
  7273  // SetScopes sets the Scopes field's value.
  7274  func (s *ExclusionPreview) SetScopes(v []*Scope) *ExclusionPreview {
  7275  	s.Scopes = v
  7276  	return s
  7277  }
  7278  
  7279  // SetTitle sets the Title field's value.
  7280  func (s *ExclusionPreview) SetTitle(v string) *ExclusionPreview {
  7281  	s.Title = &v
  7282  	return s
  7283  }
  7284  
  7285  // Includes details about the failed items.
  7286  type FailedItemDetails struct {
  7287  	_ struct{} `type:"structure"`
  7288  
  7289  	// The status code of a failed item.
  7290  	//
  7291  	// FailureCode is a required field
  7292  	FailureCode *string `locationName:"failureCode" type:"string" required:"true" enum:"FailedItemErrorCode"`
  7293  
  7294  	// Indicates whether you can immediately retry a request for this item for a
  7295  	// specified resource.
  7296  	//
  7297  	// Retryable is a required field
  7298  	Retryable *bool `locationName:"retryable" type:"boolean" required:"true"`
  7299  }
  7300  
  7301  // String returns the string representation.
  7302  //
  7303  // API parameter values that are decorated as "sensitive" in the API will not
  7304  // be included in the string output. The member name will be present, but the
  7305  // value will be replaced with "sensitive".
  7306  func (s FailedItemDetails) String() string {
  7307  	return awsutil.Prettify(s)
  7308  }
  7309  
  7310  // GoString returns the string representation.
  7311  //
  7312  // API parameter values that are decorated as "sensitive" in the API will not
  7313  // be included in the string output. The member name will be present, but the
  7314  // value will be replaced with "sensitive".
  7315  func (s FailedItemDetails) GoString() string {
  7316  	return s.String()
  7317  }
  7318  
  7319  // SetFailureCode sets the FailureCode field's value.
  7320  func (s *FailedItemDetails) SetFailureCode(v string) *FailedItemDetails {
  7321  	s.FailureCode = &v
  7322  	return s
  7323  }
  7324  
  7325  // SetRetryable sets the Retryable field's value.
  7326  func (s *FailedItemDetails) SetRetryable(v bool) *FailedItemDetails {
  7327  	s.Retryable = &v
  7328  	return s
  7329  }
  7330  
  7331  // Contains information about an Amazon Inspector finding. This data type is
  7332  // used as the response element in the DescribeFindings action.
  7333  type Finding struct {
  7334  	_ struct{} `type:"structure"`
  7335  
  7336  	// The ARN that specifies the finding.
  7337  	//
  7338  	// Arn is a required field
  7339  	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
  7340  
  7341  	// A collection of attributes of the host from which the finding is generated.
  7342  	AssetAttributes *AssetAttributes `locationName:"assetAttributes" type:"structure"`
  7343  
  7344  	// The type of the host from which the finding is generated.
  7345  	AssetType *string `locationName:"assetType" type:"string" enum:"AssetType"`
  7346  
  7347  	// The system-defined attributes for the finding.
  7348  	//
  7349  	// Attributes is a required field
  7350  	Attributes []*Attribute `locationName:"attributes" type:"list" required:"true"`
  7351  
  7352  	// This data element is currently not used.
  7353  	Confidence *int64 `locationName:"confidence" type:"integer"`
  7354  
  7355  	// The time when the finding was generated.
  7356  	//
  7357  	// CreatedAt is a required field
  7358  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
  7359  
  7360  	// The description of the finding.
  7361  	Description *string `locationName:"description" type:"string"`
  7362  
  7363  	// The ID of the finding.
  7364  	Id *string `locationName:"id" type:"string"`
  7365  
  7366  	// This data element is currently not used.
  7367  	IndicatorOfCompromise *bool `locationName:"indicatorOfCompromise" type:"boolean"`
  7368  
  7369  	// The numeric value of the finding severity.
  7370  	NumericSeverity *float64 `locationName:"numericSeverity" type:"double"`
  7371  
  7372  	// The recommendation for the finding.
  7373  	Recommendation *string `locationName:"recommendation" type:"string"`
  7374  
  7375  	// The schema version of this data type.
  7376  	SchemaVersion *int64 `locationName:"schemaVersion" type:"integer"`
  7377  
  7378  	// The data element is set to "Inspector".
  7379  	Service *string `locationName:"service" type:"string"`
  7380  
  7381  	// This data type is used in the Finding data type.
  7382  	ServiceAttributes *ServiceAttributes `locationName:"serviceAttributes" type:"structure"`
  7383  
  7384  	// The finding severity. Values can be set to High, Medium, Low, and Informational.
  7385  	Severity *string `locationName:"severity" type:"string" enum:"Severity"`
  7386  
  7387  	// The name of the finding.
  7388  	Title *string `locationName:"title" type:"string"`
  7389  
  7390  	// The time when AddAttributesToFindings is called.
  7391  	//
  7392  	// UpdatedAt is a required field
  7393  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" required:"true"`
  7394  
  7395  	// The user-defined attributes that are assigned to the finding.
  7396  	//
  7397  	// UserAttributes is a required field
  7398  	UserAttributes []*Attribute `locationName:"userAttributes" type:"list" required:"true"`
  7399  }
  7400  
  7401  // String returns the string representation.
  7402  //
  7403  // API parameter values that are decorated as "sensitive" in the API will not
  7404  // be included in the string output. The member name will be present, but the
  7405  // value will be replaced with "sensitive".
  7406  func (s Finding) String() string {
  7407  	return awsutil.Prettify(s)
  7408  }
  7409  
  7410  // GoString returns the string representation.
  7411  //
  7412  // API parameter values that are decorated as "sensitive" in the API will not
  7413  // be included in the string output. The member name will be present, but the
  7414  // value will be replaced with "sensitive".
  7415  func (s Finding) GoString() string {
  7416  	return s.String()
  7417  }
  7418  
  7419  // SetArn sets the Arn field's value.
  7420  func (s *Finding) SetArn(v string) *Finding {
  7421  	s.Arn = &v
  7422  	return s
  7423  }
  7424  
  7425  // SetAssetAttributes sets the AssetAttributes field's value.
  7426  func (s *Finding) SetAssetAttributes(v *AssetAttributes) *Finding {
  7427  	s.AssetAttributes = v
  7428  	return s
  7429  }
  7430  
  7431  // SetAssetType sets the AssetType field's value.
  7432  func (s *Finding) SetAssetType(v string) *Finding {
  7433  	s.AssetType = &v
  7434  	return s
  7435  }
  7436  
  7437  // SetAttributes sets the Attributes field's value.
  7438  func (s *Finding) SetAttributes(v []*Attribute) *Finding {
  7439  	s.Attributes = v
  7440  	return s
  7441  }
  7442  
  7443  // SetConfidence sets the Confidence field's value.
  7444  func (s *Finding) SetConfidence(v int64) *Finding {
  7445  	s.Confidence = &v
  7446  	return s
  7447  }
  7448  
  7449  // SetCreatedAt sets the CreatedAt field's value.
  7450  func (s *Finding) SetCreatedAt(v time.Time) *Finding {
  7451  	s.CreatedAt = &v
  7452  	return s
  7453  }
  7454  
  7455  // SetDescription sets the Description field's value.
  7456  func (s *Finding) SetDescription(v string) *Finding {
  7457  	s.Description = &v
  7458  	return s
  7459  }
  7460  
  7461  // SetId sets the Id field's value.
  7462  func (s *Finding) SetId(v string) *Finding {
  7463  	s.Id = &v
  7464  	return s
  7465  }
  7466  
  7467  // SetIndicatorOfCompromise sets the IndicatorOfCompromise field's value.
  7468  func (s *Finding) SetIndicatorOfCompromise(v bool) *Finding {
  7469  	s.IndicatorOfCompromise = &v
  7470  	return s
  7471  }
  7472  
  7473  // SetNumericSeverity sets the NumericSeverity field's value.
  7474  func (s *Finding) SetNumericSeverity(v float64) *Finding {
  7475  	s.NumericSeverity = &v
  7476  	return s
  7477  }
  7478  
  7479  // SetRecommendation sets the Recommendation field's value.
  7480  func (s *Finding) SetRecommendation(v string) *Finding {
  7481  	s.Recommendation = &v
  7482  	return s
  7483  }
  7484  
  7485  // SetSchemaVersion sets the SchemaVersion field's value.
  7486  func (s *Finding) SetSchemaVersion(v int64) *Finding {
  7487  	s.SchemaVersion = &v
  7488  	return s
  7489  }
  7490  
  7491  // SetService sets the Service field's value.
  7492  func (s *Finding) SetService(v string) *Finding {
  7493  	s.Service = &v
  7494  	return s
  7495  }
  7496  
  7497  // SetServiceAttributes sets the ServiceAttributes field's value.
  7498  func (s *Finding) SetServiceAttributes(v *ServiceAttributes) *Finding {
  7499  	s.ServiceAttributes = v
  7500  	return s
  7501  }
  7502  
  7503  // SetSeverity sets the Severity field's value.
  7504  func (s *Finding) SetSeverity(v string) *Finding {
  7505  	s.Severity = &v
  7506  	return s
  7507  }
  7508  
  7509  // SetTitle sets the Title field's value.
  7510  func (s *Finding) SetTitle(v string) *Finding {
  7511  	s.Title = &v
  7512  	return s
  7513  }
  7514  
  7515  // SetUpdatedAt sets the UpdatedAt field's value.
  7516  func (s *Finding) SetUpdatedAt(v time.Time) *Finding {
  7517  	s.UpdatedAt = &v
  7518  	return s
  7519  }
  7520  
  7521  // SetUserAttributes sets the UserAttributes field's value.
  7522  func (s *Finding) SetUserAttributes(v []*Attribute) *Finding {
  7523  	s.UserAttributes = v
  7524  	return s
  7525  }
  7526  
  7527  // This data type is used as a request parameter in the ListFindings action.
  7528  type FindingFilter struct {
  7529  	_ struct{} `type:"structure"`
  7530  
  7531  	// For a record to match a filter, one of the values that is specified for this
  7532  	// data type property must be the exact match of the value of the agentId property
  7533  	// of the Finding data type.
  7534  	AgentIds []*string `locationName:"agentIds" type:"list"`
  7535  
  7536  	// For a record to match a filter, the list of values that are specified for
  7537  	// this data type property must be contained in the list of values of the attributes
  7538  	// property of the Finding data type.
  7539  	Attributes []*Attribute `locationName:"attributes" type:"list"`
  7540  
  7541  	// For a record to match a filter, one of the values that is specified for this
  7542  	// data type property must be the exact match of the value of the autoScalingGroup
  7543  	// property of the Finding data type.
  7544  	AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"`
  7545  
  7546  	// The time range during which the finding is generated.
  7547  	CreationTimeRange *TimestampRange `locationName:"creationTimeRange" type:"structure"`
  7548  
  7549  	// For a record to match a filter, one of the values that is specified for this
  7550  	// data type property must be the exact match of the value of the ruleName property
  7551  	// of the Finding data type.
  7552  	RuleNames []*string `locationName:"ruleNames" type:"list"`
  7553  
  7554  	// For a record to match a filter, one of the values that is specified for this
  7555  	// data type property must be the exact match of the value of the rulesPackageArn
  7556  	// property of the Finding data type.
  7557  	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list"`
  7558  
  7559  	// For a record to match a filter, one of the values that is specified for this
  7560  	// data type property must be the exact match of the value of the severity property
  7561  	// of the Finding data type.
  7562  	Severities []*string `locationName:"severities" type:"list"`
  7563  
  7564  	// For a record to match a filter, the value that is specified for this data
  7565  	// type property must be contained in the list of values of the userAttributes
  7566  	// property of the Finding data type.
  7567  	UserAttributes []*Attribute `locationName:"userAttributes" type:"list"`
  7568  }
  7569  
  7570  // String returns the string representation.
  7571  //
  7572  // API parameter values that are decorated as "sensitive" in the API will not
  7573  // be included in the string output. The member name will be present, but the
  7574  // value will be replaced with "sensitive".
  7575  func (s FindingFilter) String() string {
  7576  	return awsutil.Prettify(s)
  7577  }
  7578  
  7579  // GoString returns the string representation.
  7580  //
  7581  // API parameter values that are decorated as "sensitive" in the API will not
  7582  // be included in the string output. The member name will be present, but the
  7583  // value will be replaced with "sensitive".
  7584  func (s FindingFilter) GoString() string {
  7585  	return s.String()
  7586  }
  7587  
  7588  // Validate inspects the fields of the type to determine if they are valid.
  7589  func (s *FindingFilter) Validate() error {
  7590  	invalidParams := request.ErrInvalidParams{Context: "FindingFilter"}
  7591  	if s.Attributes != nil {
  7592  		for i, v := range s.Attributes {
  7593  			if v == nil {
  7594  				continue
  7595  			}
  7596  			if err := v.Validate(); err != nil {
  7597  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams))
  7598  			}
  7599  		}
  7600  	}
  7601  	if s.UserAttributes != nil {
  7602  		for i, v := range s.UserAttributes {
  7603  			if v == nil {
  7604  				continue
  7605  			}
  7606  			if err := v.Validate(); err != nil {
  7607  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "UserAttributes", i), err.(request.ErrInvalidParams))
  7608  			}
  7609  		}
  7610  	}
  7611  
  7612  	if invalidParams.Len() > 0 {
  7613  		return invalidParams
  7614  	}
  7615  	return nil
  7616  }
  7617  
  7618  // SetAgentIds sets the AgentIds field's value.
  7619  func (s *FindingFilter) SetAgentIds(v []*string) *FindingFilter {
  7620  	s.AgentIds = v
  7621  	return s
  7622  }
  7623  
  7624  // SetAttributes sets the Attributes field's value.
  7625  func (s *FindingFilter) SetAttributes(v []*Attribute) *FindingFilter {
  7626  	s.Attributes = v
  7627  	return s
  7628  }
  7629  
  7630  // SetAutoScalingGroups sets the AutoScalingGroups field's value.
  7631  func (s *FindingFilter) SetAutoScalingGroups(v []*string) *FindingFilter {
  7632  	s.AutoScalingGroups = v
  7633  	return s
  7634  }
  7635  
  7636  // SetCreationTimeRange sets the CreationTimeRange field's value.
  7637  func (s *FindingFilter) SetCreationTimeRange(v *TimestampRange) *FindingFilter {
  7638  	s.CreationTimeRange = v
  7639  	return s
  7640  }
  7641  
  7642  // SetRuleNames sets the RuleNames field's value.
  7643  func (s *FindingFilter) SetRuleNames(v []*string) *FindingFilter {
  7644  	s.RuleNames = v
  7645  	return s
  7646  }
  7647  
  7648  // SetRulesPackageArns sets the RulesPackageArns field's value.
  7649  func (s *FindingFilter) SetRulesPackageArns(v []*string) *FindingFilter {
  7650  	s.RulesPackageArns = v
  7651  	return s
  7652  }
  7653  
  7654  // SetSeverities sets the Severities field's value.
  7655  func (s *FindingFilter) SetSeverities(v []*string) *FindingFilter {
  7656  	s.Severities = v
  7657  	return s
  7658  }
  7659  
  7660  // SetUserAttributes sets the UserAttributes field's value.
  7661  func (s *FindingFilter) SetUserAttributes(v []*Attribute) *FindingFilter {
  7662  	s.UserAttributes = v
  7663  	return s
  7664  }
  7665  
  7666  type GetAssessmentReportInput struct {
  7667  	_ struct{} `type:"structure"`
  7668  
  7669  	// The ARN that specifies the assessment run for which you want to generate
  7670  	// a report.
  7671  	//
  7672  	// AssessmentRunArn is a required field
  7673  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
  7674  
  7675  	// Specifies the file format (html or pdf) of the assessment report that you
  7676  	// want to generate.
  7677  	//
  7678  	// ReportFileFormat is a required field
  7679  	ReportFileFormat *string `locationName:"reportFileFormat" type:"string" required:"true" enum:"ReportFileFormat"`
  7680  
  7681  	// Specifies the type of the assessment report that you want to generate. There
  7682  	// are two types of assessment reports: a finding report and a full report.
  7683  	// For more information, see Assessment Reports (https://docs.aws.amazon.com/inspector/latest/userguide/inspector_reports.html).
  7684  	//
  7685  	// ReportType is a required field
  7686  	ReportType *string `locationName:"reportType" type:"string" required:"true" enum:"ReportType"`
  7687  }
  7688  
  7689  // String returns the string representation.
  7690  //
  7691  // API parameter values that are decorated as "sensitive" in the API will not
  7692  // be included in the string output. The member name will be present, but the
  7693  // value will be replaced with "sensitive".
  7694  func (s GetAssessmentReportInput) String() string {
  7695  	return awsutil.Prettify(s)
  7696  }
  7697  
  7698  // GoString returns the string representation.
  7699  //
  7700  // API parameter values that are decorated as "sensitive" in the API will not
  7701  // be included in the string output. The member name will be present, but the
  7702  // value will be replaced with "sensitive".
  7703  func (s GetAssessmentReportInput) GoString() string {
  7704  	return s.String()
  7705  }
  7706  
  7707  // Validate inspects the fields of the type to determine if they are valid.
  7708  func (s *GetAssessmentReportInput) Validate() error {
  7709  	invalidParams := request.ErrInvalidParams{Context: "GetAssessmentReportInput"}
  7710  	if s.AssessmentRunArn == nil {
  7711  		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
  7712  	}
  7713  	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
  7714  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
  7715  	}
  7716  	if s.ReportFileFormat == nil {
  7717  		invalidParams.Add(request.NewErrParamRequired("ReportFileFormat"))
  7718  	}
  7719  	if s.ReportType == nil {
  7720  		invalidParams.Add(request.NewErrParamRequired("ReportType"))
  7721  	}
  7722  
  7723  	if invalidParams.Len() > 0 {
  7724  		return invalidParams
  7725  	}
  7726  	return nil
  7727  }
  7728  
  7729  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
  7730  func (s *GetAssessmentReportInput) SetAssessmentRunArn(v string) *GetAssessmentReportInput {
  7731  	s.AssessmentRunArn = &v
  7732  	return s
  7733  }
  7734  
  7735  // SetReportFileFormat sets the ReportFileFormat field's value.
  7736  func (s *GetAssessmentReportInput) SetReportFileFormat(v string) *GetAssessmentReportInput {
  7737  	s.ReportFileFormat = &v
  7738  	return s
  7739  }
  7740  
  7741  // SetReportType sets the ReportType field's value.
  7742  func (s *GetAssessmentReportInput) SetReportType(v string) *GetAssessmentReportInput {
  7743  	s.ReportType = &v
  7744  	return s
  7745  }
  7746  
  7747  type GetAssessmentReportOutput struct {
  7748  	_ struct{} `type:"structure"`
  7749  
  7750  	// Specifies the status of the request to generate an assessment report.
  7751  	//
  7752  	// Status is a required field
  7753  	Status *string `locationName:"status" type:"string" required:"true" enum:"ReportStatus"`
  7754  
  7755  	// Specifies the URL where you can find the generated assessment report. This
  7756  	// parameter is only returned if the report is successfully generated.
  7757  	Url *string `locationName:"url" type:"string"`
  7758  }
  7759  
  7760  // String returns the string representation.
  7761  //
  7762  // API parameter values that are decorated as "sensitive" in the API will not
  7763  // be included in the string output. The member name will be present, but the
  7764  // value will be replaced with "sensitive".
  7765  func (s GetAssessmentReportOutput) String() string {
  7766  	return awsutil.Prettify(s)
  7767  }
  7768  
  7769  // GoString returns the string representation.
  7770  //
  7771  // API parameter values that are decorated as "sensitive" in the API will not
  7772  // be included in the string output. The member name will be present, but the
  7773  // value will be replaced with "sensitive".
  7774  func (s GetAssessmentReportOutput) GoString() string {
  7775  	return s.String()
  7776  }
  7777  
  7778  // SetStatus sets the Status field's value.
  7779  func (s *GetAssessmentReportOutput) SetStatus(v string) *GetAssessmentReportOutput {
  7780  	s.Status = &v
  7781  	return s
  7782  }
  7783  
  7784  // SetUrl sets the Url field's value.
  7785  func (s *GetAssessmentReportOutput) SetUrl(v string) *GetAssessmentReportOutput {
  7786  	s.Url = &v
  7787  	return s
  7788  }
  7789  
  7790  type GetExclusionsPreviewInput struct {
  7791  	_ struct{} `type:"structure"`
  7792  
  7793  	// The ARN that specifies the assessment template for which the exclusions preview
  7794  	// was requested.
  7795  	//
  7796  	// AssessmentTemplateArn is a required field
  7797  	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
  7798  
  7799  	// The locale into which you want to translate the exclusion's title, description,
  7800  	// and recommendation.
  7801  	Locale *string `locationName:"locale" type:"string" enum:"Locale"`
  7802  
  7803  	// You can use this parameter to indicate the maximum number of items you want
  7804  	// in the response. The default value is 100. The maximum value is 500.
  7805  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  7806  
  7807  	// You can use this parameter when paginating results. Set the value of this
  7808  	// parameter to null on your first call to the GetExclusionsPreviewRequest action.
  7809  	// Subsequent calls to the action fill nextToken in the request with the value
  7810  	// of nextToken from the previous response to continue listing data.
  7811  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  7812  
  7813  	// The unique identifier associated of the exclusions preview.
  7814  	//
  7815  	// PreviewToken is a required field
  7816  	PreviewToken *string `locationName:"previewToken" type:"string" required:"true"`
  7817  }
  7818  
  7819  // String returns the string representation.
  7820  //
  7821  // API parameter values that are decorated as "sensitive" in the API will not
  7822  // be included in the string output. The member name will be present, but the
  7823  // value will be replaced with "sensitive".
  7824  func (s GetExclusionsPreviewInput) String() string {
  7825  	return awsutil.Prettify(s)
  7826  }
  7827  
  7828  // GoString returns the string representation.
  7829  //
  7830  // API parameter values that are decorated as "sensitive" in the API will not
  7831  // be included in the string output. The member name will be present, but the
  7832  // value will be replaced with "sensitive".
  7833  func (s GetExclusionsPreviewInput) GoString() string {
  7834  	return s.String()
  7835  }
  7836  
  7837  // Validate inspects the fields of the type to determine if they are valid.
  7838  func (s *GetExclusionsPreviewInput) Validate() error {
  7839  	invalidParams := request.ErrInvalidParams{Context: "GetExclusionsPreviewInput"}
  7840  	if s.AssessmentTemplateArn == nil {
  7841  		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
  7842  	}
  7843  	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
  7844  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
  7845  	}
  7846  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  7847  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  7848  	}
  7849  	if s.PreviewToken == nil {
  7850  		invalidParams.Add(request.NewErrParamRequired("PreviewToken"))
  7851  	}
  7852  
  7853  	if invalidParams.Len() > 0 {
  7854  		return invalidParams
  7855  	}
  7856  	return nil
  7857  }
  7858  
  7859  // SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
  7860  func (s *GetExclusionsPreviewInput) SetAssessmentTemplateArn(v string) *GetExclusionsPreviewInput {
  7861  	s.AssessmentTemplateArn = &v
  7862  	return s
  7863  }
  7864  
  7865  // SetLocale sets the Locale field's value.
  7866  func (s *GetExclusionsPreviewInput) SetLocale(v string) *GetExclusionsPreviewInput {
  7867  	s.Locale = &v
  7868  	return s
  7869  }
  7870  
  7871  // SetMaxResults sets the MaxResults field's value.
  7872  func (s *GetExclusionsPreviewInput) SetMaxResults(v int64) *GetExclusionsPreviewInput {
  7873  	s.MaxResults = &v
  7874  	return s
  7875  }
  7876  
  7877  // SetNextToken sets the NextToken field's value.
  7878  func (s *GetExclusionsPreviewInput) SetNextToken(v string) *GetExclusionsPreviewInput {
  7879  	s.NextToken = &v
  7880  	return s
  7881  }
  7882  
  7883  // SetPreviewToken sets the PreviewToken field's value.
  7884  func (s *GetExclusionsPreviewInput) SetPreviewToken(v string) *GetExclusionsPreviewInput {
  7885  	s.PreviewToken = &v
  7886  	return s
  7887  }
  7888  
  7889  type GetExclusionsPreviewOutput struct {
  7890  	_ struct{} `type:"structure"`
  7891  
  7892  	// Information about the exclusions included in the preview.
  7893  	ExclusionPreviews []*ExclusionPreview `locationName:"exclusionPreviews" type:"list"`
  7894  
  7895  	// When a response is generated, if there is more data to be listed, this parameters
  7896  	// is present in the response and contains the value to use for the nextToken
  7897  	// parameter in a subsequent pagination request. If there is no more data to
  7898  	// be listed, this parameter is set to null.
  7899  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  7900  
  7901  	// Specifies the status of the request to generate an exclusions preview.
  7902  	//
  7903  	// PreviewStatus is a required field
  7904  	PreviewStatus *string `locationName:"previewStatus" type:"string" required:"true" enum:"PreviewStatus"`
  7905  }
  7906  
  7907  // String returns the string representation.
  7908  //
  7909  // API parameter values that are decorated as "sensitive" in the API will not
  7910  // be included in the string output. The member name will be present, but the
  7911  // value will be replaced with "sensitive".
  7912  func (s GetExclusionsPreviewOutput) String() string {
  7913  	return awsutil.Prettify(s)
  7914  }
  7915  
  7916  // GoString returns the string representation.
  7917  //
  7918  // API parameter values that are decorated as "sensitive" in the API will not
  7919  // be included in the string output. The member name will be present, but the
  7920  // value will be replaced with "sensitive".
  7921  func (s GetExclusionsPreviewOutput) GoString() string {
  7922  	return s.String()
  7923  }
  7924  
  7925  // SetExclusionPreviews sets the ExclusionPreviews field's value.
  7926  func (s *GetExclusionsPreviewOutput) SetExclusionPreviews(v []*ExclusionPreview) *GetExclusionsPreviewOutput {
  7927  	s.ExclusionPreviews = v
  7928  	return s
  7929  }
  7930  
  7931  // SetNextToken sets the NextToken field's value.
  7932  func (s *GetExclusionsPreviewOutput) SetNextToken(v string) *GetExclusionsPreviewOutput {
  7933  	s.NextToken = &v
  7934  	return s
  7935  }
  7936  
  7937  // SetPreviewStatus sets the PreviewStatus field's value.
  7938  func (s *GetExclusionsPreviewOutput) SetPreviewStatus(v string) *GetExclusionsPreviewOutput {
  7939  	s.PreviewStatus = &v
  7940  	return s
  7941  }
  7942  
  7943  type GetTelemetryMetadataInput struct {
  7944  	_ struct{} `type:"structure"`
  7945  
  7946  	// The ARN that specifies the assessment run that has the telemetry data that
  7947  	// you want to obtain.
  7948  	//
  7949  	// AssessmentRunArn is a required field
  7950  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
  7951  }
  7952  
  7953  // String returns the string representation.
  7954  //
  7955  // API parameter values that are decorated as "sensitive" in the API will not
  7956  // be included in the string output. The member name will be present, but the
  7957  // value will be replaced with "sensitive".
  7958  func (s GetTelemetryMetadataInput) String() string {
  7959  	return awsutil.Prettify(s)
  7960  }
  7961  
  7962  // GoString returns the string representation.
  7963  //
  7964  // API parameter values that are decorated as "sensitive" in the API will not
  7965  // be included in the string output. The member name will be present, but the
  7966  // value will be replaced with "sensitive".
  7967  func (s GetTelemetryMetadataInput) GoString() string {
  7968  	return s.String()
  7969  }
  7970  
  7971  // Validate inspects the fields of the type to determine if they are valid.
  7972  func (s *GetTelemetryMetadataInput) Validate() error {
  7973  	invalidParams := request.ErrInvalidParams{Context: "GetTelemetryMetadataInput"}
  7974  	if s.AssessmentRunArn == nil {
  7975  		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
  7976  	}
  7977  	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
  7978  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
  7979  	}
  7980  
  7981  	if invalidParams.Len() > 0 {
  7982  		return invalidParams
  7983  	}
  7984  	return nil
  7985  }
  7986  
  7987  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
  7988  func (s *GetTelemetryMetadataInput) SetAssessmentRunArn(v string) *GetTelemetryMetadataInput {
  7989  	s.AssessmentRunArn = &v
  7990  	return s
  7991  }
  7992  
  7993  type GetTelemetryMetadataOutput struct {
  7994  	_ struct{} `type:"structure"`
  7995  
  7996  	// Telemetry details.
  7997  	//
  7998  	// TelemetryMetadata is a required field
  7999  	TelemetryMetadata []*TelemetryMetadata `locationName:"telemetryMetadata" type:"list" required:"true"`
  8000  }
  8001  
  8002  // String returns the string representation.
  8003  //
  8004  // API parameter values that are decorated as "sensitive" in the API will not
  8005  // be included in the string output. The member name will be present, but the
  8006  // value will be replaced with "sensitive".
  8007  func (s GetTelemetryMetadataOutput) String() string {
  8008  	return awsutil.Prettify(s)
  8009  }
  8010  
  8011  // GoString returns the string representation.
  8012  //
  8013  // API parameter values that are decorated as "sensitive" in the API will not
  8014  // be included in the string output. The member name will be present, but the
  8015  // value will be replaced with "sensitive".
  8016  func (s GetTelemetryMetadataOutput) GoString() string {
  8017  	return s.String()
  8018  }
  8019  
  8020  // SetTelemetryMetadata sets the TelemetryMetadata field's value.
  8021  func (s *GetTelemetryMetadataOutput) SetTelemetryMetadata(v []*TelemetryMetadata) *GetTelemetryMetadataOutput {
  8022  	s.TelemetryMetadata = v
  8023  	return s
  8024  }
  8025  
  8026  // Internal server error.
  8027  type InternalException struct {
  8028  	_            struct{}                  `type:"structure"`
  8029  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8030  
  8031  	// You can immediately retry your request.
  8032  	//
  8033  	// CanRetry is a required field
  8034  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
  8035  
  8036  	// Details of the exception error.
  8037  	Message_ *string `locationName:"message" type:"string"`
  8038  }
  8039  
  8040  // String returns the string representation.
  8041  //
  8042  // API parameter values that are decorated as "sensitive" in the API will not
  8043  // be included in the string output. The member name will be present, but the
  8044  // value will be replaced with "sensitive".
  8045  func (s InternalException) String() string {
  8046  	return awsutil.Prettify(s)
  8047  }
  8048  
  8049  // GoString returns the string representation.
  8050  //
  8051  // API parameter values that are decorated as "sensitive" in the API will not
  8052  // be included in the string output. The member name will be present, but the
  8053  // value will be replaced with "sensitive".
  8054  func (s InternalException) GoString() string {
  8055  	return s.String()
  8056  }
  8057  
  8058  func newErrorInternalException(v protocol.ResponseMetadata) error {
  8059  	return &InternalException{
  8060  		RespMetadata: v,
  8061  	}
  8062  }
  8063  
  8064  // Code returns the exception type name.
  8065  func (s *InternalException) Code() string {
  8066  	return "InternalException"
  8067  }
  8068  
  8069  // Message returns the exception's message.
  8070  func (s *InternalException) Message() string {
  8071  	if s.Message_ != nil {
  8072  		return *s.Message_
  8073  	}
  8074  	return ""
  8075  }
  8076  
  8077  // OrigErr always returns nil, satisfies awserr.Error interface.
  8078  func (s *InternalException) OrigErr() error {
  8079  	return nil
  8080  }
  8081  
  8082  func (s *InternalException) Error() string {
  8083  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8084  }
  8085  
  8086  // Status code returns the HTTP status code for the request's response error.
  8087  func (s *InternalException) StatusCode() int {
  8088  	return s.RespMetadata.StatusCode
  8089  }
  8090  
  8091  // RequestID returns the service's response RequestID for request.
  8092  func (s *InternalException) RequestID() string {
  8093  	return s.RespMetadata.RequestID
  8094  }
  8095  
  8096  // Amazon Inspector cannot assume the cross-account role that it needs to list
  8097  // your EC2 instances during the assessment run.
  8098  type InvalidCrossAccountRoleException struct {
  8099  	_            struct{}                  `type:"structure"`
  8100  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8101  
  8102  	// You can immediately retry your request.
  8103  	//
  8104  	// CanRetry is a required field
  8105  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
  8106  
  8107  	// Code that indicates the type of error that is generated.
  8108  	//
  8109  	// ErrorCode is a required field
  8110  	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"InvalidCrossAccountRoleErrorCode"`
  8111  
  8112  	// Details of the exception error.
  8113  	Message_ *string `locationName:"message" type:"string"`
  8114  }
  8115  
  8116  // String returns the string representation.
  8117  //
  8118  // API parameter values that are decorated as "sensitive" in the API will not
  8119  // be included in the string output. The member name will be present, but the
  8120  // value will be replaced with "sensitive".
  8121  func (s InvalidCrossAccountRoleException) String() string {
  8122  	return awsutil.Prettify(s)
  8123  }
  8124  
  8125  // GoString returns the string representation.
  8126  //
  8127  // API parameter values that are decorated as "sensitive" in the API will not
  8128  // be included in the string output. The member name will be present, but the
  8129  // value will be replaced with "sensitive".
  8130  func (s InvalidCrossAccountRoleException) GoString() string {
  8131  	return s.String()
  8132  }
  8133  
  8134  func newErrorInvalidCrossAccountRoleException(v protocol.ResponseMetadata) error {
  8135  	return &InvalidCrossAccountRoleException{
  8136  		RespMetadata: v,
  8137  	}
  8138  }
  8139  
  8140  // Code returns the exception type name.
  8141  func (s *InvalidCrossAccountRoleException) Code() string {
  8142  	return "InvalidCrossAccountRoleException"
  8143  }
  8144  
  8145  // Message returns the exception's message.
  8146  func (s *InvalidCrossAccountRoleException) Message() string {
  8147  	if s.Message_ != nil {
  8148  		return *s.Message_
  8149  	}
  8150  	return ""
  8151  }
  8152  
  8153  // OrigErr always returns nil, satisfies awserr.Error interface.
  8154  func (s *InvalidCrossAccountRoleException) OrigErr() error {
  8155  	return nil
  8156  }
  8157  
  8158  func (s *InvalidCrossAccountRoleException) Error() string {
  8159  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8160  }
  8161  
  8162  // Status code returns the HTTP status code for the request's response error.
  8163  func (s *InvalidCrossAccountRoleException) StatusCode() int {
  8164  	return s.RespMetadata.StatusCode
  8165  }
  8166  
  8167  // RequestID returns the service's response RequestID for request.
  8168  func (s *InvalidCrossAccountRoleException) RequestID() string {
  8169  	return s.RespMetadata.RequestID
  8170  }
  8171  
  8172  // The request was rejected because an invalid or out-of-range value was supplied
  8173  // for an input parameter.
  8174  type InvalidInputException struct {
  8175  	_            struct{}                  `type:"structure"`
  8176  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8177  
  8178  	// You can immediately retry your request.
  8179  	//
  8180  	// CanRetry is a required field
  8181  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
  8182  
  8183  	// Code that indicates the type of error that is generated.
  8184  	//
  8185  	// ErrorCode is a required field
  8186  	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"InvalidInputErrorCode"`
  8187  
  8188  	// Details of the exception error.
  8189  	Message_ *string `locationName:"message" type:"string"`
  8190  }
  8191  
  8192  // String returns the string representation.
  8193  //
  8194  // API parameter values that are decorated as "sensitive" in the API will not
  8195  // be included in the string output. The member name will be present, but the
  8196  // value will be replaced with "sensitive".
  8197  func (s InvalidInputException) String() string {
  8198  	return awsutil.Prettify(s)
  8199  }
  8200  
  8201  // GoString returns the string representation.
  8202  //
  8203  // API parameter values that are decorated as "sensitive" in the API will not
  8204  // be included in the string output. The member name will be present, but the
  8205  // value will be replaced with "sensitive".
  8206  func (s InvalidInputException) GoString() string {
  8207  	return s.String()
  8208  }
  8209  
  8210  func newErrorInvalidInputException(v protocol.ResponseMetadata) error {
  8211  	return &InvalidInputException{
  8212  		RespMetadata: v,
  8213  	}
  8214  }
  8215  
  8216  // Code returns the exception type name.
  8217  func (s *InvalidInputException) Code() string {
  8218  	return "InvalidInputException"
  8219  }
  8220  
  8221  // Message returns the exception's message.
  8222  func (s *InvalidInputException) Message() string {
  8223  	if s.Message_ != nil {
  8224  		return *s.Message_
  8225  	}
  8226  	return ""
  8227  }
  8228  
  8229  // OrigErr always returns nil, satisfies awserr.Error interface.
  8230  func (s *InvalidInputException) OrigErr() error {
  8231  	return nil
  8232  }
  8233  
  8234  func (s *InvalidInputException) Error() string {
  8235  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8236  }
  8237  
  8238  // Status code returns the HTTP status code for the request's response error.
  8239  func (s *InvalidInputException) StatusCode() int {
  8240  	return s.RespMetadata.StatusCode
  8241  }
  8242  
  8243  // RequestID returns the service's response RequestID for request.
  8244  func (s *InvalidInputException) RequestID() string {
  8245  	return s.RespMetadata.RequestID
  8246  }
  8247  
  8248  // The request was rejected because it attempted to create resources beyond
  8249  // the current AWS account limits. The error code describes the limit exceeded.
  8250  type LimitExceededException struct {
  8251  	_            struct{}                  `type:"structure"`
  8252  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8253  
  8254  	// You can immediately retry your request.
  8255  	//
  8256  	// CanRetry is a required field
  8257  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
  8258  
  8259  	// Code that indicates the type of error that is generated.
  8260  	//
  8261  	// ErrorCode is a required field
  8262  	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"LimitExceededErrorCode"`
  8263  
  8264  	// Details of the exception error.
  8265  	Message_ *string `locationName:"message" type:"string"`
  8266  }
  8267  
  8268  // String returns the string representation.
  8269  //
  8270  // API parameter values that are decorated as "sensitive" in the API will not
  8271  // be included in the string output. The member name will be present, but the
  8272  // value will be replaced with "sensitive".
  8273  func (s LimitExceededException) String() string {
  8274  	return awsutil.Prettify(s)
  8275  }
  8276  
  8277  // GoString returns the string representation.
  8278  //
  8279  // API parameter values that are decorated as "sensitive" in the API will not
  8280  // be included in the string output. The member name will be present, but the
  8281  // value will be replaced with "sensitive".
  8282  func (s LimitExceededException) GoString() string {
  8283  	return s.String()
  8284  }
  8285  
  8286  func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
  8287  	return &LimitExceededException{
  8288  		RespMetadata: v,
  8289  	}
  8290  }
  8291  
  8292  // Code returns the exception type name.
  8293  func (s *LimitExceededException) Code() string {
  8294  	return "LimitExceededException"
  8295  }
  8296  
  8297  // Message returns the exception's message.
  8298  func (s *LimitExceededException) Message() string {
  8299  	if s.Message_ != nil {
  8300  		return *s.Message_
  8301  	}
  8302  	return ""
  8303  }
  8304  
  8305  // OrigErr always returns nil, satisfies awserr.Error interface.
  8306  func (s *LimitExceededException) OrigErr() error {
  8307  	return nil
  8308  }
  8309  
  8310  func (s *LimitExceededException) Error() string {
  8311  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  8312  }
  8313  
  8314  // Status code returns the HTTP status code for the request's response error.
  8315  func (s *LimitExceededException) StatusCode() int {
  8316  	return s.RespMetadata.StatusCode
  8317  }
  8318  
  8319  // RequestID returns the service's response RequestID for request.
  8320  func (s *LimitExceededException) RequestID() string {
  8321  	return s.RespMetadata.RequestID
  8322  }
  8323  
  8324  type ListAssessmentRunAgentsInput struct {
  8325  	_ struct{} `type:"structure"`
  8326  
  8327  	// The ARN that specifies the assessment run whose agents you want to list.
  8328  	//
  8329  	// AssessmentRunArn is a required field
  8330  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
  8331  
  8332  	// You can use this parameter to specify a subset of data to be included in
  8333  	// the action's response.
  8334  	//
  8335  	// For a record to match a filter, all specified filter attributes must match.
  8336  	// When multiple values are specified for a filter attribute, any of the values
  8337  	// can match.
  8338  	Filter *AgentFilter `locationName:"filter" type:"structure"`
  8339  
  8340  	// You can use this parameter to indicate the maximum number of items that you
  8341  	// want in the response. The default value is 10. The maximum value is 500.
  8342  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  8343  
  8344  	// You can use this parameter when paginating results. Set the value of this
  8345  	// parameter to null on your first call to the ListAssessmentRunAgents action.
  8346  	// Subsequent calls to the action fill nextToken in the request with the value
  8347  	// of NextToken from the previous response to continue listing data.
  8348  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8349  }
  8350  
  8351  // String returns the string representation.
  8352  //
  8353  // API parameter values that are decorated as "sensitive" in the API will not
  8354  // be included in the string output. The member name will be present, but the
  8355  // value will be replaced with "sensitive".
  8356  func (s ListAssessmentRunAgentsInput) String() string {
  8357  	return awsutil.Prettify(s)
  8358  }
  8359  
  8360  // GoString returns the string representation.
  8361  //
  8362  // API parameter values that are decorated as "sensitive" in the API will not
  8363  // be included in the string output. The member name will be present, but the
  8364  // value will be replaced with "sensitive".
  8365  func (s ListAssessmentRunAgentsInput) GoString() string {
  8366  	return s.String()
  8367  }
  8368  
  8369  // Validate inspects the fields of the type to determine if they are valid.
  8370  func (s *ListAssessmentRunAgentsInput) Validate() error {
  8371  	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentRunAgentsInput"}
  8372  	if s.AssessmentRunArn == nil {
  8373  		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
  8374  	}
  8375  	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
  8376  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
  8377  	}
  8378  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  8379  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  8380  	}
  8381  	if s.Filter != nil {
  8382  		if err := s.Filter.Validate(); err != nil {
  8383  			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
  8384  		}
  8385  	}
  8386  
  8387  	if invalidParams.Len() > 0 {
  8388  		return invalidParams
  8389  	}
  8390  	return nil
  8391  }
  8392  
  8393  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
  8394  func (s *ListAssessmentRunAgentsInput) SetAssessmentRunArn(v string) *ListAssessmentRunAgentsInput {
  8395  	s.AssessmentRunArn = &v
  8396  	return s
  8397  }
  8398  
  8399  // SetFilter sets the Filter field's value.
  8400  func (s *ListAssessmentRunAgentsInput) SetFilter(v *AgentFilter) *ListAssessmentRunAgentsInput {
  8401  	s.Filter = v
  8402  	return s
  8403  }
  8404  
  8405  // SetMaxResults sets the MaxResults field's value.
  8406  func (s *ListAssessmentRunAgentsInput) SetMaxResults(v int64) *ListAssessmentRunAgentsInput {
  8407  	s.MaxResults = &v
  8408  	return s
  8409  }
  8410  
  8411  // SetNextToken sets the NextToken field's value.
  8412  func (s *ListAssessmentRunAgentsInput) SetNextToken(v string) *ListAssessmentRunAgentsInput {
  8413  	s.NextToken = &v
  8414  	return s
  8415  }
  8416  
  8417  type ListAssessmentRunAgentsOutput struct {
  8418  	_ struct{} `type:"structure"`
  8419  
  8420  	// A list of ARNs that specifies the agents returned by the action.
  8421  	//
  8422  	// AssessmentRunAgents is a required field
  8423  	AssessmentRunAgents []*AssessmentRunAgent `locationName:"assessmentRunAgents" type:"list" required:"true"`
  8424  
  8425  	// When a response is generated, if there is more data to be listed, this parameter
  8426  	// is present in the response and contains the value to use for the nextToken
  8427  	// parameter in a subsequent pagination request. If there is no more data to
  8428  	// be listed, this parameter is set to null.
  8429  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8430  }
  8431  
  8432  // String returns the string representation.
  8433  //
  8434  // API parameter values that are decorated as "sensitive" in the API will not
  8435  // be included in the string output. The member name will be present, but the
  8436  // value will be replaced with "sensitive".
  8437  func (s ListAssessmentRunAgentsOutput) String() string {
  8438  	return awsutil.Prettify(s)
  8439  }
  8440  
  8441  // GoString returns the string representation.
  8442  //
  8443  // API parameter values that are decorated as "sensitive" in the API will not
  8444  // be included in the string output. The member name will be present, but the
  8445  // value will be replaced with "sensitive".
  8446  func (s ListAssessmentRunAgentsOutput) GoString() string {
  8447  	return s.String()
  8448  }
  8449  
  8450  // SetAssessmentRunAgents sets the AssessmentRunAgents field's value.
  8451  func (s *ListAssessmentRunAgentsOutput) SetAssessmentRunAgents(v []*AssessmentRunAgent) *ListAssessmentRunAgentsOutput {
  8452  	s.AssessmentRunAgents = v
  8453  	return s
  8454  }
  8455  
  8456  // SetNextToken sets the NextToken field's value.
  8457  func (s *ListAssessmentRunAgentsOutput) SetNextToken(v string) *ListAssessmentRunAgentsOutput {
  8458  	s.NextToken = &v
  8459  	return s
  8460  }
  8461  
  8462  type ListAssessmentRunsInput struct {
  8463  	_ struct{} `type:"structure"`
  8464  
  8465  	// The ARNs that specify the assessment templates whose assessment runs you
  8466  	// want to list.
  8467  	AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" type:"list"`
  8468  
  8469  	// You can use this parameter to specify a subset of data to be included in
  8470  	// the action's response.
  8471  	//
  8472  	// For a record to match a filter, all specified filter attributes must match.
  8473  	// When multiple values are specified for a filter attribute, any of the values
  8474  	// can match.
  8475  	Filter *AssessmentRunFilter `locationName:"filter" type:"structure"`
  8476  
  8477  	// You can use this parameter to indicate the maximum number of items that you
  8478  	// want in the response. The default value is 10. The maximum value is 500.
  8479  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  8480  
  8481  	// You can use this parameter when paginating results. Set the value of this
  8482  	// parameter to null on your first call to the ListAssessmentRuns action. Subsequent
  8483  	// calls to the action fill nextToken in the request with the value of NextToken
  8484  	// from the previous response to continue listing data.
  8485  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8486  }
  8487  
  8488  // String returns the string representation.
  8489  //
  8490  // API parameter values that are decorated as "sensitive" in the API will not
  8491  // be included in the string output. The member name will be present, but the
  8492  // value will be replaced with "sensitive".
  8493  func (s ListAssessmentRunsInput) String() string {
  8494  	return awsutil.Prettify(s)
  8495  }
  8496  
  8497  // GoString returns the string representation.
  8498  //
  8499  // API parameter values that are decorated as "sensitive" in the API will not
  8500  // be included in the string output. The member name will be present, but the
  8501  // value will be replaced with "sensitive".
  8502  func (s ListAssessmentRunsInput) GoString() string {
  8503  	return s.String()
  8504  }
  8505  
  8506  // Validate inspects the fields of the type to determine if they are valid.
  8507  func (s *ListAssessmentRunsInput) Validate() error {
  8508  	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentRunsInput"}
  8509  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  8510  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  8511  	}
  8512  	if s.Filter != nil {
  8513  		if err := s.Filter.Validate(); err != nil {
  8514  			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
  8515  		}
  8516  	}
  8517  
  8518  	if invalidParams.Len() > 0 {
  8519  		return invalidParams
  8520  	}
  8521  	return nil
  8522  }
  8523  
  8524  // SetAssessmentTemplateArns sets the AssessmentTemplateArns field's value.
  8525  func (s *ListAssessmentRunsInput) SetAssessmentTemplateArns(v []*string) *ListAssessmentRunsInput {
  8526  	s.AssessmentTemplateArns = v
  8527  	return s
  8528  }
  8529  
  8530  // SetFilter sets the Filter field's value.
  8531  func (s *ListAssessmentRunsInput) SetFilter(v *AssessmentRunFilter) *ListAssessmentRunsInput {
  8532  	s.Filter = v
  8533  	return s
  8534  }
  8535  
  8536  // SetMaxResults sets the MaxResults field's value.
  8537  func (s *ListAssessmentRunsInput) SetMaxResults(v int64) *ListAssessmentRunsInput {
  8538  	s.MaxResults = &v
  8539  	return s
  8540  }
  8541  
  8542  // SetNextToken sets the NextToken field's value.
  8543  func (s *ListAssessmentRunsInput) SetNextToken(v string) *ListAssessmentRunsInput {
  8544  	s.NextToken = &v
  8545  	return s
  8546  }
  8547  
  8548  type ListAssessmentRunsOutput struct {
  8549  	_ struct{} `type:"structure"`
  8550  
  8551  	// A list of ARNs that specifies the assessment runs that are returned by the
  8552  	// action.
  8553  	//
  8554  	// AssessmentRunArns is a required field
  8555  	AssessmentRunArns []*string `locationName:"assessmentRunArns" type:"list" required:"true"`
  8556  
  8557  	// When a response is generated, if there is more data to be listed, this parameter
  8558  	// is present in the response and contains the value to use for the nextToken
  8559  	// parameter in a subsequent pagination request. If there is no more data to
  8560  	// be listed, this parameter is set to null.
  8561  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8562  }
  8563  
  8564  // String returns the string representation.
  8565  //
  8566  // API parameter values that are decorated as "sensitive" in the API will not
  8567  // be included in the string output. The member name will be present, but the
  8568  // value will be replaced with "sensitive".
  8569  func (s ListAssessmentRunsOutput) String() string {
  8570  	return awsutil.Prettify(s)
  8571  }
  8572  
  8573  // GoString returns the string representation.
  8574  //
  8575  // API parameter values that are decorated as "sensitive" in the API will not
  8576  // be included in the string output. The member name will be present, but the
  8577  // value will be replaced with "sensitive".
  8578  func (s ListAssessmentRunsOutput) GoString() string {
  8579  	return s.String()
  8580  }
  8581  
  8582  // SetAssessmentRunArns sets the AssessmentRunArns field's value.
  8583  func (s *ListAssessmentRunsOutput) SetAssessmentRunArns(v []*string) *ListAssessmentRunsOutput {
  8584  	s.AssessmentRunArns = v
  8585  	return s
  8586  }
  8587  
  8588  // SetNextToken sets the NextToken field's value.
  8589  func (s *ListAssessmentRunsOutput) SetNextToken(v string) *ListAssessmentRunsOutput {
  8590  	s.NextToken = &v
  8591  	return s
  8592  }
  8593  
  8594  type ListAssessmentTargetsInput struct {
  8595  	_ struct{} `type:"structure"`
  8596  
  8597  	// You can use this parameter to specify a subset of data to be included in
  8598  	// the action's response.
  8599  	//
  8600  	// For a record to match a filter, all specified filter attributes must match.
  8601  	// When multiple values are specified for a filter attribute, any of the values
  8602  	// can match.
  8603  	Filter *AssessmentTargetFilter `locationName:"filter" type:"structure"`
  8604  
  8605  	// You can use this parameter to indicate the maximum number of items you want
  8606  	// in the response. The default value is 10. The maximum value is 500.
  8607  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  8608  
  8609  	// You can use this parameter when paginating results. Set the value of this
  8610  	// parameter to null on your first call to the ListAssessmentTargets action.
  8611  	// Subsequent calls to the action fill nextToken in the request with the value
  8612  	// of NextToken from the previous response to continue listing data.
  8613  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8614  }
  8615  
  8616  // String returns the string representation.
  8617  //
  8618  // API parameter values that are decorated as "sensitive" in the API will not
  8619  // be included in the string output. The member name will be present, but the
  8620  // value will be replaced with "sensitive".
  8621  func (s ListAssessmentTargetsInput) String() string {
  8622  	return awsutil.Prettify(s)
  8623  }
  8624  
  8625  // GoString returns the string representation.
  8626  //
  8627  // API parameter values that are decorated as "sensitive" in the API will not
  8628  // be included in the string output. The member name will be present, but the
  8629  // value will be replaced with "sensitive".
  8630  func (s ListAssessmentTargetsInput) GoString() string {
  8631  	return s.String()
  8632  }
  8633  
  8634  // Validate inspects the fields of the type to determine if they are valid.
  8635  func (s *ListAssessmentTargetsInput) Validate() error {
  8636  	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentTargetsInput"}
  8637  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  8638  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  8639  	}
  8640  	if s.Filter != nil {
  8641  		if err := s.Filter.Validate(); err != nil {
  8642  			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
  8643  		}
  8644  	}
  8645  
  8646  	if invalidParams.Len() > 0 {
  8647  		return invalidParams
  8648  	}
  8649  	return nil
  8650  }
  8651  
  8652  // SetFilter sets the Filter field's value.
  8653  func (s *ListAssessmentTargetsInput) SetFilter(v *AssessmentTargetFilter) *ListAssessmentTargetsInput {
  8654  	s.Filter = v
  8655  	return s
  8656  }
  8657  
  8658  // SetMaxResults sets the MaxResults field's value.
  8659  func (s *ListAssessmentTargetsInput) SetMaxResults(v int64) *ListAssessmentTargetsInput {
  8660  	s.MaxResults = &v
  8661  	return s
  8662  }
  8663  
  8664  // SetNextToken sets the NextToken field's value.
  8665  func (s *ListAssessmentTargetsInput) SetNextToken(v string) *ListAssessmentTargetsInput {
  8666  	s.NextToken = &v
  8667  	return s
  8668  }
  8669  
  8670  type ListAssessmentTargetsOutput struct {
  8671  	_ struct{} `type:"structure"`
  8672  
  8673  	// A list of ARNs that specifies the assessment targets that are returned by
  8674  	// the action.
  8675  	//
  8676  	// AssessmentTargetArns is a required field
  8677  	AssessmentTargetArns []*string `locationName:"assessmentTargetArns" type:"list" required:"true"`
  8678  
  8679  	// When a response is generated, if there is more data to be listed, this parameter
  8680  	// is present in the response and contains the value to use for the nextToken
  8681  	// parameter in a subsequent pagination request. If there is no more data to
  8682  	// be listed, this parameter is set to null.
  8683  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8684  }
  8685  
  8686  // String returns the string representation.
  8687  //
  8688  // API parameter values that are decorated as "sensitive" in the API will not
  8689  // be included in the string output. The member name will be present, but the
  8690  // value will be replaced with "sensitive".
  8691  func (s ListAssessmentTargetsOutput) String() string {
  8692  	return awsutil.Prettify(s)
  8693  }
  8694  
  8695  // GoString returns the string representation.
  8696  //
  8697  // API parameter values that are decorated as "sensitive" in the API will not
  8698  // be included in the string output. The member name will be present, but the
  8699  // value will be replaced with "sensitive".
  8700  func (s ListAssessmentTargetsOutput) GoString() string {
  8701  	return s.String()
  8702  }
  8703  
  8704  // SetAssessmentTargetArns sets the AssessmentTargetArns field's value.
  8705  func (s *ListAssessmentTargetsOutput) SetAssessmentTargetArns(v []*string) *ListAssessmentTargetsOutput {
  8706  	s.AssessmentTargetArns = v
  8707  	return s
  8708  }
  8709  
  8710  // SetNextToken sets the NextToken field's value.
  8711  func (s *ListAssessmentTargetsOutput) SetNextToken(v string) *ListAssessmentTargetsOutput {
  8712  	s.NextToken = &v
  8713  	return s
  8714  }
  8715  
  8716  type ListAssessmentTemplatesInput struct {
  8717  	_ struct{} `type:"structure"`
  8718  
  8719  	// A list of ARNs that specifies the assessment targets whose assessment templates
  8720  	// you want to list.
  8721  	AssessmentTargetArns []*string `locationName:"assessmentTargetArns" type:"list"`
  8722  
  8723  	// You can use this parameter to specify a subset of data to be included in
  8724  	// the action's response.
  8725  	//
  8726  	// For a record to match a filter, all specified filter attributes must match.
  8727  	// When multiple values are specified for a filter attribute, any of the values
  8728  	// can match.
  8729  	Filter *AssessmentTemplateFilter `locationName:"filter" type:"structure"`
  8730  
  8731  	// You can use this parameter to indicate the maximum number of items you want
  8732  	// in the response. The default value is 10. The maximum value is 500.
  8733  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  8734  
  8735  	// You can use this parameter when paginating results. Set the value of this
  8736  	// parameter to null on your first call to the ListAssessmentTemplates action.
  8737  	// Subsequent calls to the action fill nextToken in the request with the value
  8738  	// of NextToken from the previous response to continue listing data.
  8739  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8740  }
  8741  
  8742  // String returns the string representation.
  8743  //
  8744  // API parameter values that are decorated as "sensitive" in the API will not
  8745  // be included in the string output. The member name will be present, but the
  8746  // value will be replaced with "sensitive".
  8747  func (s ListAssessmentTemplatesInput) String() string {
  8748  	return awsutil.Prettify(s)
  8749  }
  8750  
  8751  // GoString returns the string representation.
  8752  //
  8753  // API parameter values that are decorated as "sensitive" in the API will not
  8754  // be included in the string output. The member name will be present, but the
  8755  // value will be replaced with "sensitive".
  8756  func (s ListAssessmentTemplatesInput) GoString() string {
  8757  	return s.String()
  8758  }
  8759  
  8760  // Validate inspects the fields of the type to determine if they are valid.
  8761  func (s *ListAssessmentTemplatesInput) Validate() error {
  8762  	invalidParams := request.ErrInvalidParams{Context: "ListAssessmentTemplatesInput"}
  8763  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  8764  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  8765  	}
  8766  	if s.Filter != nil {
  8767  		if err := s.Filter.Validate(); err != nil {
  8768  			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
  8769  		}
  8770  	}
  8771  
  8772  	if invalidParams.Len() > 0 {
  8773  		return invalidParams
  8774  	}
  8775  	return nil
  8776  }
  8777  
  8778  // SetAssessmentTargetArns sets the AssessmentTargetArns field's value.
  8779  func (s *ListAssessmentTemplatesInput) SetAssessmentTargetArns(v []*string) *ListAssessmentTemplatesInput {
  8780  	s.AssessmentTargetArns = v
  8781  	return s
  8782  }
  8783  
  8784  // SetFilter sets the Filter field's value.
  8785  func (s *ListAssessmentTemplatesInput) SetFilter(v *AssessmentTemplateFilter) *ListAssessmentTemplatesInput {
  8786  	s.Filter = v
  8787  	return s
  8788  }
  8789  
  8790  // SetMaxResults sets the MaxResults field's value.
  8791  func (s *ListAssessmentTemplatesInput) SetMaxResults(v int64) *ListAssessmentTemplatesInput {
  8792  	s.MaxResults = &v
  8793  	return s
  8794  }
  8795  
  8796  // SetNextToken sets the NextToken field's value.
  8797  func (s *ListAssessmentTemplatesInput) SetNextToken(v string) *ListAssessmentTemplatesInput {
  8798  	s.NextToken = &v
  8799  	return s
  8800  }
  8801  
  8802  type ListAssessmentTemplatesOutput struct {
  8803  	_ struct{} `type:"structure"`
  8804  
  8805  	// A list of ARNs that specifies the assessment templates returned by the action.
  8806  	//
  8807  	// AssessmentTemplateArns is a required field
  8808  	AssessmentTemplateArns []*string `locationName:"assessmentTemplateArns" type:"list" required:"true"`
  8809  
  8810  	// When a response is generated, if there is more data to be listed, this parameter
  8811  	// is present in the response and contains the value to use for the nextToken
  8812  	// parameter in a subsequent pagination request. If there is no more data to
  8813  	// be listed, this parameter is set to null.
  8814  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8815  }
  8816  
  8817  // String returns the string representation.
  8818  //
  8819  // API parameter values that are decorated as "sensitive" in the API will not
  8820  // be included in the string output. The member name will be present, but the
  8821  // value will be replaced with "sensitive".
  8822  func (s ListAssessmentTemplatesOutput) String() string {
  8823  	return awsutil.Prettify(s)
  8824  }
  8825  
  8826  // GoString returns the string representation.
  8827  //
  8828  // API parameter values that are decorated as "sensitive" in the API will not
  8829  // be included in the string output. The member name will be present, but the
  8830  // value will be replaced with "sensitive".
  8831  func (s ListAssessmentTemplatesOutput) GoString() string {
  8832  	return s.String()
  8833  }
  8834  
  8835  // SetAssessmentTemplateArns sets the AssessmentTemplateArns field's value.
  8836  func (s *ListAssessmentTemplatesOutput) SetAssessmentTemplateArns(v []*string) *ListAssessmentTemplatesOutput {
  8837  	s.AssessmentTemplateArns = v
  8838  	return s
  8839  }
  8840  
  8841  // SetNextToken sets the NextToken field's value.
  8842  func (s *ListAssessmentTemplatesOutput) SetNextToken(v string) *ListAssessmentTemplatesOutput {
  8843  	s.NextToken = &v
  8844  	return s
  8845  }
  8846  
  8847  type ListEventSubscriptionsInput struct {
  8848  	_ struct{} `type:"structure"`
  8849  
  8850  	// You can use this parameter to indicate the maximum number of items you want
  8851  	// in the response. The default value is 10. The maximum value is 500.
  8852  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  8853  
  8854  	// You can use this parameter when paginating results. Set the value of this
  8855  	// parameter to null on your first call to the ListEventSubscriptions action.
  8856  	// Subsequent calls to the action fill nextToken in the request with the value
  8857  	// of NextToken from the previous response to continue listing data.
  8858  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8859  
  8860  	// The ARN of the assessment template for which you want to list the existing
  8861  	// event subscriptions.
  8862  	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string"`
  8863  }
  8864  
  8865  // String returns the string representation.
  8866  //
  8867  // API parameter values that are decorated as "sensitive" in the API will not
  8868  // be included in the string output. The member name will be present, but the
  8869  // value will be replaced with "sensitive".
  8870  func (s ListEventSubscriptionsInput) String() string {
  8871  	return awsutil.Prettify(s)
  8872  }
  8873  
  8874  // GoString returns the string representation.
  8875  //
  8876  // API parameter values that are decorated as "sensitive" in the API will not
  8877  // be included in the string output. The member name will be present, but the
  8878  // value will be replaced with "sensitive".
  8879  func (s ListEventSubscriptionsInput) GoString() string {
  8880  	return s.String()
  8881  }
  8882  
  8883  // Validate inspects the fields of the type to determine if they are valid.
  8884  func (s *ListEventSubscriptionsInput) Validate() error {
  8885  	invalidParams := request.ErrInvalidParams{Context: "ListEventSubscriptionsInput"}
  8886  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  8887  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  8888  	}
  8889  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  8890  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  8891  	}
  8892  
  8893  	if invalidParams.Len() > 0 {
  8894  		return invalidParams
  8895  	}
  8896  	return nil
  8897  }
  8898  
  8899  // SetMaxResults sets the MaxResults field's value.
  8900  func (s *ListEventSubscriptionsInput) SetMaxResults(v int64) *ListEventSubscriptionsInput {
  8901  	s.MaxResults = &v
  8902  	return s
  8903  }
  8904  
  8905  // SetNextToken sets the NextToken field's value.
  8906  func (s *ListEventSubscriptionsInput) SetNextToken(v string) *ListEventSubscriptionsInput {
  8907  	s.NextToken = &v
  8908  	return s
  8909  }
  8910  
  8911  // SetResourceArn sets the ResourceArn field's value.
  8912  func (s *ListEventSubscriptionsInput) SetResourceArn(v string) *ListEventSubscriptionsInput {
  8913  	s.ResourceArn = &v
  8914  	return s
  8915  }
  8916  
  8917  type ListEventSubscriptionsOutput struct {
  8918  	_ struct{} `type:"structure"`
  8919  
  8920  	// When a response is generated, if there is more data to be listed, this parameter
  8921  	// is present in the response and contains the value to use for the nextToken
  8922  	// parameter in a subsequent pagination request. If there is no more data to
  8923  	// be listed, this parameter is set to null.
  8924  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8925  
  8926  	// Details of the returned event subscriptions.
  8927  	//
  8928  	// Subscriptions is a required field
  8929  	Subscriptions []*Subscription `locationName:"subscriptions" type:"list" required:"true"`
  8930  }
  8931  
  8932  // String returns the string representation.
  8933  //
  8934  // API parameter values that are decorated as "sensitive" in the API will not
  8935  // be included in the string output. The member name will be present, but the
  8936  // value will be replaced with "sensitive".
  8937  func (s ListEventSubscriptionsOutput) String() string {
  8938  	return awsutil.Prettify(s)
  8939  }
  8940  
  8941  // GoString returns the string representation.
  8942  //
  8943  // API parameter values that are decorated as "sensitive" in the API will not
  8944  // be included in the string output. The member name will be present, but the
  8945  // value will be replaced with "sensitive".
  8946  func (s ListEventSubscriptionsOutput) GoString() string {
  8947  	return s.String()
  8948  }
  8949  
  8950  // SetNextToken sets the NextToken field's value.
  8951  func (s *ListEventSubscriptionsOutput) SetNextToken(v string) *ListEventSubscriptionsOutput {
  8952  	s.NextToken = &v
  8953  	return s
  8954  }
  8955  
  8956  // SetSubscriptions sets the Subscriptions field's value.
  8957  func (s *ListEventSubscriptionsOutput) SetSubscriptions(v []*Subscription) *ListEventSubscriptionsOutput {
  8958  	s.Subscriptions = v
  8959  	return s
  8960  }
  8961  
  8962  type ListExclusionsInput struct {
  8963  	_ struct{} `type:"structure"`
  8964  
  8965  	// The ARN of the assessment run that generated the exclusions that you want
  8966  	// to list.
  8967  	//
  8968  	// AssessmentRunArn is a required field
  8969  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
  8970  
  8971  	// You can use this parameter to indicate the maximum number of items you want
  8972  	// in the response. The default value is 100. The maximum value is 500.
  8973  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  8974  
  8975  	// You can use this parameter when paginating results. Set the value of this
  8976  	// parameter to null on your first call to the ListExclusionsRequest action.
  8977  	// Subsequent calls to the action fill nextToken in the request with the value
  8978  	// of nextToken from the previous response to continue listing data.
  8979  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  8980  }
  8981  
  8982  // String returns the string representation.
  8983  //
  8984  // API parameter values that are decorated as "sensitive" in the API will not
  8985  // be included in the string output. The member name will be present, but the
  8986  // value will be replaced with "sensitive".
  8987  func (s ListExclusionsInput) String() string {
  8988  	return awsutil.Prettify(s)
  8989  }
  8990  
  8991  // GoString returns the string representation.
  8992  //
  8993  // API parameter values that are decorated as "sensitive" in the API will not
  8994  // be included in the string output. The member name will be present, but the
  8995  // value will be replaced with "sensitive".
  8996  func (s ListExclusionsInput) GoString() string {
  8997  	return s.String()
  8998  }
  8999  
  9000  // Validate inspects the fields of the type to determine if they are valid.
  9001  func (s *ListExclusionsInput) Validate() error {
  9002  	invalidParams := request.ErrInvalidParams{Context: "ListExclusionsInput"}
  9003  	if s.AssessmentRunArn == nil {
  9004  		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
  9005  	}
  9006  	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
  9007  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
  9008  	}
  9009  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  9010  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  9011  	}
  9012  
  9013  	if invalidParams.Len() > 0 {
  9014  		return invalidParams
  9015  	}
  9016  	return nil
  9017  }
  9018  
  9019  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
  9020  func (s *ListExclusionsInput) SetAssessmentRunArn(v string) *ListExclusionsInput {
  9021  	s.AssessmentRunArn = &v
  9022  	return s
  9023  }
  9024  
  9025  // SetMaxResults sets the MaxResults field's value.
  9026  func (s *ListExclusionsInput) SetMaxResults(v int64) *ListExclusionsInput {
  9027  	s.MaxResults = &v
  9028  	return s
  9029  }
  9030  
  9031  // SetNextToken sets the NextToken field's value.
  9032  func (s *ListExclusionsInput) SetNextToken(v string) *ListExclusionsInput {
  9033  	s.NextToken = &v
  9034  	return s
  9035  }
  9036  
  9037  type ListExclusionsOutput struct {
  9038  	_ struct{} `type:"structure"`
  9039  
  9040  	// A list of exclusions' ARNs returned by the action.
  9041  	//
  9042  	// ExclusionArns is a required field
  9043  	ExclusionArns []*string `locationName:"exclusionArns" type:"list" required:"true"`
  9044  
  9045  	// When a response is generated, if there is more data to be listed, this parameters
  9046  	// is present in the response and contains the value to use for the nextToken
  9047  	// parameter in a subsequent pagination request. If there is no more data to
  9048  	// be listed, this parameter is set to null.
  9049  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  9050  }
  9051  
  9052  // String returns the string representation.
  9053  //
  9054  // API parameter values that are decorated as "sensitive" in the API will not
  9055  // be included in the string output. The member name will be present, but the
  9056  // value will be replaced with "sensitive".
  9057  func (s ListExclusionsOutput) String() string {
  9058  	return awsutil.Prettify(s)
  9059  }
  9060  
  9061  // GoString returns the string representation.
  9062  //
  9063  // API parameter values that are decorated as "sensitive" in the API will not
  9064  // be included in the string output. The member name will be present, but the
  9065  // value will be replaced with "sensitive".
  9066  func (s ListExclusionsOutput) GoString() string {
  9067  	return s.String()
  9068  }
  9069  
  9070  // SetExclusionArns sets the ExclusionArns field's value.
  9071  func (s *ListExclusionsOutput) SetExclusionArns(v []*string) *ListExclusionsOutput {
  9072  	s.ExclusionArns = v
  9073  	return s
  9074  }
  9075  
  9076  // SetNextToken sets the NextToken field's value.
  9077  func (s *ListExclusionsOutput) SetNextToken(v string) *ListExclusionsOutput {
  9078  	s.NextToken = &v
  9079  	return s
  9080  }
  9081  
  9082  type ListFindingsInput struct {
  9083  	_ struct{} `type:"structure"`
  9084  
  9085  	// The ARNs of the assessment runs that generate the findings that you want
  9086  	// to list.
  9087  	AssessmentRunArns []*string `locationName:"assessmentRunArns" type:"list"`
  9088  
  9089  	// You can use this parameter to specify a subset of data to be included in
  9090  	// the action's response.
  9091  	//
  9092  	// For a record to match a filter, all specified filter attributes must match.
  9093  	// When multiple values are specified for a filter attribute, any of the values
  9094  	// can match.
  9095  	Filter *FindingFilter `locationName:"filter" type:"structure"`
  9096  
  9097  	// You can use this parameter to indicate the maximum number of items you want
  9098  	// in the response. The default value is 10. The maximum value is 500.
  9099  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  9100  
  9101  	// You can use this parameter when paginating results. Set the value of this
  9102  	// parameter to null on your first call to the ListFindings action. Subsequent
  9103  	// calls to the action fill nextToken in the request with the value of NextToken
  9104  	// from the previous response to continue listing data.
  9105  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  9106  }
  9107  
  9108  // String returns the string representation.
  9109  //
  9110  // API parameter values that are decorated as "sensitive" in the API will not
  9111  // be included in the string output. The member name will be present, but the
  9112  // value will be replaced with "sensitive".
  9113  func (s ListFindingsInput) String() string {
  9114  	return awsutil.Prettify(s)
  9115  }
  9116  
  9117  // GoString returns the string representation.
  9118  //
  9119  // API parameter values that are decorated as "sensitive" in the API will not
  9120  // be included in the string output. The member name will be present, but the
  9121  // value will be replaced with "sensitive".
  9122  func (s ListFindingsInput) GoString() string {
  9123  	return s.String()
  9124  }
  9125  
  9126  // Validate inspects the fields of the type to determine if they are valid.
  9127  func (s *ListFindingsInput) Validate() error {
  9128  	invalidParams := request.ErrInvalidParams{Context: "ListFindingsInput"}
  9129  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  9130  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  9131  	}
  9132  	if s.Filter != nil {
  9133  		if err := s.Filter.Validate(); err != nil {
  9134  			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
  9135  		}
  9136  	}
  9137  
  9138  	if invalidParams.Len() > 0 {
  9139  		return invalidParams
  9140  	}
  9141  	return nil
  9142  }
  9143  
  9144  // SetAssessmentRunArns sets the AssessmentRunArns field's value.
  9145  func (s *ListFindingsInput) SetAssessmentRunArns(v []*string) *ListFindingsInput {
  9146  	s.AssessmentRunArns = v
  9147  	return s
  9148  }
  9149  
  9150  // SetFilter sets the Filter field's value.
  9151  func (s *ListFindingsInput) SetFilter(v *FindingFilter) *ListFindingsInput {
  9152  	s.Filter = v
  9153  	return s
  9154  }
  9155  
  9156  // SetMaxResults sets the MaxResults field's value.
  9157  func (s *ListFindingsInput) SetMaxResults(v int64) *ListFindingsInput {
  9158  	s.MaxResults = &v
  9159  	return s
  9160  }
  9161  
  9162  // SetNextToken sets the NextToken field's value.
  9163  func (s *ListFindingsInput) SetNextToken(v string) *ListFindingsInput {
  9164  	s.NextToken = &v
  9165  	return s
  9166  }
  9167  
  9168  type ListFindingsOutput struct {
  9169  	_ struct{} `type:"structure"`
  9170  
  9171  	// A list of ARNs that specifies the findings returned by the action.
  9172  	//
  9173  	// FindingArns is a required field
  9174  	FindingArns []*string `locationName:"findingArns" type:"list" required:"true"`
  9175  
  9176  	// When a response is generated, if there is more data to be listed, this parameter
  9177  	// is present in the response and contains the value to use for the nextToken
  9178  	// parameter in a subsequent pagination request. If there is no more data to
  9179  	// be listed, this parameter is set to null.
  9180  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  9181  }
  9182  
  9183  // String returns the string representation.
  9184  //
  9185  // API parameter values that are decorated as "sensitive" in the API will not
  9186  // be included in the string output. The member name will be present, but the
  9187  // value will be replaced with "sensitive".
  9188  func (s ListFindingsOutput) String() string {
  9189  	return awsutil.Prettify(s)
  9190  }
  9191  
  9192  // GoString returns the string representation.
  9193  //
  9194  // API parameter values that are decorated as "sensitive" in the API will not
  9195  // be included in the string output. The member name will be present, but the
  9196  // value will be replaced with "sensitive".
  9197  func (s ListFindingsOutput) GoString() string {
  9198  	return s.String()
  9199  }
  9200  
  9201  // SetFindingArns sets the FindingArns field's value.
  9202  func (s *ListFindingsOutput) SetFindingArns(v []*string) *ListFindingsOutput {
  9203  	s.FindingArns = v
  9204  	return s
  9205  }
  9206  
  9207  // SetNextToken sets the NextToken field's value.
  9208  func (s *ListFindingsOutput) SetNextToken(v string) *ListFindingsOutput {
  9209  	s.NextToken = &v
  9210  	return s
  9211  }
  9212  
  9213  type ListRulesPackagesInput struct {
  9214  	_ struct{} `type:"structure"`
  9215  
  9216  	// You can use this parameter to indicate the maximum number of items you want
  9217  	// in the response. The default value is 10. The maximum value is 500.
  9218  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  9219  
  9220  	// You can use this parameter when paginating results. Set the value of this
  9221  	// parameter to null on your first call to the ListRulesPackages action. Subsequent
  9222  	// calls to the action fill nextToken in the request with the value of NextToken
  9223  	// from the previous response to continue listing data.
  9224  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  9225  }
  9226  
  9227  // String returns the string representation.
  9228  //
  9229  // API parameter values that are decorated as "sensitive" in the API will not
  9230  // be included in the string output. The member name will be present, but the
  9231  // value will be replaced with "sensitive".
  9232  func (s ListRulesPackagesInput) String() string {
  9233  	return awsutil.Prettify(s)
  9234  }
  9235  
  9236  // GoString returns the string representation.
  9237  //
  9238  // API parameter values that are decorated as "sensitive" in the API will not
  9239  // be included in the string output. The member name will be present, but the
  9240  // value will be replaced with "sensitive".
  9241  func (s ListRulesPackagesInput) GoString() string {
  9242  	return s.String()
  9243  }
  9244  
  9245  // Validate inspects the fields of the type to determine if they are valid.
  9246  func (s *ListRulesPackagesInput) Validate() error {
  9247  	invalidParams := request.ErrInvalidParams{Context: "ListRulesPackagesInput"}
  9248  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  9249  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  9250  	}
  9251  
  9252  	if invalidParams.Len() > 0 {
  9253  		return invalidParams
  9254  	}
  9255  	return nil
  9256  }
  9257  
  9258  // SetMaxResults sets the MaxResults field's value.
  9259  func (s *ListRulesPackagesInput) SetMaxResults(v int64) *ListRulesPackagesInput {
  9260  	s.MaxResults = &v
  9261  	return s
  9262  }
  9263  
  9264  // SetNextToken sets the NextToken field's value.
  9265  func (s *ListRulesPackagesInput) SetNextToken(v string) *ListRulesPackagesInput {
  9266  	s.NextToken = &v
  9267  	return s
  9268  }
  9269  
  9270  type ListRulesPackagesOutput struct {
  9271  	_ struct{} `type:"structure"`
  9272  
  9273  	// When a response is generated, if there is more data to be listed, this parameter
  9274  	// is present in the response and contains the value to use for the nextToken
  9275  	// parameter in a subsequent pagination request. If there is no more data to
  9276  	// be listed, this parameter is set to null.
  9277  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  9278  
  9279  	// The list of ARNs that specifies the rules packages returned by the action.
  9280  	//
  9281  	// RulesPackageArns is a required field
  9282  	RulesPackageArns []*string `locationName:"rulesPackageArns" type:"list" required:"true"`
  9283  }
  9284  
  9285  // String returns the string representation.
  9286  //
  9287  // API parameter values that are decorated as "sensitive" in the API will not
  9288  // be included in the string output. The member name will be present, but the
  9289  // value will be replaced with "sensitive".
  9290  func (s ListRulesPackagesOutput) String() string {
  9291  	return awsutil.Prettify(s)
  9292  }
  9293  
  9294  // GoString returns the string representation.
  9295  //
  9296  // API parameter values that are decorated as "sensitive" in the API will not
  9297  // be included in the string output. The member name will be present, but the
  9298  // value will be replaced with "sensitive".
  9299  func (s ListRulesPackagesOutput) GoString() string {
  9300  	return s.String()
  9301  }
  9302  
  9303  // SetNextToken sets the NextToken field's value.
  9304  func (s *ListRulesPackagesOutput) SetNextToken(v string) *ListRulesPackagesOutput {
  9305  	s.NextToken = &v
  9306  	return s
  9307  }
  9308  
  9309  // SetRulesPackageArns sets the RulesPackageArns field's value.
  9310  func (s *ListRulesPackagesOutput) SetRulesPackageArns(v []*string) *ListRulesPackagesOutput {
  9311  	s.RulesPackageArns = v
  9312  	return s
  9313  }
  9314  
  9315  type ListTagsForResourceInput struct {
  9316  	_ struct{} `type:"structure"`
  9317  
  9318  	// The ARN that specifies the assessment template whose tags you want to list.
  9319  	//
  9320  	// ResourceArn is a required field
  9321  	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
  9322  }
  9323  
  9324  // String returns the string representation.
  9325  //
  9326  // API parameter values that are decorated as "sensitive" in the API will not
  9327  // be included in the string output. The member name will be present, but the
  9328  // value will be replaced with "sensitive".
  9329  func (s ListTagsForResourceInput) String() string {
  9330  	return awsutil.Prettify(s)
  9331  }
  9332  
  9333  // GoString returns the string representation.
  9334  //
  9335  // API parameter values that are decorated as "sensitive" in the API will not
  9336  // be included in the string output. The member name will be present, but the
  9337  // value will be replaced with "sensitive".
  9338  func (s ListTagsForResourceInput) GoString() string {
  9339  	return s.String()
  9340  }
  9341  
  9342  // Validate inspects the fields of the type to determine if they are valid.
  9343  func (s *ListTagsForResourceInput) Validate() error {
  9344  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
  9345  	if s.ResourceArn == nil {
  9346  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  9347  	}
  9348  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  9349  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  9350  	}
  9351  
  9352  	if invalidParams.Len() > 0 {
  9353  		return invalidParams
  9354  	}
  9355  	return nil
  9356  }
  9357  
  9358  // SetResourceArn sets the ResourceArn field's value.
  9359  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
  9360  	s.ResourceArn = &v
  9361  	return s
  9362  }
  9363  
  9364  type ListTagsForResourceOutput struct {
  9365  	_ struct{} `type:"structure"`
  9366  
  9367  	// A collection of key and value pairs.
  9368  	//
  9369  	// Tags is a required field
  9370  	Tags []*Tag `locationName:"tags" type:"list" required:"true"`
  9371  }
  9372  
  9373  // String returns the string representation.
  9374  //
  9375  // API parameter values that are decorated as "sensitive" in the API will not
  9376  // be included in the string output. The member name will be present, but the
  9377  // value will be replaced with "sensitive".
  9378  func (s ListTagsForResourceOutput) String() string {
  9379  	return awsutil.Prettify(s)
  9380  }
  9381  
  9382  // GoString returns the string representation.
  9383  //
  9384  // API parameter values that are decorated as "sensitive" in the API will not
  9385  // be included in the string output. The member name will be present, but the
  9386  // value will be replaced with "sensitive".
  9387  func (s ListTagsForResourceOutput) GoString() string {
  9388  	return s.String()
  9389  }
  9390  
  9391  // SetTags sets the Tags field's value.
  9392  func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
  9393  	s.Tags = v
  9394  	return s
  9395  }
  9396  
  9397  // Contains information about the network interfaces interacting with an EC2
  9398  // instance. This data type is used as one of the elements of the AssetAttributes
  9399  // data type.
  9400  type NetworkInterface struct {
  9401  	_ struct{} `type:"structure"`
  9402  
  9403  	// The IP addresses associated with the network interface.
  9404  	Ipv6Addresses []*string `locationName:"ipv6Addresses" type:"list"`
  9405  
  9406  	// The ID of the network interface.
  9407  	NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"`
  9408  
  9409  	// The name of a private DNS associated with the network interface.
  9410  	PrivateDnsName *string `locationName:"privateDnsName" type:"string"`
  9411  
  9412  	// The private IP address associated with the network interface.
  9413  	PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"`
  9414  
  9415  	// A list of the private IP addresses associated with the network interface.
  9416  	// Includes the privateDnsName and privateIpAddress.
  9417  	PrivateIpAddresses []*PrivateIp `locationName:"privateIpAddresses" type:"list"`
  9418  
  9419  	// The name of a public DNS associated with the network interface.
  9420  	PublicDnsName *string `locationName:"publicDnsName" type:"string"`
  9421  
  9422  	// The public IP address from which the network interface is reachable.
  9423  	PublicIp *string `locationName:"publicIp" type:"string"`
  9424  
  9425  	// A list of the security groups associated with the network interface. Includes
  9426  	// the groupId and groupName.
  9427  	SecurityGroups []*SecurityGroup `locationName:"securityGroups" type:"list"`
  9428  
  9429  	// The ID of a subnet associated with the network interface.
  9430  	SubnetId *string `locationName:"subnetId" type:"string"`
  9431  
  9432  	// The ID of a VPC associated with the network interface.
  9433  	VpcId *string `locationName:"vpcId" type:"string"`
  9434  }
  9435  
  9436  // String returns the string representation.
  9437  //
  9438  // API parameter values that are decorated as "sensitive" in the API will not
  9439  // be included in the string output. The member name will be present, but the
  9440  // value will be replaced with "sensitive".
  9441  func (s NetworkInterface) String() string {
  9442  	return awsutil.Prettify(s)
  9443  }
  9444  
  9445  // GoString returns the string representation.
  9446  //
  9447  // API parameter values that are decorated as "sensitive" in the API will not
  9448  // be included in the string output. The member name will be present, but the
  9449  // value will be replaced with "sensitive".
  9450  func (s NetworkInterface) GoString() string {
  9451  	return s.String()
  9452  }
  9453  
  9454  // SetIpv6Addresses sets the Ipv6Addresses field's value.
  9455  func (s *NetworkInterface) SetIpv6Addresses(v []*string) *NetworkInterface {
  9456  	s.Ipv6Addresses = v
  9457  	return s
  9458  }
  9459  
  9460  // SetNetworkInterfaceId sets the NetworkInterfaceId field's value.
  9461  func (s *NetworkInterface) SetNetworkInterfaceId(v string) *NetworkInterface {
  9462  	s.NetworkInterfaceId = &v
  9463  	return s
  9464  }
  9465  
  9466  // SetPrivateDnsName sets the PrivateDnsName field's value.
  9467  func (s *NetworkInterface) SetPrivateDnsName(v string) *NetworkInterface {
  9468  	s.PrivateDnsName = &v
  9469  	return s
  9470  }
  9471  
  9472  // SetPrivateIpAddress sets the PrivateIpAddress field's value.
  9473  func (s *NetworkInterface) SetPrivateIpAddress(v string) *NetworkInterface {
  9474  	s.PrivateIpAddress = &v
  9475  	return s
  9476  }
  9477  
  9478  // SetPrivateIpAddresses sets the PrivateIpAddresses field's value.
  9479  func (s *NetworkInterface) SetPrivateIpAddresses(v []*PrivateIp) *NetworkInterface {
  9480  	s.PrivateIpAddresses = v
  9481  	return s
  9482  }
  9483  
  9484  // SetPublicDnsName sets the PublicDnsName field's value.
  9485  func (s *NetworkInterface) SetPublicDnsName(v string) *NetworkInterface {
  9486  	s.PublicDnsName = &v
  9487  	return s
  9488  }
  9489  
  9490  // SetPublicIp sets the PublicIp field's value.
  9491  func (s *NetworkInterface) SetPublicIp(v string) *NetworkInterface {
  9492  	s.PublicIp = &v
  9493  	return s
  9494  }
  9495  
  9496  // SetSecurityGroups sets the SecurityGroups field's value.
  9497  func (s *NetworkInterface) SetSecurityGroups(v []*SecurityGroup) *NetworkInterface {
  9498  	s.SecurityGroups = v
  9499  	return s
  9500  }
  9501  
  9502  // SetSubnetId sets the SubnetId field's value.
  9503  func (s *NetworkInterface) SetSubnetId(v string) *NetworkInterface {
  9504  	s.SubnetId = &v
  9505  	return s
  9506  }
  9507  
  9508  // SetVpcId sets the VpcId field's value.
  9509  func (s *NetworkInterface) SetVpcId(v string) *NetworkInterface {
  9510  	s.VpcId = &v
  9511  	return s
  9512  }
  9513  
  9514  // The request was rejected because it referenced an entity that does not exist.
  9515  // The error code describes the entity.
  9516  type NoSuchEntityException struct {
  9517  	_            struct{}                  `type:"structure"`
  9518  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9519  
  9520  	// You can immediately retry your request.
  9521  	//
  9522  	// CanRetry is a required field
  9523  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
  9524  
  9525  	// Code that indicates the type of error that is generated.
  9526  	//
  9527  	// ErrorCode is a required field
  9528  	ErrorCode *string `locationName:"errorCode" type:"string" required:"true" enum:"NoSuchEntityErrorCode"`
  9529  
  9530  	// Details of the exception error.
  9531  	Message_ *string `locationName:"message" type:"string"`
  9532  }
  9533  
  9534  // String returns the string representation.
  9535  //
  9536  // API parameter values that are decorated as "sensitive" in the API will not
  9537  // be included in the string output. The member name will be present, but the
  9538  // value will be replaced with "sensitive".
  9539  func (s NoSuchEntityException) String() string {
  9540  	return awsutil.Prettify(s)
  9541  }
  9542  
  9543  // GoString returns the string representation.
  9544  //
  9545  // API parameter values that are decorated as "sensitive" in the API will not
  9546  // be included in the string output. The member name will be present, but the
  9547  // value will be replaced with "sensitive".
  9548  func (s NoSuchEntityException) GoString() string {
  9549  	return s.String()
  9550  }
  9551  
  9552  func newErrorNoSuchEntityException(v protocol.ResponseMetadata) error {
  9553  	return &NoSuchEntityException{
  9554  		RespMetadata: v,
  9555  	}
  9556  }
  9557  
  9558  // Code returns the exception type name.
  9559  func (s *NoSuchEntityException) Code() string {
  9560  	return "NoSuchEntityException"
  9561  }
  9562  
  9563  // Message returns the exception's message.
  9564  func (s *NoSuchEntityException) Message() string {
  9565  	if s.Message_ != nil {
  9566  		return *s.Message_
  9567  	}
  9568  	return ""
  9569  }
  9570  
  9571  // OrigErr always returns nil, satisfies awserr.Error interface.
  9572  func (s *NoSuchEntityException) OrigErr() error {
  9573  	return nil
  9574  }
  9575  
  9576  func (s *NoSuchEntityException) Error() string {
  9577  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  9578  }
  9579  
  9580  // Status code returns the HTTP status code for the request's response error.
  9581  func (s *NoSuchEntityException) StatusCode() int {
  9582  	return s.RespMetadata.StatusCode
  9583  }
  9584  
  9585  // RequestID returns the service's response RequestID for request.
  9586  func (s *NoSuchEntityException) RequestID() string {
  9587  	return s.RespMetadata.RequestID
  9588  }
  9589  
  9590  type PreviewAgentsInput struct {
  9591  	_ struct{} `type:"structure"`
  9592  
  9593  	// You can use this parameter to indicate the maximum number of items you want
  9594  	// in the response. The default value is 10. The maximum value is 500.
  9595  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  9596  
  9597  	// You can use this parameter when paginating results. Set the value of this
  9598  	// parameter to null on your first call to the PreviewAgents action. Subsequent
  9599  	// calls to the action fill nextToken in the request with the value of NextToken
  9600  	// from the previous response to continue listing data.
  9601  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  9602  
  9603  	// The ARN of the assessment target whose agents you want to preview.
  9604  	//
  9605  	// PreviewAgentsArn is a required field
  9606  	PreviewAgentsArn *string `locationName:"previewAgentsArn" min:"1" type:"string" required:"true"`
  9607  }
  9608  
  9609  // String returns the string representation.
  9610  //
  9611  // API parameter values that are decorated as "sensitive" in the API will not
  9612  // be included in the string output. The member name will be present, but the
  9613  // value will be replaced with "sensitive".
  9614  func (s PreviewAgentsInput) String() string {
  9615  	return awsutil.Prettify(s)
  9616  }
  9617  
  9618  // GoString returns the string representation.
  9619  //
  9620  // API parameter values that are decorated as "sensitive" in the API will not
  9621  // be included in the string output. The member name will be present, but the
  9622  // value will be replaced with "sensitive".
  9623  func (s PreviewAgentsInput) GoString() string {
  9624  	return s.String()
  9625  }
  9626  
  9627  // Validate inspects the fields of the type to determine if they are valid.
  9628  func (s *PreviewAgentsInput) Validate() error {
  9629  	invalidParams := request.ErrInvalidParams{Context: "PreviewAgentsInput"}
  9630  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  9631  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  9632  	}
  9633  	if s.PreviewAgentsArn == nil {
  9634  		invalidParams.Add(request.NewErrParamRequired("PreviewAgentsArn"))
  9635  	}
  9636  	if s.PreviewAgentsArn != nil && len(*s.PreviewAgentsArn) < 1 {
  9637  		invalidParams.Add(request.NewErrParamMinLen("PreviewAgentsArn", 1))
  9638  	}
  9639  
  9640  	if invalidParams.Len() > 0 {
  9641  		return invalidParams
  9642  	}
  9643  	return nil
  9644  }
  9645  
  9646  // SetMaxResults sets the MaxResults field's value.
  9647  func (s *PreviewAgentsInput) SetMaxResults(v int64) *PreviewAgentsInput {
  9648  	s.MaxResults = &v
  9649  	return s
  9650  }
  9651  
  9652  // SetNextToken sets the NextToken field's value.
  9653  func (s *PreviewAgentsInput) SetNextToken(v string) *PreviewAgentsInput {
  9654  	s.NextToken = &v
  9655  	return s
  9656  }
  9657  
  9658  // SetPreviewAgentsArn sets the PreviewAgentsArn field's value.
  9659  func (s *PreviewAgentsInput) SetPreviewAgentsArn(v string) *PreviewAgentsInput {
  9660  	s.PreviewAgentsArn = &v
  9661  	return s
  9662  }
  9663  
  9664  type PreviewAgentsOutput struct {
  9665  	_ struct{} `type:"structure"`
  9666  
  9667  	// The resulting list of agents.
  9668  	//
  9669  	// AgentPreviews is a required field
  9670  	AgentPreviews []*AgentPreview `locationName:"agentPreviews" type:"list" required:"true"`
  9671  
  9672  	// When a response is generated, if there is more data to be listed, this parameter
  9673  	// is present in the response and contains the value to use for the nextToken
  9674  	// parameter in a subsequent pagination request. If there is no more data to
  9675  	// be listed, this parameter is set to null.
  9676  	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
  9677  }
  9678  
  9679  // String returns the string representation.
  9680  //
  9681  // API parameter values that are decorated as "sensitive" in the API will not
  9682  // be included in the string output. The member name will be present, but the
  9683  // value will be replaced with "sensitive".
  9684  func (s PreviewAgentsOutput) String() string {
  9685  	return awsutil.Prettify(s)
  9686  }
  9687  
  9688  // GoString returns the string representation.
  9689  //
  9690  // API parameter values that are decorated as "sensitive" in the API will not
  9691  // be included in the string output. The member name will be present, but the
  9692  // value will be replaced with "sensitive".
  9693  func (s PreviewAgentsOutput) GoString() string {
  9694  	return s.String()
  9695  }
  9696  
  9697  // SetAgentPreviews sets the AgentPreviews field's value.
  9698  func (s *PreviewAgentsOutput) SetAgentPreviews(v []*AgentPreview) *PreviewAgentsOutput {
  9699  	s.AgentPreviews = v
  9700  	return s
  9701  }
  9702  
  9703  // SetNextToken sets the NextToken field's value.
  9704  func (s *PreviewAgentsOutput) SetNextToken(v string) *PreviewAgentsOutput {
  9705  	s.NextToken = &v
  9706  	return s
  9707  }
  9708  
  9709  // The request is rejected. The specified assessment template is currently generating
  9710  // an exclusions preview.
  9711  type PreviewGenerationInProgressException struct {
  9712  	_            struct{}                  `type:"structure"`
  9713  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9714  
  9715  	Message_ *string `locationName:"message" type:"string"`
  9716  }
  9717  
  9718  // String returns the string representation.
  9719  //
  9720  // API parameter values that are decorated as "sensitive" in the API will not
  9721  // be included in the string output. The member name will be present, but the
  9722  // value will be replaced with "sensitive".
  9723  func (s PreviewGenerationInProgressException) String() string {
  9724  	return awsutil.Prettify(s)
  9725  }
  9726  
  9727  // GoString returns the string representation.
  9728  //
  9729  // API parameter values that are decorated as "sensitive" in the API will not
  9730  // be included in the string output. The member name will be present, but the
  9731  // value will be replaced with "sensitive".
  9732  func (s PreviewGenerationInProgressException) GoString() string {
  9733  	return s.String()
  9734  }
  9735  
  9736  func newErrorPreviewGenerationInProgressException(v protocol.ResponseMetadata) error {
  9737  	return &PreviewGenerationInProgressException{
  9738  		RespMetadata: v,
  9739  	}
  9740  }
  9741  
  9742  // Code returns the exception type name.
  9743  func (s *PreviewGenerationInProgressException) Code() string {
  9744  	return "PreviewGenerationInProgressException"
  9745  }
  9746  
  9747  // Message returns the exception's message.
  9748  func (s *PreviewGenerationInProgressException) Message() string {
  9749  	if s.Message_ != nil {
  9750  		return *s.Message_
  9751  	}
  9752  	return ""
  9753  }
  9754  
  9755  // OrigErr always returns nil, satisfies awserr.Error interface.
  9756  func (s *PreviewGenerationInProgressException) OrigErr() error {
  9757  	return nil
  9758  }
  9759  
  9760  func (s *PreviewGenerationInProgressException) Error() string {
  9761  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9762  }
  9763  
  9764  // Status code returns the HTTP status code for the request's response error.
  9765  func (s *PreviewGenerationInProgressException) StatusCode() int {
  9766  	return s.RespMetadata.StatusCode
  9767  }
  9768  
  9769  // RequestID returns the service's response RequestID for request.
  9770  func (s *PreviewGenerationInProgressException) RequestID() string {
  9771  	return s.RespMetadata.RequestID
  9772  }
  9773  
  9774  // Contains information about a private IP address associated with a network
  9775  // interface. This data type is used as a response element in the DescribeFindings
  9776  // action.
  9777  type PrivateIp struct {
  9778  	_ struct{} `type:"structure"`
  9779  
  9780  	// The DNS name of the private IP address.
  9781  	PrivateDnsName *string `locationName:"privateDnsName" type:"string"`
  9782  
  9783  	// The full IP address of the network inteface.
  9784  	PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"`
  9785  }
  9786  
  9787  // String returns the string representation.
  9788  //
  9789  // API parameter values that are decorated as "sensitive" in the API will not
  9790  // be included in the string output. The member name will be present, but the
  9791  // value will be replaced with "sensitive".
  9792  func (s PrivateIp) String() string {
  9793  	return awsutil.Prettify(s)
  9794  }
  9795  
  9796  // GoString returns the string representation.
  9797  //
  9798  // API parameter values that are decorated as "sensitive" in the API will not
  9799  // be included in the string output. The member name will be present, but the
  9800  // value will be replaced with "sensitive".
  9801  func (s PrivateIp) GoString() string {
  9802  	return s.String()
  9803  }
  9804  
  9805  // SetPrivateDnsName sets the PrivateDnsName field's value.
  9806  func (s *PrivateIp) SetPrivateDnsName(v string) *PrivateIp {
  9807  	s.PrivateDnsName = &v
  9808  	return s
  9809  }
  9810  
  9811  // SetPrivateIpAddress sets the PrivateIpAddress field's value.
  9812  func (s *PrivateIp) SetPrivateIpAddress(v string) *PrivateIp {
  9813  	s.PrivateIpAddress = &v
  9814  	return s
  9815  }
  9816  
  9817  type RegisterCrossAccountAccessRoleInput struct {
  9818  	_ struct{} `type:"structure"`
  9819  
  9820  	// The ARN of the IAM role that grants Amazon Inspector access to AWS Services
  9821  	// needed to perform security assessments.
  9822  	//
  9823  	// RoleArn is a required field
  9824  	RoleArn *string `locationName:"roleArn" min:"1" type:"string" required:"true"`
  9825  }
  9826  
  9827  // String returns the string representation.
  9828  //
  9829  // API parameter values that are decorated as "sensitive" in the API will not
  9830  // be included in the string output. The member name will be present, but the
  9831  // value will be replaced with "sensitive".
  9832  func (s RegisterCrossAccountAccessRoleInput) String() string {
  9833  	return awsutil.Prettify(s)
  9834  }
  9835  
  9836  // GoString returns the string representation.
  9837  //
  9838  // API parameter values that are decorated as "sensitive" in the API will not
  9839  // be included in the string output. The member name will be present, but the
  9840  // value will be replaced with "sensitive".
  9841  func (s RegisterCrossAccountAccessRoleInput) GoString() string {
  9842  	return s.String()
  9843  }
  9844  
  9845  // Validate inspects the fields of the type to determine if they are valid.
  9846  func (s *RegisterCrossAccountAccessRoleInput) Validate() error {
  9847  	invalidParams := request.ErrInvalidParams{Context: "RegisterCrossAccountAccessRoleInput"}
  9848  	if s.RoleArn == nil {
  9849  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  9850  	}
  9851  	if s.RoleArn != nil && len(*s.RoleArn) < 1 {
  9852  		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 1))
  9853  	}
  9854  
  9855  	if invalidParams.Len() > 0 {
  9856  		return invalidParams
  9857  	}
  9858  	return nil
  9859  }
  9860  
  9861  // SetRoleArn sets the RoleArn field's value.
  9862  func (s *RegisterCrossAccountAccessRoleInput) SetRoleArn(v string) *RegisterCrossAccountAccessRoleInput {
  9863  	s.RoleArn = &v
  9864  	return s
  9865  }
  9866  
  9867  type RegisterCrossAccountAccessRoleOutput struct {
  9868  	_ struct{} `type:"structure"`
  9869  }
  9870  
  9871  // String returns the string representation.
  9872  //
  9873  // API parameter values that are decorated as "sensitive" in the API will not
  9874  // be included in the string output. The member name will be present, but the
  9875  // value will be replaced with "sensitive".
  9876  func (s RegisterCrossAccountAccessRoleOutput) String() string {
  9877  	return awsutil.Prettify(s)
  9878  }
  9879  
  9880  // GoString returns the string representation.
  9881  //
  9882  // API parameter values that are decorated as "sensitive" in the API will not
  9883  // be included in the string output. The member name will be present, but the
  9884  // value will be replaced with "sensitive".
  9885  func (s RegisterCrossAccountAccessRoleOutput) GoString() string {
  9886  	return s.String()
  9887  }
  9888  
  9889  type RemoveAttributesFromFindingsInput struct {
  9890  	_ struct{} `type:"structure"`
  9891  
  9892  	// The array of attribute keys that you want to remove from specified findings.
  9893  	//
  9894  	// AttributeKeys is a required field
  9895  	AttributeKeys []*string `locationName:"attributeKeys" type:"list" required:"true"`
  9896  
  9897  	// The ARNs that specify the findings that you want to remove attributes from.
  9898  	//
  9899  	// FindingArns is a required field
  9900  	FindingArns []*string `locationName:"findingArns" min:"1" type:"list" required:"true"`
  9901  }
  9902  
  9903  // String returns the string representation.
  9904  //
  9905  // API parameter values that are decorated as "sensitive" in the API will not
  9906  // be included in the string output. The member name will be present, but the
  9907  // value will be replaced with "sensitive".
  9908  func (s RemoveAttributesFromFindingsInput) String() string {
  9909  	return awsutil.Prettify(s)
  9910  }
  9911  
  9912  // GoString returns the string representation.
  9913  //
  9914  // API parameter values that are decorated as "sensitive" in the API will not
  9915  // be included in the string output. The member name will be present, but the
  9916  // value will be replaced with "sensitive".
  9917  func (s RemoveAttributesFromFindingsInput) GoString() string {
  9918  	return s.String()
  9919  }
  9920  
  9921  // Validate inspects the fields of the type to determine if they are valid.
  9922  func (s *RemoveAttributesFromFindingsInput) Validate() error {
  9923  	invalidParams := request.ErrInvalidParams{Context: "RemoveAttributesFromFindingsInput"}
  9924  	if s.AttributeKeys == nil {
  9925  		invalidParams.Add(request.NewErrParamRequired("AttributeKeys"))
  9926  	}
  9927  	if s.FindingArns == nil {
  9928  		invalidParams.Add(request.NewErrParamRequired("FindingArns"))
  9929  	}
  9930  	if s.FindingArns != nil && len(s.FindingArns) < 1 {
  9931  		invalidParams.Add(request.NewErrParamMinLen("FindingArns", 1))
  9932  	}
  9933  
  9934  	if invalidParams.Len() > 0 {
  9935  		return invalidParams
  9936  	}
  9937  	return nil
  9938  }
  9939  
  9940  // SetAttributeKeys sets the AttributeKeys field's value.
  9941  func (s *RemoveAttributesFromFindingsInput) SetAttributeKeys(v []*string) *RemoveAttributesFromFindingsInput {
  9942  	s.AttributeKeys = v
  9943  	return s
  9944  }
  9945  
  9946  // SetFindingArns sets the FindingArns field's value.
  9947  func (s *RemoveAttributesFromFindingsInput) SetFindingArns(v []*string) *RemoveAttributesFromFindingsInput {
  9948  	s.FindingArns = v
  9949  	return s
  9950  }
  9951  
  9952  type RemoveAttributesFromFindingsOutput struct {
  9953  	_ struct{} `type:"structure"`
  9954  
  9955  	// Attributes details that cannot be described. An error code is provided for
  9956  	// each failed item.
  9957  	//
  9958  	// FailedItems is a required field
  9959  	FailedItems map[string]*FailedItemDetails `locationName:"failedItems" type:"map" required:"true"`
  9960  }
  9961  
  9962  // String returns the string representation.
  9963  //
  9964  // API parameter values that are decorated as "sensitive" in the API will not
  9965  // be included in the string output. The member name will be present, but the
  9966  // value will be replaced with "sensitive".
  9967  func (s RemoveAttributesFromFindingsOutput) String() string {
  9968  	return awsutil.Prettify(s)
  9969  }
  9970  
  9971  // GoString returns the string representation.
  9972  //
  9973  // API parameter values that are decorated as "sensitive" in the API will not
  9974  // be included in the string output. The member name will be present, but the
  9975  // value will be replaced with "sensitive".
  9976  func (s RemoveAttributesFromFindingsOutput) GoString() string {
  9977  	return s.String()
  9978  }
  9979  
  9980  // SetFailedItems sets the FailedItems field's value.
  9981  func (s *RemoveAttributesFromFindingsOutput) SetFailedItems(v map[string]*FailedItemDetails) *RemoveAttributesFromFindingsOutput {
  9982  	s.FailedItems = v
  9983  	return s
  9984  }
  9985  
  9986  // Contains information about a resource group. The resource group defines a
  9987  // set of tags that, when queried, identify the AWS resources that make up the
  9988  // assessment target. This data type is used as the response element in the
  9989  // DescribeResourceGroups action.
  9990  type ResourceGroup struct {
  9991  	_ struct{} `type:"structure"`
  9992  
  9993  	// The ARN of the resource group.
  9994  	//
  9995  	// Arn is a required field
  9996  	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
  9997  
  9998  	// The time at which resource group is created.
  9999  	//
 10000  	// CreatedAt is a required field
 10001  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" required:"true"`
 10002  
 10003  	// The tags (key and value pairs) of the resource group. This data type property
 10004  	// is used in the CreateResourceGroup action.
 10005  	//
 10006  	// Tags is a required field
 10007  	Tags []*ResourceGroupTag `locationName:"tags" min:"1" type:"list" required:"true"`
 10008  }
 10009  
 10010  // String returns the string representation.
 10011  //
 10012  // API parameter values that are decorated as "sensitive" in the API will not
 10013  // be included in the string output. The member name will be present, but the
 10014  // value will be replaced with "sensitive".
 10015  func (s ResourceGroup) String() string {
 10016  	return awsutil.Prettify(s)
 10017  }
 10018  
 10019  // GoString returns the string representation.
 10020  //
 10021  // API parameter values that are decorated as "sensitive" in the API will not
 10022  // be included in the string output. The member name will be present, but the
 10023  // value will be replaced with "sensitive".
 10024  func (s ResourceGroup) GoString() string {
 10025  	return s.String()
 10026  }
 10027  
 10028  // SetArn sets the Arn field's value.
 10029  func (s *ResourceGroup) SetArn(v string) *ResourceGroup {
 10030  	s.Arn = &v
 10031  	return s
 10032  }
 10033  
 10034  // SetCreatedAt sets the CreatedAt field's value.
 10035  func (s *ResourceGroup) SetCreatedAt(v time.Time) *ResourceGroup {
 10036  	s.CreatedAt = &v
 10037  	return s
 10038  }
 10039  
 10040  // SetTags sets the Tags field's value.
 10041  func (s *ResourceGroup) SetTags(v []*ResourceGroupTag) *ResourceGroup {
 10042  	s.Tags = v
 10043  	return s
 10044  }
 10045  
 10046  // This data type is used as one of the elements of the ResourceGroup data type.
 10047  type ResourceGroupTag struct {
 10048  	_ struct{} `type:"structure"`
 10049  
 10050  	// A tag key.
 10051  	//
 10052  	// Key is a required field
 10053  	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
 10054  
 10055  	// The value assigned to a tag key.
 10056  	Value *string `locationName:"value" min:"1" type:"string"`
 10057  }
 10058  
 10059  // String returns the string representation.
 10060  //
 10061  // API parameter values that are decorated as "sensitive" in the API will not
 10062  // be included in the string output. The member name will be present, but the
 10063  // value will be replaced with "sensitive".
 10064  func (s ResourceGroupTag) String() string {
 10065  	return awsutil.Prettify(s)
 10066  }
 10067  
 10068  // GoString returns the string representation.
 10069  //
 10070  // API parameter values that are decorated as "sensitive" in the API will not
 10071  // be included in the string output. The member name will be present, but the
 10072  // value will be replaced with "sensitive".
 10073  func (s ResourceGroupTag) GoString() string {
 10074  	return s.String()
 10075  }
 10076  
 10077  // Validate inspects the fields of the type to determine if they are valid.
 10078  func (s *ResourceGroupTag) Validate() error {
 10079  	invalidParams := request.ErrInvalidParams{Context: "ResourceGroupTag"}
 10080  	if s.Key == nil {
 10081  		invalidParams.Add(request.NewErrParamRequired("Key"))
 10082  	}
 10083  	if s.Key != nil && len(*s.Key) < 1 {
 10084  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 10085  	}
 10086  	if s.Value != nil && len(*s.Value) < 1 {
 10087  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 10088  	}
 10089  
 10090  	if invalidParams.Len() > 0 {
 10091  		return invalidParams
 10092  	}
 10093  	return nil
 10094  }
 10095  
 10096  // SetKey sets the Key field's value.
 10097  func (s *ResourceGroupTag) SetKey(v string) *ResourceGroupTag {
 10098  	s.Key = &v
 10099  	return s
 10100  }
 10101  
 10102  // SetValue sets the Value field's value.
 10103  func (s *ResourceGroupTag) SetValue(v string) *ResourceGroupTag {
 10104  	s.Value = &v
 10105  	return s
 10106  }
 10107  
 10108  // Contains information about an Amazon Inspector rules package. This data type
 10109  // is used as the response element in the DescribeRulesPackages action.
 10110  type RulesPackage struct {
 10111  	_ struct{} `type:"structure"`
 10112  
 10113  	// The ARN of the rules package.
 10114  	//
 10115  	// Arn is a required field
 10116  	Arn *string `locationName:"arn" min:"1" type:"string" required:"true"`
 10117  
 10118  	// The description of the rules package.
 10119  	Description *string `locationName:"description" type:"string"`
 10120  
 10121  	// The name of the rules package.
 10122  	//
 10123  	// Name is a required field
 10124  	Name *string `locationName:"name" type:"string" required:"true"`
 10125  
 10126  	// The provider of the rules package.
 10127  	//
 10128  	// Provider is a required field
 10129  	Provider *string `locationName:"provider" type:"string" required:"true"`
 10130  
 10131  	// The version ID of the rules package.
 10132  	//
 10133  	// Version is a required field
 10134  	Version *string `locationName:"version" type:"string" required:"true"`
 10135  }
 10136  
 10137  // String returns the string representation.
 10138  //
 10139  // API parameter values that are decorated as "sensitive" in the API will not
 10140  // be included in the string output. The member name will be present, but the
 10141  // value will be replaced with "sensitive".
 10142  func (s RulesPackage) String() string {
 10143  	return awsutil.Prettify(s)
 10144  }
 10145  
 10146  // GoString returns the string representation.
 10147  //
 10148  // API parameter values that are decorated as "sensitive" in the API will not
 10149  // be included in the string output. The member name will be present, but the
 10150  // value will be replaced with "sensitive".
 10151  func (s RulesPackage) GoString() string {
 10152  	return s.String()
 10153  }
 10154  
 10155  // SetArn sets the Arn field's value.
 10156  func (s *RulesPackage) SetArn(v string) *RulesPackage {
 10157  	s.Arn = &v
 10158  	return s
 10159  }
 10160  
 10161  // SetDescription sets the Description field's value.
 10162  func (s *RulesPackage) SetDescription(v string) *RulesPackage {
 10163  	s.Description = &v
 10164  	return s
 10165  }
 10166  
 10167  // SetName sets the Name field's value.
 10168  func (s *RulesPackage) SetName(v string) *RulesPackage {
 10169  	s.Name = &v
 10170  	return s
 10171  }
 10172  
 10173  // SetProvider sets the Provider field's value.
 10174  func (s *RulesPackage) SetProvider(v string) *RulesPackage {
 10175  	s.Provider = &v
 10176  	return s
 10177  }
 10178  
 10179  // SetVersion sets the Version field's value.
 10180  func (s *RulesPackage) SetVersion(v string) *RulesPackage {
 10181  	s.Version = &v
 10182  	return s
 10183  }
 10184  
 10185  // This data type contains key-value pairs that identify various Amazon resources.
 10186  type Scope struct {
 10187  	_ struct{} `type:"structure"`
 10188  
 10189  	// The type of the scope.
 10190  	Key *string `locationName:"key" type:"string" enum:"ScopeType"`
 10191  
 10192  	// The resource identifier for the specified scope type.
 10193  	Value *string `locationName:"value" type:"string"`
 10194  }
 10195  
 10196  // String returns the string representation.
 10197  //
 10198  // API parameter values that are decorated as "sensitive" in the API will not
 10199  // be included in the string output. The member name will be present, but the
 10200  // value will be replaced with "sensitive".
 10201  func (s Scope) String() string {
 10202  	return awsutil.Prettify(s)
 10203  }
 10204  
 10205  // GoString returns the string representation.
 10206  //
 10207  // API parameter values that are decorated as "sensitive" in the API will not
 10208  // be included in the string output. The member name will be present, but the
 10209  // value will be replaced with "sensitive".
 10210  func (s Scope) GoString() string {
 10211  	return s.String()
 10212  }
 10213  
 10214  // SetKey sets the Key field's value.
 10215  func (s *Scope) SetKey(v string) *Scope {
 10216  	s.Key = &v
 10217  	return s
 10218  }
 10219  
 10220  // SetValue sets the Value field's value.
 10221  func (s *Scope) SetValue(v string) *Scope {
 10222  	s.Value = &v
 10223  	return s
 10224  }
 10225  
 10226  // Contains information about a security group associated with a network interface.
 10227  // This data type is used as one of the elements of the NetworkInterface data
 10228  // type.
 10229  type SecurityGroup struct {
 10230  	_ struct{} `type:"structure"`
 10231  
 10232  	// The ID of the security group.
 10233  	GroupId *string `locationName:"groupId" type:"string"`
 10234  
 10235  	// The name of the security group.
 10236  	GroupName *string `locationName:"groupName" type:"string"`
 10237  }
 10238  
 10239  // String returns the string representation.
 10240  //
 10241  // API parameter values that are decorated as "sensitive" in the API will not
 10242  // be included in the string output. The member name will be present, but the
 10243  // value will be replaced with "sensitive".
 10244  func (s SecurityGroup) String() string {
 10245  	return awsutil.Prettify(s)
 10246  }
 10247  
 10248  // GoString returns the string representation.
 10249  //
 10250  // API parameter values that are decorated as "sensitive" in the API will not
 10251  // be included in the string output. The member name will be present, but the
 10252  // value will be replaced with "sensitive".
 10253  func (s SecurityGroup) GoString() string {
 10254  	return s.String()
 10255  }
 10256  
 10257  // SetGroupId sets the GroupId field's value.
 10258  func (s *SecurityGroup) SetGroupId(v string) *SecurityGroup {
 10259  	s.GroupId = &v
 10260  	return s
 10261  }
 10262  
 10263  // SetGroupName sets the GroupName field's value.
 10264  func (s *SecurityGroup) SetGroupName(v string) *SecurityGroup {
 10265  	s.GroupName = &v
 10266  	return s
 10267  }
 10268  
 10269  // This data type is used in the Finding data type.
 10270  type ServiceAttributes struct {
 10271  	_ struct{} `type:"structure"`
 10272  
 10273  	// The ARN of the assessment run during which the finding is generated.
 10274  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string"`
 10275  
 10276  	// The ARN of the rules package that is used to generate the finding.
 10277  	RulesPackageArn *string `locationName:"rulesPackageArn" min:"1" type:"string"`
 10278  
 10279  	// The schema version of this data type.
 10280  	//
 10281  	// SchemaVersion is a required field
 10282  	SchemaVersion *int64 `locationName:"schemaVersion" type:"integer" required:"true"`
 10283  }
 10284  
 10285  // String returns the string representation.
 10286  //
 10287  // API parameter values that are decorated as "sensitive" in the API will not
 10288  // be included in the string output. The member name will be present, but the
 10289  // value will be replaced with "sensitive".
 10290  func (s ServiceAttributes) String() string {
 10291  	return awsutil.Prettify(s)
 10292  }
 10293  
 10294  // GoString returns the string representation.
 10295  //
 10296  // API parameter values that are decorated as "sensitive" in the API will not
 10297  // be included in the string output. The member name will be present, but the
 10298  // value will be replaced with "sensitive".
 10299  func (s ServiceAttributes) GoString() string {
 10300  	return s.String()
 10301  }
 10302  
 10303  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
 10304  func (s *ServiceAttributes) SetAssessmentRunArn(v string) *ServiceAttributes {
 10305  	s.AssessmentRunArn = &v
 10306  	return s
 10307  }
 10308  
 10309  // SetRulesPackageArn sets the RulesPackageArn field's value.
 10310  func (s *ServiceAttributes) SetRulesPackageArn(v string) *ServiceAttributes {
 10311  	s.RulesPackageArn = &v
 10312  	return s
 10313  }
 10314  
 10315  // SetSchemaVersion sets the SchemaVersion field's value.
 10316  func (s *ServiceAttributes) SetSchemaVersion(v int64) *ServiceAttributes {
 10317  	s.SchemaVersion = &v
 10318  	return s
 10319  }
 10320  
 10321  // The serice is temporary unavailable.
 10322  type ServiceTemporarilyUnavailableException struct {
 10323  	_            struct{}                  `type:"structure"`
 10324  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 10325  
 10326  	// You can wait and then retry your request.
 10327  	//
 10328  	// CanRetry is a required field
 10329  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
 10330  
 10331  	// Details of the exception error.
 10332  	Message_ *string `locationName:"message" type:"string"`
 10333  }
 10334  
 10335  // String returns the string representation.
 10336  //
 10337  // API parameter values that are decorated as "sensitive" in the API will not
 10338  // be included in the string output. The member name will be present, but the
 10339  // value will be replaced with "sensitive".
 10340  func (s ServiceTemporarilyUnavailableException) String() string {
 10341  	return awsutil.Prettify(s)
 10342  }
 10343  
 10344  // GoString returns the string representation.
 10345  //
 10346  // API parameter values that are decorated as "sensitive" in the API will not
 10347  // be included in the string output. The member name will be present, but the
 10348  // value will be replaced with "sensitive".
 10349  func (s ServiceTemporarilyUnavailableException) GoString() string {
 10350  	return s.String()
 10351  }
 10352  
 10353  func newErrorServiceTemporarilyUnavailableException(v protocol.ResponseMetadata) error {
 10354  	return &ServiceTemporarilyUnavailableException{
 10355  		RespMetadata: v,
 10356  	}
 10357  }
 10358  
 10359  // Code returns the exception type name.
 10360  func (s *ServiceTemporarilyUnavailableException) Code() string {
 10361  	return "ServiceTemporarilyUnavailableException"
 10362  }
 10363  
 10364  // Message returns the exception's message.
 10365  func (s *ServiceTemporarilyUnavailableException) Message() string {
 10366  	if s.Message_ != nil {
 10367  		return *s.Message_
 10368  	}
 10369  	return ""
 10370  }
 10371  
 10372  // OrigErr always returns nil, satisfies awserr.Error interface.
 10373  func (s *ServiceTemporarilyUnavailableException) OrigErr() error {
 10374  	return nil
 10375  }
 10376  
 10377  func (s *ServiceTemporarilyUnavailableException) Error() string {
 10378  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 10379  }
 10380  
 10381  // Status code returns the HTTP status code for the request's response error.
 10382  func (s *ServiceTemporarilyUnavailableException) StatusCode() int {
 10383  	return s.RespMetadata.StatusCode
 10384  }
 10385  
 10386  // RequestID returns the service's response RequestID for request.
 10387  func (s *ServiceTemporarilyUnavailableException) RequestID() string {
 10388  	return s.RespMetadata.RequestID
 10389  }
 10390  
 10391  type SetTagsForResourceInput struct {
 10392  	_ struct{} `type:"structure"`
 10393  
 10394  	// The ARN of the assessment template that you want to set tags to.
 10395  	//
 10396  	// ResourceArn is a required field
 10397  	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
 10398  
 10399  	// A collection of key and value pairs that you want to set to the assessment
 10400  	// template.
 10401  	Tags []*Tag `locationName:"tags" type:"list"`
 10402  }
 10403  
 10404  // String returns the string representation.
 10405  //
 10406  // API parameter values that are decorated as "sensitive" in the API will not
 10407  // be included in the string output. The member name will be present, but the
 10408  // value will be replaced with "sensitive".
 10409  func (s SetTagsForResourceInput) String() string {
 10410  	return awsutil.Prettify(s)
 10411  }
 10412  
 10413  // GoString returns the string representation.
 10414  //
 10415  // API parameter values that are decorated as "sensitive" in the API will not
 10416  // be included in the string output. The member name will be present, but the
 10417  // value will be replaced with "sensitive".
 10418  func (s SetTagsForResourceInput) GoString() string {
 10419  	return s.String()
 10420  }
 10421  
 10422  // Validate inspects the fields of the type to determine if they are valid.
 10423  func (s *SetTagsForResourceInput) Validate() error {
 10424  	invalidParams := request.ErrInvalidParams{Context: "SetTagsForResourceInput"}
 10425  	if s.ResourceArn == nil {
 10426  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 10427  	}
 10428  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 10429  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 10430  	}
 10431  	if s.Tags != nil {
 10432  		for i, v := range s.Tags {
 10433  			if v == nil {
 10434  				continue
 10435  			}
 10436  			if err := v.Validate(); err != nil {
 10437  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 10438  			}
 10439  		}
 10440  	}
 10441  
 10442  	if invalidParams.Len() > 0 {
 10443  		return invalidParams
 10444  	}
 10445  	return nil
 10446  }
 10447  
 10448  // SetResourceArn sets the ResourceArn field's value.
 10449  func (s *SetTagsForResourceInput) SetResourceArn(v string) *SetTagsForResourceInput {
 10450  	s.ResourceArn = &v
 10451  	return s
 10452  }
 10453  
 10454  // SetTags sets the Tags field's value.
 10455  func (s *SetTagsForResourceInput) SetTags(v []*Tag) *SetTagsForResourceInput {
 10456  	s.Tags = v
 10457  	return s
 10458  }
 10459  
 10460  type SetTagsForResourceOutput struct {
 10461  	_ struct{} `type:"structure"`
 10462  }
 10463  
 10464  // String returns the string representation.
 10465  //
 10466  // API parameter values that are decorated as "sensitive" in the API will not
 10467  // be included in the string output. The member name will be present, but the
 10468  // value will be replaced with "sensitive".
 10469  func (s SetTagsForResourceOutput) String() string {
 10470  	return awsutil.Prettify(s)
 10471  }
 10472  
 10473  // GoString returns the string representation.
 10474  //
 10475  // API parameter values that are decorated as "sensitive" in the API will not
 10476  // be included in the string output. The member name will be present, but the
 10477  // value will be replaced with "sensitive".
 10478  func (s SetTagsForResourceOutput) GoString() string {
 10479  	return s.String()
 10480  }
 10481  
 10482  type StartAssessmentRunInput struct {
 10483  	_ struct{} `type:"structure"`
 10484  
 10485  	// You can specify the name for the assessment run. The name must be unique
 10486  	// for the assessment template whose ARN is used to start the assessment run.
 10487  	AssessmentRunName *string `locationName:"assessmentRunName" min:"1" type:"string"`
 10488  
 10489  	// The ARN of the assessment template of the assessment run that you want to
 10490  	// start.
 10491  	//
 10492  	// AssessmentTemplateArn is a required field
 10493  	AssessmentTemplateArn *string `locationName:"assessmentTemplateArn" min:"1" type:"string" required:"true"`
 10494  }
 10495  
 10496  // String returns the string representation.
 10497  //
 10498  // API parameter values that are decorated as "sensitive" in the API will not
 10499  // be included in the string output. The member name will be present, but the
 10500  // value will be replaced with "sensitive".
 10501  func (s StartAssessmentRunInput) String() string {
 10502  	return awsutil.Prettify(s)
 10503  }
 10504  
 10505  // GoString returns the string representation.
 10506  //
 10507  // API parameter values that are decorated as "sensitive" in the API will not
 10508  // be included in the string output. The member name will be present, but the
 10509  // value will be replaced with "sensitive".
 10510  func (s StartAssessmentRunInput) GoString() string {
 10511  	return s.String()
 10512  }
 10513  
 10514  // Validate inspects the fields of the type to determine if they are valid.
 10515  func (s *StartAssessmentRunInput) Validate() error {
 10516  	invalidParams := request.ErrInvalidParams{Context: "StartAssessmentRunInput"}
 10517  	if s.AssessmentRunName != nil && len(*s.AssessmentRunName) < 1 {
 10518  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunName", 1))
 10519  	}
 10520  	if s.AssessmentTemplateArn == nil {
 10521  		invalidParams.Add(request.NewErrParamRequired("AssessmentTemplateArn"))
 10522  	}
 10523  	if s.AssessmentTemplateArn != nil && len(*s.AssessmentTemplateArn) < 1 {
 10524  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTemplateArn", 1))
 10525  	}
 10526  
 10527  	if invalidParams.Len() > 0 {
 10528  		return invalidParams
 10529  	}
 10530  	return nil
 10531  }
 10532  
 10533  // SetAssessmentRunName sets the AssessmentRunName field's value.
 10534  func (s *StartAssessmentRunInput) SetAssessmentRunName(v string) *StartAssessmentRunInput {
 10535  	s.AssessmentRunName = &v
 10536  	return s
 10537  }
 10538  
 10539  // SetAssessmentTemplateArn sets the AssessmentTemplateArn field's value.
 10540  func (s *StartAssessmentRunInput) SetAssessmentTemplateArn(v string) *StartAssessmentRunInput {
 10541  	s.AssessmentTemplateArn = &v
 10542  	return s
 10543  }
 10544  
 10545  type StartAssessmentRunOutput struct {
 10546  	_ struct{} `type:"structure"`
 10547  
 10548  	// The ARN of the assessment run that has been started.
 10549  	//
 10550  	// AssessmentRunArn is a required field
 10551  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
 10552  }
 10553  
 10554  // String returns the string representation.
 10555  //
 10556  // API parameter values that are decorated as "sensitive" in the API will not
 10557  // be included in the string output. The member name will be present, but the
 10558  // value will be replaced with "sensitive".
 10559  func (s StartAssessmentRunOutput) String() string {
 10560  	return awsutil.Prettify(s)
 10561  }
 10562  
 10563  // GoString returns the string representation.
 10564  //
 10565  // API parameter values that are decorated as "sensitive" in the API will not
 10566  // be included in the string output. The member name will be present, but the
 10567  // value will be replaced with "sensitive".
 10568  func (s StartAssessmentRunOutput) GoString() string {
 10569  	return s.String()
 10570  }
 10571  
 10572  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
 10573  func (s *StartAssessmentRunOutput) SetAssessmentRunArn(v string) *StartAssessmentRunOutput {
 10574  	s.AssessmentRunArn = &v
 10575  	return s
 10576  }
 10577  
 10578  type StopAssessmentRunInput struct {
 10579  	_ struct{} `type:"structure"`
 10580  
 10581  	// The ARN of the assessment run that you want to stop.
 10582  	//
 10583  	// AssessmentRunArn is a required field
 10584  	AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
 10585  
 10586  	// An input option that can be set to either START_EVALUATION or SKIP_EVALUATION.
 10587  	// START_EVALUATION (the default value), stops the AWS agent from collecting
 10588  	// data and begins the results evaluation and the findings generation process.
 10589  	// SKIP_EVALUATION cancels the assessment run immediately, after which no findings
 10590  	// are generated.
 10591  	StopAction *string `locationName:"stopAction" type:"string" enum:"StopAction"`
 10592  }
 10593  
 10594  // String returns the string representation.
 10595  //
 10596  // API parameter values that are decorated as "sensitive" in the API will not
 10597  // be included in the string output. The member name will be present, but the
 10598  // value will be replaced with "sensitive".
 10599  func (s StopAssessmentRunInput) String() string {
 10600  	return awsutil.Prettify(s)
 10601  }
 10602  
 10603  // GoString returns the string representation.
 10604  //
 10605  // API parameter values that are decorated as "sensitive" in the API will not
 10606  // be included in the string output. The member name will be present, but the
 10607  // value will be replaced with "sensitive".
 10608  func (s StopAssessmentRunInput) GoString() string {
 10609  	return s.String()
 10610  }
 10611  
 10612  // Validate inspects the fields of the type to determine if they are valid.
 10613  func (s *StopAssessmentRunInput) Validate() error {
 10614  	invalidParams := request.ErrInvalidParams{Context: "StopAssessmentRunInput"}
 10615  	if s.AssessmentRunArn == nil {
 10616  		invalidParams.Add(request.NewErrParamRequired("AssessmentRunArn"))
 10617  	}
 10618  	if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
 10619  		invalidParams.Add(request.NewErrParamMinLen("AssessmentRunArn", 1))
 10620  	}
 10621  
 10622  	if invalidParams.Len() > 0 {
 10623  		return invalidParams
 10624  	}
 10625  	return nil
 10626  }
 10627  
 10628  // SetAssessmentRunArn sets the AssessmentRunArn field's value.
 10629  func (s *StopAssessmentRunInput) SetAssessmentRunArn(v string) *StopAssessmentRunInput {
 10630  	s.AssessmentRunArn = &v
 10631  	return s
 10632  }
 10633  
 10634  // SetStopAction sets the StopAction field's value.
 10635  func (s *StopAssessmentRunInput) SetStopAction(v string) *StopAssessmentRunInput {
 10636  	s.StopAction = &v
 10637  	return s
 10638  }
 10639  
 10640  type StopAssessmentRunOutput struct {
 10641  	_ struct{} `type:"structure"`
 10642  }
 10643  
 10644  // String returns the string representation.
 10645  //
 10646  // API parameter values that are decorated as "sensitive" in the API will not
 10647  // be included in the string output. The member name will be present, but the
 10648  // value will be replaced with "sensitive".
 10649  func (s StopAssessmentRunOutput) String() string {
 10650  	return awsutil.Prettify(s)
 10651  }
 10652  
 10653  // GoString returns the string representation.
 10654  //
 10655  // API parameter values that are decorated as "sensitive" in the API will not
 10656  // be included in the string output. The member name will be present, but the
 10657  // value will be replaced with "sensitive".
 10658  func (s StopAssessmentRunOutput) GoString() string {
 10659  	return s.String()
 10660  }
 10661  
 10662  type SubscribeToEventInput struct {
 10663  	_ struct{} `type:"structure"`
 10664  
 10665  	// The event for which you want to receive SNS notifications.
 10666  	//
 10667  	// Event is a required field
 10668  	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
 10669  
 10670  	// The ARN of the assessment template that is used during the event for which
 10671  	// you want to receive SNS notifications.
 10672  	//
 10673  	// ResourceArn is a required field
 10674  	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
 10675  
 10676  	// The ARN of the SNS topic to which the SNS notifications are sent.
 10677  	//
 10678  	// TopicArn is a required field
 10679  	TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"`
 10680  }
 10681  
 10682  // String returns the string representation.
 10683  //
 10684  // API parameter values that are decorated as "sensitive" in the API will not
 10685  // be included in the string output. The member name will be present, but the
 10686  // value will be replaced with "sensitive".
 10687  func (s SubscribeToEventInput) String() string {
 10688  	return awsutil.Prettify(s)
 10689  }
 10690  
 10691  // GoString returns the string representation.
 10692  //
 10693  // API parameter values that are decorated as "sensitive" in the API will not
 10694  // be included in the string output. The member name will be present, but the
 10695  // value will be replaced with "sensitive".
 10696  func (s SubscribeToEventInput) GoString() string {
 10697  	return s.String()
 10698  }
 10699  
 10700  // Validate inspects the fields of the type to determine if they are valid.
 10701  func (s *SubscribeToEventInput) Validate() error {
 10702  	invalidParams := request.ErrInvalidParams{Context: "SubscribeToEventInput"}
 10703  	if s.Event == nil {
 10704  		invalidParams.Add(request.NewErrParamRequired("Event"))
 10705  	}
 10706  	if s.ResourceArn == nil {
 10707  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 10708  	}
 10709  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 10710  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 10711  	}
 10712  	if s.TopicArn == nil {
 10713  		invalidParams.Add(request.NewErrParamRequired("TopicArn"))
 10714  	}
 10715  	if s.TopicArn != nil && len(*s.TopicArn) < 1 {
 10716  		invalidParams.Add(request.NewErrParamMinLen("TopicArn", 1))
 10717  	}
 10718  
 10719  	if invalidParams.Len() > 0 {
 10720  		return invalidParams
 10721  	}
 10722  	return nil
 10723  }
 10724  
 10725  // SetEvent sets the Event field's value.
 10726  func (s *SubscribeToEventInput) SetEvent(v string) *SubscribeToEventInput {
 10727  	s.Event = &v
 10728  	return s
 10729  }
 10730  
 10731  // SetResourceArn sets the ResourceArn field's value.
 10732  func (s *SubscribeToEventInput) SetResourceArn(v string) *SubscribeToEventInput {
 10733  	s.ResourceArn = &v
 10734  	return s
 10735  }
 10736  
 10737  // SetTopicArn sets the TopicArn field's value.
 10738  func (s *SubscribeToEventInput) SetTopicArn(v string) *SubscribeToEventInput {
 10739  	s.TopicArn = &v
 10740  	return s
 10741  }
 10742  
 10743  type SubscribeToEventOutput struct {
 10744  	_ struct{} `type:"structure"`
 10745  }
 10746  
 10747  // String returns the string representation.
 10748  //
 10749  // API parameter values that are decorated as "sensitive" in the API will not
 10750  // be included in the string output. The member name will be present, but the
 10751  // value will be replaced with "sensitive".
 10752  func (s SubscribeToEventOutput) String() string {
 10753  	return awsutil.Prettify(s)
 10754  }
 10755  
 10756  // GoString returns the string representation.
 10757  //
 10758  // API parameter values that are decorated as "sensitive" in the API will not
 10759  // be included in the string output. The member name will be present, but the
 10760  // value will be replaced with "sensitive".
 10761  func (s SubscribeToEventOutput) GoString() string {
 10762  	return s.String()
 10763  }
 10764  
 10765  // This data type is used as a response element in the ListEventSubscriptions
 10766  // action.
 10767  type Subscription struct {
 10768  	_ struct{} `type:"structure"`
 10769  
 10770  	// The list of existing event subscriptions.
 10771  	//
 10772  	// EventSubscriptions is a required field
 10773  	EventSubscriptions []*EventSubscription `locationName:"eventSubscriptions" min:"1" type:"list" required:"true"`
 10774  
 10775  	// The ARN of the assessment template that is used during the event for which
 10776  	// the SNS notification is sent.
 10777  	//
 10778  	// ResourceArn is a required field
 10779  	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
 10780  
 10781  	// The ARN of the Amazon Simple Notification Service (SNS) topic to which the
 10782  	// SNS notifications are sent.
 10783  	//
 10784  	// TopicArn is a required field
 10785  	TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"`
 10786  }
 10787  
 10788  // String returns the string representation.
 10789  //
 10790  // API parameter values that are decorated as "sensitive" in the API will not
 10791  // be included in the string output. The member name will be present, but the
 10792  // value will be replaced with "sensitive".
 10793  func (s Subscription) String() string {
 10794  	return awsutil.Prettify(s)
 10795  }
 10796  
 10797  // GoString returns the string representation.
 10798  //
 10799  // API parameter values that are decorated as "sensitive" in the API will not
 10800  // be included in the string output. The member name will be present, but the
 10801  // value will be replaced with "sensitive".
 10802  func (s Subscription) GoString() string {
 10803  	return s.String()
 10804  }
 10805  
 10806  // SetEventSubscriptions sets the EventSubscriptions field's value.
 10807  func (s *Subscription) SetEventSubscriptions(v []*EventSubscription) *Subscription {
 10808  	s.EventSubscriptions = v
 10809  	return s
 10810  }
 10811  
 10812  // SetResourceArn sets the ResourceArn field's value.
 10813  func (s *Subscription) SetResourceArn(v string) *Subscription {
 10814  	s.ResourceArn = &v
 10815  	return s
 10816  }
 10817  
 10818  // SetTopicArn sets the TopicArn field's value.
 10819  func (s *Subscription) SetTopicArn(v string) *Subscription {
 10820  	s.TopicArn = &v
 10821  	return s
 10822  }
 10823  
 10824  // A key and value pair. This data type is used as a request parameter in the
 10825  // SetTagsForResource action and a response element in the ListTagsForResource
 10826  // action.
 10827  type Tag struct {
 10828  	_ struct{} `type:"structure"`
 10829  
 10830  	// A tag key.
 10831  	//
 10832  	// Key is a required field
 10833  	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
 10834  
 10835  	// A value assigned to a tag key.
 10836  	Value *string `locationName:"value" min:"1" type:"string"`
 10837  }
 10838  
 10839  // String returns the string representation.
 10840  //
 10841  // API parameter values that are decorated as "sensitive" in the API will not
 10842  // be included in the string output. The member name will be present, but the
 10843  // value will be replaced with "sensitive".
 10844  func (s Tag) String() string {
 10845  	return awsutil.Prettify(s)
 10846  }
 10847  
 10848  // GoString returns the string representation.
 10849  //
 10850  // API parameter values that are decorated as "sensitive" in the API will not
 10851  // be included in the string output. The member name will be present, but the
 10852  // value will be replaced with "sensitive".
 10853  func (s Tag) GoString() string {
 10854  	return s.String()
 10855  }
 10856  
 10857  // Validate inspects the fields of the type to determine if they are valid.
 10858  func (s *Tag) Validate() error {
 10859  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
 10860  	if s.Key == nil {
 10861  		invalidParams.Add(request.NewErrParamRequired("Key"))
 10862  	}
 10863  	if s.Key != nil && len(*s.Key) < 1 {
 10864  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 10865  	}
 10866  	if s.Value != nil && len(*s.Value) < 1 {
 10867  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
 10868  	}
 10869  
 10870  	if invalidParams.Len() > 0 {
 10871  		return invalidParams
 10872  	}
 10873  	return nil
 10874  }
 10875  
 10876  // SetKey sets the Key field's value.
 10877  func (s *Tag) SetKey(v string) *Tag {
 10878  	s.Key = &v
 10879  	return s
 10880  }
 10881  
 10882  // SetValue sets the Value field's value.
 10883  func (s *Tag) SetValue(v string) *Tag {
 10884  	s.Value = &v
 10885  	return s
 10886  }
 10887  
 10888  // The metadata about the Amazon Inspector application data metrics collected
 10889  // by the agent. This data type is used as the response element in the GetTelemetryMetadata
 10890  // action.
 10891  type TelemetryMetadata struct {
 10892  	_ struct{} `type:"structure"`
 10893  
 10894  	// The count of messages that the agent sends to the Amazon Inspector service.
 10895  	//
 10896  	// Count is a required field
 10897  	Count *int64 `locationName:"count" type:"long" required:"true"`
 10898  
 10899  	// The data size of messages that the agent sends to the Amazon Inspector service.
 10900  	DataSize *int64 `locationName:"dataSize" type:"long"`
 10901  
 10902  	// A specific type of behavioral data that is collected by the agent.
 10903  	//
 10904  	// MessageType is a required field
 10905  	MessageType *string `locationName:"messageType" min:"1" type:"string" required:"true"`
 10906  }
 10907  
 10908  // String returns the string representation.
 10909  //
 10910  // API parameter values that are decorated as "sensitive" in the API will not
 10911  // be included in the string output. The member name will be present, but the
 10912  // value will be replaced with "sensitive".
 10913  func (s TelemetryMetadata) String() string {
 10914  	return awsutil.Prettify(s)
 10915  }
 10916  
 10917  // GoString returns the string representation.
 10918  //
 10919  // API parameter values that are decorated as "sensitive" in the API will not
 10920  // be included in the string output. The member name will be present, but the
 10921  // value will be replaced with "sensitive".
 10922  func (s TelemetryMetadata) GoString() string {
 10923  	return s.String()
 10924  }
 10925  
 10926  // SetCount sets the Count field's value.
 10927  func (s *TelemetryMetadata) SetCount(v int64) *TelemetryMetadata {
 10928  	s.Count = &v
 10929  	return s
 10930  }
 10931  
 10932  // SetDataSize sets the DataSize field's value.
 10933  func (s *TelemetryMetadata) SetDataSize(v int64) *TelemetryMetadata {
 10934  	s.DataSize = &v
 10935  	return s
 10936  }
 10937  
 10938  // SetMessageType sets the MessageType field's value.
 10939  func (s *TelemetryMetadata) SetMessageType(v string) *TelemetryMetadata {
 10940  	s.MessageType = &v
 10941  	return s
 10942  }
 10943  
 10944  // This data type is used in the AssessmentRunFilter data type.
 10945  type TimestampRange struct {
 10946  	_ struct{} `type:"structure"`
 10947  
 10948  	// The minimum value of the timestamp range.
 10949  	BeginDate *time.Time `locationName:"beginDate" type:"timestamp"`
 10950  
 10951  	// The maximum value of the timestamp range.
 10952  	EndDate *time.Time `locationName:"endDate" type:"timestamp"`
 10953  }
 10954  
 10955  // String returns the string representation.
 10956  //
 10957  // API parameter values that are decorated as "sensitive" in the API will not
 10958  // be included in the string output. The member name will be present, but the
 10959  // value will be replaced with "sensitive".
 10960  func (s TimestampRange) String() string {
 10961  	return awsutil.Prettify(s)
 10962  }
 10963  
 10964  // GoString returns the string representation.
 10965  //
 10966  // API parameter values that are decorated as "sensitive" in the API will not
 10967  // be included in the string output. The member name will be present, but the
 10968  // value will be replaced with "sensitive".
 10969  func (s TimestampRange) GoString() string {
 10970  	return s.String()
 10971  }
 10972  
 10973  // SetBeginDate sets the BeginDate field's value.
 10974  func (s *TimestampRange) SetBeginDate(v time.Time) *TimestampRange {
 10975  	s.BeginDate = &v
 10976  	return s
 10977  }
 10978  
 10979  // SetEndDate sets the EndDate field's value.
 10980  func (s *TimestampRange) SetEndDate(v time.Time) *TimestampRange {
 10981  	s.EndDate = &v
 10982  	return s
 10983  }
 10984  
 10985  type UnsubscribeFromEventInput struct {
 10986  	_ struct{} `type:"structure"`
 10987  
 10988  	// The event for which you want to stop receiving SNS notifications.
 10989  	//
 10990  	// Event is a required field
 10991  	Event *string `locationName:"event" type:"string" required:"true" enum:"Event"`
 10992  
 10993  	// The ARN of the assessment template that is used during the event for which
 10994  	// you want to stop receiving SNS notifications.
 10995  	//
 10996  	// ResourceArn is a required field
 10997  	ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"`
 10998  
 10999  	// The ARN of the SNS topic to which SNS notifications are sent.
 11000  	//
 11001  	// TopicArn is a required field
 11002  	TopicArn *string `locationName:"topicArn" min:"1" type:"string" required:"true"`
 11003  }
 11004  
 11005  // String returns the string representation.
 11006  //
 11007  // API parameter values that are decorated as "sensitive" in the API will not
 11008  // be included in the string output. The member name will be present, but the
 11009  // value will be replaced with "sensitive".
 11010  func (s UnsubscribeFromEventInput) String() string {
 11011  	return awsutil.Prettify(s)
 11012  }
 11013  
 11014  // GoString returns the string representation.
 11015  //
 11016  // API parameter values that are decorated as "sensitive" in the API will not
 11017  // be included in the string output. The member name will be present, but the
 11018  // value will be replaced with "sensitive".
 11019  func (s UnsubscribeFromEventInput) GoString() string {
 11020  	return s.String()
 11021  }
 11022  
 11023  // Validate inspects the fields of the type to determine if they are valid.
 11024  func (s *UnsubscribeFromEventInput) Validate() error {
 11025  	invalidParams := request.ErrInvalidParams{Context: "UnsubscribeFromEventInput"}
 11026  	if s.Event == nil {
 11027  		invalidParams.Add(request.NewErrParamRequired("Event"))
 11028  	}
 11029  	if s.ResourceArn == nil {
 11030  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 11031  	}
 11032  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 11033  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 11034  	}
 11035  	if s.TopicArn == nil {
 11036  		invalidParams.Add(request.NewErrParamRequired("TopicArn"))
 11037  	}
 11038  	if s.TopicArn != nil && len(*s.TopicArn) < 1 {
 11039  		invalidParams.Add(request.NewErrParamMinLen("TopicArn", 1))
 11040  	}
 11041  
 11042  	if invalidParams.Len() > 0 {
 11043  		return invalidParams
 11044  	}
 11045  	return nil
 11046  }
 11047  
 11048  // SetEvent sets the Event field's value.
 11049  func (s *UnsubscribeFromEventInput) SetEvent(v string) *UnsubscribeFromEventInput {
 11050  	s.Event = &v
 11051  	return s
 11052  }
 11053  
 11054  // SetResourceArn sets the ResourceArn field's value.
 11055  func (s *UnsubscribeFromEventInput) SetResourceArn(v string) *UnsubscribeFromEventInput {
 11056  	s.ResourceArn = &v
 11057  	return s
 11058  }
 11059  
 11060  // SetTopicArn sets the TopicArn field's value.
 11061  func (s *UnsubscribeFromEventInput) SetTopicArn(v string) *UnsubscribeFromEventInput {
 11062  	s.TopicArn = &v
 11063  	return s
 11064  }
 11065  
 11066  type UnsubscribeFromEventOutput struct {
 11067  	_ struct{} `type:"structure"`
 11068  }
 11069  
 11070  // String returns the string representation.
 11071  //
 11072  // API parameter values that are decorated as "sensitive" in the API will not
 11073  // be included in the string output. The member name will be present, but the
 11074  // value will be replaced with "sensitive".
 11075  func (s UnsubscribeFromEventOutput) String() string {
 11076  	return awsutil.Prettify(s)
 11077  }
 11078  
 11079  // GoString returns the string representation.
 11080  //
 11081  // API parameter values that are decorated as "sensitive" in the API will not
 11082  // be included in the string output. The member name will be present, but the
 11083  // value will be replaced with "sensitive".
 11084  func (s UnsubscribeFromEventOutput) GoString() string {
 11085  	return s.String()
 11086  }
 11087  
 11088  // Used by the GetAssessmentReport API. The request was rejected because you
 11089  // tried to generate a report for an assessment run that existed before reporting
 11090  // was supported in Amazon Inspector. You can only generate reports for assessment
 11091  // runs that took place or will take place after generating reports in Amazon
 11092  // Inspector became available.
 11093  type UnsupportedFeatureException struct {
 11094  	_            struct{}                  `type:"structure"`
 11095  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11096  
 11097  	// CanRetry is a required field
 11098  	CanRetry *bool `locationName:"canRetry" type:"boolean" required:"true"`
 11099  
 11100  	Message_ *string `locationName:"message" type:"string"`
 11101  }
 11102  
 11103  // String returns the string representation.
 11104  //
 11105  // API parameter values that are decorated as "sensitive" in the API will not
 11106  // be included in the string output. The member name will be present, but the
 11107  // value will be replaced with "sensitive".
 11108  func (s UnsupportedFeatureException) String() string {
 11109  	return awsutil.Prettify(s)
 11110  }
 11111  
 11112  // GoString returns the string representation.
 11113  //
 11114  // API parameter values that are decorated as "sensitive" in the API will not
 11115  // be included in the string output. The member name will be present, but the
 11116  // value will be replaced with "sensitive".
 11117  func (s UnsupportedFeatureException) GoString() string {
 11118  	return s.String()
 11119  }
 11120  
 11121  func newErrorUnsupportedFeatureException(v protocol.ResponseMetadata) error {
 11122  	return &UnsupportedFeatureException{
 11123  		RespMetadata: v,
 11124  	}
 11125  }
 11126  
 11127  // Code returns the exception type name.
 11128  func (s *UnsupportedFeatureException) Code() string {
 11129  	return "UnsupportedFeatureException"
 11130  }
 11131  
 11132  // Message returns the exception's message.
 11133  func (s *UnsupportedFeatureException) Message() string {
 11134  	if s.Message_ != nil {
 11135  		return *s.Message_
 11136  	}
 11137  	return ""
 11138  }
 11139  
 11140  // OrigErr always returns nil, satisfies awserr.Error interface.
 11141  func (s *UnsupportedFeatureException) OrigErr() error {
 11142  	return nil
 11143  }
 11144  
 11145  func (s *UnsupportedFeatureException) Error() string {
 11146  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 11147  }
 11148  
 11149  // Status code returns the HTTP status code for the request's response error.
 11150  func (s *UnsupportedFeatureException) StatusCode() int {
 11151  	return s.RespMetadata.StatusCode
 11152  }
 11153  
 11154  // RequestID returns the service's response RequestID for request.
 11155  func (s *UnsupportedFeatureException) RequestID() string {
 11156  	return s.RespMetadata.RequestID
 11157  }
 11158  
 11159  type UpdateAssessmentTargetInput struct {
 11160  	_ struct{} `type:"structure"`
 11161  
 11162  	// The ARN of the assessment target that you want to update.
 11163  	//
 11164  	// AssessmentTargetArn is a required field
 11165  	AssessmentTargetArn *string `locationName:"assessmentTargetArn" min:"1" type:"string" required:"true"`
 11166  
 11167  	// The name of the assessment target that you want to update.
 11168  	//
 11169  	// AssessmentTargetName is a required field
 11170  	AssessmentTargetName *string `locationName:"assessmentTargetName" min:"1" type:"string" required:"true"`
 11171  
 11172  	// The ARN of the resource group that is used to specify the new resource group
 11173  	// to associate with the assessment target.
 11174  	ResourceGroupArn *string `locationName:"resourceGroupArn" min:"1" type:"string"`
 11175  }
 11176  
 11177  // String returns the string representation.
 11178  //
 11179  // API parameter values that are decorated as "sensitive" in the API will not
 11180  // be included in the string output. The member name will be present, but the
 11181  // value will be replaced with "sensitive".
 11182  func (s UpdateAssessmentTargetInput) String() string {
 11183  	return awsutil.Prettify(s)
 11184  }
 11185  
 11186  // GoString returns the string representation.
 11187  //
 11188  // API parameter values that are decorated as "sensitive" in the API will not
 11189  // be included in the string output. The member name will be present, but the
 11190  // value will be replaced with "sensitive".
 11191  func (s UpdateAssessmentTargetInput) GoString() string {
 11192  	return s.String()
 11193  }
 11194  
 11195  // Validate inspects the fields of the type to determine if they are valid.
 11196  func (s *UpdateAssessmentTargetInput) Validate() error {
 11197  	invalidParams := request.ErrInvalidParams{Context: "UpdateAssessmentTargetInput"}
 11198  	if s.AssessmentTargetArn == nil {
 11199  		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetArn"))
 11200  	}
 11201  	if s.AssessmentTargetArn != nil && len(*s.AssessmentTargetArn) < 1 {
 11202  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetArn", 1))
 11203  	}
 11204  	if s.AssessmentTargetName == nil {
 11205  		invalidParams.Add(request.NewErrParamRequired("AssessmentTargetName"))
 11206  	}
 11207  	if s.AssessmentTargetName != nil && len(*s.AssessmentTargetName) < 1 {
 11208  		invalidParams.Add(request.NewErrParamMinLen("AssessmentTargetName", 1))
 11209  	}
 11210  	if s.ResourceGroupArn != nil && len(*s.ResourceGroupArn) < 1 {
 11211  		invalidParams.Add(request.NewErrParamMinLen("ResourceGroupArn", 1))
 11212  	}
 11213  
 11214  	if invalidParams.Len() > 0 {
 11215  		return invalidParams
 11216  	}
 11217  	return nil
 11218  }
 11219  
 11220  // SetAssessmentTargetArn sets the AssessmentTargetArn field's value.
 11221  func (s *UpdateAssessmentTargetInput) SetAssessmentTargetArn(v string) *UpdateAssessmentTargetInput {
 11222  	s.AssessmentTargetArn = &v
 11223  	return s
 11224  }
 11225  
 11226  // SetAssessmentTargetName sets the AssessmentTargetName field's value.
 11227  func (s *UpdateAssessmentTargetInput) SetAssessmentTargetName(v string) *UpdateAssessmentTargetInput {
 11228  	s.AssessmentTargetName = &v
 11229  	return s
 11230  }
 11231  
 11232  // SetResourceGroupArn sets the ResourceGroupArn field's value.
 11233  func (s *UpdateAssessmentTargetInput) SetResourceGroupArn(v string) *UpdateAssessmentTargetInput {
 11234  	s.ResourceGroupArn = &v
 11235  	return s
 11236  }
 11237  
 11238  type UpdateAssessmentTargetOutput struct {
 11239  	_ struct{} `type:"structure"`
 11240  }
 11241  
 11242  // String returns the string representation.
 11243  //
 11244  // API parameter values that are decorated as "sensitive" in the API will not
 11245  // be included in the string output. The member name will be present, but the
 11246  // value will be replaced with "sensitive".
 11247  func (s UpdateAssessmentTargetOutput) String() string {
 11248  	return awsutil.Prettify(s)
 11249  }
 11250  
 11251  // GoString returns the string representation.
 11252  //
 11253  // API parameter values that are decorated as "sensitive" in the API will not
 11254  // be included in the string output. The member name will be present, but the
 11255  // value will be replaced with "sensitive".
 11256  func (s UpdateAssessmentTargetOutput) GoString() string {
 11257  	return s.String()
 11258  }
 11259  
 11260  const (
 11261  	// AccessDeniedErrorCodeAccessDeniedToAssessmentTarget is a AccessDeniedErrorCode enum value
 11262  	AccessDeniedErrorCodeAccessDeniedToAssessmentTarget = "ACCESS_DENIED_TO_ASSESSMENT_TARGET"
 11263  
 11264  	// AccessDeniedErrorCodeAccessDeniedToAssessmentTemplate is a AccessDeniedErrorCode enum value
 11265  	AccessDeniedErrorCodeAccessDeniedToAssessmentTemplate = "ACCESS_DENIED_TO_ASSESSMENT_TEMPLATE"
 11266  
 11267  	// AccessDeniedErrorCodeAccessDeniedToAssessmentRun is a AccessDeniedErrorCode enum value
 11268  	AccessDeniedErrorCodeAccessDeniedToAssessmentRun = "ACCESS_DENIED_TO_ASSESSMENT_RUN"
 11269  
 11270  	// AccessDeniedErrorCodeAccessDeniedToFinding is a AccessDeniedErrorCode enum value
 11271  	AccessDeniedErrorCodeAccessDeniedToFinding = "ACCESS_DENIED_TO_FINDING"
 11272  
 11273  	// AccessDeniedErrorCodeAccessDeniedToResourceGroup is a AccessDeniedErrorCode enum value
 11274  	AccessDeniedErrorCodeAccessDeniedToResourceGroup = "ACCESS_DENIED_TO_RESOURCE_GROUP"
 11275  
 11276  	// AccessDeniedErrorCodeAccessDeniedToRulesPackage is a AccessDeniedErrorCode enum value
 11277  	AccessDeniedErrorCodeAccessDeniedToRulesPackage = "ACCESS_DENIED_TO_RULES_PACKAGE"
 11278  
 11279  	// AccessDeniedErrorCodeAccessDeniedToSnsTopic is a AccessDeniedErrorCode enum value
 11280  	AccessDeniedErrorCodeAccessDeniedToSnsTopic = "ACCESS_DENIED_TO_SNS_TOPIC"
 11281  
 11282  	// AccessDeniedErrorCodeAccessDeniedToIamRole is a AccessDeniedErrorCode enum value
 11283  	AccessDeniedErrorCodeAccessDeniedToIamRole = "ACCESS_DENIED_TO_IAM_ROLE"
 11284  )
 11285  
 11286  // AccessDeniedErrorCode_Values returns all elements of the AccessDeniedErrorCode enum
 11287  func AccessDeniedErrorCode_Values() []string {
 11288  	return []string{
 11289  		AccessDeniedErrorCodeAccessDeniedToAssessmentTarget,
 11290  		AccessDeniedErrorCodeAccessDeniedToAssessmentTemplate,
 11291  		AccessDeniedErrorCodeAccessDeniedToAssessmentRun,
 11292  		AccessDeniedErrorCodeAccessDeniedToFinding,
 11293  		AccessDeniedErrorCodeAccessDeniedToResourceGroup,
 11294  		AccessDeniedErrorCodeAccessDeniedToRulesPackage,
 11295  		AccessDeniedErrorCodeAccessDeniedToSnsTopic,
 11296  		AccessDeniedErrorCodeAccessDeniedToIamRole,
 11297  	}
 11298  }
 11299  
 11300  const (
 11301  	// AgentHealthHealthy is a AgentHealth enum value
 11302  	AgentHealthHealthy = "HEALTHY"
 11303  
 11304  	// AgentHealthUnhealthy is a AgentHealth enum value
 11305  	AgentHealthUnhealthy = "UNHEALTHY"
 11306  
 11307  	// AgentHealthUnknown is a AgentHealth enum value
 11308  	AgentHealthUnknown = "UNKNOWN"
 11309  )
 11310  
 11311  // AgentHealth_Values returns all elements of the AgentHealth enum
 11312  func AgentHealth_Values() []string {
 11313  	return []string{
 11314  		AgentHealthHealthy,
 11315  		AgentHealthUnhealthy,
 11316  		AgentHealthUnknown,
 11317  	}
 11318  }
 11319  
 11320  const (
 11321  	// AgentHealthCodeIdle is a AgentHealthCode enum value
 11322  	AgentHealthCodeIdle = "IDLE"
 11323  
 11324  	// AgentHealthCodeRunning is a AgentHealthCode enum value
 11325  	AgentHealthCodeRunning = "RUNNING"
 11326  
 11327  	// AgentHealthCodeShutdown is a AgentHealthCode enum value
 11328  	AgentHealthCodeShutdown = "SHUTDOWN"
 11329  
 11330  	// AgentHealthCodeUnhealthy is a AgentHealthCode enum value
 11331  	AgentHealthCodeUnhealthy = "UNHEALTHY"
 11332  
 11333  	// AgentHealthCodeThrottled is a AgentHealthCode enum value
 11334  	AgentHealthCodeThrottled = "THROTTLED"
 11335  
 11336  	// AgentHealthCodeUnknown is a AgentHealthCode enum value
 11337  	AgentHealthCodeUnknown = "UNKNOWN"
 11338  )
 11339  
 11340  // AgentHealthCode_Values returns all elements of the AgentHealthCode enum
 11341  func AgentHealthCode_Values() []string {
 11342  	return []string{
 11343  		AgentHealthCodeIdle,
 11344  		AgentHealthCodeRunning,
 11345  		AgentHealthCodeShutdown,
 11346  		AgentHealthCodeUnhealthy,
 11347  		AgentHealthCodeThrottled,
 11348  		AgentHealthCodeUnknown,
 11349  	}
 11350  }
 11351  
 11352  const (
 11353  	// AssessmentRunNotificationSnsStatusCodeSuccess is a AssessmentRunNotificationSnsStatusCode enum value
 11354  	AssessmentRunNotificationSnsStatusCodeSuccess = "SUCCESS"
 11355  
 11356  	// AssessmentRunNotificationSnsStatusCodeTopicDoesNotExist is a AssessmentRunNotificationSnsStatusCode enum value
 11357  	AssessmentRunNotificationSnsStatusCodeTopicDoesNotExist = "TOPIC_DOES_NOT_EXIST"
 11358  
 11359  	// AssessmentRunNotificationSnsStatusCodeAccessDenied is a AssessmentRunNotificationSnsStatusCode enum value
 11360  	AssessmentRunNotificationSnsStatusCodeAccessDenied = "ACCESS_DENIED"
 11361  
 11362  	// AssessmentRunNotificationSnsStatusCodeInternalError is a AssessmentRunNotificationSnsStatusCode enum value
 11363  	AssessmentRunNotificationSnsStatusCodeInternalError = "INTERNAL_ERROR"
 11364  )
 11365  
 11366  // AssessmentRunNotificationSnsStatusCode_Values returns all elements of the AssessmentRunNotificationSnsStatusCode enum
 11367  func AssessmentRunNotificationSnsStatusCode_Values() []string {
 11368  	return []string{
 11369  		AssessmentRunNotificationSnsStatusCodeSuccess,
 11370  		AssessmentRunNotificationSnsStatusCodeTopicDoesNotExist,
 11371  		AssessmentRunNotificationSnsStatusCodeAccessDenied,
 11372  		AssessmentRunNotificationSnsStatusCodeInternalError,
 11373  	}
 11374  }
 11375  
 11376  const (
 11377  	// AssessmentRunStateCreated is a AssessmentRunState enum value
 11378  	AssessmentRunStateCreated = "CREATED"
 11379  
 11380  	// AssessmentRunStateStartDataCollectionPending is a AssessmentRunState enum value
 11381  	AssessmentRunStateStartDataCollectionPending = "START_DATA_COLLECTION_PENDING"
 11382  
 11383  	// AssessmentRunStateStartDataCollectionInProgress is a AssessmentRunState enum value
 11384  	AssessmentRunStateStartDataCollectionInProgress = "START_DATA_COLLECTION_IN_PROGRESS"
 11385  
 11386  	// AssessmentRunStateCollectingData is a AssessmentRunState enum value
 11387  	AssessmentRunStateCollectingData = "COLLECTING_DATA"
 11388  
 11389  	// AssessmentRunStateStopDataCollectionPending is a AssessmentRunState enum value
 11390  	AssessmentRunStateStopDataCollectionPending = "STOP_DATA_COLLECTION_PENDING"
 11391  
 11392  	// AssessmentRunStateDataCollected is a AssessmentRunState enum value
 11393  	AssessmentRunStateDataCollected = "DATA_COLLECTED"
 11394  
 11395  	// AssessmentRunStateStartEvaluatingRulesPending is a AssessmentRunState enum value
 11396  	AssessmentRunStateStartEvaluatingRulesPending = "START_EVALUATING_RULES_PENDING"
 11397  
 11398  	// AssessmentRunStateEvaluatingRules is a AssessmentRunState enum value
 11399  	AssessmentRunStateEvaluatingRules = "EVALUATING_RULES"
 11400  
 11401  	// AssessmentRunStateFailed is a AssessmentRunState enum value
 11402  	AssessmentRunStateFailed = "FAILED"
 11403  
 11404  	// AssessmentRunStateError is a AssessmentRunState enum value
 11405  	AssessmentRunStateError = "ERROR"
 11406  
 11407  	// AssessmentRunStateCompleted is a AssessmentRunState enum value
 11408  	AssessmentRunStateCompleted = "COMPLETED"
 11409  
 11410  	// AssessmentRunStateCompletedWithErrors is a AssessmentRunState enum value
 11411  	AssessmentRunStateCompletedWithErrors = "COMPLETED_WITH_ERRORS"
 11412  
 11413  	// AssessmentRunStateCanceled is a AssessmentRunState enum value
 11414  	AssessmentRunStateCanceled = "CANCELED"
 11415  )
 11416  
 11417  // AssessmentRunState_Values returns all elements of the AssessmentRunState enum
 11418  func AssessmentRunState_Values() []string {
 11419  	return []string{
 11420  		AssessmentRunStateCreated,
 11421  		AssessmentRunStateStartDataCollectionPending,
 11422  		AssessmentRunStateStartDataCollectionInProgress,
 11423  		AssessmentRunStateCollectingData,
 11424  		AssessmentRunStateStopDataCollectionPending,
 11425  		AssessmentRunStateDataCollected,
 11426  		AssessmentRunStateStartEvaluatingRulesPending,
 11427  		AssessmentRunStateEvaluatingRules,
 11428  		AssessmentRunStateFailed,
 11429  		AssessmentRunStateError,
 11430  		AssessmentRunStateCompleted,
 11431  		AssessmentRunStateCompletedWithErrors,
 11432  		AssessmentRunStateCanceled,
 11433  	}
 11434  }
 11435  
 11436  const (
 11437  	// AssetTypeEc2Instance is a AssetType enum value
 11438  	AssetTypeEc2Instance = "ec2-instance"
 11439  )
 11440  
 11441  // AssetType_Values returns all elements of the AssetType enum
 11442  func AssetType_Values() []string {
 11443  	return []string{
 11444  		AssetTypeEc2Instance,
 11445  	}
 11446  }
 11447  
 11448  const (
 11449  	// EventAssessmentRunStarted is a Event enum value
 11450  	EventAssessmentRunStarted = "ASSESSMENT_RUN_STARTED"
 11451  
 11452  	// EventAssessmentRunCompleted is a Event enum value
 11453  	EventAssessmentRunCompleted = "ASSESSMENT_RUN_COMPLETED"
 11454  
 11455  	// EventAssessmentRunStateChanged is a Event enum value
 11456  	EventAssessmentRunStateChanged = "ASSESSMENT_RUN_STATE_CHANGED"
 11457  
 11458  	// EventFindingReported is a Event enum value
 11459  	EventFindingReported = "FINDING_REPORTED"
 11460  
 11461  	// EventOther is a Event enum value
 11462  	EventOther = "OTHER"
 11463  )
 11464  
 11465  // Event_Values returns all elements of the Event enum
 11466  func Event_Values() []string {
 11467  	return []string{
 11468  		EventAssessmentRunStarted,
 11469  		EventAssessmentRunCompleted,
 11470  		EventAssessmentRunStateChanged,
 11471  		EventFindingReported,
 11472  		EventOther,
 11473  	}
 11474  }
 11475  
 11476  const (
 11477  	// FailedItemErrorCodeInvalidArn is a FailedItemErrorCode enum value
 11478  	FailedItemErrorCodeInvalidArn = "INVALID_ARN"
 11479  
 11480  	// FailedItemErrorCodeDuplicateArn is a FailedItemErrorCode enum value
 11481  	FailedItemErrorCodeDuplicateArn = "DUPLICATE_ARN"
 11482  
 11483  	// FailedItemErrorCodeItemDoesNotExist is a FailedItemErrorCode enum value
 11484  	FailedItemErrorCodeItemDoesNotExist = "ITEM_DOES_NOT_EXIST"
 11485  
 11486  	// FailedItemErrorCodeAccessDenied is a FailedItemErrorCode enum value
 11487  	FailedItemErrorCodeAccessDenied = "ACCESS_DENIED"
 11488  
 11489  	// FailedItemErrorCodeLimitExceeded is a FailedItemErrorCode enum value
 11490  	FailedItemErrorCodeLimitExceeded = "LIMIT_EXCEEDED"
 11491  
 11492  	// FailedItemErrorCodeInternalError is a FailedItemErrorCode enum value
 11493  	FailedItemErrorCodeInternalError = "INTERNAL_ERROR"
 11494  )
 11495  
 11496  // FailedItemErrorCode_Values returns all elements of the FailedItemErrorCode enum
 11497  func FailedItemErrorCode_Values() []string {
 11498  	return []string{
 11499  		FailedItemErrorCodeInvalidArn,
 11500  		FailedItemErrorCodeDuplicateArn,
 11501  		FailedItemErrorCodeItemDoesNotExist,
 11502  		FailedItemErrorCodeAccessDenied,
 11503  		FailedItemErrorCodeLimitExceeded,
 11504  		FailedItemErrorCodeInternalError,
 11505  	}
 11506  }
 11507  
 11508  const (
 11509  	// InvalidCrossAccountRoleErrorCodeRoleDoesNotExistOrInvalidTrustRelationship is a InvalidCrossAccountRoleErrorCode enum value
 11510  	InvalidCrossAccountRoleErrorCodeRoleDoesNotExistOrInvalidTrustRelationship = "ROLE_DOES_NOT_EXIST_OR_INVALID_TRUST_RELATIONSHIP"
 11511  
 11512  	// InvalidCrossAccountRoleErrorCodeRoleDoesNotHaveCorrectPolicy is a InvalidCrossAccountRoleErrorCode enum value
 11513  	InvalidCrossAccountRoleErrorCodeRoleDoesNotHaveCorrectPolicy = "ROLE_DOES_NOT_HAVE_CORRECT_POLICY"
 11514  )
 11515  
 11516  // InvalidCrossAccountRoleErrorCode_Values returns all elements of the InvalidCrossAccountRoleErrorCode enum
 11517  func InvalidCrossAccountRoleErrorCode_Values() []string {
 11518  	return []string{
 11519  		InvalidCrossAccountRoleErrorCodeRoleDoesNotExistOrInvalidTrustRelationship,
 11520  		InvalidCrossAccountRoleErrorCodeRoleDoesNotHaveCorrectPolicy,
 11521  	}
 11522  }
 11523  
 11524  const (
 11525  	// InvalidInputErrorCodeInvalidAssessmentTargetArn is a InvalidInputErrorCode enum value
 11526  	InvalidInputErrorCodeInvalidAssessmentTargetArn = "INVALID_ASSESSMENT_TARGET_ARN"
 11527  
 11528  	// InvalidInputErrorCodeInvalidAssessmentTemplateArn is a InvalidInputErrorCode enum value
 11529  	InvalidInputErrorCodeInvalidAssessmentTemplateArn = "INVALID_ASSESSMENT_TEMPLATE_ARN"
 11530  
 11531  	// InvalidInputErrorCodeInvalidAssessmentRunArn is a InvalidInputErrorCode enum value
 11532  	InvalidInputErrorCodeInvalidAssessmentRunArn = "INVALID_ASSESSMENT_RUN_ARN"
 11533  
 11534  	// InvalidInputErrorCodeInvalidFindingArn is a InvalidInputErrorCode enum value
 11535  	InvalidInputErrorCodeInvalidFindingArn = "INVALID_FINDING_ARN"
 11536  
 11537  	// InvalidInputErrorCodeInvalidResourceGroupArn is a InvalidInputErrorCode enum value
 11538  	InvalidInputErrorCodeInvalidResourceGroupArn = "INVALID_RESOURCE_GROUP_ARN"
 11539  
 11540  	// InvalidInputErrorCodeInvalidRulesPackageArn is a InvalidInputErrorCode enum value
 11541  	InvalidInputErrorCodeInvalidRulesPackageArn = "INVALID_RULES_PACKAGE_ARN"
 11542  
 11543  	// InvalidInputErrorCodeInvalidResourceArn is a InvalidInputErrorCode enum value
 11544  	InvalidInputErrorCodeInvalidResourceArn = "INVALID_RESOURCE_ARN"
 11545  
 11546  	// InvalidInputErrorCodeInvalidSnsTopicArn is a InvalidInputErrorCode enum value
 11547  	InvalidInputErrorCodeInvalidSnsTopicArn = "INVALID_SNS_TOPIC_ARN"
 11548  
 11549  	// InvalidInputErrorCodeInvalidIamRoleArn is a InvalidInputErrorCode enum value
 11550  	InvalidInputErrorCodeInvalidIamRoleArn = "INVALID_IAM_ROLE_ARN"
 11551  
 11552  	// InvalidInputErrorCodeInvalidAssessmentTargetName is a InvalidInputErrorCode enum value
 11553  	InvalidInputErrorCodeInvalidAssessmentTargetName = "INVALID_ASSESSMENT_TARGET_NAME"
 11554  
 11555  	// InvalidInputErrorCodeInvalidAssessmentTargetNamePattern is a InvalidInputErrorCode enum value
 11556  	InvalidInputErrorCodeInvalidAssessmentTargetNamePattern = "INVALID_ASSESSMENT_TARGET_NAME_PATTERN"
 11557  
 11558  	// InvalidInputErrorCodeInvalidAssessmentTemplateName is a InvalidInputErrorCode enum value
 11559  	InvalidInputErrorCodeInvalidAssessmentTemplateName = "INVALID_ASSESSMENT_TEMPLATE_NAME"
 11560  
 11561  	// InvalidInputErrorCodeInvalidAssessmentTemplateNamePattern is a InvalidInputErrorCode enum value
 11562  	InvalidInputErrorCodeInvalidAssessmentTemplateNamePattern = "INVALID_ASSESSMENT_TEMPLATE_NAME_PATTERN"
 11563  
 11564  	// InvalidInputErrorCodeInvalidAssessmentTemplateDuration is a InvalidInputErrorCode enum value
 11565  	InvalidInputErrorCodeInvalidAssessmentTemplateDuration = "INVALID_ASSESSMENT_TEMPLATE_DURATION"
 11566  
 11567  	// InvalidInputErrorCodeInvalidAssessmentTemplateDurationRange is a InvalidInputErrorCode enum value
 11568  	InvalidInputErrorCodeInvalidAssessmentTemplateDurationRange = "INVALID_ASSESSMENT_TEMPLATE_DURATION_RANGE"
 11569  
 11570  	// InvalidInputErrorCodeInvalidAssessmentRunDurationRange is a InvalidInputErrorCode enum value
 11571  	InvalidInputErrorCodeInvalidAssessmentRunDurationRange = "INVALID_ASSESSMENT_RUN_DURATION_RANGE"
 11572  
 11573  	// InvalidInputErrorCodeInvalidAssessmentRunStartTimeRange is a InvalidInputErrorCode enum value
 11574  	InvalidInputErrorCodeInvalidAssessmentRunStartTimeRange = "INVALID_ASSESSMENT_RUN_START_TIME_RANGE"
 11575  
 11576  	// InvalidInputErrorCodeInvalidAssessmentRunCompletionTimeRange is a InvalidInputErrorCode enum value
 11577  	InvalidInputErrorCodeInvalidAssessmentRunCompletionTimeRange = "INVALID_ASSESSMENT_RUN_COMPLETION_TIME_RANGE"
 11578  
 11579  	// InvalidInputErrorCodeInvalidAssessmentRunStateChangeTimeRange is a InvalidInputErrorCode enum value
 11580  	InvalidInputErrorCodeInvalidAssessmentRunStateChangeTimeRange = "INVALID_ASSESSMENT_RUN_STATE_CHANGE_TIME_RANGE"
 11581  
 11582  	// InvalidInputErrorCodeInvalidAssessmentRunState is a InvalidInputErrorCode enum value
 11583  	InvalidInputErrorCodeInvalidAssessmentRunState = "INVALID_ASSESSMENT_RUN_STATE"
 11584  
 11585  	// InvalidInputErrorCodeInvalidTag is a InvalidInputErrorCode enum value
 11586  	InvalidInputErrorCodeInvalidTag = "INVALID_TAG"
 11587  
 11588  	// InvalidInputErrorCodeInvalidTagKey is a InvalidInputErrorCode enum value
 11589  	InvalidInputErrorCodeInvalidTagKey = "INVALID_TAG_KEY"
 11590  
 11591  	// InvalidInputErrorCodeInvalidTagValue is a InvalidInputErrorCode enum value
 11592  	InvalidInputErrorCodeInvalidTagValue = "INVALID_TAG_VALUE"
 11593  
 11594  	// InvalidInputErrorCodeInvalidResourceGroupTagKey is a InvalidInputErrorCode enum value
 11595  	InvalidInputErrorCodeInvalidResourceGroupTagKey = "INVALID_RESOURCE_GROUP_TAG_KEY"
 11596  
 11597  	// InvalidInputErrorCodeInvalidResourceGroupTagValue is a InvalidInputErrorCode enum value
 11598  	InvalidInputErrorCodeInvalidResourceGroupTagValue = "INVALID_RESOURCE_GROUP_TAG_VALUE"
 11599  
 11600  	// InvalidInputErrorCodeInvalidAttribute is a InvalidInputErrorCode enum value
 11601  	InvalidInputErrorCodeInvalidAttribute = "INVALID_ATTRIBUTE"
 11602  
 11603  	// InvalidInputErrorCodeInvalidUserAttribute is a InvalidInputErrorCode enum value
 11604  	InvalidInputErrorCodeInvalidUserAttribute = "INVALID_USER_ATTRIBUTE"
 11605  
 11606  	// InvalidInputErrorCodeInvalidUserAttributeKey is a InvalidInputErrorCode enum value
 11607  	InvalidInputErrorCodeInvalidUserAttributeKey = "INVALID_USER_ATTRIBUTE_KEY"
 11608  
 11609  	// InvalidInputErrorCodeInvalidUserAttributeValue is a InvalidInputErrorCode enum value
 11610  	InvalidInputErrorCodeInvalidUserAttributeValue = "INVALID_USER_ATTRIBUTE_VALUE"
 11611  
 11612  	// InvalidInputErrorCodeInvalidPaginationToken is a InvalidInputErrorCode enum value
 11613  	InvalidInputErrorCodeInvalidPaginationToken = "INVALID_PAGINATION_TOKEN"
 11614  
 11615  	// InvalidInputErrorCodeInvalidMaxResults is a InvalidInputErrorCode enum value
 11616  	InvalidInputErrorCodeInvalidMaxResults = "INVALID_MAX_RESULTS"
 11617  
 11618  	// InvalidInputErrorCodeInvalidAgentId is a InvalidInputErrorCode enum value
 11619  	InvalidInputErrorCodeInvalidAgentId = "INVALID_AGENT_ID"
 11620  
 11621  	// InvalidInputErrorCodeInvalidAutoScalingGroup is a InvalidInputErrorCode enum value
 11622  	InvalidInputErrorCodeInvalidAutoScalingGroup = "INVALID_AUTO_SCALING_GROUP"
 11623  
 11624  	// InvalidInputErrorCodeInvalidRuleName is a InvalidInputErrorCode enum value
 11625  	InvalidInputErrorCodeInvalidRuleName = "INVALID_RULE_NAME"
 11626  
 11627  	// InvalidInputErrorCodeInvalidSeverity is a InvalidInputErrorCode enum value
 11628  	InvalidInputErrorCodeInvalidSeverity = "INVALID_SEVERITY"
 11629  
 11630  	// InvalidInputErrorCodeInvalidLocale is a InvalidInputErrorCode enum value
 11631  	InvalidInputErrorCodeInvalidLocale = "INVALID_LOCALE"
 11632  
 11633  	// InvalidInputErrorCodeInvalidEvent is a InvalidInputErrorCode enum value
 11634  	InvalidInputErrorCodeInvalidEvent = "INVALID_EVENT"
 11635  
 11636  	// InvalidInputErrorCodeAssessmentTargetNameAlreadyTaken is a InvalidInputErrorCode enum value
 11637  	InvalidInputErrorCodeAssessmentTargetNameAlreadyTaken = "ASSESSMENT_TARGET_NAME_ALREADY_TAKEN"
 11638  
 11639  	// InvalidInputErrorCodeAssessmentTemplateNameAlreadyTaken is a InvalidInputErrorCode enum value
 11640  	InvalidInputErrorCodeAssessmentTemplateNameAlreadyTaken = "ASSESSMENT_TEMPLATE_NAME_ALREADY_TAKEN"
 11641  
 11642  	// InvalidInputErrorCodeInvalidNumberOfAssessmentTargetArns is a InvalidInputErrorCode enum value
 11643  	InvalidInputErrorCodeInvalidNumberOfAssessmentTargetArns = "INVALID_NUMBER_OF_ASSESSMENT_TARGET_ARNS"
 11644  
 11645  	// InvalidInputErrorCodeInvalidNumberOfAssessmentTemplateArns is a InvalidInputErrorCode enum value
 11646  	InvalidInputErrorCodeInvalidNumberOfAssessmentTemplateArns = "INVALID_NUMBER_OF_ASSESSMENT_TEMPLATE_ARNS"
 11647  
 11648  	// InvalidInputErrorCodeInvalidNumberOfAssessmentRunArns is a InvalidInputErrorCode enum value
 11649  	InvalidInputErrorCodeInvalidNumberOfAssessmentRunArns = "INVALID_NUMBER_OF_ASSESSMENT_RUN_ARNS"
 11650  
 11651  	// InvalidInputErrorCodeInvalidNumberOfFindingArns is a InvalidInputErrorCode enum value
 11652  	InvalidInputErrorCodeInvalidNumberOfFindingArns = "INVALID_NUMBER_OF_FINDING_ARNS"
 11653  
 11654  	// InvalidInputErrorCodeInvalidNumberOfResourceGroupArns is a InvalidInputErrorCode enum value
 11655  	InvalidInputErrorCodeInvalidNumberOfResourceGroupArns = "INVALID_NUMBER_OF_RESOURCE_GROUP_ARNS"
 11656  
 11657  	// InvalidInputErrorCodeInvalidNumberOfRulesPackageArns is a InvalidInputErrorCode enum value
 11658  	InvalidInputErrorCodeInvalidNumberOfRulesPackageArns = "INVALID_NUMBER_OF_RULES_PACKAGE_ARNS"
 11659  
 11660  	// InvalidInputErrorCodeInvalidNumberOfAssessmentRunStates is a InvalidInputErrorCode enum value
 11661  	InvalidInputErrorCodeInvalidNumberOfAssessmentRunStates = "INVALID_NUMBER_OF_ASSESSMENT_RUN_STATES"
 11662  
 11663  	// InvalidInputErrorCodeInvalidNumberOfTags is a InvalidInputErrorCode enum value
 11664  	InvalidInputErrorCodeInvalidNumberOfTags = "INVALID_NUMBER_OF_TAGS"
 11665  
 11666  	// InvalidInputErrorCodeInvalidNumberOfResourceGroupTags is a InvalidInputErrorCode enum value
 11667  	InvalidInputErrorCodeInvalidNumberOfResourceGroupTags = "INVALID_NUMBER_OF_RESOURCE_GROUP_TAGS"
 11668  
 11669  	// InvalidInputErrorCodeInvalidNumberOfAttributes is a InvalidInputErrorCode enum value
 11670  	InvalidInputErrorCodeInvalidNumberOfAttributes = "INVALID_NUMBER_OF_ATTRIBUTES"
 11671  
 11672  	// InvalidInputErrorCodeInvalidNumberOfUserAttributes is a InvalidInputErrorCode enum value
 11673  	InvalidInputErrorCodeInvalidNumberOfUserAttributes = "INVALID_NUMBER_OF_USER_ATTRIBUTES"
 11674  
 11675  	// InvalidInputErrorCodeInvalidNumberOfAgentIds is a InvalidInputErrorCode enum value
 11676  	InvalidInputErrorCodeInvalidNumberOfAgentIds = "INVALID_NUMBER_OF_AGENT_IDS"
 11677  
 11678  	// InvalidInputErrorCodeInvalidNumberOfAutoScalingGroups is a InvalidInputErrorCode enum value
 11679  	InvalidInputErrorCodeInvalidNumberOfAutoScalingGroups = "INVALID_NUMBER_OF_AUTO_SCALING_GROUPS"
 11680  
 11681  	// InvalidInputErrorCodeInvalidNumberOfRuleNames is a InvalidInputErrorCode enum value
 11682  	InvalidInputErrorCodeInvalidNumberOfRuleNames = "INVALID_NUMBER_OF_RULE_NAMES"
 11683  
 11684  	// InvalidInputErrorCodeInvalidNumberOfSeverities is a InvalidInputErrorCode enum value
 11685  	InvalidInputErrorCodeInvalidNumberOfSeverities = "INVALID_NUMBER_OF_SEVERITIES"
 11686  )
 11687  
 11688  // InvalidInputErrorCode_Values returns all elements of the InvalidInputErrorCode enum
 11689  func InvalidInputErrorCode_Values() []string {
 11690  	return []string{
 11691  		InvalidInputErrorCodeInvalidAssessmentTargetArn,
 11692  		InvalidInputErrorCodeInvalidAssessmentTemplateArn,
 11693  		InvalidInputErrorCodeInvalidAssessmentRunArn,
 11694  		InvalidInputErrorCodeInvalidFindingArn,
 11695  		InvalidInputErrorCodeInvalidResourceGroupArn,
 11696  		InvalidInputErrorCodeInvalidRulesPackageArn,
 11697  		InvalidInputErrorCodeInvalidResourceArn,
 11698  		InvalidInputErrorCodeInvalidSnsTopicArn,
 11699  		InvalidInputErrorCodeInvalidIamRoleArn,
 11700  		InvalidInputErrorCodeInvalidAssessmentTargetName,
 11701  		InvalidInputErrorCodeInvalidAssessmentTargetNamePattern,
 11702  		InvalidInputErrorCodeInvalidAssessmentTemplateName,
 11703  		InvalidInputErrorCodeInvalidAssessmentTemplateNamePattern,
 11704  		InvalidInputErrorCodeInvalidAssessmentTemplateDuration,
 11705  		InvalidInputErrorCodeInvalidAssessmentTemplateDurationRange,
 11706  		InvalidInputErrorCodeInvalidAssessmentRunDurationRange,
 11707  		InvalidInputErrorCodeInvalidAssessmentRunStartTimeRange,
 11708  		InvalidInputErrorCodeInvalidAssessmentRunCompletionTimeRange,
 11709  		InvalidInputErrorCodeInvalidAssessmentRunStateChangeTimeRange,
 11710  		InvalidInputErrorCodeInvalidAssessmentRunState,
 11711  		InvalidInputErrorCodeInvalidTag,
 11712  		InvalidInputErrorCodeInvalidTagKey,
 11713  		InvalidInputErrorCodeInvalidTagValue,
 11714  		InvalidInputErrorCodeInvalidResourceGroupTagKey,
 11715  		InvalidInputErrorCodeInvalidResourceGroupTagValue,
 11716  		InvalidInputErrorCodeInvalidAttribute,
 11717  		InvalidInputErrorCodeInvalidUserAttribute,
 11718  		InvalidInputErrorCodeInvalidUserAttributeKey,
 11719  		InvalidInputErrorCodeInvalidUserAttributeValue,
 11720  		InvalidInputErrorCodeInvalidPaginationToken,
 11721  		InvalidInputErrorCodeInvalidMaxResults,
 11722  		InvalidInputErrorCodeInvalidAgentId,
 11723  		InvalidInputErrorCodeInvalidAutoScalingGroup,
 11724  		InvalidInputErrorCodeInvalidRuleName,
 11725  		InvalidInputErrorCodeInvalidSeverity,
 11726  		InvalidInputErrorCodeInvalidLocale,
 11727  		InvalidInputErrorCodeInvalidEvent,
 11728  		InvalidInputErrorCodeAssessmentTargetNameAlreadyTaken,
 11729  		InvalidInputErrorCodeAssessmentTemplateNameAlreadyTaken,
 11730  		InvalidInputErrorCodeInvalidNumberOfAssessmentTargetArns,
 11731  		InvalidInputErrorCodeInvalidNumberOfAssessmentTemplateArns,
 11732  		InvalidInputErrorCodeInvalidNumberOfAssessmentRunArns,
 11733  		InvalidInputErrorCodeInvalidNumberOfFindingArns,
 11734  		InvalidInputErrorCodeInvalidNumberOfResourceGroupArns,
 11735  		InvalidInputErrorCodeInvalidNumberOfRulesPackageArns,
 11736  		InvalidInputErrorCodeInvalidNumberOfAssessmentRunStates,
 11737  		InvalidInputErrorCodeInvalidNumberOfTags,
 11738  		InvalidInputErrorCodeInvalidNumberOfResourceGroupTags,
 11739  		InvalidInputErrorCodeInvalidNumberOfAttributes,
 11740  		InvalidInputErrorCodeInvalidNumberOfUserAttributes,
 11741  		InvalidInputErrorCodeInvalidNumberOfAgentIds,
 11742  		InvalidInputErrorCodeInvalidNumberOfAutoScalingGroups,
 11743  		InvalidInputErrorCodeInvalidNumberOfRuleNames,
 11744  		InvalidInputErrorCodeInvalidNumberOfSeverities,
 11745  	}
 11746  }
 11747  
 11748  const (
 11749  	// LimitExceededErrorCodeAssessmentTargetLimitExceeded is a LimitExceededErrorCode enum value
 11750  	LimitExceededErrorCodeAssessmentTargetLimitExceeded = "ASSESSMENT_TARGET_LIMIT_EXCEEDED"
 11751  
 11752  	// LimitExceededErrorCodeAssessmentTemplateLimitExceeded is a LimitExceededErrorCode enum value
 11753  	LimitExceededErrorCodeAssessmentTemplateLimitExceeded = "ASSESSMENT_TEMPLATE_LIMIT_EXCEEDED"
 11754  
 11755  	// LimitExceededErrorCodeAssessmentRunLimitExceeded is a LimitExceededErrorCode enum value
 11756  	LimitExceededErrorCodeAssessmentRunLimitExceeded = "ASSESSMENT_RUN_LIMIT_EXCEEDED"
 11757  
 11758  	// LimitExceededErrorCodeResourceGroupLimitExceeded is a LimitExceededErrorCode enum value
 11759  	LimitExceededErrorCodeResourceGroupLimitExceeded = "RESOURCE_GROUP_LIMIT_EXCEEDED"
 11760  
 11761  	// LimitExceededErrorCodeEventSubscriptionLimitExceeded is a LimitExceededErrorCode enum value
 11762  	LimitExceededErrorCodeEventSubscriptionLimitExceeded = "EVENT_SUBSCRIPTION_LIMIT_EXCEEDED"
 11763  )
 11764  
 11765  // LimitExceededErrorCode_Values returns all elements of the LimitExceededErrorCode enum
 11766  func LimitExceededErrorCode_Values() []string {
 11767  	return []string{
 11768  		LimitExceededErrorCodeAssessmentTargetLimitExceeded,
 11769  		LimitExceededErrorCodeAssessmentTemplateLimitExceeded,
 11770  		LimitExceededErrorCodeAssessmentRunLimitExceeded,
 11771  		LimitExceededErrorCodeResourceGroupLimitExceeded,
 11772  		LimitExceededErrorCodeEventSubscriptionLimitExceeded,
 11773  	}
 11774  }
 11775  
 11776  const (
 11777  	// LocaleEnUs is a Locale enum value
 11778  	LocaleEnUs = "EN_US"
 11779  )
 11780  
 11781  // Locale_Values returns all elements of the Locale enum
 11782  func Locale_Values() []string {
 11783  	return []string{
 11784  		LocaleEnUs,
 11785  	}
 11786  }
 11787  
 11788  const (
 11789  	// NoSuchEntityErrorCodeAssessmentTargetDoesNotExist is a NoSuchEntityErrorCode enum value
 11790  	NoSuchEntityErrorCodeAssessmentTargetDoesNotExist = "ASSESSMENT_TARGET_DOES_NOT_EXIST"
 11791  
 11792  	// NoSuchEntityErrorCodeAssessmentTemplateDoesNotExist is a NoSuchEntityErrorCode enum value
 11793  	NoSuchEntityErrorCodeAssessmentTemplateDoesNotExist = "ASSESSMENT_TEMPLATE_DOES_NOT_EXIST"
 11794  
 11795  	// NoSuchEntityErrorCodeAssessmentRunDoesNotExist is a NoSuchEntityErrorCode enum value
 11796  	NoSuchEntityErrorCodeAssessmentRunDoesNotExist = "ASSESSMENT_RUN_DOES_NOT_EXIST"
 11797  
 11798  	// NoSuchEntityErrorCodeFindingDoesNotExist is a NoSuchEntityErrorCode enum value
 11799  	NoSuchEntityErrorCodeFindingDoesNotExist = "FINDING_DOES_NOT_EXIST"
 11800  
 11801  	// NoSuchEntityErrorCodeResourceGroupDoesNotExist is a NoSuchEntityErrorCode enum value
 11802  	NoSuchEntityErrorCodeResourceGroupDoesNotExist = "RESOURCE_GROUP_DOES_NOT_EXIST"
 11803  
 11804  	// NoSuchEntityErrorCodeRulesPackageDoesNotExist is a NoSuchEntityErrorCode enum value
 11805  	NoSuchEntityErrorCodeRulesPackageDoesNotExist = "RULES_PACKAGE_DOES_NOT_EXIST"
 11806  
 11807  	// NoSuchEntityErrorCodeSnsTopicDoesNotExist is a NoSuchEntityErrorCode enum value
 11808  	NoSuchEntityErrorCodeSnsTopicDoesNotExist = "SNS_TOPIC_DOES_NOT_EXIST"
 11809  
 11810  	// NoSuchEntityErrorCodeIamRoleDoesNotExist is a NoSuchEntityErrorCode enum value
 11811  	NoSuchEntityErrorCodeIamRoleDoesNotExist = "IAM_ROLE_DOES_NOT_EXIST"
 11812  )
 11813  
 11814  // NoSuchEntityErrorCode_Values returns all elements of the NoSuchEntityErrorCode enum
 11815  func NoSuchEntityErrorCode_Values() []string {
 11816  	return []string{
 11817  		NoSuchEntityErrorCodeAssessmentTargetDoesNotExist,
 11818  		NoSuchEntityErrorCodeAssessmentTemplateDoesNotExist,
 11819  		NoSuchEntityErrorCodeAssessmentRunDoesNotExist,
 11820  		NoSuchEntityErrorCodeFindingDoesNotExist,
 11821  		NoSuchEntityErrorCodeResourceGroupDoesNotExist,
 11822  		NoSuchEntityErrorCodeRulesPackageDoesNotExist,
 11823  		NoSuchEntityErrorCodeSnsTopicDoesNotExist,
 11824  		NoSuchEntityErrorCodeIamRoleDoesNotExist,
 11825  	}
 11826  }
 11827  
 11828  const (
 11829  	// PreviewStatusWorkInProgress is a PreviewStatus enum value
 11830  	PreviewStatusWorkInProgress = "WORK_IN_PROGRESS"
 11831  
 11832  	// PreviewStatusCompleted is a PreviewStatus enum value
 11833  	PreviewStatusCompleted = "COMPLETED"
 11834  )
 11835  
 11836  // PreviewStatus_Values returns all elements of the PreviewStatus enum
 11837  func PreviewStatus_Values() []string {
 11838  	return []string{
 11839  		PreviewStatusWorkInProgress,
 11840  		PreviewStatusCompleted,
 11841  	}
 11842  }
 11843  
 11844  const (
 11845  	// ReportFileFormatHtml is a ReportFileFormat enum value
 11846  	ReportFileFormatHtml = "HTML"
 11847  
 11848  	// ReportFileFormatPdf is a ReportFileFormat enum value
 11849  	ReportFileFormatPdf = "PDF"
 11850  )
 11851  
 11852  // ReportFileFormat_Values returns all elements of the ReportFileFormat enum
 11853  func ReportFileFormat_Values() []string {
 11854  	return []string{
 11855  		ReportFileFormatHtml,
 11856  		ReportFileFormatPdf,
 11857  	}
 11858  }
 11859  
 11860  const (
 11861  	// ReportStatusWorkInProgress is a ReportStatus enum value
 11862  	ReportStatusWorkInProgress = "WORK_IN_PROGRESS"
 11863  
 11864  	// ReportStatusFailed is a ReportStatus enum value
 11865  	ReportStatusFailed = "FAILED"
 11866  
 11867  	// ReportStatusCompleted is a ReportStatus enum value
 11868  	ReportStatusCompleted = "COMPLETED"
 11869  )
 11870  
 11871  // ReportStatus_Values returns all elements of the ReportStatus enum
 11872  func ReportStatus_Values() []string {
 11873  	return []string{
 11874  		ReportStatusWorkInProgress,
 11875  		ReportStatusFailed,
 11876  		ReportStatusCompleted,
 11877  	}
 11878  }
 11879  
 11880  const (
 11881  	// ReportTypeFinding is a ReportType enum value
 11882  	ReportTypeFinding = "FINDING"
 11883  
 11884  	// ReportTypeFull is a ReportType enum value
 11885  	ReportTypeFull = "FULL"
 11886  )
 11887  
 11888  // ReportType_Values returns all elements of the ReportType enum
 11889  func ReportType_Values() []string {
 11890  	return []string{
 11891  		ReportTypeFinding,
 11892  		ReportTypeFull,
 11893  	}
 11894  }
 11895  
 11896  const (
 11897  	// ScopeTypeInstanceId is a ScopeType enum value
 11898  	ScopeTypeInstanceId = "INSTANCE_ID"
 11899  
 11900  	// ScopeTypeRulesPackageArn is a ScopeType enum value
 11901  	ScopeTypeRulesPackageArn = "RULES_PACKAGE_ARN"
 11902  )
 11903  
 11904  // ScopeType_Values returns all elements of the ScopeType enum
 11905  func ScopeType_Values() []string {
 11906  	return []string{
 11907  		ScopeTypeInstanceId,
 11908  		ScopeTypeRulesPackageArn,
 11909  	}
 11910  }
 11911  
 11912  const (
 11913  	// SeverityLow is a Severity enum value
 11914  	SeverityLow = "Low"
 11915  
 11916  	// SeverityMedium is a Severity enum value
 11917  	SeverityMedium = "Medium"
 11918  
 11919  	// SeverityHigh is a Severity enum value
 11920  	SeverityHigh = "High"
 11921  
 11922  	// SeverityInformational is a Severity enum value
 11923  	SeverityInformational = "Informational"
 11924  
 11925  	// SeverityUndefined is a Severity enum value
 11926  	SeverityUndefined = "Undefined"
 11927  )
 11928  
 11929  // Severity_Values returns all elements of the Severity enum
 11930  func Severity_Values() []string {
 11931  	return []string{
 11932  		SeverityLow,
 11933  		SeverityMedium,
 11934  		SeverityHigh,
 11935  		SeverityInformational,
 11936  		SeverityUndefined,
 11937  	}
 11938  }
 11939  
 11940  const (
 11941  	// StopActionStartEvaluation is a StopAction enum value
 11942  	StopActionStartEvaluation = "START_EVALUATION"
 11943  
 11944  	// StopActionSkipEvaluation is a StopAction enum value
 11945  	StopActionSkipEvaluation = "SKIP_EVALUATION"
 11946  )
 11947  
 11948  // StopAction_Values returns all elements of the StopAction enum
 11949  func StopAction_Values() []string {
 11950  	return []string{
 11951  		StopActionStartEvaluation,
 11952  		StopActionSkipEvaluation,
 11953  	}
 11954  }